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.v281.message;
35  
36  import ca.uhn.hl7v2.model.v281.group.*;
37  import ca.uhn.hl7v2.model.v281.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 OSU_O41 message structure (see chapter 4.4.18). This structure contains the 
47   * following elements: </p>
48   * <ul>
49  		                 * <li>1: MSH (Message Header) <b> </b> </li>
50  		                 * <li>2: MSA (Message Acknowledgment) <b> </b> </li>
51  		                 * <li>3: ERR (Error) <b>optional repeating</b> </li>
52  		                 * <li>4: SFT (Software Segment) <b>optional repeating</b> </li>
53  		                 * <li>5: UAC (User Authentication Credential Segment) <b>optional </b> </li>
54  		                 * <li>6: NTE (Notes and Comments) <b>optional repeating</b> </li>
55  		                 * <li>7: PID (Patient Identification) <b>optional </b> </li>
56  		                 * <li>8: ARV (Access Restriction) <b>optional repeating</b> </li>
57  		                 * <li>9: OSU_O41_ORDER_STATUS (a Group object) <b> repeating</b> </li>
58   * </ul>
59   */
60  //@SuppressWarnings("unused")
61  public class OSU_O41 extends AbstractMessage  {
62  
63      /**
64       * Creates a new OSU_O41 message with DefaultModelClassFactory. 
65       */ 
66      public OSU_O41() { 
67         this(new DefaultModelClassFactory());
68      }
69  
70      /** 
71       * Creates a new OSU_O41 message with custom ModelClassFactory.
72       */
73      public OSU_O41(ModelClassFactory factory) {
74         super(factory);
75         init(factory);
76      }
77  
78      private void init(ModelClassFactory factory) {
79         try {
80                            this.add(MSH.class, true, false);
81  	                          this.add(MSA.class, true, false);
82  	                          this.add(ERR.class, false, true);
83  	                          this.add(SFT.class, false, true);
84  	                          this.add(UAC.class, false, false);
85  	                          this.add(NTE.class, false, true);
86  	                          this.add(PID.class, false, false);
87  	                          this.add(ARV.class, false, true);
88  	                          this.add(OSU_O41_ORDER_STATUS.class, true, true);
89  	       } catch(HL7Exception e) {
90            log.error("Unexpected error creating OSU_O41 - this is probably a bug in the source code generator.", e);
91         }
92      }
93  
94  
95      /** 
96       * Returns "2.8.1"
97       */
98      public String getVersion() {
99         return "2.8.1";
100     }
101 
102 
103 
104 
105     /**
106      * <p>
107      * Returns
108      * MSH (Message Header) - creates it if necessary
109      * </p>
110      * 
111      *
112      */
113     public MSH getMSH() { 
114        return getTyped("MSH", MSH.class);
115     }
116 
117 
118 
119 
120 
121     /**
122      * <p>
123      * Returns
124      * MSA (Message Acknowledgment) - creates it if necessary
125      * </p>
126      * 
127      *
128      */
129     public MSA getMSA() { 
130        return getTyped("MSA", MSA.class);
131     }
132 
133 
134 
135 
136 
137     /**
138      * <p>
139      * Returns
140      * the first repetition of 
141      * ERR (Error) - creates it if necessary
142      * </p>
143      * 
144      *
145      */
146     public ERR getERR() { 
147        return getTyped("ERR", ERR.class);
148     }
149 
150 
151     /**
152      * <p>
153      * Returns a specific repetition of
154      * ERR (Error) - creates it if necessary
155      * </p>
156      * 
157      *
158      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
159      * @throws HL7Exception if the repetition requested is more than one 
160      *     greater than the number of existing repetitions.
161      */
162     public ERR getERR(int rep) { 
163        return getTyped("ERR", rep, ERR.class);
164     }
165 
166     /** 
167      * <p>
168      * Returns the number of existing repetitions of ERR 
169      * </p>
170      * 
171      */ 
172     public int getERRReps() { 
173     	return getReps("ERR");
174     } 
175 
176     /** 
177      * <p>
178      * Returns a non-modifiable List containing all current existing repetitions of ERR.
179      * <p>
180      * <p>
181      * Note that unlike {@link #getERR()}, this method will not create any reps
182      * if none are already present, so an empty list may be returned.
183      * </p>
184      * 
185      */ 
186     public java.util.List<ERR> getERRAll() throws HL7Exception {
187     	return getAllAsList("ERR", ERR.class);
188     } 
189 
190     /**
191      * <p>
192      * Inserts a specific repetition of ERR (Error)
193      * </p>
194      * 
195      *
196      * @see AbstractGroup#insertRepetition(Structure, int) 
197      */
198     public void insertERR(ERR structure, int rep) throws HL7Exception { 
199        super.insertRepetition( "ERR", structure, rep);
200     }
201 
202 
203     /**
204      * <p>
205      * Inserts a specific repetition of ERR (Error)
206      * </p>
207      * 
208      *
209      * @see AbstractGroup#insertRepetition(Structure, int) 
210      */
211     public ERR insertERR(int rep) throws HL7Exception { 
212        return (ERR)super.insertRepetition("ERR", rep);
213     }
214 
215 
216     /**
217      * <p>
218      * Removes a specific repetition of ERR (Error)
219      * </p>
220      * 
221      *
222      * @see AbstractGroup#removeRepetition(String, int) 
223      */
224     public ERR removeERR(int rep) throws HL7Exception { 
225        return (ERR)super.removeRepetition("ERR", rep);
226     }
227 
228 
229 
230 
231     /**
232      * <p>
233      * Returns
234      * the first repetition of 
235      * SFT (Software Segment) - creates it if necessary
236      * </p>
237      * 
238      *
239      */
240     public SFT getSFT() { 
241        return getTyped("SFT", SFT.class);
242     }
243 
244 
245     /**
246      * <p>
247      * Returns a specific repetition of
248      * SFT (Software Segment) - creates it if necessary
249      * </p>
250      * 
251      *
252      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
253      * @throws HL7Exception if the repetition requested is more than one 
254      *     greater than the number of existing repetitions.
255      */
256     public SFT getSFT(int rep) { 
257        return getTyped("SFT", rep, SFT.class);
258     }
259 
260     /** 
261      * <p>
262      * Returns the number of existing repetitions of SFT 
263      * </p>
264      * 
265      */ 
266     public int getSFTReps() { 
267     	return getReps("SFT");
268     } 
269 
270     /** 
271      * <p>
272      * Returns a non-modifiable List containing all current existing repetitions of SFT.
273      * <p>
274      * <p>
275      * Note that unlike {@link #getSFT()}, this method will not create any reps
276      * if none are already present, so an empty list may be returned.
277      * </p>
278      * 
279      */ 
280     public java.util.List<SFT> getSFTAll() throws HL7Exception {
281     	return getAllAsList("SFT", SFT.class);
282     } 
283 
284     /**
285      * <p>
286      * Inserts a specific repetition of SFT (Software Segment)
287      * </p>
288      * 
289      *
290      * @see AbstractGroup#insertRepetition(Structure, int) 
291      */
292     public void insertSFT(SFT structure, int rep) throws HL7Exception { 
293        super.insertRepetition( "SFT", structure, rep);
294     }
295 
296 
297     /**
298      * <p>
299      * Inserts a specific repetition of SFT (Software Segment)
300      * </p>
301      * 
302      *
303      * @see AbstractGroup#insertRepetition(Structure, int) 
304      */
305     public SFT insertSFT(int rep) throws HL7Exception { 
306        return (SFT)super.insertRepetition("SFT", rep);
307     }
308 
309 
310     /**
311      * <p>
312      * Removes a specific repetition of SFT (Software Segment)
313      * </p>
314      * 
315      *
316      * @see AbstractGroup#removeRepetition(String, int) 
317      */
318     public SFT removeSFT(int rep) throws HL7Exception { 
319        return (SFT)super.removeRepetition("SFT", rep);
320     }
321 
322 
323 
324 
325     /**
326      * <p>
327      * Returns
328      * UAC (User Authentication Credential Segment) - creates it if necessary
329      * </p>
330      * 
331      *
332      */
333     public UAC getUAC() { 
334        return getTyped("UAC", UAC.class);
335     }
336 
337 
338 
339 
340 
341     /**
342      * <p>
343      * Returns
344      * the first repetition of 
345      * NTE (Notes and Comments) - creates it if necessary
346      * </p>
347      * 
348      *
349      */
350     public NTE getNTE() { 
351        return getTyped("NTE", NTE.class);
352     }
353 
354 
355     /**
356      * <p>
357      * Returns a specific repetition of
358      * NTE (Notes and Comments) - creates it if necessary
359      * </p>
360      * 
361      *
362      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
363      * @throws HL7Exception if the repetition requested is more than one 
364      *     greater than the number of existing repetitions.
365      */
366     public NTE getNTE(int rep) { 
367        return getTyped("NTE", rep, NTE.class);
368     }
369 
370     /** 
371      * <p>
372      * Returns the number of existing repetitions of NTE 
373      * </p>
374      * 
375      */ 
376     public int getNTEReps() { 
377     	return getReps("NTE");
378     } 
379 
380     /** 
381      * <p>
382      * Returns a non-modifiable List containing all current existing repetitions of NTE.
383      * <p>
384      * <p>
385      * Note that unlike {@link #getNTE()}, this method will not create any reps
386      * if none are already present, so an empty list may be returned.
387      * </p>
388      * 
389      */ 
390     public java.util.List<NTE> getNTEAll() throws HL7Exception {
391     	return getAllAsList("NTE", NTE.class);
392     } 
393 
394     /**
395      * <p>
396      * Inserts a specific repetition of NTE (Notes and Comments)
397      * </p>
398      * 
399      *
400      * @see AbstractGroup#insertRepetition(Structure, int) 
401      */
402     public void insertNTE(NTE structure, int rep) throws HL7Exception { 
403        super.insertRepetition( "NTE", structure, rep);
404     }
405 
406 
407     /**
408      * <p>
409      * Inserts a specific repetition of NTE (Notes and Comments)
410      * </p>
411      * 
412      *
413      * @see AbstractGroup#insertRepetition(Structure, int) 
414      */
415     public NTE insertNTE(int rep) throws HL7Exception { 
416        return (NTE)super.insertRepetition("NTE", rep);
417     }
418 
419 
420     /**
421      * <p>
422      * Removes a specific repetition of NTE (Notes and Comments)
423      * </p>
424      * 
425      *
426      * @see AbstractGroup#removeRepetition(String, int) 
427      */
428     public NTE removeNTE(int rep) throws HL7Exception { 
429        return (NTE)super.removeRepetition("NTE", rep);
430     }
431 
432 
433 
434 
435     /**
436      * <p>
437      * Returns
438      * PID (Patient Identification) - creates it if necessary
439      * </p>
440      * 
441      *
442      */
443     public PID getPID() { 
444        return getTyped("PID", PID.class);
445     }
446 
447 
448 
449 
450 
451     /**
452      * <p>
453      * Returns
454      * the first repetition of 
455      * ARV (Access Restriction) - creates it if necessary
456      * </p>
457      * 
458      *
459      */
460     public ARV getARV() { 
461        return getTyped("ARV", ARV.class);
462     }
463 
464 
465     /**
466      * <p>
467      * Returns a specific repetition of
468      * ARV (Access Restriction) - creates it if necessary
469      * </p>
470      * 
471      *
472      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
473      * @throws HL7Exception if the repetition requested is more than one 
474      *     greater than the number of existing repetitions.
475      */
476     public ARV getARV(int rep) { 
477        return getTyped("ARV", rep, ARV.class);
478     }
479 
480     /** 
481      * <p>
482      * Returns the number of existing repetitions of ARV 
483      * </p>
484      * 
485      */ 
486     public int getARVReps() { 
487     	return getReps("ARV");
488     } 
489 
490     /** 
491      * <p>
492      * Returns a non-modifiable List containing all current existing repetitions of ARV.
493      * <p>
494      * <p>
495      * Note that unlike {@link #getARV()}, this method will not create any reps
496      * if none are already present, so an empty list may be returned.
497      * </p>
498      * 
499      */ 
500     public java.util.List<ARV> getARVAll() throws HL7Exception {
501     	return getAllAsList("ARV", ARV.class);
502     } 
503 
504     /**
505      * <p>
506      * Inserts a specific repetition of ARV (Access Restriction)
507      * </p>
508      * 
509      *
510      * @see AbstractGroup#insertRepetition(Structure, int) 
511      */
512     public void insertARV(ARV structure, int rep) throws HL7Exception { 
513        super.insertRepetition( "ARV", structure, rep);
514     }
515 
516 
517     /**
518      * <p>
519      * Inserts a specific repetition of ARV (Access Restriction)
520      * </p>
521      * 
522      *
523      * @see AbstractGroup#insertRepetition(Structure, int) 
524      */
525     public ARV insertARV(int rep) throws HL7Exception { 
526        return (ARV)super.insertRepetition("ARV", rep);
527     }
528 
529 
530     /**
531      * <p>
532      * Removes a specific repetition of ARV (Access Restriction)
533      * </p>
534      * 
535      *
536      * @see AbstractGroup#removeRepetition(String, int) 
537      */
538     public ARV removeARV(int rep) throws HL7Exception { 
539        return (ARV)super.removeRepetition("ARV", rep);
540     }
541 
542 
543 
544 
545     /**
546      * <p>
547      * Returns
548      * the first repetition of 
549      * ORDER_STATUS (a Group object) - creates it if necessary
550      * </p>
551      * 
552      *
553      */
554     public OSU_O41_ORDER_STATUS getORDER_STATUS() { 
555        return getTyped("ORDER_STATUS", OSU_O41_ORDER_STATUS.class);
556     }
557 
558 
559     /**
560      * <p>
561      * Returns a specific repetition of
562      * ORDER_STATUS (a Group object) - creates it if necessary
563      * </p>
564      * 
565      *
566      * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
567      * @throws HL7Exception if the repetition requested is more than one 
568      *     greater than the number of existing repetitions.
569      */
570     public OSU_O41_ORDER_STATUS getORDER_STATUS(int rep) { 
571        return getTyped("ORDER_STATUS", rep, OSU_O41_ORDER_STATUS.class);
572     }
573 
574     /** 
575      * <p>
576      * Returns the number of existing repetitions of ORDER_STATUS 
577      * </p>
578      * 
579      */ 
580     public int getORDER_STATUSReps() { 
581     	return getReps("ORDER_STATUS");
582     } 
583 
584     /** 
585      * <p>
586      * Returns a non-modifiable List containing all current existing repetitions of ORDER_STATUS.
587      * <p>
588      * <p>
589      * Note that unlike {@link #getORDER_STATUS()}, this method will not create any reps
590      * if none are already present, so an empty list may be returned.
591      * </p>
592      * 
593      */ 
594     public java.util.List<OSU_O41_ORDER_STATUS> getORDER_STATUSAll() throws HL7Exception {
595     	return getAllAsList("ORDER_STATUS", OSU_O41_ORDER_STATUS.class);
596     } 
597 
598     /**
599      * <p>
600      * Inserts a specific repetition of ORDER_STATUS (a Group object)
601      * </p>
602      * 
603      *
604      * @see AbstractGroup#insertRepetition(Structure, int) 
605      */
606     public void insertORDER_STATUS(OSU_O41_ORDER_STATUS structure, int rep) throws HL7Exception { 
607        super.insertRepetition( "ORDER_STATUS", structure, rep);
608     }
609 
610 
611     /**
612      * <p>
613      * Inserts a specific repetition of ORDER_STATUS (a Group object)
614      * </p>
615      * 
616      *
617      * @see AbstractGroup#insertRepetition(Structure, int) 
618      */
619     public OSU_O41_ORDER_STATUS insertORDER_STATUS(int rep) throws HL7Exception { 
620        return (OSU_O41_ORDER_STATUS)super.insertRepetition("ORDER_STATUS", rep);
621     }
622 
623 
624     /**
625      * <p>
626      * Removes a specific repetition of ORDER_STATUS (a Group object)
627      * </p>
628      * 
629      *
630      * @see AbstractGroup#removeRepetition(String, int) 
631      */
632     public OSU_O41_ORDER_STATUS removeORDER_STATUS(int rep) throws HL7Exception { 
633        return (OSU_O41_ORDER_STATUS)super.removeRepetition("ORDER_STATUS", rep);
634     }
635 
636 
637 
638 }
639