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 BAR_P01 message structure (see chapter 6.4.1). 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 </b> </li> 52 * <li>4: EVN (Event Type) <b> </b> </li> 53 * <li>5: PID (Patient Identification) <b> </b> </li> 54 * <li>6: PD1 (Patient Additional Demographic) <b>optional </b> </li> 55 * <li>7: PRT (Participation Information) <b>optional repeating</b> </li> 56 * <li>8: ROL (Role) <b>optional repeating</b> </li> 57 * <li>9: BAR_P01_VISIT (a Group object) <b> repeating</b> </li> 58 * </ul> 59 */ 60 //@SuppressWarnings("unused") 61 public class BAR_P01 extends AbstractMessage { 62 63 /** 64 * Creates a new BAR_P01 message with DefaultModelClassFactory. 65 */ 66 public BAR_P01() { 67 this(new DefaultModelClassFactory()); 68 } 69 70 /** 71 * Creates a new BAR_P01 message with custom ModelClassFactory. 72 */ 73 public BAR_P01(ModelClassFactory factory) { 74 super(factory); 75 init(factory); 76 } 77 78 private void init(ModelClassFactory factory) { 79 try { 80 this.add(MSH.class, true, false); 81 this.add(SFT.class, false, true); 82 this.add(UAC.class, false, false); 83 this.add(EVN.class, true, false); 84 this.add(PID.class, true, false); 85 this.add(PD1.class, false, false); 86 this.add(PRT.class, false, true); 87 this.add(ROL.class, false, true); 88 this.add(BAR_P01_VISIT.class, true, true); 89 } catch(HL7Exception e) { 90 log.error("Unexpected error creating BAR_P01 - this is probably a bug in the source code generator.", e); 91 } 92 } 93 94 95 /** 96 * Returns "2.8" 97 */ 98 public String getVersion() { 99 return "2.8"; 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 * UAC (User Authentication Credential Segment) - creates it if necessary 219 * </p> 220 * 221 * 222 */ 223 public UAC getUAC() { 224 return getTyped("UAC", UAC.class); 225 } 226 227 228 229 230 231 /** 232 * <p> 233 * Returns 234 * EVN (Event Type) - creates it if necessary 235 * </p> 236 * 237 * 238 */ 239 public EVN getEVN() { 240 return getTyped("EVN", EVN.class); 241 } 242 243 244 245 246 247 /** 248 * <p> 249 * Returns 250 * PID (Patient Identification) - creates it if necessary 251 * </p> 252 * 253 * 254 */ 255 public PID getPID() { 256 return getTyped("PID", PID.class); 257 } 258 259 260 261 262 263 /** 264 * <p> 265 * Returns 266 * PD1 (Patient Additional Demographic) - creates it if necessary 267 * </p> 268 * 269 * 270 */ 271 public PD1 getPD1() { 272 return getTyped("PD1", PD1.class); 273 } 274 275 276 277 278 279 /** 280 * <p> 281 * Returns 282 * the first repetition of 283 * PRT (Participation Information) - creates it if necessary 284 * </p> 285 * 286 * 287 */ 288 public PRT getPRT() { 289 return getTyped("PRT", PRT.class); 290 } 291 292 293 /** 294 * <p> 295 * Returns a specific repetition of 296 * PRT (Participation Information) - creates it if necessary 297 * </p> 298 * 299 * 300 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0) 301 * @throws HL7Exception if the repetition requested is more than one 302 * greater than the number of existing repetitions. 303 */ 304 public PRT getPRT(int rep) { 305 return getTyped("PRT", rep, PRT.class); 306 } 307 308 /** 309 * <p> 310 * Returns the number of existing repetitions of PRT 311 * </p> 312 * 313 */ 314 public int getPRTReps() { 315 return getReps("PRT"); 316 } 317 318 /** 319 * <p> 320 * Returns a non-modifiable List containing all current existing repetitions of PRT. 321 * <p> 322 * <p> 323 * Note that unlike {@link #getPRT()}, this method will not create any reps 324 * if none are already present, so an empty list may be returned. 325 * </p> 326 * 327 */ 328 public java.util.List<PRT> getPRTAll() throws HL7Exception { 329 return getAllAsList("PRT", PRT.class); 330 } 331 332 /** 333 * <p> 334 * Inserts a specific repetition of PRT (Participation Information) 335 * </p> 336 * 337 * 338 * @see AbstractGroup#insertRepetition(Structure, int) 339 */ 340 public void insertPRT(PRT structure, int rep) throws HL7Exception { 341 super.insertRepetition( "PRT", structure, rep); 342 } 343 344 345 /** 346 * <p> 347 * Inserts a specific repetition of PRT (Participation Information) 348 * </p> 349 * 350 * 351 * @see AbstractGroup#insertRepetition(Structure, int) 352 */ 353 public PRT insertPRT(int rep) throws HL7Exception { 354 return (PRT)super.insertRepetition("PRT", rep); 355 } 356 357 358 /** 359 * <p> 360 * Removes a specific repetition of PRT (Participation Information) 361 * </p> 362 * 363 * 364 * @see AbstractGroup#removeRepetition(String, int) 365 */ 366 public PRT removePRT(int rep) throws HL7Exception { 367 return (PRT)super.removeRepetition("PRT", rep); 368 } 369 370 371 372 373 /** 374 * <p> 375 * Returns 376 * the first repetition of 377 * ROL (Role) - creates it if necessary 378 * </p> 379 * 380 * 381 */ 382 public ROL getROL() { 383 return getTyped("ROL", ROL.class); 384 } 385 386 387 /** 388 * <p> 389 * Returns a specific repetition of 390 * ROL (Role) - creates it if necessary 391 * </p> 392 * 393 * 394 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0) 395 * @throws HL7Exception if the repetition requested is more than one 396 * greater than the number of existing repetitions. 397 */ 398 public ROL getROL(int rep) { 399 return getTyped("ROL", rep, ROL.class); 400 } 401 402 /** 403 * <p> 404 * Returns the number of existing repetitions of ROL 405 * </p> 406 * 407 */ 408 public int getROLReps() { 409 return getReps("ROL"); 410 } 411 412 /** 413 * <p> 414 * Returns a non-modifiable List containing all current existing repetitions of ROL. 415 * <p> 416 * <p> 417 * Note that unlike {@link #getROL()}, this method will not create any reps 418 * if none are already present, so an empty list may be returned. 419 * </p> 420 * 421 */ 422 public java.util.List<ROL> getROLAll() throws HL7Exception { 423 return getAllAsList("ROL", ROL.class); 424 } 425 426 /** 427 * <p> 428 * Inserts a specific repetition of ROL (Role) 429 * </p> 430 * 431 * 432 * @see AbstractGroup#insertRepetition(Structure, int) 433 */ 434 public void insertROL(ROL structure, int rep) throws HL7Exception { 435 super.insertRepetition( "ROL", structure, rep); 436 } 437 438 439 /** 440 * <p> 441 * Inserts a specific repetition of ROL (Role) 442 * </p> 443 * 444 * 445 * @see AbstractGroup#insertRepetition(Structure, int) 446 */ 447 public ROL insertROL(int rep) throws HL7Exception { 448 return (ROL)super.insertRepetition("ROL", rep); 449 } 450 451 452 /** 453 * <p> 454 * Removes a specific repetition of ROL (Role) 455 * </p> 456 * 457 * 458 * @see AbstractGroup#removeRepetition(String, int) 459 */ 460 public ROL removeROL(int rep) throws HL7Exception { 461 return (ROL)super.removeRepetition("ROL", rep); 462 } 463 464 465 466 467 /** 468 * <p> 469 * Returns 470 * the first repetition of 471 * VISIT (a Group object) - creates it if necessary 472 * </p> 473 * 474 * 475 */ 476 public BAR_P01_VISIT getVISIT() { 477 return getTyped("VISIT", BAR_P01_VISIT.class); 478 } 479 480 481 /** 482 * <p> 483 * Returns a specific repetition of 484 * VISIT (a Group object) - creates it if necessary 485 * </p> 486 * 487 * 488 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0) 489 * @throws HL7Exception if the repetition requested is more than one 490 * greater than the number of existing repetitions. 491 */ 492 public BAR_P01_VISIT getVISIT(int rep) { 493 return getTyped("VISIT", rep, BAR_P01_VISIT.class); 494 } 495 496 /** 497 * <p> 498 * Returns the number of existing repetitions of VISIT 499 * </p> 500 * 501 */ 502 public int getVISITReps() { 503 return getReps("VISIT"); 504 } 505 506 /** 507 * <p> 508 * Returns a non-modifiable List containing all current existing repetitions of VISIT. 509 * <p> 510 * <p> 511 * Note that unlike {@link #getVISIT()}, this method will not create any reps 512 * if none are already present, so an empty list may be returned. 513 * </p> 514 * 515 */ 516 public java.util.List<BAR_P01_VISIT> getVISITAll() throws HL7Exception { 517 return getAllAsList("VISIT", BAR_P01_VISIT.class); 518 } 519 520 /** 521 * <p> 522 * Inserts a specific repetition of VISIT (a Group object) 523 * </p> 524 * 525 * 526 * @see AbstractGroup#insertRepetition(Structure, int) 527 */ 528 public void insertVISIT(BAR_P01_VISIT structure, int rep) throws HL7Exception { 529 super.insertRepetition( "VISIT", structure, rep); 530 } 531 532 533 /** 534 * <p> 535 * Inserts a specific repetition of VISIT (a Group object) 536 * </p> 537 * 538 * 539 * @see AbstractGroup#insertRepetition(Structure, int) 540 */ 541 public BAR_P01_VISIT insertVISIT(int rep) throws HL7Exception { 542 return (BAR_P01_VISIT)super.insertRepetition("VISIT", rep); 543 } 544 545 546 /** 547 * <p> 548 * Removes a specific repetition of VISIT (a Group object) 549 * </p> 550 * 551 * 552 * @see AbstractGroup#removeRepetition(String, int) 553 */ 554 public BAR_P01_VISIT removeVISIT(int rep) throws HL7Exception { 555 return (BAR_P01_VISIT)super.removeRepetition("VISIT", rep); 556 } 557 558 559 560 } 561