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 CSU_C09_PATIENT 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: PID (Patient Identification) <b>  </b></li>
49                           * <li>2: PD1 (Patient Additional Demographic) <b>optional  </b></li>
50                           * <li>3: PRT (Participation Information) <b>optional repeating </b></li>
51                           * <li>4: ARV (Access Restriction) <b>optional repeating </b></li>
52                           * <li>5: NTE (Notes and Comments) <b>optional repeating </b></li>
53                           * <li>6: CSU_C09_VISIT (a Group object) <b>optional  </b></li>
54                           * <li>7: CSR (Clinical Study Registration) <b>  </b></li>
55                           * <li>8: CSU_C09_STUDY_PHASE (a Group object) <b> repeating </b></li>
56   * </ul>
57   */
58  //@SuppressWarnings("unused")
59  public class CSU_C09_PATIENT extends AbstractGroup {
60  
61      /** 
62       * Creates a new CSU_C09_PATIENT group
63       */
64      public CSU_C09_PATIENT(Group parent, ModelClassFactory factory) {
65         super(parent, factory);
66         init(factory);
67      }
68  
69      private void init(ModelClassFactory factory) {
70         try {
71                                    this.add(PID.class, true, false, false);
72                                    this.add(PD1.class, false, false, false);
73                                    this.add(PRT.class, false, true, false);
74                                    this.add(ARV.class, false, true, false);
75                                    this.add(NTE.class, false, true, false);
76                                    this.add(CSU_C09_VISIT.class, false, false, false);
77                                    this.add(CSR.class, true, false, false);
78                                    this.add(CSU_C09_STUDY_PHASE.class, true, true, false);
79         } catch(HL7Exception e) {
80            log.error("Unexpected error creating CSU_C09_PATIENT - 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       * PID (Patient Identification) - creates it if necessary
96       */
97      public PID getPID() { 
98         PID retVal = getTyped("PID", PID.class);
99         return retVal;
100     }
101 
102 
103 
104 
105     /**
106      * Returns
107      * PD1 (Patient Additional Demographic) - creates it if necessary
108      */
109     public PD1 getPD1() { 
110        PD1 retVal = getTyped("PD1", PD1.class);
111        return retVal;
112     }
113 
114 
115 
116 
117     /**
118      * Returns
119      * the first repetition of 
120      * PRT (Participation Information) - creates it if necessary
121      */
122     public PRT getPRT() { 
123        PRT retVal = getTyped("PRT", PRT.class);
124        return retVal;
125     }
126 
127 
128     /**
129      * Returns a specific repetition of
130      * PRT (Participation Information) - creates it if necessary
131      *
132      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
133      * @throws HL7Exception if the repetition requested is more than one 
134      *     greater than the number of existing repetitions.
135      */
136     public PRT getPRT(int rep) { 
137        PRT retVal = getTyped("PRT", rep, PRT.class);
138        return retVal;
139     }
140 
141     /** 
142      * Returns the number of existing repetitions of PRT 
143      */ 
144     public int getPRTReps() {  
145         return getReps("PRT");
146     } 
147 
148     /** 
149      * <p>
150      * Returns a non-modifiable List containing all current existing repetitions of PRT.
151      * <p>
152      * <p>
153      * Note that unlike {@link #getPRT()}, this method will not create any reps
154      * if none are already present, so an empty list may be returned.
155      * </p>
156      */ 
157     public java.util.List<PRT> getPRTAll() throws HL7Exception {
158     	return getAllAsList("PRT", PRT.class);
159     } 
160 
161     /**
162      * Inserts a specific repetition of PRT (Participation Information)
163      * @see AbstractGroup#insertRepetition(Structure, int) 
164      */
165     public void insertPRT(PRT structure, int rep) throws HL7Exception { 
166        super.insertRepetition("PRT", structure, rep);
167     }
168 
169 
170     /**
171      * Inserts a specific repetition of PRT (Participation Information)
172      * @see AbstractGroup#insertRepetition(Structure, int) 
173      */
174     public PRT insertPRT(int rep) throws HL7Exception { 
175        return (PRT)super.insertRepetition("PRT", rep);
176     }
177 
178 
179     /**
180      * Removes a specific repetition of PRT (Participation Information)
181      * @see AbstractGroup#removeRepetition(String, int) 
182      */
183     public PRT removePRT(int rep) throws HL7Exception { 
184        return (PRT)super.removeRepetition("PRT", rep);
185     }
186 
187 
188 
189     /**
190      * Returns
191      * the first repetition of 
192      * ARV (Access Restriction) - creates it if necessary
193      */
194     public ARV getARV() { 
195        ARV retVal = getTyped("ARV", ARV.class);
196        return retVal;
197     }
198 
199 
200     /**
201      * Returns a specific repetition of
202      * ARV (Access Restriction) - 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 ARV getARV(int rep) { 
209        ARV retVal = getTyped("ARV", rep, ARV.class);
210        return retVal;
211     }
212 
213     /** 
214      * Returns the number of existing repetitions of ARV 
215      */ 
216     public int getARVReps() {  
217         return getReps("ARV");
218     } 
219 
220     /** 
221      * <p>
222      * Returns a non-modifiable List containing all current existing repetitions of ARV.
223      * <p>
224      * <p>
225      * Note that unlike {@link #getARV()}, 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<ARV> getARVAll() throws HL7Exception {
230     	return getAllAsList("ARV", ARV.class);
231     } 
232 
233     /**
234      * Inserts a specific repetition of ARV (Access Restriction)
235      * @see AbstractGroup#insertRepetition(Structure, int) 
236      */
237     public void insertARV(ARV structure, int rep) throws HL7Exception { 
238        super.insertRepetition("ARV", structure, rep);
239     }
240 
241 
242     /**
243      * Inserts a specific repetition of ARV (Access Restriction)
244      * @see AbstractGroup#insertRepetition(Structure, int) 
245      */
246     public ARV insertARV(int rep) throws HL7Exception { 
247        return (ARV)super.insertRepetition("ARV", rep);
248     }
249 
250 
251     /**
252      * Removes a specific repetition of ARV (Access Restriction)
253      * @see AbstractGroup#removeRepetition(String, int) 
254      */
255     public ARV removeARV(int rep) throws HL7Exception { 
256        return (ARV)super.removeRepetition("ARV", rep);
257     }
258 
259 
260 
261     /**
262      * Returns
263      * the first repetition of 
264      * NTE (Notes and Comments) - creates it if necessary
265      */
266     public NTE getNTE() { 
267        NTE retVal = getTyped("NTE", NTE.class);
268        return retVal;
269     }
270 
271 
272     /**
273      * Returns a specific repetition of
274      * NTE (Notes and Comments) - 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 NTE getNTE(int rep) { 
281        NTE retVal = getTyped("NTE", rep, NTE.class);
282        return retVal;
283     }
284 
285     /** 
286      * Returns the number of existing repetitions of NTE 
287      */ 
288     public int getNTEReps() {  
289         return getReps("NTE");
290     } 
291 
292     /** 
293      * <p>
294      * Returns a non-modifiable List containing all current existing repetitions of NTE.
295      * <p>
296      * <p>
297      * Note that unlike {@link #getNTE()}, 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<NTE> getNTEAll() throws HL7Exception {
302     	return getAllAsList("NTE", NTE.class);
303     } 
304 
305     /**
306      * Inserts a specific repetition of NTE (Notes and Comments)
307      * @see AbstractGroup#insertRepetition(Structure, int) 
308      */
309     public void insertNTE(NTE structure, int rep) throws HL7Exception { 
310        super.insertRepetition("NTE", structure, rep);
311     }
312 
313 
314     /**
315      * Inserts a specific repetition of NTE (Notes and Comments)
316      * @see AbstractGroup#insertRepetition(Structure, int) 
317      */
318     public NTE insertNTE(int rep) throws HL7Exception { 
319        return (NTE)super.insertRepetition("NTE", rep);
320     }
321 
322 
323     /**
324      * Removes a specific repetition of NTE (Notes and Comments)
325      * @see AbstractGroup#removeRepetition(String, int) 
326      */
327     public NTE removeNTE(int rep) throws HL7Exception { 
328        return (NTE)super.removeRepetition("NTE", rep);
329     }
330 
331 
332 
333     /**
334      * Returns
335      * VISIT (a Group object) - creates it if necessary
336      */
337     public CSU_C09_VISIT getVISIT() { 
338        CSU_C09_VISIT retVal = getTyped("VISIT", CSU_C09_VISIT.class);
339        return retVal;
340     }
341 
342 
343 
344 
345     /**
346      * Returns
347      * CSR (Clinical Study Registration) - creates it if necessary
348      */
349     public CSR getCSR() { 
350        CSR retVal = getTyped("CSR", CSR.class);
351        return retVal;
352     }
353 
354 
355 
356 
357     /**
358      * Returns
359      * the first repetition of 
360      * STUDY_PHASE (a Group object) - creates it if necessary
361      */
362     public CSU_C09_STUDY_PHASE getSTUDY_PHASE() { 
363        CSU_C09_STUDY_PHASE retVal = getTyped("STUDY_PHASE", CSU_C09_STUDY_PHASE.class);
364        return retVal;
365     }
366 
367 
368     /**
369      * Returns a specific repetition of
370      * STUDY_PHASE (a Group object) - creates it if necessary
371      *
372      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
373      * @throws HL7Exception if the repetition requested is more than one 
374      *     greater than the number of existing repetitions.
375      */
376     public CSU_C09_STUDY_PHASE getSTUDY_PHASE(int rep) { 
377        CSU_C09_STUDY_PHASE retVal = getTyped("STUDY_PHASE", rep, CSU_C09_STUDY_PHASE.class);
378        return retVal;
379     }
380 
381     /** 
382      * Returns the number of existing repetitions of STUDY_PHASE 
383      */ 
384     public int getSTUDY_PHASEReps() {  
385         return getReps("STUDY_PHASE");
386     } 
387 
388     /** 
389      * <p>
390      * Returns a non-modifiable List containing all current existing repetitions of STUDY_PHASE.
391      * <p>
392      * <p>
393      * Note that unlike {@link #getSTUDY_PHASE()}, this method will not create any reps
394      * if none are already present, so an empty list may be returned.
395      * </p>
396      */ 
397     public java.util.List<CSU_C09_STUDY_PHASE> getSTUDY_PHASEAll() throws HL7Exception {
398     	return getAllAsList("STUDY_PHASE", CSU_C09_STUDY_PHASE.class);
399     } 
400 
401     /**
402      * Inserts a specific repetition of STUDY_PHASE (a Group object)
403      * @see AbstractGroup#insertRepetition(Structure, int) 
404      */
405     public void insertSTUDY_PHASE(CSU_C09_STUDY_PHASE structure, int rep) throws HL7Exception { 
406        super.insertRepetition("STUDY_PHASE", structure, rep);
407     }
408 
409 
410     /**
411      * Inserts a specific repetition of STUDY_PHASE (a Group object)
412      * @see AbstractGroup#insertRepetition(Structure, int) 
413      */
414     public CSU_C09_STUDY_PHASE insertSTUDY_PHASE(int rep) throws HL7Exception { 
415        return (CSU_C09_STUDY_PHASE)super.insertRepetition("STUDY_PHASE", rep);
416     }
417 
418 
419     /**
420      * Removes a specific repetition of STUDY_PHASE (a Group object)
421      * @see AbstractGroup#removeRepetition(String, int) 
422      */
423     public CSU_C09_STUDY_PHASE removeSTUDY_PHASE(int rep) throws HL7Exception { 
424        return (CSU_C09_STUDY_PHASE)super.removeRepetition("STUDY_PHASE", rep);
425     }
426 
427 
428 
429 }
430