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.v27.group; 35 36 import ca.uhn.hl7v2.model.v27.segment.*; 37 38 import ca.uhn.hl7v2.HL7Exception; 39 import ca.uhn.hl7v2.parser.ModelClassFactory; 40 import ca.uhn.hl7v2.model.*; 41 42 /** 43 * <p>Represents a PEX_P07_PEX_CAUSE group structure (a Group object). 44 * A Group is an ordered collection of message segments that can repeat together or be optionally in/excluded together. 45 * This Group contains the following elements: 46 * </p> 47 * <ul> 48 * <li>1: PCR (Possible Causal Relationship) <b> </b></li> 49 * <li>2: PEX_P07_RX_ORDER (a Group object) <b>optional </b></li> 50 * <li>3: PEX_P07_RX_ADMINISTRATION (a Group object) <b>optional repeating </b></li> 51 * <li>4: PRB (Problem Details) <b>optional repeating </b></li> 52 * <li>5: PEX_P07_OBSERVATION (a Group object) <b>optional repeating </b></li> 53 * <li>6: NTE (Notes and Comments) <b>optional repeating </b></li> 54 * <li>7: PEX_P07_ASSOCIATED_PERSON (a Group object) <b>optional </b></li> 55 * <li>8: PEX_P07_STUDY (a Group object) <b>optional repeating </b></li> 56 * </ul> 57 */ 58 //@SuppressWarnings("unused") 59 public class PEX_P07_PEX_CAUSE extends AbstractGroup { 60 61 /** 62 * Creates a new PEX_P07_PEX_CAUSE group 63 */ 64 public PEX_P07_PEX_CAUSE(Group parent, ModelClassFactory factory) { 65 super(parent, factory); 66 init(factory); 67 } 68 69 private void init(ModelClassFactory factory) { 70 try { 71 this.add(PCR.class, true, false, false); 72 this.add(PEX_P07_RX_ORDER.class, false, false, false); 73 this.add(PEX_P07_RX_ADMINISTRATION.class, false, true, false); 74 this.add(PRB.class, false, true, false); 75 this.add(PEX_P07_OBSERVATION.class, false, true, false); 76 this.add(NTE.class, false, true, false); 77 this.add(PEX_P07_ASSOCIATED_PERSON.class, false, false, false); 78 this.add(PEX_P07_STUDY.class, false, true, false); 79 } catch(HL7Exception e) { 80 log.error("Unexpected error creating PEX_P07_PEX_CAUSE - this is probably a bug in the source code generator.", e); 81 } 82 } 83 84 /** 85 * Returns "2.7" 86 */ 87 public String getVersion() { 88 return "2.7"; 89 } 90 91 92 93 /** 94 * Returns 95 * PCR (Possible Causal Relationship) - creates it if necessary 96 */ 97 public PCR getPCR() { 98 PCR retVal = getTyped("PCR", PCR.class); 99 return retVal; 100 } 101 102 103 104 105 /** 106 * Returns 107 * RX_ORDER (a Group object) - creates it if necessary 108 */ 109 public PEX_P07_RX_ORDER getRX_ORDER() { 110 PEX_P07_RX_ORDER retVal = getTyped("RX_ORDER", PEX_P07_RX_ORDER.class); 111 return retVal; 112 } 113 114 115 116 117 /** 118 * Returns 119 * the first repetition of 120 * RX_ADMINISTRATION (a Group object) - creates it if necessary 121 */ 122 public PEX_P07_RX_ADMINISTRATION getRX_ADMINISTRATION() { 123 PEX_P07_RX_ADMINISTRATION retVal = getTyped("RX_ADMINISTRATION", PEX_P07_RX_ADMINISTRATION.class); 124 return retVal; 125 } 126 127 128 /** 129 * Returns a specific repetition of 130 * RX_ADMINISTRATION (a Group object) - creates it if necessary 131 * 132 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0) 133 * @throws HL7Exception if the repetition requested is more than one 134 * greater than the number of existing repetitions. 135 */ 136 public PEX_P07_RX_ADMINISTRATION getRX_ADMINISTRATION(int rep) { 137 PEX_P07_RX_ADMINISTRATION retVal = getTyped("RX_ADMINISTRATION", rep, PEX_P07_RX_ADMINISTRATION.class); 138 return retVal; 139 } 140 141 /** 142 * Returns the number of existing repetitions of RX_ADMINISTRATION 143 */ 144 public int getRX_ADMINISTRATIONReps() { 145 return getReps("RX_ADMINISTRATION"); 146 } 147 148 /** 149 * <p> 150 * Returns a non-modifiable List containing all current existing repetitions of RX_ADMINISTRATION. 151 * <p> 152 * <p> 153 * Note that unlike {@link #getRX_ADMINISTRATION()}, this method will not create any reps 154 * if none are already present, so an empty list may be returned. 155 * </p> 156 */ 157 public java.util.List<PEX_P07_RX_ADMINISTRATION> getRX_ADMINISTRATIONAll() throws HL7Exception { 158 return getAllAsList("RX_ADMINISTRATION", PEX_P07_RX_ADMINISTRATION.class); 159 } 160 161 /** 162 * Inserts a specific repetition of RX_ADMINISTRATION (a Group object) 163 * @see AbstractGroup#insertRepetition(Structure, int) 164 */ 165 public void insertRX_ADMINISTRATION(PEX_P07_RX_ADMINISTRATION structure, int rep) throws HL7Exception { 166 super.insertRepetition("RX_ADMINISTRATION", structure, rep); 167 } 168 169 170 /** 171 * Inserts a specific repetition of RX_ADMINISTRATION (a Group object) 172 * @see AbstractGroup#insertRepetition(Structure, int) 173 */ 174 public PEX_P07_RX_ADMINISTRATION insertRX_ADMINISTRATION(int rep) throws HL7Exception { 175 return (PEX_P07_RX_ADMINISTRATION)super.insertRepetition("RX_ADMINISTRATION", rep); 176 } 177 178 179 /** 180 * Removes a specific repetition of RX_ADMINISTRATION (a Group object) 181 * @see AbstractGroup#removeRepetition(String, int) 182 */ 183 public PEX_P07_RX_ADMINISTRATION removeRX_ADMINISTRATION(int rep) throws HL7Exception { 184 return (PEX_P07_RX_ADMINISTRATION)super.removeRepetition("RX_ADMINISTRATION", rep); 185 } 186 187 188 189 /** 190 * Returns 191 * the first repetition of 192 * PRB (Problem Details) - creates it if necessary 193 */ 194 public PRB getPRB() { 195 PRB retVal = getTyped("PRB", PRB.class); 196 return retVal; 197 } 198 199 200 /** 201 * Returns a specific repetition of 202 * PRB (Problem Details) - creates it if necessary 203 * 204 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0) 205 * @throws HL7Exception if the repetition requested is more than one 206 * greater than the number of existing repetitions. 207 */ 208 public PRB getPRB(int rep) { 209 PRB retVal = getTyped("PRB", rep, PRB.class); 210 return retVal; 211 } 212 213 /** 214 * Returns the number of existing repetitions of PRB 215 */ 216 public int getPRBReps() { 217 return getReps("PRB"); 218 } 219 220 /** 221 * <p> 222 * Returns a non-modifiable List containing all current existing repetitions of PRB. 223 * <p> 224 * <p> 225 * Note that unlike {@link #getPRB()}, this method will not create any reps 226 * if none are already present, so an empty list may be returned. 227 * </p> 228 */ 229 public java.util.List<PRB> getPRBAll() throws HL7Exception { 230 return getAllAsList("PRB", PRB.class); 231 } 232 233 /** 234 * Inserts a specific repetition of PRB (Problem Details) 235 * @see AbstractGroup#insertRepetition(Structure, int) 236 */ 237 public void insertPRB(PRB structure, int rep) throws HL7Exception { 238 super.insertRepetition("PRB", structure, rep); 239 } 240 241 242 /** 243 * Inserts a specific repetition of PRB (Problem Details) 244 * @see AbstractGroup#insertRepetition(Structure, int) 245 */ 246 public PRB insertPRB(int rep) throws HL7Exception { 247 return (PRB)super.insertRepetition("PRB", rep); 248 } 249 250 251 /** 252 * Removes a specific repetition of PRB (Problem Details) 253 * @see AbstractGroup#removeRepetition(String, int) 254 */ 255 public PRB removePRB(int rep) throws HL7Exception { 256 return (PRB)super.removeRepetition("PRB", rep); 257 } 258 259 260 261 /** 262 * Returns 263 * the first repetition of 264 * OBSERVATION (a Group object) - creates it if necessary 265 */ 266 public PEX_P07_OBSERVATION getOBSERVATION() { 267 PEX_P07_OBSERVATION retVal = getTyped("OBSERVATION", PEX_P07_OBSERVATION.class); 268 return retVal; 269 } 270 271 272 /** 273 * Returns a specific repetition of 274 * OBSERVATION (a Group object) - creates it if necessary 275 * 276 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0) 277 * @throws HL7Exception if the repetition requested is more than one 278 * greater than the number of existing repetitions. 279 */ 280 public PEX_P07_OBSERVATION getOBSERVATION(int rep) { 281 PEX_P07_OBSERVATION retVal = getTyped("OBSERVATION", rep, PEX_P07_OBSERVATION.class); 282 return retVal; 283 } 284 285 /** 286 * Returns the number of existing repetitions of OBSERVATION 287 */ 288 public int getOBSERVATIONReps() { 289 return getReps("OBSERVATION"); 290 } 291 292 /** 293 * <p> 294 * Returns a non-modifiable List containing all current existing repetitions of OBSERVATION. 295 * <p> 296 * <p> 297 * Note that unlike {@link #getOBSERVATION()}, this method will not create any reps 298 * if none are already present, so an empty list may be returned. 299 * </p> 300 */ 301 public java.util.List<PEX_P07_OBSERVATION> getOBSERVATIONAll() throws HL7Exception { 302 return getAllAsList("OBSERVATION", PEX_P07_OBSERVATION.class); 303 } 304 305 /** 306 * Inserts a specific repetition of OBSERVATION (a Group object) 307 * @see AbstractGroup#insertRepetition(Structure, int) 308 */ 309 public void insertOBSERVATION(PEX_P07_OBSERVATION structure, int rep) throws HL7Exception { 310 super.insertRepetition("OBSERVATION", structure, rep); 311 } 312 313 314 /** 315 * Inserts a specific repetition of OBSERVATION (a Group object) 316 * @see AbstractGroup#insertRepetition(Structure, int) 317 */ 318 public PEX_P07_OBSERVATION insertOBSERVATION(int rep) throws HL7Exception { 319 return (PEX_P07_OBSERVATION)super.insertRepetition("OBSERVATION", rep); 320 } 321 322 323 /** 324 * Removes a specific repetition of OBSERVATION (a Group object) 325 * @see AbstractGroup#removeRepetition(String, int) 326 */ 327 public PEX_P07_OBSERVATION removeOBSERVATION(int rep) throws HL7Exception { 328 return (PEX_P07_OBSERVATION)super.removeRepetition("OBSERVATION", rep); 329 } 330 331 332 333 /** 334 * Returns 335 * the first repetition of 336 * NTE (Notes and Comments) - creates it if necessary 337 */ 338 public NTE getNTE() { 339 NTE retVal = getTyped("NTE", NTE.class); 340 return retVal; 341 } 342 343 344 /** 345 * Returns a specific repetition of 346 * NTE (Notes and Comments) - creates it if necessary 347 * 348 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0) 349 * @throws HL7Exception if the repetition requested is more than one 350 * greater than the number of existing repetitions. 351 */ 352 public NTE getNTE(int rep) { 353 NTE retVal = getTyped("NTE", rep, NTE.class); 354 return retVal; 355 } 356 357 /** 358 * Returns the number of existing repetitions of NTE 359 */ 360 public int getNTEReps() { 361 return getReps("NTE"); 362 } 363 364 /** 365 * <p> 366 * Returns a non-modifiable List containing all current existing repetitions of NTE. 367 * <p> 368 * <p> 369 * Note that unlike {@link #getNTE()}, this method will not create any reps 370 * if none are already present, so an empty list may be returned. 371 * </p> 372 */ 373 public java.util.List<NTE> getNTEAll() throws HL7Exception { 374 return getAllAsList("NTE", NTE.class); 375 } 376 377 /** 378 * Inserts a specific repetition of NTE (Notes and Comments) 379 * @see AbstractGroup#insertRepetition(Structure, int) 380 */ 381 public void insertNTE(NTE structure, int rep) throws HL7Exception { 382 super.insertRepetition("NTE", structure, rep); 383 } 384 385 386 /** 387 * Inserts a specific repetition of NTE (Notes and Comments) 388 * @see AbstractGroup#insertRepetition(Structure, int) 389 */ 390 public NTE insertNTE(int rep) throws HL7Exception { 391 return (NTE)super.insertRepetition("NTE", rep); 392 } 393 394 395 /** 396 * Removes a specific repetition of NTE (Notes and Comments) 397 * @see AbstractGroup#removeRepetition(String, int) 398 */ 399 public NTE removeNTE(int rep) throws HL7Exception { 400 return (NTE)super.removeRepetition("NTE", rep); 401 } 402 403 404 405 /** 406 * Returns 407 * ASSOCIATED_PERSON (a Group object) - creates it if necessary 408 */ 409 public PEX_P07_ASSOCIATED_PERSON getASSOCIATED_PERSON() { 410 PEX_P07_ASSOCIATED_PERSON retVal = getTyped("ASSOCIATED_PERSON", PEX_P07_ASSOCIATED_PERSON.class); 411 return retVal; 412 } 413 414 415 416 417 /** 418 * Returns 419 * the first repetition of 420 * STUDY (a Group object) - creates it if necessary 421 */ 422 public PEX_P07_STUDY getSTUDY() { 423 PEX_P07_STUDY retVal = getTyped("STUDY", PEX_P07_STUDY.class); 424 return retVal; 425 } 426 427 428 /** 429 * Returns a specific repetition of 430 * STUDY (a Group object) - creates it if necessary 431 * 432 * @param rep The repetition index (0-indexed, i.e. the first repetition is at index 0) 433 * @throws HL7Exception if the repetition requested is more than one 434 * greater than the number of existing repetitions. 435 */ 436 public PEX_P07_STUDY getSTUDY(int rep) { 437 PEX_P07_STUDY retVal = getTyped("STUDY", rep, PEX_P07_STUDY.class); 438 return retVal; 439 } 440 441 /** 442 * Returns the number of existing repetitions of STUDY 443 */ 444 public int getSTUDYReps() { 445 return getReps("STUDY"); 446 } 447 448 /** 449 * <p> 450 * Returns a non-modifiable List containing all current existing repetitions of STUDY. 451 * <p> 452 * <p> 453 * Note that unlike {@link #getSTUDY()}, this method will not create any reps 454 * if none are already present, so an empty list may be returned. 455 * </p> 456 */ 457 public java.util.List<PEX_P07_STUDY> getSTUDYAll() throws HL7Exception { 458 return getAllAsList("STUDY", PEX_P07_STUDY.class); 459 } 460 461 /** 462 * Inserts a specific repetition of STUDY (a Group object) 463 * @see AbstractGroup#insertRepetition(Structure, int) 464 */ 465 public void insertSTUDY(PEX_P07_STUDY structure, int rep) throws HL7Exception { 466 super.insertRepetition("STUDY", structure, rep); 467 } 468 469 470 /** 471 * Inserts a specific repetition of STUDY (a Group object) 472 * @see AbstractGroup#insertRepetition(Structure, int) 473 */ 474 public PEX_P07_STUDY insertSTUDY(int rep) throws HL7Exception { 475 return (PEX_P07_STUDY)super.insertRepetition("STUDY", rep); 476 } 477 478 479 /** 480 * Removes a specific repetition of STUDY (a Group object) 481 * @see AbstractGroup#removeRepetition(String, int) 482 */ 483 public PEX_P07_STUDY removeSTUDY(int rep) throws HL7Exception { 484 return (PEX_P07_STUDY)super.removeRepetition("STUDY", rep); 485 } 486 487 488 489 } 490