
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 Thu, Mar 23, 2023 19:59+1100 for FHIR v5.0.0 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 record of dispensation of a biologically derived product. 052 */ 053@ResourceDef(name="BiologicallyDerivedProductDispense", profile="http://hl7.org/fhir/StructureDefinition/BiologicallyDerivedProductDispense") 054public class BiologicallyDerivedProductDispense extends DomainResource { 055 056 public enum BiologicallyDerivedProductDispenseCodes { 057 /** 058 * The dispense process has started but not yet completed. 059 */ 060 PREPARATION, 061 /** 062 * The dispense process is in progress. 063 */ 064 INPROGRESS, 065 /** 066 * The requested product has been allocated and is ready for transport. 067 */ 068 ALLOCATED, 069 /** 070 * The dispensed product has been picked up. 071 */ 072 ISSUED, 073 /** 074 * The dispense could not be completed. 075 */ 076 UNFULFILLED, 077 /** 078 * The dispensed product was returned. 079 */ 080 RETURNED, 081 /** 082 * The dispense was entered in error and therefore nullified. 083 */ 084 ENTEREDINERROR, 085 /** 086 * The authoring system does not know which of the status values applies for this dispense. Note: this concept is not to be used for other - one of the listed statuses is presumed to apply, it's just not known which one. 087 */ 088 UNKNOWN, 089 /** 090 * added to help the parsers with the generic types 091 */ 092 NULL; 093 public static BiologicallyDerivedProductDispenseCodes fromCode(String codeString) throws FHIRException { 094 if (codeString == null || "".equals(codeString)) 095 return null; 096 if ("preparation".equals(codeString)) 097 return PREPARATION; 098 if ("in-progress".equals(codeString)) 099 return INPROGRESS; 100 if ("allocated".equals(codeString)) 101 return ALLOCATED; 102 if ("issued".equals(codeString)) 103 return ISSUED; 104 if ("unfulfilled".equals(codeString)) 105 return UNFULFILLED; 106 if ("returned".equals(codeString)) 107 return RETURNED; 108 if ("entered-in-error".equals(codeString)) 109 return ENTEREDINERROR; 110 if ("unknown".equals(codeString)) 111 return UNKNOWN; 112 if (Configuration.isAcceptInvalidEnums()) 113 return null; 114 else 115 throw new FHIRException("Unknown BiologicallyDerivedProductDispenseCodes code '"+codeString+"'"); 116 } 117 public String toCode() { 118 switch (this) { 119 case PREPARATION: return "preparation"; 120 case INPROGRESS: return "in-progress"; 121 case ALLOCATED: return "allocated"; 122 case ISSUED: return "issued"; 123 case UNFULFILLED: return "unfulfilled"; 124 case RETURNED: return "returned"; 125 case ENTEREDINERROR: return "entered-in-error"; 126 case UNKNOWN: return "unknown"; 127 case NULL: return null; 128 default: return "?"; 129 } 130 } 131 public String getSystem() { 132 switch (this) { 133 case PREPARATION: return "http://hl7.org/fhir/biologicallyderivedproductdispense-status"; 134 case INPROGRESS: return "http://hl7.org/fhir/biologicallyderivedproductdispense-status"; 135 case ALLOCATED: return "http://hl7.org/fhir/biologicallyderivedproductdispense-status"; 136 case ISSUED: return "http://hl7.org/fhir/biologicallyderivedproductdispense-status"; 137 case UNFULFILLED: return "http://hl7.org/fhir/biologicallyderivedproductdispense-status"; 138 case RETURNED: return "http://hl7.org/fhir/biologicallyderivedproductdispense-status"; 139 case ENTEREDINERROR: return "http://hl7.org/fhir/biologicallyderivedproductdispense-status"; 140 case UNKNOWN: return "http://hl7.org/fhir/biologicallyderivedproductdispense-status"; 141 case NULL: return null; 142 default: return "?"; 143 } 144 } 145 public String getDefinition() { 146 switch (this) { 147 case PREPARATION: return "The dispense process has started but not yet completed."; 148 case INPROGRESS: return "The dispense process is in progress."; 149 case ALLOCATED: return "The requested product has been allocated and is ready for transport."; 150 case ISSUED: return "The dispensed product has been picked up."; 151 case UNFULFILLED: return "The dispense could not be completed."; 152 case RETURNED: return "The dispensed product was returned."; 153 case ENTEREDINERROR: return "The dispense was entered in error and therefore nullified."; 154 case UNKNOWN: return "The authoring system does not know which of the status values applies for this dispense. Note: this concept is not to be used for other - one of the listed statuses is presumed to apply, it's just not known which one."; 155 case NULL: return null; 156 default: return "?"; 157 } 158 } 159 public String getDisplay() { 160 switch (this) { 161 case PREPARATION: return "Preparation"; 162 case INPROGRESS: return "In Progress"; 163 case ALLOCATED: return "Allocated"; 164 case ISSUED: return "Issued"; 165 case UNFULFILLED: return "Unfulfilled"; 166 case RETURNED: return "Returned"; 167 case ENTEREDINERROR: return "Entered in Error"; 168 case UNKNOWN: return "Unknown"; 169 case NULL: return null; 170 default: return "?"; 171 } 172 } 173 } 174 175 public static class BiologicallyDerivedProductDispenseCodesEnumFactory implements EnumFactory<BiologicallyDerivedProductDispenseCodes> { 176 public BiologicallyDerivedProductDispenseCodes fromCode(String codeString) throws IllegalArgumentException { 177 if (codeString == null || "".equals(codeString)) 178 if (codeString == null || "".equals(codeString)) 179 return null; 180 if ("preparation".equals(codeString)) 181 return BiologicallyDerivedProductDispenseCodes.PREPARATION; 182 if ("in-progress".equals(codeString)) 183 return BiologicallyDerivedProductDispenseCodes.INPROGRESS; 184 if ("allocated".equals(codeString)) 185 return BiologicallyDerivedProductDispenseCodes.ALLOCATED; 186 if ("issued".equals(codeString)) 187 return BiologicallyDerivedProductDispenseCodes.ISSUED; 188 if ("unfulfilled".equals(codeString)) 189 return BiologicallyDerivedProductDispenseCodes.UNFULFILLED; 190 if ("returned".equals(codeString)) 191 return BiologicallyDerivedProductDispenseCodes.RETURNED; 192 if ("entered-in-error".equals(codeString)) 193 return BiologicallyDerivedProductDispenseCodes.ENTEREDINERROR; 194 if ("unknown".equals(codeString)) 195 return BiologicallyDerivedProductDispenseCodes.UNKNOWN; 196 throw new IllegalArgumentException("Unknown BiologicallyDerivedProductDispenseCodes code '"+codeString+"'"); 197 } 198 public Enumeration<BiologicallyDerivedProductDispenseCodes> fromType(PrimitiveType<?> code) throws FHIRException { 199 if (code == null) 200 return null; 201 if (code.isEmpty()) 202 return new Enumeration<BiologicallyDerivedProductDispenseCodes>(this, BiologicallyDerivedProductDispenseCodes.NULL, code); 203 String codeString = ((PrimitiveType) code).asStringValue(); 204 if (codeString == null || "".equals(codeString)) 205 return new Enumeration<BiologicallyDerivedProductDispenseCodes>(this, BiologicallyDerivedProductDispenseCodes.NULL, code); 206 if ("preparation".equals(codeString)) 207 return new Enumeration<BiologicallyDerivedProductDispenseCodes>(this, BiologicallyDerivedProductDispenseCodes.PREPARATION, code); 208 if ("in-progress".equals(codeString)) 209 return new Enumeration<BiologicallyDerivedProductDispenseCodes>(this, BiologicallyDerivedProductDispenseCodes.INPROGRESS, code); 210 if ("allocated".equals(codeString)) 211 return new Enumeration<BiologicallyDerivedProductDispenseCodes>(this, BiologicallyDerivedProductDispenseCodes.ALLOCATED, code); 212 if ("issued".equals(codeString)) 213 return new Enumeration<BiologicallyDerivedProductDispenseCodes>(this, BiologicallyDerivedProductDispenseCodes.ISSUED, code); 214 if ("unfulfilled".equals(codeString)) 215 return new Enumeration<BiologicallyDerivedProductDispenseCodes>(this, BiologicallyDerivedProductDispenseCodes.UNFULFILLED, code); 216 if ("returned".equals(codeString)) 217 return new Enumeration<BiologicallyDerivedProductDispenseCodes>(this, BiologicallyDerivedProductDispenseCodes.RETURNED, code); 218 if ("entered-in-error".equals(codeString)) 219 return new Enumeration<BiologicallyDerivedProductDispenseCodes>(this, BiologicallyDerivedProductDispenseCodes.ENTEREDINERROR, code); 220 if ("unknown".equals(codeString)) 221 return new Enumeration<BiologicallyDerivedProductDispenseCodes>(this, BiologicallyDerivedProductDispenseCodes.UNKNOWN, code); 222 throw new FHIRException("Unknown BiologicallyDerivedProductDispenseCodes code '"+codeString+"'"); 223 } 224 public String toCode(BiologicallyDerivedProductDispenseCodes code) { 225 if (code == BiologicallyDerivedProductDispenseCodes.PREPARATION) 226 return "preparation"; 227 if (code == BiologicallyDerivedProductDispenseCodes.INPROGRESS) 228 return "in-progress"; 229 if (code == BiologicallyDerivedProductDispenseCodes.ALLOCATED) 230 return "allocated"; 231 if (code == BiologicallyDerivedProductDispenseCodes.ISSUED) 232 return "issued"; 233 if (code == BiologicallyDerivedProductDispenseCodes.UNFULFILLED) 234 return "unfulfilled"; 235 if (code == BiologicallyDerivedProductDispenseCodes.RETURNED) 236 return "returned"; 237 if (code == BiologicallyDerivedProductDispenseCodes.ENTEREDINERROR) 238 return "entered-in-error"; 239 if (code == BiologicallyDerivedProductDispenseCodes.UNKNOWN) 240 return "unknown"; 241 return "?"; 242 } 243 public String toSystem(BiologicallyDerivedProductDispenseCodes code) { 244 return code.getSystem(); 245 } 246 } 247 248 @Block() 249 public static class BiologicallyDerivedProductDispensePerformerComponent extends BackboneElement implements IBaseBackboneElement { 250 /** 251 * Identifies the function of the performer during the dispense. 252 */ 253 @Child(name = "function", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=true) 254 @Description(shortDefinition="Identifies the function of the performer during the dispense", formalDefinition="Identifies the function of the performer during the dispense." ) 255 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/biologicallyderivedproductdispense-performer-function") 256 protected CodeableConcept function; 257 258 /** 259 * Identifies the person responsible for the action. 260 */ 261 @Child(name = "actor", type = {Practitioner.class}, order=2, min=1, max=1, modifier=false, summary=true) 262 @Description(shortDefinition="Who performed the action", formalDefinition="Identifies the person responsible for the action." ) 263 protected Reference actor; 264 265 private static final long serialVersionUID = -576943815L; 266 267 /** 268 * Constructor 269 */ 270 public BiologicallyDerivedProductDispensePerformerComponent() { 271 super(); 272 } 273 274 /** 275 * Constructor 276 */ 277 public BiologicallyDerivedProductDispensePerformerComponent(Reference actor) { 278 super(); 279 this.setActor(actor); 280 } 281 282 /** 283 * @return {@link #function} (Identifies the function of the performer during the dispense.) 284 */ 285 public CodeableConcept getFunction() { 286 if (this.function == null) 287 if (Configuration.errorOnAutoCreate()) 288 throw new Error("Attempt to auto-create BiologicallyDerivedProductDispensePerformerComponent.function"); 289 else if (Configuration.doAutoCreate()) 290 this.function = new CodeableConcept(); // cc 291 return this.function; 292 } 293 294 public boolean hasFunction() { 295 return this.function != null && !this.function.isEmpty(); 296 } 297 298 /** 299 * @param value {@link #function} (Identifies the function of the performer during the dispense.) 300 */ 301 public BiologicallyDerivedProductDispensePerformerComponent setFunction(CodeableConcept value) { 302 this.function = value; 303 return this; 304 } 305 306 /** 307 * @return {@link #actor} (Identifies the person responsible for the action.) 308 */ 309 public Reference getActor() { 310 if (this.actor == null) 311 if (Configuration.errorOnAutoCreate()) 312 throw new Error("Attempt to auto-create BiologicallyDerivedProductDispensePerformerComponent.actor"); 313 else if (Configuration.doAutoCreate()) 314 this.actor = new Reference(); // cc 315 return this.actor; 316 } 317 318 public boolean hasActor() { 319 return this.actor != null && !this.actor.isEmpty(); 320 } 321 322 /** 323 * @param value {@link #actor} (Identifies the person responsible for the action.) 324 */ 325 public BiologicallyDerivedProductDispensePerformerComponent setActor(Reference value) { 326 this.actor = value; 327 return this; 328 } 329 330 protected void listChildren(List<Property> children) { 331 super.listChildren(children); 332 children.add(new Property("function", "CodeableConcept", "Identifies the function of the performer during the dispense.", 0, 1, function)); 333 children.add(new Property("actor", "Reference(Practitioner)", "Identifies the person responsible for the action.", 0, 1, actor)); 334 } 335 336 @Override 337 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 338 switch (_hash) { 339 case 1380938712: /*function*/ return new Property("function", "CodeableConcept", "Identifies the function of the performer during the dispense.", 0, 1, function); 340 case 92645877: /*actor*/ return new Property("actor", "Reference(Practitioner)", "Identifies the person responsible for the action.", 0, 1, actor); 341 default: return super.getNamedProperty(_hash, _name, _checkValid); 342 } 343 344 } 345 346 @Override 347 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 348 switch (hash) { 349 case 1380938712: /*function*/ return this.function == null ? new Base[0] : new Base[] {this.function}; // CodeableConcept 350 case 92645877: /*actor*/ return this.actor == null ? new Base[0] : new Base[] {this.actor}; // Reference 351 default: return super.getProperty(hash, name, checkValid); 352 } 353 354 } 355 356 @Override 357 public Base setProperty(int hash, String name, Base value) throws FHIRException { 358 switch (hash) { 359 case 1380938712: // function 360 this.function = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 361 return value; 362 case 92645877: // actor 363 this.actor = TypeConvertor.castToReference(value); // Reference 364 return value; 365 default: return super.setProperty(hash, name, value); 366 } 367 368 } 369 370 @Override 371 public Base setProperty(String name, Base value) throws FHIRException { 372 if (name.equals("function")) { 373 this.function = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 374 } else if (name.equals("actor")) { 375 this.actor = TypeConvertor.castToReference(value); // Reference 376 } else 377 return super.setProperty(name, value); 378 return value; 379 } 380 381 @Override 382 public Base makeProperty(int hash, String name) throws FHIRException { 383 switch (hash) { 384 case 1380938712: return getFunction(); 385 case 92645877: return getActor(); 386 default: return super.makeProperty(hash, name); 387 } 388 389 } 390 391 @Override 392 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 393 switch (hash) { 394 case 1380938712: /*function*/ return new String[] {"CodeableConcept"}; 395 case 92645877: /*actor*/ return new String[] {"Reference"}; 396 default: return super.getTypesForProperty(hash, name); 397 } 398 399 } 400 401 @Override 402 public Base addChild(String name) throws FHIRException { 403 if (name.equals("function")) { 404 this.function = new CodeableConcept(); 405 return this.function; 406 } 407 else if (name.equals("actor")) { 408 this.actor = new Reference(); 409 return this.actor; 410 } 411 else 412 return super.addChild(name); 413 } 414 415 public BiologicallyDerivedProductDispensePerformerComponent copy() { 416 BiologicallyDerivedProductDispensePerformerComponent dst = new BiologicallyDerivedProductDispensePerformerComponent(); 417 copyValues(dst); 418 return dst; 419 } 420 421 public void copyValues(BiologicallyDerivedProductDispensePerformerComponent dst) { 422 super.copyValues(dst); 423 dst.function = function == null ? null : function.copy(); 424 dst.actor = actor == null ? null : actor.copy(); 425 } 426 427 @Override 428 public boolean equalsDeep(Base other_) { 429 if (!super.equalsDeep(other_)) 430 return false; 431 if (!(other_ instanceof BiologicallyDerivedProductDispensePerformerComponent)) 432 return false; 433 BiologicallyDerivedProductDispensePerformerComponent o = (BiologicallyDerivedProductDispensePerformerComponent) other_; 434 return compareDeep(function, o.function, true) && compareDeep(actor, o.actor, true); 435 } 436 437 @Override 438 public boolean equalsShallow(Base other_) { 439 if (!super.equalsShallow(other_)) 440 return false; 441 if (!(other_ instanceof BiologicallyDerivedProductDispensePerformerComponent)) 442 return false; 443 BiologicallyDerivedProductDispensePerformerComponent o = (BiologicallyDerivedProductDispensePerformerComponent) other_; 444 return true; 445 } 446 447 public boolean isEmpty() { 448 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(function, actor); 449 } 450 451 public String fhirType() { 452 return "BiologicallyDerivedProductDispense.performer"; 453 454 } 455 456 } 457 458 /** 459 * Unique instance identifiers assigned to a biologically derived product dispense. Note: This is a business identifier, not a resource identifier. 460 */ 461 @Child(name = "identifier", type = {Identifier.class}, order=0, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 462 @Description(shortDefinition="Business identifier for this dispense", formalDefinition="Unique instance identifiers assigned to a biologically derived product dispense. Note: This is a business identifier, not a resource identifier." ) 463 protected List<Identifier> identifier; 464 465 /** 466 * The order or request that the dispense is fulfilling. This is a reference to a ServiceRequest resource. 467 */ 468 @Child(name = "basedOn", type = {ServiceRequest.class}, order=1, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 469 @Description(shortDefinition="The order or request that this dispense is fulfilling", formalDefinition="The order or request that the dispense is fulfilling. This is a reference to a ServiceRequest resource." ) 470 protected List<Reference> basedOn; 471 472 /** 473 * A larger event of which this particular event is a component. 474 */ 475 @Child(name = "partOf", type = {BiologicallyDerivedProductDispense.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 476 @Description(shortDefinition="Short description", formalDefinition="A larger event of which this particular event is a component." ) 477 protected List<Reference> partOf; 478 479 /** 480 * A code specifying the state of the dispense event. 481 */ 482 @Child(name = "status", type = {CodeType.class}, order=3, min=1, max=1, modifier=false, summary=true) 483 @Description(shortDefinition="preparation | in-progress | allocated | issued | unfulfilled | returned | entered-in-error | unknown", formalDefinition="A code specifying the state of the dispense event." ) 484 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/biologicallyderivedproductdispense-status") 485 protected Enumeration<BiologicallyDerivedProductDispenseCodes> status; 486 487 /** 488 * Indicates the relationship between the donor of the biologically derived product and the intended recipient. 489 */ 490 @Child(name = "originRelationshipType", type = {CodeableConcept.class}, order=4, min=0, max=1, modifier=false, summary=true) 491 @Description(shortDefinition="Relationship between the donor and intended recipient", formalDefinition="Indicates the relationship between the donor of the biologically derived product and the intended recipient." ) 492 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/biologicallyderivedproductdispense-origin-relationship") 493 protected CodeableConcept originRelationshipType; 494 495 /** 496 * A link to a resource identifying the biologically derived product that is being dispensed. 497 */ 498 @Child(name = "product", type = {BiologicallyDerivedProduct.class}, order=5, min=1, max=1, modifier=false, summary=true) 499 @Description(shortDefinition="The BiologicallyDerivedProduct that is dispensed", formalDefinition="A link to a resource identifying the biologically derived product that is being dispensed." ) 500 protected Reference product; 501 502 /** 503 * A link to a resource representing the patient that the product is dispensed for. 504 */ 505 @Child(name = "patient", type = {Patient.class}, order=6, min=1, max=1, modifier=false, summary=true) 506 @Description(shortDefinition="The intended recipient of the dispensed product", formalDefinition="A link to a resource representing the patient that the product is dispensed for." ) 507 protected Reference patient; 508 509 /** 510 * Indicates the type of matching associated with the dispense. 511 */ 512 @Child(name = "matchStatus", type = {CodeableConcept.class}, order=7, min=0, max=1, modifier=false, summary=true) 513 @Description(shortDefinition="Indicates the type of matching associated with the dispense", formalDefinition="Indicates the type of matching associated with the dispense." ) 514 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/biologicallyderivedproductdispense-match-status") 515 protected CodeableConcept matchStatus; 516 517 /** 518 * Indicates who or what performed an action. 519 */ 520 @Child(name = "performer", type = {}, order=8, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 521 @Description(shortDefinition="Indicates who or what performed an action", formalDefinition="Indicates who or what performed an action." ) 522 protected List<BiologicallyDerivedProductDispensePerformerComponent> performer; 523 524 /** 525 * The physical location where the dispense was performed. 526 */ 527 @Child(name = "location", type = {Location.class}, order=9, min=0, max=1, modifier=false, summary=true) 528 @Description(shortDefinition="Where the dispense occurred", formalDefinition="The physical location where the dispense was performed." ) 529 protected Reference location; 530 531 /** 532 * The amount of product in the dispense. Quantity will depend on the product being dispensed. Examples are: volume; cell count; concentration. 533 */ 534 @Child(name = "quantity", type = {Quantity.class}, order=10, min=0, max=1, modifier=false, summary=true) 535 @Description(shortDefinition="Amount dispensed", formalDefinition="The amount of product in the dispense. Quantity will depend on the product being dispensed. Examples are: volume; cell count; concentration." ) 536 protected Quantity quantity; 537 538 /** 539 * When the product was selected/ matched. 540 */ 541 @Child(name = "preparedDate", type = {DateTimeType.class}, order=11, min=0, max=1, modifier=false, summary=true) 542 @Description(shortDefinition="When product was selected/matched", formalDefinition="When the product was selected/ matched." ) 543 protected DateTimeType preparedDate; 544 545 /** 546 * When the product was dispatched for clinical use. 547 */ 548 @Child(name = "whenHandedOver", type = {DateTimeType.class}, order=12, min=0, max=1, modifier=false, summary=true) 549 @Description(shortDefinition="When the product was dispatched", formalDefinition="When the product was dispatched for clinical use." ) 550 protected DateTimeType whenHandedOver; 551 552 /** 553 * Link to a resource identifying the physical location that the product was dispatched to. 554 */ 555 @Child(name = "destination", type = {Location.class}, order=13, min=0, max=1, modifier=false, summary=true) 556 @Description(shortDefinition="Where the product was dispatched to", formalDefinition="Link to a resource identifying the physical location that the product was dispatched to." ) 557 protected Reference destination; 558 559 /** 560 * Additional notes. 561 */ 562 @Child(name = "note", type = {Annotation.class}, order=14, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 563 @Description(shortDefinition="Additional notes", formalDefinition="Additional notes." ) 564 protected List<Annotation> note; 565 566 /** 567 * Specific instructions for use. 568 */ 569 @Child(name = "usageInstruction", type = {StringType.class}, order=15, min=0, max=1, modifier=false, summary=true) 570 @Description(shortDefinition="Specific instructions for use", formalDefinition="Specific instructions for use." ) 571 protected StringType usageInstruction; 572 573 private static final long serialVersionUID = -109945994L; 574 575 /** 576 * Constructor 577 */ 578 public BiologicallyDerivedProductDispense() { 579 super(); 580 } 581 582 /** 583 * Constructor 584 */ 585 public BiologicallyDerivedProductDispense(BiologicallyDerivedProductDispenseCodes status, Reference product, Reference patient) { 586 super(); 587 this.setStatus(status); 588 this.setProduct(product); 589 this.setPatient(patient); 590 } 591 592 /** 593 * @return {@link #identifier} (Unique instance identifiers assigned to a biologically derived product dispense. Note: This is a business identifier, not a resource identifier.) 594 */ 595 public List<Identifier> getIdentifier() { 596 if (this.identifier == null) 597 this.identifier = new ArrayList<Identifier>(); 598 return this.identifier; 599 } 600 601 /** 602 * @return Returns a reference to <code>this</code> for easy method chaining 603 */ 604 public BiologicallyDerivedProductDispense setIdentifier(List<Identifier> theIdentifier) { 605 this.identifier = theIdentifier; 606 return this; 607 } 608 609 public boolean hasIdentifier() { 610 if (this.identifier == null) 611 return false; 612 for (Identifier item : this.identifier) 613 if (!item.isEmpty()) 614 return true; 615 return false; 616 } 617 618 public Identifier addIdentifier() { //3 619 Identifier t = new Identifier(); 620 if (this.identifier == null) 621 this.identifier = new ArrayList<Identifier>(); 622 this.identifier.add(t); 623 return t; 624 } 625 626 public BiologicallyDerivedProductDispense addIdentifier(Identifier t) { //3 627 if (t == null) 628 return this; 629 if (this.identifier == null) 630 this.identifier = new ArrayList<Identifier>(); 631 this.identifier.add(t); 632 return this; 633 } 634 635 /** 636 * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist {3} 637 */ 638 public Identifier getIdentifierFirstRep() { 639 if (getIdentifier().isEmpty()) { 640 addIdentifier(); 641 } 642 return getIdentifier().get(0); 643 } 644 645 /** 646 * @return {@link #basedOn} (The order or request that the dispense is fulfilling. This is a reference to a ServiceRequest resource.) 647 */ 648 public List<Reference> getBasedOn() { 649 if (this.basedOn == null) 650 this.basedOn = new ArrayList<Reference>(); 651 return this.basedOn; 652 } 653 654 /** 655 * @return Returns a reference to <code>this</code> for easy method chaining 656 */ 657 public BiologicallyDerivedProductDispense setBasedOn(List<Reference> theBasedOn) { 658 this.basedOn = theBasedOn; 659 return this; 660 } 661 662 public boolean hasBasedOn() { 663 if (this.basedOn == null) 664 return false; 665 for (Reference item : this.basedOn) 666 if (!item.isEmpty()) 667 return true; 668 return false; 669 } 670 671 public Reference addBasedOn() { //3 672 Reference t = new Reference(); 673 if (this.basedOn == null) 674 this.basedOn = new ArrayList<Reference>(); 675 this.basedOn.add(t); 676 return t; 677 } 678 679 public BiologicallyDerivedProductDispense addBasedOn(Reference t) { //3 680 if (t == null) 681 return this; 682 if (this.basedOn == null) 683 this.basedOn = new ArrayList<Reference>(); 684 this.basedOn.add(t); 685 return this; 686 } 687 688 /** 689 * @return The first repetition of repeating field {@link #basedOn}, creating it if it does not already exist {3} 690 */ 691 public Reference getBasedOnFirstRep() { 692 if (getBasedOn().isEmpty()) { 693 addBasedOn(); 694 } 695 return getBasedOn().get(0); 696 } 697 698 /** 699 * @return {@link #partOf} (A larger event of which this particular event is a component.) 700 */ 701 public List<Reference> getPartOf() { 702 if (this.partOf == null) 703 this.partOf = new ArrayList<Reference>(); 704 return this.partOf; 705 } 706 707 /** 708 * @return Returns a reference to <code>this</code> for easy method chaining 709 */ 710 public BiologicallyDerivedProductDispense setPartOf(List<Reference> thePartOf) { 711 this.partOf = thePartOf; 712 return this; 713 } 714 715 public boolean hasPartOf() { 716 if (this.partOf == null) 717 return false; 718 for (Reference item : this.partOf) 719 if (!item.isEmpty()) 720 return true; 721 return false; 722 } 723 724 public Reference addPartOf() { //3 725 Reference t = new Reference(); 726 if (this.partOf == null) 727 this.partOf = new ArrayList<Reference>(); 728 this.partOf.add(t); 729 return t; 730 } 731 732 public BiologicallyDerivedProductDispense addPartOf(Reference t) { //3 733 if (t == null) 734 return this; 735 if (this.partOf == null) 736 this.partOf = new ArrayList<Reference>(); 737 this.partOf.add(t); 738 return this; 739 } 740 741 /** 742 * @return The first repetition of repeating field {@link #partOf}, creating it if it does not already exist {3} 743 */ 744 public Reference getPartOfFirstRep() { 745 if (getPartOf().isEmpty()) { 746 addPartOf(); 747 } 748 return getPartOf().get(0); 749 } 750 751 /** 752 * @return {@link #status} (A code specifying the state of the dispense event.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 753 */ 754 public Enumeration<BiologicallyDerivedProductDispenseCodes> getStatusElement() { 755 if (this.status == null) 756 if (Configuration.errorOnAutoCreate()) 757 throw new Error("Attempt to auto-create BiologicallyDerivedProductDispense.status"); 758 else if (Configuration.doAutoCreate()) 759 this.status = new Enumeration<BiologicallyDerivedProductDispenseCodes>(new BiologicallyDerivedProductDispenseCodesEnumFactory()); // bb 760 return this.status; 761 } 762 763 public boolean hasStatusElement() { 764 return this.status != null && !this.status.isEmpty(); 765 } 766 767 public boolean hasStatus() { 768 return this.status != null && !this.status.isEmpty(); 769 } 770 771 /** 772 * @param value {@link #status} (A code specifying the state of the dispense event.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 773 */ 774 public BiologicallyDerivedProductDispense setStatusElement(Enumeration<BiologicallyDerivedProductDispenseCodes> value) { 775 this.status = value; 776 return this; 777 } 778 779 /** 780 * @return A code specifying the state of the dispense event. 781 */ 782 public BiologicallyDerivedProductDispenseCodes getStatus() { 783 return this.status == null ? null : this.status.getValue(); 784 } 785 786 /** 787 * @param value A code specifying the state of the dispense event. 788 */ 789 public BiologicallyDerivedProductDispense setStatus(BiologicallyDerivedProductDispenseCodes value) { 790 if (this.status == null) 791 this.status = new Enumeration<BiologicallyDerivedProductDispenseCodes>(new BiologicallyDerivedProductDispenseCodesEnumFactory()); 792 this.status.setValue(value); 793 return this; 794 } 795 796 /** 797 * @return {@link #originRelationshipType} (Indicates the relationship between the donor of the biologically derived product and the intended recipient.) 798 */ 799 public CodeableConcept getOriginRelationshipType() { 800 if (this.originRelationshipType == null) 801 if (Configuration.errorOnAutoCreate()) 802 throw new Error("Attempt to auto-create BiologicallyDerivedProductDispense.originRelationshipType"); 803 else if (Configuration.doAutoCreate()) 804 this.originRelationshipType = new CodeableConcept(); // cc 805 return this.originRelationshipType; 806 } 807 808 public boolean hasOriginRelationshipType() { 809 return this.originRelationshipType != null && !this.originRelationshipType.isEmpty(); 810 } 811 812 /** 813 * @param value {@link #originRelationshipType} (Indicates the relationship between the donor of the biologically derived product and the intended recipient.) 814 */ 815 public BiologicallyDerivedProductDispense setOriginRelationshipType(CodeableConcept value) { 816 this.originRelationshipType = value; 817 return this; 818 } 819 820 /** 821 * @return {@link #product} (A link to a resource identifying the biologically derived product that is being dispensed.) 822 */ 823 public Reference getProduct() { 824 if (this.product == null) 825 if (Configuration.errorOnAutoCreate()) 826 throw new Error("Attempt to auto-create BiologicallyDerivedProductDispense.product"); 827 else if (Configuration.doAutoCreate()) 828 this.product = new Reference(); // cc 829 return this.product; 830 } 831 832 public boolean hasProduct() { 833 return this.product != null && !this.product.isEmpty(); 834 } 835 836 /** 837 * @param value {@link #product} (A link to a resource identifying the biologically derived product that is being dispensed.) 838 */ 839 public BiologicallyDerivedProductDispense setProduct(Reference value) { 840 this.product = value; 841 return this; 842 } 843 844 /** 845 * @return {@link #patient} (A link to a resource representing the patient that the product is dispensed for.) 846 */ 847 public Reference getPatient() { 848 if (this.patient == null) 849 if (Configuration.errorOnAutoCreate()) 850 throw new Error("Attempt to auto-create BiologicallyDerivedProductDispense.patient"); 851 else if (Configuration.doAutoCreate()) 852 this.patient = new Reference(); // cc 853 return this.patient; 854 } 855 856 public boolean hasPatient() { 857 return this.patient != null && !this.patient.isEmpty(); 858 } 859 860 /** 861 * @param value {@link #patient} (A link to a resource representing the patient that the product is dispensed for.) 862 */ 863 public BiologicallyDerivedProductDispense setPatient(Reference value) { 864 this.patient = value; 865 return this; 866 } 867 868 /** 869 * @return {@link #matchStatus} (Indicates the type of matching associated with the dispense.) 870 */ 871 public CodeableConcept getMatchStatus() { 872 if (this.matchStatus == null) 873 if (Configuration.errorOnAutoCreate()) 874 throw new Error("Attempt to auto-create BiologicallyDerivedProductDispense.matchStatus"); 875 else if (Configuration.doAutoCreate()) 876 this.matchStatus = new CodeableConcept(); // cc 877 return this.matchStatus; 878 } 879 880 public boolean hasMatchStatus() { 881 return this.matchStatus != null && !this.matchStatus.isEmpty(); 882 } 883 884 /** 885 * @param value {@link #matchStatus} (Indicates the type of matching associated with the dispense.) 886 */ 887 public BiologicallyDerivedProductDispense setMatchStatus(CodeableConcept value) { 888 this.matchStatus = value; 889 return this; 890 } 891 892 /** 893 * @return {@link #performer} (Indicates who or what performed an action.) 894 */ 895 public List<BiologicallyDerivedProductDispensePerformerComponent> getPerformer() { 896 if (this.performer == null) 897 this.performer = new ArrayList<BiologicallyDerivedProductDispensePerformerComponent>(); 898 return this.performer; 899 } 900 901 /** 902 * @return Returns a reference to <code>this</code> for easy method chaining 903 */ 904 public BiologicallyDerivedProductDispense setPerformer(List<BiologicallyDerivedProductDispensePerformerComponent> thePerformer) { 905 this.performer = thePerformer; 906 return this; 907 } 908 909 public boolean hasPerformer() { 910 if (this.performer == null) 911 return false; 912 for (BiologicallyDerivedProductDispensePerformerComponent item : this.performer) 913 if (!item.isEmpty()) 914 return true; 915 return false; 916 } 917 918 public BiologicallyDerivedProductDispensePerformerComponent addPerformer() { //3 919 BiologicallyDerivedProductDispensePerformerComponent t = new BiologicallyDerivedProductDispensePerformerComponent(); 920 if (this.performer == null) 921 this.performer = new ArrayList<BiologicallyDerivedProductDispensePerformerComponent>(); 922 this.performer.add(t); 923 return t; 924 } 925 926 public BiologicallyDerivedProductDispense addPerformer(BiologicallyDerivedProductDispensePerformerComponent t) { //3 927 if (t == null) 928 return this; 929 if (this.performer == null) 930 this.performer = new ArrayList<BiologicallyDerivedProductDispensePerformerComponent>(); 931 this.performer.add(t); 932 return this; 933 } 934 935 /** 936 * @return The first repetition of repeating field {@link #performer}, creating it if it does not already exist {3} 937 */ 938 public BiologicallyDerivedProductDispensePerformerComponent getPerformerFirstRep() { 939 if (getPerformer().isEmpty()) { 940 addPerformer(); 941 } 942 return getPerformer().get(0); 943 } 944 945 /** 946 * @return {@link #location} (The physical location where the dispense was performed.) 947 */ 948 public Reference getLocation() { 949 if (this.location == null) 950 if (Configuration.errorOnAutoCreate()) 951 throw new Error("Attempt to auto-create BiologicallyDerivedProductDispense.location"); 952 else if (Configuration.doAutoCreate()) 953 this.location = new Reference(); // cc 954 return this.location; 955 } 956 957 public boolean hasLocation() { 958 return this.location != null && !this.location.isEmpty(); 959 } 960 961 /** 962 * @param value {@link #location} (The physical location where the dispense was performed.) 963 */ 964 public BiologicallyDerivedProductDispense setLocation(Reference value) { 965 this.location = value; 966 return this; 967 } 968 969 /** 970 * @return {@link #quantity} (The amount of product in the dispense. Quantity will depend on the product being dispensed. Examples are: volume; cell count; concentration.) 971 */ 972 public Quantity getQuantity() { 973 if (this.quantity == null) 974 if (Configuration.errorOnAutoCreate()) 975 throw new Error("Attempt to auto-create BiologicallyDerivedProductDispense.quantity"); 976 else if (Configuration.doAutoCreate()) 977 this.quantity = new Quantity(); // cc 978 return this.quantity; 979 } 980 981 public boolean hasQuantity() { 982 return this.quantity != null && !this.quantity.isEmpty(); 983 } 984 985 /** 986 * @param value {@link #quantity} (The amount of product in the dispense. Quantity will depend on the product being dispensed. Examples are: volume; cell count; concentration.) 987 */ 988 public BiologicallyDerivedProductDispense setQuantity(Quantity value) { 989 this.quantity = value; 990 return this; 991 } 992 993 /** 994 * @return {@link #preparedDate} (When the product was selected/ matched.). This is the underlying object with id, value and extensions. The accessor "getPreparedDate" gives direct access to the value 995 */ 996 public DateTimeType getPreparedDateElement() { 997 if (this.preparedDate == null) 998 if (Configuration.errorOnAutoCreate()) 999 throw new Error("Attempt to auto-create BiologicallyDerivedProductDispense.preparedDate"); 1000 else if (Configuration.doAutoCreate()) 1001 this.preparedDate = new DateTimeType(); // bb 1002 return this.preparedDate; 1003 } 1004 1005 public boolean hasPreparedDateElement() { 1006 return this.preparedDate != null && !this.preparedDate.isEmpty(); 1007 } 1008 1009 public boolean hasPreparedDate() { 1010 return this.preparedDate != null && !this.preparedDate.isEmpty(); 1011 } 1012 1013 /** 1014 * @param value {@link #preparedDate} (When the product was selected/ matched.). This is the underlying object with id, value and extensions. The accessor "getPreparedDate" gives direct access to the value 1015 */ 1016 public BiologicallyDerivedProductDispense setPreparedDateElement(DateTimeType value) { 1017 this.preparedDate = value; 1018 return this; 1019 } 1020 1021 /** 1022 * @return When the product was selected/ matched. 1023 */ 1024 public Date getPreparedDate() { 1025 return this.preparedDate == null ? null : this.preparedDate.getValue(); 1026 } 1027 1028 /** 1029 * @param value When the product was selected/ matched. 1030 */ 1031 public BiologicallyDerivedProductDispense setPreparedDate(Date value) { 1032 if (value == null) 1033 this.preparedDate = null; 1034 else { 1035 if (this.preparedDate == null) 1036 this.preparedDate = new DateTimeType(); 1037 this.preparedDate.setValue(value); 1038 } 1039 return this; 1040 } 1041 1042 /** 1043 * @return {@link #whenHandedOver} (When the product was dispatched for clinical use.). This is the underlying object with id, value and extensions. The accessor "getWhenHandedOver" gives direct access to the value 1044 */ 1045 public DateTimeType getWhenHandedOverElement() { 1046 if (this.whenHandedOver == null) 1047 if (Configuration.errorOnAutoCreate()) 1048 throw new Error("Attempt to auto-create BiologicallyDerivedProductDispense.whenHandedOver"); 1049 else if (Configuration.doAutoCreate()) 1050 this.whenHandedOver = new DateTimeType(); // bb 1051 return this.whenHandedOver; 1052 } 1053 1054 public boolean hasWhenHandedOverElement() { 1055 return this.whenHandedOver != null && !this.whenHandedOver.isEmpty(); 1056 } 1057 1058 public boolean hasWhenHandedOver() { 1059 return this.whenHandedOver != null && !this.whenHandedOver.isEmpty(); 1060 } 1061 1062 /** 1063 * @param value {@link #whenHandedOver} (When the product was dispatched for clinical use.). This is the underlying object with id, value and extensions. The accessor "getWhenHandedOver" gives direct access to the value 1064 */ 1065 public BiologicallyDerivedProductDispense setWhenHandedOverElement(DateTimeType value) { 1066 this.whenHandedOver = value; 1067 return this; 1068 } 1069 1070 /** 1071 * @return When the product was dispatched for clinical use. 1072 */ 1073 public Date getWhenHandedOver() { 1074 return this.whenHandedOver == null ? null : this.whenHandedOver.getValue(); 1075 } 1076 1077 /** 1078 * @param value When the product was dispatched for clinical use. 1079 */ 1080 public BiologicallyDerivedProductDispense setWhenHandedOver(Date value) { 1081 if (value == null) 1082 this.whenHandedOver = null; 1083 else { 1084 if (this.whenHandedOver == null) 1085 this.whenHandedOver = new DateTimeType(); 1086 this.whenHandedOver.setValue(value); 1087 } 1088 return this; 1089 } 1090 1091 /** 1092 * @return {@link #destination} (Link to a resource identifying the physical location that the product was dispatched to.) 1093 */ 1094 public Reference getDestination() { 1095 if (this.destination == null) 1096 if (Configuration.errorOnAutoCreate()) 1097 throw new Error("Attempt to auto-create BiologicallyDerivedProductDispense.destination"); 1098 else if (Configuration.doAutoCreate()) 1099 this.destination = new Reference(); // cc 1100 return this.destination; 1101 } 1102 1103 public boolean hasDestination() { 1104 return this.destination != null && !this.destination.isEmpty(); 1105 } 1106 1107 /** 1108 * @param value {@link #destination} (Link to a resource identifying the physical location that the product was dispatched to.) 1109 */ 1110 public BiologicallyDerivedProductDispense setDestination(Reference value) { 1111 this.destination = value; 1112 return this; 1113 } 1114 1115 /** 1116 * @return {@link #note} (Additional notes.) 1117 */ 1118 public List<Annotation> getNote() { 1119 if (this.note == null) 1120 this.note = new ArrayList<Annotation>(); 1121 return this.note; 1122 } 1123 1124 /** 1125 * @return Returns a reference to <code>this</code> for easy method chaining 1126 */ 1127 public BiologicallyDerivedProductDispense setNote(List<Annotation> theNote) { 1128 this.note = theNote; 1129 return this; 1130 } 1131 1132 public boolean hasNote() { 1133 if (this.note == null) 1134 return false; 1135 for (Annotation item : this.note) 1136 if (!item.isEmpty()) 1137 return true; 1138 return false; 1139 } 1140 1141 public Annotation addNote() { //3 1142 Annotation t = new Annotation(); 1143 if (this.note == null) 1144 this.note = new ArrayList<Annotation>(); 1145 this.note.add(t); 1146 return t; 1147 } 1148 1149 public BiologicallyDerivedProductDispense addNote(Annotation t) { //3 1150 if (t == null) 1151 return this; 1152 if (this.note == null) 1153 this.note = new ArrayList<Annotation>(); 1154 this.note.add(t); 1155 return this; 1156 } 1157 1158 /** 1159 * @return The first repetition of repeating field {@link #note}, creating it if it does not already exist {3} 1160 */ 1161 public Annotation getNoteFirstRep() { 1162 if (getNote().isEmpty()) { 1163 addNote(); 1164 } 1165 return getNote().get(0); 1166 } 1167 1168 /** 1169 * @return {@link #usageInstruction} (Specific instructions for use.). This is the underlying object with id, value and extensions. The accessor "getUsageInstruction" gives direct access to the value 1170 */ 1171 public StringType getUsageInstructionElement() { 1172 if (this.usageInstruction == null) 1173 if (Configuration.errorOnAutoCreate()) 1174 throw new Error("Attempt to auto-create BiologicallyDerivedProductDispense.usageInstruction"); 1175 else if (Configuration.doAutoCreate()) 1176 this.usageInstruction = new StringType(); // bb 1177 return this.usageInstruction; 1178 } 1179 1180 public boolean hasUsageInstructionElement() { 1181 return this.usageInstruction != null && !this.usageInstruction.isEmpty(); 1182 } 1183 1184 public boolean hasUsageInstruction() { 1185 return this.usageInstruction != null && !this.usageInstruction.isEmpty(); 1186 } 1187 1188 /** 1189 * @param value {@link #usageInstruction} (Specific instructions for use.). This is the underlying object with id, value and extensions. The accessor "getUsageInstruction" gives direct access to the value 1190 */ 1191 public BiologicallyDerivedProductDispense setUsageInstructionElement(StringType value) { 1192 this.usageInstruction = value; 1193 return this; 1194 } 1195 1196 /** 1197 * @return Specific instructions for use. 1198 */ 1199 public String getUsageInstruction() { 1200 return this.usageInstruction == null ? null : this.usageInstruction.getValue(); 1201 } 1202 1203 /** 1204 * @param value Specific instructions for use. 1205 */ 1206 public BiologicallyDerivedProductDispense setUsageInstruction(String value) { 1207 if (Utilities.noString(value)) 1208 this.usageInstruction = null; 1209 else { 1210 if (this.usageInstruction == null) 1211 this.usageInstruction = new StringType(); 1212 this.usageInstruction.setValue(value); 1213 } 1214 return this; 1215 } 1216 1217 protected void listChildren(List<Property> children) { 1218 super.listChildren(children); 1219 children.add(new Property("identifier", "Identifier", "Unique instance identifiers assigned to a biologically derived product dispense. Note: This is a business identifier, not a resource identifier.", 0, java.lang.Integer.MAX_VALUE, identifier)); 1220 children.add(new Property("basedOn", "Reference(ServiceRequest)", "The order or request that the dispense is fulfilling. This is a reference to a ServiceRequest resource.", 0, java.lang.Integer.MAX_VALUE, basedOn)); 1221 children.add(new Property("partOf", "Reference(BiologicallyDerivedProductDispense)", "A larger event of which this particular event is a component.", 0, java.lang.Integer.MAX_VALUE, partOf)); 1222 children.add(new Property("status", "code", "A code specifying the state of the dispense event.", 0, 1, status)); 1223 children.add(new Property("originRelationshipType", "CodeableConcept", "Indicates the relationship between the donor of the biologically derived product and the intended recipient.", 0, 1, originRelationshipType)); 1224 children.add(new Property("product", "Reference(BiologicallyDerivedProduct)", "A link to a resource identifying the biologically derived product that is being dispensed.", 0, 1, product)); 1225 children.add(new Property("patient", "Reference(Patient)", "A link to a resource representing the patient that the product is dispensed for.", 0, 1, patient)); 1226 children.add(new Property("matchStatus", "CodeableConcept", "Indicates the type of matching associated with the dispense.", 0, 1, matchStatus)); 1227 children.add(new Property("performer", "", "Indicates who or what performed an action.", 0, java.lang.Integer.MAX_VALUE, performer)); 1228 children.add(new Property("location", "Reference(Location)", "The physical location where the dispense was performed.", 0, 1, location)); 1229 children.add(new Property("quantity", "Quantity", "The amount of product in the dispense. Quantity will depend on the product being dispensed. Examples are: volume; cell count; concentration.", 0, 1, quantity)); 1230 children.add(new Property("preparedDate", "dateTime", "When the product was selected/ matched.", 0, 1, preparedDate)); 1231 children.add(new Property("whenHandedOver", "dateTime", "When the product was dispatched for clinical use.", 0, 1, whenHandedOver)); 1232 children.add(new Property("destination", "Reference(Location)", "Link to a resource identifying the physical location that the product was dispatched to.", 0, 1, destination)); 1233 children.add(new Property("note", "Annotation", "Additional notes.", 0, java.lang.Integer.MAX_VALUE, note)); 1234 children.add(new Property("usageInstruction", "string", "Specific instructions for use.", 0, 1, usageInstruction)); 1235 } 1236 1237 @Override 1238 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1239 switch (_hash) { 1240 case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Unique instance identifiers assigned to a biologically derived product dispense. Note: This is a business identifier, not a resource identifier.", 0, java.lang.Integer.MAX_VALUE, identifier); 1241 case -332612366: /*basedOn*/ return new Property("basedOn", "Reference(ServiceRequest)", "The order or request that the dispense is fulfilling. This is a reference to a ServiceRequest resource.", 0, java.lang.Integer.MAX_VALUE, basedOn); 1242 case -995410646: /*partOf*/ return new Property("partOf", "Reference(BiologicallyDerivedProductDispense)", "A larger event of which this particular event is a component.", 0, java.lang.Integer.MAX_VALUE, partOf); 1243 case -892481550: /*status*/ return new Property("status", "code", "A code specifying the state of the dispense event.", 0, 1, status); 1244 case 1746240728: /*originRelationshipType*/ return new Property("originRelationshipType", "CodeableConcept", "Indicates the relationship between the donor of the biologically derived product and the intended recipient.", 0, 1, originRelationshipType); 1245 case -309474065: /*product*/ return new Property("product", "Reference(BiologicallyDerivedProduct)", "A link to a resource identifying the biologically derived product that is being dispensed.", 0, 1, product); 1246 case -791418107: /*patient*/ return new Property("patient", "Reference(Patient)", "A link to a resource representing the patient that the product is dispensed for.", 0, 1, patient); 1247 case 1644523031: /*matchStatus*/ return new Property("matchStatus", "CodeableConcept", "Indicates the type of matching associated with the dispense.", 0, 1, matchStatus); 1248 case 481140686: /*performer*/ return new Property("performer", "", "Indicates who or what performed an action.", 0, java.lang.Integer.MAX_VALUE, performer); 1249 case 1901043637: /*location*/ return new Property("location", "Reference(Location)", "The physical location where the dispense was performed.", 0, 1, location); 1250 case -1285004149: /*quantity*/ return new Property("quantity", "Quantity", "The amount of product in the dispense. Quantity will depend on the product being dispensed. Examples are: volume; cell count; concentration.", 0, 1, quantity); 1251 case -2024959605: /*preparedDate*/ return new Property("preparedDate", "dateTime", "When the product was selected/ matched.", 0, 1, preparedDate); 1252 case -940241380: /*whenHandedOver*/ return new Property("whenHandedOver", "dateTime", "When the product was dispatched for clinical use.", 0, 1, whenHandedOver); 1253 case -1429847026: /*destination*/ return new Property("destination", "Reference(Location)", "Link to a resource identifying the physical location that the product was dispatched to.", 0, 1, destination); 1254 case 3387378: /*note*/ return new Property("note", "Annotation", "Additional notes.", 0, java.lang.Integer.MAX_VALUE, note); 1255 case 2138372141: /*usageInstruction*/ return new Property("usageInstruction", "string", "Specific instructions for use.", 0, 1, usageInstruction); 1256 default: return super.getNamedProperty(_hash, _name, _checkValid); 1257 } 1258 1259 } 1260 1261 @Override 1262 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1263 switch (hash) { 1264 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 1265 case -332612366: /*basedOn*/ return this.basedOn == null ? new Base[0] : this.basedOn.toArray(new Base[this.basedOn.size()]); // Reference 1266 case -995410646: /*partOf*/ return this.partOf == null ? new Base[0] : this.partOf.toArray(new Base[this.partOf.size()]); // Reference 1267 case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration<BiologicallyDerivedProductDispenseCodes> 1268 case 1746240728: /*originRelationshipType*/ return this.originRelationshipType == null ? new Base[0] : new Base[] {this.originRelationshipType}; // CodeableConcept 1269 case -309474065: /*product*/ return this.product == null ? new Base[0] : new Base[] {this.product}; // Reference 1270 case -791418107: /*patient*/ return this.patient == null ? new Base[0] : new Base[] {this.patient}; // Reference 1271 case 1644523031: /*matchStatus*/ return this.matchStatus == null ? new Base[0] : new Base[] {this.matchStatus}; // CodeableConcept 1272 case 481140686: /*performer*/ return this.performer == null ? new Base[0] : this.performer.toArray(new Base[this.performer.size()]); // BiologicallyDerivedProductDispensePerformerComponent 1273 case 1901043637: /*location*/ return this.location == null ? new Base[0] : new Base[] {this.location}; // Reference 1274 case -1285004149: /*quantity*/ return this.quantity == null ? new Base[0] : new Base[] {this.quantity}; // Quantity 1275 case -2024959605: /*preparedDate*/ return this.preparedDate == null ? new Base[0] : new Base[] {this.preparedDate}; // DateTimeType 1276 case -940241380: /*whenHandedOver*/ return this.whenHandedOver == null ? new Base[0] : new Base[] {this.whenHandedOver}; // DateTimeType 1277 case -1429847026: /*destination*/ return this.destination == null ? new Base[0] : new Base[] {this.destination}; // Reference 1278 case 3387378: /*note*/ return this.note == null ? new Base[0] : this.note.toArray(new Base[this.note.size()]); // Annotation 1279 case 2138372141: /*usageInstruction*/ return this.usageInstruction == null ? new Base[0] : new Base[] {this.usageInstruction}; // StringType 1280 default: return super.getProperty(hash, name, checkValid); 1281 } 1282 1283 } 1284 1285 @Override 1286 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1287 switch (hash) { 1288 case -1618432855: // identifier 1289 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier 1290 return value; 1291 case -332612366: // basedOn 1292 this.getBasedOn().add(TypeConvertor.castToReference(value)); // Reference 1293 return value; 1294 case -995410646: // partOf 1295 this.getPartOf().add(TypeConvertor.castToReference(value)); // Reference 1296 return value; 1297 case -892481550: // status 1298 value = new BiologicallyDerivedProductDispenseCodesEnumFactory().fromType(TypeConvertor.castToCode(value)); 1299 this.status = (Enumeration) value; // Enumeration<BiologicallyDerivedProductDispenseCodes> 1300 return value; 1301 case 1746240728: // originRelationshipType 1302 this.originRelationshipType = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1303 return value; 1304 case -309474065: // product 1305 this.product = TypeConvertor.castToReference(value); // Reference 1306 return value; 1307 case -791418107: // patient 1308 this.patient = TypeConvertor.castToReference(value); // Reference 1309 return value; 1310 case 1644523031: // matchStatus 1311 this.matchStatus = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1312 return value; 1313 case 481140686: // performer 1314 this.getPerformer().add((BiologicallyDerivedProductDispensePerformerComponent) value); // BiologicallyDerivedProductDispensePerformerComponent 1315 return value; 1316 case 1901043637: // location 1317 this.location = TypeConvertor.castToReference(value); // Reference 1318 return value; 1319 case -1285004149: // quantity 1320 this.quantity = TypeConvertor.castToQuantity(value); // Quantity 1321 return value; 1322 case -2024959605: // preparedDate 1323 this.preparedDate = TypeConvertor.castToDateTime(value); // DateTimeType 1324 return value; 1325 case -940241380: // whenHandedOver 1326 this.whenHandedOver = TypeConvertor.castToDateTime(value); // DateTimeType 1327 return value; 1328 case -1429847026: // destination 1329 this.destination = TypeConvertor.castToReference(value); // Reference 1330 return value; 1331 case 3387378: // note 1332 this.getNote().add(TypeConvertor.castToAnnotation(value)); // Annotation 1333 return value; 1334 case 2138372141: // usageInstruction 1335 this.usageInstruction = TypeConvertor.castToString(value); // StringType 1336 return value; 1337 default: return super.setProperty(hash, name, value); 1338 } 1339 1340 } 1341 1342 @Override 1343 public Base setProperty(String name, Base value) throws FHIRException { 1344 if (name.equals("identifier")) { 1345 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); 1346 } else if (name.equals("basedOn")) { 1347 this.getBasedOn().add(TypeConvertor.castToReference(value)); 1348 } else if (name.equals("partOf")) { 1349 this.getPartOf().add(TypeConvertor.castToReference(value)); 1350 } else if (name.equals("status")) { 1351 value = new BiologicallyDerivedProductDispenseCodesEnumFactory().fromType(TypeConvertor.castToCode(value)); 1352 this.status = (Enumeration) value; // Enumeration<BiologicallyDerivedProductDispenseCodes> 1353 } else if (name.equals("originRelationshipType")) { 1354 this.originRelationshipType = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1355 } else if (name.equals("product")) { 1356 this.product = TypeConvertor.castToReference(value); // Reference 1357 } else if (name.equals("patient")) { 1358 this.patient = TypeConvertor.castToReference(value); // Reference 1359 } else if (name.equals("matchStatus")) { 1360 this.matchStatus = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1361 } else if (name.equals("performer")) { 1362 this.getPerformer().add((BiologicallyDerivedProductDispensePerformerComponent) value); 1363 } else if (name.equals("location")) { 1364 this.location = TypeConvertor.castToReference(value); // Reference 1365 } else if (name.equals("quantity")) { 1366 this.quantity = TypeConvertor.castToQuantity(value); // Quantity 1367 } else if (name.equals("preparedDate")) { 1368 this.preparedDate = TypeConvertor.castToDateTime(value); // DateTimeType 1369 } else if (name.equals("whenHandedOver")) { 1370 this.whenHandedOver = TypeConvertor.castToDateTime(value); // DateTimeType 1371 } else if (name.equals("destination")) { 1372 this.destination = TypeConvertor.castToReference(value); // Reference 1373 } else if (name.equals("note")) { 1374 this.getNote().add(TypeConvertor.castToAnnotation(value)); 1375 } else if (name.equals("usageInstruction")) { 1376 this.usageInstruction = TypeConvertor.castToString(value); // StringType 1377 } else 1378 return super.setProperty(name, value); 1379 return value; 1380 } 1381 1382 @Override 1383 public Base makeProperty(int hash, String name) throws FHIRException { 1384 switch (hash) { 1385 case -1618432855: return addIdentifier(); 1386 case -332612366: return addBasedOn(); 1387 case -995410646: return addPartOf(); 1388 case -892481550: return getStatusElement(); 1389 case 1746240728: return getOriginRelationshipType(); 1390 case -309474065: return getProduct(); 1391 case -791418107: return getPatient(); 1392 case 1644523031: return getMatchStatus(); 1393 case 481140686: return addPerformer(); 1394 case 1901043637: return getLocation(); 1395 case -1285004149: return getQuantity(); 1396 case -2024959605: return getPreparedDateElement(); 1397 case -940241380: return getWhenHandedOverElement(); 1398 case -1429847026: return getDestination(); 1399 case 3387378: return addNote(); 1400 case 2138372141: return getUsageInstructionElement(); 1401 default: return super.makeProperty(hash, name); 1402 } 1403 1404 } 1405 1406 @Override 1407 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1408 switch (hash) { 1409 case -1618432855: /*identifier*/ return new String[] {"Identifier"}; 1410 case -332612366: /*basedOn*/ return new String[] {"Reference"}; 1411 case -995410646: /*partOf*/ return new String[] {"Reference"}; 1412 case -892481550: /*status*/ return new String[] {"code"}; 1413 case 1746240728: /*originRelationshipType*/ return new String[] {"CodeableConcept"}; 1414 case -309474065: /*product*/ return new String[] {"Reference"}; 1415 case -791418107: /*patient*/ return new String[] {"Reference"}; 1416 case 1644523031: /*matchStatus*/ return new String[] {"CodeableConcept"}; 1417 case 481140686: /*performer*/ return new String[] {}; 1418 case 1901043637: /*location*/ return new String[] {"Reference"}; 1419 case -1285004149: /*quantity*/ return new String[] {"Quantity"}; 1420 case -2024959605: /*preparedDate*/ return new String[] {"dateTime"}; 1421 case -940241380: /*whenHandedOver*/ return new String[] {"dateTime"}; 1422 case -1429847026: /*destination*/ return new String[] {"Reference"}; 1423 case 3387378: /*note*/ return new String[] {"Annotation"}; 1424 case 2138372141: /*usageInstruction*/ return new String[] {"string"}; 1425 default: return super.getTypesForProperty(hash, name); 1426 } 1427 1428 } 1429 1430 @Override 1431 public Base addChild(String name) throws FHIRException { 1432 if (name.equals("identifier")) { 1433 return addIdentifier(); 1434 } 1435 else if (name.equals("basedOn")) { 1436 return addBasedOn(); 1437 } 1438 else if (name.equals("partOf")) { 1439 return addPartOf(); 1440 } 1441 else if (name.equals("status")) { 1442 throw new FHIRException("Cannot call addChild on a singleton property BiologicallyDerivedProductDispense.status"); 1443 } 1444 else if (name.equals("originRelationshipType")) { 1445 this.originRelationshipType = new CodeableConcept(); 1446 return this.originRelationshipType; 1447 } 1448 else if (name.equals("product")) { 1449 this.product = new Reference(); 1450 return this.product; 1451 } 1452 else if (name.equals("patient")) { 1453 this.patient = new Reference(); 1454 return this.patient; 1455 } 1456 else if (name.equals("matchStatus")) { 1457 this.matchStatus = new CodeableConcept(); 1458 return this.matchStatus; 1459 } 1460 else if (name.equals("performer")) { 1461 return addPerformer(); 1462 } 1463 else if (name.equals("location")) { 1464 this.location = new Reference(); 1465 return this.location; 1466 } 1467 else if (name.equals("quantity")) { 1468 this.quantity = new Quantity(); 1469 return this.quantity; 1470 } 1471 else if (name.equals("preparedDate")) { 1472 throw new FHIRException("Cannot call addChild on a singleton property BiologicallyDerivedProductDispense.preparedDate"); 1473 } 1474 else if (name.equals("whenHandedOver")) { 1475 throw new FHIRException("Cannot call addChild on a singleton property BiologicallyDerivedProductDispense.whenHandedOver"); 1476 } 1477 else if (name.equals("destination")) { 1478 this.destination = new Reference(); 1479 return this.destination; 1480 } 1481 else if (name.equals("note")) { 1482 return addNote(); 1483 } 1484 else if (name.equals("usageInstruction")) { 1485 throw new FHIRException("Cannot call addChild on a singleton property BiologicallyDerivedProductDispense.usageInstruction"); 1486 } 1487 else 1488 return super.addChild(name); 1489 } 1490 1491 public String fhirType() { 1492 return "BiologicallyDerivedProductDispense"; 1493 1494 } 1495 1496 public BiologicallyDerivedProductDispense copy() { 1497 BiologicallyDerivedProductDispense dst = new BiologicallyDerivedProductDispense(); 1498 copyValues(dst); 1499 return dst; 1500 } 1501 1502 public void copyValues(BiologicallyDerivedProductDispense dst) { 1503 super.copyValues(dst); 1504 if (identifier != null) { 1505 dst.identifier = new ArrayList<Identifier>(); 1506 for (Identifier i : identifier) 1507 dst.identifier.add(i.copy()); 1508 }; 1509 if (basedOn != null) { 1510 dst.basedOn = new ArrayList<Reference>(); 1511 for (Reference i : basedOn) 1512 dst.basedOn.add(i.copy()); 1513 }; 1514 if (partOf != null) { 1515 dst.partOf = new ArrayList<Reference>(); 1516 for (Reference i : partOf) 1517 dst.partOf.add(i.copy()); 1518 }; 1519 dst.status = status == null ? null : status.copy(); 1520 dst.originRelationshipType = originRelationshipType == null ? null : originRelationshipType.copy(); 1521 dst.product = product == null ? null : product.copy(); 1522 dst.patient = patient == null ? null : patient.copy(); 1523 dst.matchStatus = matchStatus == null ? null : matchStatus.copy(); 1524 if (performer != null) { 1525 dst.performer = new ArrayList<BiologicallyDerivedProductDispensePerformerComponent>(); 1526 for (BiologicallyDerivedProductDispensePerformerComponent i : performer) 1527 dst.performer.add(i.copy()); 1528 }; 1529 dst.location = location == null ? null : location.copy(); 1530 dst.quantity = quantity == null ? null : quantity.copy(); 1531 dst.preparedDate = preparedDate == null ? null : preparedDate.copy(); 1532 dst.whenHandedOver = whenHandedOver == null ? null : whenHandedOver.copy(); 1533 dst.destination = destination == null ? null : destination.copy(); 1534 if (note != null) { 1535 dst.note = new ArrayList<Annotation>(); 1536 for (Annotation i : note) 1537 dst.note.add(i.copy()); 1538 }; 1539 dst.usageInstruction = usageInstruction == null ? null : usageInstruction.copy(); 1540 } 1541 1542 protected BiologicallyDerivedProductDispense typedCopy() { 1543 return copy(); 1544 } 1545 1546 @Override 1547 public boolean equalsDeep(Base other_) { 1548 if (!super.equalsDeep(other_)) 1549 return false; 1550 if (!(other_ instanceof BiologicallyDerivedProductDispense)) 1551 return false; 1552 BiologicallyDerivedProductDispense o = (BiologicallyDerivedProductDispense) other_; 1553 return compareDeep(identifier, o.identifier, true) && compareDeep(basedOn, o.basedOn, true) && compareDeep(partOf, o.partOf, true) 1554 && compareDeep(status, o.status, true) && compareDeep(originRelationshipType, o.originRelationshipType, true) 1555 && compareDeep(product, o.product, true) && compareDeep(patient, o.patient, true) && compareDeep(matchStatus, o.matchStatus, true) 1556 && compareDeep(performer, o.performer, true) && compareDeep(location, o.location, true) && compareDeep(quantity, o.quantity, true) 1557 && compareDeep(preparedDate, o.preparedDate, true) && compareDeep(whenHandedOver, o.whenHandedOver, true) 1558 && compareDeep(destination, o.destination, true) && compareDeep(note, o.note, true) && compareDeep(usageInstruction, o.usageInstruction, true) 1559 ; 1560 } 1561 1562 @Override 1563 public boolean equalsShallow(Base other_) { 1564 if (!super.equalsShallow(other_)) 1565 return false; 1566 if (!(other_ instanceof BiologicallyDerivedProductDispense)) 1567 return false; 1568 BiologicallyDerivedProductDispense o = (BiologicallyDerivedProductDispense) other_; 1569 return compareValues(status, o.status, true) && compareValues(preparedDate, o.preparedDate, true) && compareValues(whenHandedOver, o.whenHandedOver, true) 1570 && compareValues(usageInstruction, o.usageInstruction, true); 1571 } 1572 1573 public boolean isEmpty() { 1574 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, basedOn, partOf 1575 , status, originRelationshipType, product, patient, matchStatus, performer, location 1576 , quantity, preparedDate, whenHandedOver, destination, note, usageInstruction); 1577 } 1578 1579 @Override 1580 public ResourceType getResourceType() { 1581 return ResourceType.BiologicallyDerivedProductDispense; 1582 } 1583 1584 /** 1585 * Search parameter: <b>identifier</b> 1586 * <p> 1587 * Description: <b>The identifier of the dispense</b><br> 1588 * Type: <b>token</b><br> 1589 * Path: <b>BiologicallyDerivedProductDispense.identifier</b><br> 1590 * </p> 1591 */ 1592 @SearchParamDefinition(name="identifier", path="BiologicallyDerivedProductDispense.identifier", description="The identifier of the dispense", type="token" ) 1593 public static final String SP_IDENTIFIER = "identifier"; 1594 /** 1595 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 1596 * <p> 1597 * Description: <b>The identifier of the dispense</b><br> 1598 * Type: <b>token</b><br> 1599 * Path: <b>BiologicallyDerivedProductDispense.identifier</b><br> 1600 * </p> 1601 */ 1602 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 1603 1604 /** 1605 * Search parameter: <b>patient</b> 1606 * <p> 1607 * Description: <b>The identity of a patient for whom to list dispenses</b><br> 1608 * Type: <b>reference</b><br> 1609 * Path: <b>BiologicallyDerivedProductDispense.patient</b><br> 1610 * </p> 1611 */ 1612 @SearchParamDefinition(name="patient", path="BiologicallyDerivedProductDispense.patient", description="The identity of a patient for whom to list dispenses", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Patient.class } ) 1613 public static final String SP_PATIENT = "patient"; 1614 /** 1615 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 1616 * <p> 1617 * Description: <b>The identity of a patient for whom to list dispenses</b><br> 1618 * Type: <b>reference</b><br> 1619 * Path: <b>BiologicallyDerivedProductDispense.patient</b><br> 1620 * </p> 1621 */ 1622 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); 1623 1624/** 1625 * Constant for fluent queries to be used to add include statements. Specifies 1626 * the path value of "<b>BiologicallyDerivedProductDispense:patient</b>". 1627 */ 1628 public static final ca.uhn.fhir.model.api.Include INCLUDE_PATIENT = new ca.uhn.fhir.model.api.Include("BiologicallyDerivedProductDispense:patient").toLocked(); 1629 1630 /** 1631 * Search parameter: <b>performer</b> 1632 * <p> 1633 * Description: <b>The identity of a patient for whom to list dispenses</b><br> 1634 * Type: <b>reference</b><br> 1635 * Path: <b>BiologicallyDerivedProductDispense.performer.actor</b><br> 1636 * </p> 1637 */ 1638 @SearchParamDefinition(name="performer", path="BiologicallyDerivedProductDispense.performer.actor", description="The identity of a patient for whom to list dispenses", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Practitioner") }, target={Practitioner.class } ) 1639 public static final String SP_PERFORMER = "performer"; 1640 /** 1641 * <b>Fluent Client</b> search parameter constant for <b>performer</b> 1642 * <p> 1643 * Description: <b>The identity of a patient for whom to list dispenses</b><br> 1644 * Type: <b>reference</b><br> 1645 * Path: <b>BiologicallyDerivedProductDispense.performer.actor</b><br> 1646 * </p> 1647 */ 1648 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PERFORMER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PERFORMER); 1649 1650/** 1651 * Constant for fluent queries to be used to add include statements. Specifies 1652 * the path value of "<b>BiologicallyDerivedProductDispense:performer</b>". 1653 */ 1654 public static final ca.uhn.fhir.model.api.Include INCLUDE_PERFORMER = new ca.uhn.fhir.model.api.Include("BiologicallyDerivedProductDispense:performer").toLocked(); 1655 1656 /** 1657 * Search parameter: <b>product</b> 1658 * <p> 1659 * Description: <b>Search for products that match this code</b><br> 1660 * Type: <b>reference</b><br> 1661 * Path: <b>BiologicallyDerivedProductDispense.product</b><br> 1662 * </p> 1663 */ 1664 @SearchParamDefinition(name="product", path="BiologicallyDerivedProductDispense.product", description="Search for products that match this code", type="reference", target={BiologicallyDerivedProduct.class } ) 1665 public static final String SP_PRODUCT = "product"; 1666 /** 1667 * <b>Fluent Client</b> search parameter constant for <b>product</b> 1668 * <p> 1669 * Description: <b>Search for products that match this code</b><br> 1670 * Type: <b>reference</b><br> 1671 * Path: <b>BiologicallyDerivedProductDispense.product</b><br> 1672 * </p> 1673 */ 1674 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PRODUCT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PRODUCT); 1675 1676/** 1677 * Constant for fluent queries to be used to add include statements. Specifies 1678 * the path value of "<b>BiologicallyDerivedProductDispense:product</b>". 1679 */ 1680 public static final ca.uhn.fhir.model.api.Include INCLUDE_PRODUCT = new ca.uhn.fhir.model.api.Include("BiologicallyDerivedProductDispense:product").toLocked(); 1681 1682 /** 1683 * Search parameter: <b>status</b> 1684 * <p> 1685 * Description: <b>The status of the dispense</b><br> 1686 * Type: <b>token</b><br> 1687 * Path: <b>BiologicallyDerivedProductDispense.status</b><br> 1688 * </p> 1689 */ 1690 @SearchParamDefinition(name="status", path="BiologicallyDerivedProductDispense.status", description="The status of the dispense", type="token" ) 1691 public static final String SP_STATUS = "status"; 1692 /** 1693 * <b>Fluent Client</b> search parameter constant for <b>status</b> 1694 * <p> 1695 * Description: <b>The status of the dispense</b><br> 1696 * Type: <b>token</b><br> 1697 * Path: <b>BiologicallyDerivedProductDispense.status</b><br> 1698 * </p> 1699 */ 1700 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); 1701 1702 1703} 1704