1 /*
2 * This class is an auto-generated source file for a HAPI
3 * HL7 v2.x standard structure class.
4 *
5 * For more information, visit: http://hl7api.sourceforge.net/
6 *
7 * The contents of this file are subject to the Mozilla Public License Version 1.1
8 * (the "License"); you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at http://www.mozilla.org/MPL/
10 * Software distributed under the License is distributed on an "AS IS" basis,
11 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the
12 * specific language governing rights and limitations under the License.
13 *
14 * The Original Code is "[file_name]". Description:
15 * "[one_line_description]"
16 *
17 * The Initial Developer of the Original Code is University Health Network. Copyright (C)
18 * 2012. All Rights Reserved.
19 *
20 * Contributor(s): ______________________________________.
21 *
22 * Alternatively, the contents of this file may be used under the terms of the
23 * GNU General Public License (the "GPL"), in which case the provisions of the GPL are
24 * applicable instead of those above. If you wish to allow use of your version of this
25 * file only under the terms of the GPL and not to allow others to use your version
26 * of this file under the MPL, indicate your decision by deleting the provisions above
27 * and replace them with the notice and other provisions required by the GPL License.
28 * If you do not delete the provisions above, a recipient may use your version of
29 * this file under either the MPL or the GPL.
30 *
31 */
32
33
34 package ca.uhn.hl7v2.model.v25.message;
35
36 import ca.uhn.hl7v2.model.v25.group.*;
37 import ca.uhn.hl7v2.model.v25.segment.*;
38
39 import ca.uhn.hl7v2.HL7Exception;
40 import ca.uhn.hl7v2.parser.ModelClassFactory;
41 import ca.uhn.hl7v2.parser.DefaultModelClassFactory;
42 import ca.uhn.hl7v2.model.*;
43
44
45 /**
46 * <p>Represents a OMD_O03 message structure (see chapter 4.7.1). This structure contains the
47 * following elements: </p>
48 * <ul>
49 * <li>1: MSH (Message Header) <b> </b> </li>
50 * <li>2: SFT (Software Segment) <b>optional repeating</b> </li>
51 * <li>3: NTE (Notes and Comments) <b>optional repeating</b> </li>
52 * <li>4: OMD_O03_PATIENT (a Group object) <b>optional </b> </li>
53 * <li>5: OMD_O03_ORDER_DIET (a Group object) <b> repeating</b> </li>
54 * <li>6: OMD_O03_ORDER_TRAY (a Group object) <b>optional repeating</b> </li>
55 * </ul>
56 */
57 //@SuppressWarnings("unused")
58 public class OMD_O03 extends AbstractMessage {
59
60 /**
61 * Creates a new OMD_O03 message with DefaultModelClassFactory.
62 */
63 public OMD_O03() {
64 this(new DefaultModelClassFactory());
65 }
66
67 /**
68 * Creates a new OMD_O03 message with custom ModelClassFactory.
69 */
70 public OMD_O03(ModelClassFactory factory) {
71 super(factory);
72 init(factory);
73 }
74
75 private void init(ModelClassFactory factory) {
76 try {
77 this.add(MSH.class, true, false);
78 this.add(SFT.class, false, true);
79 this.add(NTE.class, false, true);
80 this.add(OMD_O03_PATIENT.class, false, false);
81 this.add(OMD_O03_ORDER_DIET.class, true, true);
82 this.add(OMD_O03_ORDER_TRAY.class, false, true);
83 } catch(HL7Exception e) {
84 log.error("Unexpected error creating OMD_O03 - this is probably a bug in the source code generator.", e);
85 }
86 }
87
88
89 /**
90 * Returns "2.5"
91 */
92 public String getVersion() {
93 return "2.5";
94 }
95
96
97
98
99 /**
100 * <p>
101 * Returns
102 * MSH (Message Header) - creates it if necessary
103 * </p>
104 *
105 *
106 */
107 public MSH getMSH() {
108 return getTyped("MSH", MSH.class);
109 }
110
111
112
113
114
115 /**
116 * <p>
117 * Returns
118 * the first repetition of
119 * SFT (Software Segment) - creates it if necessary
120 * </p>
121 *
122 *
123 */
124 public SFT getSFT() {
125 return getTyped("SFT", SFT.class);
126 }
127
128
129 /**
130 * <p>
131 * Returns a specific repetition of
132 * SFT (Software Segment) - creates it if necessary
133 * </p>
134 *
135 *
136 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
137 * @throws HL7Exception if the repetition requested is more than one
138 * greater than the number of existing repetitions.
139 */
140 public SFT getSFT(int rep) {
141 return getTyped("SFT", rep, SFT.class);
142 }
143
144 /**
145 * <p>
146 * Returns the number of existing repetitions of SFT
147 * </p>
148 *
149 */
150 public int getSFTReps() {
151 return getReps("SFT");
152 }
153
154 /**
155 * <p>
156 * Returns a non-modifiable List containing all current existing repetitions of SFT.
157 * <p>
158 * <p>
159 * Note that unlike {@link #getSFT()}, this method will not create any reps
160 * if none are already present, so an empty list may be returned.
161 * </p>
162 *
163 */
164 public java.util.List<SFT> getSFTAll() throws HL7Exception {
165 return getAllAsList("SFT", SFT.class);
166 }
167
168 /**
169 * <p>
170 * Inserts a specific repetition of SFT (Software Segment)
171 * </p>
172 *
173 *
174 * @see AbstractGroup#insertRepetition(Structure, int)
175 */
176 public void insertSFT(SFT structure, int rep) throws HL7Exception {
177 super.insertRepetition( "SFT", structure, rep);
178 }
179
180
181 /**
182 * <p>
183 * Inserts a specific repetition of SFT (Software Segment)
184 * </p>
185 *
186 *
187 * @see AbstractGroup#insertRepetition(Structure, int)
188 */
189 public SFT insertSFT(int rep) throws HL7Exception {
190 return (SFT)super.insertRepetition("SFT", rep);
191 }
192
193
194 /**
195 * <p>
196 * Removes a specific repetition of SFT (Software Segment)
197 * </p>
198 *
199 *
200 * @see AbstractGroup#removeRepetition(String, int)
201 */
202 public SFT removeSFT(int rep) throws HL7Exception {
203 return (SFT)super.removeRepetition("SFT", rep);
204 }
205
206
207
208
209 /**
210 * <p>
211 * Returns
212 * the first repetition of
213 * NTE (Notes and Comments) - creates it if necessary
214 * </p>
215 *
216 *
217 */
218 public NTE getNTE() {
219 return getTyped("NTE", NTE.class);
220 }
221
222
223 /**
224 * <p>
225 * Returns a specific repetition of
226 * NTE (Notes and Comments) - creates it if necessary
227 * </p>
228 *
229 *
230 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
231 * @throws HL7Exception if the repetition requested is more than one
232 * greater than the number of existing repetitions.
233 */
234 public NTE getNTE(int rep) {
235 return getTyped("NTE", rep, NTE.class);
236 }
237
238 /**
239 * <p>
240 * Returns the number of existing repetitions of NTE
241 * </p>
242 *
243 */
244 public int getNTEReps() {
245 return getReps("NTE");
246 }
247
248 /**
249 * <p>
250 * Returns a non-modifiable List containing all current existing repetitions of NTE.
251 * <p>
252 * <p>
253 * Note that unlike {@link #getNTE()}, this method will not create any reps
254 * if none are already present, so an empty list may be returned.
255 * </p>
256 *
257 */
258 public java.util.List<NTE> getNTEAll() throws HL7Exception {
259 return getAllAsList("NTE", NTE.class);
260 }
261
262 /**
263 * <p>
264 * Inserts a specific repetition of NTE (Notes and Comments)
265 * </p>
266 *
267 *
268 * @see AbstractGroup#insertRepetition(Structure, int)
269 */
270 public void insertNTE(NTE structure, int rep) throws HL7Exception {
271 super.insertRepetition( "NTE", structure, rep);
272 }
273
274
275 /**
276 * <p>
277 * Inserts a specific repetition of NTE (Notes and Comments)
278 * </p>
279 *
280 *
281 * @see AbstractGroup#insertRepetition(Structure, int)
282 */
283 public NTE insertNTE(int rep) throws HL7Exception {
284 return (NTE)super.insertRepetition("NTE", rep);
285 }
286
287
288 /**
289 * <p>
290 * Removes a specific repetition of NTE (Notes and Comments)
291 * </p>
292 *
293 *
294 * @see AbstractGroup#removeRepetition(String, int)
295 */
296 public NTE removeNTE(int rep) throws HL7Exception {
297 return (NTE)super.removeRepetition("NTE", rep);
298 }
299
300
301
302
303 /**
304 * <p>
305 * Returns
306 * PATIENT (a Group object) - creates it if necessary
307 * </p>
308 *
309 *
310 */
311 public OMD_O03_PATIENT getPATIENT() {
312 return getTyped("PATIENT", OMD_O03_PATIENT.class);
313 }
314
315
316
317
318
319 /**
320 * <p>
321 * Returns
322 * the first repetition of
323 * ORDER_DIET (a Group object) - creates it if necessary
324 * </p>
325 *
326 *
327 */
328 public OMD_O03_ORDER_DIET getORDER_DIET() {
329 return getTyped("ORDER_DIET", OMD_O03_ORDER_DIET.class);
330 }
331
332
333 /**
334 * <p>
335 * Returns a specific repetition of
336 * ORDER_DIET (a Group object) - creates it if necessary
337 * </p>
338 *
339 *
340 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
341 * @throws HL7Exception if the repetition requested is more than one
342 * greater than the number of existing repetitions.
343 */
344 public OMD_O03_ORDER_DIET getORDER_DIET(int rep) {
345 return getTyped("ORDER_DIET", rep, OMD_O03_ORDER_DIET.class);
346 }
347
348 /**
349 * <p>
350 * Returns the number of existing repetitions of ORDER_DIET
351 * </p>
352 *
353 */
354 public int getORDER_DIETReps() {
355 return getReps("ORDER_DIET");
356 }
357
358 /**
359 * <p>
360 * Returns a non-modifiable List containing all current existing repetitions of ORDER_DIET.
361 * <p>
362 * <p>
363 * Note that unlike {@link #getORDER_DIET()}, this method will not create any reps
364 * if none are already present, so an empty list may be returned.
365 * </p>
366 *
367 */
368 public java.util.List<OMD_O03_ORDER_DIET> getORDER_DIETAll() throws HL7Exception {
369 return getAllAsList("ORDER_DIET", OMD_O03_ORDER_DIET.class);
370 }
371
372 /**
373 * <p>
374 * Inserts a specific repetition of ORDER_DIET (a Group object)
375 * </p>
376 *
377 *
378 * @see AbstractGroup#insertRepetition(Structure, int)
379 */
380 public void insertORDER_DIET(OMD_O03_ORDER_DIET structure, int rep) throws HL7Exception {
381 super.insertRepetition( "ORDER_DIET", structure, rep);
382 }
383
384
385 /**
386 * <p>
387 * Inserts a specific repetition of ORDER_DIET (a Group object)
388 * </p>
389 *
390 *
391 * @see AbstractGroup#insertRepetition(Structure, int)
392 */
393 public OMD_O03_ORDER_DIET insertORDER_DIET(int rep) throws HL7Exception {
394 return (OMD_O03_ORDER_DIET)super.insertRepetition("ORDER_DIET", rep);
395 }
396
397
398 /**
399 * <p>
400 * Removes a specific repetition of ORDER_DIET (a Group object)
401 * </p>
402 *
403 *
404 * @see AbstractGroup#removeRepetition(String, int)
405 */
406 public OMD_O03_ORDER_DIET removeORDER_DIET(int rep) throws HL7Exception {
407 return (OMD_O03_ORDER_DIET)super.removeRepetition("ORDER_DIET", rep);
408 }
409
410
411
412
413 /**
414 * <p>
415 * Returns
416 * the first repetition of
417 * ORDER_TRAY (a Group object) - creates it if necessary
418 * </p>
419 *
420 *
421 */
422 public OMD_O03_ORDER_TRAY getORDER_TRAY() {
423 return getTyped("ORDER_TRAY", OMD_O03_ORDER_TRAY.class);
424 }
425
426
427 /**
428 * <p>
429 * Returns a specific repetition of
430 * ORDER_TRAY (a Group object) - creates it if necessary
431 * </p>
432 *
433 *
434 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
435 * @throws HL7Exception if the repetition requested is more than one
436 * greater than the number of existing repetitions.
437 */
438 public OMD_O03_ORDER_TRAY getORDER_TRAY(int rep) {
439 return getTyped("ORDER_TRAY", rep, OMD_O03_ORDER_TRAY.class);
440 }
441
442 /**
443 * <p>
444 * Returns the number of existing repetitions of ORDER_TRAY
445 * </p>
446 *
447 */
448 public int getORDER_TRAYReps() {
449 return getReps("ORDER_TRAY");
450 }
451
452 /**
453 * <p>
454 * Returns a non-modifiable List containing all current existing repetitions of ORDER_TRAY.
455 * <p>
456 * <p>
457 * Note that unlike {@link #getORDER_TRAY()}, this method will not create any reps
458 * if none are already present, so an empty list may be returned.
459 * </p>
460 *
461 */
462 public java.util.List<OMD_O03_ORDER_TRAY> getORDER_TRAYAll() throws HL7Exception {
463 return getAllAsList("ORDER_TRAY", OMD_O03_ORDER_TRAY.class);
464 }
465
466 /**
467 * <p>
468 * Inserts a specific repetition of ORDER_TRAY (a Group object)
469 * </p>
470 *
471 *
472 * @see AbstractGroup#insertRepetition(Structure, int)
473 */
474 public void insertORDER_TRAY(OMD_O03_ORDER_TRAY structure, int rep) throws HL7Exception {
475 super.insertRepetition( "ORDER_TRAY", structure, rep);
476 }
477
478
479 /**
480 * <p>
481 * Inserts a specific repetition of ORDER_TRAY (a Group object)
482 * </p>
483 *
484 *
485 * @see AbstractGroup#insertRepetition(Structure, int)
486 */
487 public OMD_O03_ORDER_TRAY insertORDER_TRAY(int rep) throws HL7Exception {
488 return (OMD_O03_ORDER_TRAY)super.insertRepetition("ORDER_TRAY", rep);
489 }
490
491
492 /**
493 * <p>
494 * Removes a specific repetition of ORDER_TRAY (a Group object)
495 * </p>
496 *
497 *
498 * @see AbstractGroup#removeRepetition(String, int)
499 */
500 public OMD_O03_ORDER_TRAY removeORDER_TRAY(int rep) throws HL7Exception {
501 return (OMD_O03_ORDER_TRAY)super.removeRepetition("ORDER_TRAY", rep);
502 }
503
504
505
506 }
507