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.group;
35
36 import ca.uhn.hl7v2.model.v281.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.1"
86 */
87 public String getVersion() {
88 return "2.8.1";
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