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