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 VXU_V04 message structure (see chapter ?). This structure contains the 47 * following elements: </p> 48 * <ul> 49 * <li>1: MSH (Message Header) <b> </b> </li> 50 * <li>2: PID (Patient identification) <b> </b> </li> 51 * <li>3: PD1 (patient additional demographic) <b>optional </b> </li> 52 * <li>4: NK1 (Next of kin / associated parties) <b>optional repeating</b> </li> 53 * <li>5: VXU_V04_PATIENT (a Group object) <b>optional </b> </li> 54 * <li>6: GT1 (Guarantor) <b>optional repeating</b> </li> 55 * <li>7: VXU_V04_INSURANCE (a Group object) <b>optional repeating</b> </li> 56 * <li>8: VXU_V04_ORDER (a Group object) <b>optional repeating</b> </li> 57 * </ul> 58 */ 59 //@SuppressWarnings("unused") 60 public class VXU_V04 extends AbstractMessage { 61 62 /** 63 * Creates a new VXU_V04 message with DefaultModelClassFactory. 64 */ 65 public VXU_V04() { 66 this(new DefaultModelClassFactory()); 67 } 68 69 /** 70 * Creates a new VXU_V04 message with custom ModelClassFactory. 71 */ 72 public VXU_V04(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(PID.class, true, false); 81 this.add(PD1.class, false, false); 82 this.add(NK1.class, false, true); 83 this.add(VXU_V04_PATIENT.class, false, false); 84 this.add(GT1.class, false, true); 85 this.add(VXU_V04_INSURANCE.class, false, true); 86 this.add(VXU_V04_ORDER.class, false, true); 87 } catch(HL7Exception e) { 88 log.error("Unexpected error creating VXU_V04 - 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 * PID (Patient identification) - creates it if necessary 123 * </p> 124 * 125 * 126 */ 127 public PID getPID() { 128 return getTyped("PID", PID.class); 129 } 130 131 132 133 134 135 /** 136 * <p> 137 * Returns 138 * PD1 (patient additional demographic) - creates it if necessary 139 * </p> 140 * 141 * 142 */ 143 public PD1 getPD1() { 144 return getTyped("PD1", PD1.class); 145 } 146 147 148 149 150 151 /** 152 * <p> 153 * Returns 154 * the first repetition of 155 * NK1 (Next of kin / associated parties) - creates it if necessary 156 * </p> 157 * 158 * 159 */ 160 public NK1 getNK1() { 161 return getTyped("NK1", NK1.class); 162 } 163 164 165 /** 166 * <p> 167 * Returns a specific repetition of 168 * NK1 (Next of kin / associated parties) - creates it if necessary 169 * </p> 170 * 171 * 172 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0) 173 * @throws HL7Exception if the repetition requested is more than one 174 * greater than the number of existing repetitions. 175 */ 176 public NK1 getNK1(int rep) { 177 return getTyped("NK1", rep, NK1.class); 178 } 179 180 /** 181 * <p> 182 * Returns the number of existing repetitions of NK1 183 * </p> 184 * 185 */ 186 public int getNK1Reps() { 187 return getReps("NK1"); 188 } 189 190 /** 191 * <p> 192 * Returns a non-modifiable List containing all current existing repetitions of NK1. 193 * <p> 194 * <p> 195 * Note that unlike {@link #getNK1()}, this method will not create any reps 196 * if none are already present, so an empty list may be returned. 197 * </p> 198 * 199 */ 200 public java.util.List<NK1> getNK1All() throws HL7Exception { 201 return getAllAsList("NK1", NK1.class); 202 } 203 204 /** 205 * <p> 206 * Inserts a specific repetition of NK1 (Next of kin / associated parties) 207 * </p> 208 * 209 * 210 * @see AbstractGroup#insertRepetition(Structure, int) 211 */ 212 public void insertNK1(NK1 structure, int rep) throws HL7Exception { 213 super.insertRepetition( "NK1", structure, rep); 214 } 215 216 217 /** 218 * <p> 219 * Inserts a specific repetition of NK1 (Next of kin / associated parties) 220 * </p> 221 * 222 * 223 * @see AbstractGroup#insertRepetition(Structure, int) 224 */ 225 public NK1 insertNK1(int rep) throws HL7Exception { 226 return (NK1)super.insertRepetition("NK1", rep); 227 } 228 229 230 /** 231 * <p> 232 * Removes a specific repetition of NK1 (Next of kin / associated parties) 233 * </p> 234 * 235 * 236 * @see AbstractGroup#removeRepetition(String, int) 237 */ 238 public NK1 removeNK1(int rep) throws HL7Exception { 239 return (NK1)super.removeRepetition("NK1", rep); 240 } 241 242 243 244 245 /** 246 * <p> 247 * Returns 248 * PATIENT (a Group object) - creates it if necessary 249 * </p> 250 * 251 * 252 */ 253 public VXU_V04_PATIENT getPATIENT() { 254 return getTyped("PATIENT", VXU_V04_PATIENT.class); 255 } 256 257 258 259 260 261 /** 262 * <p> 263 * Returns 264 * the first repetition of 265 * GT1 (Guarantor) - creates it if necessary 266 * </p> 267 * 268 * 269 */ 270 public GT1 getGT1() { 271 return getTyped("GT1", GT1.class); 272 } 273 274 275 /** 276 * <p> 277 * Returns a specific repetition of 278 * GT1 (Guarantor) - creates it if necessary 279 * </p> 280 * 281 * 282 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0) 283 * @throws HL7Exception if the repetition requested is more than one 284 * greater than the number of existing repetitions. 285 */ 286 public GT1 getGT1(int rep) { 287 return getTyped("GT1", rep, GT1.class); 288 } 289 290 /** 291 * <p> 292 * Returns the number of existing repetitions of GT1 293 * </p> 294 * 295 */ 296 public int getGT1Reps() { 297 return getReps("GT1"); 298 } 299 300 /** 301 * <p> 302 * Returns a non-modifiable List containing all current existing repetitions of GT1. 303 * <p> 304 * <p> 305 * Note that unlike {@link #getGT1()}, this method will not create any reps 306 * if none are already present, so an empty list may be returned. 307 * </p> 308 * 309 */ 310 public java.util.List<GT1> getGT1All() throws HL7Exception { 311 return getAllAsList("GT1", GT1.class); 312 } 313 314 /** 315 * <p> 316 * Inserts a specific repetition of GT1 (Guarantor) 317 * </p> 318 * 319 * 320 * @see AbstractGroup#insertRepetition(Structure, int) 321 */ 322 public void insertGT1(GT1 structure, int rep) throws HL7Exception { 323 super.insertRepetition( "GT1", structure, rep); 324 } 325 326 327 /** 328 * <p> 329 * Inserts a specific repetition of GT1 (Guarantor) 330 * </p> 331 * 332 * 333 * @see AbstractGroup#insertRepetition(Structure, int) 334 */ 335 public GT1 insertGT1(int rep) throws HL7Exception { 336 return (GT1)super.insertRepetition("GT1", rep); 337 } 338 339 340 /** 341 * <p> 342 * Removes a specific repetition of GT1 (Guarantor) 343 * </p> 344 * 345 * 346 * @see AbstractGroup#removeRepetition(String, int) 347 */ 348 public GT1 removeGT1(int rep) throws HL7Exception { 349 return (GT1)super.removeRepetition("GT1", rep); 350 } 351 352 353 354 355 /** 356 * <p> 357 * Returns 358 * the first repetition of 359 * INSURANCE (a Group object) - creates it if necessary 360 * </p> 361 * 362 * 363 */ 364 public VXU_V04_INSURANCE getINSURANCE() { 365 return getTyped("INSURANCE", VXU_V04_INSURANCE.class); 366 } 367 368 369 /** 370 * <p> 371 * Returns a specific repetition of 372 * INSURANCE (a Group object) - creates it if necessary 373 * </p> 374 * 375 * 376 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0) 377 * @throws HL7Exception if the repetition requested is more than one 378 * greater than the number of existing repetitions. 379 */ 380 public VXU_V04_INSURANCE getINSURANCE(int rep) { 381 return getTyped("INSURANCE", rep, VXU_V04_INSURANCE.class); 382 } 383 384 /** 385 * <p> 386 * Returns the number of existing repetitions of INSURANCE 387 * </p> 388 * 389 */ 390 public int getINSURANCEReps() { 391 return getReps("INSURANCE"); 392 } 393 394 /** 395 * <p> 396 * Returns a non-modifiable List containing all current existing repetitions of INSURANCE. 397 * <p> 398 * <p> 399 * Note that unlike {@link #getINSURANCE()}, this method will not create any reps 400 * if none are already present, so an empty list may be returned. 401 * </p> 402 * 403 */ 404 public java.util.List<VXU_V04_INSURANCE> getINSURANCEAll() throws HL7Exception { 405 return getAllAsList("INSURANCE", VXU_V04_INSURANCE.class); 406 } 407 408 /** 409 * <p> 410 * Inserts a specific repetition of INSURANCE (a Group object) 411 * </p> 412 * 413 * 414 * @see AbstractGroup#insertRepetition(Structure, int) 415 */ 416 public void insertINSURANCE(VXU_V04_INSURANCE structure, int rep) throws HL7Exception { 417 super.insertRepetition( "INSURANCE", structure, rep); 418 } 419 420 421 /** 422 * <p> 423 * Inserts a specific repetition of INSURANCE (a Group object) 424 * </p> 425 * 426 * 427 * @see AbstractGroup#insertRepetition(Structure, int) 428 */ 429 public VXU_V04_INSURANCE insertINSURANCE(int rep) throws HL7Exception { 430 return (VXU_V04_INSURANCE)super.insertRepetition("INSURANCE", rep); 431 } 432 433 434 /** 435 * <p> 436 * Removes a specific repetition of INSURANCE (a Group object) 437 * </p> 438 * 439 * 440 * @see AbstractGroup#removeRepetition(String, int) 441 */ 442 public VXU_V04_INSURANCE removeINSURANCE(int rep) throws HL7Exception { 443 return (VXU_V04_INSURANCE)super.removeRepetition("INSURANCE", rep); 444 } 445 446 447 448 449 /** 450 * <p> 451 * Returns 452 * the first repetition of 453 * ORDER (a Group object) - creates it if necessary 454 * </p> 455 * 456 * 457 */ 458 public VXU_V04_ORDER getORDER() { 459 return getTyped("ORDER", VXU_V04_ORDER.class); 460 } 461 462 463 /** 464 * <p> 465 * Returns a specific repetition of 466 * ORDER (a Group object) - creates it if necessary 467 * </p> 468 * 469 * 470 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0) 471 * @throws HL7Exception if the repetition requested is more than one 472 * greater than the number of existing repetitions. 473 */ 474 public VXU_V04_ORDER getORDER(int rep) { 475 return getTyped("ORDER", rep, VXU_V04_ORDER.class); 476 } 477 478 /** 479 * <p> 480 * Returns the number of existing repetitions of ORDER 481 * </p> 482 * 483 */ 484 public int getORDERReps() { 485 return getReps("ORDER"); 486 } 487 488 /** 489 * <p> 490 * Returns a non-modifiable List containing all current existing repetitions of ORDER. 491 * <p> 492 * <p> 493 * Note that unlike {@link #getORDER()}, this method will not create any reps 494 * if none are already present, so an empty list may be returned. 495 * </p> 496 * 497 */ 498 public java.util.List<VXU_V04_ORDER> getORDERAll() throws HL7Exception { 499 return getAllAsList("ORDER", VXU_V04_ORDER.class); 500 } 501 502 /** 503 * <p> 504 * Inserts a specific repetition of ORDER (a Group object) 505 * </p> 506 * 507 * 508 * @see AbstractGroup#insertRepetition(Structure, int) 509 */ 510 public void insertORDER(VXU_V04_ORDER structure, int rep) throws HL7Exception { 511 super.insertRepetition( "ORDER", structure, rep); 512 } 513 514 515 /** 516 * <p> 517 * Inserts a specific repetition of ORDER (a Group object) 518 * </p> 519 * 520 * 521 * @see AbstractGroup#insertRepetition(Structure, int) 522 */ 523 public VXU_V04_ORDER insertORDER(int rep) throws HL7Exception { 524 return (VXU_V04_ORDER)super.insertRepetition("ORDER", rep); 525 } 526 527 528 /** 529 * <p> 530 * Removes a specific repetition of ORDER (a Group object) 531 * </p> 532 * 533 * 534 * @see AbstractGroup#removeRepetition(String, int) 535 */ 536 public VXU_V04_ORDER removeORDER(int rep) throws HL7Exception { 537 return (VXU_V04_ORDER)super.removeRepetition("ORDER", rep); 538 } 539 540 541 542 } 543