001package org.hl7.fhir.dstu2016may.model; 002 003 004 005 006/* 007 Copyright (c) 2011+, HL7, Inc. 008 All rights reserved. 009 010 Redistribution and use in source and binary forms, with or without modification, 011 are permitted provided that the following conditions are met: 012 013 * Redistributions of source code must retain the above copyright notice, this 014 list of conditions and the following disclaimer. 015 * Redistributions in binary form must reproduce the above copyright notice, 016 this list of conditions and the following disclaimer in the documentation 017 and/or other materials provided with the distribution. 018 * Neither the name of HL7 nor the names of its contributors may be used to 019 endorse or promote products derived from this software without specific 020 prior written permission. 021 022 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 023 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 024 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 025 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 026 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 027 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 028 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 029 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 030 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 031 POSSIBILITY OF SUCH DAMAGE. 032 033*/ 034 035// Generated on Sun, May 8, 2016 03:05+1000 for FHIR v1.4.0 036import java.util.ArrayList; 037import java.util.Date; 038import java.util.List; 039 040import org.hl7.fhir.exceptions.FHIRException; 041import org.hl7.fhir.instance.model.api.IBaseBackboneElement; 042 043import ca.uhn.fhir.model.api.annotation.Block; 044import ca.uhn.fhir.model.api.annotation.Child; 045import ca.uhn.fhir.model.api.annotation.Description; 046import ca.uhn.fhir.model.api.annotation.ResourceDef; 047import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; 048/** 049 * A request to convey information; e.g. the CDS system proposes that an alert be sent to a responsible provider, the CDS system proposes that the public health agency be notified about a reportable condition. 050 */ 051@ResourceDef(name="CommunicationRequest", profile="http://hl7.org/fhir/Profile/CommunicationRequest") 052public class CommunicationRequest extends DomainResource { 053 054 public enum CommunicationRequestStatus { 055 /** 056 * The request has been proposed. 057 */ 058 PROPOSED, 059 /** 060 * The request has been planned. 061 */ 062 PLANNED, 063 /** 064 * The request has been placed. 065 */ 066 REQUESTED, 067 /** 068 * The receiving system has received the request but not yet decided whether it will be performed. 069 */ 070 RECEIVED, 071 /** 072 * The receiving system has accepted the order, but work has not yet commenced. 073 */ 074 ACCEPTED, 075 /** 076 * The work to fulfill the order is happening. 077 */ 078 INPROGRESS, 079 /** 080 * The work has been complete, the report(s) released, and no further work is planned. 081 */ 082 COMPLETED, 083 /** 084 * The request has been held by originating system/user request. 085 */ 086 SUSPENDED, 087 /** 088 * The receiving system has declined to fulfill the request 089 */ 090 REJECTED, 091 /** 092 * The communication was attempted, but due to some procedural error, it could not be completed. 093 */ 094 FAILED, 095 /** 096 * added to help the parsers 097 */ 098 NULL; 099 public static CommunicationRequestStatus fromCode(String codeString) throws FHIRException { 100 if (codeString == null || "".equals(codeString)) 101 return null; 102 if ("proposed".equals(codeString)) 103 return PROPOSED; 104 if ("planned".equals(codeString)) 105 return PLANNED; 106 if ("requested".equals(codeString)) 107 return REQUESTED; 108 if ("received".equals(codeString)) 109 return RECEIVED; 110 if ("accepted".equals(codeString)) 111 return ACCEPTED; 112 if ("in-progress".equals(codeString)) 113 return INPROGRESS; 114 if ("completed".equals(codeString)) 115 return COMPLETED; 116 if ("suspended".equals(codeString)) 117 return SUSPENDED; 118 if ("rejected".equals(codeString)) 119 return REJECTED; 120 if ("failed".equals(codeString)) 121 return FAILED; 122 throw new FHIRException("Unknown CommunicationRequestStatus code '"+codeString+"'"); 123 } 124 public String toCode() { 125 switch (this) { 126 case PROPOSED: return "proposed"; 127 case PLANNED: return "planned"; 128 case REQUESTED: return "requested"; 129 case RECEIVED: return "received"; 130 case ACCEPTED: return "accepted"; 131 case INPROGRESS: return "in-progress"; 132 case COMPLETED: return "completed"; 133 case SUSPENDED: return "suspended"; 134 case REJECTED: return "rejected"; 135 case FAILED: return "failed"; 136 case NULL: return null; 137 default: return "?"; 138 } 139 } 140 public String getSystem() { 141 switch (this) { 142 case PROPOSED: return "http://hl7.org/fhir/communication-request-status"; 143 case PLANNED: return "http://hl7.org/fhir/communication-request-status"; 144 case REQUESTED: return "http://hl7.org/fhir/communication-request-status"; 145 case RECEIVED: return "http://hl7.org/fhir/communication-request-status"; 146 case ACCEPTED: return "http://hl7.org/fhir/communication-request-status"; 147 case INPROGRESS: return "http://hl7.org/fhir/communication-request-status"; 148 case COMPLETED: return "http://hl7.org/fhir/communication-request-status"; 149 case SUSPENDED: return "http://hl7.org/fhir/communication-request-status"; 150 case REJECTED: return "http://hl7.org/fhir/communication-request-status"; 151 case FAILED: return "http://hl7.org/fhir/communication-request-status"; 152 case NULL: return null; 153 default: return "?"; 154 } 155 } 156 public String getDefinition() { 157 switch (this) { 158 case PROPOSED: return "The request has been proposed."; 159 case PLANNED: return "The request has been planned."; 160 case REQUESTED: return "The request has been placed."; 161 case RECEIVED: return "The receiving system has received the request but not yet decided whether it will be performed."; 162 case ACCEPTED: return "The receiving system has accepted the order, but work has not yet commenced."; 163 case INPROGRESS: return "The work to fulfill the order is happening."; 164 case COMPLETED: return "The work has been complete, the report(s) released, and no further work is planned."; 165 case SUSPENDED: return "The request has been held by originating system/user request."; 166 case REJECTED: return "The receiving system has declined to fulfill the request"; 167 case FAILED: return "The communication was attempted, but due to some procedural error, it could not be completed."; 168 case NULL: return null; 169 default: return "?"; 170 } 171 } 172 public String getDisplay() { 173 switch (this) { 174 case PROPOSED: return "Proposed"; 175 case PLANNED: return "Planned"; 176 case REQUESTED: return "Requested"; 177 case RECEIVED: return "Received"; 178 case ACCEPTED: return "Accepted"; 179 case INPROGRESS: return "In Progress"; 180 case COMPLETED: return "Completed"; 181 case SUSPENDED: return "Suspended"; 182 case REJECTED: return "Rejected"; 183 case FAILED: return "Failed"; 184 case NULL: return null; 185 default: return "?"; 186 } 187 } 188 } 189 190 public static class CommunicationRequestStatusEnumFactory implements EnumFactory<CommunicationRequestStatus> { 191 public CommunicationRequestStatus fromCode(String codeString) throws IllegalArgumentException { 192 if (codeString == null || "".equals(codeString)) 193 if (codeString == null || "".equals(codeString)) 194 return null; 195 if ("proposed".equals(codeString)) 196 return CommunicationRequestStatus.PROPOSED; 197 if ("planned".equals(codeString)) 198 return CommunicationRequestStatus.PLANNED; 199 if ("requested".equals(codeString)) 200 return CommunicationRequestStatus.REQUESTED; 201 if ("received".equals(codeString)) 202 return CommunicationRequestStatus.RECEIVED; 203 if ("accepted".equals(codeString)) 204 return CommunicationRequestStatus.ACCEPTED; 205 if ("in-progress".equals(codeString)) 206 return CommunicationRequestStatus.INPROGRESS; 207 if ("completed".equals(codeString)) 208 return CommunicationRequestStatus.COMPLETED; 209 if ("suspended".equals(codeString)) 210 return CommunicationRequestStatus.SUSPENDED; 211 if ("rejected".equals(codeString)) 212 return CommunicationRequestStatus.REJECTED; 213 if ("failed".equals(codeString)) 214 return CommunicationRequestStatus.FAILED; 215 throw new IllegalArgumentException("Unknown CommunicationRequestStatus code '"+codeString+"'"); 216 } 217 public Enumeration<CommunicationRequestStatus> fromType(Base code) throws FHIRException { 218 if (code == null || code.isEmpty()) 219 return null; 220 String codeString = ((PrimitiveType) code).asStringValue(); 221 if (codeString == null || "".equals(codeString)) 222 return null; 223 if ("proposed".equals(codeString)) 224 return new Enumeration<CommunicationRequestStatus>(this, CommunicationRequestStatus.PROPOSED); 225 if ("planned".equals(codeString)) 226 return new Enumeration<CommunicationRequestStatus>(this, CommunicationRequestStatus.PLANNED); 227 if ("requested".equals(codeString)) 228 return new Enumeration<CommunicationRequestStatus>(this, CommunicationRequestStatus.REQUESTED); 229 if ("received".equals(codeString)) 230 return new Enumeration<CommunicationRequestStatus>(this, CommunicationRequestStatus.RECEIVED); 231 if ("accepted".equals(codeString)) 232 return new Enumeration<CommunicationRequestStatus>(this, CommunicationRequestStatus.ACCEPTED); 233 if ("in-progress".equals(codeString)) 234 return new Enumeration<CommunicationRequestStatus>(this, CommunicationRequestStatus.INPROGRESS); 235 if ("completed".equals(codeString)) 236 return new Enumeration<CommunicationRequestStatus>(this, CommunicationRequestStatus.COMPLETED); 237 if ("suspended".equals(codeString)) 238 return new Enumeration<CommunicationRequestStatus>(this, CommunicationRequestStatus.SUSPENDED); 239 if ("rejected".equals(codeString)) 240 return new Enumeration<CommunicationRequestStatus>(this, CommunicationRequestStatus.REJECTED); 241 if ("failed".equals(codeString)) 242 return new Enumeration<CommunicationRequestStatus>(this, CommunicationRequestStatus.FAILED); 243 throw new FHIRException("Unknown CommunicationRequestStatus code '"+codeString+"'"); 244 } 245 public String toCode(CommunicationRequestStatus code) { 246 if (code == CommunicationRequestStatus.PROPOSED) 247 return "proposed"; 248 if (code == CommunicationRequestStatus.PLANNED) 249 return "planned"; 250 if (code == CommunicationRequestStatus.REQUESTED) 251 return "requested"; 252 if (code == CommunicationRequestStatus.RECEIVED) 253 return "received"; 254 if (code == CommunicationRequestStatus.ACCEPTED) 255 return "accepted"; 256 if (code == CommunicationRequestStatus.INPROGRESS) 257 return "in-progress"; 258 if (code == CommunicationRequestStatus.COMPLETED) 259 return "completed"; 260 if (code == CommunicationRequestStatus.SUSPENDED) 261 return "suspended"; 262 if (code == CommunicationRequestStatus.REJECTED) 263 return "rejected"; 264 if (code == CommunicationRequestStatus.FAILED) 265 return "failed"; 266 return "?"; 267 } 268 public String toSystem(CommunicationRequestStatus code) { 269 return code.getSystem(); 270 } 271 } 272 273 @Block() 274 public static class CommunicationRequestPayloadComponent extends BackboneElement implements IBaseBackboneElement { 275 /** 276 * The communicated content (or for multi-part communications, one portion of the communication). 277 */ 278 @Child(name = "content", type = {StringType.class, Attachment.class}, order=1, min=1, max=1, modifier=false, summary=true) 279 @Description(shortDefinition="Message part content", formalDefinition="The communicated content (or for multi-part communications, one portion of the communication)." ) 280 protected Type content; 281 282 private static final long serialVersionUID = -1763459053L; 283 284 /** 285 * Constructor 286 */ 287 public CommunicationRequestPayloadComponent() { 288 super(); 289 } 290 291 /** 292 * Constructor 293 */ 294 public CommunicationRequestPayloadComponent(Type content) { 295 super(); 296 this.content = content; 297 } 298 299 /** 300 * @return {@link #content} (The communicated content (or for multi-part communications, one portion of the communication).) 301 */ 302 public Type getContent() { 303 return this.content; 304 } 305 306 /** 307 * @return {@link #content} (The communicated content (or for multi-part communications, one portion of the communication).) 308 */ 309 public StringType getContentStringType() throws FHIRException { 310 if (!(this.content instanceof StringType)) 311 throw new FHIRException("Type mismatch: the type StringType was expected, but "+this.content.getClass().getName()+" was encountered"); 312 return (StringType) this.content; 313 } 314 315 public boolean hasContentStringType() { 316 return this.content instanceof StringType; 317 } 318 319 /** 320 * @return {@link #content} (The communicated content (or for multi-part communications, one portion of the communication).) 321 */ 322 public Attachment getContentAttachment() throws FHIRException { 323 if (!(this.content instanceof Attachment)) 324 throw new FHIRException("Type mismatch: the type Attachment was expected, but "+this.content.getClass().getName()+" was encountered"); 325 return (Attachment) this.content; 326 } 327 328 public boolean hasContentAttachment() { 329 return this.content instanceof Attachment; 330 } 331 332 /** 333 * @return {@link #content} (The communicated content (or for multi-part communications, one portion of the communication).) 334 */ 335 public Reference getContentReference() throws FHIRException { 336 if (!(this.content instanceof Reference)) 337 throw new FHIRException("Type mismatch: the type Reference was expected, but "+this.content.getClass().getName()+" was encountered"); 338 return (Reference) this.content; 339 } 340 341 public boolean hasContentReference() { 342 return this.content instanceof Reference; 343 } 344 345 public boolean hasContent() { 346 return this.content != null && !this.content.isEmpty(); 347 } 348 349 /** 350 * @param value {@link #content} (The communicated content (or for multi-part communications, one portion of the communication).) 351 */ 352 public CommunicationRequestPayloadComponent setContent(Type value) { 353 this.content = value; 354 return this; 355 } 356 357 protected void listChildren(List<Property> childrenList) { 358 super.listChildren(childrenList); 359 childrenList.add(new Property("content[x]", "string|Attachment|Reference(Any)", "The communicated content (or for multi-part communications, one portion of the communication).", 0, java.lang.Integer.MAX_VALUE, content)); 360 } 361 362 @Override 363 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 364 switch (hash) { 365 case 951530617: /*content*/ return this.content == null ? new Base[0] : new Base[] {this.content}; // Type 366 default: return super.getProperty(hash, name, checkValid); 367 } 368 369 } 370 371 @Override 372 public void setProperty(int hash, String name, Base value) throws FHIRException { 373 switch (hash) { 374 case 951530617: // content 375 this.content = (Type) value; // Type 376 break; 377 default: super.setProperty(hash, name, value); 378 } 379 380 } 381 382 @Override 383 public void setProperty(String name, Base value) throws FHIRException { 384 if (name.equals("content[x]")) 385 this.content = (Type) value; // Type 386 else 387 super.setProperty(name, value); 388 } 389 390 @Override 391 public Base makeProperty(int hash, String name) throws FHIRException { 392 switch (hash) { 393 case 264548711: return getContent(); // Type 394 default: return super.makeProperty(hash, name); 395 } 396 397 } 398 399 @Override 400 public Base addChild(String name) throws FHIRException { 401 if (name.equals("contentString")) { 402 this.content = new StringType(); 403 return this.content; 404 } 405 else if (name.equals("contentAttachment")) { 406 this.content = new Attachment(); 407 return this.content; 408 } 409 else if (name.equals("contentReference")) { 410 this.content = new Reference(); 411 return this.content; 412 } 413 else 414 return super.addChild(name); 415 } 416 417 public CommunicationRequestPayloadComponent copy() { 418 CommunicationRequestPayloadComponent dst = new CommunicationRequestPayloadComponent(); 419 copyValues(dst); 420 dst.content = content == null ? null : content.copy(); 421 return dst; 422 } 423 424 @Override 425 public boolean equalsDeep(Base other) { 426 if (!super.equalsDeep(other)) 427 return false; 428 if (!(other instanceof CommunicationRequestPayloadComponent)) 429 return false; 430 CommunicationRequestPayloadComponent o = (CommunicationRequestPayloadComponent) other; 431 return compareDeep(content, o.content, true); 432 } 433 434 @Override 435 public boolean equalsShallow(Base other) { 436 if (!super.equalsShallow(other)) 437 return false; 438 if (!(other instanceof CommunicationRequestPayloadComponent)) 439 return false; 440 CommunicationRequestPayloadComponent o = (CommunicationRequestPayloadComponent) other; 441 return true; 442 } 443 444 public boolean isEmpty() { 445 return super.isEmpty() && (content == null || content.isEmpty()); 446 } 447 448 public String fhirType() { 449 return "CommunicationRequest.payload"; 450 451 } 452 453 } 454 455 /** 456 * A unique ID of this request for reference purposes. It must be provided if user wants it returned as part of any output, otherwise it will be autogenerated, if needed, by CDS system. Does not need to be the actual ID of the source system. 457 */ 458 @Child(name = "identifier", type = {Identifier.class}, order=0, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 459 @Description(shortDefinition="Unique identifier", formalDefinition="A unique ID of this request for reference purposes. It must be provided if user wants it returned as part of any output, otherwise it will be autogenerated, if needed, by CDS system. Does not need to be the actual ID of the source system." ) 460 protected List<Identifier> identifier; 461 462 /** 463 * The type of message to be sent such as alert, notification, reminder, instruction, etc. 464 */ 465 @Child(name = "category", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=true) 466 @Description(shortDefinition="Message category", formalDefinition="The type of message to be sent such as alert, notification, reminder, instruction, etc." ) 467 protected CodeableConcept category; 468 469 /** 470 * The entity (e.g. person, organization, clinical information system, or device) which is to be the source of the communication. 471 */ 472 @Child(name = "sender", type = {Device.class, Organization.class, Patient.class, Practitioner.class, RelatedPerson.class}, order=2, min=0, max=1, modifier=false, summary=true) 473 @Description(shortDefinition="Message sender", formalDefinition="The entity (e.g. person, organization, clinical information system, or device) which is to be the source of the communication." ) 474 protected Reference sender; 475 476 /** 477 * The actual object that is the target of the reference (The entity (e.g. person, organization, clinical information system, or device) which is to be the source of the communication.) 478 */ 479 protected Resource senderTarget; 480 481 /** 482 * The entity (e.g. person, organization, clinical information system, or device) which is the intended target of the communication. 483 */ 484 @Child(name = "recipient", type = {Device.class, Organization.class, Patient.class, Practitioner.class, RelatedPerson.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 485 @Description(shortDefinition="Message recipient", formalDefinition="The entity (e.g. person, organization, clinical information system, or device) which is the intended target of the communication." ) 486 protected List<Reference> recipient; 487 /** 488 * The actual objects that are the target of the reference (The entity (e.g. person, organization, clinical information system, or device) which is the intended target of the communication.) 489 */ 490 protected List<Resource> recipientTarget; 491 492 493 /** 494 * Text, attachment(s), or resource(s) to be communicated to the recipient. 495 */ 496 @Child(name = "payload", type = {}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 497 @Description(shortDefinition="Message payload", formalDefinition="Text, attachment(s), or resource(s) to be communicated to the recipient." ) 498 protected List<CommunicationRequestPayloadComponent> payload; 499 500 /** 501 * A channel that was used for this communication (e.g. email, fax). 502 */ 503 @Child(name = "medium", type = {CodeableConcept.class}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 504 @Description(shortDefinition="A channel of communication", formalDefinition="A channel that was used for this communication (e.g. email, fax)." ) 505 protected List<CodeableConcept> medium; 506 507 /** 508 * The responsible person who authorizes this order, e.g. physician. This may be different than the author of the order statement, e.g. clerk, who may have entered the statement into the order entry application. 509 */ 510 @Child(name = "requester", type = {Practitioner.class, Patient.class, RelatedPerson.class}, order=6, min=0, max=1, modifier=false, summary=true) 511 @Description(shortDefinition="An individual who requested a communication", formalDefinition="The responsible person who authorizes this order, e.g. physician. This may be different than the author of the order statement, e.g. clerk, who may have entered the statement into the order entry application." ) 512 protected Reference requester; 513 514 /** 515 * The actual object that is the target of the reference (The responsible person who authorizes this order, e.g. physician. This may be different than the author of the order statement, e.g. clerk, who may have entered the statement into the order entry application.) 516 */ 517 protected Resource requesterTarget; 518 519 /** 520 * The status of the proposal or order. 521 */ 522 @Child(name = "status", type = {CodeType.class}, order=7, min=0, max=1, modifier=true, summary=true) 523 @Description(shortDefinition="proposed | planned | requested | received | accepted | in-progress | completed | suspended | rejected | failed", formalDefinition="The status of the proposal or order." ) 524 protected Enumeration<CommunicationRequestStatus> status; 525 526 /** 527 * The encounter within which the communication request was created. 528 */ 529 @Child(name = "encounter", type = {Encounter.class}, order=8, min=0, max=1, modifier=false, summary=true) 530 @Description(shortDefinition="Encounter leading to message", formalDefinition="The encounter within which the communication request was created." ) 531 protected Reference encounter; 532 533 /** 534 * The actual object that is the target of the reference (The encounter within which the communication request was created.) 535 */ 536 protected Encounter encounterTarget; 537 538 /** 539 * The time when this communication is to occur. 540 */ 541 @Child(name = "scheduled", type = {DateTimeType.class, Period.class}, order=9, min=0, max=1, modifier=false, summary=true) 542 @Description(shortDefinition="When scheduled", formalDefinition="The time when this communication is to occur." ) 543 protected Type scheduled; 544 545 /** 546 * The reason or justification for the communication request. 547 */ 548 @Child(name = "reason", type = {CodeableConcept.class}, order=10, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 549 @Description(shortDefinition="Indication for message", formalDefinition="The reason or justification for the communication request." ) 550 protected List<CodeableConcept> reason; 551 552 /** 553 * The time when the request was made. 554 */ 555 @Child(name = "requestedOn", type = {DateTimeType.class}, order=11, min=0, max=1, modifier=false, summary=true) 556 @Description(shortDefinition="When ordered or proposed", formalDefinition="The time when the request was made." ) 557 protected DateTimeType requestedOn; 558 559 /** 560 * The patient who is the focus of this communication request. 561 */ 562 @Child(name = "subject", type = {Patient.class}, order=12, min=0, max=1, modifier=false, summary=true) 563 @Description(shortDefinition="Focus of message", formalDefinition="The patient who is the focus of this communication request." ) 564 protected Reference subject; 565 566 /** 567 * The actual object that is the target of the reference (The patient who is the focus of this communication request.) 568 */ 569 protected Patient subjectTarget; 570 571 /** 572 * Characterizes how quickly the proposed act must be initiated. Includes concepts such as stat, urgent, routine. 573 */ 574 @Child(name = "priority", type = {CodeableConcept.class}, order=13, min=0, max=1, modifier=false, summary=true) 575 @Description(shortDefinition="Message urgency", formalDefinition="Characterizes how quickly the proposed act must be initiated. Includes concepts such as stat, urgent, routine." ) 576 protected CodeableConcept priority; 577 578 private static final long serialVersionUID = 146906020L; 579 580 /** 581 * Constructor 582 */ 583 public CommunicationRequest() { 584 super(); 585 } 586 587 /** 588 * @return {@link #identifier} (A unique ID of this request for reference purposes. It must be provided if user wants it returned as part of any output, otherwise it will be autogenerated, if needed, by CDS system. Does not need to be the actual ID of the source system.) 589 */ 590 public List<Identifier> getIdentifier() { 591 if (this.identifier == null) 592 this.identifier = new ArrayList<Identifier>(); 593 return this.identifier; 594 } 595 596 public boolean hasIdentifier() { 597 if (this.identifier == null) 598 return false; 599 for (Identifier item : this.identifier) 600 if (!item.isEmpty()) 601 return true; 602 return false; 603 } 604 605 /** 606 * @return {@link #identifier} (A unique ID of this request for reference purposes. It must be provided if user wants it returned as part of any output, otherwise it will be autogenerated, if needed, by CDS system. Does not need to be the actual ID of the source system.) 607 */ 608 // syntactic sugar 609 public Identifier addIdentifier() { //3 610 Identifier t = new Identifier(); 611 if (this.identifier == null) 612 this.identifier = new ArrayList<Identifier>(); 613 this.identifier.add(t); 614 return t; 615 } 616 617 // syntactic sugar 618 public CommunicationRequest addIdentifier(Identifier t) { //3 619 if (t == null) 620 return this; 621 if (this.identifier == null) 622 this.identifier = new ArrayList<Identifier>(); 623 this.identifier.add(t); 624 return this; 625 } 626 627 /** 628 * @return {@link #category} (The type of message to be sent such as alert, notification, reminder, instruction, etc.) 629 */ 630 public CodeableConcept getCategory() { 631 if (this.category == null) 632 if (Configuration.errorOnAutoCreate()) 633 throw new Error("Attempt to auto-create CommunicationRequest.category"); 634 else if (Configuration.doAutoCreate()) 635 this.category = new CodeableConcept(); // cc 636 return this.category; 637 } 638 639 public boolean hasCategory() { 640 return this.category != null && !this.category.isEmpty(); 641 } 642 643 /** 644 * @param value {@link #category} (The type of message to be sent such as alert, notification, reminder, instruction, etc.) 645 */ 646 public CommunicationRequest setCategory(CodeableConcept value) { 647 this.category = value; 648 return this; 649 } 650 651 /** 652 * @return {@link #sender} (The entity (e.g. person, organization, clinical information system, or device) which is to be the source of the communication.) 653 */ 654 public Reference getSender() { 655 if (this.sender == null) 656 if (Configuration.errorOnAutoCreate()) 657 throw new Error("Attempt to auto-create CommunicationRequest.sender"); 658 else if (Configuration.doAutoCreate()) 659 this.sender = new Reference(); // cc 660 return this.sender; 661 } 662 663 public boolean hasSender() { 664 return this.sender != null && !this.sender.isEmpty(); 665 } 666 667 /** 668 * @param value {@link #sender} (The entity (e.g. person, organization, clinical information system, or device) which is to be the source of the communication.) 669 */ 670 public CommunicationRequest setSender(Reference value) { 671 this.sender = value; 672 return this; 673 } 674 675 /** 676 * @return {@link #sender} The actual object that is the target of the reference. The reference library doesn't populate this, but you can use it to hold the resource if you resolve it. (The entity (e.g. person, organization, clinical information system, or device) which is to be the source of the communication.) 677 */ 678 public Resource getSenderTarget() { 679 return this.senderTarget; 680 } 681 682 /** 683 * @param value {@link #sender} The actual object that is the target of the reference. The reference library doesn't use these, but you can use it to hold the resource if you resolve it. (The entity (e.g. person, organization, clinical information system, or device) which is to be the source of the communication.) 684 */ 685 public CommunicationRequest setSenderTarget(Resource value) { 686 this.senderTarget = value; 687 return this; 688 } 689 690 /** 691 * @return {@link #recipient} (The entity (e.g. person, organization, clinical information system, or device) which is the intended target of the communication.) 692 */ 693 public List<Reference> getRecipient() { 694 if (this.recipient == null) 695 this.recipient = new ArrayList<Reference>(); 696 return this.recipient; 697 } 698 699 public boolean hasRecipient() { 700 if (this.recipient == null) 701 return false; 702 for (Reference item : this.recipient) 703 if (!item.isEmpty()) 704 return true; 705 return false; 706 } 707 708 /** 709 * @return {@link #recipient} (The entity (e.g. person, organization, clinical information system, or device) which is the intended target of the communication.) 710 */ 711 // syntactic sugar 712 public Reference addRecipient() { //3 713 Reference t = new Reference(); 714 if (this.recipient == null) 715 this.recipient = new ArrayList<Reference>(); 716 this.recipient.add(t); 717 return t; 718 } 719 720 // syntactic sugar 721 public CommunicationRequest addRecipient(Reference t) { //3 722 if (t == null) 723 return this; 724 if (this.recipient == null) 725 this.recipient = new ArrayList<Reference>(); 726 this.recipient.add(t); 727 return this; 728 } 729 730 /** 731 * @return {@link #recipient} (The actual objects that are the target of the reference. The reference library doesn't populate this, but you can use this to hold the resources if you resolvethemt. The entity (e.g. person, organization, clinical information system, or device) which is the intended target of the communication.) 732 */ 733 public List<Resource> getRecipientTarget() { 734 if (this.recipientTarget == null) 735 this.recipientTarget = new ArrayList<Resource>(); 736 return this.recipientTarget; 737 } 738 739 /** 740 * @return {@link #payload} (Text, attachment(s), or resource(s) to be communicated to the recipient.) 741 */ 742 public List<CommunicationRequestPayloadComponent> getPayload() { 743 if (this.payload == null) 744 this.payload = new ArrayList<CommunicationRequestPayloadComponent>(); 745 return this.payload; 746 } 747 748 public boolean hasPayload() { 749 if (this.payload == null) 750 return false; 751 for (CommunicationRequestPayloadComponent item : this.payload) 752 if (!item.isEmpty()) 753 return true; 754 return false; 755 } 756 757 /** 758 * @return {@link #payload} (Text, attachment(s), or resource(s) to be communicated to the recipient.) 759 */ 760 // syntactic sugar 761 public CommunicationRequestPayloadComponent addPayload() { //3 762 CommunicationRequestPayloadComponent t = new CommunicationRequestPayloadComponent(); 763 if (this.payload == null) 764 this.payload = new ArrayList<CommunicationRequestPayloadComponent>(); 765 this.payload.add(t); 766 return t; 767 } 768 769 // syntactic sugar 770 public CommunicationRequest addPayload(CommunicationRequestPayloadComponent t) { //3 771 if (t == null) 772 return this; 773 if (this.payload == null) 774 this.payload = new ArrayList<CommunicationRequestPayloadComponent>(); 775 this.payload.add(t); 776 return this; 777 } 778 779 /** 780 * @return {@link #medium} (A channel that was used for this communication (e.g. email, fax).) 781 */ 782 public List<CodeableConcept> getMedium() { 783 if (this.medium == null) 784 this.medium = new ArrayList<CodeableConcept>(); 785 return this.medium; 786 } 787 788 public boolean hasMedium() { 789 if (this.medium == null) 790 return false; 791 for (CodeableConcept item : this.medium) 792 if (!item.isEmpty()) 793 return true; 794 return false; 795 } 796 797 /** 798 * @return {@link #medium} (A channel that was used for this communication (e.g. email, fax).) 799 */ 800 // syntactic sugar 801 public CodeableConcept addMedium() { //3 802 CodeableConcept t = new CodeableConcept(); 803 if (this.medium == null) 804 this.medium = new ArrayList<CodeableConcept>(); 805 this.medium.add(t); 806 return t; 807 } 808 809 // syntactic sugar 810 public CommunicationRequest addMedium(CodeableConcept t) { //3 811 if (t == null) 812 return this; 813 if (this.medium == null) 814 this.medium = new ArrayList<CodeableConcept>(); 815 this.medium.add(t); 816 return this; 817 } 818 819 /** 820 * @return {@link #requester} (The responsible person who authorizes this order, e.g. physician. This may be different than the author of the order statement, e.g. clerk, who may have entered the statement into the order entry application.) 821 */ 822 public Reference getRequester() { 823 if (this.requester == null) 824 if (Configuration.errorOnAutoCreate()) 825 throw new Error("Attempt to auto-create CommunicationRequest.requester"); 826 else if (Configuration.doAutoCreate()) 827 this.requester = new Reference(); // cc 828 return this.requester; 829 } 830 831 public boolean hasRequester() { 832 return this.requester != null && !this.requester.isEmpty(); 833 } 834 835 /** 836 * @param value {@link #requester} (The responsible person who authorizes this order, e.g. physician. This may be different than the author of the order statement, e.g. clerk, who may have entered the statement into the order entry application.) 837 */ 838 public CommunicationRequest setRequester(Reference value) { 839 this.requester = value; 840 return this; 841 } 842 843 /** 844 * @return {@link #requester} The actual object that is the target of the reference. The reference library doesn't populate this, but you can use it to hold the resource if you resolve it. (The responsible person who authorizes this order, e.g. physician. This may be different than the author of the order statement, e.g. clerk, who may have entered the statement into the order entry application.) 845 */ 846 public Resource getRequesterTarget() { 847 return this.requesterTarget; 848 } 849 850 /** 851 * @param value {@link #requester} The actual object that is the target of the reference. The reference library doesn't use these, but you can use it to hold the resource if you resolve it. (The responsible person who authorizes this order, e.g. physician. This may be different than the author of the order statement, e.g. clerk, who may have entered the statement into the order entry application.) 852 */ 853 public CommunicationRequest setRequesterTarget(Resource value) { 854 this.requesterTarget = value; 855 return this; 856 } 857 858 /** 859 * @return {@link #status} (The status of the proposal or order.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 860 */ 861 public Enumeration<CommunicationRequestStatus> getStatusElement() { 862 if (this.status == null) 863 if (Configuration.errorOnAutoCreate()) 864 throw new Error("Attempt to auto-create CommunicationRequest.status"); 865 else if (Configuration.doAutoCreate()) 866 this.status = new Enumeration<CommunicationRequestStatus>(new CommunicationRequestStatusEnumFactory()); // bb 867 return this.status; 868 } 869 870 public boolean hasStatusElement() { 871 return this.status != null && !this.status.isEmpty(); 872 } 873 874 public boolean hasStatus() { 875 return this.status != null && !this.status.isEmpty(); 876 } 877 878 /** 879 * @param value {@link #status} (The status of the proposal or order.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 880 */ 881 public CommunicationRequest setStatusElement(Enumeration<CommunicationRequestStatus> value) { 882 this.status = value; 883 return this; 884 } 885 886 /** 887 * @return The status of the proposal or order. 888 */ 889 public CommunicationRequestStatus getStatus() { 890 return this.status == null ? null : this.status.getValue(); 891 } 892 893 /** 894 * @param value The status of the proposal or order. 895 */ 896 public CommunicationRequest setStatus(CommunicationRequestStatus value) { 897 if (value == null) 898 this.status = null; 899 else { 900 if (this.status == null) 901 this.status = new Enumeration<CommunicationRequestStatus>(new CommunicationRequestStatusEnumFactory()); 902 this.status.setValue(value); 903 } 904 return this; 905 } 906 907 /** 908 * @return {@link #encounter} (The encounter within which the communication request was created.) 909 */ 910 public Reference getEncounter() { 911 if (this.encounter == null) 912 if (Configuration.errorOnAutoCreate()) 913 throw new Error("Attempt to auto-create CommunicationRequest.encounter"); 914 else if (Configuration.doAutoCreate()) 915 this.encounter = new Reference(); // cc 916 return this.encounter; 917 } 918 919 public boolean hasEncounter() { 920 return this.encounter != null && !this.encounter.isEmpty(); 921 } 922 923 /** 924 * @param value {@link #encounter} (The encounter within which the communication request was created.) 925 */ 926 public CommunicationRequest setEncounter(Reference value) { 927 this.encounter = value; 928 return this; 929 } 930 931 /** 932 * @return {@link #encounter} The actual object that is the target of the reference. The reference library doesn't populate this, but you can use it to hold the resource if you resolve it. (The encounter within which the communication request was created.) 933 */ 934 public Encounter getEncounterTarget() { 935 if (this.encounterTarget == null) 936 if (Configuration.errorOnAutoCreate()) 937 throw new Error("Attempt to auto-create CommunicationRequest.encounter"); 938 else if (Configuration.doAutoCreate()) 939 this.encounterTarget = new Encounter(); // aa 940 return this.encounterTarget; 941 } 942 943 /** 944 * @param value {@link #encounter} The actual object that is the target of the reference. The reference library doesn't use these, but you can use it to hold the resource if you resolve it. (The encounter within which the communication request was created.) 945 */ 946 public CommunicationRequest setEncounterTarget(Encounter value) { 947 this.encounterTarget = value; 948 return this; 949 } 950 951 /** 952 * @return {@link #scheduled} (The time when this communication is to occur.) 953 */ 954 public Type getScheduled() { 955 return this.scheduled; 956 } 957 958 /** 959 * @return {@link #scheduled} (The time when this communication is to occur.) 960 */ 961 public DateTimeType getScheduledDateTimeType() throws FHIRException { 962 if (!(this.scheduled instanceof DateTimeType)) 963 throw new FHIRException("Type mismatch: the type DateTimeType was expected, but "+this.scheduled.getClass().getName()+" was encountered"); 964 return (DateTimeType) this.scheduled; 965 } 966 967 public boolean hasScheduledDateTimeType() { 968 return this.scheduled instanceof DateTimeType; 969 } 970 971 /** 972 * @return {@link #scheduled} (The time when this communication is to occur.) 973 */ 974 public Period getScheduledPeriod() throws FHIRException { 975 if (!(this.scheduled instanceof Period)) 976 throw new FHIRException("Type mismatch: the type Period was expected, but "+this.scheduled.getClass().getName()+" was encountered"); 977 return (Period) this.scheduled; 978 } 979 980 public boolean hasScheduledPeriod() { 981 return this.scheduled instanceof Period; 982 } 983 984 public boolean hasScheduled() { 985 return this.scheduled != null && !this.scheduled.isEmpty(); 986 } 987 988 /** 989 * @param value {@link #scheduled} (The time when this communication is to occur.) 990 */ 991 public CommunicationRequest setScheduled(Type value) { 992 this.scheduled = value; 993 return this; 994 } 995 996 /** 997 * @return {@link #reason} (The reason or justification for the communication request.) 998 */ 999 public List<CodeableConcept> getReason() { 1000 if (this.reason == null) 1001 this.reason = new ArrayList<CodeableConcept>(); 1002 return this.reason; 1003 } 1004 1005 public boolean hasReason() { 1006 if (this.reason == null) 1007 return false; 1008 for (CodeableConcept item : this.reason) 1009 if (!item.isEmpty()) 1010 return true; 1011 return false; 1012 } 1013 1014 /** 1015 * @return {@link #reason} (The reason or justification for the communication request.) 1016 */ 1017 // syntactic sugar 1018 public CodeableConcept addReason() { //3 1019 CodeableConcept t = new CodeableConcept(); 1020 if (this.reason == null) 1021 this.reason = new ArrayList<CodeableConcept>(); 1022 this.reason.add(t); 1023 return t; 1024 } 1025 1026 // syntactic sugar 1027 public CommunicationRequest addReason(CodeableConcept t) { //3 1028 if (t == null) 1029 return this; 1030 if (this.reason == null) 1031 this.reason = new ArrayList<CodeableConcept>(); 1032 this.reason.add(t); 1033 return this; 1034 } 1035 1036 /** 1037 * @return {@link #requestedOn} (The time when the request was made.). This is the underlying object with id, value and extensions. The accessor "getRequestedOn" gives direct access to the value 1038 */ 1039 public DateTimeType getRequestedOnElement() { 1040 if (this.requestedOn == null) 1041 if (Configuration.errorOnAutoCreate()) 1042 throw new Error("Attempt to auto-create CommunicationRequest.requestedOn"); 1043 else if (Configuration.doAutoCreate()) 1044 this.requestedOn = new DateTimeType(); // bb 1045 return this.requestedOn; 1046 } 1047 1048 public boolean hasRequestedOnElement() { 1049 return this.requestedOn != null && !this.requestedOn.isEmpty(); 1050 } 1051 1052 public boolean hasRequestedOn() { 1053 return this.requestedOn != null && !this.requestedOn.isEmpty(); 1054 } 1055 1056 /** 1057 * @param value {@link #requestedOn} (The time when the request was made.). This is the underlying object with id, value and extensions. The accessor "getRequestedOn" gives direct access to the value 1058 */ 1059 public CommunicationRequest setRequestedOnElement(DateTimeType value) { 1060 this.requestedOn = value; 1061 return this; 1062 } 1063 1064 /** 1065 * @return The time when the request was made. 1066 */ 1067 public Date getRequestedOn() { 1068 return this.requestedOn == null ? null : this.requestedOn.getValue(); 1069 } 1070 1071 /** 1072 * @param value The time when the request was made. 1073 */ 1074 public CommunicationRequest setRequestedOn(Date value) { 1075 if (value == null) 1076 this.requestedOn = null; 1077 else { 1078 if (this.requestedOn == null) 1079 this.requestedOn = new DateTimeType(); 1080 this.requestedOn.setValue(value); 1081 } 1082 return this; 1083 } 1084 1085 /** 1086 * @return {@link #subject} (The patient who is the focus of this communication request.) 1087 */ 1088 public Reference getSubject() { 1089 if (this.subject == null) 1090 if (Configuration.errorOnAutoCreate()) 1091 throw new Error("Attempt to auto-create CommunicationRequest.subject"); 1092 else if (Configuration.doAutoCreate()) 1093 this.subject = new Reference(); // cc 1094 return this.subject; 1095 } 1096 1097 public boolean hasSubject() { 1098 return this.subject != null && !this.subject.isEmpty(); 1099 } 1100 1101 /** 1102 * @param value {@link #subject} (The patient who is the focus of this communication request.) 1103 */ 1104 public CommunicationRequest setSubject(Reference value) { 1105 this.subject = value; 1106 return this; 1107 } 1108 1109 /** 1110 * @return {@link #subject} The actual object that is the target of the reference. The reference library doesn't populate this, but you can use it to hold the resource if you resolve it. (The patient who is the focus of this communication request.) 1111 */ 1112 public Patient getSubjectTarget() { 1113 if (this.subjectTarget == null) 1114 if (Configuration.errorOnAutoCreate()) 1115 throw new Error("Attempt to auto-create CommunicationRequest.subject"); 1116 else if (Configuration.doAutoCreate()) 1117 this.subjectTarget = new Patient(); // aa 1118 return this.subjectTarget; 1119 } 1120 1121 /** 1122 * @param value {@link #subject} The actual object that is the target of the reference. The reference library doesn't use these, but you can use it to hold the resource if you resolve it. (The patient who is the focus of this communication request.) 1123 */ 1124 public CommunicationRequest setSubjectTarget(Patient value) { 1125 this.subjectTarget = value; 1126 return this; 1127 } 1128 1129 /** 1130 * @return {@link #priority} (Characterizes how quickly the proposed act must be initiated. Includes concepts such as stat, urgent, routine.) 1131 */ 1132 public CodeableConcept getPriority() { 1133 if (this.priority == null) 1134 if (Configuration.errorOnAutoCreate()) 1135 throw new Error("Attempt to auto-create CommunicationRequest.priority"); 1136 else if (Configuration.doAutoCreate()) 1137 this.priority = new CodeableConcept(); // cc 1138 return this.priority; 1139 } 1140 1141 public boolean hasPriority() { 1142 return this.priority != null && !this.priority.isEmpty(); 1143 } 1144 1145 /** 1146 * @param value {@link #priority} (Characterizes how quickly the proposed act must be initiated. Includes concepts such as stat, urgent, routine.) 1147 */ 1148 public CommunicationRequest setPriority(CodeableConcept value) { 1149 this.priority = value; 1150 return this; 1151 } 1152 1153 protected void listChildren(List<Property> childrenList) { 1154 super.listChildren(childrenList); 1155 childrenList.add(new Property("identifier", "Identifier", "A unique ID of this request for reference purposes. It must be provided if user wants it returned as part of any output, otherwise it will be autogenerated, if needed, by CDS system. Does not need to be the actual ID of the source system.", 0, java.lang.Integer.MAX_VALUE, identifier)); 1156 childrenList.add(new Property("category", "CodeableConcept", "The type of message to be sent such as alert, notification, reminder, instruction, etc.", 0, java.lang.Integer.MAX_VALUE, category)); 1157 childrenList.add(new Property("sender", "Reference(Device|Organization|Patient|Practitioner|RelatedPerson)", "The entity (e.g. person, organization, clinical information system, or device) which is to be the source of the communication.", 0, java.lang.Integer.MAX_VALUE, sender)); 1158 childrenList.add(new Property("recipient", "Reference(Device|Organization|Patient|Practitioner|RelatedPerson)", "The entity (e.g. person, organization, clinical information system, or device) which is the intended target of the communication.", 0, java.lang.Integer.MAX_VALUE, recipient)); 1159 childrenList.add(new Property("payload", "", "Text, attachment(s), or resource(s) to be communicated to the recipient.", 0, java.lang.Integer.MAX_VALUE, payload)); 1160 childrenList.add(new Property("medium", "CodeableConcept", "A channel that was used for this communication (e.g. email, fax).", 0, java.lang.Integer.MAX_VALUE, medium)); 1161 childrenList.add(new Property("requester", "Reference(Practitioner|Patient|RelatedPerson)", "The responsible person who authorizes this order, e.g. physician. This may be different than the author of the order statement, e.g. clerk, who may have entered the statement into the order entry application.", 0, java.lang.Integer.MAX_VALUE, requester)); 1162 childrenList.add(new Property("status", "code", "The status of the proposal or order.", 0, java.lang.Integer.MAX_VALUE, status)); 1163 childrenList.add(new Property("encounter", "Reference(Encounter)", "The encounter within which the communication request was created.", 0, java.lang.Integer.MAX_VALUE, encounter)); 1164 childrenList.add(new Property("scheduled[x]", "dateTime|Period", "The time when this communication is to occur.", 0, java.lang.Integer.MAX_VALUE, scheduled)); 1165 childrenList.add(new Property("reason", "CodeableConcept", "The reason or justification for the communication request.", 0, java.lang.Integer.MAX_VALUE, reason)); 1166 childrenList.add(new Property("requestedOn", "dateTime", "The time when the request was made.", 0, java.lang.Integer.MAX_VALUE, requestedOn)); 1167 childrenList.add(new Property("subject", "Reference(Patient)", "The patient who is the focus of this communication request.", 0, java.lang.Integer.MAX_VALUE, subject)); 1168 childrenList.add(new Property("priority", "CodeableConcept", "Characterizes how quickly the proposed act must be initiated. Includes concepts such as stat, urgent, routine.", 0, java.lang.Integer.MAX_VALUE, priority)); 1169 } 1170 1171 @Override 1172 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1173 switch (hash) { 1174 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 1175 case 50511102: /*category*/ return this.category == null ? new Base[0] : new Base[] {this.category}; // CodeableConcept 1176 case -905962955: /*sender*/ return this.sender == null ? new Base[0] : new Base[] {this.sender}; // Reference 1177 case 820081177: /*recipient*/ return this.recipient == null ? new Base[0] : this.recipient.toArray(new Base[this.recipient.size()]); // Reference 1178 case -786701938: /*payload*/ return this.payload == null ? new Base[0] : this.payload.toArray(new Base[this.payload.size()]); // CommunicationRequestPayloadComponent 1179 case -1078030475: /*medium*/ return this.medium == null ? new Base[0] : this.medium.toArray(new Base[this.medium.size()]); // CodeableConcept 1180 case 693933948: /*requester*/ return this.requester == null ? new Base[0] : new Base[] {this.requester}; // Reference 1181 case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration<CommunicationRequestStatus> 1182 case 1524132147: /*encounter*/ return this.encounter == null ? new Base[0] : new Base[] {this.encounter}; // Reference 1183 case -160710483: /*scheduled*/ return this.scheduled == null ? new Base[0] : new Base[] {this.scheduled}; // Type 1184 case -934964668: /*reason*/ return this.reason == null ? new Base[0] : this.reason.toArray(new Base[this.reason.size()]); // CodeableConcept 1185 case 1150582253: /*requestedOn*/ return this.requestedOn == null ? new Base[0] : new Base[] {this.requestedOn}; // DateTimeType 1186 case -1867885268: /*subject*/ return this.subject == null ? new Base[0] : new Base[] {this.subject}; // Reference 1187 case -1165461084: /*priority*/ return this.priority == null ? new Base[0] : new Base[] {this.priority}; // CodeableConcept 1188 default: return super.getProperty(hash, name, checkValid); 1189 } 1190 1191 } 1192 1193 @Override 1194 public void setProperty(int hash, String name, Base value) throws FHIRException { 1195 switch (hash) { 1196 case -1618432855: // identifier 1197 this.getIdentifier().add(castToIdentifier(value)); // Identifier 1198 break; 1199 case 50511102: // category 1200 this.category = castToCodeableConcept(value); // CodeableConcept 1201 break; 1202 case -905962955: // sender 1203 this.sender = castToReference(value); // Reference 1204 break; 1205 case 820081177: // recipient 1206 this.getRecipient().add(castToReference(value)); // Reference 1207 break; 1208 case -786701938: // payload 1209 this.getPayload().add((CommunicationRequestPayloadComponent) value); // CommunicationRequestPayloadComponent 1210 break; 1211 case -1078030475: // medium 1212 this.getMedium().add(castToCodeableConcept(value)); // CodeableConcept 1213 break; 1214 case 693933948: // requester 1215 this.requester = castToReference(value); // Reference 1216 break; 1217 case -892481550: // status 1218 this.status = new CommunicationRequestStatusEnumFactory().fromType(value); // Enumeration<CommunicationRequestStatus> 1219 break; 1220 case 1524132147: // encounter 1221 this.encounter = castToReference(value); // Reference 1222 break; 1223 case -160710483: // scheduled 1224 this.scheduled = (Type) value; // Type 1225 break; 1226 case -934964668: // reason 1227 this.getReason().add(castToCodeableConcept(value)); // CodeableConcept 1228 break; 1229 case 1150582253: // requestedOn 1230 this.requestedOn = castToDateTime(value); // DateTimeType 1231 break; 1232 case -1867885268: // subject 1233 this.subject = castToReference(value); // Reference 1234 break; 1235 case -1165461084: // priority 1236 this.priority = castToCodeableConcept(value); // CodeableConcept 1237 break; 1238 default: super.setProperty(hash, name, value); 1239 } 1240 1241 } 1242 1243 @Override 1244 public void setProperty(String name, Base value) throws FHIRException { 1245 if (name.equals("identifier")) 1246 this.getIdentifier().add(castToIdentifier(value)); 1247 else if (name.equals("category")) 1248 this.category = castToCodeableConcept(value); // CodeableConcept 1249 else if (name.equals("sender")) 1250 this.sender = castToReference(value); // Reference 1251 else if (name.equals("recipient")) 1252 this.getRecipient().add(castToReference(value)); 1253 else if (name.equals("payload")) 1254 this.getPayload().add((CommunicationRequestPayloadComponent) value); 1255 else if (name.equals("medium")) 1256 this.getMedium().add(castToCodeableConcept(value)); 1257 else if (name.equals("requester")) 1258 this.requester = castToReference(value); // Reference 1259 else if (name.equals("status")) 1260 this.status = new CommunicationRequestStatusEnumFactory().fromType(value); // Enumeration<CommunicationRequestStatus> 1261 else if (name.equals("encounter")) 1262 this.encounter = castToReference(value); // Reference 1263 else if (name.equals("scheduled[x]")) 1264 this.scheduled = (Type) value; // Type 1265 else if (name.equals("reason")) 1266 this.getReason().add(castToCodeableConcept(value)); 1267 else if (name.equals("requestedOn")) 1268 this.requestedOn = castToDateTime(value); // DateTimeType 1269 else if (name.equals("subject")) 1270 this.subject = castToReference(value); // Reference 1271 else if (name.equals("priority")) 1272 this.priority = castToCodeableConcept(value); // CodeableConcept 1273 else 1274 super.setProperty(name, value); 1275 } 1276 1277 @Override 1278 public Base makeProperty(int hash, String name) throws FHIRException { 1279 switch (hash) { 1280 case -1618432855: return addIdentifier(); // Identifier 1281 case 50511102: return getCategory(); // CodeableConcept 1282 case -905962955: return getSender(); // Reference 1283 case 820081177: return addRecipient(); // Reference 1284 case -786701938: return addPayload(); // CommunicationRequestPayloadComponent 1285 case -1078030475: return addMedium(); // CodeableConcept 1286 case 693933948: return getRequester(); // Reference 1287 case -892481550: throw new FHIRException("Cannot make property status as it is not a complex type"); // Enumeration<CommunicationRequestStatus> 1288 case 1524132147: return getEncounter(); // Reference 1289 case 1162627251: return getScheduled(); // Type 1290 case -934964668: return addReason(); // CodeableConcept 1291 case 1150582253: throw new FHIRException("Cannot make property requestedOn as it is not a complex type"); // DateTimeType 1292 case -1867885268: return getSubject(); // Reference 1293 case -1165461084: return getPriority(); // CodeableConcept 1294 default: return super.makeProperty(hash, name); 1295 } 1296 1297 } 1298 1299 @Override 1300 public Base addChild(String name) throws FHIRException { 1301 if (name.equals("identifier")) { 1302 return addIdentifier(); 1303 } 1304 else if (name.equals("category")) { 1305 this.category = new CodeableConcept(); 1306 return this.category; 1307 } 1308 else if (name.equals("sender")) { 1309 this.sender = new Reference(); 1310 return this.sender; 1311 } 1312 else if (name.equals("recipient")) { 1313 return addRecipient(); 1314 } 1315 else if (name.equals("payload")) { 1316 return addPayload(); 1317 } 1318 else if (name.equals("medium")) { 1319 return addMedium(); 1320 } 1321 else if (name.equals("requester")) { 1322 this.requester = new Reference(); 1323 return this.requester; 1324 } 1325 else if (name.equals("status")) { 1326 throw new FHIRException("Cannot call addChild on a primitive type CommunicationRequest.status"); 1327 } 1328 else if (name.equals("encounter")) { 1329 this.encounter = new Reference(); 1330 return this.encounter; 1331 } 1332 else if (name.equals("scheduledDateTime")) { 1333 this.scheduled = new DateTimeType(); 1334 return this.scheduled; 1335 } 1336 else if (name.equals("scheduledPeriod")) { 1337 this.scheduled = new Period(); 1338 return this.scheduled; 1339 } 1340 else if (name.equals("reason")) { 1341 return addReason(); 1342 } 1343 else if (name.equals("requestedOn")) { 1344 throw new FHIRException("Cannot call addChild on a primitive type CommunicationRequest.requestedOn"); 1345 } 1346 else if (name.equals("subject")) { 1347 this.subject = new Reference(); 1348 return this.subject; 1349 } 1350 else if (name.equals("priority")) { 1351 this.priority = new CodeableConcept(); 1352 return this.priority; 1353 } 1354 else 1355 return super.addChild(name); 1356 } 1357 1358 public String fhirType() { 1359 return "CommunicationRequest"; 1360 1361 } 1362 1363 public CommunicationRequest copy() { 1364 CommunicationRequest dst = new CommunicationRequest(); 1365 copyValues(dst); 1366 if (identifier != null) { 1367 dst.identifier = new ArrayList<Identifier>(); 1368 for (Identifier i : identifier) 1369 dst.identifier.add(i.copy()); 1370 }; 1371 dst.category = category == null ? null : category.copy(); 1372 dst.sender = sender == null ? null : sender.copy(); 1373 if (recipient != null) { 1374 dst.recipient = new ArrayList<Reference>(); 1375 for (Reference i : recipient) 1376 dst.recipient.add(i.copy()); 1377 }; 1378 if (payload != null) { 1379 dst.payload = new ArrayList<CommunicationRequestPayloadComponent>(); 1380 for (CommunicationRequestPayloadComponent i : payload) 1381 dst.payload.add(i.copy()); 1382 }; 1383 if (medium != null) { 1384 dst.medium = new ArrayList<CodeableConcept>(); 1385 for (CodeableConcept i : medium) 1386 dst.medium.add(i.copy()); 1387 }; 1388 dst.requester = requester == null ? null : requester.copy(); 1389 dst.status = status == null ? null : status.copy(); 1390 dst.encounter = encounter == null ? null : encounter.copy(); 1391 dst.scheduled = scheduled == null ? null : scheduled.copy(); 1392 if (reason != null) { 1393 dst.reason = new ArrayList<CodeableConcept>(); 1394 for (CodeableConcept i : reason) 1395 dst.reason.add(i.copy()); 1396 }; 1397 dst.requestedOn = requestedOn == null ? null : requestedOn.copy(); 1398 dst.subject = subject == null ? null : subject.copy(); 1399 dst.priority = priority == null ? null : priority.copy(); 1400 return dst; 1401 } 1402 1403 protected CommunicationRequest typedCopy() { 1404 return copy(); 1405 } 1406 1407 @Override 1408 public boolean equalsDeep(Base other) { 1409 if (!super.equalsDeep(other)) 1410 return false; 1411 if (!(other instanceof CommunicationRequest)) 1412 return false; 1413 CommunicationRequest o = (CommunicationRequest) other; 1414 return compareDeep(identifier, o.identifier, true) && compareDeep(category, o.category, true) && compareDeep(sender, o.sender, true) 1415 && compareDeep(recipient, o.recipient, true) && compareDeep(payload, o.payload, true) && compareDeep(medium, o.medium, true) 1416 && compareDeep(requester, o.requester, true) && compareDeep(status, o.status, true) && compareDeep(encounter, o.encounter, true) 1417 && compareDeep(scheduled, o.scheduled, true) && compareDeep(reason, o.reason, true) && compareDeep(requestedOn, o.requestedOn, true) 1418 && compareDeep(subject, o.subject, true) && compareDeep(priority, o.priority, true); 1419 } 1420 1421 @Override 1422 public boolean equalsShallow(Base other) { 1423 if (!super.equalsShallow(other)) 1424 return false; 1425 if (!(other instanceof CommunicationRequest)) 1426 return false; 1427 CommunicationRequest o = (CommunicationRequest) other; 1428 return compareValues(status, o.status, true) && compareValues(requestedOn, o.requestedOn, true); 1429 } 1430 1431 public boolean isEmpty() { 1432 return super.isEmpty() && (identifier == null || identifier.isEmpty()) && (category == null || category.isEmpty()) 1433 && (sender == null || sender.isEmpty()) && (recipient == null || recipient.isEmpty()) && (payload == null || payload.isEmpty()) 1434 && (medium == null || medium.isEmpty()) && (requester == null || requester.isEmpty()) && (status == null || status.isEmpty()) 1435 && (encounter == null || encounter.isEmpty()) && (scheduled == null || scheduled.isEmpty()) 1436 && (reason == null || reason.isEmpty()) && (requestedOn == null || requestedOn.isEmpty()) 1437 && (subject == null || subject.isEmpty()) && (priority == null || priority.isEmpty()); 1438 } 1439 1440 @Override 1441 public ResourceType getResourceType() { 1442 return ResourceType.CommunicationRequest; 1443 } 1444 1445 /** 1446 * Search parameter: <b>sender</b> 1447 * <p> 1448 * Description: <b>Message sender</b><br> 1449 * Type: <b>reference</b><br> 1450 * Path: <b>CommunicationRequest.sender</b><br> 1451 * </p> 1452 */ 1453 @SearchParamDefinition(name="sender", path="CommunicationRequest.sender", description="Message sender", type="reference" ) 1454 public static final String SP_SENDER = "sender"; 1455 /** 1456 * <b>Fluent Client</b> search parameter constant for <b>sender</b> 1457 * <p> 1458 * Description: <b>Message sender</b><br> 1459 * Type: <b>reference</b><br> 1460 * Path: <b>CommunicationRequest.sender</b><br> 1461 * </p> 1462 */ 1463 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam SENDER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_SENDER); 1464 1465/** 1466 * Constant for fluent queries to be used to add include statements. Specifies 1467 * the path value of "<b>CommunicationRequest:sender</b>". 1468 */ 1469 public static final ca.uhn.fhir.model.api.Include INCLUDE_SENDER = new ca.uhn.fhir.model.api.Include("CommunicationRequest:sender").toLocked(); 1470 1471 /** 1472 * Search parameter: <b>requested</b> 1473 * <p> 1474 * Description: <b>When ordered or proposed</b><br> 1475 * Type: <b>date</b><br> 1476 * Path: <b>CommunicationRequest.requestedOn</b><br> 1477 * </p> 1478 */ 1479 @SearchParamDefinition(name="requested", path="CommunicationRequest.requestedOn", description="When ordered or proposed", type="date" ) 1480 public static final String SP_REQUESTED = "requested"; 1481 /** 1482 * <b>Fluent Client</b> search parameter constant for <b>requested</b> 1483 * <p> 1484 * Description: <b>When ordered or proposed</b><br> 1485 * Type: <b>date</b><br> 1486 * Path: <b>CommunicationRequest.requestedOn</b><br> 1487 * </p> 1488 */ 1489 public static final ca.uhn.fhir.rest.gclient.DateClientParam REQUESTED = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_REQUESTED); 1490 1491 /** 1492 * Search parameter: <b>time</b> 1493 * <p> 1494 * Description: <b>When scheduled</b><br> 1495 * Type: <b>date</b><br> 1496 * Path: <b>CommunicationRequest.scheduledDateTime</b><br> 1497 * </p> 1498 */ 1499 @SearchParamDefinition(name="time", path="CommunicationRequest.scheduled.as(DateTime)", description="When scheduled", type="date" ) 1500 public static final String SP_TIME = "time"; 1501 /** 1502 * <b>Fluent Client</b> search parameter constant for <b>time</b> 1503 * <p> 1504 * Description: <b>When scheduled</b><br> 1505 * Type: <b>date</b><br> 1506 * Path: <b>CommunicationRequest.scheduledDateTime</b><br> 1507 * </p> 1508 */ 1509 public static final ca.uhn.fhir.rest.gclient.DateClientParam TIME = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_TIME); 1510 1511 /** 1512 * Search parameter: <b>requester</b> 1513 * <p> 1514 * Description: <b>An individual who requested a communication</b><br> 1515 * Type: <b>reference</b><br> 1516 * Path: <b>CommunicationRequest.requester</b><br> 1517 * </p> 1518 */ 1519 @SearchParamDefinition(name="requester", path="CommunicationRequest.requester", description="An individual who requested a communication", type="reference" ) 1520 public static final String SP_REQUESTER = "requester"; 1521 /** 1522 * <b>Fluent Client</b> search parameter constant for <b>requester</b> 1523 * <p> 1524 * Description: <b>An individual who requested a communication</b><br> 1525 * Type: <b>reference</b><br> 1526 * Path: <b>CommunicationRequest.requester</b><br> 1527 * </p> 1528 */ 1529 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam REQUESTER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_REQUESTER); 1530 1531/** 1532 * Constant for fluent queries to be used to add include statements. Specifies 1533 * the path value of "<b>CommunicationRequest:requester</b>". 1534 */ 1535 public static final ca.uhn.fhir.model.api.Include INCLUDE_REQUESTER = new ca.uhn.fhir.model.api.Include("CommunicationRequest:requester").toLocked(); 1536 1537 /** 1538 * Search parameter: <b>category</b> 1539 * <p> 1540 * Description: <b>Message category</b><br> 1541 * Type: <b>token</b><br> 1542 * Path: <b>CommunicationRequest.category</b><br> 1543 * </p> 1544 */ 1545 @SearchParamDefinition(name="category", path="CommunicationRequest.category", description="Message category", type="token" ) 1546 public static final String SP_CATEGORY = "category"; 1547 /** 1548 * <b>Fluent Client</b> search parameter constant for <b>category</b> 1549 * <p> 1550 * Description: <b>Message category</b><br> 1551 * Type: <b>token</b><br> 1552 * Path: <b>CommunicationRequest.category</b><br> 1553 * </p> 1554 */ 1555 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CATEGORY = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CATEGORY); 1556 1557 /** 1558 * Search parameter: <b>patient</b> 1559 * <p> 1560 * Description: <b>Focus of message</b><br> 1561 * Type: <b>reference</b><br> 1562 * Path: <b>CommunicationRequest.subject</b><br> 1563 * </p> 1564 */ 1565 @SearchParamDefinition(name="patient", path="CommunicationRequest.subject", description="Focus of message", type="reference" ) 1566 public static final String SP_PATIENT = "patient"; 1567 /** 1568 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 1569 * <p> 1570 * Description: <b>Focus of message</b><br> 1571 * Type: <b>reference</b><br> 1572 * Path: <b>CommunicationRequest.subject</b><br> 1573 * </p> 1574 */ 1575 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); 1576 1577/** 1578 * Constant for fluent queries to be used to add include statements. Specifies 1579 * the path value of "<b>CommunicationRequest:patient</b>". 1580 */ 1581 public static final ca.uhn.fhir.model.api.Include INCLUDE_PATIENT = new ca.uhn.fhir.model.api.Include("CommunicationRequest:patient").toLocked(); 1582 1583 /** 1584 * Search parameter: <b>status</b> 1585 * <p> 1586 * Description: <b>proposed | planned | requested | received | accepted | in-progress | completed | suspended | rejected | failed</b><br> 1587 * Type: <b>token</b><br> 1588 * Path: <b>CommunicationRequest.status</b><br> 1589 * </p> 1590 */ 1591 @SearchParamDefinition(name="status", path="CommunicationRequest.status", description="proposed | planned | requested | received | accepted | in-progress | completed | suspended | rejected | failed", type="token" ) 1592 public static final String SP_STATUS = "status"; 1593 /** 1594 * <b>Fluent Client</b> search parameter constant for <b>status</b> 1595 * <p> 1596 * Description: <b>proposed | planned | requested | received | accepted | in-progress | completed | suspended | rejected | failed</b><br> 1597 * Type: <b>token</b><br> 1598 * Path: <b>CommunicationRequest.status</b><br> 1599 * </p> 1600 */ 1601 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); 1602 1603 /** 1604 * Search parameter: <b>priority</b> 1605 * <p> 1606 * Description: <b>Message urgency</b><br> 1607 * Type: <b>token</b><br> 1608 * Path: <b>CommunicationRequest.priority</b><br> 1609 * </p> 1610 */ 1611 @SearchParamDefinition(name="priority", path="CommunicationRequest.priority", description="Message urgency", type="token" ) 1612 public static final String SP_PRIORITY = "priority"; 1613 /** 1614 * <b>Fluent Client</b> search parameter constant for <b>priority</b> 1615 * <p> 1616 * Description: <b>Message urgency</b><br> 1617 * Type: <b>token</b><br> 1618 * Path: <b>CommunicationRequest.priority</b><br> 1619 * </p> 1620 */ 1621 public static final ca.uhn.fhir.rest.gclient.TokenClientParam PRIORITY = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_PRIORITY); 1622 1623 /** 1624 * Search parameter: <b>subject</b> 1625 * <p> 1626 * Description: <b>Focus of message</b><br> 1627 * Type: <b>reference</b><br> 1628 * Path: <b>CommunicationRequest.subject</b><br> 1629 * </p> 1630 */ 1631 @SearchParamDefinition(name="subject", path="CommunicationRequest.subject", description="Focus of message", type="reference" ) 1632 public static final String SP_SUBJECT = "subject"; 1633 /** 1634 * <b>Fluent Client</b> search parameter constant for <b>subject</b> 1635 * <p> 1636 * Description: <b>Focus of message</b><br> 1637 * Type: <b>reference</b><br> 1638 * Path: <b>CommunicationRequest.subject</b><br> 1639 * </p> 1640 */ 1641 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam SUBJECT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_SUBJECT); 1642 1643/** 1644 * Constant for fluent queries to be used to add include statements. Specifies 1645 * the path value of "<b>CommunicationRequest:subject</b>". 1646 */ 1647 public static final ca.uhn.fhir.model.api.Include INCLUDE_SUBJECT = new ca.uhn.fhir.model.api.Include("CommunicationRequest:subject").toLocked(); 1648 1649 /** 1650 * Search parameter: <b>encounter</b> 1651 * <p> 1652 * Description: <b>Encounter leading to message</b><br> 1653 * Type: <b>reference</b><br> 1654 * Path: <b>CommunicationRequest.encounter</b><br> 1655 * </p> 1656 */ 1657 @SearchParamDefinition(name="encounter", path="CommunicationRequest.encounter", description="Encounter leading to message", type="reference" ) 1658 public static final String SP_ENCOUNTER = "encounter"; 1659 /** 1660 * <b>Fluent Client</b> search parameter constant for <b>encounter</b> 1661 * <p> 1662 * Description: <b>Encounter leading to message</b><br> 1663 * Type: <b>reference</b><br> 1664 * Path: <b>CommunicationRequest.encounter</b><br> 1665 * </p> 1666 */ 1667 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam ENCOUNTER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_ENCOUNTER); 1668 1669/** 1670 * Constant for fluent queries to be used to add include statements. Specifies 1671 * the path value of "<b>CommunicationRequest:encounter</b>". 1672 */ 1673 public static final ca.uhn.fhir.model.api.Include INCLUDE_ENCOUNTER = new ca.uhn.fhir.model.api.Include("CommunicationRequest:encounter").toLocked(); 1674 1675 /** 1676 * Search parameter: <b>identifier</b> 1677 * <p> 1678 * Description: <b>Unique identifier</b><br> 1679 * Type: <b>token</b><br> 1680 * Path: <b>CommunicationRequest.identifier</b><br> 1681 * </p> 1682 */ 1683 @SearchParamDefinition(name="identifier", path="CommunicationRequest.identifier", description="Unique identifier", type="token" ) 1684 public static final String SP_IDENTIFIER = "identifier"; 1685 /** 1686 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 1687 * <p> 1688 * Description: <b>Unique identifier</b><br> 1689 * Type: <b>token</b><br> 1690 * Path: <b>CommunicationRequest.identifier</b><br> 1691 * </p> 1692 */ 1693 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 1694 1695 /** 1696 * Search parameter: <b>medium</b> 1697 * <p> 1698 * Description: <b>A channel of communication</b><br> 1699 * Type: <b>token</b><br> 1700 * Path: <b>CommunicationRequest.medium</b><br> 1701 * </p> 1702 */ 1703 @SearchParamDefinition(name="medium", path="CommunicationRequest.medium", description="A channel of communication", type="token" ) 1704 public static final String SP_MEDIUM = "medium"; 1705 /** 1706 * <b>Fluent Client</b> search parameter constant for <b>medium</b> 1707 * <p> 1708 * Description: <b>A channel of communication</b><br> 1709 * Type: <b>token</b><br> 1710 * Path: <b>CommunicationRequest.medium</b><br> 1711 * </p> 1712 */ 1713 public static final ca.uhn.fhir.rest.gclient.TokenClientParam MEDIUM = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_MEDIUM); 1714 1715 /** 1716 * Search parameter: <b>recipient</b> 1717 * <p> 1718 * Description: <b>Message recipient</b><br> 1719 * Type: <b>reference</b><br> 1720 * Path: <b>CommunicationRequest.recipient</b><br> 1721 * </p> 1722 */ 1723 @SearchParamDefinition(name="recipient", path="CommunicationRequest.recipient", description="Message recipient", type="reference" ) 1724 public static final String SP_RECIPIENT = "recipient"; 1725 /** 1726 * <b>Fluent Client</b> search parameter constant for <b>recipient</b> 1727 * <p> 1728 * Description: <b>Message recipient</b><br> 1729 * Type: <b>reference</b><br> 1730 * Path: <b>CommunicationRequest.recipient</b><br> 1731 * </p> 1732 */ 1733 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam RECIPIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_RECIPIENT); 1734 1735/** 1736 * Constant for fluent queries to be used to add include statements. Specifies 1737 * the path value of "<b>CommunicationRequest:recipient</b>". 1738 */ 1739 public static final ca.uhn.fhir.model.api.Include INCLUDE_RECIPIENT = new ca.uhn.fhir.model.api.Include("CommunicationRequest:recipient").toLocked(); 1740 1741 1742}