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.v23.segment; 35 36 // import ca.uhn.hl7v2.model.v23.group.*; 37 import ca.uhn.hl7v2.model.v23.datatype.*; 38 import ca.uhn.hl7v2.HL7Exception; 39 import ca.uhn.hl7v2.parser.ModelClassFactory; 40 import ca.uhn.hl7v2.parser.DefaultModelClassFactory; 41 import ca.uhn.hl7v2.model.AbstractMessage; 42 import ca.uhn.hl7v2.model.Group; 43 import ca.uhn.hl7v2.model.Type; 44 import ca.uhn.hl7v2.model.AbstractSegment; 45 import ca.uhn.hl7v2.model.Varies; 46 47 48 /** 49 *<p>Represents an HL7 APR message segment (Appointment Preferences). 50 * This segment has the following fields:</p> 51 * <ul> 52 * <li>APR-1: Time Selection Criteria (SCV) <b>optional repeating</b> 53 * <li>APR-2: Resource Selection Criteria (SCV) <b>optional repeating</b> 54 * <li>APR-3: Location Selection Criteria (SCV) <b>optional repeating</b> 55 * <li>APR-4: Slot Spacing Criteria (NM) <b>optional </b> 56 * <li>APR-5: Filler Override Criteria (SCV) <b>optional repeating</b> 57 * </ul> 58 */ 59 @SuppressWarnings("unused") 60 public class APR extends AbstractSegment { 61 62 /** 63 * Creates a new APR segment 64 */ 65 public APR(Group parent, ModelClassFactory factory) { 66 super(parent, factory); 67 init(factory); 68 } 69 70 private void init(ModelClassFactory factory) { 71 try { 72 this.add(SCV.class, false, 0, 80, new Object[]{ getMessage() }, "Time Selection Criteria"); 73 this.add(SCV.class, false, 0, 80, new Object[]{ getMessage() }, "Resource Selection Criteria"); 74 this.add(SCV.class, false, 0, 80, new Object[]{ getMessage() }, "Location Selection Criteria"); 75 this.add(NM.class, false, 1, 5, new Object[]{ getMessage() }, "Slot Spacing Criteria"); 76 this.add(SCV.class, false, 0, 80, new Object[]{ getMessage() }, "Filler Override Criteria"); 77 } catch(HL7Exception e) { 78 log.error("Unexpected error creating APR - this is probably a bug in the source code generator.", e); 79 } 80 } 81 82 83 /** 84 * Returns all repetitions of Time Selection Criteria (APR-1). 85 */ 86 public SCV[] getTimeSelectionCriteria() { 87 SCV[] retVal = this.getTypedField(1, new SCV[0]); 88 return retVal; 89 } 90 91 92 /** 93 * Returns all repetitions of Time Selection Criteria (APR-1). 94 */ 95 public SCV[] getApr1_TimeSelectionCriteria() { 96 SCV[] retVal = this.getTypedField(1, new SCV[0]); 97 return retVal; 98 } 99 100 101 /** 102 * Returns a count of the current number of repetitions of Time Selection Criteria (APR-1). 103 * This method does not create a repetition, so if no repetitions have currently been defined or accessed, 104 * it will return zero. 105 */ 106 public int getTimeSelectionCriteriaReps() { 107 return this.getReps(1); 108 } 109 110 111 /** 112 * Returns a specific repetition of 113 * APR-1: "Time Selection Criteria" - creates it if necessary 114 * 115 * @param rep The repetition index (0-indexed) 116 */ 117 public SCV getTimeSelectionCriteria(int rep) { 118 SCV retVal = this.getTypedField(1, rep); 119 return retVal; 120 } 121 122 /** 123 * Returns a specific repetition of 124 * APR-1: "Time Selection Criteria" - creates it if necessary 125 * 126 * @param rep The repetition index (0-indexed) 127 */ 128 public SCV getApr1_TimeSelectionCriteria(int rep) { 129 SCV retVal = this.getTypedField(1, rep); 130 return retVal; 131 } 132 133 /** 134 * Returns a count of the current number of repetitions of Time Selection Criteria (APR-1). 135 * This method does not create a repetition, so if no repetitions have currently been defined or accessed, 136 * it will return zero. 137 */ 138 public int getApr1_TimeSelectionCriteriaReps() { 139 return this.getReps(1); 140 } 141 142 143 /** 144 * Inserts a repetition of 145 * APR-1: "Time Selection Criteria" at a specific index 146 * 147 * @param rep The repetition index (0-indexed) 148 * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions) 149 */ 150 public SCV insertTimeSelectionCriteria(int rep) throws HL7Exception { 151 return (SCV) super.insertRepetition(1, rep); 152 } 153 154 155 /** 156 * Inserts a repetition of 157 * APR-1: "Time Selection Criteria" at a specific index 158 * 159 * @param rep The repetition index (0-indexed) 160 * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions) 161 */ 162 public SCV insertApr1_TimeSelectionCriteria(int rep) throws HL7Exception { 163 return (SCV) super.insertRepetition(1, rep); 164 } 165 166 167 /** 168 * Removes a repetition of 169 * APR-1: "Time Selection Criteria" at a specific index 170 * 171 * @param rep The repetition index (0-indexed) 172 * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions) 173 */ 174 public SCV removeTimeSelectionCriteria(int rep) throws HL7Exception { 175 return (SCV) super.removeRepetition(1, rep); 176 } 177 178 179 /** 180 * Removes a repetition of 181 * APR-1: "Time Selection Criteria" at a specific index 182 * 183 * @param rep The repetition index (0-indexed) 184 * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions) 185 */ 186 public SCV removeApr1_TimeSelectionCriteria(int rep) throws HL7Exception { 187 return (SCV) super.removeRepetition(1, rep); 188 } 189 190 191 192 /** 193 * Returns all repetitions of Resource Selection Criteria (APR-2). 194 */ 195 public SCV[] getResourceSelectionCriteria() { 196 SCV[] retVal = this.getTypedField(2, new SCV[0]); 197 return retVal; 198 } 199 200 201 /** 202 * Returns all repetitions of Resource Selection Criteria (APR-2). 203 */ 204 public SCV[] getApr2_ResourceSelectionCriteria() { 205 SCV[] retVal = this.getTypedField(2, new SCV[0]); 206 return retVal; 207 } 208 209 210 /** 211 * Returns a count of the current number of repetitions of Resource Selection Criteria (APR-2). 212 * This method does not create a repetition, so if no repetitions have currently been defined or accessed, 213 * it will return zero. 214 */ 215 public int getResourceSelectionCriteriaReps() { 216 return this.getReps(2); 217 } 218 219 220 /** 221 * Returns a specific repetition of 222 * APR-2: "Resource Selection Criteria" - creates it if necessary 223 * 224 * @param rep The repetition index (0-indexed) 225 */ 226 public SCV getResourceSelectionCriteria(int rep) { 227 SCV retVal = this.getTypedField(2, rep); 228 return retVal; 229 } 230 231 /** 232 * Returns a specific repetition of 233 * APR-2: "Resource Selection Criteria" - creates it if necessary 234 * 235 * @param rep The repetition index (0-indexed) 236 */ 237 public SCV getApr2_ResourceSelectionCriteria(int rep) { 238 SCV retVal = this.getTypedField(2, rep); 239 return retVal; 240 } 241 242 /** 243 * Returns a count of the current number of repetitions of Resource Selection Criteria (APR-2). 244 * This method does not create a repetition, so if no repetitions have currently been defined or accessed, 245 * it will return zero. 246 */ 247 public int getApr2_ResourceSelectionCriteriaReps() { 248 return this.getReps(2); 249 } 250 251 252 /** 253 * Inserts a repetition of 254 * APR-2: "Resource Selection Criteria" at a specific index 255 * 256 * @param rep The repetition index (0-indexed) 257 * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions) 258 */ 259 public SCV insertResourceSelectionCriteria(int rep) throws HL7Exception { 260 return (SCV) super.insertRepetition(2, rep); 261 } 262 263 264 /** 265 * Inserts a repetition of 266 * APR-2: "Resource Selection Criteria" at a specific index 267 * 268 * @param rep The repetition index (0-indexed) 269 * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions) 270 */ 271 public SCV insertApr2_ResourceSelectionCriteria(int rep) throws HL7Exception { 272 return (SCV) super.insertRepetition(2, rep); 273 } 274 275 276 /** 277 * Removes a repetition of 278 * APR-2: "Resource Selection Criteria" at a specific index 279 * 280 * @param rep The repetition index (0-indexed) 281 * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions) 282 */ 283 public SCV removeResourceSelectionCriteria(int rep) throws HL7Exception { 284 return (SCV) super.removeRepetition(2, rep); 285 } 286 287 288 /** 289 * Removes a repetition of 290 * APR-2: "Resource Selection Criteria" at a specific index 291 * 292 * @param rep The repetition index (0-indexed) 293 * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions) 294 */ 295 public SCV removeApr2_ResourceSelectionCriteria(int rep) throws HL7Exception { 296 return (SCV) super.removeRepetition(2, rep); 297 } 298 299 300 301 /** 302 * Returns all repetitions of Location Selection Criteria (APR-3). 303 */ 304 public SCV[] getLocationSelectionCriteria() { 305 SCV[] retVal = this.getTypedField(3, new SCV[0]); 306 return retVal; 307 } 308 309 310 /** 311 * Returns all repetitions of Location Selection Criteria (APR-3). 312 */ 313 public SCV[] getApr3_LocationSelectionCriteria() { 314 SCV[] retVal = this.getTypedField(3, new SCV[0]); 315 return retVal; 316 } 317 318 319 /** 320 * Returns a count of the current number of repetitions of Location Selection Criteria (APR-3). 321 * This method does not create a repetition, so if no repetitions have currently been defined or accessed, 322 * it will return zero. 323 */ 324 public int getLocationSelectionCriteriaReps() { 325 return this.getReps(3); 326 } 327 328 329 /** 330 * Returns a specific repetition of 331 * APR-3: "Location Selection Criteria" - creates it if necessary 332 * 333 * @param rep The repetition index (0-indexed) 334 */ 335 public SCV getLocationSelectionCriteria(int rep) { 336 SCV retVal = this.getTypedField(3, rep); 337 return retVal; 338 } 339 340 /** 341 * Returns a specific repetition of 342 * APR-3: "Location Selection Criteria" - creates it if necessary 343 * 344 * @param rep The repetition index (0-indexed) 345 */ 346 public SCV getApr3_LocationSelectionCriteria(int rep) { 347 SCV retVal = this.getTypedField(3, rep); 348 return retVal; 349 } 350 351 /** 352 * Returns a count of the current number of repetitions of Location Selection Criteria (APR-3). 353 * This method does not create a repetition, so if no repetitions have currently been defined or accessed, 354 * it will return zero. 355 */ 356 public int getApr3_LocationSelectionCriteriaReps() { 357 return this.getReps(3); 358 } 359 360 361 /** 362 * Inserts a repetition of 363 * APR-3: "Location Selection Criteria" at a specific index 364 * 365 * @param rep The repetition index (0-indexed) 366 * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions) 367 */ 368 public SCV insertLocationSelectionCriteria(int rep) throws HL7Exception { 369 return (SCV) super.insertRepetition(3, rep); 370 } 371 372 373 /** 374 * Inserts a repetition of 375 * APR-3: "Location Selection Criteria" at a specific index 376 * 377 * @param rep The repetition index (0-indexed) 378 * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions) 379 */ 380 public SCV insertApr3_LocationSelectionCriteria(int rep) throws HL7Exception { 381 return (SCV) super.insertRepetition(3, rep); 382 } 383 384 385 /** 386 * Removes a repetition of 387 * APR-3: "Location Selection Criteria" at a specific index 388 * 389 * @param rep The repetition index (0-indexed) 390 * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions) 391 */ 392 public SCV removeLocationSelectionCriteria(int rep) throws HL7Exception { 393 return (SCV) super.removeRepetition(3, rep); 394 } 395 396 397 /** 398 * Removes a repetition of 399 * APR-3: "Location Selection Criteria" at a specific index 400 * 401 * @param rep The repetition index (0-indexed) 402 * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions) 403 */ 404 public SCV removeApr3_LocationSelectionCriteria(int rep) throws HL7Exception { 405 return (SCV) super.removeRepetition(3, rep); 406 } 407 408 409 410 411 /** 412 * Returns 413 * APR-4: "Slot Spacing Criteria" - creates it if necessary 414 */ 415 public NM getSlotSpacingCriteria() { 416 NM retVal = this.getTypedField(4, 0); 417 return retVal; 418 } 419 420 /** 421 * Returns 422 * APR-4: "Slot Spacing Criteria" - creates it if necessary 423 */ 424 public NM getApr4_SlotSpacingCriteria() { 425 NM retVal = this.getTypedField(4, 0); 426 return retVal; 427 } 428 429 430 /** 431 * Returns all repetitions of Filler Override Criteria (APR-5). 432 */ 433 public SCV[] getFillerOverrideCriteria() { 434 SCV[] retVal = this.getTypedField(5, new SCV[0]); 435 return retVal; 436 } 437 438 439 /** 440 * Returns all repetitions of Filler Override Criteria (APR-5). 441 */ 442 public SCV[] getApr5_FillerOverrideCriteria() { 443 SCV[] retVal = this.getTypedField(5, new SCV[0]); 444 return retVal; 445 } 446 447 448 /** 449 * Returns a count of the current number of repetitions of Filler Override Criteria (APR-5). 450 * This method does not create a repetition, so if no repetitions have currently been defined or accessed, 451 * it will return zero. 452 */ 453 public int getFillerOverrideCriteriaReps() { 454 return this.getReps(5); 455 } 456 457 458 /** 459 * Returns a specific repetition of 460 * APR-5: "Filler Override Criteria" - creates it if necessary 461 * 462 * @param rep The repetition index (0-indexed) 463 */ 464 public SCV getFillerOverrideCriteria(int rep) { 465 SCV retVal = this.getTypedField(5, rep); 466 return retVal; 467 } 468 469 /** 470 * Returns a specific repetition of 471 * APR-5: "Filler Override Criteria" - creates it if necessary 472 * 473 * @param rep The repetition index (0-indexed) 474 */ 475 public SCV getApr5_FillerOverrideCriteria(int rep) { 476 SCV retVal = this.getTypedField(5, rep); 477 return retVal; 478 } 479 480 /** 481 * Returns a count of the current number of repetitions of Filler Override Criteria (APR-5). 482 * This method does not create a repetition, so if no repetitions have currently been defined or accessed, 483 * it will return zero. 484 */ 485 public int getApr5_FillerOverrideCriteriaReps() { 486 return this.getReps(5); 487 } 488 489 490 /** 491 * Inserts a repetition of 492 * APR-5: "Filler Override Criteria" at a specific index 493 * 494 * @param rep The repetition index (0-indexed) 495 * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions) 496 */ 497 public SCV insertFillerOverrideCriteria(int rep) throws HL7Exception { 498 return (SCV) super.insertRepetition(5, rep); 499 } 500 501 502 /** 503 * Inserts a repetition of 504 * APR-5: "Filler Override Criteria" at a specific index 505 * 506 * @param rep The repetition index (0-indexed) 507 * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions) 508 */ 509 public SCV insertApr5_FillerOverrideCriteria(int rep) throws HL7Exception { 510 return (SCV) super.insertRepetition(5, rep); 511 } 512 513 514 /** 515 * Removes a repetition of 516 * APR-5: "Filler Override Criteria" at a specific index 517 * 518 * @param rep The repetition index (0-indexed) 519 * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions) 520 */ 521 public SCV removeFillerOverrideCriteria(int rep) throws HL7Exception { 522 return (SCV) super.removeRepetition(5, rep); 523 } 524 525 526 /** 527 * Removes a repetition of 528 * APR-5: "Filler Override Criteria" at a specific index 529 * 530 * @param rep The repetition index (0-indexed) 531 * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions) 532 */ 533 public SCV removeApr5_FillerOverrideCriteria(int rep) throws HL7Exception { 534 return (SCV) super.removeRepetition(5, rep); 535 } 536 537 538 539 540 541 542 /** {@inheritDoc} */ 543 protected Type createNewTypeWithoutReflection(int field) { 544 switch (field) { 545 case 0: return new SCV(getMessage()); 546 case 1: return new SCV(getMessage()); 547 case 2: return new SCV(getMessage()); 548 case 3: return new NM(getMessage()); 549 case 4: return new SCV(getMessage()); 550 default: return null; 551 } 552 } 553 554 555 } 556