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.v24.message;
35
36 import ca.uhn.hl7v2.model.v24.group.*;
37 import ca.uhn.hl7v2.model.v24.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 ADT_A54 message structure (see chapter 3). This structure contains the
47 * following elements: </p>
48 * <ul>
49 * <li>1: MSH (Message Header) <b> </b> </li>
50 * <li>2: EVN (Event Type) <b> </b> </li>
51 * <li>3: PID (Patient identification) <b> </b> </li>
52 * <li>4: PD1 (patient additional demographic) <b>optional </b> </li>
53 * <li>5: ROL (Role) <b>optional repeating</b> </li>
54 * <li>6: PV1 (Patient visit) <b> </b> </li>
55 * <li>7: PV2 (Patient visit - additional information) <b>optional </b> </li>
56 * <li>8: ROL (Role) <b>optional repeating</b> </li>
57 * </ul>
58 */
59 //@SuppressWarnings("unused")
60 public class ADT_A54 extends AbstractMessage {
61
62 /**
63 * Creates a new ADT_A54 message with DefaultModelClassFactory.
64 */
65 public ADT_A54() {
66 this(new DefaultModelClassFactory());
67 }
68
69 /**
70 * Creates a new ADT_A54 message with custom ModelClassFactory.
71 */
72 public ADT_A54(ModelClassFactory factory) {
73 super(factory);
74 init(factory);
75 }
76
77 private void init(ModelClassFactory factory) {
78 try {
79 this.add(MSH.class, true, false);
80 this.add(EVN.class, true, false);
81 this.add(PID.class, true, false);
82 this.add(PD1.class, false, false);
83 this.add(ROL.class, false, true);
84 this.add(PV1.class, true, false);
85 this.add(PV2.class, false, false);
86 this.add(ROL.class, false, true);
87 } catch(HL7Exception e) {
88 log.error("Unexpected error creating ADT_A54 - this is probably a bug in the source code generator.", e);
89 }
90 }
91
92
93 /**
94 * Returns "2.4"
95 */
96 public String getVersion() {
97 return "2.4";
98 }
99
100
101
102
103 /**
104 * <p>
105 * Returns
106 * MSH (Message Header) - creates it if necessary
107 * </p>
108 *
109 *
110 */
111 public MSH getMSH() {
112 return getTyped("MSH", MSH.class);
113 }
114
115
116
117
118
119 /**
120 * <p>
121 * Returns
122 * EVN (Event Type) - creates it if necessary
123 * </p>
124 *
125 *
126 */
127 public EVN getEVN() {
128 return getTyped("EVN", EVN.class);
129 }
130
131
132
133
134
135 /**
136 * <p>
137 * Returns
138 * PID (Patient identification) - creates it if necessary
139 * </p>
140 *
141 *
142 */
143 public PID getPID() {
144 return getTyped("PID", PID.class);
145 }
146
147
148
149
150
151 /**
152 * <p>
153 * Returns
154 * PD1 (patient additional demographic) - creates it if necessary
155 * </p>
156 *
157 *
158 */
159 public PD1 getPD1() {
160 return getTyped("PD1", PD1.class);
161 }
162
163
164
165
166
167 /**
168 * <p>
169 * Returns
170 * the first repetition of
171 * ROL (Role) - creates it if necessary
172 * </p>
173 *
174 *
175 */
176 public ROL getROL() {
177 return getTyped("ROL", ROL.class);
178 }
179
180
181 /**
182 * <p>
183 * Returns a specific repetition of
184 * ROL (Role) - creates it if necessary
185 * </p>
186 *
187 *
188 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
189 * @throws HL7Exception if the repetition requested is more than one
190 * greater than the number of existing repetitions.
191 */
192 public ROL getROL(int rep) {
193 return getTyped("ROL", rep, ROL.class);
194 }
195
196 /**
197 * <p>
198 * Returns the number of existing repetitions of ROL
199 * </p>
200 *
201 */
202 public int getROLReps() {
203 return getReps("ROL");
204 }
205
206 /**
207 * <p>
208 * Returns a non-modifiable List containing all current existing repetitions of ROL.
209 * <p>
210 * <p>
211 * Note that unlike {@link #getROL()}, this method will not create any reps
212 * if none are already present, so an empty list may be returned.
213 * </p>
214 *
215 */
216 public java.util.List<ROL> getROLAll() throws HL7Exception {
217 return getAllAsList("ROL", ROL.class);
218 }
219
220 /**
221 * <p>
222 * Inserts a specific repetition of ROL (Role)
223 * </p>
224 *
225 *
226 * @see AbstractGroup#insertRepetition(Structure, int)
227 */
228 public void insertROL(ROL structure, int rep) throws HL7Exception {
229 super.insertRepetition( "ROL", structure, rep);
230 }
231
232
233 /**
234 * <p>
235 * Inserts a specific repetition of ROL (Role)
236 * </p>
237 *
238 *
239 * @see AbstractGroup#insertRepetition(Structure, int)
240 */
241 public ROL insertROL(int rep) throws HL7Exception {
242 return (ROL)super.insertRepetition("ROL", rep);
243 }
244
245
246 /**
247 * <p>
248 * Removes a specific repetition of ROL (Role)
249 * </p>
250 *
251 *
252 * @see AbstractGroup#removeRepetition(String, int)
253 */
254 public ROL removeROL(int rep) throws HL7Exception {
255 return (ROL)super.removeRepetition("ROL", rep);
256 }
257
258
259
260
261 /**
262 * <p>
263 * Returns
264 * PV1 (Patient visit) - creates it if necessary
265 * </p>
266 *
267 *
268 */
269 public PV1 getPV1() {
270 return getTyped("PV1", PV1.class);
271 }
272
273
274
275
276
277 /**
278 * <p>
279 * Returns
280 * PV2 (Patient visit - additional information) - creates it if necessary
281 * </p>
282 *
283 *
284 */
285 public PV2 getPV2() {
286 return getTyped("PV2", PV2.class);
287 }
288
289
290
291
292
293 /**
294 * <p>
295 * Returns
296 * the first repetition of
297 * ROL2 (Role) - creates it if necessary
298 * </p>
299 *
300 *
301 */
302 public ROL getROL2() {
303 return getTyped("ROL2", ROL.class);
304 }
305
306
307 /**
308 * <p>
309 * Returns a specific repetition of
310 * ROL2 (Role) - creates it if necessary
311 * </p>
312 *
313 *
314 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0)
315 * @throws HL7Exception if the repetition requested is more than one
316 * greater than the number of existing repetitions.
317 */
318 public ROL getROL2(int rep) {
319 return getTyped("ROL2", rep, ROL.class);
320 }
321
322 /**
323 * <p>
324 * Returns the number of existing repetitions of ROL2
325 * </p>
326 *
327 */
328 public int getROL2Reps() {
329 return getReps("ROL2");
330 }
331
332 /**
333 * <p>
334 * Returns a non-modifiable List containing all current existing repetitions of ROL2.
335 * <p>
336 * <p>
337 * Note that unlike {@link #getROL2()}, this method will not create any reps
338 * if none are already present, so an empty list may be returned.
339 * </p>
340 *
341 */
342 public java.util.List<ROL> getROL2All() throws HL7Exception {
343 return getAllAsList("ROL2", ROL.class);
344 }
345
346 /**
347 * <p>
348 * Inserts a specific repetition of ROL2 (Role)
349 * </p>
350 *
351 *
352 * @see AbstractGroup#insertRepetition(Structure, int)
353 */
354 public void insertROL2(ROL structure, int rep) throws HL7Exception {
355 super.insertRepetition( "ROL2", structure, rep);
356 }
357
358
359 /**
360 * <p>
361 * Inserts a specific repetition of ROL2 (Role)
362 * </p>
363 *
364 *
365 * @see AbstractGroup#insertRepetition(Structure, int)
366 */
367 public ROL insertROL2(int rep) throws HL7Exception {
368 return (ROL)super.insertRepetition("ROL2", rep);
369 }
370
371
372 /**
373 * <p>
374 * Removes a specific repetition of ROL2 (Role)
375 * </p>
376 *
377 *
378 * @see AbstractGroup#removeRepetition(String, int)
379 */
380 public ROL removeROL2(int rep) throws HL7Exception {
381 return (ROL)super.removeRepetition("ROL2", rep);
382 }
383
384
385
386 }
387