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.segment;
35  
36  // import ca.uhn.hl7v2.model.v281.group.*;
37  import ca.uhn.hl7v2.model.v281.datatype.*;
38  import ca.uhn.hl7v2.HL7Exception;
39  import ca.uhn.hl7v2.parser.ModelClassFactory;
40  import ca.uhn.hl7v2.parser.DefaultModelClassFactory;
41  import ca.uhn.hl7v2.model.AbstractMessage;
42  import ca.uhn.hl7v2.model.Group;
43  import ca.uhn.hl7v2.model.Type;
44  import ca.uhn.hl7v2.model.AbstractSegment;
45  import ca.uhn.hl7v2.model.Varies;
46  
47  
48  /**
49   *<p>Represents an HL7 DON message segment (Donation). 
50   * This segment has the following fields:</p>
51   * <ul>
52       * <li>DON-1: Donation Identification Number - DIN (EI) <b>optional </b>
53       * <li>DON-2: Donation Type (CNE) <b>optional </b>
54       * <li>DON-3: Phlebotomy Start Date/Time (DTM) <b> </b>
55       * <li>DON-4: Phlebotomy End Date/Time (DTM) <b> </b>
56       * <li>DON-5: Donation Duration (NM) <b> </b>
57       * <li>DON-6: Donation Duration Units (CNE) <b> </b>
58       * <li>DON-7: Intended Procedure Type (CNE) <b> repeating</b>
59       * <li>DON-8: Actual Procedure Type (CNE) <b> repeating</b>
60       * <li>DON-9: Donor Eligibility Flag (ID) <b> </b>
61       * <li>DON-10: Donor Eligibility Procedure Type (CNE) <b> repeating</b>
62       * <li>DON-11: Donor Eligibility Date (DTM) <b> </b>
63       * <li>DON-12: Process Interruption (CNE) <b> </b>
64       * <li>DON-13: Process Interruption Reason (CNE) <b> </b>
65       * <li>DON-14: Phlebotomy Issue (CNE) <b> repeating</b>
66       * <li>DON-15: Intended Recipient Blood Relative (ID) <b> </b>
67       * <li>DON-16: Intended Recipient Name (XPN) <b> </b>
68       * <li>DON-17: Intended Recipient DOB (DTM) <b> </b>
69       * <li>DON-18: Intended Recipient Facility (XON) <b> </b>
70       * <li>DON-19: Intended Recipient Procedure Date (DTM) <b> </b>
71       * <li>DON-20: Intended Recipient Ordering Provider (XPN) <b> </b>
72       * <li>DON-21: Phlebotomy Status (CNE) <b> </b>
73       * <li>DON-22: Arm Stick (CNE) <b> </b>
74       * <li>DON-23: Bleed Start Phlebotomist (XPN) <b> </b>
75       * <li>DON-24: Bleed End Phlebotomist (XPN) <b> </b>
76       * <li>DON-25: Aphaeresis Type Machine (ST) <b> </b>
77       * <li>DON-26: Aphaeresis Machine Serial Number (ST) <b> </b>
78       * <li>DON-27: Donor Reaction (ID) <b> </b>
79       * <li>DON-28: Final Review Staff ID (XPN) <b> </b>
80       * <li>DON-29: Final Review Date/Time (DTM) <b> </b>
81       * <li>DON-30: Number of Tubes Collected (NM) <b> </b>
82       * <li>DON-31: Donation Sample Identifier (EI) <b> repeating</b>
83       * <li>DON-32: Donation Accept Staff (XCN) <b> </b>
84       * <li>DON-33: Donation Material Review Staff (XCN) <b> repeating</b>
85   * </ul>
86   */
87  @SuppressWarnings("unused")
88  public class DON extends AbstractSegment {
89  
90      /** 
91       * Creates a new DON segment
92       */
93      public DON(Group parent, ModelClassFactory factory) {
94         super(parent, factory);
95         init(factory);
96      }
97  
98      private void init(ModelClassFactory factory) {
99         try {
100                                   this.add(EI.class, false, 1, 0, new Object[]{ getMessage() }, "Donation Identification Number - DIN");
101                                   this.add(CNE.class, false, 1, 0, new Object[]{ getMessage() }, "Donation Type");
102                                   this.add(DTM.class, true, 1, 0, new Object[]{ getMessage() }, "Phlebotomy Start Date/Time");
103                                   this.add(DTM.class, true, 1, 0, new Object[]{ getMessage() }, "Phlebotomy End Date/Time");
104                                   this.add(NM.class, true, 1, 0, new Object[]{ getMessage() }, "Donation Duration");
105                                   this.add(CNE.class, true, 1, 0, new Object[]{ getMessage() }, "Donation Duration Units");
106                                   this.add(CNE.class, true, 0, 0, new Object[]{ getMessage() }, "Intended Procedure Type");
107                                   this.add(CNE.class, true, 0, 0, new Object[]{ getMessage() }, "Actual Procedure Type");
108                                               this.add(ID.class, true, 1, 0, new Object[]{ getMessage(), new Integer(136) }, "Donor Eligibility Flag");
109                                   this.add(CNE.class, true, 0, 0, new Object[]{ getMessage() }, "Donor Eligibility Procedure Type");
110                                   this.add(DTM.class, true, 1, 0, new Object[]{ getMessage() }, "Donor Eligibility Date");
111                                   this.add(CNE.class, true, 1, 0, new Object[]{ getMessage() }, "Process Interruption");
112                                   this.add(CNE.class, true, 1, 0, new Object[]{ getMessage() }, "Process Interruption Reason");
113                                   this.add(CNE.class, true, 0, 0, new Object[]{ getMessage() }, "Phlebotomy Issue");
114                                               this.add(ID.class, true, 1, 0, new Object[]{ getMessage(), new Integer(136) }, "Intended Recipient Blood Relative");
115                                   this.add(XPN.class, true, 1, 0, new Object[]{ getMessage() }, "Intended Recipient Name");
116                                   this.add(DTM.class, true, 1, 0, new Object[]{ getMessage() }, "Intended Recipient DOB");
117                                   this.add(XON.class, true, 1, 0, new Object[]{ getMessage() }, "Intended Recipient Facility");
118                                   this.add(DTM.class, true, 1, 0, new Object[]{ getMessage() }, "Intended Recipient Procedure Date");
119                                   this.add(XPN.class, true, 1, 0, new Object[]{ getMessage() }, "Intended Recipient Ordering Provider");
120                                   this.add(CNE.class, true, 1, 0, new Object[]{ getMessage() }, "Phlebotomy Status");
121                                   this.add(CNE.class, true, 1, 0, new Object[]{ getMessage() }, "Arm Stick");
122                                   this.add(XPN.class, true, 1, 0, new Object[]{ getMessage() }, "Bleed Start Phlebotomist");
123                                   this.add(XPN.class, true, 1, 0, new Object[]{ getMessage() }, "Bleed End Phlebotomist");
124                                   this.add(ST.class, true, 1, 0, new Object[]{ getMessage() }, "Aphaeresis Type Machine");
125                                   this.add(ST.class, true, 1, 0, new Object[]{ getMessage() }, "Aphaeresis Machine Serial Number");
126                                               this.add(ID.class, true, 1, 0, new Object[]{ getMessage(), new Integer(136) }, "Donor Reaction");
127                                   this.add(XPN.class, true, 1, 0, new Object[]{ getMessage() }, "Final Review Staff ID");
128                                   this.add(DTM.class, true, 1, 0, new Object[]{ getMessage() }, "Final Review Date/Time");
129                                   this.add(NM.class, true, 1, 0, new Object[]{ getMessage() }, "Number of Tubes Collected");
130                                   this.add(EI.class, true, 0, 0, new Object[]{ getMessage() }, "Donation Sample Identifier");
131                                   this.add(XCN.class, true, 1, 0, new Object[]{ getMessage() }, "Donation Accept Staff");
132                                   this.add(XCN.class, true, 0, 0, new Object[]{ getMessage() }, "Donation Material Review Staff");
133        } catch(HL7Exception e) {
134           log.error("Unexpected error creating DON - this is probably a bug in the source code generator.", e);
135        }
136     }
137 
138 
139 
140     /**
141      * Returns
142      * DON-1: "Donation Identification Number - DIN" - creates it if necessary
143      */
144     public EI getDonationIdentificationNumberDIN() { 
145 		EI retVal = this.getTypedField(1, 0);
146 		return retVal;
147     }
148     
149     /**
150      * Returns
151      * DON-1: "Donation Identification Number - DIN" - creates it if necessary
152      */
153     public EI getDon1_DonationIdentificationNumberDIN() { 
154 		EI retVal = this.getTypedField(1, 0);
155 		return retVal;
156     }
157 
158 
159 
160     /**
161      * Returns
162      * DON-2: "Donation Type" - creates it if necessary
163      */
164     public CNE getDonationType() { 
165 		CNE retVal = this.getTypedField(2, 0);
166 		return retVal;
167     }
168     
169     /**
170      * Returns
171      * DON-2: "Donation Type" - creates it if necessary
172      */
173     public CNE getDon2_DonationType() { 
174 		CNE retVal = this.getTypedField(2, 0);
175 		return retVal;
176     }
177 
178 
179 
180     /**
181      * Returns
182      * DON-3: "Phlebotomy Start Date/Time" - creates it if necessary
183      */
184     public DTM getPhlebotomyStartDateTime() { 
185 		DTM retVal = this.getTypedField(3, 0);
186 		return retVal;
187     }
188     
189     /**
190      * Returns
191      * DON-3: "Phlebotomy Start Date/Time" - creates it if necessary
192      */
193     public DTM getDon3_PhlebotomyStartDateTime() { 
194 		DTM retVal = this.getTypedField(3, 0);
195 		return retVal;
196     }
197 
198 
199 
200     /**
201      * Returns
202      * DON-4: "Phlebotomy End Date/Time" - creates it if necessary
203      */
204     public DTM getPhlebotomyEndDateTime() { 
205 		DTM retVal = this.getTypedField(4, 0);
206 		return retVal;
207     }
208     
209     /**
210      * Returns
211      * DON-4: "Phlebotomy End Date/Time" - creates it if necessary
212      */
213     public DTM getDon4_PhlebotomyEndDateTime() { 
214 		DTM retVal = this.getTypedField(4, 0);
215 		return retVal;
216     }
217 
218 
219 
220     /**
221      * Returns
222      * DON-5: "Donation Duration" - creates it if necessary
223      */
224     public NM getDonationDuration() { 
225 		NM retVal = this.getTypedField(5, 0);
226 		return retVal;
227     }
228     
229     /**
230      * Returns
231      * DON-5: "Donation Duration" - creates it if necessary
232      */
233     public NM getDon5_DonationDuration() { 
234 		NM retVal = this.getTypedField(5, 0);
235 		return retVal;
236     }
237 
238 
239 
240     /**
241      * Returns
242      * DON-6: "Donation Duration Units" - creates it if necessary
243      */
244     public CNE getDonationDurationUnits() { 
245 		CNE retVal = this.getTypedField(6, 0);
246 		return retVal;
247     }
248     
249     /**
250      * Returns
251      * DON-6: "Donation Duration Units" - creates it if necessary
252      */
253     public CNE getDon6_DonationDurationUnits() { 
254 		CNE retVal = this.getTypedField(6, 0);
255 		return retVal;
256     }
257 
258 
259     /**
260      * Returns all repetitions of Intended Procedure Type (DON-7).
261      */
262     public CNE[] getIntendedProcedureType() {
263     	CNE[] retVal = this.getTypedField(7, new CNE[0]);
264     	return retVal;
265     }
266 
267 
268     /**
269      * Returns all repetitions of Intended Procedure Type (DON-7).
270      */
271     public CNE[] getDon7_IntendedProcedureType() {
272     	CNE[] retVal = this.getTypedField(7, new CNE[0]);
273     	return retVal;
274     }
275 
276 
277     /**
278      * Returns a count of the current number of repetitions of Intended Procedure Type (DON-7).
279      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
280      * it will return zero.
281      */
282     public int getIntendedProcedureTypeReps() {
283     	return this.getReps(7);
284     }
285 
286 
287     /**
288      * Returns a specific repetition of
289      * DON-7: "Intended Procedure Type" - creates it if necessary
290      *
291      * @param rep The repetition index (0-indexed)
292      */
293     public CNE getIntendedProcedureType(int rep) { 
294 		CNE retVal = this.getTypedField(7, rep);
295 		return retVal;
296     }
297 
298     /**
299      * Returns a specific repetition of
300      * DON-7: "Intended Procedure Type" - creates it if necessary
301      *
302      * @param rep The repetition index (0-indexed)
303      */
304     public CNE getDon7_IntendedProcedureType(int rep) { 
305 		CNE retVal = this.getTypedField(7, rep);
306 		return retVal;
307     }
308 
309     /**
310      * Returns a count of the current number of repetitions of Intended Procedure Type (DON-7).
311      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
312      * it will return zero.
313      */
314     public int getDon7_IntendedProcedureTypeReps() {
315     	return this.getReps(7);
316     }
317 
318 
319     /**
320      * Inserts a repetition of
321      * DON-7: "Intended Procedure Type" at a specific index
322      *
323      * @param rep The repetition index (0-indexed)
324      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
325      */
326     public CNE insertIntendedProcedureType(int rep) throws HL7Exception { 
327         return (CNE) super.insertRepetition(7, rep);
328     }
329 
330 
331     /**
332      * Inserts a repetition of
333      * DON-7: "Intended Procedure Type" at a specific index
334      *
335      * @param rep The repetition index (0-indexed)
336      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
337      */
338     public CNE insertDon7_IntendedProcedureType(int rep) throws HL7Exception { 
339         return (CNE) super.insertRepetition(7, rep);
340     }
341 
342 
343     /**
344      * Removes a repetition of
345      * DON-7: "Intended Procedure Type" at a specific index
346      *
347      * @param rep The repetition index (0-indexed)
348      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
349      */
350     public CNE removeIntendedProcedureType(int rep) throws HL7Exception { 
351         return (CNE) super.removeRepetition(7, rep);
352     }
353 
354 
355     /**
356      * Removes a repetition of
357      * DON-7: "Intended Procedure Type" at a specific index
358      *
359      * @param rep The repetition index (0-indexed)
360      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
361      */
362     public CNE removeDon7_IntendedProcedureType(int rep) throws HL7Exception { 
363         return (CNE) super.removeRepetition(7, rep);
364     }
365 
366 
367 
368     /**
369      * Returns all repetitions of Actual Procedure Type (DON-8).
370      */
371     public CNE[] getActualProcedureType() {
372     	CNE[] retVal = this.getTypedField(8, new CNE[0]);
373     	return retVal;
374     }
375 
376 
377     /**
378      * Returns all repetitions of Actual Procedure Type (DON-8).
379      */
380     public CNE[] getDon8_ActualProcedureType() {
381     	CNE[] retVal = this.getTypedField(8, new CNE[0]);
382     	return retVal;
383     }
384 
385 
386     /**
387      * Returns a count of the current number of repetitions of Actual Procedure Type (DON-8).
388      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
389      * it will return zero.
390      */
391     public int getActualProcedureTypeReps() {
392     	return this.getReps(8);
393     }
394 
395 
396     /**
397      * Returns a specific repetition of
398      * DON-8: "Actual Procedure Type" - creates it if necessary
399      *
400      * @param rep The repetition index (0-indexed)
401      */
402     public CNE getActualProcedureType(int rep) { 
403 		CNE retVal = this.getTypedField(8, rep);
404 		return retVal;
405     }
406 
407     /**
408      * Returns a specific repetition of
409      * DON-8: "Actual Procedure Type" - creates it if necessary
410      *
411      * @param rep The repetition index (0-indexed)
412      */
413     public CNE getDon8_ActualProcedureType(int rep) { 
414 		CNE retVal = this.getTypedField(8, rep);
415 		return retVal;
416     }
417 
418     /**
419      * Returns a count of the current number of repetitions of Actual Procedure Type (DON-8).
420      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
421      * it will return zero.
422      */
423     public int getDon8_ActualProcedureTypeReps() {
424     	return this.getReps(8);
425     }
426 
427 
428     /**
429      * Inserts a repetition of
430      * DON-8: "Actual Procedure Type" at a specific index
431      *
432      * @param rep The repetition index (0-indexed)
433      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
434      */
435     public CNE insertActualProcedureType(int rep) throws HL7Exception { 
436         return (CNE) super.insertRepetition(8, rep);
437     }
438 
439 
440     /**
441      * Inserts a repetition of
442      * DON-8: "Actual Procedure Type" at a specific index
443      *
444      * @param rep The repetition index (0-indexed)
445      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
446      */
447     public CNE insertDon8_ActualProcedureType(int rep) throws HL7Exception { 
448         return (CNE) super.insertRepetition(8, rep);
449     }
450 
451 
452     /**
453      * Removes a repetition of
454      * DON-8: "Actual Procedure Type" at a specific index
455      *
456      * @param rep The repetition index (0-indexed)
457      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
458      */
459     public CNE removeActualProcedureType(int rep) throws HL7Exception { 
460         return (CNE) super.removeRepetition(8, rep);
461     }
462 
463 
464     /**
465      * Removes a repetition of
466      * DON-8: "Actual Procedure Type" at a specific index
467      *
468      * @param rep The repetition index (0-indexed)
469      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
470      */
471     public CNE removeDon8_ActualProcedureType(int rep) throws HL7Exception { 
472         return (CNE) super.removeRepetition(8, rep);
473     }
474 
475 
476 
477 
478     /**
479      * Returns
480      * DON-9: "Donor Eligibility Flag" - creates it if necessary
481      */
482     public ID getDonorEligibilityFlag() { 
483 		ID retVal = this.getTypedField(9, 0);
484 		return retVal;
485     }
486     
487     /**
488      * Returns
489      * DON-9: "Donor Eligibility Flag" - creates it if necessary
490      */
491     public ID getDon9_DonorEligibilityFlag() { 
492 		ID retVal = this.getTypedField(9, 0);
493 		return retVal;
494     }
495 
496 
497     /**
498      * Returns all repetitions of Donor Eligibility Procedure Type (DON-10).
499      */
500     public CNE[] getDonorEligibilityProcedureType() {
501     	CNE[] retVal = this.getTypedField(10, new CNE[0]);
502     	return retVal;
503     }
504 
505 
506     /**
507      * Returns all repetitions of Donor Eligibility Procedure Type (DON-10).
508      */
509     public CNE[] getDon10_DonorEligibilityProcedureType() {
510     	CNE[] retVal = this.getTypedField(10, new CNE[0]);
511     	return retVal;
512     }
513 
514 
515     /**
516      * Returns a count of the current number of repetitions of Donor Eligibility Procedure Type (DON-10).
517      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
518      * it will return zero.
519      */
520     public int getDonorEligibilityProcedureTypeReps() {
521     	return this.getReps(10);
522     }
523 
524 
525     /**
526      * Returns a specific repetition of
527      * DON-10: "Donor Eligibility Procedure Type" - creates it if necessary
528      *
529      * @param rep The repetition index (0-indexed)
530      */
531     public CNE getDonorEligibilityProcedureType(int rep) { 
532 		CNE retVal = this.getTypedField(10, rep);
533 		return retVal;
534     }
535 
536     /**
537      * Returns a specific repetition of
538      * DON-10: "Donor Eligibility Procedure Type" - creates it if necessary
539      *
540      * @param rep The repetition index (0-indexed)
541      */
542     public CNE getDon10_DonorEligibilityProcedureType(int rep) { 
543 		CNE retVal = this.getTypedField(10, rep);
544 		return retVal;
545     }
546 
547     /**
548      * Returns a count of the current number of repetitions of Donor Eligibility Procedure Type (DON-10).
549      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
550      * it will return zero.
551      */
552     public int getDon10_DonorEligibilityProcedureTypeReps() {
553     	return this.getReps(10);
554     }
555 
556 
557     /**
558      * Inserts a repetition of
559      * DON-10: "Donor Eligibility Procedure Type" at a specific index
560      *
561      * @param rep The repetition index (0-indexed)
562      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
563      */
564     public CNE insertDonorEligibilityProcedureType(int rep) throws HL7Exception { 
565         return (CNE) super.insertRepetition(10, rep);
566     }
567 
568 
569     /**
570      * Inserts a repetition of
571      * DON-10: "Donor Eligibility Procedure Type" at a specific index
572      *
573      * @param rep The repetition index (0-indexed)
574      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
575      */
576     public CNE insertDon10_DonorEligibilityProcedureType(int rep) throws HL7Exception { 
577         return (CNE) super.insertRepetition(10, rep);
578     }
579 
580 
581     /**
582      * Removes a repetition of
583      * DON-10: "Donor Eligibility Procedure Type" at a specific index
584      *
585      * @param rep The repetition index (0-indexed)
586      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
587      */
588     public CNE removeDonorEligibilityProcedureType(int rep) throws HL7Exception { 
589         return (CNE) super.removeRepetition(10, rep);
590     }
591 
592 
593     /**
594      * Removes a repetition of
595      * DON-10: "Donor Eligibility Procedure Type" at a specific index
596      *
597      * @param rep The repetition index (0-indexed)
598      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
599      */
600     public CNE removeDon10_DonorEligibilityProcedureType(int rep) throws HL7Exception { 
601         return (CNE) super.removeRepetition(10, rep);
602     }
603 
604 
605 
606 
607     /**
608      * Returns
609      * DON-11: "Donor Eligibility Date" - creates it if necessary
610      */
611     public DTM getDonorEligibilityDate() { 
612 		DTM retVal = this.getTypedField(11, 0);
613 		return retVal;
614     }
615     
616     /**
617      * Returns
618      * DON-11: "Donor Eligibility Date" - creates it if necessary
619      */
620     public DTM getDon11_DonorEligibilityDate() { 
621 		DTM retVal = this.getTypedField(11, 0);
622 		return retVal;
623     }
624 
625 
626 
627     /**
628      * Returns
629      * DON-12: "Process Interruption" - creates it if necessary
630      */
631     public CNE getProcessInterruption() { 
632 		CNE retVal = this.getTypedField(12, 0);
633 		return retVal;
634     }
635     
636     /**
637      * Returns
638      * DON-12: "Process Interruption" - creates it if necessary
639      */
640     public CNE getDon12_ProcessInterruption() { 
641 		CNE retVal = this.getTypedField(12, 0);
642 		return retVal;
643     }
644 
645 
646 
647     /**
648      * Returns
649      * DON-13: "Process Interruption Reason" - creates it if necessary
650      */
651     public CNE getProcessInterruptionReason() { 
652 		CNE retVal = this.getTypedField(13, 0);
653 		return retVal;
654     }
655     
656     /**
657      * Returns
658      * DON-13: "Process Interruption Reason" - creates it if necessary
659      */
660     public CNE getDon13_ProcessInterruptionReason() { 
661 		CNE retVal = this.getTypedField(13, 0);
662 		return retVal;
663     }
664 
665 
666     /**
667      * Returns all repetitions of Phlebotomy Issue (DON-14).
668      */
669     public CNE[] getPhlebotomyIssue() {
670     	CNE[] retVal = this.getTypedField(14, new CNE[0]);
671     	return retVal;
672     }
673 
674 
675     /**
676      * Returns all repetitions of Phlebotomy Issue (DON-14).
677      */
678     public CNE[] getDon14_PhlebotomyIssue() {
679     	CNE[] retVal = this.getTypedField(14, new CNE[0]);
680     	return retVal;
681     }
682 
683 
684     /**
685      * Returns a count of the current number of repetitions of Phlebotomy Issue (DON-14).
686      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
687      * it will return zero.
688      */
689     public int getPhlebotomyIssueReps() {
690     	return this.getReps(14);
691     }
692 
693 
694     /**
695      * Returns a specific repetition of
696      * DON-14: "Phlebotomy Issue" - creates it if necessary
697      *
698      * @param rep The repetition index (0-indexed)
699      */
700     public CNE getPhlebotomyIssue(int rep) { 
701 		CNE retVal = this.getTypedField(14, rep);
702 		return retVal;
703     }
704 
705     /**
706      * Returns a specific repetition of
707      * DON-14: "Phlebotomy Issue" - creates it if necessary
708      *
709      * @param rep The repetition index (0-indexed)
710      */
711     public CNE getDon14_PhlebotomyIssue(int rep) { 
712 		CNE retVal = this.getTypedField(14, rep);
713 		return retVal;
714     }
715 
716     /**
717      * Returns a count of the current number of repetitions of Phlebotomy Issue (DON-14).
718      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
719      * it will return zero.
720      */
721     public int getDon14_PhlebotomyIssueReps() {
722     	return this.getReps(14);
723     }
724 
725 
726     /**
727      * Inserts a repetition of
728      * DON-14: "Phlebotomy Issue" at a specific index
729      *
730      * @param rep The repetition index (0-indexed)
731      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
732      */
733     public CNE insertPhlebotomyIssue(int rep) throws HL7Exception { 
734         return (CNE) super.insertRepetition(14, rep);
735     }
736 
737 
738     /**
739      * Inserts a repetition of
740      * DON-14: "Phlebotomy Issue" at a specific index
741      *
742      * @param rep The repetition index (0-indexed)
743      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
744      */
745     public CNE insertDon14_PhlebotomyIssue(int rep) throws HL7Exception { 
746         return (CNE) super.insertRepetition(14, rep);
747     }
748 
749 
750     /**
751      * Removes a repetition of
752      * DON-14: "Phlebotomy Issue" at a specific index
753      *
754      * @param rep The repetition index (0-indexed)
755      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
756      */
757     public CNE removePhlebotomyIssue(int rep) throws HL7Exception { 
758         return (CNE) super.removeRepetition(14, rep);
759     }
760 
761 
762     /**
763      * Removes a repetition of
764      * DON-14: "Phlebotomy Issue" at a specific index
765      *
766      * @param rep The repetition index (0-indexed)
767      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
768      */
769     public CNE removeDon14_PhlebotomyIssue(int rep) throws HL7Exception { 
770         return (CNE) super.removeRepetition(14, rep);
771     }
772 
773 
774 
775 
776     /**
777      * Returns
778      * DON-15: "Intended Recipient Blood Relative" - creates it if necessary
779      */
780     public ID getIntendedRecipientBloodRelative() { 
781 		ID retVal = this.getTypedField(15, 0);
782 		return retVal;
783     }
784     
785     /**
786      * Returns
787      * DON-15: "Intended Recipient Blood Relative" - creates it if necessary
788      */
789     public ID getDon15_IntendedRecipientBloodRelative() { 
790 		ID retVal = this.getTypedField(15, 0);
791 		return retVal;
792     }
793 
794 
795 
796     /**
797      * Returns
798      * DON-16: "Intended Recipient Name" - creates it if necessary
799      */
800     public XPN getIntendedRecipientName() { 
801 		XPN retVal = this.getTypedField(16, 0);
802 		return retVal;
803     }
804     
805     /**
806      * Returns
807      * DON-16: "Intended Recipient Name" - creates it if necessary
808      */
809     public XPN getDon16_IntendedRecipientName() { 
810 		XPN retVal = this.getTypedField(16, 0);
811 		return retVal;
812     }
813 
814 
815 
816     /**
817      * Returns
818      * DON-17: "Intended Recipient DOB" - creates it if necessary
819      */
820     public DTM getIntendedRecipientDOB() { 
821 		DTM retVal = this.getTypedField(17, 0);
822 		return retVal;
823     }
824     
825     /**
826      * Returns
827      * DON-17: "Intended Recipient DOB" - creates it if necessary
828      */
829     public DTM getDon17_IntendedRecipientDOB() { 
830 		DTM retVal = this.getTypedField(17, 0);
831 		return retVal;
832     }
833 
834 
835 
836     /**
837      * Returns
838      * DON-18: "Intended Recipient Facility" - creates it if necessary
839      */
840     public XON getIntendedRecipientFacility() { 
841 		XON retVal = this.getTypedField(18, 0);
842 		return retVal;
843     }
844     
845     /**
846      * Returns
847      * DON-18: "Intended Recipient Facility" - creates it if necessary
848      */
849     public XON getDon18_IntendedRecipientFacility() { 
850 		XON retVal = this.getTypedField(18, 0);
851 		return retVal;
852     }
853 
854 
855 
856     /**
857      * Returns
858      * DON-19: "Intended Recipient Procedure Date" - creates it if necessary
859      */
860     public DTM getIntendedRecipientProcedureDate() { 
861 		DTM retVal = this.getTypedField(19, 0);
862 		return retVal;
863     }
864     
865     /**
866      * Returns
867      * DON-19: "Intended Recipient Procedure Date" - creates it if necessary
868      */
869     public DTM getDon19_IntendedRecipientProcedureDate() { 
870 		DTM retVal = this.getTypedField(19, 0);
871 		return retVal;
872     }
873 
874 
875 
876     /**
877      * Returns
878      * DON-20: "Intended Recipient Ordering Provider" - creates it if necessary
879      */
880     public XPN getIntendedRecipientOrderingProvider() { 
881 		XPN retVal = this.getTypedField(20, 0);
882 		return retVal;
883     }
884     
885     /**
886      * Returns
887      * DON-20: "Intended Recipient Ordering Provider" - creates it if necessary
888      */
889     public XPN getDon20_IntendedRecipientOrderingProvider() { 
890 		XPN retVal = this.getTypedField(20, 0);
891 		return retVal;
892     }
893 
894 
895 
896     /**
897      * Returns
898      * DON-21: "Phlebotomy Status" - creates it if necessary
899      */
900     public CNE getPhlebotomyStatus() { 
901 		CNE retVal = this.getTypedField(21, 0);
902 		return retVal;
903     }
904     
905     /**
906      * Returns
907      * DON-21: "Phlebotomy Status" - creates it if necessary
908      */
909     public CNE getDon21_PhlebotomyStatus() { 
910 		CNE retVal = this.getTypedField(21, 0);
911 		return retVal;
912     }
913 
914 
915 
916     /**
917      * Returns
918      * DON-22: "Arm Stick" - creates it if necessary
919      */
920     public CNE getArmStick() { 
921 		CNE retVal = this.getTypedField(22, 0);
922 		return retVal;
923     }
924     
925     /**
926      * Returns
927      * DON-22: "Arm Stick" - creates it if necessary
928      */
929     public CNE getDon22_ArmStick() { 
930 		CNE retVal = this.getTypedField(22, 0);
931 		return retVal;
932     }
933 
934 
935 
936     /**
937      * Returns
938      * DON-23: "Bleed Start Phlebotomist" - creates it if necessary
939      */
940     public XPN getBleedStartPhlebotomist() { 
941 		XPN retVal = this.getTypedField(23, 0);
942 		return retVal;
943     }
944     
945     /**
946      * Returns
947      * DON-23: "Bleed Start Phlebotomist" - creates it if necessary
948      */
949     public XPN getDon23_BleedStartPhlebotomist() { 
950 		XPN retVal = this.getTypedField(23, 0);
951 		return retVal;
952     }
953 
954 
955 
956     /**
957      * Returns
958      * DON-24: "Bleed End Phlebotomist" - creates it if necessary
959      */
960     public XPN getBleedEndPhlebotomist() { 
961 		XPN retVal = this.getTypedField(24, 0);
962 		return retVal;
963     }
964     
965     /**
966      * Returns
967      * DON-24: "Bleed End Phlebotomist" - creates it if necessary
968      */
969     public XPN getDon24_BleedEndPhlebotomist() { 
970 		XPN retVal = this.getTypedField(24, 0);
971 		return retVal;
972     }
973 
974 
975 
976     /**
977      * Returns
978      * DON-25: "Aphaeresis Type Machine" - creates it if necessary
979      */
980     public ST getAphaeresisTypeMachine() { 
981 		ST retVal = this.getTypedField(25, 0);
982 		return retVal;
983     }
984     
985     /**
986      * Returns
987      * DON-25: "Aphaeresis Type Machine" - creates it if necessary
988      */
989     public ST getDon25_AphaeresisTypeMachine() { 
990 		ST retVal = this.getTypedField(25, 0);
991 		return retVal;
992     }
993 
994 
995 
996     /**
997      * Returns
998      * DON-26: "Aphaeresis Machine Serial Number" - creates it if necessary
999      */
1000     public ST getAphaeresisMachineSerialNumber() { 
1001 		ST retVal = this.getTypedField(26, 0);
1002 		return retVal;
1003     }
1004     
1005     /**
1006      * Returns
1007      * DON-26: "Aphaeresis Machine Serial Number" - creates it if necessary
1008      */
1009     public ST getDon26_AphaeresisMachineSerialNumber() { 
1010 		ST retVal = this.getTypedField(26, 0);
1011 		return retVal;
1012     }
1013 
1014 
1015 
1016     /**
1017      * Returns
1018      * DON-27: "Donor Reaction" - creates it if necessary
1019      */
1020     public ID getDonorReaction() { 
1021 		ID retVal = this.getTypedField(27, 0);
1022 		return retVal;
1023     }
1024     
1025     /**
1026      * Returns
1027      * DON-27: "Donor Reaction" - creates it if necessary
1028      */
1029     public ID getDon27_DonorReaction() { 
1030 		ID retVal = this.getTypedField(27, 0);
1031 		return retVal;
1032     }
1033 
1034 
1035 
1036     /**
1037      * Returns
1038      * DON-28: "Final Review Staff ID" - creates it if necessary
1039      */
1040     public XPN getFinalReviewStaffID() { 
1041 		XPN retVal = this.getTypedField(28, 0);
1042 		return retVal;
1043     }
1044     
1045     /**
1046      * Returns
1047      * DON-28: "Final Review Staff ID" - creates it if necessary
1048      */
1049     public XPN getDon28_FinalReviewStaffID() { 
1050 		XPN retVal = this.getTypedField(28, 0);
1051 		return retVal;
1052     }
1053 
1054 
1055 
1056     /**
1057      * Returns
1058      * DON-29: "Final Review Date/Time" - creates it if necessary
1059      */
1060     public DTM getFinalReviewDateTime() { 
1061 		DTM retVal = this.getTypedField(29, 0);
1062 		return retVal;
1063     }
1064     
1065     /**
1066      * Returns
1067      * DON-29: "Final Review Date/Time" - creates it if necessary
1068      */
1069     public DTM getDon29_FinalReviewDateTime() { 
1070 		DTM retVal = this.getTypedField(29, 0);
1071 		return retVal;
1072     }
1073 
1074 
1075 
1076     /**
1077      * Returns
1078      * DON-30: "Number of Tubes Collected" - creates it if necessary
1079      */
1080     public NM getNumberOfTubesCollected() { 
1081 		NM retVal = this.getTypedField(30, 0);
1082 		return retVal;
1083     }
1084     
1085     /**
1086      * Returns
1087      * DON-30: "Number of Tubes Collected" - creates it if necessary
1088      */
1089     public NM getDon30_NumberOfTubesCollected() { 
1090 		NM retVal = this.getTypedField(30, 0);
1091 		return retVal;
1092     }
1093 
1094 
1095     /**
1096      * Returns all repetitions of Donation Sample Identifier (DON-31).
1097      */
1098     public EI[] getDonationSampleIdentifier() {
1099     	EI[] retVal = this.getTypedField(31, new EI[0]);
1100     	return retVal;
1101     }
1102 
1103 
1104     /**
1105      * Returns all repetitions of Donation Sample Identifier (DON-31).
1106      */
1107     public EI[] getDon31_DonationSampleIdentifier() {
1108     	EI[] retVal = this.getTypedField(31, new EI[0]);
1109     	return retVal;
1110     }
1111 
1112 
1113     /**
1114      * Returns a count of the current number of repetitions of Donation Sample Identifier (DON-31).
1115      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1116      * it will return zero.
1117      */
1118     public int getDonationSampleIdentifierReps() {
1119     	return this.getReps(31);
1120     }
1121 
1122 
1123     /**
1124      * Returns a specific repetition of
1125      * DON-31: "Donation Sample Identifier" - creates it if necessary
1126      *
1127      * @param rep The repetition index (0-indexed)
1128      */
1129     public EI getDonationSampleIdentifier(int rep) { 
1130 		EI retVal = this.getTypedField(31, rep);
1131 		return retVal;
1132     }
1133 
1134     /**
1135      * Returns a specific repetition of
1136      * DON-31: "Donation Sample Identifier" - creates it if necessary
1137      *
1138      * @param rep The repetition index (0-indexed)
1139      */
1140     public EI getDon31_DonationSampleIdentifier(int rep) { 
1141 		EI retVal = this.getTypedField(31, rep);
1142 		return retVal;
1143     }
1144 
1145     /**
1146      * Returns a count of the current number of repetitions of Donation Sample Identifier (DON-31).
1147      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1148      * it will return zero.
1149      */
1150     public int getDon31_DonationSampleIdentifierReps() {
1151     	return this.getReps(31);
1152     }
1153 
1154 
1155     /**
1156      * Inserts a repetition of
1157      * DON-31: "Donation Sample Identifier" at a specific index
1158      *
1159      * @param rep The repetition index (0-indexed)
1160      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1161      */
1162     public EI insertDonationSampleIdentifier(int rep) throws HL7Exception { 
1163         return (EI) super.insertRepetition(31, rep);
1164     }
1165 
1166 
1167     /**
1168      * Inserts a repetition of
1169      * DON-31: "Donation Sample Identifier" at a specific index
1170      *
1171      * @param rep The repetition index (0-indexed)
1172      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1173      */
1174     public EI insertDon31_DonationSampleIdentifier(int rep) throws HL7Exception { 
1175         return (EI) super.insertRepetition(31, rep);
1176     }
1177 
1178 
1179     /**
1180      * Removes a repetition of
1181      * DON-31: "Donation Sample Identifier" at a specific index
1182      *
1183      * @param rep The repetition index (0-indexed)
1184      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1185      */
1186     public EI removeDonationSampleIdentifier(int rep) throws HL7Exception { 
1187         return (EI) super.removeRepetition(31, rep);
1188     }
1189 
1190 
1191     /**
1192      * Removes a repetition of
1193      * DON-31: "Donation Sample Identifier" at a specific index
1194      *
1195      * @param rep The repetition index (0-indexed)
1196      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1197      */
1198     public EI removeDon31_DonationSampleIdentifier(int rep) throws HL7Exception { 
1199         return (EI) super.removeRepetition(31, rep);
1200     }
1201 
1202 
1203 
1204 
1205     /**
1206      * Returns
1207      * DON-32: "Donation Accept Staff" - creates it if necessary
1208      */
1209     public XCN getDonationAcceptStaff() { 
1210 		XCN retVal = this.getTypedField(32, 0);
1211 		return retVal;
1212     }
1213     
1214     /**
1215      * Returns
1216      * DON-32: "Donation Accept Staff" - creates it if necessary
1217      */
1218     public XCN getDon32_DonationAcceptStaff() { 
1219 		XCN retVal = this.getTypedField(32, 0);
1220 		return retVal;
1221     }
1222 
1223 
1224     /**
1225      * Returns all repetitions of Donation Material Review Staff (DON-33).
1226      */
1227     public XCN[] getDonationMaterialReviewStaff() {
1228     	XCN[] retVal = this.getTypedField(33, new XCN[0]);
1229     	return retVal;
1230     }
1231 
1232 
1233     /**
1234      * Returns all repetitions of Donation Material Review Staff (DON-33).
1235      */
1236     public XCN[] getDon33_DonationMaterialReviewStaff() {
1237     	XCN[] retVal = this.getTypedField(33, new XCN[0]);
1238     	return retVal;
1239     }
1240 
1241 
1242     /**
1243      * Returns a count of the current number of repetitions of Donation Material Review Staff (DON-33).
1244      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1245      * it will return zero.
1246      */
1247     public int getDonationMaterialReviewStaffReps() {
1248     	return this.getReps(33);
1249     }
1250 
1251 
1252     /**
1253      * Returns a specific repetition of
1254      * DON-33: "Donation Material Review Staff" - creates it if necessary
1255      *
1256      * @param rep The repetition index (0-indexed)
1257      */
1258     public XCN getDonationMaterialReviewStaff(int rep) { 
1259 		XCN retVal = this.getTypedField(33, rep);
1260 		return retVal;
1261     }
1262 
1263     /**
1264      * Returns a specific repetition of
1265      * DON-33: "Donation Material Review Staff" - creates it if necessary
1266      *
1267      * @param rep The repetition index (0-indexed)
1268      */
1269     public XCN getDon33_DonationMaterialReviewStaff(int rep) { 
1270 		XCN retVal = this.getTypedField(33, rep);
1271 		return retVal;
1272     }
1273 
1274     /**
1275      * Returns a count of the current number of repetitions of Donation Material Review Staff (DON-33).
1276      * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1277      * it will return zero.
1278      */
1279     public int getDon33_DonationMaterialReviewStaffReps() {
1280     	return this.getReps(33);
1281     }
1282 
1283 
1284     /**
1285      * Inserts a repetition of
1286      * DON-33: "Donation Material Review Staff" at a specific index
1287      *
1288      * @param rep The repetition index (0-indexed)
1289      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1290      */
1291     public XCN insertDonationMaterialReviewStaff(int rep) throws HL7Exception { 
1292         return (XCN) super.insertRepetition(33, rep);
1293     }
1294 
1295 
1296     /**
1297      * Inserts a repetition of
1298      * DON-33: "Donation Material Review Staff" at a specific index
1299      *
1300      * @param rep The repetition index (0-indexed)
1301      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1302      */
1303     public XCN insertDon33_DonationMaterialReviewStaff(int rep) throws HL7Exception { 
1304         return (XCN) super.insertRepetition(33, rep);
1305     }
1306 
1307 
1308     /**
1309      * Removes a repetition of
1310      * DON-33: "Donation Material Review Staff" at a specific index
1311      *
1312      * @param rep The repetition index (0-indexed)
1313      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1314      */
1315     public XCN removeDonationMaterialReviewStaff(int rep) throws HL7Exception { 
1316         return (XCN) super.removeRepetition(33, rep);
1317     }
1318 
1319 
1320     /**
1321      * Removes a repetition of
1322      * DON-33: "Donation Material Review Staff" at a specific index
1323      *
1324      * @param rep The repetition index (0-indexed)
1325      * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1326      */
1327     public XCN removeDon33_DonationMaterialReviewStaff(int rep) throws HL7Exception { 
1328         return (XCN) super.removeRepetition(33, rep);
1329     }
1330 
1331 
1332 
1333 
1334 
1335 
1336     /** {@inheritDoc} */   
1337     protected Type createNewTypeWithoutReflection(int field) {
1338        switch (field) {
1339           case 0: return new EI(getMessage());
1340           case 1: return new CNE(getMessage());
1341           case 2: return new DTM(getMessage());
1342           case 3: return new DTM(getMessage());
1343           case 4: return new NM(getMessage());
1344           case 5: return new CNE(getMessage());
1345           case 6: return new CNE(getMessage());
1346           case 7: return new CNE(getMessage());
1347           case 8: return new ID(getMessage(), new Integer( 136 ));
1348           case 9: return new CNE(getMessage());
1349           case 10: return new DTM(getMessage());
1350           case 11: return new CNE(getMessage());
1351           case 12: return new CNE(getMessage());
1352           case 13: return new CNE(getMessage());
1353           case 14: return new ID(getMessage(), new Integer( 136 ));
1354           case 15: return new XPN(getMessage());
1355           case 16: return new DTM(getMessage());
1356           case 17: return new XON(getMessage());
1357           case 18: return new DTM(getMessage());
1358           case 19: return new XPN(getMessage());
1359           case 20: return new CNE(getMessage());
1360           case 21: return new CNE(getMessage());
1361           case 22: return new XPN(getMessage());
1362           case 23: return new XPN(getMessage());
1363           case 24: return new ST(getMessage());
1364           case 25: return new ST(getMessage());
1365           case 26: return new ID(getMessage(), new Integer( 136 ));
1366           case 27: return new XPN(getMessage());
1367           case 28: return new DTM(getMessage());
1368           case 29: return new NM(getMessage());
1369           case 30: return new EI(getMessage());
1370           case 31: return new XCN(getMessage());
1371           case 32: return new XCN(getMessage());
1372           default: return null;
1373        }
1374    }
1375 
1376 
1377 }
1378