
001package org.hl7.fhir.r5.model; 002 003 004/* 005 Copyright (c) 2011+, HL7, Inc. 006 All rights reserved. 007 008 Redistribution and use in source and binary forms, with or without modification, \ 009 are permitted provided that the following conditions are met: 010 011 * Redistributions of source code must retain the above copyright notice, this \ 012 list of conditions and the following disclaimer. 013 * Redistributions in binary form must reproduce the above copyright notice, \ 014 this list of conditions and the following disclaimer in the documentation \ 015 and/or other materials provided with the distribution. 016 * Neither the name of HL7 nor the names of its contributors may be used to 017 endorse or promote products derived from this software without specific 018 prior written permission. 019 020 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND \ 021 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED \ 022 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. \ 023 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, \ 024 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT \ 025 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR \ 026 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, \ 027 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) \ 028 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE \ 029 POSSIBILITY OF SUCH DAMAGE. 030 */ 031 032// Generated on Sat, Nov 5, 2022 10:47+1100 for FHIR v5.0.0-ballot 033 034import java.util.ArrayList; 035import java.util.Date; 036import java.util.List; 037import org.hl7.fhir.utilities.Utilities; 038import org.hl7.fhir.r5.model.Enumerations.*; 039import org.hl7.fhir.instance.model.api.IBaseBackboneElement; 040import org.hl7.fhir.exceptions.FHIRException; 041import org.hl7.fhir.instance.model.api.ICompositeType; 042import ca.uhn.fhir.model.api.annotation.ResourceDef; 043import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; 044import org.hl7.fhir.instance.model.api.IBaseBackboneElement; 045import ca.uhn.fhir.model.api.annotation.Child; 046import ca.uhn.fhir.model.api.annotation.ChildOrder; 047import ca.uhn.fhir.model.api.annotation.Description; 048import ca.uhn.fhir.model.api.annotation.Block; 049 050/** 051 * A task to be performed. 052 */ 053@ResourceDef(name="Task", profile="http://hl7.org/fhir/StructureDefinition/Task") 054public class Task extends DomainResource { 055 056 public enum TaskIntent { 057 /** 058 * The intent is not known. When dealing with Task, it's not always known (or relevant) how the task was initiated - i.e. whether it was proposed, planned, ordered or just done spontaneously. 059 */ 060 UNKNOWN, 061 /** 062 * The request is a suggestion made by someone/something that does not have an intention to ensure it occurs and without providing an authorization to act. 063 */ 064 PROPOSAL, 065 /** 066 * The request represents an intention to ensure something occurs without providing an authorization for others to act. 067 */ 068 PLAN, 069 /** 070 * The request represents a request/demand and authorization for action by a Practitioner. 071 */ 072 ORDER, 073 /** 074 * The request represents an original authorization for action. 075 */ 076 ORIGINALORDER, 077 /** 078 * The request represents an automatically generated supplemental authorization for action based on a parent authorization together with initial results of the action taken against that parent authorization. 079 */ 080 REFLEXORDER, 081 /** 082 * The request represents the view of an authorization instantiated by a fulfilling system representing the details of the fulfiller's intention to act upon a submitted order. 083 */ 084 FILLERORDER, 085 /** 086 * An order created in fulfillment of a broader order that represents the authorization for a single activity occurrence. E.g. The administration of a single dose of a drug. 087 */ 088 INSTANCEORDER, 089 /** 090 * The request represents a component or option for a RequestOrchestration that establishes timing, conditionality and/or other constraints among a set of requests. Refer to [[[RequestOrchestration]]] for additional information on how this status is used. 091 */ 092 OPTION, 093 /** 094 * added to help the parsers with the generic types 095 */ 096 NULL; 097 public static TaskIntent fromCode(String codeString) throws FHIRException { 098 if (codeString == null || "".equals(codeString)) 099 return null; 100 if ("unknown".equals(codeString)) 101 return UNKNOWN; 102 if ("proposal".equals(codeString)) 103 return PROPOSAL; 104 if ("plan".equals(codeString)) 105 return PLAN; 106 if ("order".equals(codeString)) 107 return ORDER; 108 if ("original-order".equals(codeString)) 109 return ORIGINALORDER; 110 if ("reflex-order".equals(codeString)) 111 return REFLEXORDER; 112 if ("filler-order".equals(codeString)) 113 return FILLERORDER; 114 if ("instance-order".equals(codeString)) 115 return INSTANCEORDER; 116 if ("option".equals(codeString)) 117 return OPTION; 118 if (Configuration.isAcceptInvalidEnums()) 119 return null; 120 else 121 throw new FHIRException("Unknown TaskIntent code '"+codeString+"'"); 122 } 123 public String toCode() { 124 switch (this) { 125 case UNKNOWN: return "unknown"; 126 case PROPOSAL: return "proposal"; 127 case PLAN: return "plan"; 128 case ORDER: return "order"; 129 case ORIGINALORDER: return "original-order"; 130 case REFLEXORDER: return "reflex-order"; 131 case FILLERORDER: return "filler-order"; 132 case INSTANCEORDER: return "instance-order"; 133 case OPTION: return "option"; 134 case NULL: return null; 135 default: return "?"; 136 } 137 } 138 public String getSystem() { 139 switch (this) { 140 case UNKNOWN: return "http://hl7.org/fhir/task-intent"; 141 case PROPOSAL: return "http://hl7.org/fhir/request-intent"; 142 case PLAN: return "http://hl7.org/fhir/request-intent"; 143 case ORDER: return "http://hl7.org/fhir/request-intent"; 144 case ORIGINALORDER: return "http://hl7.org/fhir/request-intent"; 145 case REFLEXORDER: return "http://hl7.org/fhir/request-intent"; 146 case FILLERORDER: return "http://hl7.org/fhir/request-intent"; 147 case INSTANCEORDER: return "http://hl7.org/fhir/request-intent"; 148 case OPTION: return "http://hl7.org/fhir/request-intent"; 149 case NULL: return null; 150 default: return "?"; 151 } 152 } 153 public String getDefinition() { 154 switch (this) { 155 case UNKNOWN: return "The intent is not known. When dealing with Task, it's not always known (or relevant) how the task was initiated - i.e. whether it was proposed, planned, ordered or just done spontaneously."; 156 case PROPOSAL: return "The request is a suggestion made by someone/something that does not have an intention to ensure it occurs and without providing an authorization to act."; 157 case PLAN: return "The request represents an intention to ensure something occurs without providing an authorization for others to act."; 158 case ORDER: return "The request represents a request/demand and authorization for action by a Practitioner."; 159 case ORIGINALORDER: return "The request represents an original authorization for action."; 160 case REFLEXORDER: return "The request represents an automatically generated supplemental authorization for action based on a parent authorization together with initial results of the action taken against that parent authorization."; 161 case FILLERORDER: return "The request represents the view of an authorization instantiated by a fulfilling system representing the details of the fulfiller's intention to act upon a submitted order."; 162 case INSTANCEORDER: return "An order created in fulfillment of a broader order that represents the authorization for a single activity occurrence. E.g. The administration of a single dose of a drug."; 163 case OPTION: return "The request represents a component or option for a RequestOrchestration that establishes timing, conditionality and/or other constraints among a set of requests. Refer to [[[RequestOrchestration]]] for additional information on how this status is used."; 164 case NULL: return null; 165 default: return "?"; 166 } 167 } 168 public String getDisplay() { 169 switch (this) { 170 case UNKNOWN: return "Unknown"; 171 case PROPOSAL: return "Proposal"; 172 case PLAN: return "Plan"; 173 case ORDER: return "Order"; 174 case ORIGINALORDER: return "Original Order"; 175 case REFLEXORDER: return "Reflex Order"; 176 case FILLERORDER: return "Filler Order"; 177 case INSTANCEORDER: return "Instance Order"; 178 case OPTION: return "Option"; 179 case NULL: return null; 180 default: return "?"; 181 } 182 } 183 } 184 185 public static class TaskIntentEnumFactory implements EnumFactory<TaskIntent> { 186 public TaskIntent fromCode(String codeString) throws IllegalArgumentException { 187 if (codeString == null || "".equals(codeString)) 188 if (codeString == null || "".equals(codeString)) 189 return null; 190 if ("unknown".equals(codeString)) 191 return TaskIntent.UNKNOWN; 192 if ("proposal".equals(codeString)) 193 return TaskIntent.PROPOSAL; 194 if ("plan".equals(codeString)) 195 return TaskIntent.PLAN; 196 if ("order".equals(codeString)) 197 return TaskIntent.ORDER; 198 if ("original-order".equals(codeString)) 199 return TaskIntent.ORIGINALORDER; 200 if ("reflex-order".equals(codeString)) 201 return TaskIntent.REFLEXORDER; 202 if ("filler-order".equals(codeString)) 203 return TaskIntent.FILLERORDER; 204 if ("instance-order".equals(codeString)) 205 return TaskIntent.INSTANCEORDER; 206 if ("option".equals(codeString)) 207 return TaskIntent.OPTION; 208 throw new IllegalArgumentException("Unknown TaskIntent code '"+codeString+"'"); 209 } 210 public Enumeration<TaskIntent> fromType(Base code) throws FHIRException { 211 if (code == null) 212 return null; 213 if (code.isEmpty()) 214 return new Enumeration<TaskIntent>(this); 215 String codeString = ((PrimitiveType) code).asStringValue(); 216 if (codeString == null || "".equals(codeString)) 217 return null; 218 if ("unknown".equals(codeString)) 219 return new Enumeration<TaskIntent>(this, TaskIntent.UNKNOWN); 220 if ("proposal".equals(codeString)) 221 return new Enumeration<TaskIntent>(this, TaskIntent.PROPOSAL); 222 if ("plan".equals(codeString)) 223 return new Enumeration<TaskIntent>(this, TaskIntent.PLAN); 224 if ("order".equals(codeString)) 225 return new Enumeration<TaskIntent>(this, TaskIntent.ORDER); 226 if ("original-order".equals(codeString)) 227 return new Enumeration<TaskIntent>(this, TaskIntent.ORIGINALORDER); 228 if ("reflex-order".equals(codeString)) 229 return new Enumeration<TaskIntent>(this, TaskIntent.REFLEXORDER); 230 if ("filler-order".equals(codeString)) 231 return new Enumeration<TaskIntent>(this, TaskIntent.FILLERORDER); 232 if ("instance-order".equals(codeString)) 233 return new Enumeration<TaskIntent>(this, TaskIntent.INSTANCEORDER); 234 if ("option".equals(codeString)) 235 return new Enumeration<TaskIntent>(this, TaskIntent.OPTION); 236 throw new FHIRException("Unknown TaskIntent code '"+codeString+"'"); 237 } 238 public String toCode(TaskIntent code) { 239 if (code == TaskIntent.UNKNOWN) 240 return "unknown"; 241 if (code == TaskIntent.PROPOSAL) 242 return "proposal"; 243 if (code == TaskIntent.PLAN) 244 return "plan"; 245 if (code == TaskIntent.ORDER) 246 return "order"; 247 if (code == TaskIntent.ORIGINALORDER) 248 return "original-order"; 249 if (code == TaskIntent.REFLEXORDER) 250 return "reflex-order"; 251 if (code == TaskIntent.FILLERORDER) 252 return "filler-order"; 253 if (code == TaskIntent.INSTANCEORDER) 254 return "instance-order"; 255 if (code == TaskIntent.OPTION) 256 return "option"; 257 return "?"; 258 } 259 public String toSystem(TaskIntent code) { 260 return code.getSystem(); 261 } 262 } 263 264 public enum TaskStatus { 265 /** 266 * The task is not yet ready to be acted upon. 267 */ 268 DRAFT, 269 /** 270 * The task is ready to be acted upon and action is sought. 271 */ 272 REQUESTED, 273 /** 274 * A potential performer has claimed ownership of the task and is evaluating whether to perform it. 275 */ 276 RECEIVED, 277 /** 278 * The potential performer has agreed to execute the task but has not yet started work. 279 */ 280 ACCEPTED, 281 /** 282 * The potential performer who claimed ownership of the task has decided not to execute it prior to performing any action. 283 */ 284 REJECTED, 285 /** 286 * The task is ready to be performed, but no action has yet been taken. Used in place of requested/received/accepted/rejected when request assignment and acceptance is a given. 287 */ 288 READY, 289 /** 290 * The task was not completed. 291 */ 292 CANCELLED, 293 /** 294 * The task has been started but is not yet complete. 295 */ 296 INPROGRESS, 297 /** 298 * The task has been started but work has been paused. 299 */ 300 ONHOLD, 301 /** 302 * The task was attempted but could not be completed due to some error. 303 */ 304 FAILED, 305 /** 306 * The task has been completed. 307 */ 308 COMPLETED, 309 /** 310 * The task should never have existed and is retained only because of the possibility it may have used. 311 */ 312 ENTEREDINERROR, 313 /** 314 * added to help the parsers with the generic types 315 */ 316 NULL; 317 public static TaskStatus fromCode(String codeString) throws FHIRException { 318 if (codeString == null || "".equals(codeString)) 319 return null; 320 if ("draft".equals(codeString)) 321 return DRAFT; 322 if ("requested".equals(codeString)) 323 return REQUESTED; 324 if ("received".equals(codeString)) 325 return RECEIVED; 326 if ("accepted".equals(codeString)) 327 return ACCEPTED; 328 if ("rejected".equals(codeString)) 329 return REJECTED; 330 if ("ready".equals(codeString)) 331 return READY; 332 if ("cancelled".equals(codeString)) 333 return CANCELLED; 334 if ("in-progress".equals(codeString)) 335 return INPROGRESS; 336 if ("on-hold".equals(codeString)) 337 return ONHOLD; 338 if ("failed".equals(codeString)) 339 return FAILED; 340 if ("completed".equals(codeString)) 341 return COMPLETED; 342 if ("entered-in-error".equals(codeString)) 343 return ENTEREDINERROR; 344 if (Configuration.isAcceptInvalidEnums()) 345 return null; 346 else 347 throw new FHIRException("Unknown TaskStatus code '"+codeString+"'"); 348 } 349 public String toCode() { 350 switch (this) { 351 case DRAFT: return "draft"; 352 case REQUESTED: return "requested"; 353 case RECEIVED: return "received"; 354 case ACCEPTED: return "accepted"; 355 case REJECTED: return "rejected"; 356 case READY: return "ready"; 357 case CANCELLED: return "cancelled"; 358 case INPROGRESS: return "in-progress"; 359 case ONHOLD: return "on-hold"; 360 case FAILED: return "failed"; 361 case COMPLETED: return "completed"; 362 case ENTEREDINERROR: return "entered-in-error"; 363 case NULL: return null; 364 default: return "?"; 365 } 366 } 367 public String getSystem() { 368 switch (this) { 369 case DRAFT: return "http://hl7.org/fhir/task-status"; 370 case REQUESTED: return "http://hl7.org/fhir/task-status"; 371 case RECEIVED: return "http://hl7.org/fhir/task-status"; 372 case ACCEPTED: return "http://hl7.org/fhir/task-status"; 373 case REJECTED: return "http://hl7.org/fhir/task-status"; 374 case READY: return "http://hl7.org/fhir/task-status"; 375 case CANCELLED: return "http://hl7.org/fhir/task-status"; 376 case INPROGRESS: return "http://hl7.org/fhir/task-status"; 377 case ONHOLD: return "http://hl7.org/fhir/task-status"; 378 case FAILED: return "http://hl7.org/fhir/task-status"; 379 case COMPLETED: return "http://hl7.org/fhir/task-status"; 380 case ENTEREDINERROR: return "http://hl7.org/fhir/task-status"; 381 case NULL: return null; 382 default: return "?"; 383 } 384 } 385 public String getDefinition() { 386 switch (this) { 387 case DRAFT: return "The task is not yet ready to be acted upon."; 388 case REQUESTED: return "The task is ready to be acted upon and action is sought."; 389 case RECEIVED: return "A potential performer has claimed ownership of the task and is evaluating whether to perform it."; 390 case ACCEPTED: return "The potential performer has agreed to execute the task but has not yet started work."; 391 case REJECTED: return "The potential performer who claimed ownership of the task has decided not to execute it prior to performing any action."; 392 case READY: return "The task is ready to be performed, but no action has yet been taken. Used in place of requested/received/accepted/rejected when request assignment and acceptance is a given."; 393 case CANCELLED: return "The task was not completed."; 394 case INPROGRESS: return "The task has been started but is not yet complete."; 395 case ONHOLD: return "The task has been started but work has been paused."; 396 case FAILED: return "The task was attempted but could not be completed due to some error."; 397 case COMPLETED: return "The task has been completed."; 398 case ENTEREDINERROR: return "The task should never have existed and is retained only because of the possibility it may have used."; 399 case NULL: return null; 400 default: return "?"; 401 } 402 } 403 public String getDisplay() { 404 switch (this) { 405 case DRAFT: return "Draft"; 406 case REQUESTED: return "Requested"; 407 case RECEIVED: return "Received"; 408 case ACCEPTED: return "Accepted"; 409 case REJECTED: return "Rejected"; 410 case READY: return "Ready"; 411 case CANCELLED: return "Cancelled"; 412 case INPROGRESS: return "In Progress"; 413 case ONHOLD: return "On Hold"; 414 case FAILED: return "Failed"; 415 case COMPLETED: return "Completed"; 416 case ENTEREDINERROR: return "Entered in Error"; 417 case NULL: return null; 418 default: return "?"; 419 } 420 } 421 } 422 423 public static class TaskStatusEnumFactory implements EnumFactory<TaskStatus> { 424 public TaskStatus fromCode(String codeString) throws IllegalArgumentException { 425 if (codeString == null || "".equals(codeString)) 426 if (codeString == null || "".equals(codeString)) 427 return null; 428 if ("draft".equals(codeString)) 429 return TaskStatus.DRAFT; 430 if ("requested".equals(codeString)) 431 return TaskStatus.REQUESTED; 432 if ("received".equals(codeString)) 433 return TaskStatus.RECEIVED; 434 if ("accepted".equals(codeString)) 435 return TaskStatus.ACCEPTED; 436 if ("rejected".equals(codeString)) 437 return TaskStatus.REJECTED; 438 if ("ready".equals(codeString)) 439 return TaskStatus.READY; 440 if ("cancelled".equals(codeString)) 441 return TaskStatus.CANCELLED; 442 if ("in-progress".equals(codeString)) 443 return TaskStatus.INPROGRESS; 444 if ("on-hold".equals(codeString)) 445 return TaskStatus.ONHOLD; 446 if ("failed".equals(codeString)) 447 return TaskStatus.FAILED; 448 if ("completed".equals(codeString)) 449 return TaskStatus.COMPLETED; 450 if ("entered-in-error".equals(codeString)) 451 return TaskStatus.ENTEREDINERROR; 452 throw new IllegalArgumentException("Unknown TaskStatus code '"+codeString+"'"); 453 } 454 public Enumeration<TaskStatus> fromType(Base code) throws FHIRException { 455 if (code == null) 456 return null; 457 if (code.isEmpty()) 458 return new Enumeration<TaskStatus>(this); 459 String codeString = ((PrimitiveType) code).asStringValue(); 460 if (codeString == null || "".equals(codeString)) 461 return null; 462 if ("draft".equals(codeString)) 463 return new Enumeration<TaskStatus>(this, TaskStatus.DRAFT); 464 if ("requested".equals(codeString)) 465 return new Enumeration<TaskStatus>(this, TaskStatus.REQUESTED); 466 if ("received".equals(codeString)) 467 return new Enumeration<TaskStatus>(this, TaskStatus.RECEIVED); 468 if ("accepted".equals(codeString)) 469 return new Enumeration<TaskStatus>(this, TaskStatus.ACCEPTED); 470 if ("rejected".equals(codeString)) 471 return new Enumeration<TaskStatus>(this, TaskStatus.REJECTED); 472 if ("ready".equals(codeString)) 473 return new Enumeration<TaskStatus>(this, TaskStatus.READY); 474 if ("cancelled".equals(codeString)) 475 return new Enumeration<TaskStatus>(this, TaskStatus.CANCELLED); 476 if ("in-progress".equals(codeString)) 477 return new Enumeration<TaskStatus>(this, TaskStatus.INPROGRESS); 478 if ("on-hold".equals(codeString)) 479 return new Enumeration<TaskStatus>(this, TaskStatus.ONHOLD); 480 if ("failed".equals(codeString)) 481 return new Enumeration<TaskStatus>(this, TaskStatus.FAILED); 482 if ("completed".equals(codeString)) 483 return new Enumeration<TaskStatus>(this, TaskStatus.COMPLETED); 484 if ("entered-in-error".equals(codeString)) 485 return new Enumeration<TaskStatus>(this, TaskStatus.ENTEREDINERROR); 486 throw new FHIRException("Unknown TaskStatus code '"+codeString+"'"); 487 } 488 public String toCode(TaskStatus code) { 489 if (code == TaskStatus.DRAFT) 490 return "draft"; 491 if (code == TaskStatus.REQUESTED) 492 return "requested"; 493 if (code == TaskStatus.RECEIVED) 494 return "received"; 495 if (code == TaskStatus.ACCEPTED) 496 return "accepted"; 497 if (code == TaskStatus.REJECTED) 498 return "rejected"; 499 if (code == TaskStatus.READY) 500 return "ready"; 501 if (code == TaskStatus.CANCELLED) 502 return "cancelled"; 503 if (code == TaskStatus.INPROGRESS) 504 return "in-progress"; 505 if (code == TaskStatus.ONHOLD) 506 return "on-hold"; 507 if (code == TaskStatus.FAILED) 508 return "failed"; 509 if (code == TaskStatus.COMPLETED) 510 return "completed"; 511 if (code == TaskStatus.ENTEREDINERROR) 512 return "entered-in-error"; 513 return "?"; 514 } 515 public String toSystem(TaskStatus code) { 516 return code.getSystem(); 517 } 518 } 519 520 @Block() 521 public static class TaskRestrictionComponent extends BackboneElement implements IBaseBackboneElement { 522 /** 523 * Indicates the number of times the requested action should occur. 524 */ 525 @Child(name = "repetitions", type = {PositiveIntType.class}, order=1, min=0, max=1, modifier=false, summary=false) 526 @Description(shortDefinition="How many times to repeat", formalDefinition="Indicates the number of times the requested action should occur." ) 527 protected PositiveIntType repetitions; 528 529 /** 530 * The time-period for which fulfillment is sought. This must fall within the overall time period authorized in the referenced request. E.g. ServiceRequest.occurance[x]. 531 */ 532 @Child(name = "period", type = {Period.class}, order=2, min=0, max=1, modifier=false, summary=false) 533 @Description(shortDefinition="When fulfillment is sought", formalDefinition="The time-period for which fulfillment is sought. This must fall within the overall time period authorized in the referenced request. E.g. ServiceRequest.occurance[x]." ) 534 protected Period period; 535 536 /** 537 * For requests that are targeted to more than one potential recipient/target, to identify who is fulfillment is sought for. 538 */ 539 @Child(name = "recipient", type = {Patient.class, Practitioner.class, PractitionerRole.class, RelatedPerson.class, Group.class, Organization.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 540 @Description(shortDefinition="For whom is fulfillment sought?", formalDefinition="For requests that are targeted to more than one potential recipient/target, to identify who is fulfillment is sought for." ) 541 protected List<Reference> recipient; 542 543 private static final long serialVersionUID = 1673996066L; 544 545 /** 546 * Constructor 547 */ 548 public TaskRestrictionComponent() { 549 super(); 550 } 551 552 /** 553 * @return {@link #repetitions} (Indicates the number of times the requested action should occur.). This is the underlying object with id, value and extensions. The accessor "getRepetitions" gives direct access to the value 554 */ 555 public PositiveIntType getRepetitionsElement() { 556 if (this.repetitions == null) 557 if (Configuration.errorOnAutoCreate()) 558 throw new Error("Attempt to auto-create TaskRestrictionComponent.repetitions"); 559 else if (Configuration.doAutoCreate()) 560 this.repetitions = new PositiveIntType(); // bb 561 return this.repetitions; 562 } 563 564 public boolean hasRepetitionsElement() { 565 return this.repetitions != null && !this.repetitions.isEmpty(); 566 } 567 568 public boolean hasRepetitions() { 569 return this.repetitions != null && !this.repetitions.isEmpty(); 570 } 571 572 /** 573 * @param value {@link #repetitions} (Indicates the number of times the requested action should occur.). This is the underlying object with id, value and extensions. The accessor "getRepetitions" gives direct access to the value 574 */ 575 public TaskRestrictionComponent setRepetitionsElement(PositiveIntType value) { 576 this.repetitions = value; 577 return this; 578 } 579 580 /** 581 * @return Indicates the number of times the requested action should occur. 582 */ 583 public int getRepetitions() { 584 return this.repetitions == null || this.repetitions.isEmpty() ? 0 : this.repetitions.getValue(); 585 } 586 587 /** 588 * @param value Indicates the number of times the requested action should occur. 589 */ 590 public TaskRestrictionComponent setRepetitions(int value) { 591 if (this.repetitions == null) 592 this.repetitions = new PositiveIntType(); 593 this.repetitions.setValue(value); 594 return this; 595 } 596 597 /** 598 * @return {@link #period} (The time-period for which fulfillment is sought. This must fall within the overall time period authorized in the referenced request. E.g. ServiceRequest.occurance[x].) 599 */ 600 public Period getPeriod() { 601 if (this.period == null) 602 if (Configuration.errorOnAutoCreate()) 603 throw new Error("Attempt to auto-create TaskRestrictionComponent.period"); 604 else if (Configuration.doAutoCreate()) 605 this.period = new Period(); // cc 606 return this.period; 607 } 608 609 public boolean hasPeriod() { 610 return this.period != null && !this.period.isEmpty(); 611 } 612 613 /** 614 * @param value {@link #period} (The time-period for which fulfillment is sought. This must fall within the overall time period authorized in the referenced request. E.g. ServiceRequest.occurance[x].) 615 */ 616 public TaskRestrictionComponent setPeriod(Period value) { 617 this.period = value; 618 return this; 619 } 620 621 /** 622 * @return {@link #recipient} (For requests that are targeted to more than one potential recipient/target, to identify who is fulfillment is sought for.) 623 */ 624 public List<Reference> getRecipient() { 625 if (this.recipient == null) 626 this.recipient = new ArrayList<Reference>(); 627 return this.recipient; 628 } 629 630 /** 631 * @return Returns a reference to <code>this</code> for easy method chaining 632 */ 633 public TaskRestrictionComponent setRecipient(List<Reference> theRecipient) { 634 this.recipient = theRecipient; 635 return this; 636 } 637 638 public boolean hasRecipient() { 639 if (this.recipient == null) 640 return false; 641 for (Reference item : this.recipient) 642 if (!item.isEmpty()) 643 return true; 644 return false; 645 } 646 647 public Reference addRecipient() { //3 648 Reference t = new Reference(); 649 if (this.recipient == null) 650 this.recipient = new ArrayList<Reference>(); 651 this.recipient.add(t); 652 return t; 653 } 654 655 public TaskRestrictionComponent addRecipient(Reference t) { //3 656 if (t == null) 657 return this; 658 if (this.recipient == null) 659 this.recipient = new ArrayList<Reference>(); 660 this.recipient.add(t); 661 return this; 662 } 663 664 /** 665 * @return The first repetition of repeating field {@link #recipient}, creating it if it does not already exist {3} 666 */ 667 public Reference getRecipientFirstRep() { 668 if (getRecipient().isEmpty()) { 669 addRecipient(); 670 } 671 return getRecipient().get(0); 672 } 673 674 protected void listChildren(List<Property> children) { 675 super.listChildren(children); 676 children.add(new Property("repetitions", "positiveInt", "Indicates the number of times the requested action should occur.", 0, 1, repetitions)); 677 children.add(new Property("period", "Period", "The time-period for which fulfillment is sought. This must fall within the overall time period authorized in the referenced request. E.g. ServiceRequest.occurance[x].", 0, 1, period)); 678 children.add(new Property("recipient", "Reference(Patient|Practitioner|PractitionerRole|RelatedPerson|Group|Organization)", "For requests that are targeted to more than one potential recipient/target, to identify who is fulfillment is sought for.", 0, java.lang.Integer.MAX_VALUE, recipient)); 679 } 680 681 @Override 682 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 683 switch (_hash) { 684 case 984367650: /*repetitions*/ return new Property("repetitions", "positiveInt", "Indicates the number of times the requested action should occur.", 0, 1, repetitions); 685 case -991726143: /*period*/ return new Property("period", "Period", "The time-period for which fulfillment is sought. This must fall within the overall time period authorized in the referenced request. E.g. ServiceRequest.occurance[x].", 0, 1, period); 686 case 820081177: /*recipient*/ return new Property("recipient", "Reference(Patient|Practitioner|PractitionerRole|RelatedPerson|Group|Organization)", "For requests that are targeted to more than one potential recipient/target, to identify who is fulfillment is sought for.", 0, java.lang.Integer.MAX_VALUE, recipient); 687 default: return super.getNamedProperty(_hash, _name, _checkValid); 688 } 689 690 } 691 692 @Override 693 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 694 switch (hash) { 695 case 984367650: /*repetitions*/ return this.repetitions == null ? new Base[0] : new Base[] {this.repetitions}; // PositiveIntType 696 case -991726143: /*period*/ return this.period == null ? new Base[0] : new Base[] {this.period}; // Period 697 case 820081177: /*recipient*/ return this.recipient == null ? new Base[0] : this.recipient.toArray(new Base[this.recipient.size()]); // Reference 698 default: return super.getProperty(hash, name, checkValid); 699 } 700 701 } 702 703 @Override 704 public Base setProperty(int hash, String name, Base value) throws FHIRException { 705 switch (hash) { 706 case 984367650: // repetitions 707 this.repetitions = TypeConvertor.castToPositiveInt(value); // PositiveIntType 708 return value; 709 case -991726143: // period 710 this.period = TypeConvertor.castToPeriod(value); // Period 711 return value; 712 case 820081177: // recipient 713 this.getRecipient().add(TypeConvertor.castToReference(value)); // Reference 714 return value; 715 default: return super.setProperty(hash, name, value); 716 } 717 718 } 719 720 @Override 721 public Base setProperty(String name, Base value) throws FHIRException { 722 if (name.equals("repetitions")) { 723 this.repetitions = TypeConvertor.castToPositiveInt(value); // PositiveIntType 724 } else if (name.equals("period")) { 725 this.period = TypeConvertor.castToPeriod(value); // Period 726 } else if (name.equals("recipient")) { 727 this.getRecipient().add(TypeConvertor.castToReference(value)); 728 } else 729 return super.setProperty(name, value); 730 return value; 731 } 732 733 @Override 734 public Base makeProperty(int hash, String name) throws FHIRException { 735 switch (hash) { 736 case 984367650: return getRepetitionsElement(); 737 case -991726143: return getPeriod(); 738 case 820081177: return addRecipient(); 739 default: return super.makeProperty(hash, name); 740 } 741 742 } 743 744 @Override 745 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 746 switch (hash) { 747 case 984367650: /*repetitions*/ return new String[] {"positiveInt"}; 748 case -991726143: /*period*/ return new String[] {"Period"}; 749 case 820081177: /*recipient*/ return new String[] {"Reference"}; 750 default: return super.getTypesForProperty(hash, name); 751 } 752 753 } 754 755 @Override 756 public Base addChild(String name) throws FHIRException { 757 if (name.equals("repetitions")) { 758 throw new FHIRException("Cannot call addChild on a primitive type Task.restriction.repetitions"); 759 } 760 else if (name.equals("period")) { 761 this.period = new Period(); 762 return this.period; 763 } 764 else if (name.equals("recipient")) { 765 return addRecipient(); 766 } 767 else 768 return super.addChild(name); 769 } 770 771 public TaskRestrictionComponent copy() { 772 TaskRestrictionComponent dst = new TaskRestrictionComponent(); 773 copyValues(dst); 774 return dst; 775 } 776 777 public void copyValues(TaskRestrictionComponent dst) { 778 super.copyValues(dst); 779 dst.repetitions = repetitions == null ? null : repetitions.copy(); 780 dst.period = period == null ? null : period.copy(); 781 if (recipient != null) { 782 dst.recipient = new ArrayList<Reference>(); 783 for (Reference i : recipient) 784 dst.recipient.add(i.copy()); 785 }; 786 } 787 788 @Override 789 public boolean equalsDeep(Base other_) { 790 if (!super.equalsDeep(other_)) 791 return false; 792 if (!(other_ instanceof TaskRestrictionComponent)) 793 return false; 794 TaskRestrictionComponent o = (TaskRestrictionComponent) other_; 795 return compareDeep(repetitions, o.repetitions, true) && compareDeep(period, o.period, true) && compareDeep(recipient, o.recipient, true) 796 ; 797 } 798 799 @Override 800 public boolean equalsShallow(Base other_) { 801 if (!super.equalsShallow(other_)) 802 return false; 803 if (!(other_ instanceof TaskRestrictionComponent)) 804 return false; 805 TaskRestrictionComponent o = (TaskRestrictionComponent) other_; 806 return compareValues(repetitions, o.repetitions, true); 807 } 808 809 public boolean isEmpty() { 810 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(repetitions, period, recipient 811 ); 812 } 813 814 public String fhirType() { 815 return "Task.restriction"; 816 817 } 818 819 } 820 821 @Block() 822 public static class TaskInputComponent extends BackboneElement implements IBaseBackboneElement { 823 /** 824 * A code or description indicating how the input is intended to be used as part of the task execution. 825 */ 826 @Child(name = "type", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=false) 827 @Description(shortDefinition="Label for the input", formalDefinition="A code or description indicating how the input is intended to be used as part of the task execution." ) 828 protected CodeableConcept type; 829 830 /** 831 * The value of the input parameter as a basic type. 832 */ 833 @Child(name = "value", type = {Base64BinaryType.class, BooleanType.class, CanonicalType.class, CodeType.class, DateType.class, DateTimeType.class, DecimalType.class, IdType.class, InstantType.class, IntegerType.class, Integer64Type.class, MarkdownType.class, OidType.class, PositiveIntType.class, StringType.class, TimeType.class, UnsignedIntType.class, UriType.class, UrlType.class, UuidType.class, Address.class, Age.class, Annotation.class, Attachment.class, CodeableConcept.class, CodeableReference.class, Coding.class, ContactPoint.class, Count.class, Distance.class, Duration.class, HumanName.class, Identifier.class, Money.class, Period.class, Quantity.class, Range.class, Ratio.class, RatioRange.class, Reference.class, SampledData.class, Signature.class, Timing.class, ContactDetail.class, DataRequirement.class, Expression.class, ParameterDefinition.class, RelatedArtifact.class, TriggerDefinition.class, UsageContext.class, Availability.class, ExtendedContactDetail.class, Dosage.class, Meta.class}, order=2, min=1, max=1, modifier=false, summary=false) 834 @Description(shortDefinition="Content to use in performing the task", formalDefinition="The value of the input parameter as a basic type." ) 835 protected DataType value; 836 837 private static final long serialVersionUID = -1659186716L; 838 839 /** 840 * Constructor 841 */ 842 public TaskInputComponent() { 843 super(); 844 } 845 846 /** 847 * Constructor 848 */ 849 public TaskInputComponent(CodeableConcept type, DataType value) { 850 super(); 851 this.setType(type); 852 this.setValue(value); 853 } 854 855 /** 856 * @return {@link #type} (A code or description indicating how the input is intended to be used as part of the task execution.) 857 */ 858 public CodeableConcept getType() { 859 if (this.type == null) 860 if (Configuration.errorOnAutoCreate()) 861 throw new Error("Attempt to auto-create TaskInputComponent.type"); 862 else if (Configuration.doAutoCreate()) 863 this.type = new CodeableConcept(); // cc 864 return this.type; 865 } 866 867 public boolean hasType() { 868 return this.type != null && !this.type.isEmpty(); 869 } 870 871 /** 872 * @param value {@link #type} (A code or description indicating how the input is intended to be used as part of the task execution.) 873 */ 874 public TaskInputComponent setType(CodeableConcept value) { 875 this.type = value; 876 return this; 877 } 878 879 /** 880 * @return {@link #value} (The value of the input parameter as a basic type.) 881 */ 882 public DataType getValue() { 883 return this.value; 884 } 885 886 /** 887 * @return {@link #value} (The value of the input parameter as a basic type.) 888 */ 889 public Base64BinaryType getValueBase64BinaryType() throws FHIRException { 890 if (this.value == null) 891 this.value = new Base64BinaryType(); 892 if (!(this.value instanceof Base64BinaryType)) 893 throw new FHIRException("Type mismatch: the type Base64BinaryType was expected, but "+this.value.getClass().getName()+" was encountered"); 894 return (Base64BinaryType) this.value; 895 } 896 897 public boolean hasValueBase64BinaryType() { 898 return this != null && this.value instanceof Base64BinaryType; 899 } 900 901 /** 902 * @return {@link #value} (The value of the input parameter as a basic type.) 903 */ 904 public BooleanType getValueBooleanType() throws FHIRException { 905 if (this.value == null) 906 this.value = new BooleanType(); 907 if (!(this.value instanceof BooleanType)) 908 throw new FHIRException("Type mismatch: the type BooleanType was expected, but "+this.value.getClass().getName()+" was encountered"); 909 return (BooleanType) this.value; 910 } 911 912 public boolean hasValueBooleanType() { 913 return this != null && this.value instanceof BooleanType; 914 } 915 916 /** 917 * @return {@link #value} (The value of the input parameter as a basic type.) 918 */ 919 public CanonicalType getValueCanonicalType() throws FHIRException { 920 if (this.value == null) 921 this.value = new CanonicalType(); 922 if (!(this.value instanceof CanonicalType)) 923 throw new FHIRException("Type mismatch: the type CanonicalType was expected, but "+this.value.getClass().getName()+" was encountered"); 924 return (CanonicalType) this.value; 925 } 926 927 public boolean hasValueCanonicalType() { 928 return this != null && this.value instanceof CanonicalType; 929 } 930 931 /** 932 * @return {@link #value} (The value of the input parameter as a basic type.) 933 */ 934 public CodeType getValueCodeType() throws FHIRException { 935 if (this.value == null) 936 this.value = new CodeType(); 937 if (!(this.value instanceof CodeType)) 938 throw new FHIRException("Type mismatch: the type CodeType was expected, but "+this.value.getClass().getName()+" was encountered"); 939 return (CodeType) this.value; 940 } 941 942 public boolean hasValueCodeType() { 943 return this != null && this.value instanceof CodeType; 944 } 945 946 /** 947 * @return {@link #value} (The value of the input parameter as a basic type.) 948 */ 949 public DateType getValueDateType() throws FHIRException { 950 if (this.value == null) 951 this.value = new DateType(); 952 if (!(this.value instanceof DateType)) 953 throw new FHIRException("Type mismatch: the type DateType was expected, but "+this.value.getClass().getName()+" was encountered"); 954 return (DateType) this.value; 955 } 956 957 public boolean hasValueDateType() { 958 return this != null && this.value instanceof DateType; 959 } 960 961 /** 962 * @return {@link #value} (The value of the input parameter as a basic type.) 963 */ 964 public DateTimeType getValueDateTimeType() throws FHIRException { 965 if (this.value == null) 966 this.value = new DateTimeType(); 967 if (!(this.value instanceof DateTimeType)) 968 throw new FHIRException("Type mismatch: the type DateTimeType was expected, but "+this.value.getClass().getName()+" was encountered"); 969 return (DateTimeType) this.value; 970 } 971 972 public boolean hasValueDateTimeType() { 973 return this != null && this.value instanceof DateTimeType; 974 } 975 976 /** 977 * @return {@link #value} (The value of the input parameter as a basic type.) 978 */ 979 public DecimalType getValueDecimalType() throws FHIRException { 980 if (this.value == null) 981 this.value = new DecimalType(); 982 if (!(this.value instanceof DecimalType)) 983 throw new FHIRException("Type mismatch: the type DecimalType was expected, but "+this.value.getClass().getName()+" was encountered"); 984 return (DecimalType) this.value; 985 } 986 987 public boolean hasValueDecimalType() { 988 return this != null && this.value instanceof DecimalType; 989 } 990 991 /** 992 * @return {@link #value} (The value of the input parameter as a basic type.) 993 */ 994 public IdType getValueIdType() throws FHIRException { 995 if (this.value == null) 996 this.value = new IdType(); 997 if (!(this.value instanceof IdType)) 998 throw new FHIRException("Type mismatch: the type IdType was expected, but "+this.value.getClass().getName()+" was encountered"); 999 return (IdType) this.value; 1000 } 1001 1002 public boolean hasValueIdType() { 1003 return this != null && this.value instanceof IdType; 1004 } 1005 1006 /** 1007 * @return {@link #value} (The value of the input parameter as a basic type.) 1008 */ 1009 public InstantType getValueInstantType() throws FHIRException { 1010 if (this.value == null) 1011 this.value = new InstantType(); 1012 if (!(this.value instanceof InstantType)) 1013 throw new FHIRException("Type mismatch: the type InstantType was expected, but "+this.value.getClass().getName()+" was encountered"); 1014 return (InstantType) this.value; 1015 } 1016 1017 public boolean hasValueInstantType() { 1018 return this != null && this.value instanceof InstantType; 1019 } 1020 1021 /** 1022 * @return {@link #value} (The value of the input parameter as a basic type.) 1023 */ 1024 public IntegerType getValueIntegerType() throws FHIRException { 1025 if (this.value == null) 1026 this.value = new IntegerType(); 1027 if (!(this.value instanceof IntegerType)) 1028 throw new FHIRException("Type mismatch: the type IntegerType was expected, but "+this.value.getClass().getName()+" was encountered"); 1029 return (IntegerType) this.value; 1030 } 1031 1032 public boolean hasValueIntegerType() { 1033 return this != null && this.value instanceof IntegerType; 1034 } 1035 1036 /** 1037 * @return {@link #value} (The value of the input parameter as a basic type.) 1038 */ 1039 public Integer64Type getValueInteger64Type() throws FHIRException { 1040 if (this.value == null) 1041 this.value = new Integer64Type(); 1042 if (!(this.value instanceof Integer64Type)) 1043 throw new FHIRException("Type mismatch: the type Integer64Type was expected, but "+this.value.getClass().getName()+" was encountered"); 1044 return (Integer64Type) this.value; 1045 } 1046 1047 public boolean hasValueInteger64Type() { 1048 return this != null && this.value instanceof Integer64Type; 1049 } 1050 1051 /** 1052 * @return {@link #value} (The value of the input parameter as a basic type.) 1053 */ 1054 public MarkdownType getValueMarkdownType() throws FHIRException { 1055 if (this.value == null) 1056 this.value = new MarkdownType(); 1057 if (!(this.value instanceof MarkdownType)) 1058 throw new FHIRException("Type mismatch: the type MarkdownType was expected, but "+this.value.getClass().getName()+" was encountered"); 1059 return (MarkdownType) this.value; 1060 } 1061 1062 public boolean hasValueMarkdownType() { 1063 return this != null && this.value instanceof MarkdownType; 1064 } 1065 1066 /** 1067 * @return {@link #value} (The value of the input parameter as a basic type.) 1068 */ 1069 public OidType getValueOidType() throws FHIRException { 1070 if (this.value == null) 1071 this.value = new OidType(); 1072 if (!(this.value instanceof OidType)) 1073 throw new FHIRException("Type mismatch: the type OidType was expected, but "+this.value.getClass().getName()+" was encountered"); 1074 return (OidType) this.value; 1075 } 1076 1077 public boolean hasValueOidType() { 1078 return this != null && this.value instanceof OidType; 1079 } 1080 1081 /** 1082 * @return {@link #value} (The value of the input parameter as a basic type.) 1083 */ 1084 public PositiveIntType getValuePositiveIntType() throws FHIRException { 1085 if (this.value == null) 1086 this.value = new PositiveIntType(); 1087 if (!(this.value instanceof PositiveIntType)) 1088 throw new FHIRException("Type mismatch: the type PositiveIntType was expected, but "+this.value.getClass().getName()+" was encountered"); 1089 return (PositiveIntType) this.value; 1090 } 1091 1092 public boolean hasValuePositiveIntType() { 1093 return this != null && this.value instanceof PositiveIntType; 1094 } 1095 1096 /** 1097 * @return {@link #value} (The value of the input parameter as a basic type.) 1098 */ 1099 public StringType getValueStringType() throws FHIRException { 1100 if (this.value == null) 1101 this.value = new StringType(); 1102 if (!(this.value instanceof StringType)) 1103 throw new FHIRException("Type mismatch: the type StringType was expected, but "+this.value.getClass().getName()+" was encountered"); 1104 return (StringType) this.value; 1105 } 1106 1107 public boolean hasValueStringType() { 1108 return this != null && this.value instanceof StringType; 1109 } 1110 1111 /** 1112 * @return {@link #value} (The value of the input parameter as a basic type.) 1113 */ 1114 public TimeType getValueTimeType() throws FHIRException { 1115 if (this.value == null) 1116 this.value = new TimeType(); 1117 if (!(this.value instanceof TimeType)) 1118 throw new FHIRException("Type mismatch: the type TimeType was expected, but "+this.value.getClass().getName()+" was encountered"); 1119 return (TimeType) this.value; 1120 } 1121 1122 public boolean hasValueTimeType() { 1123 return this != null && this.value instanceof TimeType; 1124 } 1125 1126 /** 1127 * @return {@link #value} (The value of the input parameter as a basic type.) 1128 */ 1129 public UnsignedIntType getValueUnsignedIntType() throws FHIRException { 1130 if (this.value == null) 1131 this.value = new UnsignedIntType(); 1132 if (!(this.value instanceof UnsignedIntType)) 1133 throw new FHIRException("Type mismatch: the type UnsignedIntType was expected, but "+this.value.getClass().getName()+" was encountered"); 1134 return (UnsignedIntType) this.value; 1135 } 1136 1137 public boolean hasValueUnsignedIntType() { 1138 return this != null && this.value instanceof UnsignedIntType; 1139 } 1140 1141 /** 1142 * @return {@link #value} (The value of the input parameter as a basic type.) 1143 */ 1144 public UriType getValueUriType() throws FHIRException { 1145 if (this.value == null) 1146 this.value = new UriType(); 1147 if (!(this.value instanceof UriType)) 1148 throw new FHIRException("Type mismatch: the type UriType was expected, but "+this.value.getClass().getName()+" was encountered"); 1149 return (UriType) this.value; 1150 } 1151 1152 public boolean hasValueUriType() { 1153 return this != null && this.value instanceof UriType; 1154 } 1155 1156 /** 1157 * @return {@link #value} (The value of the input parameter as a basic type.) 1158 */ 1159 public UrlType getValueUrlType() throws FHIRException { 1160 if (this.value == null) 1161 this.value = new UrlType(); 1162 if (!(this.value instanceof UrlType)) 1163 throw new FHIRException("Type mismatch: the type UrlType was expected, but "+this.value.getClass().getName()+" was encountered"); 1164 return (UrlType) this.value; 1165 } 1166 1167 public boolean hasValueUrlType() { 1168 return this != null && this.value instanceof UrlType; 1169 } 1170 1171 /** 1172 * @return {@link #value} (The value of the input parameter as a basic type.) 1173 */ 1174 public UuidType getValueUuidType() throws FHIRException { 1175 if (this.value == null) 1176 this.value = new UuidType(); 1177 if (!(this.value instanceof UuidType)) 1178 throw new FHIRException("Type mismatch: the type UuidType was expected, but "+this.value.getClass().getName()+" was encountered"); 1179 return (UuidType) this.value; 1180 } 1181 1182 public boolean hasValueUuidType() { 1183 return this != null && this.value instanceof UuidType; 1184 } 1185 1186 /** 1187 * @return {@link #value} (The value of the input parameter as a basic type.) 1188 */ 1189 public Address getValueAddress() throws FHIRException { 1190 if (this.value == null) 1191 this.value = new Address(); 1192 if (!(this.value instanceof Address)) 1193 throw new FHIRException("Type mismatch: the type Address was expected, but "+this.value.getClass().getName()+" was encountered"); 1194 return (Address) this.value; 1195 } 1196 1197 public boolean hasValueAddress() { 1198 return this != null && this.value instanceof Address; 1199 } 1200 1201 /** 1202 * @return {@link #value} (The value of the input parameter as a basic type.) 1203 */ 1204 public Age getValueAge() throws FHIRException { 1205 if (this.value == null) 1206 this.value = new Age(); 1207 if (!(this.value instanceof Age)) 1208 throw new FHIRException("Type mismatch: the type Age was expected, but "+this.value.getClass().getName()+" was encountered"); 1209 return (Age) this.value; 1210 } 1211 1212 public boolean hasValueAge() { 1213 return this != null && this.value instanceof Age; 1214 } 1215 1216 /** 1217 * @return {@link #value} (The value of the input parameter as a basic type.) 1218 */ 1219 public Annotation getValueAnnotation() throws FHIRException { 1220 if (this.value == null) 1221 this.value = new Annotation(); 1222 if (!(this.value instanceof Annotation)) 1223 throw new FHIRException("Type mismatch: the type Annotation was expected, but "+this.value.getClass().getName()+" was encountered"); 1224 return (Annotation) this.value; 1225 } 1226 1227 public boolean hasValueAnnotation() { 1228 return this != null && this.value instanceof Annotation; 1229 } 1230 1231 /** 1232 * @return {@link #value} (The value of the input parameter as a basic type.) 1233 */ 1234 public Attachment getValueAttachment() throws FHIRException { 1235 if (this.value == null) 1236 this.value = new Attachment(); 1237 if (!(this.value instanceof Attachment)) 1238 throw new FHIRException("Type mismatch: the type Attachment was expected, but "+this.value.getClass().getName()+" was encountered"); 1239 return (Attachment) this.value; 1240 } 1241 1242 public boolean hasValueAttachment() { 1243 return this != null && this.value instanceof Attachment; 1244 } 1245 1246 /** 1247 * @return {@link #value} (The value of the input parameter as a basic type.) 1248 */ 1249 public CodeableConcept getValueCodeableConcept() throws FHIRException { 1250 if (this.value == null) 1251 this.value = new CodeableConcept(); 1252 if (!(this.value instanceof CodeableConcept)) 1253 throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.value.getClass().getName()+" was encountered"); 1254 return (CodeableConcept) this.value; 1255 } 1256 1257 public boolean hasValueCodeableConcept() { 1258 return this != null && this.value instanceof CodeableConcept; 1259 } 1260 1261 /** 1262 * @return {@link #value} (The value of the input parameter as a basic type.) 1263 */ 1264 public CodeableReference getValueCodeableReference() throws FHIRException { 1265 if (this.value == null) 1266 this.value = new CodeableReference(); 1267 if (!(this.value instanceof CodeableReference)) 1268 throw new FHIRException("Type mismatch: the type CodeableReference was expected, but "+this.value.getClass().getName()+" was encountered"); 1269 return (CodeableReference) this.value; 1270 } 1271 1272 public boolean hasValueCodeableReference() { 1273 return this != null && this.value instanceof CodeableReference; 1274 } 1275 1276 /** 1277 * @return {@link #value} (The value of the input parameter as a basic type.) 1278 */ 1279 public Coding getValueCoding() throws FHIRException { 1280 if (this.value == null) 1281 this.value = new Coding(); 1282 if (!(this.value instanceof Coding)) 1283 throw new FHIRException("Type mismatch: the type Coding was expected, but "+this.value.getClass().getName()+" was encountered"); 1284 return (Coding) this.value; 1285 } 1286 1287 public boolean hasValueCoding() { 1288 return this != null && this.value instanceof Coding; 1289 } 1290 1291 /** 1292 * @return {@link #value} (The value of the input parameter as a basic type.) 1293 */ 1294 public ContactPoint getValueContactPoint() throws FHIRException { 1295 if (this.value == null) 1296 this.value = new ContactPoint(); 1297 if (!(this.value instanceof ContactPoint)) 1298 throw new FHIRException("Type mismatch: the type ContactPoint was expected, but "+this.value.getClass().getName()+" was encountered"); 1299 return (ContactPoint) this.value; 1300 } 1301 1302 public boolean hasValueContactPoint() { 1303 return this != null && this.value instanceof ContactPoint; 1304 } 1305 1306 /** 1307 * @return {@link #value} (The value of the input parameter as a basic type.) 1308 */ 1309 public Count getValueCount() throws FHIRException { 1310 if (this.value == null) 1311 this.value = new Count(); 1312 if (!(this.value instanceof Count)) 1313 throw new FHIRException("Type mismatch: the type Count was expected, but "+this.value.getClass().getName()+" was encountered"); 1314 return (Count) this.value; 1315 } 1316 1317 public boolean hasValueCount() { 1318 return this != null && this.value instanceof Count; 1319 } 1320 1321 /** 1322 * @return {@link #value} (The value of the input parameter as a basic type.) 1323 */ 1324 public Distance getValueDistance() throws FHIRException { 1325 if (this.value == null) 1326 this.value = new Distance(); 1327 if (!(this.value instanceof Distance)) 1328 throw new FHIRException("Type mismatch: the type Distance was expected, but "+this.value.getClass().getName()+" was encountered"); 1329 return (Distance) this.value; 1330 } 1331 1332 public boolean hasValueDistance() { 1333 return this != null && this.value instanceof Distance; 1334 } 1335 1336 /** 1337 * @return {@link #value} (The value of the input parameter as a basic type.) 1338 */ 1339 public Duration getValueDuration() throws FHIRException { 1340 if (this.value == null) 1341 this.value = new Duration(); 1342 if (!(this.value instanceof Duration)) 1343 throw new FHIRException("Type mismatch: the type Duration was expected, but "+this.value.getClass().getName()+" was encountered"); 1344 return (Duration) this.value; 1345 } 1346 1347 public boolean hasValueDuration() { 1348 return this != null && this.value instanceof Duration; 1349 } 1350 1351 /** 1352 * @return {@link #value} (The value of the input parameter as a basic type.) 1353 */ 1354 public HumanName getValueHumanName() throws FHIRException { 1355 if (this.value == null) 1356 this.value = new HumanName(); 1357 if (!(this.value instanceof HumanName)) 1358 throw new FHIRException("Type mismatch: the type HumanName was expected, but "+this.value.getClass().getName()+" was encountered"); 1359 return (HumanName) this.value; 1360 } 1361 1362 public boolean hasValueHumanName() { 1363 return this != null && this.value instanceof HumanName; 1364 } 1365 1366 /** 1367 * @return {@link #value} (The value of the input parameter as a basic type.) 1368 */ 1369 public Identifier getValueIdentifier() throws FHIRException { 1370 if (this.value == null) 1371 this.value = new Identifier(); 1372 if (!(this.value instanceof Identifier)) 1373 throw new FHIRException("Type mismatch: the type Identifier was expected, but "+this.value.getClass().getName()+" was encountered"); 1374 return (Identifier) this.value; 1375 } 1376 1377 public boolean hasValueIdentifier() { 1378 return this != null && this.value instanceof Identifier; 1379 } 1380 1381 /** 1382 * @return {@link #value} (The value of the input parameter as a basic type.) 1383 */ 1384 public Money getValueMoney() throws FHIRException { 1385 if (this.value == null) 1386 this.value = new Money(); 1387 if (!(this.value instanceof Money)) 1388 throw new FHIRException("Type mismatch: the type Money was expected, but "+this.value.getClass().getName()+" was encountered"); 1389 return (Money) this.value; 1390 } 1391 1392 public boolean hasValueMoney() { 1393 return this != null && this.value instanceof Money; 1394 } 1395 1396 /** 1397 * @return {@link #value} (The value of the input parameter as a basic type.) 1398 */ 1399 public Period getValuePeriod() throws FHIRException { 1400 if (this.value == null) 1401 this.value = new Period(); 1402 if (!(this.value instanceof Period)) 1403 throw new FHIRException("Type mismatch: the type Period was expected, but "+this.value.getClass().getName()+" was encountered"); 1404 return (Period) this.value; 1405 } 1406 1407 public boolean hasValuePeriod() { 1408 return this != null && this.value instanceof Period; 1409 } 1410 1411 /** 1412 * @return {@link #value} (The value of the input parameter as a basic type.) 1413 */ 1414 public Quantity getValueQuantity() throws FHIRException { 1415 if (this.value == null) 1416 this.value = new Quantity(); 1417 if (!(this.value instanceof Quantity)) 1418 throw new FHIRException("Type mismatch: the type Quantity was expected, but "+this.value.getClass().getName()+" was encountered"); 1419 return (Quantity) this.value; 1420 } 1421 1422 public boolean hasValueQuantity() { 1423 return this != null && this.value instanceof Quantity; 1424 } 1425 1426 /** 1427 * @return {@link #value} (The value of the input parameter as a basic type.) 1428 */ 1429 public Range getValueRange() throws FHIRException { 1430 if (this.value == null) 1431 this.value = new Range(); 1432 if (!(this.value instanceof Range)) 1433 throw new FHIRException("Type mismatch: the type Range was expected, but "+this.value.getClass().getName()+" was encountered"); 1434 return (Range) this.value; 1435 } 1436 1437 public boolean hasValueRange() { 1438 return this != null && this.value instanceof Range; 1439 } 1440 1441 /** 1442 * @return {@link #value} (The value of the input parameter as a basic type.) 1443 */ 1444 public Ratio getValueRatio() throws FHIRException { 1445 if (this.value == null) 1446 this.value = new Ratio(); 1447 if (!(this.value instanceof Ratio)) 1448 throw new FHIRException("Type mismatch: the type Ratio was expected, but "+this.value.getClass().getName()+" was encountered"); 1449 return (Ratio) this.value; 1450 } 1451 1452 public boolean hasValueRatio() { 1453 return this != null && this.value instanceof Ratio; 1454 } 1455 1456 /** 1457 * @return {@link #value} (The value of the input parameter as a basic type.) 1458 */ 1459 public RatioRange getValueRatioRange() throws FHIRException { 1460 if (this.value == null) 1461 this.value = new RatioRange(); 1462 if (!(this.value instanceof RatioRange)) 1463 throw new FHIRException("Type mismatch: the type RatioRange was expected, but "+this.value.getClass().getName()+" was encountered"); 1464 return (RatioRange) this.value; 1465 } 1466 1467 public boolean hasValueRatioRange() { 1468 return this != null && this.value instanceof RatioRange; 1469 } 1470 1471 /** 1472 * @return {@link #value} (The value of the input parameter as a basic type.) 1473 */ 1474 public Reference getValueReference() throws FHIRException { 1475 if (this.value == null) 1476 this.value = new Reference(); 1477 if (!(this.value instanceof Reference)) 1478 throw new FHIRException("Type mismatch: the type Reference was expected, but "+this.value.getClass().getName()+" was encountered"); 1479 return (Reference) this.value; 1480 } 1481 1482 public boolean hasValueReference() { 1483 return this != null && this.value instanceof Reference; 1484 } 1485 1486 /** 1487 * @return {@link #value} (The value of the input parameter as a basic type.) 1488 */ 1489 public SampledData getValueSampledData() throws FHIRException { 1490 if (this.value == null) 1491 this.value = new SampledData(); 1492 if (!(this.value instanceof SampledData)) 1493 throw new FHIRException("Type mismatch: the type SampledData was expected, but "+this.value.getClass().getName()+" was encountered"); 1494 return (SampledData) this.value; 1495 } 1496 1497 public boolean hasValueSampledData() { 1498 return this != null && this.value instanceof SampledData; 1499 } 1500 1501 /** 1502 * @return {@link #value} (The value of the input parameter as a basic type.) 1503 */ 1504 public Signature getValueSignature() throws FHIRException { 1505 if (this.value == null) 1506 this.value = new Signature(); 1507 if (!(this.value instanceof Signature)) 1508 throw new FHIRException("Type mismatch: the type Signature was expected, but "+this.value.getClass().getName()+" was encountered"); 1509 return (Signature) this.value; 1510 } 1511 1512 public boolean hasValueSignature() { 1513 return this != null && this.value instanceof Signature; 1514 } 1515 1516 /** 1517 * @return {@link #value} (The value of the input parameter as a basic type.) 1518 */ 1519 public Timing getValueTiming() throws FHIRException { 1520 if (this.value == null) 1521 this.value = new Timing(); 1522 if (!(this.value instanceof Timing)) 1523 throw new FHIRException("Type mismatch: the type Timing was expected, but "+this.value.getClass().getName()+" was encountered"); 1524 return (Timing) this.value; 1525 } 1526 1527 public boolean hasValueTiming() { 1528 return this != null && this.value instanceof Timing; 1529 } 1530 1531 /** 1532 * @return {@link #value} (The value of the input parameter as a basic type.) 1533 */ 1534 public ContactDetail getValueContactDetail() throws FHIRException { 1535 if (this.value == null) 1536 this.value = new ContactDetail(); 1537 if (!(this.value instanceof ContactDetail)) 1538 throw new FHIRException("Type mismatch: the type ContactDetail was expected, but "+this.value.getClass().getName()+" was encountered"); 1539 return (ContactDetail) this.value; 1540 } 1541 1542 public boolean hasValueContactDetail() { 1543 return this != null && this.value instanceof ContactDetail; 1544 } 1545 1546 /** 1547 * @return {@link #value} (The value of the input parameter as a basic type.) 1548 */ 1549 public DataRequirement getValueDataRequirement() throws FHIRException { 1550 if (this.value == null) 1551 this.value = new DataRequirement(); 1552 if (!(this.value instanceof DataRequirement)) 1553 throw new FHIRException("Type mismatch: the type DataRequirement was expected, but "+this.value.getClass().getName()+" was encountered"); 1554 return (DataRequirement) this.value; 1555 } 1556 1557 public boolean hasValueDataRequirement() { 1558 return this != null && this.value instanceof DataRequirement; 1559 } 1560 1561 /** 1562 * @return {@link #value} (The value of the input parameter as a basic type.) 1563 */ 1564 public Expression getValueExpression() throws FHIRException { 1565 if (this.value == null) 1566 this.value = new Expression(); 1567 if (!(this.value instanceof Expression)) 1568 throw new FHIRException("Type mismatch: the type Expression was expected, but "+this.value.getClass().getName()+" was encountered"); 1569 return (Expression) this.value; 1570 } 1571 1572 public boolean hasValueExpression() { 1573 return this != null && this.value instanceof Expression; 1574 } 1575 1576 /** 1577 * @return {@link #value} (The value of the input parameter as a basic type.) 1578 */ 1579 public ParameterDefinition getValueParameterDefinition() throws FHIRException { 1580 if (this.value == null) 1581 this.value = new ParameterDefinition(); 1582 if (!(this.value instanceof ParameterDefinition)) 1583 throw new FHIRException("Type mismatch: the type ParameterDefinition was expected, but "+this.value.getClass().getName()+" was encountered"); 1584 return (ParameterDefinition) this.value; 1585 } 1586 1587 public boolean hasValueParameterDefinition() { 1588 return this != null && this.value instanceof ParameterDefinition; 1589 } 1590 1591 /** 1592 * @return {@link #value} (The value of the input parameter as a basic type.) 1593 */ 1594 public RelatedArtifact getValueRelatedArtifact() throws FHIRException { 1595 if (this.value == null) 1596 this.value = new RelatedArtifact(); 1597 if (!(this.value instanceof RelatedArtifact)) 1598 throw new FHIRException("Type mismatch: the type RelatedArtifact was expected, but "+this.value.getClass().getName()+" was encountered"); 1599 return (RelatedArtifact) this.value; 1600 } 1601 1602 public boolean hasValueRelatedArtifact() { 1603 return this != null && this.value instanceof RelatedArtifact; 1604 } 1605 1606 /** 1607 * @return {@link #value} (The value of the input parameter as a basic type.) 1608 */ 1609 public TriggerDefinition getValueTriggerDefinition() throws FHIRException { 1610 if (this.value == null) 1611 this.value = new TriggerDefinition(); 1612 if (!(this.value instanceof TriggerDefinition)) 1613 throw new FHIRException("Type mismatch: the type TriggerDefinition was expected, but "+this.value.getClass().getName()+" was encountered"); 1614 return (TriggerDefinition) this.value; 1615 } 1616 1617 public boolean hasValueTriggerDefinition() { 1618 return this != null && this.value instanceof TriggerDefinition; 1619 } 1620 1621 /** 1622 * @return {@link #value} (The value of the input parameter as a basic type.) 1623 */ 1624 public UsageContext getValueUsageContext() throws FHIRException { 1625 if (this.value == null) 1626 this.value = new UsageContext(); 1627 if (!(this.value instanceof UsageContext)) 1628 throw new FHIRException("Type mismatch: the type UsageContext was expected, but "+this.value.getClass().getName()+" was encountered"); 1629 return (UsageContext) this.value; 1630 } 1631 1632 public boolean hasValueUsageContext() { 1633 return this != null && this.value instanceof UsageContext; 1634 } 1635 1636 /** 1637 * @return {@link #value} (The value of the input parameter as a basic type.) 1638 */ 1639 public Availability getValueAvailability() throws FHIRException { 1640 if (this.value == null) 1641 this.value = new Availability(); 1642 if (!(this.value instanceof Availability)) 1643 throw new FHIRException("Type mismatch: the type Availability was expected, but "+this.value.getClass().getName()+" was encountered"); 1644 return (Availability) this.value; 1645 } 1646 1647 public boolean hasValueAvailability() { 1648 return this != null && this.value instanceof Availability; 1649 } 1650 1651 /** 1652 * @return {@link #value} (The value of the input parameter as a basic type.) 1653 */ 1654 public ExtendedContactDetail getValueExtendedContactDetail() throws FHIRException { 1655 if (this.value == null) 1656 this.value = new ExtendedContactDetail(); 1657 if (!(this.value instanceof ExtendedContactDetail)) 1658 throw new FHIRException("Type mismatch: the type ExtendedContactDetail was expected, but "+this.value.getClass().getName()+" was encountered"); 1659 return (ExtendedContactDetail) this.value; 1660 } 1661 1662 public boolean hasValueExtendedContactDetail() { 1663 return this != null && this.value instanceof ExtendedContactDetail; 1664 } 1665 1666 /** 1667 * @return {@link #value} (The value of the input parameter as a basic type.) 1668 */ 1669 public Dosage getValueDosage() throws FHIRException { 1670 if (this.value == null) 1671 this.value = new Dosage(); 1672 if (!(this.value instanceof Dosage)) 1673 throw new FHIRException("Type mismatch: the type Dosage was expected, but "+this.value.getClass().getName()+" was encountered"); 1674 return (Dosage) this.value; 1675 } 1676 1677 public boolean hasValueDosage() { 1678 return this != null && this.value instanceof Dosage; 1679 } 1680 1681 /** 1682 * @return {@link #value} (The value of the input parameter as a basic type.) 1683 */ 1684 public Meta getValueMeta() throws FHIRException { 1685 if (this.value == null) 1686 this.value = new Meta(); 1687 if (!(this.value instanceof Meta)) 1688 throw new FHIRException("Type mismatch: the type Meta was expected, but "+this.value.getClass().getName()+" was encountered"); 1689 return (Meta) this.value; 1690 } 1691 1692 public boolean hasValueMeta() { 1693 return this != null && this.value instanceof Meta; 1694 } 1695 1696 public boolean hasValue() { 1697 return this.value != null && !this.value.isEmpty(); 1698 } 1699 1700 /** 1701 * @param value {@link #value} (The value of the input parameter as a basic type.) 1702 */ 1703 public TaskInputComponent setValue(DataType value) { 1704 if (value != null && !(value instanceof Base64BinaryType || value instanceof BooleanType || value instanceof CanonicalType || value instanceof CodeType || value instanceof DateType || value instanceof DateTimeType || value instanceof DecimalType || value instanceof IdType || value instanceof InstantType || value instanceof IntegerType || value instanceof Integer64Type || value instanceof MarkdownType || value instanceof OidType || value instanceof PositiveIntType || value instanceof StringType || value instanceof TimeType || value instanceof UnsignedIntType || value instanceof UriType || value instanceof UrlType || value instanceof UuidType || value instanceof Address || value instanceof Age || value instanceof Annotation || value instanceof Attachment || value instanceof CodeableConcept || value instanceof CodeableReference || value instanceof Coding || value instanceof ContactPoint || value instanceof Count || value instanceof Distance || value instanceof Duration || value instanceof HumanName || value instanceof Identifier || value instanceof Money || value instanceof Period || value instanceof Quantity || value instanceof Range || value instanceof Ratio || value instanceof RatioRange || value instanceof Reference || value instanceof SampledData || value instanceof Signature || value instanceof Timing || value instanceof ContactDetail || value instanceof DataRequirement || value instanceof Expression || value instanceof ParameterDefinition || value instanceof RelatedArtifact || value instanceof TriggerDefinition || value instanceof UsageContext || value instanceof Availability || value instanceof ExtendedContactDetail || value instanceof Dosage || value instanceof Meta)) 1705 throw new Error("Not the right type for Task.input.value[x]: "+value.fhirType()); 1706 this.value = value; 1707 return this; 1708 } 1709 1710 protected void listChildren(List<Property> children) { 1711 super.listChildren(children); 1712 children.add(new Property("type", "CodeableConcept", "A code or description indicating how the input is intended to be used as part of the task execution.", 0, 1, type)); 1713 children.add(new Property("value[x]", "base64Binary|boolean|canonical|code|date|dateTime|decimal|id|instant|integer|integer64|markdown|oid|positiveInt|string|time|unsignedInt|uri|url|uuid|Address|Age|Annotation|Attachment|CodeableConcept|CodeableReference|Coding|ContactPoint|Count|Distance|Duration|HumanName|Identifier|Money|Period|Quantity|Range|Ratio|RatioRange|Reference|SampledData|Signature|Timing|ContactDetail|DataRequirement|Expression|ParameterDefinition|RelatedArtifact|TriggerDefinition|UsageContext|Availability|ExtendedContactDetail|Dosage|Meta", "The value of the input parameter as a basic type.", 0, 1, value)); 1714 } 1715 1716 @Override 1717 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1718 switch (_hash) { 1719 case 3575610: /*type*/ return new Property("type", "CodeableConcept", "A code or description indicating how the input is intended to be used as part of the task execution.", 0, 1, type); 1720 case -1410166417: /*value[x]*/ return new Property("value[x]", "base64Binary|boolean|canonical|code|date|dateTime|decimal|id|instant|integer|integer64|markdown|oid|positiveInt|string|time|unsignedInt|uri|url|uuid|Address|Age|Annotation|Attachment|CodeableConcept|CodeableReference|Coding|ContactPoint|Count|Distance|Duration|HumanName|Identifier|Money|Period|Quantity|Range|Ratio|RatioRange|Reference|SampledData|Signature|Timing|ContactDetail|DataRequirement|Expression|ParameterDefinition|RelatedArtifact|TriggerDefinition|UsageContext|Availability|ExtendedContactDetail|Dosage|Meta", "The value of the input parameter as a basic type.", 0, 1, value); 1721 case 111972721: /*value*/ return new Property("value[x]", "base64Binary|boolean|canonical|code|date|dateTime|decimal|id|instant|integer|integer64|markdown|oid|positiveInt|string|time|unsignedInt|uri|url|uuid|Address|Age|Annotation|Attachment|CodeableConcept|CodeableReference|Coding|ContactPoint|Count|Distance|Duration|HumanName|Identifier|Money|Period|Quantity|Range|Ratio|RatioRange|Reference|SampledData|Signature|Timing|ContactDetail|DataRequirement|Expression|ParameterDefinition|RelatedArtifact|TriggerDefinition|UsageContext|Availability|ExtendedContactDetail|Dosage|Meta", "The value of the input parameter as a basic type.", 0, 1, value); 1722 case -1535024575: /*valueBase64Binary*/ return new Property("value[x]", "base64Binary", "The value of the input parameter as a basic type.", 0, 1, value); 1723 case 733421943: /*valueBoolean*/ return new Property("value[x]", "boolean", "The value of the input parameter as a basic type.", 0, 1, value); 1724 case -786218365: /*valueCanonical*/ return new Property("value[x]", "canonical", "The value of the input parameter as a basic type.", 0, 1, value); 1725 case -766209282: /*valueCode*/ return new Property("value[x]", "code", "The value of the input parameter as a basic type.", 0, 1, value); 1726 case -766192449: /*valueDate*/ return new Property("value[x]", "date", "The value of the input parameter as a basic type.", 0, 1, value); 1727 case 1047929900: /*valueDateTime*/ return new Property("value[x]", "dateTime", "The value of the input parameter as a basic type.", 0, 1, value); 1728 case -2083993440: /*valueDecimal*/ return new Property("value[x]", "decimal", "The value of the input parameter as a basic type.", 0, 1, value); 1729 case 231604844: /*valueId*/ return new Property("value[x]", "id", "The value of the input parameter as a basic type.", 0, 1, value); 1730 case -1668687056: /*valueInstant*/ return new Property("value[x]", "instant", "The value of the input parameter as a basic type.", 0, 1, value); 1731 case -1668204915: /*valueInteger*/ return new Property("value[x]", "integer", "The value of the input parameter as a basic type.", 0, 1, value); 1732 case -1122120181: /*valueInteger64*/ return new Property("value[x]", "integer64", "The value of the input parameter as a basic type.", 0, 1, value); 1733 case -497880704: /*valueMarkdown*/ return new Property("value[x]", "markdown", "The value of the input parameter as a basic type.", 0, 1, value); 1734 case -1410178407: /*valueOid*/ return new Property("value[x]", "oid", "The value of the input parameter as a basic type.", 0, 1, value); 1735 case -1249932027: /*valuePositiveInt*/ return new Property("value[x]", "positiveInt", "The value of the input parameter as a basic type.", 0, 1, value); 1736 case -1424603934: /*valueString*/ return new Property("value[x]", "string", "The value of the input parameter as a basic type.", 0, 1, value); 1737 case -765708322: /*valueTime*/ return new Property("value[x]", "time", "The value of the input parameter as a basic type.", 0, 1, value); 1738 case 26529417: /*valueUnsignedInt*/ return new Property("value[x]", "unsignedInt", "The value of the input parameter as a basic type.", 0, 1, value); 1739 case -1410172357: /*valueUri*/ return new Property("value[x]", "uri", "The value of the input parameter as a basic type.", 0, 1, value); 1740 case -1410172354: /*valueUrl*/ return new Property("value[x]", "url", "The value of the input parameter as a basic type.", 0, 1, value); 1741 case -765667124: /*valueUuid*/ return new Property("value[x]", "uuid", "The value of the input parameter as a basic type.", 0, 1, value); 1742 case -478981821: /*valueAddress*/ return new Property("value[x]", "Address", "The value of the input parameter as a basic type.", 0, 1, value); 1743 case -1410191922: /*valueAge*/ return new Property("value[x]", "Age", "The value of the input parameter as a basic type.", 0, 1, value); 1744 case -67108992: /*valueAnnotation*/ return new Property("value[x]", "Annotation", "The value of the input parameter as a basic type.", 0, 1, value); 1745 case -475566732: /*valueAttachment*/ return new Property("value[x]", "Attachment", "The value of the input parameter as a basic type.", 0, 1, value); 1746 case 924902896: /*valueCodeableConcept*/ return new Property("value[x]", "CodeableConcept", "The value of the input parameter as a basic type.", 0, 1, value); 1747 case -257955629: /*valueCodeableReference*/ return new Property("value[x]", "CodeableReference", "The value of the input parameter as a basic type.", 0, 1, value); 1748 case -1887705029: /*valueCoding*/ return new Property("value[x]", "Coding", "The value of the input parameter as a basic type.", 0, 1, value); 1749 case 944904545: /*valueContactPoint*/ return new Property("value[x]", "ContactPoint", "The value of the input parameter as a basic type.", 0, 1, value); 1750 case 2017332766: /*valueCount*/ return new Property("value[x]", "Count", "The value of the input parameter as a basic type.", 0, 1, value); 1751 case -456359802: /*valueDistance*/ return new Property("value[x]", "Distance", "The value of the input parameter as a basic type.", 0, 1, value); 1752 case 1558135333: /*valueDuration*/ return new Property("value[x]", "Duration", "The value of the input parameter as a basic type.", 0, 1, value); 1753 case -2026205465: /*valueHumanName*/ return new Property("value[x]", "HumanName", "The value of the input parameter as a basic type.", 0, 1, value); 1754 case -130498310: /*valueIdentifier*/ return new Property("value[x]", "Identifier", "The value of the input parameter as a basic type.", 0, 1, value); 1755 case 2026560975: /*valueMoney*/ return new Property("value[x]", "Money", "The value of the input parameter as a basic type.", 0, 1, value); 1756 case -1524344174: /*valuePeriod*/ return new Property("value[x]", "Period", "The value of the input parameter as a basic type.", 0, 1, value); 1757 case -2029823716: /*valueQuantity*/ return new Property("value[x]", "Quantity", "The value of the input parameter as a basic type.", 0, 1, value); 1758 case 2030761548: /*valueRange*/ return new Property("value[x]", "Range", "The value of the input parameter as a basic type.", 0, 1, value); 1759 case 2030767386: /*valueRatio*/ return new Property("value[x]", "Ratio", "The value of the input parameter as a basic type.", 0, 1, value); 1760 case -706454461: /*valueRatioRange*/ return new Property("value[x]", "RatioRange", "The value of the input parameter as a basic type.", 0, 1, value); 1761 case 1755241690: /*valueReference*/ return new Property("value[x]", "Reference", "The value of the input parameter as a basic type.", 0, 1, value); 1762 case -962229101: /*valueSampledData*/ return new Property("value[x]", "SampledData", "The value of the input parameter as a basic type.", 0, 1, value); 1763 case -540985785: /*valueSignature*/ return new Property("value[x]", "Signature", "The value of the input parameter as a basic type.", 0, 1, value); 1764 case -1406282469: /*valueTiming*/ return new Property("value[x]", "Timing", "The value of the input parameter as a basic type.", 0, 1, value); 1765 case -1125200224: /*valueContactDetail*/ return new Property("value[x]", "ContactDetail", "The value of the input parameter as a basic type.", 0, 1, value); 1766 case 1710554248: /*valueDataRequirement*/ return new Property("value[x]", "DataRequirement", "The value of the input parameter as a basic type.", 0, 1, value); 1767 case -307517719: /*valueExpression*/ return new Property("value[x]", "Expression", "The value of the input parameter as a basic type.", 0, 1, value); 1768 case 1387478187: /*valueParameterDefinition*/ return new Property("value[x]", "ParameterDefinition", "The value of the input parameter as a basic type.", 0, 1, value); 1769 case 1748214124: /*valueRelatedArtifact*/ return new Property("value[x]", "RelatedArtifact", "The value of the input parameter as a basic type.", 0, 1, value); 1770 case 976830394: /*valueTriggerDefinition*/ return new Property("value[x]", "TriggerDefinition", "The value of the input parameter as a basic type.", 0, 1, value); 1771 case 588000479: /*valueUsageContext*/ return new Property("value[x]", "UsageContext", "The value of the input parameter as a basic type.", 0, 1, value); 1772 case 1678530924: /*valueAvailability*/ return new Property("value[x]", "Availability", "The value of the input parameter as a basic type.", 0, 1, value); 1773 case -1567222041: /*valueExtendedContactDetail*/ return new Property("value[x]", "ExtendedContactDetail", "The value of the input parameter as a basic type.", 0, 1, value); 1774 case -1858636920: /*valueDosage*/ return new Property("value[x]", "Dosage", "The value of the input parameter as a basic type.", 0, 1, value); 1775 case -765920490: /*valueMeta*/ return new Property("value[x]", "Meta", "The value of the input parameter as a basic type.", 0, 1, value); 1776 default: return super.getNamedProperty(_hash, _name, _checkValid); 1777 } 1778 1779 } 1780 1781 @Override 1782 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1783 switch (hash) { 1784 case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept 1785 case 111972721: /*value*/ return this.value == null ? new Base[0] : new Base[] {this.value}; // DataType 1786 default: return super.getProperty(hash, name, checkValid); 1787 } 1788 1789 } 1790 1791 @Override 1792 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1793 switch (hash) { 1794 case 3575610: // type 1795 this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1796 return value; 1797 case 111972721: // value 1798 this.value = TypeConvertor.castToType(value); // DataType 1799 return value; 1800 default: return super.setProperty(hash, name, value); 1801 } 1802 1803 } 1804 1805 @Override 1806 public Base setProperty(String name, Base value) throws FHIRException { 1807 if (name.equals("type")) { 1808 this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1809 } else if (name.equals("value[x]")) { 1810 this.value = TypeConvertor.castToType(value); // DataType 1811 } else 1812 return super.setProperty(name, value); 1813 return value; 1814 } 1815 1816 @Override 1817 public Base makeProperty(int hash, String name) throws FHIRException { 1818 switch (hash) { 1819 case 3575610: return getType(); 1820 case -1410166417: return getValue(); 1821 case 111972721: return getValue(); 1822 default: return super.makeProperty(hash, name); 1823 } 1824 1825 } 1826 1827 @Override 1828 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1829 switch (hash) { 1830 case 3575610: /*type*/ return new String[] {"CodeableConcept"}; 1831 case 111972721: /*value*/ return new String[] {"base64Binary", "boolean", "canonical", "code", "date", "dateTime", "decimal", "id", "instant", "integer", "integer64", "markdown", "oid", "positiveInt", "string", "time", "unsignedInt", "uri", "url", "uuid", "Address", "Age", "Annotation", "Attachment", "CodeableConcept", "CodeableReference", "Coding", "ContactPoint", "Count", "Distance", "Duration", "HumanName", "Identifier", "Money", "Period", "Quantity", "Range", "Ratio", "RatioRange", "Reference", "SampledData", "Signature", "Timing", "ContactDetail", "DataRequirement", "Expression", "ParameterDefinition", "RelatedArtifact", "TriggerDefinition", "UsageContext", "Availability", "ExtendedContactDetail", "Dosage", "Meta"}; 1832 default: return super.getTypesForProperty(hash, name); 1833 } 1834 1835 } 1836 1837 @Override 1838 public Base addChild(String name) throws FHIRException { 1839 if (name.equals("type")) { 1840 this.type = new CodeableConcept(); 1841 return this.type; 1842 } 1843 else if (name.equals("valueBase64Binary")) { 1844 this.value = new Base64BinaryType(); 1845 return this.value; 1846 } 1847 else if (name.equals("valueBoolean")) { 1848 this.value = new BooleanType(); 1849 return this.value; 1850 } 1851 else if (name.equals("valueCanonical")) { 1852 this.value = new CanonicalType(); 1853 return this.value; 1854 } 1855 else if (name.equals("valueCode")) { 1856 this.value = new CodeType(); 1857 return this.value; 1858 } 1859 else if (name.equals("valueDate")) { 1860 this.value = new DateType(); 1861 return this.value; 1862 } 1863 else if (name.equals("valueDateTime")) { 1864 this.value = new DateTimeType(); 1865 return this.value; 1866 } 1867 else if (name.equals("valueDecimal")) { 1868 this.value = new DecimalType(); 1869 return this.value; 1870 } 1871 else if (name.equals("valueId")) { 1872 this.value = new IdType(); 1873 return this.value; 1874 } 1875 else if (name.equals("valueInstant")) { 1876 this.value = new InstantType(); 1877 return this.value; 1878 } 1879 else if (name.equals("valueInteger")) { 1880 this.value = new IntegerType(); 1881 return this.value; 1882 } 1883 else if (name.equals("valueInteger64")) { 1884 this.value = new Integer64Type(); 1885 return this.value; 1886 } 1887 else if (name.equals("valueMarkdown")) { 1888 this.value = new MarkdownType(); 1889 return this.value; 1890 } 1891 else if (name.equals("valueOid")) { 1892 this.value = new OidType(); 1893 return this.value; 1894 } 1895 else if (name.equals("valuePositiveInt")) { 1896 this.value = new PositiveIntType(); 1897 return this.value; 1898 } 1899 else if (name.equals("valueString")) { 1900 this.value = new StringType(); 1901 return this.value; 1902 } 1903 else if (name.equals("valueTime")) { 1904 this.value = new TimeType(); 1905 return this.value; 1906 } 1907 else if (name.equals("valueUnsignedInt")) { 1908 this.value = new UnsignedIntType(); 1909 return this.value; 1910 } 1911 else if (name.equals("valueUri")) { 1912 this.value = new UriType(); 1913 return this.value; 1914 } 1915 else if (name.equals("valueUrl")) { 1916 this.value = new UrlType(); 1917 return this.value; 1918 } 1919 else if (name.equals("valueUuid")) { 1920 this.value = new UuidType(); 1921 return this.value; 1922 } 1923 else if (name.equals("valueAddress")) { 1924 this.value = new Address(); 1925 return this.value; 1926 } 1927 else if (name.equals("valueAge")) { 1928 this.value = new Age(); 1929 return this.value; 1930 } 1931 else if (name.equals("valueAnnotation")) { 1932 this.value = new Annotation(); 1933 return this.value; 1934 } 1935 else if (name.equals("valueAttachment")) { 1936 this.value = new Attachment(); 1937 return this.value; 1938 } 1939 else if (name.equals("valueCodeableConcept")) { 1940 this.value = new CodeableConcept(); 1941 return this.value; 1942 } 1943 else if (name.equals("valueCodeableReference")) { 1944 this.value = new CodeableReference(); 1945 return this.value; 1946 } 1947 else if (name.equals("valueCoding")) { 1948 this.value = new Coding(); 1949 return this.value; 1950 } 1951 else if (name.equals("valueContactPoint")) { 1952 this.value = new ContactPoint(); 1953 return this.value; 1954 } 1955 else if (name.equals("valueCount")) { 1956 this.value = new Count(); 1957 return this.value; 1958 } 1959 else if (name.equals("valueDistance")) { 1960 this.value = new Distance(); 1961 return this.value; 1962 } 1963 else if (name.equals("valueDuration")) { 1964 this.value = new Duration(); 1965 return this.value; 1966 } 1967 else if (name.equals("valueHumanName")) { 1968 this.value = new HumanName(); 1969 return this.value; 1970 } 1971 else if (name.equals("valueIdentifier")) { 1972 this.value = new Identifier(); 1973 return this.value; 1974 } 1975 else if (name.equals("valueMoney")) { 1976 this.value = new Money(); 1977 return this.value; 1978 } 1979 else if (name.equals("valuePeriod")) { 1980 this.value = new Period(); 1981 return this.value; 1982 } 1983 else if (name.equals("valueQuantity")) { 1984 this.value = new Quantity(); 1985 return this.value; 1986 } 1987 else if (name.equals("valueRange")) { 1988 this.value = new Range(); 1989 return this.value; 1990 } 1991 else if (name.equals("valueRatio")) { 1992 this.value = new Ratio(); 1993 return this.value; 1994 } 1995 else if (name.equals("valueRatioRange")) { 1996 this.value = new RatioRange(); 1997 return this.value; 1998 } 1999 else if (name.equals("valueReference")) { 2000 this.value = new Reference(); 2001 return this.value; 2002 } 2003 else if (name.equals("valueSampledData")) { 2004 this.value = new SampledData(); 2005 return this.value; 2006 } 2007 else if (name.equals("valueSignature")) { 2008 this.value = new Signature(); 2009 return this.value; 2010 } 2011 else if (name.equals("valueTiming")) { 2012 this.value = new Timing(); 2013 return this.value; 2014 } 2015 else if (name.equals("valueContactDetail")) { 2016 this.value = new ContactDetail(); 2017 return this.value; 2018 } 2019 else if (name.equals("valueDataRequirement")) { 2020 this.value = new DataRequirement(); 2021 return this.value; 2022 } 2023 else if (name.equals("valueExpression")) { 2024 this.value = new Expression(); 2025 return this.value; 2026 } 2027 else if (name.equals("valueParameterDefinition")) { 2028 this.value = new ParameterDefinition(); 2029 return this.value; 2030 } 2031 else if (name.equals("valueRelatedArtifact")) { 2032 this.value = new RelatedArtifact(); 2033 return this.value; 2034 } 2035 else if (name.equals("valueTriggerDefinition")) { 2036 this.value = new TriggerDefinition(); 2037 return this.value; 2038 } 2039 else if (name.equals("valueUsageContext")) { 2040 this.value = new UsageContext(); 2041 return this.value; 2042 } 2043 else if (name.equals("valueAvailability")) { 2044 this.value = new Availability(); 2045 return this.value; 2046 } 2047 else if (name.equals("valueExtendedContactDetail")) { 2048 this.value = new ExtendedContactDetail(); 2049 return this.value; 2050 } 2051 else if (name.equals("valueDosage")) { 2052 this.value = new Dosage(); 2053 return this.value; 2054 } 2055 else if (name.equals("valueMeta")) { 2056 this.value = new Meta(); 2057 return this.value; 2058 } 2059 else 2060 return super.addChild(name); 2061 } 2062 2063 public TaskInputComponent copy() { 2064 TaskInputComponent dst = new TaskInputComponent(); 2065 copyValues(dst); 2066 return dst; 2067 } 2068 2069 public void copyValues(TaskInputComponent dst) { 2070 super.copyValues(dst); 2071 dst.type = type == null ? null : type.copy(); 2072 dst.value = value == null ? null : value.copy(); 2073 } 2074 2075 @Override 2076 public boolean equalsDeep(Base other_) { 2077 if (!super.equalsDeep(other_)) 2078 return false; 2079 if (!(other_ instanceof TaskInputComponent)) 2080 return false; 2081 TaskInputComponent o = (TaskInputComponent) other_; 2082 return compareDeep(type, o.type, true) && compareDeep(value, o.value, true); 2083 } 2084 2085 @Override 2086 public boolean equalsShallow(Base other_) { 2087 if (!super.equalsShallow(other_)) 2088 return false; 2089 if (!(other_ instanceof TaskInputComponent)) 2090 return false; 2091 TaskInputComponent o = (TaskInputComponent) other_; 2092 return true; 2093 } 2094 2095 public boolean isEmpty() { 2096 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(type, value); 2097 } 2098 2099 public String fhirType() { 2100 return "Task.input"; 2101 2102 } 2103 2104 } 2105 2106 @Block() 2107 public static class TaskOutputComponent extends BackboneElement implements IBaseBackboneElement { 2108 /** 2109 * The name of the Output parameter. 2110 */ 2111 @Child(name = "type", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=false) 2112 @Description(shortDefinition="Label for output", formalDefinition="The name of the Output parameter." ) 2113 protected CodeableConcept type; 2114 2115 /** 2116 * The value of the Output parameter as a basic type. 2117 */ 2118 @Child(name = "value", type = {Base64BinaryType.class, BooleanType.class, CanonicalType.class, CodeType.class, DateType.class, DateTimeType.class, DecimalType.class, IdType.class, InstantType.class, IntegerType.class, Integer64Type.class, MarkdownType.class, OidType.class, PositiveIntType.class, StringType.class, TimeType.class, UnsignedIntType.class, UriType.class, UrlType.class, UuidType.class, Address.class, Age.class, Annotation.class, Attachment.class, CodeableConcept.class, CodeableReference.class, Coding.class, ContactPoint.class, Count.class, Distance.class, Duration.class, HumanName.class, Identifier.class, Money.class, Period.class, Quantity.class, Range.class, Ratio.class, RatioRange.class, Reference.class, SampledData.class, Signature.class, Timing.class, ContactDetail.class, DataRequirement.class, Expression.class, ParameterDefinition.class, RelatedArtifact.class, TriggerDefinition.class, UsageContext.class, Availability.class, ExtendedContactDetail.class, Dosage.class, Meta.class}, order=2, min=1, max=1, modifier=false, summary=false) 2119 @Description(shortDefinition="Result of output", formalDefinition="The value of the Output parameter as a basic type." ) 2120 protected DataType value; 2121 2122 private static final long serialVersionUID = -1659186716L; 2123 2124 /** 2125 * Constructor 2126 */ 2127 public TaskOutputComponent() { 2128 super(); 2129 } 2130 2131 /** 2132 * Constructor 2133 */ 2134 public TaskOutputComponent(CodeableConcept type, DataType value) { 2135 super(); 2136 this.setType(type); 2137 this.setValue(value); 2138 } 2139 2140 /** 2141 * @return {@link #type} (The name of the Output parameter.) 2142 */ 2143 public CodeableConcept getType() { 2144 if (this.type == null) 2145 if (Configuration.errorOnAutoCreate()) 2146 throw new Error("Attempt to auto-create TaskOutputComponent.type"); 2147 else if (Configuration.doAutoCreate()) 2148 this.type = new CodeableConcept(); // cc 2149 return this.type; 2150 } 2151 2152 public boolean hasType() { 2153 return this.type != null && !this.type.isEmpty(); 2154 } 2155 2156 /** 2157 * @param value {@link #type} (The name of the Output parameter.) 2158 */ 2159 public TaskOutputComponent setType(CodeableConcept value) { 2160 this.type = value; 2161 return this; 2162 } 2163 2164 /** 2165 * @return {@link #value} (The value of the Output parameter as a basic type.) 2166 */ 2167 public DataType getValue() { 2168 return this.value; 2169 } 2170 2171 /** 2172 * @return {@link #value} (The value of the Output parameter as a basic type.) 2173 */ 2174 public Base64BinaryType getValueBase64BinaryType() throws FHIRException { 2175 if (this.value == null) 2176 this.value = new Base64BinaryType(); 2177 if (!(this.value instanceof Base64BinaryType)) 2178 throw new FHIRException("Type mismatch: the type Base64BinaryType was expected, but "+this.value.getClass().getName()+" was encountered"); 2179 return (Base64BinaryType) this.value; 2180 } 2181 2182 public boolean hasValueBase64BinaryType() { 2183 return this != null && this.value instanceof Base64BinaryType; 2184 } 2185 2186 /** 2187 * @return {@link #value} (The value of the Output parameter as a basic type.) 2188 */ 2189 public BooleanType getValueBooleanType() throws FHIRException { 2190 if (this.value == null) 2191 this.value = new BooleanType(); 2192 if (!(this.value instanceof BooleanType)) 2193 throw new FHIRException("Type mismatch: the type BooleanType was expected, but "+this.value.getClass().getName()+" was encountered"); 2194 return (BooleanType) this.value; 2195 } 2196 2197 public boolean hasValueBooleanType() { 2198 return this != null && this.value instanceof BooleanType; 2199 } 2200 2201 /** 2202 * @return {@link #value} (The value of the Output parameter as a basic type.) 2203 */ 2204 public CanonicalType getValueCanonicalType() throws FHIRException { 2205 if (this.value == null) 2206 this.value = new CanonicalType(); 2207 if (!(this.value instanceof CanonicalType)) 2208 throw new FHIRException("Type mismatch: the type CanonicalType was expected, but "+this.value.getClass().getName()+" was encountered"); 2209 return (CanonicalType) this.value; 2210 } 2211 2212 public boolean hasValueCanonicalType() { 2213 return this != null && this.value instanceof CanonicalType; 2214 } 2215 2216 /** 2217 * @return {@link #value} (The value of the Output parameter as a basic type.) 2218 */ 2219 public CodeType getValueCodeType() throws FHIRException { 2220 if (this.value == null) 2221 this.value = new CodeType(); 2222 if (!(this.value instanceof CodeType)) 2223 throw new FHIRException("Type mismatch: the type CodeType was expected, but "+this.value.getClass().getName()+" was encountered"); 2224 return (CodeType) this.value; 2225 } 2226 2227 public boolean hasValueCodeType() { 2228 return this != null && this.value instanceof CodeType; 2229 } 2230 2231 /** 2232 * @return {@link #value} (The value of the Output parameter as a basic type.) 2233 */ 2234 public DateType getValueDateType() throws FHIRException { 2235 if (this.value == null) 2236 this.value = new DateType(); 2237 if (!(this.value instanceof DateType)) 2238 throw new FHIRException("Type mismatch: the type DateType was expected, but "+this.value.getClass().getName()+" was encountered"); 2239 return (DateType) this.value; 2240 } 2241 2242 public boolean hasValueDateType() { 2243 return this != null && this.value instanceof DateType; 2244 } 2245 2246 /** 2247 * @return {@link #value} (The value of the Output parameter as a basic type.) 2248 */ 2249 public DateTimeType getValueDateTimeType() throws FHIRException { 2250 if (this.value == null) 2251 this.value = new DateTimeType(); 2252 if (!(this.value instanceof DateTimeType)) 2253 throw new FHIRException("Type mismatch: the type DateTimeType was expected, but "+this.value.getClass().getName()+" was encountered"); 2254 return (DateTimeType) this.value; 2255 } 2256 2257 public boolean hasValueDateTimeType() { 2258 return this != null && this.value instanceof DateTimeType; 2259 } 2260 2261 /** 2262 * @return {@link #value} (The value of the Output parameter as a basic type.) 2263 */ 2264 public DecimalType getValueDecimalType() throws FHIRException { 2265 if (this.value == null) 2266 this.value = new DecimalType(); 2267 if (!(this.value instanceof DecimalType)) 2268 throw new FHIRException("Type mismatch: the type DecimalType was expected, but "+this.value.getClass().getName()+" was encountered"); 2269 return (DecimalType) this.value; 2270 } 2271 2272 public boolean hasValueDecimalType() { 2273 return this != null && this.value instanceof DecimalType; 2274 } 2275 2276 /** 2277 * @return {@link #value} (The value of the Output parameter as a basic type.) 2278 */ 2279 public IdType getValueIdType() throws FHIRException { 2280 if (this.value == null) 2281 this.value = new IdType(); 2282 if (!(this.value instanceof IdType)) 2283 throw new FHIRException("Type mismatch: the type IdType was expected, but "+this.value.getClass().getName()+" was encountered"); 2284 return (IdType) this.value; 2285 } 2286 2287 public boolean hasValueIdType() { 2288 return this != null && this.value instanceof IdType; 2289 } 2290 2291 /** 2292 * @return {@link #value} (The value of the Output parameter as a basic type.) 2293 */ 2294 public InstantType getValueInstantType() throws FHIRException { 2295 if (this.value == null) 2296 this.value = new InstantType(); 2297 if (!(this.value instanceof InstantType)) 2298 throw new FHIRException("Type mismatch: the type InstantType was expected, but "+this.value.getClass().getName()+" was encountered"); 2299 return (InstantType) this.value; 2300 } 2301 2302 public boolean hasValueInstantType() { 2303 return this != null && this.value instanceof InstantType; 2304 } 2305 2306 /** 2307 * @return {@link #value} (The value of the Output parameter as a basic type.) 2308 */ 2309 public IntegerType getValueIntegerType() throws FHIRException { 2310 if (this.value == null) 2311 this.value = new IntegerType(); 2312 if (!(this.value instanceof IntegerType)) 2313 throw new FHIRException("Type mismatch: the type IntegerType was expected, but "+this.value.getClass().getName()+" was encountered"); 2314 return (IntegerType) this.value; 2315 } 2316 2317 public boolean hasValueIntegerType() { 2318 return this != null && this.value instanceof IntegerType; 2319 } 2320 2321 /** 2322 * @return {@link #value} (The value of the Output parameter as a basic type.) 2323 */ 2324 public Integer64Type getValueInteger64Type() throws FHIRException { 2325 if (this.value == null) 2326 this.value = new Integer64Type(); 2327 if (!(this.value instanceof Integer64Type)) 2328 throw new FHIRException("Type mismatch: the type Integer64Type was expected, but "+this.value.getClass().getName()+" was encountered"); 2329 return (Integer64Type) this.value; 2330 } 2331 2332 public boolean hasValueInteger64Type() { 2333 return this != null && this.value instanceof Integer64Type; 2334 } 2335 2336 /** 2337 * @return {@link #value} (The value of the Output parameter as a basic type.) 2338 */ 2339 public MarkdownType getValueMarkdownType() throws FHIRException { 2340 if (this.value == null) 2341 this.value = new MarkdownType(); 2342 if (!(this.value instanceof MarkdownType)) 2343 throw new FHIRException("Type mismatch: the type MarkdownType was expected, but "+this.value.getClass().getName()+" was encountered"); 2344 return (MarkdownType) this.value; 2345 } 2346 2347 public boolean hasValueMarkdownType() { 2348 return this != null && this.value instanceof MarkdownType; 2349 } 2350 2351 /** 2352 * @return {@link #value} (The value of the Output parameter as a basic type.) 2353 */ 2354 public OidType getValueOidType() throws FHIRException { 2355 if (this.value == null) 2356 this.value = new OidType(); 2357 if (!(this.value instanceof OidType)) 2358 throw new FHIRException("Type mismatch: the type OidType was expected, but "+this.value.getClass().getName()+" was encountered"); 2359 return (OidType) this.value; 2360 } 2361 2362 public boolean hasValueOidType() { 2363 return this != null && this.value instanceof OidType; 2364 } 2365 2366 /** 2367 * @return {@link #value} (The value of the Output parameter as a basic type.) 2368 */ 2369 public PositiveIntType getValuePositiveIntType() throws FHIRException { 2370 if (this.value == null) 2371 this.value = new PositiveIntType(); 2372 if (!(this.value instanceof PositiveIntType)) 2373 throw new FHIRException("Type mismatch: the type PositiveIntType was expected, but "+this.value.getClass().getName()+" was encountered"); 2374 return (PositiveIntType) this.value; 2375 } 2376 2377 public boolean hasValuePositiveIntType() { 2378 return this != null && this.value instanceof PositiveIntType; 2379 } 2380 2381 /** 2382 * @return {@link #value} (The value of the Output parameter as a basic type.) 2383 */ 2384 public StringType getValueStringType() throws FHIRException { 2385 if (this.value == null) 2386 this.value = new StringType(); 2387 if (!(this.value instanceof StringType)) 2388 throw new FHIRException("Type mismatch: the type StringType was expected, but "+this.value.getClass().getName()+" was encountered"); 2389 return (StringType) this.value; 2390 } 2391 2392 public boolean hasValueStringType() { 2393 return this != null && this.value instanceof StringType; 2394 } 2395 2396 /** 2397 * @return {@link #value} (The value of the Output parameter as a basic type.) 2398 */ 2399 public TimeType getValueTimeType() throws FHIRException { 2400 if (this.value == null) 2401 this.value = new TimeType(); 2402 if (!(this.value instanceof TimeType)) 2403 throw new FHIRException("Type mismatch: the type TimeType was expected, but "+this.value.getClass().getName()+" was encountered"); 2404 return (TimeType) this.value; 2405 } 2406 2407 public boolean hasValueTimeType() { 2408 return this != null && this.value instanceof TimeType; 2409 } 2410 2411 /** 2412 * @return {@link #value} (The value of the Output parameter as a basic type.) 2413 */ 2414 public UnsignedIntType getValueUnsignedIntType() throws FHIRException { 2415 if (this.value == null) 2416 this.value = new UnsignedIntType(); 2417 if (!(this.value instanceof UnsignedIntType)) 2418 throw new FHIRException("Type mismatch: the type UnsignedIntType was expected, but "+this.value.getClass().getName()+" was encountered"); 2419 return (UnsignedIntType) this.value; 2420 } 2421 2422 public boolean hasValueUnsignedIntType() { 2423 return this != null && this.value instanceof UnsignedIntType; 2424 } 2425 2426 /** 2427 * @return {@link #value} (The value of the Output parameter as a basic type.) 2428 */ 2429 public UriType getValueUriType() throws FHIRException { 2430 if (this.value == null) 2431 this.value = new UriType(); 2432 if (!(this.value instanceof UriType)) 2433 throw new FHIRException("Type mismatch: the type UriType was expected, but "+this.value.getClass().getName()+" was encountered"); 2434 return (UriType) this.value; 2435 } 2436 2437 public boolean hasValueUriType() { 2438 return this != null && this.value instanceof UriType; 2439 } 2440 2441 /** 2442 * @return {@link #value} (The value of the Output parameter as a basic type.) 2443 */ 2444 public UrlType getValueUrlType() throws FHIRException { 2445 if (this.value == null) 2446 this.value = new UrlType(); 2447 if (!(this.value instanceof UrlType)) 2448 throw new FHIRException("Type mismatch: the type UrlType was expected, but "+this.value.getClass().getName()+" was encountered"); 2449 return (UrlType) this.value; 2450 } 2451 2452 public boolean hasValueUrlType() { 2453 return this != null && this.value instanceof UrlType; 2454 } 2455 2456 /** 2457 * @return {@link #value} (The value of the Output parameter as a basic type.) 2458 */ 2459 public UuidType getValueUuidType() throws FHIRException { 2460 if (this.value == null) 2461 this.value = new UuidType(); 2462 if (!(this.value instanceof UuidType)) 2463 throw new FHIRException("Type mismatch: the type UuidType was expected, but "+this.value.getClass().getName()+" was encountered"); 2464 return (UuidType) this.value; 2465 } 2466 2467 public boolean hasValueUuidType() { 2468 return this != null && this.value instanceof UuidType; 2469 } 2470 2471 /** 2472 * @return {@link #value} (The value of the Output parameter as a basic type.) 2473 */ 2474 public Address getValueAddress() throws FHIRException { 2475 if (this.value == null) 2476 this.value = new Address(); 2477 if (!(this.value instanceof Address)) 2478 throw new FHIRException("Type mismatch: the type Address was expected, but "+this.value.getClass().getName()+" was encountered"); 2479 return (Address) this.value; 2480 } 2481 2482 public boolean hasValueAddress() { 2483 return this != null && this.value instanceof Address; 2484 } 2485 2486 /** 2487 * @return {@link #value} (The value of the Output parameter as a basic type.) 2488 */ 2489 public Age getValueAge() throws FHIRException { 2490 if (this.value == null) 2491 this.value = new Age(); 2492 if (!(this.value instanceof Age)) 2493 throw new FHIRException("Type mismatch: the type Age was expected, but "+this.value.getClass().getName()+" was encountered"); 2494 return (Age) this.value; 2495 } 2496 2497 public boolean hasValueAge() { 2498 return this != null && this.value instanceof Age; 2499 } 2500 2501 /** 2502 * @return {@link #value} (The value of the Output parameter as a basic type.) 2503 */ 2504 public Annotation getValueAnnotation() throws FHIRException { 2505 if (this.value == null) 2506 this.value = new Annotation(); 2507 if (!(this.value instanceof Annotation)) 2508 throw new FHIRException("Type mismatch: the type Annotation was expected, but "+this.value.getClass().getName()+" was encountered"); 2509 return (Annotation) this.value; 2510 } 2511 2512 public boolean hasValueAnnotation() { 2513 return this != null && this.value instanceof Annotation; 2514 } 2515 2516 /** 2517 * @return {@link #value} (The value of the Output parameter as a basic type.) 2518 */ 2519 public Attachment getValueAttachment() throws FHIRException { 2520 if (this.value == null) 2521 this.value = new Attachment(); 2522 if (!(this.value instanceof Attachment)) 2523 throw new FHIRException("Type mismatch: the type Attachment was expected, but "+this.value.getClass().getName()+" was encountered"); 2524 return (Attachment) this.value; 2525 } 2526 2527 public boolean hasValueAttachment() { 2528 return this != null && this.value instanceof Attachment; 2529 } 2530 2531 /** 2532 * @return {@link #value} (The value of the Output parameter as a basic type.) 2533 */ 2534 public CodeableConcept getValueCodeableConcept() throws FHIRException { 2535 if (this.value == null) 2536 this.value = new CodeableConcept(); 2537 if (!(this.value instanceof CodeableConcept)) 2538 throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.value.getClass().getName()+" was encountered"); 2539 return (CodeableConcept) this.value; 2540 } 2541 2542 public boolean hasValueCodeableConcept() { 2543 return this != null && this.value instanceof CodeableConcept; 2544 } 2545 2546 /** 2547 * @return {@link #value} (The value of the Output parameter as a basic type.) 2548 */ 2549 public CodeableReference getValueCodeableReference() throws FHIRException { 2550 if (this.value == null) 2551 this.value = new CodeableReference(); 2552 if (!(this.value instanceof CodeableReference)) 2553 throw new FHIRException("Type mismatch: the type CodeableReference was expected, but "+this.value.getClass().getName()+" was encountered"); 2554 return (CodeableReference) this.value; 2555 } 2556 2557 public boolean hasValueCodeableReference() { 2558 return this != null && this.value instanceof CodeableReference; 2559 } 2560 2561 /** 2562 * @return {@link #value} (The value of the Output parameter as a basic type.) 2563 */ 2564 public Coding getValueCoding() throws FHIRException { 2565 if (this.value == null) 2566 this.value = new Coding(); 2567 if (!(this.value instanceof Coding)) 2568 throw new FHIRException("Type mismatch: the type Coding was expected, but "+this.value.getClass().getName()+" was encountered"); 2569 return (Coding) this.value; 2570 } 2571 2572 public boolean hasValueCoding() { 2573 return this != null && this.value instanceof Coding; 2574 } 2575 2576 /** 2577 * @return {@link #value} (The value of the Output parameter as a basic type.) 2578 */ 2579 public ContactPoint getValueContactPoint() throws FHIRException { 2580 if (this.value == null) 2581 this.value = new ContactPoint(); 2582 if (!(this.value instanceof ContactPoint)) 2583 throw new FHIRException("Type mismatch: the type ContactPoint was expected, but "+this.value.getClass().getName()+" was encountered"); 2584 return (ContactPoint) this.value; 2585 } 2586 2587 public boolean hasValueContactPoint() { 2588 return this != null && this.value instanceof ContactPoint; 2589 } 2590 2591 /** 2592 * @return {@link #value} (The value of the Output parameter as a basic type.) 2593 */ 2594 public Count getValueCount() throws FHIRException { 2595 if (this.value == null) 2596 this.value = new Count(); 2597 if (!(this.value instanceof Count)) 2598 throw new FHIRException("Type mismatch: the type Count was expected, but "+this.value.getClass().getName()+" was encountered"); 2599 return (Count) this.value; 2600 } 2601 2602 public boolean hasValueCount() { 2603 return this != null && this.value instanceof Count; 2604 } 2605 2606 /** 2607 * @return {@link #value} (The value of the Output parameter as a basic type.) 2608 */ 2609 public Distance getValueDistance() throws FHIRException { 2610 if (this.value == null) 2611 this.value = new Distance(); 2612 if (!(this.value instanceof Distance)) 2613 throw new FHIRException("Type mismatch: the type Distance was expected, but "+this.value.getClass().getName()+" was encountered"); 2614 return (Distance) this.value; 2615 } 2616 2617 public boolean hasValueDistance() { 2618 return this != null && this.value instanceof Distance; 2619 } 2620 2621 /** 2622 * @return {@link #value} (The value of the Output parameter as a basic type.) 2623 */ 2624 public Duration getValueDuration() throws FHIRException { 2625 if (this.value == null) 2626 this.value = new Duration(); 2627 if (!(this.value instanceof Duration)) 2628 throw new FHIRException("Type mismatch: the type Duration was expected, but "+this.value.getClass().getName()+" was encountered"); 2629 return (Duration) this.value; 2630 } 2631 2632 public boolean hasValueDuration() { 2633 return this != null && this.value instanceof Duration; 2634 } 2635 2636 /** 2637 * @return {@link #value} (The value of the Output parameter as a basic type.) 2638 */ 2639 public HumanName getValueHumanName() throws FHIRException { 2640 if (this.value == null) 2641 this.value = new HumanName(); 2642 if (!(this.value instanceof HumanName)) 2643 throw new FHIRException("Type mismatch: the type HumanName was expected, but "+this.value.getClass().getName()+" was encountered"); 2644 return (HumanName) this.value; 2645 } 2646 2647 public boolean hasValueHumanName() { 2648 return this != null && this.value instanceof HumanName; 2649 } 2650 2651 /** 2652 * @return {@link #value} (The value of the Output parameter as a basic type.) 2653 */ 2654 public Identifier getValueIdentifier() throws FHIRException { 2655 if (this.value == null) 2656 this.value = new Identifier(); 2657 if (!(this.value instanceof Identifier)) 2658 throw new FHIRException("Type mismatch: the type Identifier was expected, but "+this.value.getClass().getName()+" was encountered"); 2659 return (Identifier) this.value; 2660 } 2661 2662 public boolean hasValueIdentifier() { 2663 return this != null && this.value instanceof Identifier; 2664 } 2665 2666 /** 2667 * @return {@link #value} (The value of the Output parameter as a basic type.) 2668 */ 2669 public Money getValueMoney() throws FHIRException { 2670 if (this.value == null) 2671 this.value = new Money(); 2672 if (!(this.value instanceof Money)) 2673 throw new FHIRException("Type mismatch: the type Money was expected, but "+this.value.getClass().getName()+" was encountered"); 2674 return (Money) this.value; 2675 } 2676 2677 public boolean hasValueMoney() { 2678 return this != null && this.value instanceof Money; 2679 } 2680 2681 /** 2682 * @return {@link #value} (The value of the Output parameter as a basic type.) 2683 */ 2684 public Period getValuePeriod() throws FHIRException { 2685 if (this.value == null) 2686 this.value = new Period(); 2687 if (!(this.value instanceof Period)) 2688 throw new FHIRException("Type mismatch: the type Period was expected, but "+this.value.getClass().getName()+" was encountered"); 2689 return (Period) this.value; 2690 } 2691 2692 public boolean hasValuePeriod() { 2693 return this != null && this.value instanceof Period; 2694 } 2695 2696 /** 2697 * @return {@link #value} (The value of the Output parameter as a basic type.) 2698 */ 2699 public Quantity getValueQuantity() throws FHIRException { 2700 if (this.value == null) 2701 this.value = new Quantity(); 2702 if (!(this.value instanceof Quantity)) 2703 throw new FHIRException("Type mismatch: the type Quantity was expected, but "+this.value.getClass().getName()+" was encountered"); 2704 return (Quantity) this.value; 2705 } 2706 2707 public boolean hasValueQuantity() { 2708 return this != null && this.value instanceof Quantity; 2709 } 2710 2711 /** 2712 * @return {@link #value} (The value of the Output parameter as a basic type.) 2713 */ 2714 public Range getValueRange() throws FHIRException { 2715 if (this.value == null) 2716 this.value = new Range(); 2717 if (!(this.value instanceof Range)) 2718 throw new FHIRException("Type mismatch: the type Range was expected, but "+this.value.getClass().getName()+" was encountered"); 2719 return (Range) this.value; 2720 } 2721 2722 public boolean hasValueRange() { 2723 return this != null && this.value instanceof Range; 2724 } 2725 2726 /** 2727 * @return {@link #value} (The value of the Output parameter as a basic type.) 2728 */ 2729 public Ratio getValueRatio() throws FHIRException { 2730 if (this.value == null) 2731 this.value = new Ratio(); 2732 if (!(this.value instanceof Ratio)) 2733 throw new FHIRException("Type mismatch: the type Ratio was expected, but "+this.value.getClass().getName()+" was encountered"); 2734 return (Ratio) this.value; 2735 } 2736 2737 public boolean hasValueRatio() { 2738 return this != null && this.value instanceof Ratio; 2739 } 2740 2741 /** 2742 * @return {@link #value} (The value of the Output parameter as a basic type.) 2743 */ 2744 public RatioRange getValueRatioRange() throws FHIRException { 2745 if (this.value == null) 2746 this.value = new RatioRange(); 2747 if (!(this.value instanceof RatioRange)) 2748 throw new FHIRException("Type mismatch: the type RatioRange was expected, but "+this.value.getClass().getName()+" was encountered"); 2749 return (RatioRange) this.value; 2750 } 2751 2752 public boolean hasValueRatioRange() { 2753 return this != null && this.value instanceof RatioRange; 2754 } 2755 2756 /** 2757 * @return {@link #value} (The value of the Output parameter as a basic type.) 2758 */ 2759 public Reference getValueReference() throws FHIRException { 2760 if (this.value == null) 2761 this.value = new Reference(); 2762 if (!(this.value instanceof Reference)) 2763 throw new FHIRException("Type mismatch: the type Reference was expected, but "+this.value.getClass().getName()+" was encountered"); 2764 return (Reference) this.value; 2765 } 2766 2767 public boolean hasValueReference() { 2768 return this != null && this.value instanceof Reference; 2769 } 2770 2771 /** 2772 * @return {@link #value} (The value of the Output parameter as a basic type.) 2773 */ 2774 public SampledData getValueSampledData() throws FHIRException { 2775 if (this.value == null) 2776 this.value = new SampledData(); 2777 if (!(this.value instanceof SampledData)) 2778 throw new FHIRException("Type mismatch: the type SampledData was expected, but "+this.value.getClass().getName()+" was encountered"); 2779 return (SampledData) this.value; 2780 } 2781 2782 public boolean hasValueSampledData() { 2783 return this != null && this.value instanceof SampledData; 2784 } 2785 2786 /** 2787 * @return {@link #value} (The value of the Output parameter as a basic type.) 2788 */ 2789 public Signature getValueSignature() throws FHIRException { 2790 if (this.value == null) 2791 this.value = new Signature(); 2792 if (!(this.value instanceof Signature)) 2793 throw new FHIRException("Type mismatch: the type Signature was expected, but "+this.value.getClass().getName()+" was encountered"); 2794 return (Signature) this.value; 2795 } 2796 2797 public boolean hasValueSignature() { 2798 return this != null && this.value instanceof Signature; 2799 } 2800 2801 /** 2802 * @return {@link #value} (The value of the Output parameter as a basic type.) 2803 */ 2804 public Timing getValueTiming() throws FHIRException { 2805 if (this.value == null) 2806 this.value = new Timing(); 2807 if (!(this.value instanceof Timing)) 2808 throw new FHIRException("Type mismatch: the type Timing was expected, but "+this.value.getClass().getName()+" was encountered"); 2809 return (Timing) this.value; 2810 } 2811 2812 public boolean hasValueTiming() { 2813 return this != null && this.value instanceof Timing; 2814 } 2815 2816 /** 2817 * @return {@link #value} (The value of the Output parameter as a basic type.) 2818 */ 2819 public ContactDetail getValueContactDetail() throws FHIRException { 2820 if (this.value == null) 2821 this.value = new ContactDetail(); 2822 if (!(this.value instanceof ContactDetail)) 2823 throw new FHIRException("Type mismatch: the type ContactDetail was expected, but "+this.value.getClass().getName()+" was encountered"); 2824 return (ContactDetail) this.value; 2825 } 2826 2827 public boolean hasValueContactDetail() { 2828 return this != null && this.value instanceof ContactDetail; 2829 } 2830 2831 /** 2832 * @return {@link #value} (The value of the Output parameter as a basic type.) 2833 */ 2834 public DataRequirement getValueDataRequirement() throws FHIRException { 2835 if (this.value == null) 2836 this.value = new DataRequirement(); 2837 if (!(this.value instanceof DataRequirement)) 2838 throw new FHIRException("Type mismatch: the type DataRequirement was expected, but "+this.value.getClass().getName()+" was encountered"); 2839 return (DataRequirement) this.value; 2840 } 2841 2842 public boolean hasValueDataRequirement() { 2843 return this != null && this.value instanceof DataRequirement; 2844 } 2845 2846 /** 2847 * @return {@link #value} (The value of the Output parameter as a basic type.) 2848 */ 2849 public Expression getValueExpression() throws FHIRException { 2850 if (this.value == null) 2851 this.value = new Expression(); 2852 if (!(this.value instanceof Expression)) 2853 throw new FHIRException("Type mismatch: the type Expression was expected, but "+this.value.getClass().getName()+" was encountered"); 2854 return (Expression) this.value; 2855 } 2856 2857 public boolean hasValueExpression() { 2858 return this != null && this.value instanceof Expression; 2859 } 2860 2861 /** 2862 * @return {@link #value} (The value of the Output parameter as a basic type.) 2863 */ 2864 public ParameterDefinition getValueParameterDefinition() throws FHIRException { 2865 if (this.value == null) 2866 this.value = new ParameterDefinition(); 2867 if (!(this.value instanceof ParameterDefinition)) 2868 throw new FHIRException("Type mismatch: the type ParameterDefinition was expected, but "+this.value.getClass().getName()+" was encountered"); 2869 return (ParameterDefinition) this.value; 2870 } 2871 2872 public boolean hasValueParameterDefinition() { 2873 return this != null && this.value instanceof ParameterDefinition; 2874 } 2875 2876 /** 2877 * @return {@link #value} (The value of the Output parameter as a basic type.) 2878 */ 2879 public RelatedArtifact getValueRelatedArtifact() throws FHIRException { 2880 if (this.value == null) 2881 this.value = new RelatedArtifact(); 2882 if (!(this.value instanceof RelatedArtifact)) 2883 throw new FHIRException("Type mismatch: the type RelatedArtifact was expected, but "+this.value.getClass().getName()+" was encountered"); 2884 return (RelatedArtifact) this.value; 2885 } 2886 2887 public boolean hasValueRelatedArtifact() { 2888 return this != null && this.value instanceof RelatedArtifact; 2889 } 2890 2891 /** 2892 * @return {@link #value} (The value of the Output parameter as a basic type.) 2893 */ 2894 public TriggerDefinition getValueTriggerDefinition() throws FHIRException { 2895 if (this.value == null) 2896 this.value = new TriggerDefinition(); 2897 if (!(this.value instanceof TriggerDefinition)) 2898 throw new FHIRException("Type mismatch: the type TriggerDefinition was expected, but "+this.value.getClass().getName()+" was encountered"); 2899 return (TriggerDefinition) this.value; 2900 } 2901 2902 public boolean hasValueTriggerDefinition() { 2903 return this != null && this.value instanceof TriggerDefinition; 2904 } 2905 2906 /** 2907 * @return {@link #value} (The value of the Output parameter as a basic type.) 2908 */ 2909 public UsageContext getValueUsageContext() throws FHIRException { 2910 if (this.value == null) 2911 this.value = new UsageContext(); 2912 if (!(this.value instanceof UsageContext)) 2913 throw new FHIRException("Type mismatch: the type UsageContext was expected, but "+this.value.getClass().getName()+" was encountered"); 2914 return (UsageContext) this.value; 2915 } 2916 2917 public boolean hasValueUsageContext() { 2918 return this != null && this.value instanceof UsageContext; 2919 } 2920 2921 /** 2922 * @return {@link #value} (The value of the Output parameter as a basic type.) 2923 */ 2924 public Availability getValueAvailability() throws FHIRException { 2925 if (this.value == null) 2926 this.value = new Availability(); 2927 if (!(this.value instanceof Availability)) 2928 throw new FHIRException("Type mismatch: the type Availability was expected, but "+this.value.getClass().getName()+" was encountered"); 2929 return (Availability) this.value; 2930 } 2931 2932 public boolean hasValueAvailability() { 2933 return this != null && this.value instanceof Availability; 2934 } 2935 2936 /** 2937 * @return {@link #value} (The value of the Output parameter as a basic type.) 2938 */ 2939 public ExtendedContactDetail getValueExtendedContactDetail() throws FHIRException { 2940 if (this.value == null) 2941 this.value = new ExtendedContactDetail(); 2942 if (!(this.value instanceof ExtendedContactDetail)) 2943 throw new FHIRException("Type mismatch: the type ExtendedContactDetail was expected, but "+this.value.getClass().getName()+" was encountered"); 2944 return (ExtendedContactDetail) this.value; 2945 } 2946 2947 public boolean hasValueExtendedContactDetail() { 2948 return this != null && this.value instanceof ExtendedContactDetail; 2949 } 2950 2951 /** 2952 * @return {@link #value} (The value of the Output parameter as a basic type.) 2953 */ 2954 public Dosage getValueDosage() throws FHIRException { 2955 if (this.value == null) 2956 this.value = new Dosage(); 2957 if (!(this.value instanceof Dosage)) 2958 throw new FHIRException("Type mismatch: the type Dosage was expected, but "+this.value.getClass().getName()+" was encountered"); 2959 return (Dosage) this.value; 2960 } 2961 2962 public boolean hasValueDosage() { 2963 return this != null && this.value instanceof Dosage; 2964 } 2965 2966 /** 2967 * @return {@link #value} (The value of the Output parameter as a basic type.) 2968 */ 2969 public Meta getValueMeta() throws FHIRException { 2970 if (this.value == null) 2971 this.value = new Meta(); 2972 if (!(this.value instanceof Meta)) 2973 throw new FHIRException("Type mismatch: the type Meta was expected, but "+this.value.getClass().getName()+" was encountered"); 2974 return (Meta) this.value; 2975 } 2976 2977 public boolean hasValueMeta() { 2978 return this != null && this.value instanceof Meta; 2979 } 2980 2981 public boolean hasValue() { 2982 return this.value != null && !this.value.isEmpty(); 2983 } 2984 2985 /** 2986 * @param value {@link #value} (The value of the Output parameter as a basic type.) 2987 */ 2988 public TaskOutputComponent setValue(DataType value) { 2989 if (value != null && !(value instanceof Base64BinaryType || value instanceof BooleanType || value instanceof CanonicalType || value instanceof CodeType || value instanceof DateType || value instanceof DateTimeType || value instanceof DecimalType || value instanceof IdType || value instanceof InstantType || value instanceof IntegerType || value instanceof Integer64Type || value instanceof MarkdownType || value instanceof OidType || value instanceof PositiveIntType || value instanceof StringType || value instanceof TimeType || value instanceof UnsignedIntType || value instanceof UriType || value instanceof UrlType || value instanceof UuidType || value instanceof Address || value instanceof Age || value instanceof Annotation || value instanceof Attachment || value instanceof CodeableConcept || value instanceof CodeableReference || value instanceof Coding || value instanceof ContactPoint || value instanceof Count || value instanceof Distance || value instanceof Duration || value instanceof HumanName || value instanceof Identifier || value instanceof Money || value instanceof Period || value instanceof Quantity || value instanceof Range || value instanceof Ratio || value instanceof RatioRange || value instanceof Reference || value instanceof SampledData || value instanceof Signature || value instanceof Timing || value instanceof ContactDetail || value instanceof DataRequirement || value instanceof Expression || value instanceof ParameterDefinition || value instanceof RelatedArtifact || value instanceof TriggerDefinition || value instanceof UsageContext || value instanceof Availability || value instanceof ExtendedContactDetail || value instanceof Dosage || value instanceof Meta)) 2990 throw new Error("Not the right type for Task.output.value[x]: "+value.fhirType()); 2991 this.value = value; 2992 return this; 2993 } 2994 2995 protected void listChildren(List<Property> children) { 2996 super.listChildren(children); 2997 children.add(new Property("type", "CodeableConcept", "The name of the Output parameter.", 0, 1, type)); 2998 children.add(new Property("value[x]", "base64Binary|boolean|canonical|code|date|dateTime|decimal|id|instant|integer|integer64|markdown|oid|positiveInt|string|time|unsignedInt|uri|url|uuid|Address|Age|Annotation|Attachment|CodeableConcept|CodeableReference|Coding|ContactPoint|Count|Distance|Duration|HumanName|Identifier|Money|Period|Quantity|Range|Ratio|RatioRange|Reference|SampledData|Signature|Timing|ContactDetail|DataRequirement|Expression|ParameterDefinition|RelatedArtifact|TriggerDefinition|UsageContext|Availability|ExtendedContactDetail|Dosage|Meta", "The value of the Output parameter as a basic type.", 0, 1, value)); 2999 } 3000 3001 @Override 3002 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 3003 switch (_hash) { 3004 case 3575610: /*type*/ return new Property("type", "CodeableConcept", "The name of the Output parameter.", 0, 1, type); 3005 case -1410166417: /*value[x]*/ return new Property("value[x]", "base64Binary|boolean|canonical|code|date|dateTime|decimal|id|instant|integer|integer64|markdown|oid|positiveInt|string|time|unsignedInt|uri|url|uuid|Address|Age|Annotation|Attachment|CodeableConcept|CodeableReference|Coding|ContactPoint|Count|Distance|Duration|HumanName|Identifier|Money|Period|Quantity|Range|Ratio|RatioRange|Reference|SampledData|Signature|Timing|ContactDetail|DataRequirement|Expression|ParameterDefinition|RelatedArtifact|TriggerDefinition|UsageContext|Availability|ExtendedContactDetail|Dosage|Meta", "The value of the Output parameter as a basic type.", 0, 1, value); 3006 case 111972721: /*value*/ return new Property("value[x]", "base64Binary|boolean|canonical|code|date|dateTime|decimal|id|instant|integer|integer64|markdown|oid|positiveInt|string|time|unsignedInt|uri|url|uuid|Address|Age|Annotation|Attachment|CodeableConcept|CodeableReference|Coding|ContactPoint|Count|Distance|Duration|HumanName|Identifier|Money|Period|Quantity|Range|Ratio|RatioRange|Reference|SampledData|Signature|Timing|ContactDetail|DataRequirement|Expression|ParameterDefinition|RelatedArtifact|TriggerDefinition|UsageContext|Availability|ExtendedContactDetail|Dosage|Meta", "The value of the Output parameter as a basic type.", 0, 1, value); 3007 case -1535024575: /*valueBase64Binary*/ return new Property("value[x]", "base64Binary", "The value of the Output parameter as a basic type.", 0, 1, value); 3008 case 733421943: /*valueBoolean*/ return new Property("value[x]", "boolean", "The value of the Output parameter as a basic type.", 0, 1, value); 3009 case -786218365: /*valueCanonical*/ return new Property("value[x]", "canonical", "The value of the Output parameter as a basic type.", 0, 1, value); 3010 case -766209282: /*valueCode*/ return new Property("value[x]", "code", "The value of the Output parameter as a basic type.", 0, 1, value); 3011 case -766192449: /*valueDate*/ return new Property("value[x]", "date", "The value of the Output parameter as a basic type.", 0, 1, value); 3012 case 1047929900: /*valueDateTime*/ return new Property("value[x]", "dateTime", "The value of the Output parameter as a basic type.", 0, 1, value); 3013 case -2083993440: /*valueDecimal*/ return new Property("value[x]", "decimal", "The value of the Output parameter as a basic type.", 0, 1, value); 3014 case 231604844: /*valueId*/ return new Property("value[x]", "id", "The value of the Output parameter as a basic type.", 0, 1, value); 3015 case -1668687056: /*valueInstant*/ return new Property("value[x]", "instant", "The value of the Output parameter as a basic type.", 0, 1, value); 3016 case -1668204915: /*valueInteger*/ return new Property("value[x]", "integer", "The value of the Output parameter as a basic type.", 0, 1, value); 3017 case -1122120181: /*valueInteger64*/ return new Property("value[x]", "integer64", "The value of the Output parameter as a basic type.", 0, 1, value); 3018 case -497880704: /*valueMarkdown*/ return new Property("value[x]", "markdown", "The value of the Output parameter as a basic type.", 0, 1, value); 3019 case -1410178407: /*valueOid*/ return new Property("value[x]", "oid", "The value of the Output parameter as a basic type.", 0, 1, value); 3020 case -1249932027: /*valuePositiveInt*/ return new Property("value[x]", "positiveInt", "The value of the Output parameter as a basic type.", 0, 1, value); 3021 case -1424603934: /*valueString*/ return new Property("value[x]", "string", "The value of the Output parameter as a basic type.", 0, 1, value); 3022 case -765708322: /*valueTime*/ return new Property("value[x]", "time", "The value of the Output parameter as a basic type.", 0, 1, value); 3023 case 26529417: /*valueUnsignedInt*/ return new Property("value[x]", "unsignedInt", "The value of the Output parameter as a basic type.", 0, 1, value); 3024 case -1410172357: /*valueUri*/ return new Property("value[x]", "uri", "The value of the Output parameter as a basic type.", 0, 1, value); 3025 case -1410172354: /*valueUrl*/ return new Property("value[x]", "url", "The value of the Output parameter as a basic type.", 0, 1, value); 3026 case -765667124: /*valueUuid*/ return new Property("value[x]", "uuid", "The value of the Output parameter as a basic type.", 0, 1, value); 3027 case -478981821: /*valueAddress*/ return new Property("value[x]", "Address", "The value of the Output parameter as a basic type.", 0, 1, value); 3028 case -1410191922: /*valueAge*/ return new Property("value[x]", "Age", "The value of the Output parameter as a basic type.", 0, 1, value); 3029 case -67108992: /*valueAnnotation*/ return new Property("value[x]", "Annotation", "The value of the Output parameter as a basic type.", 0, 1, value); 3030 case -475566732: /*valueAttachment*/ return new Property("value[x]", "Attachment", "The value of the Output parameter as a basic type.", 0, 1, value); 3031 case 924902896: /*valueCodeableConcept*/ return new Property("value[x]", "CodeableConcept", "The value of the Output parameter as a basic type.", 0, 1, value); 3032 case -257955629: /*valueCodeableReference*/ return new Property("value[x]", "CodeableReference", "The value of the Output parameter as a basic type.", 0, 1, value); 3033 case -1887705029: /*valueCoding*/ return new Property("value[x]", "Coding", "The value of the Output parameter as a basic type.", 0, 1, value); 3034 case 944904545: /*valueContactPoint*/ return new Property("value[x]", "ContactPoint", "The value of the Output parameter as a basic type.", 0, 1, value); 3035 case 2017332766: /*valueCount*/ return new Property("value[x]", "Count", "The value of the Output parameter as a basic type.", 0, 1, value); 3036 case -456359802: /*valueDistance*/ return new Property("value[x]", "Distance", "The value of the Output parameter as a basic type.", 0, 1, value); 3037 case 1558135333: /*valueDuration*/ return new Property("value[x]", "Duration", "The value of the Output parameter as a basic type.", 0, 1, value); 3038 case -2026205465: /*valueHumanName*/ return new Property("value[x]", "HumanName", "The value of the Output parameter as a basic type.", 0, 1, value); 3039 case -130498310: /*valueIdentifier*/ return new Property("value[x]", "Identifier", "The value of the Output parameter as a basic type.", 0, 1, value); 3040 case 2026560975: /*valueMoney*/ return new Property("value[x]", "Money", "The value of the Output parameter as a basic type.", 0, 1, value); 3041 case -1524344174: /*valuePeriod*/ return new Property("value[x]", "Period", "The value of the Output parameter as a basic type.", 0, 1, value); 3042 case -2029823716: /*valueQuantity*/ return new Property("value[x]", "Quantity", "The value of the Output parameter as a basic type.", 0, 1, value); 3043 case 2030761548: /*valueRange*/ return new Property("value[x]", "Range", "The value of the Output parameter as a basic type.", 0, 1, value); 3044 case 2030767386: /*valueRatio*/ return new Property("value[x]", "Ratio", "The value of the Output parameter as a basic type.", 0, 1, value); 3045 case -706454461: /*valueRatioRange*/ return new Property("value[x]", "RatioRange", "The value of the Output parameter as a basic type.", 0, 1, value); 3046 case 1755241690: /*valueReference*/ return new Property("value[x]", "Reference", "The value of the Output parameter as a basic type.", 0, 1, value); 3047 case -962229101: /*valueSampledData*/ return new Property("value[x]", "SampledData", "The value of the Output parameter as a basic type.", 0, 1, value); 3048 case -540985785: /*valueSignature*/ return new Property("value[x]", "Signature", "The value of the Output parameter as a basic type.", 0, 1, value); 3049 case -1406282469: /*valueTiming*/ return new Property("value[x]", "Timing", "The value of the Output parameter as a basic type.", 0, 1, value); 3050 case -1125200224: /*valueContactDetail*/ return new Property("value[x]", "ContactDetail", "The value of the Output parameter as a basic type.", 0, 1, value); 3051 case 1710554248: /*valueDataRequirement*/ return new Property("value[x]", "DataRequirement", "The value of the Output parameter as a basic type.", 0, 1, value); 3052 case -307517719: /*valueExpression*/ return new Property("value[x]", "Expression", "The value of the Output parameter as a basic type.", 0, 1, value); 3053 case 1387478187: /*valueParameterDefinition*/ return new Property("value[x]", "ParameterDefinition", "The value of the Output parameter as a basic type.", 0, 1, value); 3054 case 1748214124: /*valueRelatedArtifact*/ return new Property("value[x]", "RelatedArtifact", "The value of the Output parameter as a basic type.", 0, 1, value); 3055 case 976830394: /*valueTriggerDefinition*/ return new Property("value[x]", "TriggerDefinition", "The value of the Output parameter as a basic type.", 0, 1, value); 3056 case 588000479: /*valueUsageContext*/ return new Property("value[x]", "UsageContext", "The value of the Output parameter as a basic type.", 0, 1, value); 3057 case 1678530924: /*valueAvailability*/ return new Property("value[x]", "Availability", "The value of the Output parameter as a basic type.", 0, 1, value); 3058 case -1567222041: /*valueExtendedContactDetail*/ return new Property("value[x]", "ExtendedContactDetail", "The value of the Output parameter as a basic type.", 0, 1, value); 3059 case -1858636920: /*valueDosage*/ return new Property("value[x]", "Dosage", "The value of the Output parameter as a basic type.", 0, 1, value); 3060 case -765920490: /*valueMeta*/ return new Property("value[x]", "Meta", "The value of the Output parameter as a basic type.", 0, 1, value); 3061 default: return super.getNamedProperty(_hash, _name, _checkValid); 3062 } 3063 3064 } 3065 3066 @Override 3067 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 3068 switch (hash) { 3069 case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept 3070 case 111972721: /*value*/ return this.value == null ? new Base[0] : new Base[] {this.value}; // DataType 3071 default: return super.getProperty(hash, name, checkValid); 3072 } 3073 3074 } 3075 3076 @Override 3077 public Base setProperty(int hash, String name, Base value) throws FHIRException { 3078 switch (hash) { 3079 case 3575610: // type 3080 this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 3081 return value; 3082 case 111972721: // value 3083 this.value = TypeConvertor.castToType(value); // DataType 3084 return value; 3085 default: return super.setProperty(hash, name, value); 3086 } 3087 3088 } 3089 3090 @Override 3091 public Base setProperty(String name, Base value) throws FHIRException { 3092 if (name.equals("type")) { 3093 this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 3094 } else if (name.equals("value[x]")) { 3095 this.value = TypeConvertor.castToType(value); // DataType 3096 } else 3097 return super.setProperty(name, value); 3098 return value; 3099 } 3100 3101 @Override 3102 public Base makeProperty(int hash, String name) throws FHIRException { 3103 switch (hash) { 3104 case 3575610: return getType(); 3105 case -1410166417: return getValue(); 3106 case 111972721: return getValue(); 3107 default: return super.makeProperty(hash, name); 3108 } 3109 3110 } 3111 3112 @Override 3113 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 3114 switch (hash) { 3115 case 3575610: /*type*/ return new String[] {"CodeableConcept"}; 3116 case 111972721: /*value*/ return new String[] {"base64Binary", "boolean", "canonical", "code", "date", "dateTime", "decimal", "id", "instant", "integer", "integer64", "markdown", "oid", "positiveInt", "string", "time", "unsignedInt", "uri", "url", "uuid", "Address", "Age", "Annotation", "Attachment", "CodeableConcept", "CodeableReference", "Coding", "ContactPoint", "Count", "Distance", "Duration", "HumanName", "Identifier", "Money", "Period", "Quantity", "Range", "Ratio", "RatioRange", "Reference", "SampledData", "Signature", "Timing", "ContactDetail", "DataRequirement", "Expression", "ParameterDefinition", "RelatedArtifact", "TriggerDefinition", "UsageContext", "Availability", "ExtendedContactDetail", "Dosage", "Meta"}; 3117 default: return super.getTypesForProperty(hash, name); 3118 } 3119 3120 } 3121 3122 @Override 3123 public Base addChild(String name) throws FHIRException { 3124 if (name.equals("type")) { 3125 this.type = new CodeableConcept(); 3126 return this.type; 3127 } 3128 else if (name.equals("valueBase64Binary")) { 3129 this.value = new Base64BinaryType(); 3130 return this.value; 3131 } 3132 else if (name.equals("valueBoolean")) { 3133 this.value = new BooleanType(); 3134 return this.value; 3135 } 3136 else if (name.equals("valueCanonical")) { 3137 this.value = new CanonicalType(); 3138 return this.value; 3139 } 3140 else if (name.equals("valueCode")) { 3141 this.value = new CodeType(); 3142 return this.value; 3143 } 3144 else if (name.equals("valueDate")) { 3145 this.value = new DateType(); 3146 return this.value; 3147 } 3148 else if (name.equals("valueDateTime")) { 3149 this.value = new DateTimeType(); 3150 return this.value; 3151 } 3152 else if (name.equals("valueDecimal")) { 3153 this.value = new DecimalType(); 3154 return this.value; 3155 } 3156 else if (name.equals("valueId")) { 3157 this.value = new IdType(); 3158 return this.value; 3159 } 3160 else if (name.equals("valueInstant")) { 3161 this.value = new InstantType(); 3162 return this.value; 3163 } 3164 else if (name.equals("valueInteger")) { 3165 this.value = new IntegerType(); 3166 return this.value; 3167 } 3168 else if (name.equals("valueInteger64")) { 3169 this.value = new Integer64Type(); 3170 return this.value; 3171 } 3172 else if (name.equals("valueMarkdown")) { 3173 this.value = new MarkdownType(); 3174 return this.value; 3175 } 3176 else if (name.equals("valueOid")) { 3177 this.value = new OidType(); 3178 return this.value; 3179 } 3180 else if (name.equals("valuePositiveInt")) { 3181 this.value = new PositiveIntType(); 3182 return this.value; 3183 } 3184 else if (name.equals("valueString")) { 3185 this.value = new StringType(); 3186 return this.value; 3187 } 3188 else if (name.equals("valueTime")) { 3189 this.value = new TimeType(); 3190 return this.value; 3191 } 3192 else if (name.equals("valueUnsignedInt")) { 3193 this.value = new UnsignedIntType(); 3194 return this.value; 3195 } 3196 else if (name.equals("valueUri")) { 3197 this.value = new UriType(); 3198 return this.value; 3199 } 3200 else if (name.equals("valueUrl")) { 3201 this.value = new UrlType(); 3202 return this.value; 3203 } 3204 else if (name.equals("valueUuid")) { 3205 this.value = new UuidType(); 3206 return this.value; 3207 } 3208 else if (name.equals("valueAddress")) { 3209 this.value = new Address(); 3210 return this.value; 3211 } 3212 else if (name.equals("valueAge")) { 3213 this.value = new Age(); 3214 return this.value; 3215 } 3216 else if (name.equals("valueAnnotation")) { 3217 this.value = new Annotation(); 3218 return this.value; 3219 } 3220 else if (name.equals("valueAttachment")) { 3221 this.value = new Attachment(); 3222 return this.value; 3223 } 3224 else if (name.equals("valueCodeableConcept")) { 3225 this.value = new CodeableConcept(); 3226 return this.value; 3227 } 3228 else if (name.equals("valueCodeableReference")) { 3229 this.value = new CodeableReference(); 3230 return this.value; 3231 } 3232 else if (name.equals("valueCoding")) { 3233 this.value = new Coding(); 3234 return this.value; 3235 } 3236 else if (name.equals("valueContactPoint")) { 3237 this.value = new ContactPoint(); 3238 return this.value; 3239 } 3240 else if (name.equals("valueCount")) { 3241 this.value = new Count(); 3242 return this.value; 3243 } 3244 else if (name.equals("valueDistance")) { 3245 this.value = new Distance(); 3246 return this.value; 3247 } 3248 else if (name.equals("valueDuration")) { 3249 this.value = new Duration(); 3250 return this.value; 3251 } 3252 else if (name.equals("valueHumanName")) { 3253 this.value = new HumanName(); 3254 return this.value; 3255 } 3256 else if (name.equals("valueIdentifier")) { 3257 this.value = new Identifier(); 3258 return this.value; 3259 } 3260 else if (name.equals("valueMoney")) { 3261 this.value = new Money(); 3262 return this.value; 3263 } 3264 else if (name.equals("valuePeriod")) { 3265 this.value = new Period(); 3266 return this.value; 3267 } 3268 else if (name.equals("valueQuantity")) { 3269 this.value = new Quantity(); 3270 return this.value; 3271 } 3272 else if (name.equals("valueRange")) { 3273 this.value = new Range(); 3274 return this.value; 3275 } 3276 else if (name.equals("valueRatio")) { 3277 this.value = new Ratio(); 3278 return this.value; 3279 } 3280 else if (name.equals("valueRatioRange")) { 3281 this.value = new RatioRange(); 3282 return this.value; 3283 } 3284 else if (name.equals("valueReference")) { 3285 this.value = new Reference(); 3286 return this.value; 3287 } 3288 else if (name.equals("valueSampledData")) { 3289 this.value = new SampledData(); 3290 return this.value; 3291 } 3292 else if (name.equals("valueSignature")) { 3293 this.value = new Signature(); 3294 return this.value; 3295 } 3296 else if (name.equals("valueTiming")) { 3297 this.value = new Timing(); 3298 return this.value; 3299 } 3300 else if (name.equals("valueContactDetail")) { 3301 this.value = new ContactDetail(); 3302 return this.value; 3303 } 3304 else if (name.equals("valueDataRequirement")) { 3305 this.value = new DataRequirement(); 3306 return this.value; 3307 } 3308 else if (name.equals("valueExpression")) { 3309 this.value = new Expression(); 3310 return this.value; 3311 } 3312 else if (name.equals("valueParameterDefinition")) { 3313 this.value = new ParameterDefinition(); 3314 return this.value; 3315 } 3316 else if (name.equals("valueRelatedArtifact")) { 3317 this.value = new RelatedArtifact(); 3318 return this.value; 3319 } 3320 else if (name.equals("valueTriggerDefinition")) { 3321 this.value = new TriggerDefinition(); 3322 return this.value; 3323 } 3324 else if (name.equals("valueUsageContext")) { 3325 this.value = new UsageContext(); 3326 return this.value; 3327 } 3328 else if (name.equals("valueAvailability")) { 3329 this.value = new Availability(); 3330 return this.value; 3331 } 3332 else if (name.equals("valueExtendedContactDetail")) { 3333 this.value = new ExtendedContactDetail(); 3334 return this.value; 3335 } 3336 else if (name.equals("valueDosage")) { 3337 this.value = new Dosage(); 3338 return this.value; 3339 } 3340 else if (name.equals("valueMeta")) { 3341 this.value = new Meta(); 3342 return this.value; 3343 } 3344 else 3345 return super.addChild(name); 3346 } 3347 3348 public TaskOutputComponent copy() { 3349 TaskOutputComponent dst = new TaskOutputComponent(); 3350 copyValues(dst); 3351 return dst; 3352 } 3353 3354 public void copyValues(TaskOutputComponent dst) { 3355 super.copyValues(dst); 3356 dst.type = type == null ? null : type.copy(); 3357 dst.value = value == null ? null : value.copy(); 3358 } 3359 3360 @Override 3361 public boolean equalsDeep(Base other_) { 3362 if (!super.equalsDeep(other_)) 3363 return false; 3364 if (!(other_ instanceof TaskOutputComponent)) 3365 return false; 3366 TaskOutputComponent o = (TaskOutputComponent) other_; 3367 return compareDeep(type, o.type, true) && compareDeep(value, o.value, true); 3368 } 3369 3370 @Override 3371 public boolean equalsShallow(Base other_) { 3372 if (!super.equalsShallow(other_)) 3373 return false; 3374 if (!(other_ instanceof TaskOutputComponent)) 3375 return false; 3376 TaskOutputComponent o = (TaskOutputComponent) other_; 3377 return true; 3378 } 3379 3380 public boolean isEmpty() { 3381 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(type, value); 3382 } 3383 3384 public String fhirType() { 3385 return "Task.output"; 3386 3387 } 3388 3389 } 3390 3391 /** 3392 * The business identifier for this task. 3393 */ 3394 @Child(name = "identifier", type = {Identifier.class}, order=0, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 3395 @Description(shortDefinition="Task Instance Identifier", formalDefinition="The business identifier for this task." ) 3396 protected List<Identifier> identifier; 3397 3398 /** 3399 * The URL pointing to a *FHIR*-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Task. 3400 */ 3401 @Child(name = "instantiatesCanonical", type = {CanonicalType.class}, order=1, min=0, max=1, modifier=false, summary=true) 3402 @Description(shortDefinition="Formal definition of task", formalDefinition="The URL pointing to a *FHIR*-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Task." ) 3403 protected CanonicalType instantiatesCanonical; 3404 3405 /** 3406 * The URL pointing to an *externally* maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Task. 3407 */ 3408 @Child(name = "instantiatesUri", type = {UriType.class}, order=2, min=0, max=1, modifier=false, summary=true) 3409 @Description(shortDefinition="Formal definition of task", formalDefinition="The URL pointing to an *externally* maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Task." ) 3410 protected UriType instantiatesUri; 3411 3412 /** 3413 * BasedOn refers to a higher-level authorization that triggered the creation of the task. It references a "request" resource such as a ServiceRequest, MedicationRequest, CarePlan, etc. which is distinct from the "request" resource the task is seeking to fulfill. This latter resource is referenced by focus. For example, based on a CarePlan (= basedOn), a task is created to fulfill a ServiceRequest ( = focus ) to collect a specimen from a patient. 3414 */ 3415 @Child(name = "basedOn", type = {Reference.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 3416 @Description(shortDefinition="Request fulfilled by this task", formalDefinition="BasedOn refers to a higher-level authorization that triggered the creation of the task. It references a \"request\" resource such as a ServiceRequest, MedicationRequest, CarePlan, etc. which is distinct from the \"request\" resource the task is seeking to fulfill. This latter resource is referenced by focus. For example, based on a CarePlan (= basedOn), a task is created to fulfill a ServiceRequest ( = focus ) to collect a specimen from a patient." ) 3417 protected List<Reference> basedOn; 3418 3419 /** 3420 * An identifier that links together multiple tasks and other requests that were created in the same context. 3421 */ 3422 @Child(name = "groupIdentifier", type = {Identifier.class}, order=4, min=0, max=1, modifier=false, summary=true) 3423 @Description(shortDefinition="Requisition or grouper id", formalDefinition="An identifier that links together multiple tasks and other requests that were created in the same context." ) 3424 protected Identifier groupIdentifier; 3425 3426 /** 3427 * Task that this particular task is part of. 3428 */ 3429 @Child(name = "partOf", type = {Task.class}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 3430 @Description(shortDefinition="Composite task", formalDefinition="Task that this particular task is part of." ) 3431 protected List<Reference> partOf; 3432 3433 /** 3434 * The current status of the task. 3435 */ 3436 @Child(name = "status", type = {CodeType.class}, order=6, min=1, max=1, modifier=true, summary=true) 3437 @Description(shortDefinition="draft | requested | received | accepted | +", formalDefinition="The current status of the task." ) 3438 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/task-status") 3439 protected Enumeration<TaskStatus> status; 3440 3441 /** 3442 * An explanation as to why this task is held, failed, was refused, etc. 3443 */ 3444 @Child(name = "statusReason", type = {CodeableReference.class}, order=7, min=0, max=1, modifier=false, summary=true) 3445 @Description(shortDefinition="Reason for current status", formalDefinition="An explanation as to why this task is held, failed, was refused, etc." ) 3446 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/task-status-reason") 3447 protected CodeableReference statusReason; 3448 3449 /** 3450 * Contains business-specific nuances of the business state. 3451 */ 3452 @Child(name = "businessStatus", type = {CodeableConcept.class}, order=8, min=0, max=1, modifier=false, summary=true) 3453 @Description(shortDefinition="E.g. \"Specimen collected\", \"IV prepped\"", formalDefinition="Contains business-specific nuances of the business state." ) 3454 protected CodeableConcept businessStatus; 3455 3456 /** 3457 * Indicates the "level" of actionability associated with the Task, i.e. i+R[9]Cs this a proposed task, a planned task, an actionable task, etc. 3458 */ 3459 @Child(name = "intent", type = {CodeType.class}, order=9, min=1, max=1, modifier=false, summary=true) 3460 @Description(shortDefinition="unknown | proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option", formalDefinition="Indicates the \"level\" of actionability associated with the Task, i.e. i+R[9]Cs this a proposed task, a planned task, an actionable task, etc." ) 3461 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/task-intent") 3462 protected Enumeration<TaskIntent> intent; 3463 3464 /** 3465 * Indicates how quickly the Task should be addressed with respect to other requests. 3466 */ 3467 @Child(name = "priority", type = {CodeType.class}, order=10, min=0, max=1, modifier=false, summary=false) 3468 @Description(shortDefinition="routine | urgent | asap | stat", formalDefinition="Indicates how quickly the Task should be addressed with respect to other requests." ) 3469 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/request-priority") 3470 protected Enumeration<RequestPriority> priority; 3471 3472 /** 3473 * If true indicates that the Task is asking for the specified action to *not* occur. 3474 */ 3475 @Child(name = "doNotPerform", type = {BooleanType.class}, order=11, min=0, max=1, modifier=true, summary=true) 3476 @Description(shortDefinition="True if Task is prohibiting action", formalDefinition="If true indicates that the Task is asking for the specified action to *not* occur." ) 3477 protected BooleanType doNotPerform; 3478 3479 /** 3480 * A name or code (or both) briefly describing what the task involves. 3481 */ 3482 @Child(name = "code", type = {CodeableConcept.class}, order=12, min=0, max=1, modifier=false, summary=true) 3483 @Description(shortDefinition="Task Type", formalDefinition="A name or code (or both) briefly describing what the task involves." ) 3484 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/task-code") 3485 protected CodeableConcept code; 3486 3487 /** 3488 * A free-text description of what is to be performed. 3489 */ 3490 @Child(name = "description", type = {StringType.class}, order=13, min=0, max=1, modifier=false, summary=true) 3491 @Description(shortDefinition="Human-readable explanation of task", formalDefinition="A free-text description of what is to be performed." ) 3492 protected StringType description; 3493 3494 /** 3495 * The request being fulfilled or the resource being manipulated (changed, suspended, etc.) by this task. 3496 */ 3497 @Child(name = "focus", type = {Reference.class}, order=14, min=0, max=1, modifier=false, summary=true) 3498 @Description(shortDefinition="What task is acting on", formalDefinition="The request being fulfilled or the resource being manipulated (changed, suspended, etc.) by this task." ) 3499 protected Reference focus; 3500 3501 /** 3502 * The entity who benefits from the performance of the service specified in the task (e.g., the patient). 3503 */ 3504 @Child(name = "for", type = {Reference.class}, order=15, min=0, max=1, modifier=false, summary=true) 3505 @Description(shortDefinition="Beneficiary of the Task", formalDefinition="The entity who benefits from the performance of the service specified in the task (e.g., the patient)." ) 3506 protected Reference for_; 3507 3508 /** 3509 * The healthcare event (e.g. a patient and healthcare provider interaction) during which this task was created. 3510 */ 3511 @Child(name = "encounter", type = {Encounter.class}, order=16, min=0, max=1, modifier=false, summary=true) 3512 @Description(shortDefinition="Healthcare event during which this task originated", formalDefinition="The healthcare event (e.g. a patient and healthcare provider interaction) during which this task was created." ) 3513 protected Reference encounter; 3514 3515 /** 3516 * Indicates the start and/or end of the period of time when completion of the task is desired to take place. 3517 */ 3518 @Child(name = "requestedPeriod", type = {Period.class}, order=17, min=0, max=1, modifier=false, summary=true) 3519 @Description(shortDefinition="When the task should be performed", formalDefinition="Indicates the start and/or end of the period of time when completion of the task is desired to take place." ) 3520 protected Period requestedPeriod; 3521 3522 /** 3523 * Identifies the time action was first taken against the task (start) and/or the time final action was taken against the task prior to marking it as completed (end). 3524 */ 3525 @Child(name = "executionPeriod", type = {Period.class}, order=18, min=0, max=1, modifier=false, summary=true) 3526 @Description(shortDefinition="Start and end time of execution", formalDefinition="Identifies the time action was first taken against the task (start) and/or the time final action was taken against the task prior to marking it as completed (end)." ) 3527 protected Period executionPeriod; 3528 3529 /** 3530 * The date and time this task was created. 3531 */ 3532 @Child(name = "authoredOn", type = {DateTimeType.class}, order=19, min=0, max=1, modifier=false, summary=false) 3533 @Description(shortDefinition="Task Creation Date", formalDefinition="The date and time this task was created." ) 3534 protected DateTimeType authoredOn; 3535 3536 /** 3537 * The date and time of last modification to this task. 3538 */ 3539 @Child(name = "lastModified", type = {DateTimeType.class}, order=20, min=0, max=1, modifier=false, summary=true) 3540 @Description(shortDefinition="Task Last Modified Date", formalDefinition="The date and time of last modification to this task." ) 3541 protected DateTimeType lastModified; 3542 3543 /** 3544 * The creator of the task. 3545 */ 3546 @Child(name = "requester", type = {Device.class, Organization.class, Patient.class, Practitioner.class, PractitionerRole.class, RelatedPerson.class}, order=21, min=0, max=1, modifier=false, summary=true) 3547 @Description(shortDefinition="Who is asking for task to be done", formalDefinition="The creator of the task." ) 3548 protected Reference requester; 3549 3550 /** 3551 * The kind of participant or specific participant that should perform the task. 3552 */ 3553 @Child(name = "requestedPerformer", type = {CodeableReference.class}, order=22, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 3554 @Description(shortDefinition="Who should perform Task", formalDefinition="The kind of participant or specific participant that should perform the task." ) 3555 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/performer-role") 3556 protected List<CodeableReference> requestedPerformer; 3557 3558 /** 3559 * Individual organization or Device currently responsible for task execution. 3560 */ 3561 @Child(name = "owner", type = {Practitioner.class, PractitionerRole.class, Organization.class, CareTeam.class, HealthcareService.class, Patient.class, Device.class, RelatedPerson.class}, order=23, min=0, max=1, modifier=false, summary=true) 3562 @Description(shortDefinition="Responsible individual", formalDefinition="Individual organization or Device currently responsible for task execution." ) 3563 protected Reference owner; 3564 3565 /** 3566 * Principal physical location where the this task is performed. 3567 */ 3568 @Child(name = "location", type = {Location.class}, order=24, min=0, max=1, modifier=false, summary=true) 3569 @Description(shortDefinition="Where task occurs", formalDefinition="Principal physical location where the this task is performed." ) 3570 protected Reference location; 3571 3572 /** 3573 * A description, code, or reference indicating why this task needs to be performed. 3574 */ 3575 @Child(name = "reason", type = {CodeableReference.class}, order=25, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 3576 @Description(shortDefinition="Why task is needed", formalDefinition="A description, code, or reference indicating why this task needs to be performed." ) 3577 protected List<CodeableReference> reason; 3578 3579 /** 3580 * Insurance plans, coverage extensions, pre-authorizations and/or pre-determinations that may be relevant to the Task. 3581 */ 3582 @Child(name = "insurance", type = {Coverage.class, ClaimResponse.class}, order=26, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 3583 @Description(shortDefinition="Associated insurance coverage", formalDefinition="Insurance plans, coverage extensions, pre-authorizations and/or pre-determinations that may be relevant to the Task." ) 3584 protected List<Reference> insurance; 3585 3586 /** 3587 * Free-text information captured about the task as it progresses. 3588 */ 3589 @Child(name = "note", type = {Annotation.class}, order=27, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 3590 @Description(shortDefinition="Comments made about the task", formalDefinition="Free-text information captured about the task as it progresses." ) 3591 protected List<Annotation> note; 3592 3593 /** 3594 * Links to Provenance records for past versions of this Task that identify key state transitions or updates that are likely to be relevant to a user looking at the current version of the task. 3595 */ 3596 @Child(name = "relevantHistory", type = {Provenance.class}, order=28, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 3597 @Description(shortDefinition="Key events in history of the Task", formalDefinition="Links to Provenance records for past versions of this Task that identify key state transitions or updates that are likely to be relevant to a user looking at the current version of the task." ) 3598 protected List<Reference> relevantHistory; 3599 3600 /** 3601 * If the Task.focus is a request resource and the task is seeking fulfillment (i.e. is asking for the request to be actioned), this element identifies any limitations on what parts of the referenced request should be actioned. 3602 */ 3603 @Child(name = "restriction", type = {}, order=29, min=0, max=1, modifier=false, summary=false) 3604 @Description(shortDefinition="Constraints on fulfillment tasks", formalDefinition="If the Task.focus is a request resource and the task is seeking fulfillment (i.e. is asking for the request to be actioned), this element identifies any limitations on what parts of the referenced request should be actioned." ) 3605 protected TaskRestrictionComponent restriction; 3606 3607 /** 3608 * Additional information that may be needed in the execution of the task. 3609 */ 3610 @Child(name = "input", type = {}, order=30, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 3611 @Description(shortDefinition="Information used to perform task", formalDefinition="Additional information that may be needed in the execution of the task." ) 3612 protected List<TaskInputComponent> input; 3613 3614 /** 3615 * Outputs produced by the Task. 3616 */ 3617 @Child(name = "output", type = {}, order=31, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 3618 @Description(shortDefinition="Information produced as part of task", formalDefinition="Outputs produced by the Task." ) 3619 protected List<TaskOutputComponent> output; 3620 3621 private static final long serialVersionUID = -15240003L; 3622 3623 /** 3624 * Constructor 3625 */ 3626 public Task() { 3627 super(); 3628 } 3629 3630 /** 3631 * Constructor 3632 */ 3633 public Task(TaskStatus status, TaskIntent intent) { 3634 super(); 3635 this.setStatus(status); 3636 this.setIntent(intent); 3637 } 3638 3639 /** 3640 * @return {@link #identifier} (The business identifier for this task.) 3641 */ 3642 public List<Identifier> getIdentifier() { 3643 if (this.identifier == null) 3644 this.identifier = new ArrayList<Identifier>(); 3645 return this.identifier; 3646 } 3647 3648 /** 3649 * @return Returns a reference to <code>this</code> for easy method chaining 3650 */ 3651 public Task setIdentifier(List<Identifier> theIdentifier) { 3652 this.identifier = theIdentifier; 3653 return this; 3654 } 3655 3656 public boolean hasIdentifier() { 3657 if (this.identifier == null) 3658 return false; 3659 for (Identifier item : this.identifier) 3660 if (!item.isEmpty()) 3661 return true; 3662 return false; 3663 } 3664 3665 public Identifier addIdentifier() { //3 3666 Identifier t = new Identifier(); 3667 if (this.identifier == null) 3668 this.identifier = new ArrayList<Identifier>(); 3669 this.identifier.add(t); 3670 return t; 3671 } 3672 3673 public Task addIdentifier(Identifier t) { //3 3674 if (t == null) 3675 return this; 3676 if (this.identifier == null) 3677 this.identifier = new ArrayList<Identifier>(); 3678 this.identifier.add(t); 3679 return this; 3680 } 3681 3682 /** 3683 * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist {3} 3684 */ 3685 public Identifier getIdentifierFirstRep() { 3686 if (getIdentifier().isEmpty()) { 3687 addIdentifier(); 3688 } 3689 return getIdentifier().get(0); 3690 } 3691 3692 /** 3693 * @return {@link #instantiatesCanonical} (The URL pointing to a *FHIR*-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Task.). This is the underlying object with id, value and extensions. The accessor "getInstantiatesCanonical" gives direct access to the value 3694 */ 3695 public CanonicalType getInstantiatesCanonicalElement() { 3696 if (this.instantiatesCanonical == null) 3697 if (Configuration.errorOnAutoCreate()) 3698 throw new Error("Attempt to auto-create Task.instantiatesCanonical"); 3699 else if (Configuration.doAutoCreate()) 3700 this.instantiatesCanonical = new CanonicalType(); // bb 3701 return this.instantiatesCanonical; 3702 } 3703 3704 public boolean hasInstantiatesCanonicalElement() { 3705 return this.instantiatesCanonical != null && !this.instantiatesCanonical.isEmpty(); 3706 } 3707 3708 public boolean hasInstantiatesCanonical() { 3709 return this.instantiatesCanonical != null && !this.instantiatesCanonical.isEmpty(); 3710 } 3711 3712 /** 3713 * @param value {@link #instantiatesCanonical} (The URL pointing to a *FHIR*-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Task.). This is the underlying object with id, value and extensions. The accessor "getInstantiatesCanonical" gives direct access to the value 3714 */ 3715 public Task setInstantiatesCanonicalElement(CanonicalType value) { 3716 this.instantiatesCanonical = value; 3717 return this; 3718 } 3719 3720 /** 3721 * @return The URL pointing to a *FHIR*-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Task. 3722 */ 3723 public String getInstantiatesCanonical() { 3724 return this.instantiatesCanonical == null ? null : this.instantiatesCanonical.getValue(); 3725 } 3726 3727 /** 3728 * @param value The URL pointing to a *FHIR*-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Task. 3729 */ 3730 public Task setInstantiatesCanonical(String value) { 3731 if (Utilities.noString(value)) 3732 this.instantiatesCanonical = null; 3733 else { 3734 if (this.instantiatesCanonical == null) 3735 this.instantiatesCanonical = new CanonicalType(); 3736 this.instantiatesCanonical.setValue(value); 3737 } 3738 return this; 3739 } 3740 3741 /** 3742 * @return {@link #instantiatesUri} (The URL pointing to an *externally* maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Task.). This is the underlying object with id, value and extensions. The accessor "getInstantiatesUri" gives direct access to the value 3743 */ 3744 public UriType getInstantiatesUriElement() { 3745 if (this.instantiatesUri == null) 3746 if (Configuration.errorOnAutoCreate()) 3747 throw new Error("Attempt to auto-create Task.instantiatesUri"); 3748 else if (Configuration.doAutoCreate()) 3749 this.instantiatesUri = new UriType(); // bb 3750 return this.instantiatesUri; 3751 } 3752 3753 public boolean hasInstantiatesUriElement() { 3754 return this.instantiatesUri != null && !this.instantiatesUri.isEmpty(); 3755 } 3756 3757 public boolean hasInstantiatesUri() { 3758 return this.instantiatesUri != null && !this.instantiatesUri.isEmpty(); 3759 } 3760 3761 /** 3762 * @param value {@link #instantiatesUri} (The URL pointing to an *externally* maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Task.). This is the underlying object with id, value and extensions. The accessor "getInstantiatesUri" gives direct access to the value 3763 */ 3764 public Task setInstantiatesUriElement(UriType value) { 3765 this.instantiatesUri = value; 3766 return this; 3767 } 3768 3769 /** 3770 * @return The URL pointing to an *externally* maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Task. 3771 */ 3772 public String getInstantiatesUri() { 3773 return this.instantiatesUri == null ? null : this.instantiatesUri.getValue(); 3774 } 3775 3776 /** 3777 * @param value The URL pointing to an *externally* maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Task. 3778 */ 3779 public Task setInstantiatesUri(String value) { 3780 if (Utilities.noString(value)) 3781 this.instantiatesUri = null; 3782 else { 3783 if (this.instantiatesUri == null) 3784 this.instantiatesUri = new UriType(); 3785 this.instantiatesUri.setValue(value); 3786 } 3787 return this; 3788 } 3789 3790 /** 3791 * @return {@link #basedOn} (BasedOn refers to a higher-level authorization that triggered the creation of the task. It references a "request" resource such as a ServiceRequest, MedicationRequest, CarePlan, etc. which is distinct from the "request" resource the task is seeking to fulfill. This latter resource is referenced by focus. For example, based on a CarePlan (= basedOn), a task is created to fulfill a ServiceRequest ( = focus ) to collect a specimen from a patient.) 3792 */ 3793 public List<Reference> getBasedOn() { 3794 if (this.basedOn == null) 3795 this.basedOn = new ArrayList<Reference>(); 3796 return this.basedOn; 3797 } 3798 3799 /** 3800 * @return Returns a reference to <code>this</code> for easy method chaining 3801 */ 3802 public Task setBasedOn(List<Reference> theBasedOn) { 3803 this.basedOn = theBasedOn; 3804 return this; 3805 } 3806 3807 public boolean hasBasedOn() { 3808 if (this.basedOn == null) 3809 return false; 3810 for (Reference item : this.basedOn) 3811 if (!item.isEmpty()) 3812 return true; 3813 return false; 3814 } 3815 3816 public Reference addBasedOn() { //3 3817 Reference t = new Reference(); 3818 if (this.basedOn == null) 3819 this.basedOn = new ArrayList<Reference>(); 3820 this.basedOn.add(t); 3821 return t; 3822 } 3823 3824 public Task addBasedOn(Reference t) { //3 3825 if (t == null) 3826 return this; 3827 if (this.basedOn == null) 3828 this.basedOn = new ArrayList<Reference>(); 3829 this.basedOn.add(t); 3830 return this; 3831 } 3832 3833 /** 3834 * @return The first repetition of repeating field {@link #basedOn}, creating it if it does not already exist {3} 3835 */ 3836 public Reference getBasedOnFirstRep() { 3837 if (getBasedOn().isEmpty()) { 3838 addBasedOn(); 3839 } 3840 return getBasedOn().get(0); 3841 } 3842 3843 /** 3844 * @return {@link #groupIdentifier} (An identifier that links together multiple tasks and other requests that were created in the same context.) 3845 */ 3846 public Identifier getGroupIdentifier() { 3847 if (this.groupIdentifier == null) 3848 if (Configuration.errorOnAutoCreate()) 3849 throw new Error("Attempt to auto-create Task.groupIdentifier"); 3850 else if (Configuration.doAutoCreate()) 3851 this.groupIdentifier = new Identifier(); // cc 3852 return this.groupIdentifier; 3853 } 3854 3855 public boolean hasGroupIdentifier() { 3856 return this.groupIdentifier != null && !this.groupIdentifier.isEmpty(); 3857 } 3858 3859 /** 3860 * @param value {@link #groupIdentifier} (An identifier that links together multiple tasks and other requests that were created in the same context.) 3861 */ 3862 public Task setGroupIdentifier(Identifier value) { 3863 this.groupIdentifier = value; 3864 return this; 3865 } 3866 3867 /** 3868 * @return {@link #partOf} (Task that this particular task is part of.) 3869 */ 3870 public List<Reference> getPartOf() { 3871 if (this.partOf == null) 3872 this.partOf = new ArrayList<Reference>(); 3873 return this.partOf; 3874 } 3875 3876 /** 3877 * @return Returns a reference to <code>this</code> for easy method chaining 3878 */ 3879 public Task setPartOf(List<Reference> thePartOf) { 3880 this.partOf = thePartOf; 3881 return this; 3882 } 3883 3884 public boolean hasPartOf() { 3885 if (this.partOf == null) 3886 return false; 3887 for (Reference item : this.partOf) 3888 if (!item.isEmpty()) 3889 return true; 3890 return false; 3891 } 3892 3893 public Reference addPartOf() { //3 3894 Reference t = new Reference(); 3895 if (this.partOf == null) 3896 this.partOf = new ArrayList<Reference>(); 3897 this.partOf.add(t); 3898 return t; 3899 } 3900 3901 public Task addPartOf(Reference t) { //3 3902 if (t == null) 3903 return this; 3904 if (this.partOf == null) 3905 this.partOf = new ArrayList<Reference>(); 3906 this.partOf.add(t); 3907 return this; 3908 } 3909 3910 /** 3911 * @return The first repetition of repeating field {@link #partOf}, creating it if it does not already exist {3} 3912 */ 3913 public Reference getPartOfFirstRep() { 3914 if (getPartOf().isEmpty()) { 3915 addPartOf(); 3916 } 3917 return getPartOf().get(0); 3918 } 3919 3920 /** 3921 * @return {@link #status} (The current status of the task.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 3922 */ 3923 public Enumeration<TaskStatus> getStatusElement() { 3924 if (this.status == null) 3925 if (Configuration.errorOnAutoCreate()) 3926 throw new Error("Attempt to auto-create Task.status"); 3927 else if (Configuration.doAutoCreate()) 3928 this.status = new Enumeration<TaskStatus>(new TaskStatusEnumFactory()); // bb 3929 return this.status; 3930 } 3931 3932 public boolean hasStatusElement() { 3933 return this.status != null && !this.status.isEmpty(); 3934 } 3935 3936 public boolean hasStatus() { 3937 return this.status != null && !this.status.isEmpty(); 3938 } 3939 3940 /** 3941 * @param value {@link #status} (The current status of the task.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 3942 */ 3943 public Task setStatusElement(Enumeration<TaskStatus> value) { 3944 this.status = value; 3945 return this; 3946 } 3947 3948 /** 3949 * @return The current status of the task. 3950 */ 3951 public TaskStatus getStatus() { 3952 return this.status == null ? null : this.status.getValue(); 3953 } 3954 3955 /** 3956 * @param value The current status of the task. 3957 */ 3958 public Task setStatus(TaskStatus value) { 3959 if (this.status == null) 3960 this.status = new Enumeration<TaskStatus>(new TaskStatusEnumFactory()); 3961 this.status.setValue(value); 3962 return this; 3963 } 3964 3965 /** 3966 * @return {@link #statusReason} (An explanation as to why this task is held, failed, was refused, etc.) 3967 */ 3968 public CodeableReference getStatusReason() { 3969 if (this.statusReason == null) 3970 if (Configuration.errorOnAutoCreate()) 3971 throw new Error("Attempt to auto-create Task.statusReason"); 3972 else if (Configuration.doAutoCreate()) 3973 this.statusReason = new CodeableReference(); // cc 3974 return this.statusReason; 3975 } 3976 3977 public boolean hasStatusReason() { 3978 return this.statusReason != null && !this.statusReason.isEmpty(); 3979 } 3980 3981 /** 3982 * @param value {@link #statusReason} (An explanation as to why this task is held, failed, was refused, etc.) 3983 */ 3984 public Task setStatusReason(CodeableReference value) { 3985 this.statusReason = value; 3986 return this; 3987 } 3988 3989 /** 3990 * @return {@link #businessStatus} (Contains business-specific nuances of the business state.) 3991 */ 3992 public CodeableConcept getBusinessStatus() { 3993 if (this.businessStatus == null) 3994 if (Configuration.errorOnAutoCreate()) 3995 throw new Error("Attempt to auto-create Task.businessStatus"); 3996 else if (Configuration.doAutoCreate()) 3997 this.businessStatus = new CodeableConcept(); // cc 3998 return this.businessStatus; 3999 } 4000 4001 public boolean hasBusinessStatus() { 4002 return this.businessStatus != null && !this.businessStatus.isEmpty(); 4003 } 4004 4005 /** 4006 * @param value {@link #businessStatus} (Contains business-specific nuances of the business state.) 4007 */ 4008 public Task setBusinessStatus(CodeableConcept value) { 4009 this.businessStatus = value; 4010 return this; 4011 } 4012 4013 /** 4014 * @return {@link #intent} (Indicates the "level" of actionability associated with the Task, i.e. i+R[9]Cs this a proposed task, a planned task, an actionable task, etc.). This is the underlying object with id, value and extensions. The accessor "getIntent" gives direct access to the value 4015 */ 4016 public Enumeration<TaskIntent> getIntentElement() { 4017 if (this.intent == null) 4018 if (Configuration.errorOnAutoCreate()) 4019 throw new Error("Attempt to auto-create Task.intent"); 4020 else if (Configuration.doAutoCreate()) 4021 this.intent = new Enumeration<TaskIntent>(new TaskIntentEnumFactory()); // bb 4022 return this.intent; 4023 } 4024 4025 public boolean hasIntentElement() { 4026 return this.intent != null && !this.intent.isEmpty(); 4027 } 4028 4029 public boolean hasIntent() { 4030 return this.intent != null && !this.intent.isEmpty(); 4031 } 4032 4033 /** 4034 * @param value {@link #intent} (Indicates the "level" of actionability associated with the Task, i.e. i+R[9]Cs this a proposed task, a planned task, an actionable task, etc.). This is the underlying object with id, value and extensions. The accessor "getIntent" gives direct access to the value 4035 */ 4036 public Task setIntentElement(Enumeration<TaskIntent> value) { 4037 this.intent = value; 4038 return this; 4039 } 4040 4041 /** 4042 * @return Indicates the "level" of actionability associated with the Task, i.e. i+R[9]Cs this a proposed task, a planned task, an actionable task, etc. 4043 */ 4044 public TaskIntent getIntent() { 4045 return this.intent == null ? null : this.intent.getValue(); 4046 } 4047 4048 /** 4049 * @param value Indicates the "level" of actionability associated with the Task, i.e. i+R[9]Cs this a proposed task, a planned task, an actionable task, etc. 4050 */ 4051 public Task setIntent(TaskIntent value) { 4052 if (this.intent == null) 4053 this.intent = new Enumeration<TaskIntent>(new TaskIntentEnumFactory()); 4054 this.intent.setValue(value); 4055 return this; 4056 } 4057 4058 /** 4059 * @return {@link #priority} (Indicates how quickly the Task should be addressed with respect to other requests.). This is the underlying object with id, value and extensions. The accessor "getPriority" gives direct access to the value 4060 */ 4061 public Enumeration<RequestPriority> getPriorityElement() { 4062 if (this.priority == null) 4063 if (Configuration.errorOnAutoCreate()) 4064 throw new Error("Attempt to auto-create Task.priority"); 4065 else if (Configuration.doAutoCreate()) 4066 this.priority = new Enumeration<RequestPriority>(new RequestPriorityEnumFactory()); // bb 4067 return this.priority; 4068 } 4069 4070 public boolean hasPriorityElement() { 4071 return this.priority != null && !this.priority.isEmpty(); 4072 } 4073 4074 public boolean hasPriority() { 4075 return this.priority != null && !this.priority.isEmpty(); 4076 } 4077 4078 /** 4079 * @param value {@link #priority} (Indicates how quickly the Task should be addressed with respect to other requests.). This is the underlying object with id, value and extensions. The accessor "getPriority" gives direct access to the value 4080 */ 4081 public Task setPriorityElement(Enumeration<RequestPriority> value) { 4082 this.priority = value; 4083 return this; 4084 } 4085 4086 /** 4087 * @return Indicates how quickly the Task should be addressed with respect to other requests. 4088 */ 4089 public RequestPriority getPriority() { 4090 return this.priority == null ? null : this.priority.getValue(); 4091 } 4092 4093 /** 4094 * @param value Indicates how quickly the Task should be addressed with respect to other requests. 4095 */ 4096 public Task setPriority(RequestPriority value) { 4097 if (value == null) 4098 this.priority = null; 4099 else { 4100 if (this.priority == null) 4101 this.priority = new Enumeration<RequestPriority>(new RequestPriorityEnumFactory()); 4102 this.priority.setValue(value); 4103 } 4104 return this; 4105 } 4106 4107 /** 4108 * @return {@link #doNotPerform} (If true indicates that the Task is asking for the specified action to *not* occur.). This is the underlying object with id, value and extensions. The accessor "getDoNotPerform" gives direct access to the value 4109 */ 4110 public BooleanType getDoNotPerformElement() { 4111 if (this.doNotPerform == null) 4112 if (Configuration.errorOnAutoCreate()) 4113 throw new Error("Attempt to auto-create Task.doNotPerform"); 4114 else if (Configuration.doAutoCreate()) 4115 this.doNotPerform = new BooleanType(); // bb 4116 return this.doNotPerform; 4117 } 4118 4119 public boolean hasDoNotPerformElement() { 4120 return this.doNotPerform != null && !this.doNotPerform.isEmpty(); 4121 } 4122 4123 public boolean hasDoNotPerform() { 4124 return this.doNotPerform != null && !this.doNotPerform.isEmpty(); 4125 } 4126 4127 /** 4128 * @param value {@link #doNotPerform} (If true indicates that the Task is asking for the specified action to *not* occur.). This is the underlying object with id, value and extensions. The accessor "getDoNotPerform" gives direct access to the value 4129 */ 4130 public Task setDoNotPerformElement(BooleanType value) { 4131 this.doNotPerform = value; 4132 return this; 4133 } 4134 4135 /** 4136 * @return If true indicates that the Task is asking for the specified action to *not* occur. 4137 */ 4138 public boolean getDoNotPerform() { 4139 return this.doNotPerform == null || this.doNotPerform.isEmpty() ? false : this.doNotPerform.getValue(); 4140 } 4141 4142 /** 4143 * @param value If true indicates that the Task is asking for the specified action to *not* occur. 4144 */ 4145 public Task setDoNotPerform(boolean value) { 4146 if (this.doNotPerform == null) 4147 this.doNotPerform = new BooleanType(); 4148 this.doNotPerform.setValue(value); 4149 return this; 4150 } 4151 4152 /** 4153 * @return {@link #code} (A name or code (or both) briefly describing what the task involves.) 4154 */ 4155 public CodeableConcept getCode() { 4156 if (this.code == null) 4157 if (Configuration.errorOnAutoCreate()) 4158 throw new Error("Attempt to auto-create Task.code"); 4159 else if (Configuration.doAutoCreate()) 4160 this.code = new CodeableConcept(); // cc 4161 return this.code; 4162 } 4163 4164 public boolean hasCode() { 4165 return this.code != null && !this.code.isEmpty(); 4166 } 4167 4168 /** 4169 * @param value {@link #code} (A name or code (or both) briefly describing what the task involves.) 4170 */ 4171 public Task setCode(CodeableConcept value) { 4172 this.code = value; 4173 return this; 4174 } 4175 4176 /** 4177 * @return {@link #description} (A free-text description of what is to be performed.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value 4178 */ 4179 public StringType getDescriptionElement() { 4180 if (this.description == null) 4181 if (Configuration.errorOnAutoCreate()) 4182 throw new Error("Attempt to auto-create Task.description"); 4183 else if (Configuration.doAutoCreate()) 4184 this.description = new StringType(); // bb 4185 return this.description; 4186 } 4187 4188 public boolean hasDescriptionElement() { 4189 return this.description != null && !this.description.isEmpty(); 4190 } 4191 4192 public boolean hasDescription() { 4193 return this.description != null && !this.description.isEmpty(); 4194 } 4195 4196 /** 4197 * @param value {@link #description} (A free-text description of what is to be performed.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value 4198 */ 4199 public Task setDescriptionElement(StringType value) { 4200 this.description = value; 4201 return this; 4202 } 4203 4204 /** 4205 * @return A free-text description of what is to be performed. 4206 */ 4207 public String getDescription() { 4208 return this.description == null ? null : this.description.getValue(); 4209 } 4210 4211 /** 4212 * @param value A free-text description of what is to be performed. 4213 */ 4214 public Task setDescription(String value) { 4215 if (Utilities.noString(value)) 4216 this.description = null; 4217 else { 4218 if (this.description == null) 4219 this.description = new StringType(); 4220 this.description.setValue(value); 4221 } 4222 return this; 4223 } 4224 4225 /** 4226 * @return {@link #focus} (The request being fulfilled or the resource being manipulated (changed, suspended, etc.) by this task.) 4227 */ 4228 public Reference getFocus() { 4229 if (this.focus == null) 4230 if (Configuration.errorOnAutoCreate()) 4231 throw new Error("Attempt to auto-create Task.focus"); 4232 else if (Configuration.doAutoCreate()) 4233 this.focus = new Reference(); // cc 4234 return this.focus; 4235 } 4236 4237 public boolean hasFocus() { 4238 return this.focus != null && !this.focus.isEmpty(); 4239 } 4240 4241 /** 4242 * @param value {@link #focus} (The request being fulfilled or the resource being manipulated (changed, suspended, etc.) by this task.) 4243 */ 4244 public Task setFocus(Reference value) { 4245 this.focus = value; 4246 return this; 4247 } 4248 4249 /** 4250 * @return {@link #for_} (The entity who benefits from the performance of the service specified in the task (e.g., the patient).) 4251 */ 4252 public Reference getFor() { 4253 if (this.for_ == null) 4254 if (Configuration.errorOnAutoCreate()) 4255 throw new Error("Attempt to auto-create Task.for_"); 4256 else if (Configuration.doAutoCreate()) 4257 this.for_ = new Reference(); // cc 4258 return this.for_; 4259 } 4260 4261 public boolean hasFor() { 4262 return this.for_ != null && !this.for_.isEmpty(); 4263 } 4264 4265 /** 4266 * @param value {@link #for_} (The entity who benefits from the performance of the service specified in the task (e.g., the patient).) 4267 */ 4268 public Task setFor(Reference value) { 4269 this.for_ = value; 4270 return this; 4271 } 4272 4273 /** 4274 * @return {@link #encounter} (The healthcare event (e.g. a patient and healthcare provider interaction) during which this task was created.) 4275 */ 4276 public Reference getEncounter() { 4277 if (this.encounter == null) 4278 if (Configuration.errorOnAutoCreate()) 4279 throw new Error("Attempt to auto-create Task.encounter"); 4280 else if (Configuration.doAutoCreate()) 4281 this.encounter = new Reference(); // cc 4282 return this.encounter; 4283 } 4284 4285 public boolean hasEncounter() { 4286 return this.encounter != null && !this.encounter.isEmpty(); 4287 } 4288 4289 /** 4290 * @param value {@link #encounter} (The healthcare event (e.g. a patient and healthcare provider interaction) during which this task was created.) 4291 */ 4292 public Task setEncounter(Reference value) { 4293 this.encounter = value; 4294 return this; 4295 } 4296 4297 /** 4298 * @return {@link #requestedPeriod} (Indicates the start and/or end of the period of time when completion of the task is desired to take place.) 4299 */ 4300 public Period getRequestedPeriod() { 4301 if (this.requestedPeriod == null) 4302 if (Configuration.errorOnAutoCreate()) 4303 throw new Error("Attempt to auto-create Task.requestedPeriod"); 4304 else if (Configuration.doAutoCreate()) 4305 this.requestedPeriod = new Period(); // cc 4306 return this.requestedPeriod; 4307 } 4308 4309 public boolean hasRequestedPeriod() { 4310 return this.requestedPeriod != null && !this.requestedPeriod.isEmpty(); 4311 } 4312 4313 /** 4314 * @param value {@link #requestedPeriod} (Indicates the start and/or end of the period of time when completion of the task is desired to take place.) 4315 */ 4316 public Task setRequestedPeriod(Period value) { 4317 this.requestedPeriod = value; 4318 return this; 4319 } 4320 4321 /** 4322 * @return {@link #executionPeriod} (Identifies the time action was first taken against the task (start) and/or the time final action was taken against the task prior to marking it as completed (end).) 4323 */ 4324 public Period getExecutionPeriod() { 4325 if (this.executionPeriod == null) 4326 if (Configuration.errorOnAutoCreate()) 4327 throw new Error("Attempt to auto-create Task.executionPeriod"); 4328 else if (Configuration.doAutoCreate()) 4329 this.executionPeriod = new Period(); // cc 4330 return this.executionPeriod; 4331 } 4332 4333 public boolean hasExecutionPeriod() { 4334 return this.executionPeriod != null && !this.executionPeriod.isEmpty(); 4335 } 4336 4337 /** 4338 * @param value {@link #executionPeriod} (Identifies the time action was first taken against the task (start) and/or the time final action was taken against the task prior to marking it as completed (end).) 4339 */ 4340 public Task setExecutionPeriod(Period value) { 4341 this.executionPeriod = value; 4342 return this; 4343 } 4344 4345 /** 4346 * @return {@link #authoredOn} (The date and time this task was created.). This is the underlying object with id, value and extensions. The accessor "getAuthoredOn" gives direct access to the value 4347 */ 4348 public DateTimeType getAuthoredOnElement() { 4349 if (this.authoredOn == null) 4350 if (Configuration.errorOnAutoCreate()) 4351 throw new Error("Attempt to auto-create Task.authoredOn"); 4352 else if (Configuration.doAutoCreate()) 4353 this.authoredOn = new DateTimeType(); // bb 4354 return this.authoredOn; 4355 } 4356 4357 public boolean hasAuthoredOnElement() { 4358 return this.authoredOn != null && !this.authoredOn.isEmpty(); 4359 } 4360 4361 public boolean hasAuthoredOn() { 4362 return this.authoredOn != null && !this.authoredOn.isEmpty(); 4363 } 4364 4365 /** 4366 * @param value {@link #authoredOn} (The date and time this task was created.). This is the underlying object with id, value and extensions. The accessor "getAuthoredOn" gives direct access to the value 4367 */ 4368 public Task setAuthoredOnElement(DateTimeType value) { 4369 this.authoredOn = value; 4370 return this; 4371 } 4372 4373 /** 4374 * @return The date and time this task was created. 4375 */ 4376 public Date getAuthoredOn() { 4377 return this.authoredOn == null ? null : this.authoredOn.getValue(); 4378 } 4379 4380 /** 4381 * @param value The date and time this task was created. 4382 */ 4383 public Task setAuthoredOn(Date value) { 4384 if (value == null) 4385 this.authoredOn = null; 4386 else { 4387 if (this.authoredOn == null) 4388 this.authoredOn = new DateTimeType(); 4389 this.authoredOn.setValue(value); 4390 } 4391 return this; 4392 } 4393 4394 /** 4395 * @return {@link #lastModified} (The date and time of last modification to this task.). This is the underlying object with id, value and extensions. The accessor "getLastModified" gives direct access to the value 4396 */ 4397 public DateTimeType getLastModifiedElement() { 4398 if (this.lastModified == null) 4399 if (Configuration.errorOnAutoCreate()) 4400 throw new Error("Attempt to auto-create Task.lastModified"); 4401 else if (Configuration.doAutoCreate()) 4402 this.lastModified = new DateTimeType(); // bb 4403 return this.lastModified; 4404 } 4405 4406 public boolean hasLastModifiedElement() { 4407 return this.lastModified != null && !this.lastModified.isEmpty(); 4408 } 4409 4410 public boolean hasLastModified() { 4411 return this.lastModified != null && !this.lastModified.isEmpty(); 4412 } 4413 4414 /** 4415 * @param value {@link #lastModified} (The date and time of last modification to this task.). This is the underlying object with id, value and extensions. The accessor "getLastModified" gives direct access to the value 4416 */ 4417 public Task setLastModifiedElement(DateTimeType value) { 4418 this.lastModified = value; 4419 return this; 4420 } 4421 4422 /** 4423 * @return The date and time of last modification to this task. 4424 */ 4425 public Date getLastModified() { 4426 return this.lastModified == null ? null : this.lastModified.getValue(); 4427 } 4428 4429 /** 4430 * @param value The date and time of last modification to this task. 4431 */ 4432 public Task setLastModified(Date value) { 4433 if (value == null) 4434 this.lastModified = null; 4435 else { 4436 if (this.lastModified == null) 4437 this.lastModified = new DateTimeType(); 4438 this.lastModified.setValue(value); 4439 } 4440 return this; 4441 } 4442 4443 /** 4444 * @return {@link #requester} (The creator of the task.) 4445 */ 4446 public Reference getRequester() { 4447 if (this.requester == null) 4448 if (Configuration.errorOnAutoCreate()) 4449 throw new Error("Attempt to auto-create Task.requester"); 4450 else if (Configuration.doAutoCreate()) 4451 this.requester = new Reference(); // cc 4452 return this.requester; 4453 } 4454 4455 public boolean hasRequester() { 4456 return this.requester != null && !this.requester.isEmpty(); 4457 } 4458 4459 /** 4460 * @param value {@link #requester} (The creator of the task.) 4461 */ 4462 public Task setRequester(Reference value) { 4463 this.requester = value; 4464 return this; 4465 } 4466 4467 /** 4468 * @return {@link #requestedPerformer} (The kind of participant or specific participant that should perform the task.) 4469 */ 4470 public List<CodeableReference> getRequestedPerformer() { 4471 if (this.requestedPerformer == null) 4472 this.requestedPerformer = new ArrayList<CodeableReference>(); 4473 return this.requestedPerformer; 4474 } 4475 4476 /** 4477 * @return Returns a reference to <code>this</code> for easy method chaining 4478 */ 4479 public Task setRequestedPerformer(List<CodeableReference> theRequestedPerformer) { 4480 this.requestedPerformer = theRequestedPerformer; 4481 return this; 4482 } 4483 4484 public boolean hasRequestedPerformer() { 4485 if (this.requestedPerformer == null) 4486 return false; 4487 for (CodeableReference item : this.requestedPerformer) 4488 if (!item.isEmpty()) 4489 return true; 4490 return false; 4491 } 4492 4493 public CodeableReference addRequestedPerformer() { //3 4494 CodeableReference t = new CodeableReference(); 4495 if (this.requestedPerformer == null) 4496 this.requestedPerformer = new ArrayList<CodeableReference>(); 4497 this.requestedPerformer.add(t); 4498 return t; 4499 } 4500 4501 public Task addRequestedPerformer(CodeableReference t) { //3 4502 if (t == null) 4503 return this; 4504 if (this.requestedPerformer == null) 4505 this.requestedPerformer = new ArrayList<CodeableReference>(); 4506 this.requestedPerformer.add(t); 4507 return this; 4508 } 4509 4510 /** 4511 * @return The first repetition of repeating field {@link #requestedPerformer}, creating it if it does not already exist {3} 4512 */ 4513 public CodeableReference getRequestedPerformerFirstRep() { 4514 if (getRequestedPerformer().isEmpty()) { 4515 addRequestedPerformer(); 4516 } 4517 return getRequestedPerformer().get(0); 4518 } 4519 4520 /** 4521 * @return {@link #owner} (Individual organization or Device currently responsible for task execution.) 4522 */ 4523 public Reference getOwner() { 4524 if (this.owner == null) 4525 if (Configuration.errorOnAutoCreate()) 4526 throw new Error("Attempt to auto-create Task.owner"); 4527 else if (Configuration.doAutoCreate()) 4528 this.owner = new Reference(); // cc 4529 return this.owner; 4530 } 4531 4532 public boolean hasOwner() { 4533 return this.owner != null && !this.owner.isEmpty(); 4534 } 4535 4536 /** 4537 * @param value {@link #owner} (Individual organization or Device currently responsible for task execution.) 4538 */ 4539 public Task setOwner(Reference value) { 4540 this.owner = value; 4541 return this; 4542 } 4543 4544 /** 4545 * @return {@link #location} (Principal physical location where the this task is performed.) 4546 */ 4547 public Reference getLocation() { 4548 if (this.location == null) 4549 if (Configuration.errorOnAutoCreate()) 4550 throw new Error("Attempt to auto-create Task.location"); 4551 else if (Configuration.doAutoCreate()) 4552 this.location = new Reference(); // cc 4553 return this.location; 4554 } 4555 4556 public boolean hasLocation() { 4557 return this.location != null && !this.location.isEmpty(); 4558 } 4559 4560 /** 4561 * @param value {@link #location} (Principal physical location where the this task is performed.) 4562 */ 4563 public Task setLocation(Reference value) { 4564 this.location = value; 4565 return this; 4566 } 4567 4568 /** 4569 * @return {@link #reason} (A description, code, or reference indicating why this task needs to be performed.) 4570 */ 4571 public List<CodeableReference> getReason() { 4572 if (this.reason == null) 4573 this.reason = new ArrayList<CodeableReference>(); 4574 return this.reason; 4575 } 4576 4577 /** 4578 * @return Returns a reference to <code>this</code> for easy method chaining 4579 */ 4580 public Task setReason(List<CodeableReference> theReason) { 4581 this.reason = theReason; 4582 return this; 4583 } 4584 4585 public boolean hasReason() { 4586 if (this.reason == null) 4587 return false; 4588 for (CodeableReference item : this.reason) 4589 if (!item.isEmpty()) 4590 return true; 4591 return false; 4592 } 4593 4594 public CodeableReference addReason() { //3 4595 CodeableReference t = new CodeableReference(); 4596 if (this.reason == null) 4597 this.reason = new ArrayList<CodeableReference>(); 4598 this.reason.add(t); 4599 return t; 4600 } 4601 4602 public Task addReason(CodeableReference t) { //3 4603 if (t == null) 4604 return this; 4605 if (this.reason == null) 4606 this.reason = new ArrayList<CodeableReference>(); 4607 this.reason.add(t); 4608 return this; 4609 } 4610 4611 /** 4612 * @return The first repetition of repeating field {@link #reason}, creating it if it does not already exist {3} 4613 */ 4614 public CodeableReference getReasonFirstRep() { 4615 if (getReason().isEmpty()) { 4616 addReason(); 4617 } 4618 return getReason().get(0); 4619 } 4620 4621 /** 4622 * @return {@link #insurance} (Insurance plans, coverage extensions, pre-authorizations and/or pre-determinations that may be relevant to the Task.) 4623 */ 4624 public List<Reference> getInsurance() { 4625 if (this.insurance == null) 4626 this.insurance = new ArrayList<Reference>(); 4627 return this.insurance; 4628 } 4629 4630 /** 4631 * @return Returns a reference to <code>this</code> for easy method chaining 4632 */ 4633 public Task setInsurance(List<Reference> theInsurance) { 4634 this.insurance = theInsurance; 4635 return this; 4636 } 4637 4638 public boolean hasInsurance() { 4639 if (this.insurance == null) 4640 return false; 4641 for (Reference item : this.insurance) 4642 if (!item.isEmpty()) 4643 return true; 4644 return false; 4645 } 4646 4647 public Reference addInsurance() { //3 4648 Reference t = new Reference(); 4649 if (this.insurance == null) 4650 this.insurance = new ArrayList<Reference>(); 4651 this.insurance.add(t); 4652 return t; 4653 } 4654 4655 public Task addInsurance(Reference t) { //3 4656 if (t == null) 4657 return this; 4658 if (this.insurance == null) 4659 this.insurance = new ArrayList<Reference>(); 4660 this.insurance.add(t); 4661 return this; 4662 } 4663 4664 /** 4665 * @return The first repetition of repeating field {@link #insurance}, creating it if it does not already exist {3} 4666 */ 4667 public Reference getInsuranceFirstRep() { 4668 if (getInsurance().isEmpty()) { 4669 addInsurance(); 4670 } 4671 return getInsurance().get(0); 4672 } 4673 4674 /** 4675 * @return {@link #note} (Free-text information captured about the task as it progresses.) 4676 */ 4677 public List<Annotation> getNote() { 4678 if (this.note == null) 4679 this.note = new ArrayList<Annotation>(); 4680 return this.note; 4681 } 4682 4683 /** 4684 * @return Returns a reference to <code>this</code> for easy method chaining 4685 */ 4686 public Task setNote(List<Annotation> theNote) { 4687 this.note = theNote; 4688 return this; 4689 } 4690 4691 public boolean hasNote() { 4692 if (this.note == null) 4693 return false; 4694 for (Annotation item : this.note) 4695 if (!item.isEmpty()) 4696 return true; 4697 return false; 4698 } 4699 4700 public Annotation addNote() { //3 4701 Annotation t = new Annotation(); 4702 if (this.note == null) 4703 this.note = new ArrayList<Annotation>(); 4704 this.note.add(t); 4705 return t; 4706 } 4707 4708 public Task addNote(Annotation t) { //3 4709 if (t == null) 4710 return this; 4711 if (this.note == null) 4712 this.note = new ArrayList<Annotation>(); 4713 this.note.add(t); 4714 return this; 4715 } 4716 4717 /** 4718 * @return The first repetition of repeating field {@link #note}, creating it if it does not already exist {3} 4719 */ 4720 public Annotation getNoteFirstRep() { 4721 if (getNote().isEmpty()) { 4722 addNote(); 4723 } 4724 return getNote().get(0); 4725 } 4726 4727 /** 4728 * @return {@link #relevantHistory} (Links to Provenance records for past versions of this Task that identify key state transitions or updates that are likely to be relevant to a user looking at the current version of the task.) 4729 */ 4730 public List<Reference> getRelevantHistory() { 4731 if (this.relevantHistory == null) 4732 this.relevantHistory = new ArrayList<Reference>(); 4733 return this.relevantHistory; 4734 } 4735 4736 /** 4737 * @return Returns a reference to <code>this</code> for easy method chaining 4738 */ 4739 public Task setRelevantHistory(List<Reference> theRelevantHistory) { 4740 this.relevantHistory = theRelevantHistory; 4741 return this; 4742 } 4743 4744 public boolean hasRelevantHistory() { 4745 if (this.relevantHistory == null) 4746 return false; 4747 for (Reference item : this.relevantHistory) 4748 if (!item.isEmpty()) 4749 return true; 4750 return false; 4751 } 4752 4753 public Reference addRelevantHistory() { //3 4754 Reference t = new Reference(); 4755 if (this.relevantHistory == null) 4756 this.relevantHistory = new ArrayList<Reference>(); 4757 this.relevantHistory.add(t); 4758 return t; 4759 } 4760 4761 public Task addRelevantHistory(Reference t) { //3 4762 if (t == null) 4763 return this; 4764 if (this.relevantHistory == null) 4765 this.relevantHistory = new ArrayList<Reference>(); 4766 this.relevantHistory.add(t); 4767 return this; 4768 } 4769 4770 /** 4771 * @return The first repetition of repeating field {@link #relevantHistory}, creating it if it does not already exist {3} 4772 */ 4773 public Reference getRelevantHistoryFirstRep() { 4774 if (getRelevantHistory().isEmpty()) { 4775 addRelevantHistory(); 4776 } 4777 return getRelevantHistory().get(0); 4778 } 4779 4780 /** 4781 * @return {@link #restriction} (If the Task.focus is a request resource and the task is seeking fulfillment (i.e. is asking for the request to be actioned), this element identifies any limitations on what parts of the referenced request should be actioned.) 4782 */ 4783 public TaskRestrictionComponent getRestriction() { 4784 if (this.restriction == null) 4785 if (Configuration.errorOnAutoCreate()) 4786 throw new Error("Attempt to auto-create Task.restriction"); 4787 else if (Configuration.doAutoCreate()) 4788 this.restriction = new TaskRestrictionComponent(); // cc 4789 return this.restriction; 4790 } 4791 4792 public boolean hasRestriction() { 4793 return this.restriction != null && !this.restriction.isEmpty(); 4794 } 4795 4796 /** 4797 * @param value {@link #restriction} (If the Task.focus is a request resource and the task is seeking fulfillment (i.e. is asking for the request to be actioned), this element identifies any limitations on what parts of the referenced request should be actioned.) 4798 */ 4799 public Task setRestriction(TaskRestrictionComponent value) { 4800 this.restriction = value; 4801 return this; 4802 } 4803 4804 /** 4805 * @return {@link #input} (Additional information that may be needed in the execution of the task.) 4806 */ 4807 public List<TaskInputComponent> getInput() { 4808 if (this.input == null) 4809 this.input = new ArrayList<TaskInputComponent>(); 4810 return this.input; 4811 } 4812 4813 /** 4814 * @return Returns a reference to <code>this</code> for easy method chaining 4815 */ 4816 public Task setInput(List<TaskInputComponent> theInput) { 4817 this.input = theInput; 4818 return this; 4819 } 4820 4821 public boolean hasInput() { 4822 if (this.input == null) 4823 return false; 4824 for (TaskInputComponent item : this.input) 4825 if (!item.isEmpty()) 4826 return true; 4827 return false; 4828 } 4829 4830 public TaskInputComponent addInput() { //3 4831 TaskInputComponent t = new TaskInputComponent(); 4832 if (this.input == null) 4833 this.input = new ArrayList<TaskInputComponent>(); 4834 this.input.add(t); 4835 return t; 4836 } 4837 4838 public Task addInput(TaskInputComponent t) { //3 4839 if (t == null) 4840 return this; 4841 if (this.input == null) 4842 this.input = new ArrayList<TaskInputComponent>(); 4843 this.input.add(t); 4844 return this; 4845 } 4846 4847 /** 4848 * @return The first repetition of repeating field {@link #input}, creating it if it does not already exist {3} 4849 */ 4850 public TaskInputComponent getInputFirstRep() { 4851 if (getInput().isEmpty()) { 4852 addInput(); 4853 } 4854 return getInput().get(0); 4855 } 4856 4857 /** 4858 * @return {@link #output} (Outputs produced by the Task.) 4859 */ 4860 public List<TaskOutputComponent> getOutput() { 4861 if (this.output == null) 4862 this.output = new ArrayList<TaskOutputComponent>(); 4863 return this.output; 4864 } 4865 4866 /** 4867 * @return Returns a reference to <code>this</code> for easy method chaining 4868 */ 4869 public Task setOutput(List<TaskOutputComponent> theOutput) { 4870 this.output = theOutput; 4871 return this; 4872 } 4873 4874 public boolean hasOutput() { 4875 if (this.output == null) 4876 return false; 4877 for (TaskOutputComponent item : this.output) 4878 if (!item.isEmpty()) 4879 return true; 4880 return false; 4881 } 4882 4883 public TaskOutputComponent addOutput() { //3 4884 TaskOutputComponent t = new TaskOutputComponent(); 4885 if (this.output == null) 4886 this.output = new ArrayList<TaskOutputComponent>(); 4887 this.output.add(t); 4888 return t; 4889 } 4890 4891 public Task addOutput(TaskOutputComponent t) { //3 4892 if (t == null) 4893 return this; 4894 if (this.output == null) 4895 this.output = new ArrayList<TaskOutputComponent>(); 4896 this.output.add(t); 4897 return this; 4898 } 4899 4900 /** 4901 * @return The first repetition of repeating field {@link #output}, creating it if it does not already exist {3} 4902 */ 4903 public TaskOutputComponent getOutputFirstRep() { 4904 if (getOutput().isEmpty()) { 4905 addOutput(); 4906 } 4907 return getOutput().get(0); 4908 } 4909 4910 protected void listChildren(List<Property> children) { 4911 super.listChildren(children); 4912 children.add(new Property("identifier", "Identifier", "The business identifier for this task.", 0, java.lang.Integer.MAX_VALUE, identifier)); 4913 children.add(new Property("instantiatesCanonical", "canonical(ActivityDefinition)", "The URL pointing to a *FHIR*-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Task.", 0, 1, instantiatesCanonical)); 4914 children.add(new Property("instantiatesUri", "uri", "The URL pointing to an *externally* maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Task.", 0, 1, instantiatesUri)); 4915 children.add(new Property("basedOn", "Reference(Any)", "BasedOn refers to a higher-level authorization that triggered the creation of the task. It references a \"request\" resource such as a ServiceRequest, MedicationRequest, CarePlan, etc. which is distinct from the \"request\" resource the task is seeking to fulfill. This latter resource is referenced by focus. For example, based on a CarePlan (= basedOn), a task is created to fulfill a ServiceRequest ( = focus ) to collect a specimen from a patient.", 0, java.lang.Integer.MAX_VALUE, basedOn)); 4916 children.add(new Property("groupIdentifier", "Identifier", "An identifier that links together multiple tasks and other requests that were created in the same context.", 0, 1, groupIdentifier)); 4917 children.add(new Property("partOf", "Reference(Task)", "Task that this particular task is part of.", 0, java.lang.Integer.MAX_VALUE, partOf)); 4918 children.add(new Property("status", "code", "The current status of the task.", 0, 1, status)); 4919 children.add(new Property("statusReason", "CodeableReference", "An explanation as to why this task is held, failed, was refused, etc.", 0, 1, statusReason)); 4920 children.add(new Property("businessStatus", "CodeableConcept", "Contains business-specific nuances of the business state.", 0, 1, businessStatus)); 4921 children.add(new Property("intent", "code", "Indicates the \"level\" of actionability associated with the Task, i.e. i+R[9]Cs this a proposed task, a planned task, an actionable task, etc.", 0, 1, intent)); 4922 children.add(new Property("priority", "code", "Indicates how quickly the Task should be addressed with respect to other requests.", 0, 1, priority)); 4923 children.add(new Property("doNotPerform", "boolean", "If true indicates that the Task is asking for the specified action to *not* occur.", 0, 1, doNotPerform)); 4924 children.add(new Property("code", "CodeableConcept", "A name or code (or both) briefly describing what the task involves.", 0, 1, code)); 4925 children.add(new Property("description", "string", "A free-text description of what is to be performed.", 0, 1, description)); 4926 children.add(new Property("focus", "Reference(Any)", "The request being fulfilled or the resource being manipulated (changed, suspended, etc.) by this task.", 0, 1, focus)); 4927 children.add(new Property("for", "Reference(Any)", "The entity who benefits from the performance of the service specified in the task (e.g., the patient).", 0, 1, for_)); 4928 children.add(new Property("encounter", "Reference(Encounter)", "The healthcare event (e.g. a patient and healthcare provider interaction) during which this task was created.", 0, 1, encounter)); 4929 children.add(new Property("requestedPeriod", "Period", "Indicates the start and/or end of the period of time when completion of the task is desired to take place.", 0, 1, requestedPeriod)); 4930 children.add(new Property("executionPeriod", "Period", "Identifies the time action was first taken against the task (start) and/or the time final action was taken against the task prior to marking it as completed (end).", 0, 1, executionPeriod)); 4931 children.add(new Property("authoredOn", "dateTime", "The date and time this task was created.", 0, 1, authoredOn)); 4932 children.add(new Property("lastModified", "dateTime", "The date and time of last modification to this task.", 0, 1, lastModified)); 4933 children.add(new Property("requester", "Reference(Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson)", "The creator of the task.", 0, 1, requester)); 4934 children.add(new Property("requestedPerformer", "CodeableReference(Practitioner|PractitionerRole|Organization|CareTeam|HealthcareService|Patient|Device|RelatedPerson)", "The kind of participant or specific participant that should perform the task.", 0, java.lang.Integer.MAX_VALUE, requestedPerformer)); 4935 children.add(new Property("owner", "Reference(Practitioner|PractitionerRole|Organization|CareTeam|HealthcareService|Patient|Device|RelatedPerson)", "Individual organization or Device currently responsible for task execution.", 0, 1, owner)); 4936 children.add(new Property("location", "Reference(Location)", "Principal physical location where the this task is performed.", 0, 1, location)); 4937 children.add(new Property("reason", "CodeableReference", "A description, code, or reference indicating why this task needs to be performed.", 0, java.lang.Integer.MAX_VALUE, reason)); 4938 children.add(new Property("insurance", "Reference(Coverage|ClaimResponse)", "Insurance plans, coverage extensions, pre-authorizations and/or pre-determinations that may be relevant to the Task.", 0, java.lang.Integer.MAX_VALUE, insurance)); 4939 children.add(new Property("note", "Annotation", "Free-text information captured about the task as it progresses.", 0, java.lang.Integer.MAX_VALUE, note)); 4940 children.add(new Property("relevantHistory", "Reference(Provenance)", "Links to Provenance records for past versions of this Task that identify key state transitions or updates that are likely to be relevant to a user looking at the current version of the task.", 0, java.lang.Integer.MAX_VALUE, relevantHistory)); 4941 children.add(new Property("restriction", "", "If the Task.focus is a request resource and the task is seeking fulfillment (i.e. is asking for the request to be actioned), this element identifies any limitations on what parts of the referenced request should be actioned.", 0, 1, restriction)); 4942 children.add(new Property("input", "", "Additional information that may be needed in the execution of the task.", 0, java.lang.Integer.MAX_VALUE, input)); 4943 children.add(new Property("output", "", "Outputs produced by the Task.", 0, java.lang.Integer.MAX_VALUE, output)); 4944 } 4945 4946 @Override 4947 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 4948 switch (_hash) { 4949 case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "The business identifier for this task.", 0, java.lang.Integer.MAX_VALUE, identifier); 4950 case 8911915: /*instantiatesCanonical*/ return new Property("instantiatesCanonical", "canonical(ActivityDefinition)", "The URL pointing to a *FHIR*-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Task.", 0, 1, instantiatesCanonical); 4951 case -1926393373: /*instantiatesUri*/ return new Property("instantiatesUri", "uri", "The URL pointing to an *externally* maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Task.", 0, 1, instantiatesUri); 4952 case -332612366: /*basedOn*/ return new Property("basedOn", "Reference(Any)", "BasedOn refers to a higher-level authorization that triggered the creation of the task. It references a \"request\" resource such as a ServiceRequest, MedicationRequest, CarePlan, etc. which is distinct from the \"request\" resource the task is seeking to fulfill. This latter resource is referenced by focus. For example, based on a CarePlan (= basedOn), a task is created to fulfill a ServiceRequest ( = focus ) to collect a specimen from a patient.", 0, java.lang.Integer.MAX_VALUE, basedOn); 4953 case -445338488: /*groupIdentifier*/ return new Property("groupIdentifier", "Identifier", "An identifier that links together multiple tasks and other requests that were created in the same context.", 0, 1, groupIdentifier); 4954 case -995410646: /*partOf*/ return new Property("partOf", "Reference(Task)", "Task that this particular task is part of.", 0, java.lang.Integer.MAX_VALUE, partOf); 4955 case -892481550: /*status*/ return new Property("status", "code", "The current status of the task.", 0, 1, status); 4956 case 2051346646: /*statusReason*/ return new Property("statusReason", "CodeableReference", "An explanation as to why this task is held, failed, was refused, etc.", 0, 1, statusReason); 4957 case 2008591314: /*businessStatus*/ return new Property("businessStatus", "CodeableConcept", "Contains business-specific nuances of the business state.", 0, 1, businessStatus); 4958 case -1183762788: /*intent*/ return new Property("intent", "code", "Indicates the \"level\" of actionability associated with the Task, i.e. i+R[9]Cs this a proposed task, a planned task, an actionable task, etc.", 0, 1, intent); 4959 case -1165461084: /*priority*/ return new Property("priority", "code", "Indicates how quickly the Task should be addressed with respect to other requests.", 0, 1, priority); 4960 case -1788508167: /*doNotPerform*/ return new Property("doNotPerform", "boolean", "If true indicates that the Task is asking for the specified action to *not* occur.", 0, 1, doNotPerform); 4961 case 3059181: /*code*/ return new Property("code", "CodeableConcept", "A name or code (or both) briefly describing what the task involves.", 0, 1, code); 4962 case -1724546052: /*description*/ return new Property("description", "string", "A free-text description of what is to be performed.", 0, 1, description); 4963 case 97604824: /*focus*/ return new Property("focus", "Reference(Any)", "The request being fulfilled or the resource being manipulated (changed, suspended, etc.) by this task.", 0, 1, focus); 4964 case 101577: /*for*/ return new Property("for", "Reference(Any)", "The entity who benefits from the performance of the service specified in the task (e.g., the patient).", 0, 1, for_); 4965 case 1524132147: /*encounter*/ return new Property("encounter", "Reference(Encounter)", "The healthcare event (e.g. a patient and healthcare provider interaction) during which this task was created.", 0, 1, encounter); 4966 case -897241393: /*requestedPeriod*/ return new Property("requestedPeriod", "Period", "Indicates the start and/or end of the period of time when completion of the task is desired to take place.", 0, 1, requestedPeriod); 4967 case 1218624249: /*executionPeriod*/ return new Property("executionPeriod", "Period", "Identifies the time action was first taken against the task (start) and/or the time final action was taken against the task prior to marking it as completed (end).", 0, 1, executionPeriod); 4968 case -1500852503: /*authoredOn*/ return new Property("authoredOn", "dateTime", "The date and time this task was created.", 0, 1, authoredOn); 4969 case 1959003007: /*lastModified*/ return new Property("lastModified", "dateTime", "The date and time of last modification to this task.", 0, 1, lastModified); 4970 case 693933948: /*requester*/ return new Property("requester", "Reference(Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson)", "The creator of the task.", 0, 1, requester); 4971 case 2072749056: /*requestedPerformer*/ return new Property("requestedPerformer", "CodeableReference(Practitioner|PractitionerRole|Organization|CareTeam|HealthcareService|Patient|Device|RelatedPerson)", "The kind of participant or specific participant that should perform the task.", 0, java.lang.Integer.MAX_VALUE, requestedPerformer); 4972 case 106164915: /*owner*/ return new Property("owner", "Reference(Practitioner|PractitionerRole|Organization|CareTeam|HealthcareService|Patient|Device|RelatedPerson)", "Individual organization or Device currently responsible for task execution.", 0, 1, owner); 4973 case 1901043637: /*location*/ return new Property("location", "Reference(Location)", "Principal physical location where the this task is performed.", 0, 1, location); 4974 case -934964668: /*reason*/ return new Property("reason", "CodeableReference", "A description, code, or reference indicating why this task needs to be performed.", 0, java.lang.Integer.MAX_VALUE, reason); 4975 case 73049818: /*insurance*/ return new Property("insurance", "Reference(Coverage|ClaimResponse)", "Insurance plans, coverage extensions, pre-authorizations and/or pre-determinations that may be relevant to the Task.", 0, java.lang.Integer.MAX_VALUE, insurance); 4976 case 3387378: /*note*/ return new Property("note", "Annotation", "Free-text information captured about the task as it progresses.", 0, java.lang.Integer.MAX_VALUE, note); 4977 case 1538891575: /*relevantHistory*/ return new Property("relevantHistory", "Reference(Provenance)", "Links to Provenance records for past versions of this Task that identify key state transitions or updates that are likely to be relevant to a user looking at the current version of the task.", 0, java.lang.Integer.MAX_VALUE, relevantHistory); 4978 case -1561062452: /*restriction*/ return new Property("restriction", "", "If the Task.focus is a request resource and the task is seeking fulfillment (i.e. is asking for the request to be actioned), this element identifies any limitations on what parts of the referenced request should be actioned.", 0, 1, restriction); 4979 case 100358090: /*input*/ return new Property("input", "", "Additional information that may be needed in the execution of the task.", 0, java.lang.Integer.MAX_VALUE, input); 4980 case -1005512447: /*output*/ return new Property("output", "", "Outputs produced by the Task.", 0, java.lang.Integer.MAX_VALUE, output); 4981 default: return super.getNamedProperty(_hash, _name, _checkValid); 4982 } 4983 4984 } 4985 4986 @Override 4987 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 4988 switch (hash) { 4989 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 4990 case 8911915: /*instantiatesCanonical*/ return this.instantiatesCanonical == null ? new Base[0] : new Base[] {this.instantiatesCanonical}; // CanonicalType 4991 case -1926393373: /*instantiatesUri*/ return this.instantiatesUri == null ? new Base[0] : new Base[] {this.instantiatesUri}; // UriType 4992 case -332612366: /*basedOn*/ return this.basedOn == null ? new Base[0] : this.basedOn.toArray(new Base[this.basedOn.size()]); // Reference 4993 case -445338488: /*groupIdentifier*/ return this.groupIdentifier == null ? new Base[0] : new Base[] {this.groupIdentifier}; // Identifier 4994 case -995410646: /*partOf*/ return this.partOf == null ? new Base[0] : this.partOf.toArray(new Base[this.partOf.size()]); // Reference 4995 case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration<TaskStatus> 4996 case 2051346646: /*statusReason*/ return this.statusReason == null ? new Base[0] : new Base[] {this.statusReason}; // CodeableReference 4997 case 2008591314: /*businessStatus*/ return this.businessStatus == null ? new Base[0] : new Base[] {this.businessStatus}; // CodeableConcept 4998 case -1183762788: /*intent*/ return this.intent == null ? new Base[0] : new Base[] {this.intent}; // Enumeration<TaskIntent> 4999 case -1165461084: /*priority*/ return this.priority == null ? new Base[0] : new Base[] {this.priority}; // Enumeration<RequestPriority> 5000 case -1788508167: /*doNotPerform*/ return this.doNotPerform == null ? new Base[0] : new Base[] {this.doNotPerform}; // BooleanType 5001 case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeableConcept 5002 case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // StringType 5003 case 97604824: /*focus*/ return this.focus == null ? new Base[0] : new Base[] {this.focus}; // Reference 5004 case 101577: /*for*/ return this.for_ == null ? new Base[0] : new Base[] {this.for_}; // Reference 5005 case 1524132147: /*encounter*/ return this.encounter == null ? new Base[0] : new Base[] {this.encounter}; // Reference 5006 case -897241393: /*requestedPeriod*/ return this.requestedPeriod == null ? new Base[0] : new Base[] {this.requestedPeriod}; // Period 5007 case 1218624249: /*executionPeriod*/ return this.executionPeriod == null ? new Base[0] : new Base[] {this.executionPeriod}; // Period 5008 case -1500852503: /*authoredOn*/ return this.authoredOn == null ? new Base[0] : new Base[] {this.authoredOn}; // DateTimeType 5009 case 1959003007: /*lastModified*/ return this.lastModified == null ? new Base[0] : new Base[] {this.lastModified}; // DateTimeType 5010 case 693933948: /*requester*/ return this.requester == null ? new Base[0] : new Base[] {this.requester}; // Reference 5011 case 2072749056: /*requestedPerformer*/ return this.requestedPerformer == null ? new Base[0] : this.requestedPerformer.toArray(new Base[this.requestedPerformer.size()]); // CodeableReference 5012 case 106164915: /*owner*/ return this.owner == null ? new Base[0] : new Base[] {this.owner}; // Reference 5013 case 1901043637: /*location*/ return this.location == null ? new Base[0] : new Base[] {this.location}; // Reference 5014 case -934964668: /*reason*/ return this.reason == null ? new Base[0] : this.reason.toArray(new Base[this.reason.size()]); // CodeableReference 5015 case 73049818: /*insurance*/ return this.insurance == null ? new Base[0] : this.insurance.toArray(new Base[this.insurance.size()]); // Reference 5016 case 3387378: /*note*/ return this.note == null ? new Base[0] : this.note.toArray(new Base[this.note.size()]); // Annotation 5017 case 1538891575: /*relevantHistory*/ return this.relevantHistory == null ? new Base[0] : this.relevantHistory.toArray(new Base[this.relevantHistory.size()]); // Reference 5018 case -1561062452: /*restriction*/ return this.restriction == null ? new Base[0] : new Base[] {this.restriction}; // TaskRestrictionComponent 5019 case 100358090: /*input*/ return this.input == null ? new Base[0] : this.input.toArray(new Base[this.input.size()]); // TaskInputComponent 5020 case -1005512447: /*output*/ return this.output == null ? new Base[0] : this.output.toArray(new Base[this.output.size()]); // TaskOutputComponent 5021 default: return super.getProperty(hash, name, checkValid); 5022 } 5023 5024 } 5025 5026 @Override 5027 public Base setProperty(int hash, String name, Base value) throws FHIRException { 5028 switch (hash) { 5029 case -1618432855: // identifier 5030 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier 5031 return value; 5032 case 8911915: // instantiatesCanonical 5033 this.instantiatesCanonical = TypeConvertor.castToCanonical(value); // CanonicalType 5034 return value; 5035 case -1926393373: // instantiatesUri 5036 this.instantiatesUri = TypeConvertor.castToUri(value); // UriType 5037 return value; 5038 case -332612366: // basedOn 5039 this.getBasedOn().add(TypeConvertor.castToReference(value)); // Reference 5040 return value; 5041 case -445338488: // groupIdentifier 5042 this.groupIdentifier = TypeConvertor.castToIdentifier(value); // Identifier 5043 return value; 5044 case -995410646: // partOf 5045 this.getPartOf().add(TypeConvertor.castToReference(value)); // Reference 5046 return value; 5047 case -892481550: // status 5048 value = new TaskStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); 5049 this.status = (Enumeration) value; // Enumeration<TaskStatus> 5050 return value; 5051 case 2051346646: // statusReason 5052 this.statusReason = TypeConvertor.castToCodeableReference(value); // CodeableReference 5053 return value; 5054 case 2008591314: // businessStatus 5055 this.businessStatus = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 5056 return value; 5057 case -1183762788: // intent 5058 value = new TaskIntentEnumFactory().fromType(TypeConvertor.castToCode(value)); 5059 this.intent = (Enumeration) value; // Enumeration<TaskIntent> 5060 return value; 5061 case -1165461084: // priority 5062 value = new RequestPriorityEnumFactory().fromType(TypeConvertor.castToCode(value)); 5063 this.priority = (Enumeration) value; // Enumeration<RequestPriority> 5064 return value; 5065 case -1788508167: // doNotPerform 5066 this.doNotPerform = TypeConvertor.castToBoolean(value); // BooleanType 5067 return value; 5068 case 3059181: // code 5069 this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 5070 return value; 5071 case -1724546052: // description 5072 this.description = TypeConvertor.castToString(value); // StringType 5073 return value; 5074 case 97604824: // focus 5075 this.focus = TypeConvertor.castToReference(value); // Reference 5076 return value; 5077 case 101577: // for 5078 this.for_ = TypeConvertor.castToReference(value); // Reference 5079 return value; 5080 case 1524132147: // encounter 5081 this.encounter = TypeConvertor.castToReference(value); // Reference 5082 return value; 5083 case -897241393: // requestedPeriod 5084 this.requestedPeriod = TypeConvertor.castToPeriod(value); // Period 5085 return value; 5086 case 1218624249: // executionPeriod 5087 this.executionPeriod = TypeConvertor.castToPeriod(value); // Period 5088 return value; 5089 case -1500852503: // authoredOn 5090 this.authoredOn = TypeConvertor.castToDateTime(value); // DateTimeType 5091 return value; 5092 case 1959003007: // lastModified 5093 this.lastModified = TypeConvertor.castToDateTime(value); // DateTimeType 5094 return value; 5095 case 693933948: // requester 5096 this.requester = TypeConvertor.castToReference(value); // Reference 5097 return value; 5098 case 2072749056: // requestedPerformer 5099 this.getRequestedPerformer().add(TypeConvertor.castToCodeableReference(value)); // CodeableReference 5100 return value; 5101 case 106164915: // owner 5102 this.owner = TypeConvertor.castToReference(value); // Reference 5103 return value; 5104 case 1901043637: // location 5105 this.location = TypeConvertor.castToReference(value); // Reference 5106 return value; 5107 case -934964668: // reason 5108 this.getReason().add(TypeConvertor.castToCodeableReference(value)); // CodeableReference 5109 return value; 5110 case 73049818: // insurance 5111 this.getInsurance().add(TypeConvertor.castToReference(value)); // Reference 5112 return value; 5113 case 3387378: // note 5114 this.getNote().add(TypeConvertor.castToAnnotation(value)); // Annotation 5115 return value; 5116 case 1538891575: // relevantHistory 5117 this.getRelevantHistory().add(TypeConvertor.castToReference(value)); // Reference 5118 return value; 5119 case -1561062452: // restriction 5120 this.restriction = (TaskRestrictionComponent) value; // TaskRestrictionComponent 5121 return value; 5122 case 100358090: // input 5123 this.getInput().add((TaskInputComponent) value); // TaskInputComponent 5124 return value; 5125 case -1005512447: // output 5126 this.getOutput().add((TaskOutputComponent) value); // TaskOutputComponent 5127 return value; 5128 default: return super.setProperty(hash, name, value); 5129 } 5130 5131 } 5132 5133 @Override 5134 public Base setProperty(String name, Base value) throws FHIRException { 5135 if (name.equals("identifier")) { 5136 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); 5137 } else if (name.equals("instantiatesCanonical")) { 5138 this.instantiatesCanonical = TypeConvertor.castToCanonical(value); // CanonicalType 5139 } else if (name.equals("instantiatesUri")) { 5140 this.instantiatesUri = TypeConvertor.castToUri(value); // UriType 5141 } else if (name.equals("basedOn")) { 5142 this.getBasedOn().add(TypeConvertor.castToReference(value)); 5143 } else if (name.equals("groupIdentifier")) { 5144 this.groupIdentifier = TypeConvertor.castToIdentifier(value); // Identifier 5145 } else if (name.equals("partOf")) { 5146 this.getPartOf().add(TypeConvertor.castToReference(value)); 5147 } else if (name.equals("status")) { 5148 value = new TaskStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); 5149 this.status = (Enumeration) value; // Enumeration<TaskStatus> 5150 } else if (name.equals("statusReason")) { 5151 this.statusReason = TypeConvertor.castToCodeableReference(value); // CodeableReference 5152 } else if (name.equals("businessStatus")) { 5153 this.businessStatus = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 5154 } else if (name.equals("intent")) { 5155 value = new TaskIntentEnumFactory().fromType(TypeConvertor.castToCode(value)); 5156 this.intent = (Enumeration) value; // Enumeration<TaskIntent> 5157 } else if (name.equals("priority")) { 5158 value = new RequestPriorityEnumFactory().fromType(TypeConvertor.castToCode(value)); 5159 this.priority = (Enumeration) value; // Enumeration<RequestPriority> 5160 } else if (name.equals("doNotPerform")) { 5161 this.doNotPerform = TypeConvertor.castToBoolean(value); // BooleanType 5162 } else if (name.equals("code")) { 5163 this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 5164 } else if (name.equals("description")) { 5165 this.description = TypeConvertor.castToString(value); // StringType 5166 } else if (name.equals("focus")) { 5167 this.focus = TypeConvertor.castToReference(value); // Reference 5168 } else if (name.equals("for")) { 5169 this.for_ = TypeConvertor.castToReference(value); // Reference 5170 } else if (name.equals("encounter")) { 5171 this.encounter = TypeConvertor.castToReference(value); // Reference 5172 } else if (name.equals("requestedPeriod")) { 5173 this.requestedPeriod = TypeConvertor.castToPeriod(value); // Period 5174 } else if (name.equals("executionPeriod")) { 5175 this.executionPeriod = TypeConvertor.castToPeriod(value); // Period 5176 } else if (name.equals("authoredOn")) { 5177 this.authoredOn = TypeConvertor.castToDateTime(value); // DateTimeType 5178 } else if (name.equals("lastModified")) { 5179 this.lastModified = TypeConvertor.castToDateTime(value); // DateTimeType 5180 } else if (name.equals("requester")) { 5181 this.requester = TypeConvertor.castToReference(value); // Reference 5182 } else if (name.equals("requestedPerformer")) { 5183 this.getRequestedPerformer().add(TypeConvertor.castToCodeableReference(value)); 5184 } else if (name.equals("owner")) { 5185 this.owner = TypeConvertor.castToReference(value); // Reference 5186 } else if (name.equals("location")) { 5187 this.location = TypeConvertor.castToReference(value); // Reference 5188 } else if (name.equals("reason")) { 5189 this.getReason().add(TypeConvertor.castToCodeableReference(value)); 5190 } else if (name.equals("insurance")) { 5191 this.getInsurance().add(TypeConvertor.castToReference(value)); 5192 } else if (name.equals("note")) { 5193 this.getNote().add(TypeConvertor.castToAnnotation(value)); 5194 } else if (name.equals("relevantHistory")) { 5195 this.getRelevantHistory().add(TypeConvertor.castToReference(value)); 5196 } else if (name.equals("restriction")) { 5197 this.restriction = (TaskRestrictionComponent) value; // TaskRestrictionComponent 5198 } else if (name.equals("input")) { 5199 this.getInput().add((TaskInputComponent) value); 5200 } else if (name.equals("output")) { 5201 this.getOutput().add((TaskOutputComponent) value); 5202 } else 5203 return super.setProperty(name, value); 5204 return value; 5205 } 5206 5207 @Override 5208 public Base makeProperty(int hash, String name) throws FHIRException { 5209 switch (hash) { 5210 case -1618432855: return addIdentifier(); 5211 case 8911915: return getInstantiatesCanonicalElement(); 5212 case -1926393373: return getInstantiatesUriElement(); 5213 case -332612366: return addBasedOn(); 5214 case -445338488: return getGroupIdentifier(); 5215 case -995410646: return addPartOf(); 5216 case -892481550: return getStatusElement(); 5217 case 2051346646: return getStatusReason(); 5218 case 2008591314: return getBusinessStatus(); 5219 case -1183762788: return getIntentElement(); 5220 case -1165461084: return getPriorityElement(); 5221 case -1788508167: return getDoNotPerformElement(); 5222 case 3059181: return getCode(); 5223 case -1724546052: return getDescriptionElement(); 5224 case 97604824: return getFocus(); 5225 case 101577: return getFor(); 5226 case 1524132147: return getEncounter(); 5227 case -897241393: return getRequestedPeriod(); 5228 case 1218624249: return getExecutionPeriod(); 5229 case -1500852503: return getAuthoredOnElement(); 5230 case 1959003007: return getLastModifiedElement(); 5231 case 693933948: return getRequester(); 5232 case 2072749056: return addRequestedPerformer(); 5233 case 106164915: return getOwner(); 5234 case 1901043637: return getLocation(); 5235 case -934964668: return addReason(); 5236 case 73049818: return addInsurance(); 5237 case 3387378: return addNote(); 5238 case 1538891575: return addRelevantHistory(); 5239 case -1561062452: return getRestriction(); 5240 case 100358090: return addInput(); 5241 case -1005512447: return addOutput(); 5242 default: return super.makeProperty(hash, name); 5243 } 5244 5245 } 5246 5247 @Override 5248 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 5249 switch (hash) { 5250 case -1618432855: /*identifier*/ return new String[] {"Identifier"}; 5251 case 8911915: /*instantiatesCanonical*/ return new String[] {"canonical"}; 5252 case -1926393373: /*instantiatesUri*/ return new String[] {"uri"}; 5253 case -332612366: /*basedOn*/ return new String[] {"Reference"}; 5254 case -445338488: /*groupIdentifier*/ return new String[] {"Identifier"}; 5255 case -995410646: /*partOf*/ return new String[] {"Reference"}; 5256 case -892481550: /*status*/ return new String[] {"code"}; 5257 case 2051346646: /*statusReason*/ return new String[] {"CodeableReference"}; 5258 case 2008591314: /*businessStatus*/ return new String[] {"CodeableConcept"}; 5259 case -1183762788: /*intent*/ return new String[] {"code"}; 5260 case -1165461084: /*priority*/ return new String[] {"code"}; 5261 case -1788508167: /*doNotPerform*/ return new String[] {"boolean"}; 5262 case 3059181: /*code*/ return new String[] {"CodeableConcept"}; 5263 case -1724546052: /*description*/ return new String[] {"string"}; 5264 case 97604824: /*focus*/ return new String[] {"Reference"}; 5265 case 101577: /*for*/ return new String[] {"Reference"}; 5266 case 1524132147: /*encounter*/ return new String[] {"Reference"}; 5267 case -897241393: /*requestedPeriod*/ return new String[] {"Period"}; 5268 case 1218624249: /*executionPeriod*/ return new String[] {"Period"}; 5269 case -1500852503: /*authoredOn*/ return new String[] {"dateTime"}; 5270 case 1959003007: /*lastModified*/ return new String[] {"dateTime"}; 5271 case 693933948: /*requester*/ return new String[] {"Reference"}; 5272 case 2072749056: /*requestedPerformer*/ return new String[] {"CodeableReference"}; 5273 case 106164915: /*owner*/ return new String[] {"Reference"}; 5274 case 1901043637: /*location*/ return new String[] {"Reference"}; 5275 case -934964668: /*reason*/ return new String[] {"CodeableReference"}; 5276 case 73049818: /*insurance*/ return new String[] {"Reference"}; 5277 case 3387378: /*note*/ return new String[] {"Annotation"}; 5278 case 1538891575: /*relevantHistory*/ return new String[] {"Reference"}; 5279 case -1561062452: /*restriction*/ return new String[] {}; 5280 case 100358090: /*input*/ return new String[] {}; 5281 case -1005512447: /*output*/ return new String[] {}; 5282 default: return super.getTypesForProperty(hash, name); 5283 } 5284 5285 } 5286 5287 @Override 5288 public Base addChild(String name) throws FHIRException { 5289 if (name.equals("identifier")) { 5290 return addIdentifier(); 5291 } 5292 else if (name.equals("instantiatesCanonical")) { 5293 throw new FHIRException("Cannot call addChild on a primitive type Task.instantiatesCanonical"); 5294 } 5295 else if (name.equals("instantiatesUri")) { 5296 throw new FHIRException("Cannot call addChild on a primitive type Task.instantiatesUri"); 5297 } 5298 else if (name.equals("basedOn")) { 5299 return addBasedOn(); 5300 } 5301 else if (name.equals("groupIdentifier")) { 5302 this.groupIdentifier = new Identifier(); 5303 return this.groupIdentifier; 5304 } 5305 else if (name.equals("partOf")) { 5306 return addPartOf(); 5307 } 5308 else if (name.equals("status")) { 5309 throw new FHIRException("Cannot call addChild on a primitive type Task.status"); 5310 } 5311 else if (name.equals("statusReason")) { 5312 this.statusReason = new CodeableReference(); 5313 return this.statusReason; 5314 } 5315 else if (name.equals("businessStatus")) { 5316 this.businessStatus = new CodeableConcept(); 5317 return this.businessStatus; 5318 } 5319 else if (name.equals("intent")) { 5320 throw new FHIRException("Cannot call addChild on a primitive type Task.intent"); 5321 } 5322 else if (name.equals("priority")) { 5323 throw new FHIRException("Cannot call addChild on a primitive type Task.priority"); 5324 } 5325 else if (name.equals("doNotPerform")) { 5326 throw new FHIRException("Cannot call addChild on a primitive type Task.doNotPerform"); 5327 } 5328 else if (name.equals("code")) { 5329 this.code = new CodeableConcept(); 5330 return this.code; 5331 } 5332 else if (name.equals("description")) { 5333 throw new FHIRException("Cannot call addChild on a primitive type Task.description"); 5334 } 5335 else if (name.equals("focus")) { 5336 this.focus = new Reference(); 5337 return this.focus; 5338 } 5339 else if (name.equals("for")) { 5340 this.for_ = new Reference(); 5341 return this.for_; 5342 } 5343 else if (name.equals("encounter")) { 5344 this.encounter = new Reference(); 5345 return this.encounter; 5346 } 5347 else if (name.equals("requestedPeriod")) { 5348 this.requestedPeriod = new Period(); 5349 return this.requestedPeriod; 5350 } 5351 else if (name.equals("executionPeriod")) { 5352 this.executionPeriod = new Period(); 5353 return this.executionPeriod; 5354 } 5355 else if (name.equals("authoredOn")) { 5356 throw new FHIRException("Cannot call addChild on a primitive type Task.authoredOn"); 5357 } 5358 else if (name.equals("lastModified")) { 5359 throw new FHIRException("Cannot call addChild on a primitive type Task.lastModified"); 5360 } 5361 else if (name.equals("requester")) { 5362 this.requester = new Reference(); 5363 return this.requester; 5364 } 5365 else if (name.equals("requestedPerformer")) { 5366 return addRequestedPerformer(); 5367 } 5368 else if (name.equals("owner")) { 5369 this.owner = new Reference(); 5370 return this.owner; 5371 } 5372 else if (name.equals("location")) { 5373 this.location = new Reference(); 5374 return this.location; 5375 } 5376 else if (name.equals("reason")) { 5377 return addReason(); 5378 } 5379 else if (name.equals("insurance")) { 5380 return addInsurance(); 5381 } 5382 else if (name.equals("note")) { 5383 return addNote(); 5384 } 5385 else if (name.equals("relevantHistory")) { 5386 return addRelevantHistory(); 5387 } 5388 else if (name.equals("restriction")) { 5389 this.restriction = new TaskRestrictionComponent(); 5390 return this.restriction; 5391 } 5392 else if (name.equals("input")) { 5393 return addInput(); 5394 } 5395 else if (name.equals("output")) { 5396 return addOutput(); 5397 } 5398 else 5399 return super.addChild(name); 5400 } 5401 5402 public String fhirType() { 5403 return "Task"; 5404 5405 } 5406 5407 public Task copy() { 5408 Task dst = new Task(); 5409 copyValues(dst); 5410 return dst; 5411 } 5412 5413 public void copyValues(Task dst) { 5414 super.copyValues(dst); 5415 if (identifier != null) { 5416 dst.identifier = new ArrayList<Identifier>(); 5417 for (Identifier i : identifier) 5418 dst.identifier.add(i.copy()); 5419 }; 5420 dst.instantiatesCanonical = instantiatesCanonical == null ? null : instantiatesCanonical.copy(); 5421 dst.instantiatesUri = instantiatesUri == null ? null : instantiatesUri.copy(); 5422 if (basedOn != null) { 5423 dst.basedOn = new ArrayList<Reference>(); 5424 for (Reference i : basedOn) 5425 dst.basedOn.add(i.copy()); 5426 }; 5427 dst.groupIdentifier = groupIdentifier == null ? null : groupIdentifier.copy(); 5428 if (partOf != null) { 5429 dst.partOf = new ArrayList<Reference>(); 5430 for (Reference i : partOf) 5431 dst.partOf.add(i.copy()); 5432 }; 5433 dst.status = status == null ? null : status.copy(); 5434 dst.statusReason = statusReason == null ? null : statusReason.copy(); 5435 dst.businessStatus = businessStatus == null ? null : businessStatus.copy(); 5436 dst.intent = intent == null ? null : intent.copy(); 5437 dst.priority = priority == null ? null : priority.copy(); 5438 dst.doNotPerform = doNotPerform == null ? null : doNotPerform.copy(); 5439 dst.code = code == null ? null : code.copy(); 5440 dst.description = description == null ? null : description.copy(); 5441 dst.focus = focus == null ? null : focus.copy(); 5442 dst.for_ = for_ == null ? null : for_.copy(); 5443 dst.encounter = encounter == null ? null : encounter.copy(); 5444 dst.requestedPeriod = requestedPeriod == null ? null : requestedPeriod.copy(); 5445 dst.executionPeriod = executionPeriod == null ? null : executionPeriod.copy(); 5446 dst.authoredOn = authoredOn == null ? null : authoredOn.copy(); 5447 dst.lastModified = lastModified == null ? null : lastModified.copy(); 5448 dst.requester = requester == null ? null : requester.copy(); 5449 if (requestedPerformer != null) { 5450 dst.requestedPerformer = new ArrayList<CodeableReference>(); 5451 for (CodeableReference i : requestedPerformer) 5452 dst.requestedPerformer.add(i.copy()); 5453 }; 5454 dst.owner = owner == null ? null : owner.copy(); 5455 dst.location = location == null ? null : location.copy(); 5456 if (reason != null) { 5457 dst.reason = new ArrayList<CodeableReference>(); 5458 for (CodeableReference i : reason) 5459 dst.reason.add(i.copy()); 5460 }; 5461 if (insurance != null) { 5462 dst.insurance = new ArrayList<Reference>(); 5463 for (Reference i : insurance) 5464 dst.insurance.add(i.copy()); 5465 }; 5466 if (note != null) { 5467 dst.note = new ArrayList<Annotation>(); 5468 for (Annotation i : note) 5469 dst.note.add(i.copy()); 5470 }; 5471 if (relevantHistory != null) { 5472 dst.relevantHistory = new ArrayList<Reference>(); 5473 for (Reference i : relevantHistory) 5474 dst.relevantHistory.add(i.copy()); 5475 }; 5476 dst.restriction = restriction == null ? null : restriction.copy(); 5477 if (input != null) { 5478 dst.input = new ArrayList<TaskInputComponent>(); 5479 for (TaskInputComponent i : input) 5480 dst.input.add(i.copy()); 5481 }; 5482 if (output != null) { 5483 dst.output = new ArrayList<TaskOutputComponent>(); 5484 for (TaskOutputComponent i : output) 5485 dst.output.add(i.copy()); 5486 }; 5487 } 5488 5489 protected Task typedCopy() { 5490 return copy(); 5491 } 5492 5493 @Override 5494 public boolean equalsDeep(Base other_) { 5495 if (!super.equalsDeep(other_)) 5496 return false; 5497 if (!(other_ instanceof Task)) 5498 return false; 5499 Task o = (Task) other_; 5500 return compareDeep(identifier, o.identifier, true) && compareDeep(instantiatesCanonical, o.instantiatesCanonical, true) 5501 && compareDeep(instantiatesUri, o.instantiatesUri, true) && compareDeep(basedOn, o.basedOn, true) 5502 && compareDeep(groupIdentifier, o.groupIdentifier, true) && compareDeep(partOf, o.partOf, true) 5503 && compareDeep(status, o.status, true) && compareDeep(statusReason, o.statusReason, true) && compareDeep(businessStatus, o.businessStatus, true) 5504 && compareDeep(intent, o.intent, true) && compareDeep(priority, o.priority, true) && compareDeep(doNotPerform, o.doNotPerform, true) 5505 && compareDeep(code, o.code, true) && compareDeep(description, o.description, true) && compareDeep(focus, o.focus, true) 5506 && compareDeep(for_, o.for_, true) && compareDeep(encounter, o.encounter, true) && compareDeep(requestedPeriod, o.requestedPeriod, true) 5507 && compareDeep(executionPeriod, o.executionPeriod, true) && compareDeep(authoredOn, o.authoredOn, true) 5508 && compareDeep(lastModified, o.lastModified, true) && compareDeep(requester, o.requester, true) 5509 && compareDeep(requestedPerformer, o.requestedPerformer, true) && compareDeep(owner, o.owner, true) 5510 && compareDeep(location, o.location, true) && compareDeep(reason, o.reason, true) && compareDeep(insurance, o.insurance, true) 5511 && compareDeep(note, o.note, true) && compareDeep(relevantHistory, o.relevantHistory, true) && compareDeep(restriction, o.restriction, true) 5512 && compareDeep(input, o.input, true) && compareDeep(output, o.output, true); 5513 } 5514 5515 @Override 5516 public boolean equalsShallow(Base other_) { 5517 if (!super.equalsShallow(other_)) 5518 return false; 5519 if (!(other_ instanceof Task)) 5520 return false; 5521 Task o = (Task) other_; 5522 return compareValues(instantiatesCanonical, o.instantiatesCanonical, true) && compareValues(instantiatesUri, o.instantiatesUri, true) 5523 && compareValues(status, o.status, true) && compareValues(intent, o.intent, true) && compareValues(priority, o.priority, true) 5524 && compareValues(doNotPerform, o.doNotPerform, true) && compareValues(description, o.description, true) 5525 && compareValues(authoredOn, o.authoredOn, true) && compareValues(lastModified, o.lastModified, true) 5526 ; 5527 } 5528 5529 public boolean isEmpty() { 5530 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, instantiatesCanonical 5531 , instantiatesUri, basedOn, groupIdentifier, partOf, status, statusReason, businessStatus 5532 , intent, priority, doNotPerform, code, description, focus, for_, encounter 5533 , requestedPeriod, executionPeriod, authoredOn, lastModified, requester, requestedPerformer 5534 , owner, location, reason, insurance, note, relevantHistory, restriction, input 5535 , output); 5536 } 5537 5538 @Override 5539 public ResourceType getResourceType() { 5540 return ResourceType.Task; 5541 } 5542 5543 /** 5544 * Search parameter: <b>authored-on</b> 5545 * <p> 5546 * Description: <b>Search by creation date</b><br> 5547 * Type: <b>date</b><br> 5548 * Path: <b>Task.authoredOn</b><br> 5549 * </p> 5550 */ 5551 @SearchParamDefinition(name="authored-on", path="Task.authoredOn", description="Search by creation date", type="date" ) 5552 public static final String SP_AUTHORED_ON = "authored-on"; 5553 /** 5554 * <b>Fluent Client</b> search parameter constant for <b>authored-on</b> 5555 * <p> 5556 * Description: <b>Search by creation date</b><br> 5557 * Type: <b>date</b><br> 5558 * Path: <b>Task.authoredOn</b><br> 5559 * </p> 5560 */ 5561 public static final ca.uhn.fhir.rest.gclient.DateClientParam AUTHORED_ON = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_AUTHORED_ON); 5562 5563 /** 5564 * Search parameter: <b>based-on</b> 5565 * <p> 5566 * Description: <b>Search by requests this task is based on</b><br> 5567 * Type: <b>reference</b><br> 5568 * Path: <b>Task.basedOn</b><br> 5569 * </p> 5570 */ 5571 @SearchParamDefinition(name="based-on", path="Task.basedOn", description="Search by requests this task is based on", type="reference", target={Account.class, ActivityDefinition.class, ActorDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, ArtifactAssessment.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CarePlan.class, CareTeam.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseDefinition.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceDispense.class, DeviceMetric.class, DeviceRequest.class, DeviceUsage.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceReport.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, FormularyItem.class, GenomicStudy.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingSelection.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, InventoryReport.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestOrchestration.class, Requirements.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Transport.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) 5572 public static final String SP_BASED_ON = "based-on"; 5573 /** 5574 * <b>Fluent Client</b> search parameter constant for <b>based-on</b> 5575 * <p> 5576 * Description: <b>Search by requests this task is based on</b><br> 5577 * Type: <b>reference</b><br> 5578 * Path: <b>Task.basedOn</b><br> 5579 * </p> 5580 */ 5581 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam BASED_ON = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_BASED_ON); 5582 5583/** 5584 * Constant for fluent queries to be used to add include statements. Specifies 5585 * the path value of "<b>Task:based-on</b>". 5586 */ 5587 public static final ca.uhn.fhir.model.api.Include INCLUDE_BASED_ON = new ca.uhn.fhir.model.api.Include("Task:based-on").toLocked(); 5588 5589 /** 5590 * Search parameter: <b>business-status</b> 5591 * <p> 5592 * Description: <b>Search by business status</b><br> 5593 * Type: <b>token</b><br> 5594 * Path: <b>Task.businessStatus</b><br> 5595 * </p> 5596 */ 5597 @SearchParamDefinition(name="business-status", path="Task.businessStatus", description="Search by business status", type="token" ) 5598 public static final String SP_BUSINESS_STATUS = "business-status"; 5599 /** 5600 * <b>Fluent Client</b> search parameter constant for <b>business-status</b> 5601 * <p> 5602 * Description: <b>Search by business status</b><br> 5603 * Type: <b>token</b><br> 5604 * Path: <b>Task.businessStatus</b><br> 5605 * </p> 5606 */ 5607 public static final ca.uhn.fhir.rest.gclient.TokenClientParam BUSINESS_STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_BUSINESS_STATUS); 5608 5609 /** 5610 * Search parameter: <b>code</b> 5611 * <p> 5612 * Description: <b>Search by task code</b><br> 5613 * Type: <b>token</b><br> 5614 * Path: <b>Task.code</b><br> 5615 * </p> 5616 */ 5617 @SearchParamDefinition(name="code", path="Task.code", description="Search by task code", type="token" ) 5618 public static final String SP_CODE = "code"; 5619 /** 5620 * <b>Fluent Client</b> search parameter constant for <b>code</b> 5621 * <p> 5622 * Description: <b>Search by task code</b><br> 5623 * Type: <b>token</b><br> 5624 * Path: <b>Task.code</b><br> 5625 * </p> 5626 */ 5627 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); 5628 5629 /** 5630 * Search parameter: <b>encounter</b> 5631 * <p> 5632 * Description: <b>Search by encounter</b><br> 5633 * Type: <b>reference</b><br> 5634 * Path: <b>Task.encounter</b><br> 5635 * </p> 5636 */ 5637 @SearchParamDefinition(name="encounter", path="Task.encounter", description="Search by encounter", type="reference", target={Encounter.class } ) 5638 public static final String SP_ENCOUNTER = "encounter"; 5639 /** 5640 * <b>Fluent Client</b> search parameter constant for <b>encounter</b> 5641 * <p> 5642 * Description: <b>Search by encounter</b><br> 5643 * Type: <b>reference</b><br> 5644 * Path: <b>Task.encounter</b><br> 5645 * </p> 5646 */ 5647 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam ENCOUNTER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_ENCOUNTER); 5648 5649/** 5650 * Constant for fluent queries to be used to add include statements. Specifies 5651 * the path value of "<b>Task:encounter</b>". 5652 */ 5653 public static final ca.uhn.fhir.model.api.Include INCLUDE_ENCOUNTER = new ca.uhn.fhir.model.api.Include("Task:encounter").toLocked(); 5654 5655 /** 5656 * Search parameter: <b>focus</b> 5657 * <p> 5658 * Description: <b>Search by task focus</b><br> 5659 * Type: <b>reference</b><br> 5660 * Path: <b>Task.focus</b><br> 5661 * </p> 5662 */ 5663 @SearchParamDefinition(name="focus", path="Task.focus", description="Search by task focus", type="reference", target={Account.class, ActivityDefinition.class, ActorDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, ArtifactAssessment.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CarePlan.class, CareTeam.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseDefinition.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceDispense.class, DeviceMetric.class, DeviceRequest.class, DeviceUsage.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceReport.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, FormularyItem.class, GenomicStudy.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingSelection.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, InventoryReport.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestOrchestration.class, Requirements.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Transport.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) 5664 public static final String SP_FOCUS = "focus"; 5665 /** 5666 * <b>Fluent Client</b> search parameter constant for <b>focus</b> 5667 * <p> 5668 * Description: <b>Search by task focus</b><br> 5669 * Type: <b>reference</b><br> 5670 * Path: <b>Task.focus</b><br> 5671 * </p> 5672 */ 5673 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam FOCUS = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_FOCUS); 5674 5675/** 5676 * Constant for fluent queries to be used to add include statements. Specifies 5677 * the path value of "<b>Task:focus</b>". 5678 */ 5679 public static final ca.uhn.fhir.model.api.Include INCLUDE_FOCUS = new ca.uhn.fhir.model.api.Include("Task:focus").toLocked(); 5680 5681 /** 5682 * Search parameter: <b>group-identifier</b> 5683 * <p> 5684 * Description: <b>Search by group identifier</b><br> 5685 * Type: <b>token</b><br> 5686 * Path: <b>Task.groupIdentifier</b><br> 5687 * </p> 5688 */ 5689 @SearchParamDefinition(name="group-identifier", path="Task.groupIdentifier", description="Search by group identifier", type="token" ) 5690 public static final String SP_GROUP_IDENTIFIER = "group-identifier"; 5691 /** 5692 * <b>Fluent Client</b> search parameter constant for <b>group-identifier</b> 5693 * <p> 5694 * Description: <b>Search by group identifier</b><br> 5695 * Type: <b>token</b><br> 5696 * Path: <b>Task.groupIdentifier</b><br> 5697 * </p> 5698 */ 5699 public static final ca.uhn.fhir.rest.gclient.TokenClientParam GROUP_IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_GROUP_IDENTIFIER); 5700 5701 /** 5702 * Search parameter: <b>identifier</b> 5703 * <p> 5704 * Description: <b>Search for a task instance by its business identifier</b><br> 5705 * Type: <b>token</b><br> 5706 * Path: <b>Task.identifier</b><br> 5707 * </p> 5708 */ 5709 @SearchParamDefinition(name="identifier", path="Task.identifier", description="Search for a task instance by its business identifier", type="token" ) 5710 public static final String SP_IDENTIFIER = "identifier"; 5711 /** 5712 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 5713 * <p> 5714 * Description: <b>Search for a task instance by its business identifier</b><br> 5715 * Type: <b>token</b><br> 5716 * Path: <b>Task.identifier</b><br> 5717 * </p> 5718 */ 5719 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 5720 5721 /** 5722 * Search parameter: <b>intent</b> 5723 * <p> 5724 * Description: <b>Search by task intent</b><br> 5725 * Type: <b>token</b><br> 5726 * Path: <b>Task.intent</b><br> 5727 * </p> 5728 */ 5729 @SearchParamDefinition(name="intent", path="Task.intent", description="Search by task intent", type="token" ) 5730 public static final String SP_INTENT = "intent"; 5731 /** 5732 * <b>Fluent Client</b> search parameter constant for <b>intent</b> 5733 * <p> 5734 * Description: <b>Search by task intent</b><br> 5735 * Type: <b>token</b><br> 5736 * Path: <b>Task.intent</b><br> 5737 * </p> 5738 */ 5739 public static final ca.uhn.fhir.rest.gclient.TokenClientParam INTENT = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_INTENT); 5740 5741 /** 5742 * Search parameter: <b>modified</b> 5743 * <p> 5744 * Description: <b>Search by last modification date</b><br> 5745 * Type: <b>date</b><br> 5746 * Path: <b>Task.lastModified</b><br> 5747 * </p> 5748 */ 5749 @SearchParamDefinition(name="modified", path="Task.lastModified", description="Search by last modification date", type="date" ) 5750 public static final String SP_MODIFIED = "modified"; 5751 /** 5752 * <b>Fluent Client</b> search parameter constant for <b>modified</b> 5753 * <p> 5754 * Description: <b>Search by last modification date</b><br> 5755 * Type: <b>date</b><br> 5756 * Path: <b>Task.lastModified</b><br> 5757 * </p> 5758 */ 5759 public static final ca.uhn.fhir.rest.gclient.DateClientParam MODIFIED = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_MODIFIED); 5760 5761 /** 5762 * Search parameter: <b>output</b> 5763 * <p> 5764 * Description: <b>Search by task output</b><br> 5765 * Type: <b>reference</b><br> 5766 * Path: <b>Task.output</b><br> 5767 * </p> 5768 */ 5769 @SearchParamDefinition(name="output", path="Task.output", description="Search by task output", type="reference" ) 5770 public static final String SP_OUTPUT = "output"; 5771 /** 5772 * <b>Fluent Client</b> search parameter constant for <b>output</b> 5773 * <p> 5774 * Description: <b>Search by task output</b><br> 5775 * Type: <b>reference</b><br> 5776 * Path: <b>Task.output</b><br> 5777 * </p> 5778 */ 5779 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam OUTPUT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_OUTPUT); 5780 5781/** 5782 * Constant for fluent queries to be used to add include statements. Specifies 5783 * the path value of "<b>Task:output</b>". 5784 */ 5785 public static final ca.uhn.fhir.model.api.Include INCLUDE_OUTPUT = new ca.uhn.fhir.model.api.Include("Task:output").toLocked(); 5786 5787 /** 5788 * Search parameter: <b>owner</b> 5789 * <p> 5790 * Description: <b>Search by task owner</b><br> 5791 * Type: <b>reference</b><br> 5792 * Path: <b>Task.owner</b><br> 5793 * </p> 5794 */ 5795 @SearchParamDefinition(name="owner", path="Task.owner", description="Search by task owner", type="reference", target={CareTeam.class, Device.class, HealthcareService.class, Organization.class, Patient.class, Practitioner.class, PractitionerRole.class, RelatedPerson.class } ) 5796 public static final String SP_OWNER = "owner"; 5797 /** 5798 * <b>Fluent Client</b> search parameter constant for <b>owner</b> 5799 * <p> 5800 * Description: <b>Search by task owner</b><br> 5801 * Type: <b>reference</b><br> 5802 * Path: <b>Task.owner</b><br> 5803 * </p> 5804 */ 5805 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam OWNER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_OWNER); 5806 5807/** 5808 * Constant for fluent queries to be used to add include statements. Specifies 5809 * the path value of "<b>Task:owner</b>". 5810 */ 5811 public static final ca.uhn.fhir.model.api.Include INCLUDE_OWNER = new ca.uhn.fhir.model.api.Include("Task:owner").toLocked(); 5812 5813 /** 5814 * Search parameter: <b>part-of</b> 5815 * <p> 5816 * Description: <b>Search by task this task is part of</b><br> 5817 * Type: <b>reference</b><br> 5818 * Path: <b>Task.partOf</b><br> 5819 * </p> 5820 */ 5821 @SearchParamDefinition(name="part-of", path="Task.partOf", description="Search by task this task is part of", type="reference", target={Task.class } ) 5822 public static final String SP_PART_OF = "part-of"; 5823 /** 5824 * <b>Fluent Client</b> search parameter constant for <b>part-of</b> 5825 * <p> 5826 * Description: <b>Search by task this task is part of</b><br> 5827 * Type: <b>reference</b><br> 5828 * Path: <b>Task.partOf</b><br> 5829 * </p> 5830 */ 5831 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PART_OF = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PART_OF); 5832 5833/** 5834 * Constant for fluent queries to be used to add include statements. Specifies 5835 * the path value of "<b>Task:part-of</b>". 5836 */ 5837 public static final ca.uhn.fhir.model.api.Include INCLUDE_PART_OF = new ca.uhn.fhir.model.api.Include("Task:part-of").toLocked(); 5838 5839 /** 5840 * Search parameter: <b>patient</b> 5841 * <p> 5842 * Description: <b>Search by patient</b><br> 5843 * Type: <b>reference</b><br> 5844 * Path: <b>Task.for.where(resolve() is Patient)</b><br> 5845 * </p> 5846 */ 5847 @SearchParamDefinition(name="patient", path="Task.for.where(resolve() is Patient)", description="Search by patient", type="reference", target={Patient.class } ) 5848 public static final String SP_PATIENT = "patient"; 5849 /** 5850 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 5851 * <p> 5852 * Description: <b>Search by patient</b><br> 5853 * Type: <b>reference</b><br> 5854 * Path: <b>Task.for.where(resolve() is Patient)</b><br> 5855 * </p> 5856 */ 5857 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); 5858 5859/** 5860 * Constant for fluent queries to be used to add include statements. Specifies 5861 * the path value of "<b>Task:patient</b>". 5862 */ 5863 public static final ca.uhn.fhir.model.api.Include INCLUDE_PATIENT = new ca.uhn.fhir.model.api.Include("Task:patient").toLocked(); 5864 5865 /** 5866 * Search parameter: <b>performer</b> 5867 * <p> 5868 * Description: <b>Search by specific requested performer.</b><br> 5869 * Type: <b>reference</b><br> 5870 * Path: <b>Task.requestedPerformer.reference</b><br> 5871 * </p> 5872 */ 5873 @SearchParamDefinition(name="performer", path="Task.requestedPerformer.reference", description="Search by specific requested performer.", type="reference" ) 5874 public static final String SP_PERFORMER = "performer"; 5875 /** 5876 * <b>Fluent Client</b> search parameter constant for <b>performer</b> 5877 * <p> 5878 * Description: <b>Search by specific requested performer.</b><br> 5879 * Type: <b>reference</b><br> 5880 * Path: <b>Task.requestedPerformer.reference</b><br> 5881 * </p> 5882 */ 5883 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PERFORMER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PERFORMER); 5884 5885/** 5886 * Constant for fluent queries to be used to add include statements. Specifies 5887 * the path value of "<b>Task:performer</b>". 5888 */ 5889 public static final ca.uhn.fhir.model.api.Include INCLUDE_PERFORMER = new ca.uhn.fhir.model.api.Include("Task:performer").toLocked(); 5890 5891 /** 5892 * Search parameter: <b>period</b> 5893 * <p> 5894 * Description: <b>Search by period Task is/was underway</b><br> 5895 * Type: <b>date</b><br> 5896 * Path: <b>Task.executionPeriod</b><br> 5897 * </p> 5898 */ 5899 @SearchParamDefinition(name="period", path="Task.executionPeriod", description="Search by period Task is/was underway", type="date" ) 5900 public static final String SP_PERIOD = "period"; 5901 /** 5902 * <b>Fluent Client</b> search parameter constant for <b>period</b> 5903 * <p> 5904 * Description: <b>Search by period Task is/was underway</b><br> 5905 * Type: <b>date</b><br> 5906 * Path: <b>Task.executionPeriod</b><br> 5907 * </p> 5908 */ 5909 public static final ca.uhn.fhir.rest.gclient.DateClientParam PERIOD = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_PERIOD); 5910 5911 /** 5912 * Search parameter: <b>priority</b> 5913 * <p> 5914 * Description: <b>Search by task priority</b><br> 5915 * Type: <b>token</b><br> 5916 * Path: <b>Task.priority</b><br> 5917 * </p> 5918 */ 5919 @SearchParamDefinition(name="priority", path="Task.priority", description="Search by task priority", type="token" ) 5920 public static final String SP_PRIORITY = "priority"; 5921 /** 5922 * <b>Fluent Client</b> search parameter constant for <b>priority</b> 5923 * <p> 5924 * Description: <b>Search by task priority</b><br> 5925 * Type: <b>token</b><br> 5926 * Path: <b>Task.priority</b><br> 5927 * </p> 5928 */ 5929 public static final ca.uhn.fhir.rest.gclient.TokenClientParam PRIORITY = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_PRIORITY); 5930 5931 /** 5932 * Search parameter: <b>requester</b> 5933 * <p> 5934 * Description: <b>Search by task requester</b><br> 5935 * Type: <b>reference</b><br> 5936 * Path: <b>Task.requester</b><br> 5937 * </p> 5938 */ 5939 @SearchParamDefinition(name="requester", path="Task.requester", description="Search by task requester", type="reference", target={Device.class, Organization.class, Patient.class, Practitioner.class, PractitionerRole.class, RelatedPerson.class } ) 5940 public static final String SP_REQUESTER = "requester"; 5941 /** 5942 * <b>Fluent Client</b> search parameter constant for <b>requester</b> 5943 * <p> 5944 * Description: <b>Search by task requester</b><br> 5945 * Type: <b>reference</b><br> 5946 * Path: <b>Task.requester</b><br> 5947 * </p> 5948 */ 5949 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam REQUESTER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_REQUESTER); 5950 5951/** 5952 * Constant for fluent queries to be used to add include statements. Specifies 5953 * the path value of "<b>Task:requester</b>". 5954 */ 5955 public static final ca.uhn.fhir.model.api.Include INCLUDE_REQUESTER = new ca.uhn.fhir.model.api.Include("Task:requester").toLocked(); 5956 5957 /** 5958 * Search parameter: <b>status</b> 5959 * <p> 5960 * Description: <b>Search by task status</b><br> 5961 * Type: <b>token</b><br> 5962 * Path: <b>Task.status</b><br> 5963 * </p> 5964 */ 5965 @SearchParamDefinition(name="status", path="Task.status", description="Search by task status", type="token" ) 5966 public static final String SP_STATUS = "status"; 5967 /** 5968 * <b>Fluent Client</b> search parameter constant for <b>status</b> 5969 * <p> 5970 * Description: <b>Search by task status</b><br> 5971 * Type: <b>token</b><br> 5972 * Path: <b>Task.status</b><br> 5973 * </p> 5974 */ 5975 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); 5976 5977 /** 5978 * Search parameter: <b>subject</b> 5979 * <p> 5980 * Description: <b>Search by subject</b><br> 5981 * Type: <b>reference</b><br> 5982 * Path: <b>Task.for</b><br> 5983 * </p> 5984 */ 5985 @SearchParamDefinition(name="subject", path="Task.for", description="Search by subject", type="reference", target={Account.class, ActivityDefinition.class, ActorDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, ArtifactAssessment.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CarePlan.class, CareTeam.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseDefinition.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceDispense.class, DeviceMetric.class, DeviceRequest.class, DeviceUsage.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceReport.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, FormularyItem.class, GenomicStudy.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingSelection.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, InventoryReport.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestOrchestration.class, Requirements.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Transport.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) 5986 public static final String SP_SUBJECT = "subject"; 5987 /** 5988 * <b>Fluent Client</b> search parameter constant for <b>subject</b> 5989 * <p> 5990 * Description: <b>Search by subject</b><br> 5991 * Type: <b>reference</b><br> 5992 * Path: <b>Task.for</b><br> 5993 * </p> 5994 */ 5995 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam SUBJECT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_SUBJECT); 5996 5997/** 5998 * Constant for fluent queries to be used to add include statements. Specifies 5999 * the path value of "<b>Task:subject</b>". 6000 */ 6001 public static final ca.uhn.fhir.model.api.Include INCLUDE_SUBJECT = new ca.uhn.fhir.model.api.Include("Task:subject").toLocked(); 6002 6003 6004} 6005