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 EHC_E20_PSL_ITEM_INFO 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: PSL (Product/Service Line Item) <b>  choice</b></li>
49                           * <li>2: NTE (Notes and Comments) <b>optional repeating choice</b></li>
50                           * <li>3: ADJ (Adjustment) <b>optional repeating choice</b></li>
51                           * <li>4: LOC (Location Identification) <b>optional repeating choice</b></li>
52                           * <li>5: PRT (Participation Information) <b>optional repeating choice</b></li>
53                           * <li>6: ROL (Role) <b>optional repeating choice</b></li>
54   * </ul>
55   * <p>
56   * Note that this structure has "choice" elements. This means that one of the 
57   * structures above marked as "choice" must be present, but no more than one.
58   * </p> 
59   */
60  //@SuppressWarnings("unused")
61  public class EHC_E20_PSL_ITEM_INFO extends AbstractGroup {
62  
63      /** 
64       * Creates a new EHC_E20_PSL_ITEM_INFO group
65       */
66      public EHC_E20_PSL_ITEM_INFO(Group parent, ModelClassFactory factory) {
67         super(parent, factory);
68         init(factory);
69      }
70  
71      private void init(ModelClassFactory factory) {
72         try {
73                                    this.add(PSL.class, true, false, true);
74                                    this.add(NTE.class, false, true, true);
75                                    this.add(ADJ.class, false, true, true);
76                                    this.add(LOC.class, false, true, true);
77                                    this.add(PRT.class, false, true, true);
78                                    this.add(ROL.class, false, true, true);
79         } catch(HL7Exception e) {
80            log.error("Unexpected error creating EHC_E20_PSL_ITEM_INFO - 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       * PSL (Product/Service Line Item) - creates it if necessary
96       */
97      public PSL getPSL() { 
98         PSL retVal = getTyped("PSL", PSL.class);
99         return retVal;
100     }
101 
102 
103 
104 
105     /**
106      * Returns
107      * the first repetition of 
108      * NTE (Notes and Comments) - creates it if necessary
109      */
110     public NTE getNTE() { 
111        NTE retVal = getTyped("NTE", NTE.class);
112        return retVal;
113     }
114 
115 
116     /**
117      * Returns a specific repetition of
118      * NTE (Notes and Comments) - 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 NTE getNTE(int rep) { 
125        NTE retVal = getTyped("NTE", rep, NTE.class);
126        return retVal;
127     }
128 
129     /** 
130      * Returns the number of existing repetitions of NTE 
131      */ 
132     public int getNTEReps() {  
133         return getReps("NTE");
134     } 
135 
136     /** 
137      * <p>
138      * Returns a non-modifiable List containing all current existing repetitions of NTE.
139      * <p>
140      * <p>
141      * Note that unlike {@link #getNTE()}, 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<NTE> getNTEAll() throws HL7Exception {
146     	return getAllAsList("NTE", NTE.class);
147     } 
148 
149     /**
150      * Inserts a specific repetition of NTE (Notes and Comments)
151      * @see AbstractGroup#insertRepetition(Structure, int) 
152      */
153     public void insertNTE(NTE structure, int rep) throws HL7Exception { 
154        super.insertRepetition("NTE", structure, rep);
155     }
156 
157 
158     /**
159      * Inserts a specific repetition of NTE (Notes and Comments)
160      * @see AbstractGroup#insertRepetition(Structure, int) 
161      */
162     public NTE insertNTE(int rep) throws HL7Exception { 
163        return (NTE)super.insertRepetition("NTE", rep);
164     }
165 
166 
167     /**
168      * Removes a specific repetition of NTE (Notes and Comments)
169      * @see AbstractGroup#removeRepetition(String, int) 
170      */
171     public NTE removeNTE(int rep) throws HL7Exception { 
172        return (NTE)super.removeRepetition("NTE", rep);
173     }
174 
175 
176 
177     /**
178      * Returns
179      * the first repetition of 
180      * ADJ (Adjustment) - creates it if necessary
181      */
182     public ADJ getADJ() { 
183        ADJ retVal = getTyped("ADJ", ADJ.class);
184        return retVal;
185     }
186 
187 
188     /**
189      * Returns a specific repetition of
190      * ADJ (Adjustment) - creates it if necessary
191      *
192      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
193      * @throws HL7Exception if the repetition requested is more than one 
194      *     greater than the number of existing repetitions.
195      */
196     public ADJ getADJ(int rep) { 
197        ADJ retVal = getTyped("ADJ", rep, ADJ.class);
198        return retVal;
199     }
200 
201     /** 
202      * Returns the number of existing repetitions of ADJ 
203      */ 
204     public int getADJReps() {  
205         return getReps("ADJ");
206     } 
207 
208     /** 
209      * <p>
210      * Returns a non-modifiable List containing all current existing repetitions of ADJ.
211      * <p>
212      * <p>
213      * Note that unlike {@link #getADJ()}, this method will not create any reps
214      * if none are already present, so an empty list may be returned.
215      * </p>
216      */ 
217     public java.util.List<ADJ> getADJAll() throws HL7Exception {
218     	return getAllAsList("ADJ", ADJ.class);
219     } 
220 
221     /**
222      * Inserts a specific repetition of ADJ (Adjustment)
223      * @see AbstractGroup#insertRepetition(Structure, int) 
224      */
225     public void insertADJ(ADJ structure, int rep) throws HL7Exception { 
226        super.insertRepetition("ADJ", structure, rep);
227     }
228 
229 
230     /**
231      * Inserts a specific repetition of ADJ (Adjustment)
232      * @see AbstractGroup#insertRepetition(Structure, int) 
233      */
234     public ADJ insertADJ(int rep) throws HL7Exception { 
235        return (ADJ)super.insertRepetition("ADJ", rep);
236     }
237 
238 
239     /**
240      * Removes a specific repetition of ADJ (Adjustment)
241      * @see AbstractGroup#removeRepetition(String, int) 
242      */
243     public ADJ removeADJ(int rep) throws HL7Exception { 
244        return (ADJ)super.removeRepetition("ADJ", rep);
245     }
246 
247 
248 
249     /**
250      * Returns
251      * the first repetition of 
252      * LOC (Location Identification) - creates it if necessary
253      */
254     public LOC getLOC() { 
255        LOC retVal = getTyped("LOC", LOC.class);
256        return retVal;
257     }
258 
259 
260     /**
261      * Returns a specific repetition of
262      * LOC (Location Identification) - creates it if necessary
263      *
264      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
265      * @throws HL7Exception if the repetition requested is more than one 
266      *     greater than the number of existing repetitions.
267      */
268     public LOC getLOC(int rep) { 
269        LOC retVal = getTyped("LOC", rep, LOC.class);
270        return retVal;
271     }
272 
273     /** 
274      * Returns the number of existing repetitions of LOC 
275      */ 
276     public int getLOCReps() {  
277         return getReps("LOC");
278     } 
279 
280     /** 
281      * <p>
282      * Returns a non-modifiable List containing all current existing repetitions of LOC.
283      * <p>
284      * <p>
285      * Note that unlike {@link #getLOC()}, this method will not create any reps
286      * if none are already present, so an empty list may be returned.
287      * </p>
288      */ 
289     public java.util.List<LOC> getLOCAll() throws HL7Exception {
290     	return getAllAsList("LOC", LOC.class);
291     } 
292 
293     /**
294      * Inserts a specific repetition of LOC (Location Identification)
295      * @see AbstractGroup#insertRepetition(Structure, int) 
296      */
297     public void insertLOC(LOC structure, int rep) throws HL7Exception { 
298        super.insertRepetition("LOC", structure, rep);
299     }
300 
301 
302     /**
303      * Inserts a specific repetition of LOC (Location Identification)
304      * @see AbstractGroup#insertRepetition(Structure, int) 
305      */
306     public LOC insertLOC(int rep) throws HL7Exception { 
307        return (LOC)super.insertRepetition("LOC", rep);
308     }
309 
310 
311     /**
312      * Removes a specific repetition of LOC (Location Identification)
313      * @see AbstractGroup#removeRepetition(String, int) 
314      */
315     public LOC removeLOC(int rep) throws HL7Exception { 
316        return (LOC)super.removeRepetition("LOC", rep);
317     }
318 
319 
320 
321     /**
322      * Returns
323      * the first repetition of 
324      * PRT (Participation Information) - creates it if necessary
325      */
326     public PRT getPRT() { 
327        PRT retVal = getTyped("PRT", PRT.class);
328        return retVal;
329     }
330 
331 
332     /**
333      * Returns a specific repetition of
334      * PRT (Participation Information) - creates it if necessary
335      *
336      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
337      * @throws HL7Exception if the repetition requested is more than one 
338      *     greater than the number of existing repetitions.
339      */
340     public PRT getPRT(int rep) { 
341        PRT retVal = getTyped("PRT", rep, PRT.class);
342        return retVal;
343     }
344 
345     /** 
346      * Returns the number of existing repetitions of PRT 
347      */ 
348     public int getPRTReps() {  
349         return getReps("PRT");
350     } 
351 
352     /** 
353      * <p>
354      * Returns a non-modifiable List containing all current existing repetitions of PRT.
355      * <p>
356      * <p>
357      * Note that unlike {@link #getPRT()}, this method will not create any reps
358      * if none are already present, so an empty list may be returned.
359      * </p>
360      */ 
361     public java.util.List<PRT> getPRTAll() throws HL7Exception {
362     	return getAllAsList("PRT", PRT.class);
363     } 
364 
365     /**
366      * Inserts a specific repetition of PRT (Participation Information)
367      * @see AbstractGroup#insertRepetition(Structure, int) 
368      */
369     public void insertPRT(PRT structure, int rep) throws HL7Exception { 
370        super.insertRepetition("PRT", structure, rep);
371     }
372 
373 
374     /**
375      * Inserts a specific repetition of PRT (Participation Information)
376      * @see AbstractGroup#insertRepetition(Structure, int) 
377      */
378     public PRT insertPRT(int rep) throws HL7Exception { 
379        return (PRT)super.insertRepetition("PRT", rep);
380     }
381 
382 
383     /**
384      * Removes a specific repetition of PRT (Participation Information)
385      * @see AbstractGroup#removeRepetition(String, int) 
386      */
387     public PRT removePRT(int rep) throws HL7Exception { 
388        return (PRT)super.removeRepetition("PRT", rep);
389     }
390 
391 
392 
393     /**
394      * Returns
395      * the first repetition of 
396      * ROL (Role) - creates it if necessary
397      */
398     public ROL getROL() { 
399        ROL retVal = getTyped("ROL", ROL.class);
400        return retVal;
401     }
402 
403 
404     /**
405      * Returns a specific repetition of
406      * ROL (Role) - creates it if necessary
407      *
408      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
409      * @throws HL7Exception if the repetition requested is more than one 
410      *     greater than the number of existing repetitions.
411      */
412     public ROL getROL(int rep) { 
413        ROL retVal = getTyped("ROL", rep, ROL.class);
414        return retVal;
415     }
416 
417     /** 
418      * Returns the number of existing repetitions of ROL 
419      */ 
420     public int getROLReps() {  
421         return getReps("ROL");
422     } 
423 
424     /** 
425      * <p>
426      * Returns a non-modifiable List containing all current existing repetitions of ROL.
427      * <p>
428      * <p>
429      * Note that unlike {@link #getROL()}, this method will not create any reps
430      * if none are already present, so an empty list may be returned.
431      * </p>
432      */ 
433     public java.util.List<ROL> getROLAll() throws HL7Exception {
434     	return getAllAsList("ROL", ROL.class);
435     } 
436 
437     /**
438      * Inserts a specific repetition of ROL (Role)
439      * @see AbstractGroup#insertRepetition(Structure, int) 
440      */
441     public void insertROL(ROL structure, int rep) throws HL7Exception { 
442        super.insertRepetition("ROL", structure, rep);
443     }
444 
445 
446     /**
447      * Inserts a specific repetition of ROL (Role)
448      * @see AbstractGroup#insertRepetition(Structure, int) 
449      */
450     public ROL insertROL(int rep) throws HL7Exception { 
451        return (ROL)super.insertRepetition("ROL", rep);
452     }
453 
454 
455     /**
456      * Removes a specific repetition of ROL (Role)
457      * @see AbstractGroup#removeRepetition(String, int) 
458      */
459     public ROL removeROL(int rep) throws HL7Exception { 
460        return (ROL)super.removeRepetition("ROL", rep);
461     }
462 
463 
464 
465 }
466