001/* 002 * This class is an auto-generated source file for a HAPI 003 * HL7 v2.x standard structure class. 004 * 005 * For more information, visit: http://hl7api.sourceforge.net/ 006 * 007 * The contents of this file are subject to the Mozilla Public License Version 1.1 008 * (the "License"); you may not use this file except in compliance with the License. 009 * You may obtain a copy of the License at http://www.mozilla.org/MPL/ 010 * Software distributed under the License is distributed on an "AS IS" basis, 011 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the 012 * specific language governing rights and limitations under the License. 013 * 014 * The Original Code is "[file_name]". Description: 015 * "[one_line_description]" 016 * 017 * The Initial Developer of the Original Code is University Health Network. Copyright (C) 018 * 2012. All Rights Reserved. 019 * 020 * Contributor(s): ______________________________________. 021 * 022 * Alternatively, the contents of this file may be used under the terms of the 023 * GNU General Public License (the "GPL"), in which case the provisions of the GPL are 024 * applicable instead of those above. If you wish to allow use of your version of this 025 * file only under the terms of the GPL and not to allow others to use your version 026 * of this file under the MPL, indicate your decision by deleting the provisions above 027 * and replace them with the notice and other provisions required by the GPL License. 028 * If you do not delete the provisions above, a recipient may use your version of 029 * this file under either the MPL or the GPL. 030 * 031 */ 032 033 034package ca.uhn.hl7v2.model.v26.message; 035 036import ca.uhn.hl7v2.model.v26.group.*; 037import ca.uhn.hl7v2.model.v26.segment.*; 038 039import ca.uhn.hl7v2.HL7Exception; 040import ca.uhn.hl7v2.parser.ModelClassFactory; 041import ca.uhn.hl7v2.parser.DefaultModelClassFactory; 042import ca.uhn.hl7v2.model.*; 043 044 045/** 046 * <p>Represents a EHC_E20 message structure (see chapter 16.3.10). This structure contains the 047 * following elements: </p> 048 * <ul> 049 * <li>1: MSH (Message Header) <b> </b> </li> 050 * <li>2: SFT (Software Segment) <b>optional repeating</b> </li> 051 * <li>3: UAC (User Authentication Credential Segment) <b>optional repeating</b> </li> 052 * <li>4: IVC (Invoice Segment) <b> </b> </li> 053 * <li>5: CTD (Contact Data) <b> repeating</b> </li> 054 * <li>6: LOC (Location Identification) <b>optional repeating</b> </li> 055 * <li>7: ROL (Role) <b>optional repeating</b> </li> 056 * <li>8: EHC_E20_PAT_INFO (a Group object) <b> repeating</b> </li> 057 * <li>9: EHC_E20_PSL_ITEM_INFO (a Group object) <b> repeating</b> </li> 058 * </ul> 059 */ 060//@SuppressWarnings("unused") 061public class EHC_E20 extends AbstractMessage { 062 063 /** 064 * Creates a new EHC_E20 message with DefaultModelClassFactory. 065 */ 066 public EHC_E20() { 067 this(new DefaultModelClassFactory()); 068 } 069 070 /** 071 * Creates a new EHC_E20 message with custom ModelClassFactory. 072 */ 073 public EHC_E20(ModelClassFactory factory) { 074 super(factory); 075 init(factory); 076 } 077 078 private void init(ModelClassFactory factory) { 079 try { 080 this.add(MSH.class, true, false); 081 this.add(SFT.class, false, true); 082 this.add(UAC.class, false, true); 083 this.add(IVC.class, true, false); 084 this.add(CTD.class, true, true); 085 this.add(LOC.class, false, true); 086 this.add(ROL.class, false, true); 087 this.add(EHC_E20_PAT_INFO.class, true, true); 088 this.add(EHC_E20_PSL_ITEM_INFO.class, true, true); 089 } catch(HL7Exception e) { 090 log.error("Unexpected error creating EHC_E20 - this is probably a bug in the source code generator.", e); 091 } 092 } 093 094 095 /** 096 * Returns "2.6" 097 */ 098 public String getVersion() { 099 return "2.6"; 100 } 101 102 103 104 105 /** 106 * <p> 107 * Returns 108 * MSH (Message Header) - creates it if necessary 109 * </p> 110 * 111 * 112 */ 113 public MSH getMSH() { 114 return getTyped("MSH", MSH.class); 115 } 116 117 118 119 120 121 /** 122 * <p> 123 * Returns 124 * the first repetition of 125 * SFT (Software Segment) - creates it if necessary 126 * </p> 127 * 128 * 129 */ 130 public SFT getSFT() { 131 return getTyped("SFT", SFT.class); 132 } 133 134 135 /** 136 * <p> 137 * Returns a specific repetition of 138 * SFT (Software Segment) - creates it if necessary 139 * </p> 140 * 141 * 142 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0) 143 * @throws HL7Exception if the repetition requested is more than one 144 * greater than the number of existing repetitions. 145 */ 146 public SFT getSFT(int rep) { 147 return getTyped("SFT", rep, SFT.class); 148 } 149 150 /** 151 * <p> 152 * Returns the number of existing repetitions of SFT 153 * </p> 154 * 155 */ 156 public int getSFTReps() { 157 return getReps("SFT"); 158 } 159 160 /** 161 * <p> 162 * Returns a non-modifiable List containing all current existing repetitions of SFT. 163 * <p> 164 * <p> 165 * Note that unlike {@link #getSFT()}, this method will not create any reps 166 * if none are already present, so an empty list may be returned. 167 * </p> 168 * 169 */ 170 public java.util.List<SFT> getSFTAll() throws HL7Exception { 171 return getAllAsList("SFT", SFT.class); 172 } 173 174 /** 175 * <p> 176 * Inserts a specific repetition of SFT (Software Segment) 177 * </p> 178 * 179 * 180 * @see AbstractGroup#insertRepetition(Structure, int) 181 */ 182 public void insertSFT(SFT structure, int rep) throws HL7Exception { 183 super.insertRepetition( "SFT", structure, rep); 184 } 185 186 187 /** 188 * <p> 189 * Inserts a specific repetition of SFT (Software Segment) 190 * </p> 191 * 192 * 193 * @see AbstractGroup#insertRepetition(Structure, int) 194 */ 195 public SFT insertSFT(int rep) throws HL7Exception { 196 return (SFT)super.insertRepetition("SFT", rep); 197 } 198 199 200 /** 201 * <p> 202 * Removes a specific repetition of SFT (Software Segment) 203 * </p> 204 * 205 * 206 * @see AbstractGroup#removeRepetition(String, int) 207 */ 208 public SFT removeSFT(int rep) throws HL7Exception { 209 return (SFT)super.removeRepetition("SFT", rep); 210 } 211 212 213 214 215 /** 216 * <p> 217 * Returns 218 * the first repetition of 219 * UAC (User Authentication Credential Segment) - creates it if necessary 220 * </p> 221 * 222 * 223 */ 224 public UAC getUAC() { 225 return getTyped("UAC", UAC.class); 226 } 227 228 229 /** 230 * <p> 231 * Returns a specific repetition of 232 * UAC (User Authentication Credential Segment) - creates it if necessary 233 * </p> 234 * 235 * 236 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0) 237 * @throws HL7Exception if the repetition requested is more than one 238 * greater than the number of existing repetitions. 239 */ 240 public UAC getUAC(int rep) { 241 return getTyped("UAC", rep, UAC.class); 242 } 243 244 /** 245 * <p> 246 * Returns the number of existing repetitions of UAC 247 * </p> 248 * 249 */ 250 public int getUACReps() { 251 return getReps("UAC"); 252 } 253 254 /** 255 * <p> 256 * Returns a non-modifiable List containing all current existing repetitions of UAC. 257 * <p> 258 * <p> 259 * Note that unlike {@link #getUAC()}, this method will not create any reps 260 * if none are already present, so an empty list may be returned. 261 * </p> 262 * 263 */ 264 public java.util.List<UAC> getUACAll() throws HL7Exception { 265 return getAllAsList("UAC", UAC.class); 266 } 267 268 /** 269 * <p> 270 * Inserts a specific repetition of UAC (User Authentication Credential Segment) 271 * </p> 272 * 273 * 274 * @see AbstractGroup#insertRepetition(Structure, int) 275 */ 276 public void insertUAC(UAC structure, int rep) throws HL7Exception { 277 super.insertRepetition( "UAC", structure, rep); 278 } 279 280 281 /** 282 * <p> 283 * Inserts a specific repetition of UAC (User Authentication Credential Segment) 284 * </p> 285 * 286 * 287 * @see AbstractGroup#insertRepetition(Structure, int) 288 */ 289 public UAC insertUAC(int rep) throws HL7Exception { 290 return (UAC)super.insertRepetition("UAC", rep); 291 } 292 293 294 /** 295 * <p> 296 * Removes a specific repetition of UAC (User Authentication Credential Segment) 297 * </p> 298 * 299 * 300 * @see AbstractGroup#removeRepetition(String, int) 301 */ 302 public UAC removeUAC(int rep) throws HL7Exception { 303 return (UAC)super.removeRepetition("UAC", rep); 304 } 305 306 307 308 309 /** 310 * <p> 311 * Returns 312 * IVC (Invoice Segment) - creates it if necessary 313 * </p> 314 * 315 * 316 */ 317 public IVC getIVC() { 318 return getTyped("IVC", IVC.class); 319 } 320 321 322 323 324 325 /** 326 * <p> 327 * Returns 328 * the first repetition of 329 * CTD (Contact Data) - creates it if necessary 330 * </p> 331 * 332 * 333 */ 334 public CTD getCTD() { 335 return getTyped("CTD", CTD.class); 336 } 337 338 339 /** 340 * <p> 341 * Returns a specific repetition of 342 * CTD (Contact Data) - creates it if necessary 343 * </p> 344 * 345 * 346 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0) 347 * @throws HL7Exception if the repetition requested is more than one 348 * greater than the number of existing repetitions. 349 */ 350 public CTD getCTD(int rep) { 351 return getTyped("CTD", rep, CTD.class); 352 } 353 354 /** 355 * <p> 356 * Returns the number of existing repetitions of CTD 357 * </p> 358 * 359 */ 360 public int getCTDReps() { 361 return getReps("CTD"); 362 } 363 364 /** 365 * <p> 366 * Returns a non-modifiable List containing all current existing repetitions of CTD. 367 * <p> 368 * <p> 369 * Note that unlike {@link #getCTD()}, this method will not create any reps 370 * if none are already present, so an empty list may be returned. 371 * </p> 372 * 373 */ 374 public java.util.List<CTD> getCTDAll() throws HL7Exception { 375 return getAllAsList("CTD", CTD.class); 376 } 377 378 /** 379 * <p> 380 * Inserts a specific repetition of CTD (Contact Data) 381 * </p> 382 * 383 * 384 * @see AbstractGroup#insertRepetition(Structure, int) 385 */ 386 public void insertCTD(CTD structure, int rep) throws HL7Exception { 387 super.insertRepetition( "CTD", structure, rep); 388 } 389 390 391 /** 392 * <p> 393 * Inserts a specific repetition of CTD (Contact Data) 394 * </p> 395 * 396 * 397 * @see AbstractGroup#insertRepetition(Structure, int) 398 */ 399 public CTD insertCTD(int rep) throws HL7Exception { 400 return (CTD)super.insertRepetition("CTD", rep); 401 } 402 403 404 /** 405 * <p> 406 * Removes a specific repetition of CTD (Contact Data) 407 * </p> 408 * 409 * 410 * @see AbstractGroup#removeRepetition(String, int) 411 */ 412 public CTD removeCTD(int rep) throws HL7Exception { 413 return (CTD)super.removeRepetition("CTD", rep); 414 } 415 416 417 418 419 /** 420 * <p> 421 * Returns 422 * the first repetition of 423 * LOC (Location Identification) - creates it if necessary 424 * </p> 425 * 426 * 427 */ 428 public LOC getLOC() { 429 return getTyped("LOC", LOC.class); 430 } 431 432 433 /** 434 * <p> 435 * Returns a specific repetition of 436 * LOC (Location Identification) - creates it if necessary 437 * </p> 438 * 439 * 440 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0) 441 * @throws HL7Exception if the repetition requested is more than one 442 * greater than the number of existing repetitions. 443 */ 444 public LOC getLOC(int rep) { 445 return getTyped("LOC", rep, LOC.class); 446 } 447 448 /** 449 * <p> 450 * Returns the number of existing repetitions of LOC 451 * </p> 452 * 453 */ 454 public int getLOCReps() { 455 return getReps("LOC"); 456 } 457 458 /** 459 * <p> 460 * Returns a non-modifiable List containing all current existing repetitions of LOC. 461 * <p> 462 * <p> 463 * Note that unlike {@link #getLOC()}, this method will not create any reps 464 * if none are already present, so an empty list may be returned. 465 * </p> 466 * 467 */ 468 public java.util.List<LOC> getLOCAll() throws HL7Exception { 469 return getAllAsList("LOC", LOC.class); 470 } 471 472 /** 473 * <p> 474 * Inserts a specific repetition of LOC (Location Identification) 475 * </p> 476 * 477 * 478 * @see AbstractGroup#insertRepetition(Structure, int) 479 */ 480 public void insertLOC(LOC structure, int rep) throws HL7Exception { 481 super.insertRepetition( "LOC", structure, rep); 482 } 483 484 485 /** 486 * <p> 487 * Inserts a specific repetition of LOC (Location Identification) 488 * </p> 489 * 490 * 491 * @see AbstractGroup#insertRepetition(Structure, int) 492 */ 493 public LOC insertLOC(int rep) throws HL7Exception { 494 return (LOC)super.insertRepetition("LOC", rep); 495 } 496 497 498 /** 499 * <p> 500 * Removes a specific repetition of LOC (Location Identification) 501 * </p> 502 * 503 * 504 * @see AbstractGroup#removeRepetition(String, int) 505 */ 506 public LOC removeLOC(int rep) throws HL7Exception { 507 return (LOC)super.removeRepetition("LOC", rep); 508 } 509 510 511 512 513 /** 514 * <p> 515 * Returns 516 * the first repetition of 517 * ROL (Role) - creates it if necessary 518 * </p> 519 * 520 * 521 */ 522 public ROL getROL() { 523 return getTyped("ROL", ROL.class); 524 } 525 526 527 /** 528 * <p> 529 * Returns a specific repetition of 530 * ROL (Role) - creates it if necessary 531 * </p> 532 * 533 * 534 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0) 535 * @throws HL7Exception if the repetition requested is more than one 536 * greater than the number of existing repetitions. 537 */ 538 public ROL getROL(int rep) { 539 return getTyped("ROL", rep, ROL.class); 540 } 541 542 /** 543 * <p> 544 * Returns the number of existing repetitions of ROL 545 * </p> 546 * 547 */ 548 public int getROLReps() { 549 return getReps("ROL"); 550 } 551 552 /** 553 * <p> 554 * Returns a non-modifiable List containing all current existing repetitions of ROL. 555 * <p> 556 * <p> 557 * Note that unlike {@link #getROL()}, this method will not create any reps 558 * if none are already present, so an empty list may be returned. 559 * </p> 560 * 561 */ 562 public java.util.List<ROL> getROLAll() throws HL7Exception { 563 return getAllAsList("ROL", ROL.class); 564 } 565 566 /** 567 * <p> 568 * Inserts a specific repetition of ROL (Role) 569 * </p> 570 * 571 * 572 * @see AbstractGroup#insertRepetition(Structure, int) 573 */ 574 public void insertROL(ROL structure, int rep) throws HL7Exception { 575 super.insertRepetition( "ROL", structure, rep); 576 } 577 578 579 /** 580 * <p> 581 * Inserts a specific repetition of ROL (Role) 582 * </p> 583 * 584 * 585 * @see AbstractGroup#insertRepetition(Structure, int) 586 */ 587 public ROL insertROL(int rep) throws HL7Exception { 588 return (ROL)super.insertRepetition("ROL", rep); 589 } 590 591 592 /** 593 * <p> 594 * Removes a specific repetition of ROL (Role) 595 * </p> 596 * 597 * 598 * @see AbstractGroup#removeRepetition(String, int) 599 */ 600 public ROL removeROL(int rep) throws HL7Exception { 601 return (ROL)super.removeRepetition("ROL", rep); 602 } 603 604 605 606 607 /** 608 * <p> 609 * Returns 610 * the first repetition of 611 * PAT_INFO (a Group object) - creates it if necessary 612 * </p> 613 * 614 * 615 */ 616 public EHC_E20_PAT_INFO getPAT_INFO() { 617 return getTyped("PAT_INFO", EHC_E20_PAT_INFO.class); 618 } 619 620 621 /** 622 * <p> 623 * Returns a specific repetition of 624 * PAT_INFO (a Group object) - creates it if necessary 625 * </p> 626 * 627 * 628 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0) 629 * @throws HL7Exception if the repetition requested is more than one 630 * greater than the number of existing repetitions. 631 */ 632 public EHC_E20_PAT_INFO getPAT_INFO(int rep) { 633 return getTyped("PAT_INFO", rep, EHC_E20_PAT_INFO.class); 634 } 635 636 /** 637 * <p> 638 * Returns the number of existing repetitions of PAT_INFO 639 * </p> 640 * 641 */ 642 public int getPAT_INFOReps() { 643 return getReps("PAT_INFO"); 644 } 645 646 /** 647 * <p> 648 * Returns a non-modifiable List containing all current existing repetitions of PAT_INFO. 649 * <p> 650 * <p> 651 * Note that unlike {@link #getPAT_INFO()}, this method will not create any reps 652 * if none are already present, so an empty list may be returned. 653 * </p> 654 * 655 */ 656 public java.util.List<EHC_E20_PAT_INFO> getPAT_INFOAll() throws HL7Exception { 657 return getAllAsList("PAT_INFO", EHC_E20_PAT_INFO.class); 658 } 659 660 /** 661 * <p> 662 * Inserts a specific repetition of PAT_INFO (a Group object) 663 * </p> 664 * 665 * 666 * @see AbstractGroup#insertRepetition(Structure, int) 667 */ 668 public void insertPAT_INFO(EHC_E20_PAT_INFO structure, int rep) throws HL7Exception { 669 super.insertRepetition( "PAT_INFO", structure, rep); 670 } 671 672 673 /** 674 * <p> 675 * Inserts a specific repetition of PAT_INFO (a Group object) 676 * </p> 677 * 678 * 679 * @see AbstractGroup#insertRepetition(Structure, int) 680 */ 681 public EHC_E20_PAT_INFO insertPAT_INFO(int rep) throws HL7Exception { 682 return (EHC_E20_PAT_INFO)super.insertRepetition("PAT_INFO", rep); 683 } 684 685 686 /** 687 * <p> 688 * Removes a specific repetition of PAT_INFO (a Group object) 689 * </p> 690 * 691 * 692 * @see AbstractGroup#removeRepetition(String, int) 693 */ 694 public EHC_E20_PAT_INFO removePAT_INFO(int rep) throws HL7Exception { 695 return (EHC_E20_PAT_INFO)super.removeRepetition("PAT_INFO", rep); 696 } 697 698 699 700 701 /** 702 * <p> 703 * Returns 704 * the first repetition of 705 * PSL_ITEM_INFO (a Group object) - creates it if necessary 706 * </p> 707 * 708 * 709 */ 710 public EHC_E20_PSL_ITEM_INFO getPSL_ITEM_INFO() { 711 return getTyped("PSL_ITEM_INFO", EHC_E20_PSL_ITEM_INFO.class); 712 } 713 714 715 /** 716 * <p> 717 * Returns a specific repetition of 718 * PSL_ITEM_INFO (a Group object) - creates it if necessary 719 * </p> 720 * 721 * 722 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0) 723 * @throws HL7Exception if the repetition requested is more than one 724 * greater than the number of existing repetitions. 725 */ 726 public EHC_E20_PSL_ITEM_INFO getPSL_ITEM_INFO(int rep) { 727 return getTyped("PSL_ITEM_INFO", rep, EHC_E20_PSL_ITEM_INFO.class); 728 } 729 730 /** 731 * <p> 732 * Returns the number of existing repetitions of PSL_ITEM_INFO 733 * </p> 734 * 735 */ 736 public int getPSL_ITEM_INFOReps() { 737 return getReps("PSL_ITEM_INFO"); 738 } 739 740 /** 741 * <p> 742 * Returns a non-modifiable List containing all current existing repetitions of PSL_ITEM_INFO. 743 * <p> 744 * <p> 745 * Note that unlike {@link #getPSL_ITEM_INFO()}, this method will not create any reps 746 * if none are already present, so an empty list may be returned. 747 * </p> 748 * 749 */ 750 public java.util.List<EHC_E20_PSL_ITEM_INFO> getPSL_ITEM_INFOAll() throws HL7Exception { 751 return getAllAsList("PSL_ITEM_INFO", EHC_E20_PSL_ITEM_INFO.class); 752 } 753 754 /** 755 * <p> 756 * Inserts a specific repetition of PSL_ITEM_INFO (a Group object) 757 * </p> 758 * 759 * 760 * @see AbstractGroup#insertRepetition(Structure, int) 761 */ 762 public void insertPSL_ITEM_INFO(EHC_E20_PSL_ITEM_INFO structure, int rep) throws HL7Exception { 763 super.insertRepetition( "PSL_ITEM_INFO", structure, rep); 764 } 765 766 767 /** 768 * <p> 769 * Inserts a specific repetition of PSL_ITEM_INFO (a Group object) 770 * </p> 771 * 772 * 773 * @see AbstractGroup#insertRepetition(Structure, int) 774 */ 775 public EHC_E20_PSL_ITEM_INFO insertPSL_ITEM_INFO(int rep) throws HL7Exception { 776 return (EHC_E20_PSL_ITEM_INFO)super.insertRepetition("PSL_ITEM_INFO", rep); 777 } 778 779 780 /** 781 * <p> 782 * Removes a specific repetition of PSL_ITEM_INFO (a Group object) 783 * </p> 784 * 785 * 786 * @see AbstractGroup#removeRepetition(String, int) 787 */ 788 public EHC_E20_PSL_ITEM_INFO removePSL_ITEM_INFO(int rep) throws HL7Exception { 789 return (EHC_E20_PSL_ITEM_INFO)super.removeRepetition("PSL_ITEM_INFO", rep); 790 } 791 792 793 794} 795