View Javadoc
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.v28.group;
35  
36  import ca.uhn.hl7v2.model.v28.segment.*;
37  
38  import ca.uhn.hl7v2.HL7Exception;
39  import ca.uhn.hl7v2.parser.ModelClassFactory;
40  import ca.uhn.hl7v2.model.*;
41  
42  /**
43   * <p>Represents a OUL_R23_ORDER group structure (a Group object).
44   * A Group is an ordered collection of message segments that can repeat together or be optionally in/excluded together.
45   * This Group contains the following elements:  
46   * </p>
47   * <ul>
48                           * <li>1: OBR (Observation Request) <b>  </b></li>
49                           * <li>2: PRT (Participation Information) <b>optional repeating </b></li>
50                           * <li>3: OUL_R23_COMMON_ORDER (a Group object) <b>optional  </b></li>
51                           * <li>4: NTE (Notes and Comments) <b>optional repeating </b></li>
52                           * <li>5: PRT (Participation Information) <b>optional repeating </b></li>
53                           * <li>6: OUL_R23_TIMING_QTY (a Group object) <b>optional repeating </b></li>
54                           * <li>7: OUL_R23_RESULT (a Group object) <b>optional repeating </b></li>
55                           * <li>8: CTI (Clinical Trial Identification) <b>optional repeating </b></li>
56   * </ul>
57   */
58  //@SuppressWarnings("unused")
59  public class OUL_R23_ORDER extends AbstractGroup {
60  
61      /** 
62       * Creates a new OUL_R23_ORDER group
63       */
64      public OUL_R23_ORDER(Group parent, ModelClassFactory factory) {
65         super(parent, factory);
66         init(factory);
67      }
68  
69      private void init(ModelClassFactory factory) {
70         try {
71                                    this.add(OBR.class, true, false, false);
72                                    this.add(PRT.class, false, true, false);
73                                    this.add(OUL_R23_COMMON_ORDER.class, false, false, false);
74                                    this.add(NTE.class, false, true, false);
75                                    this.add(PRT.class, false, true, false);
76                                    this.add(OUL_R23_TIMING_QTY.class, false, true, false);
77                                    this.add(OUL_R23_RESULT.class, false, true, false);
78                                    this.add(CTI.class, false, true, false);
79         } catch(HL7Exception e) {
80            log.error("Unexpected error creating OUL_R23_ORDER - this is probably a bug in the source code generator.", e);
81         }
82      }
83  
84      /** 
85       * Returns "2.8"
86       */
87      public String getVersion() {
88         return "2.8";
89      }
90  
91  
92  
93      /**
94       * Returns
95       * OBR (Observation Request) - creates it if necessary
96       */
97      public OBR getOBR() { 
98         OBR retVal = getTyped("OBR", OBR.class);
99         return retVal;
100     }
101 
102 
103 
104 
105     /**
106      * Returns
107      * the first repetition of 
108      * PRT (Participation Information) - creates it if necessary
109      */
110     public PRT getPRT() { 
111        PRT retVal = getTyped("PRT", PRT.class);
112        return retVal;
113     }
114 
115 
116     /**
117      * Returns a specific repetition of
118      * PRT (Participation Information) - creates it if necessary
119      *
120      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
121      * @throws HL7Exception if the repetition requested is more than one 
122      *     greater than the number of existing repetitions.
123      */
124     public PRT getPRT(int rep) { 
125        PRT retVal = getTyped("PRT", rep, PRT.class);
126        return retVal;
127     }
128 
129     /** 
130      * Returns the number of existing repetitions of PRT 
131      */ 
132     public int getPRTReps() {  
133         return getReps("PRT");
134     } 
135 
136     /** 
137      * <p>
138      * Returns a non-modifiable List containing all current existing repetitions of PRT.
139      * <p>
140      * <p>
141      * Note that unlike {@link #getPRT()}, this method will not create any reps
142      * if none are already present, so an empty list may be returned.
143      * </p>
144      */ 
145     public java.util.List<PRT> getPRTAll() throws HL7Exception {
146     	return getAllAsList("PRT", PRT.class);
147     } 
148 
149     /**
150      * Inserts a specific repetition of PRT (Participation Information)
151      * @see AbstractGroup#insertRepetition(Structure, int) 
152      */
153     public void insertPRT(PRT structure, int rep) throws HL7Exception { 
154        super.insertRepetition("PRT", structure, rep);
155     }
156 
157 
158     /**
159      * Inserts a specific repetition of PRT (Participation Information)
160      * @see AbstractGroup#insertRepetition(Structure, int) 
161      */
162     public PRT insertPRT(int rep) throws HL7Exception { 
163        return (PRT)super.insertRepetition("PRT", rep);
164     }
165 
166 
167     /**
168      * Removes a specific repetition of PRT (Participation Information)
169      * @see AbstractGroup#removeRepetition(String, int) 
170      */
171     public PRT removePRT(int rep) throws HL7Exception { 
172        return (PRT)super.removeRepetition("PRT", rep);
173     }
174 
175 
176 
177     /**
178      * Returns
179      * COMMON_ORDER (a Group object) - creates it if necessary
180      */
181     public OUL_R23_COMMON_ORDER getCOMMON_ORDER() { 
182        OUL_R23_COMMON_ORDER retVal = getTyped("COMMON_ORDER", OUL_R23_COMMON_ORDER.class);
183        return retVal;
184     }
185 
186 
187 
188 
189     /**
190      * Returns
191      * the first repetition of 
192      * NTE (Notes and Comments) - creates it if necessary
193      */
194     public NTE getNTE() { 
195        NTE retVal = getTyped("NTE", NTE.class);
196        return retVal;
197     }
198 
199 
200     /**
201      * Returns a specific repetition of
202      * NTE (Notes and Comments) - creates it if necessary
203      *
204      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
205      * @throws HL7Exception if the repetition requested is more than one 
206      *     greater than the number of existing repetitions.
207      */
208     public NTE getNTE(int rep) { 
209        NTE retVal = getTyped("NTE", rep, NTE.class);
210        return retVal;
211     }
212 
213     /** 
214      * Returns the number of existing repetitions of NTE 
215      */ 
216     public int getNTEReps() {  
217         return getReps("NTE");
218     } 
219 
220     /** 
221      * <p>
222      * Returns a non-modifiable List containing all current existing repetitions of NTE.
223      * <p>
224      * <p>
225      * Note that unlike {@link #getNTE()}, this method will not create any reps
226      * if none are already present, so an empty list may be returned.
227      * </p>
228      */ 
229     public java.util.List<NTE> getNTEAll() throws HL7Exception {
230     	return getAllAsList("NTE", NTE.class);
231     } 
232 
233     /**
234      * Inserts a specific repetition of NTE (Notes and Comments)
235      * @see AbstractGroup#insertRepetition(Structure, int) 
236      */
237     public void insertNTE(NTE structure, int rep) throws HL7Exception { 
238        super.insertRepetition("NTE", structure, rep);
239     }
240 
241 
242     /**
243      * Inserts a specific repetition of NTE (Notes and Comments)
244      * @see AbstractGroup#insertRepetition(Structure, int) 
245      */
246     public NTE insertNTE(int rep) throws HL7Exception { 
247        return (NTE)super.insertRepetition("NTE", rep);
248     }
249 
250 
251     /**
252      * Removes a specific repetition of NTE (Notes and Comments)
253      * @see AbstractGroup#removeRepetition(String, int) 
254      */
255     public NTE removeNTE(int rep) throws HL7Exception { 
256        return (NTE)super.removeRepetition("NTE", rep);
257     }
258 
259 
260 
261     /**
262      * Returns
263      * the first repetition of 
264      * PRT2 (Participation Information) - creates it if necessary
265      */
266     public PRT getPRT2() { 
267        PRT retVal = getTyped("PRT2", PRT.class);
268        return retVal;
269     }
270 
271 
272     /**
273      * Returns a specific repetition of
274      * PRT (Participation Information) - creates it if necessary
275      *
276      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
277      * @throws HL7Exception if the repetition requested is more than one 
278      *     greater than the number of existing repetitions.
279      */
280     public PRT getPRT2(int rep) { 
281        PRT retVal = getTyped("PRT2", rep, PRT.class);
282        return retVal;
283     }
284 
285     /** 
286      * Returns the number of existing repetitions of PRT2 
287      */ 
288     public int getPRT2Reps() {  
289         return getReps("PRT2");
290     } 
291 
292     /** 
293      * <p>
294      * Returns a non-modifiable List containing all current existing repetitions of PRT2.
295      * <p>
296      * <p>
297      * Note that unlike {@link #getPRT2()}, this method will not create any reps
298      * if none are already present, so an empty list may be returned.
299      * </p>
300      */ 
301     public java.util.List<PRT> getPRT2All() throws HL7Exception {
302     	return getAllAsList("PRT2", PRT.class);
303     } 
304 
305     /**
306      * Inserts a specific repetition of PRT2 (Participation Information)
307      * @see AbstractGroup#insertRepetition(Structure, int) 
308      */
309     public void insertPRT2(PRT structure, int rep) throws HL7Exception { 
310        super.insertRepetition("PRT2", structure, rep);
311     }
312 
313 
314     /**
315      * Inserts a specific repetition of PRT2 (Participation Information)
316      * @see AbstractGroup#insertRepetition(Structure, int) 
317      */
318     public PRT insertPRT2(int rep) throws HL7Exception { 
319        return (PRT)super.insertRepetition("PRT2", rep);
320     }
321 
322 
323     /**
324      * Removes a specific repetition of PRT2 (Participation Information)
325      * @see AbstractGroup#removeRepetition(String, int) 
326      */
327     public PRT removePRT2(int rep) throws HL7Exception { 
328        return (PRT)super.removeRepetition("PRT2", rep);
329     }
330 
331 
332 
333     /**
334      * Returns
335      * the first repetition of 
336      * TIMING_QTY (a Group object) - creates it if necessary
337      */
338     public OUL_R23_TIMING_QTY getTIMING_QTY() { 
339        OUL_R23_TIMING_QTY retVal = getTyped("TIMING_QTY", OUL_R23_TIMING_QTY.class);
340        return retVal;
341     }
342 
343 
344     /**
345      * Returns a specific repetition of
346      * TIMING_QTY (a Group object) - creates it if necessary
347      *
348      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
349      * @throws HL7Exception if the repetition requested is more than one 
350      *     greater than the number of existing repetitions.
351      */
352     public OUL_R23_TIMING_QTY getTIMING_QTY(int rep) { 
353        OUL_R23_TIMING_QTY retVal = getTyped("TIMING_QTY", rep, OUL_R23_TIMING_QTY.class);
354        return retVal;
355     }
356 
357     /** 
358      * Returns the number of existing repetitions of TIMING_QTY 
359      */ 
360     public int getTIMING_QTYReps() {  
361         return getReps("TIMING_QTY");
362     } 
363 
364     /** 
365      * <p>
366      * Returns a non-modifiable List containing all current existing repetitions of TIMING_QTY.
367      * <p>
368      * <p>
369      * Note that unlike {@link #getTIMING_QTY()}, this method will not create any reps
370      * if none are already present, so an empty list may be returned.
371      * </p>
372      */ 
373     public java.util.List<OUL_R23_TIMING_QTY> getTIMING_QTYAll() throws HL7Exception {
374     	return getAllAsList("TIMING_QTY", OUL_R23_TIMING_QTY.class);
375     } 
376 
377     /**
378      * Inserts a specific repetition of TIMING_QTY (a Group object)
379      * @see AbstractGroup#insertRepetition(Structure, int) 
380      */
381     public void insertTIMING_QTY(OUL_R23_TIMING_QTY structure, int rep) throws HL7Exception { 
382        super.insertRepetition("TIMING_QTY", structure, rep);
383     }
384 
385 
386     /**
387      * Inserts a specific repetition of TIMING_QTY (a Group object)
388      * @see AbstractGroup#insertRepetition(Structure, int) 
389      */
390     public OUL_R23_TIMING_QTY insertTIMING_QTY(int rep) throws HL7Exception { 
391        return (OUL_R23_TIMING_QTY)super.insertRepetition("TIMING_QTY", rep);
392     }
393 
394 
395     /**
396      * Removes a specific repetition of TIMING_QTY (a Group object)
397      * @see AbstractGroup#removeRepetition(String, int) 
398      */
399     public OUL_R23_TIMING_QTY removeTIMING_QTY(int rep) throws HL7Exception { 
400        return (OUL_R23_TIMING_QTY)super.removeRepetition("TIMING_QTY", rep);
401     }
402 
403 
404 
405     /**
406      * Returns
407      * the first repetition of 
408      * RESULT (a Group object) - creates it if necessary
409      */
410     public OUL_R23_RESULT getRESULT() { 
411        OUL_R23_RESULT retVal = getTyped("RESULT", OUL_R23_RESULT.class);
412        return retVal;
413     }
414 
415 
416     /**
417      * Returns a specific repetition of
418      * RESULT (a Group object) - creates it if necessary
419      *
420      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
421      * @throws HL7Exception if the repetition requested is more than one 
422      *     greater than the number of existing repetitions.
423      */
424     public OUL_R23_RESULT getRESULT(int rep) { 
425        OUL_R23_RESULT retVal = getTyped("RESULT", rep, OUL_R23_RESULT.class);
426        return retVal;
427     }
428 
429     /** 
430      * Returns the number of existing repetitions of RESULT 
431      */ 
432     public int getRESULTReps() {  
433         return getReps("RESULT");
434     } 
435 
436     /** 
437      * <p>
438      * Returns a non-modifiable List containing all current existing repetitions of RESULT.
439      * <p>
440      * <p>
441      * Note that unlike {@link #getRESULT()}, this method will not create any reps
442      * if none are already present, so an empty list may be returned.
443      * </p>
444      */ 
445     public java.util.List<OUL_R23_RESULT> getRESULTAll() throws HL7Exception {
446     	return getAllAsList("RESULT", OUL_R23_RESULT.class);
447     } 
448 
449     /**
450      * Inserts a specific repetition of RESULT (a Group object)
451      * @see AbstractGroup#insertRepetition(Structure, int) 
452      */
453     public void insertRESULT(OUL_R23_RESULT structure, int rep) throws HL7Exception { 
454        super.insertRepetition("RESULT", structure, rep);
455     }
456 
457 
458     /**
459      * Inserts a specific repetition of RESULT (a Group object)
460      * @see AbstractGroup#insertRepetition(Structure, int) 
461      */
462     public OUL_R23_RESULT insertRESULT(int rep) throws HL7Exception { 
463        return (OUL_R23_RESULT)super.insertRepetition("RESULT", rep);
464     }
465 
466 
467     /**
468      * Removes a specific repetition of RESULT (a Group object)
469      * @see AbstractGroup#removeRepetition(String, int) 
470      */
471     public OUL_R23_RESULT removeRESULT(int rep) throws HL7Exception { 
472        return (OUL_R23_RESULT)super.removeRepetition("RESULT", rep);
473     }
474 
475 
476 
477     /**
478      * Returns
479      * the first repetition of 
480      * CTI (Clinical Trial Identification) - creates it if necessary
481      */
482     public CTI getCTI() { 
483        CTI retVal = getTyped("CTI", CTI.class);
484        return retVal;
485     }
486 
487 
488     /**
489      * Returns a specific repetition of
490      * CTI (Clinical Trial Identification) - creates it if necessary
491      *
492      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
493      * @throws HL7Exception if the repetition requested is more than one 
494      *     greater than the number of existing repetitions.
495      */
496     public CTI getCTI(int rep) { 
497        CTI retVal = getTyped("CTI", rep, CTI.class);
498        return retVal;
499     }
500 
501     /** 
502      * Returns the number of existing repetitions of CTI 
503      */ 
504     public int getCTIReps() {  
505         return getReps("CTI");
506     } 
507 
508     /** 
509      * <p>
510      * Returns a non-modifiable List containing all current existing repetitions of CTI.
511      * <p>
512      * <p>
513      * Note that unlike {@link #getCTI()}, this method will not create any reps
514      * if none are already present, so an empty list may be returned.
515      * </p>
516      */ 
517     public java.util.List<CTI> getCTIAll() throws HL7Exception {
518     	return getAllAsList("CTI", CTI.class);
519     } 
520 
521     /**
522      * Inserts a specific repetition of CTI (Clinical Trial Identification)
523      * @see AbstractGroup#insertRepetition(Structure, int) 
524      */
525     public void insertCTI(CTI structure, int rep) throws HL7Exception { 
526        super.insertRepetition("CTI", structure, rep);
527     }
528 
529 
530     /**
531      * Inserts a specific repetition of CTI (Clinical Trial Identification)
532      * @see AbstractGroup#insertRepetition(Structure, int) 
533      */
534     public CTI insertCTI(int rep) throws HL7Exception { 
535        return (CTI)super.insertRepetition("CTI", rep);
536     }
537 
538 
539     /**
540      * Removes a specific repetition of CTI (Clinical Trial Identification)
541      * @see AbstractGroup#removeRepetition(String, int) 
542      */
543     public CTI removeCTI(int rep) throws HL7Exception { 
544        return (CTI)super.removeRepetition("CTI", rep);
545     }
546 
547 
548 
549 }
550