001package org.hl7.fhir.dstu2016may.model; 002 003/* 004 Copyright (c) 2011+, HL7, Inc. 005 All rights reserved. 006 007 Redistribution and use in source and binary forms, with or without modification, 008 are permitted provided that the following conditions are met: 009 010 * Redistributions of source code must retain the above copyright notice, this 011 list of conditions and the following disclaimer. 012 * Redistributions in binary form must reproduce the above copyright notice, 013 this list of conditions and the following disclaimer in the documentation 014 and/or other materials provided with the distribution. 015 * Neither the name of HL7 nor the names of its contributors may be used to 016 endorse or promote products derived from this software without specific 017 prior written permission. 018 019 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 020 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 021 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 022 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 023 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 024 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 025 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 026 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 027 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 028 POSSIBILITY OF SUCH DAMAGE. 029 030*/ 031 032// Generated on Sun, May 8, 2016 03:05+1000 for FHIR v1.4.0 033import java.util.ArrayList; 034import java.util.List; 035 036import org.hl7.fhir.exceptions.FHIRException; 037import org.hl7.fhir.utilities.Utilities; 038 039import ca.uhn.fhir.model.api.annotation.Child; 040import ca.uhn.fhir.model.api.annotation.Description; 041import ca.uhn.fhir.model.api.annotation.ResourceDef; 042import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; 043/** 044 * A container for slot(s) of time that may be available for booking appointments. 045 */ 046@ResourceDef(name="Schedule", profile="http://hl7.org/fhir/Profile/Schedule") 047public class Schedule extends DomainResource { 048 049 /** 050 * External Ids for this item. 051 */ 052 @Child(name = "identifier", type = {Identifier.class}, order=0, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 053 @Description(shortDefinition="External Ids for this item", formalDefinition="External Ids for this item." ) 054 protected List<Identifier> identifier; 055 056 /** 057 * A broad categorisation of the service that is to be performed during this appointment. 058 */ 059 @Child(name = "serviceCategory", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=true) 060 @Description(shortDefinition="A broad categorisation of the service that is to be performed during this appointment", formalDefinition="A broad categorisation of the service that is to be performed during this appointment." ) 061 protected CodeableConcept serviceCategory; 062 063 /** 064 * The specific service that is to be performed during this appointment. 065 */ 066 @Child(name = "serviceType", type = {CodeableConcept.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 067 @Description(shortDefinition="The specific service that is to be performed during this appointment", formalDefinition="The specific service that is to be performed during this appointment." ) 068 protected List<CodeableConcept> serviceType; 069 070 /** 071 * The specialty of a practitioner that would be required to perform the service requested in this appointment. 072 */ 073 @Child(name = "specialty", type = {CodeableConcept.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 074 @Description(shortDefinition="The specialty of a practitioner that would be required to perform the service requested in this appointment", formalDefinition="The specialty of a practitioner that would be required to perform the service requested in this appointment." ) 075 protected List<CodeableConcept> specialty; 076 077 /** 078 * The resource this Schedule resource is providing availability information for. These are expected to usually be one of HealthcareService, Location, Practitioner, Device, Patient or RelatedPerson. 079 */ 080 @Child(name = "actor", type = {Patient.class, Practitioner.class, RelatedPerson.class, Device.class, HealthcareService.class, Location.class}, order=4, min=1, max=1, modifier=false, summary=true) 081 @Description(shortDefinition="The resource this Schedule resource is providing availability information for. These are expected to usually be one of HealthcareService, Location, Practitioner, Device, Patient or RelatedPerson", formalDefinition="The resource this Schedule resource is providing availability information for. These are expected to usually be one of HealthcareService, Location, Practitioner, Device, Patient or RelatedPerson." ) 082 protected Reference actor; 083 084 /** 085 * The actual object that is the target of the reference (The resource this Schedule resource is providing availability information for. These are expected to usually be one of HealthcareService, Location, Practitioner, Device, Patient or RelatedPerson.) 086 */ 087 protected Resource actorTarget; 088 089 /** 090 * The period of time that the slots that are attached to this Schedule resource cover (even if none exist). These cover the amount of time that an organization's planning horizon; the interval for which they are currently accepting appointments. This does not define a "template" for planning outside these dates. 091 */ 092 @Child(name = "planningHorizon", type = {Period.class}, order=5, min=0, max=1, modifier=false, summary=true) 093 @Description(shortDefinition="The period of time that the slots that are attached to this Schedule resource cover (even if none exist). These cover the amount of time that an organization's planning horizon; the interval for which they are currently accepting appointments. This does not define a \"template\" for planning outside these dates", formalDefinition="The period of time that the slots that are attached to this Schedule resource cover (even if none exist). These cover the amount of time that an organization's planning horizon; the interval for which they are currently accepting appointments. This does not define a \"template\" for planning outside these dates." ) 094 protected Period planningHorizon; 095 096 /** 097 * Comments on the availability to describe any extended information. Such as custom constraints on the slot(s) that may be associated. 098 */ 099 @Child(name = "comment", type = {StringType.class}, order=6, min=0, max=1, modifier=false, summary=false) 100 @Description(shortDefinition="Comments on the availability to describe any extended information. Such as custom constraints on the slot(s) that may be associated", formalDefinition="Comments on the availability to describe any extended information. Such as custom constraints on the slot(s) that may be associated." ) 101 protected StringType comment; 102 103 private static final long serialVersionUID = 1234951934L; 104 105 /** 106 * Constructor 107 */ 108 public Schedule() { 109 super(); 110 } 111 112 /** 113 * Constructor 114 */ 115 public Schedule(Reference actor) { 116 super(); 117 this.actor = actor; 118 } 119 120 /** 121 * @return {@link #identifier} (External Ids for this item.) 122 */ 123 public List<Identifier> getIdentifier() { 124 if (this.identifier == null) 125 this.identifier = new ArrayList<Identifier>(); 126 return this.identifier; 127 } 128 129 public boolean hasIdentifier() { 130 if (this.identifier == null) 131 return false; 132 for (Identifier item : this.identifier) 133 if (!item.isEmpty()) 134 return true; 135 return false; 136 } 137 138 /** 139 * @return {@link #identifier} (External Ids for this item.) 140 */ 141 // syntactic sugar 142 public Identifier addIdentifier() { //3 143 Identifier t = new Identifier(); 144 if (this.identifier == null) 145 this.identifier = new ArrayList<Identifier>(); 146 this.identifier.add(t); 147 return t; 148 } 149 150 // syntactic sugar 151 public Schedule addIdentifier(Identifier t) { //3 152 if (t == null) 153 return this; 154 if (this.identifier == null) 155 this.identifier = new ArrayList<Identifier>(); 156 this.identifier.add(t); 157 return this; 158 } 159 160 /** 161 * @return {@link #serviceCategory} (A broad categorisation of the service that is to be performed during this appointment.) 162 */ 163 public CodeableConcept getServiceCategory() { 164 if (this.serviceCategory == null) 165 if (Configuration.errorOnAutoCreate()) 166 throw new Error("Attempt to auto-create Schedule.serviceCategory"); 167 else if (Configuration.doAutoCreate()) 168 this.serviceCategory = new CodeableConcept(); // cc 169 return this.serviceCategory; 170 } 171 172 public boolean hasServiceCategory() { 173 return this.serviceCategory != null && !this.serviceCategory.isEmpty(); 174 } 175 176 /** 177 * @param value {@link #serviceCategory} (A broad categorisation of the service that is to be performed during this appointment.) 178 */ 179 public Schedule setServiceCategory(CodeableConcept value) { 180 this.serviceCategory = value; 181 return this; 182 } 183 184 /** 185 * @return {@link #serviceType} (The specific service that is to be performed during this appointment.) 186 */ 187 public List<CodeableConcept> getServiceType() { 188 if (this.serviceType == null) 189 this.serviceType = new ArrayList<CodeableConcept>(); 190 return this.serviceType; 191 } 192 193 public boolean hasServiceType() { 194 if (this.serviceType == null) 195 return false; 196 for (CodeableConcept item : this.serviceType) 197 if (!item.isEmpty()) 198 return true; 199 return false; 200 } 201 202 /** 203 * @return {@link #serviceType} (The specific service that is to be performed during this appointment.) 204 */ 205 // syntactic sugar 206 public CodeableConcept addServiceType() { //3 207 CodeableConcept t = new CodeableConcept(); 208 if (this.serviceType == null) 209 this.serviceType = new ArrayList<CodeableConcept>(); 210 this.serviceType.add(t); 211 return t; 212 } 213 214 // syntactic sugar 215 public Schedule addServiceType(CodeableConcept t) { //3 216 if (t == null) 217 return this; 218 if (this.serviceType == null) 219 this.serviceType = new ArrayList<CodeableConcept>(); 220 this.serviceType.add(t); 221 return this; 222 } 223 224 /** 225 * @return {@link #specialty} (The specialty of a practitioner that would be required to perform the service requested in this appointment.) 226 */ 227 public List<CodeableConcept> getSpecialty() { 228 if (this.specialty == null) 229 this.specialty = new ArrayList<CodeableConcept>(); 230 return this.specialty; 231 } 232 233 public boolean hasSpecialty() { 234 if (this.specialty == null) 235 return false; 236 for (CodeableConcept item : this.specialty) 237 if (!item.isEmpty()) 238 return true; 239 return false; 240 } 241 242 /** 243 * @return {@link #specialty} (The specialty of a practitioner that would be required to perform the service requested in this appointment.) 244 */ 245 // syntactic sugar 246 public CodeableConcept addSpecialty() { //3 247 CodeableConcept t = new CodeableConcept(); 248 if (this.specialty == null) 249 this.specialty = new ArrayList<CodeableConcept>(); 250 this.specialty.add(t); 251 return t; 252 } 253 254 // syntactic sugar 255 public Schedule addSpecialty(CodeableConcept t) { //3 256 if (t == null) 257 return this; 258 if (this.specialty == null) 259 this.specialty = new ArrayList<CodeableConcept>(); 260 this.specialty.add(t); 261 return this; 262 } 263 264 /** 265 * @return {@link #actor} (The resource this Schedule resource is providing availability information for. These are expected to usually be one of HealthcareService, Location, Practitioner, Device, Patient or RelatedPerson.) 266 */ 267 public Reference getActor() { 268 if (this.actor == null) 269 if (Configuration.errorOnAutoCreate()) 270 throw new Error("Attempt to auto-create Schedule.actor"); 271 else if (Configuration.doAutoCreate()) 272 this.actor = new Reference(); // cc 273 return this.actor; 274 } 275 276 public boolean hasActor() { 277 return this.actor != null && !this.actor.isEmpty(); 278 } 279 280 /** 281 * @param value {@link #actor} (The resource this Schedule resource is providing availability information for. These are expected to usually be one of HealthcareService, Location, Practitioner, Device, Patient or RelatedPerson.) 282 */ 283 public Schedule setActor(Reference value) { 284 this.actor = value; 285 return this; 286 } 287 288 /** 289 * @return {@link #actor} 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 resource this Schedule resource is providing availability information for. These are expected to usually be one of HealthcareService, Location, Practitioner, Device, Patient or RelatedPerson.) 290 */ 291 public Resource getActorTarget() { 292 return this.actorTarget; 293 } 294 295 /** 296 * @param value {@link #actor} 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 resource this Schedule resource is providing availability information for. These are expected to usually be one of HealthcareService, Location, Practitioner, Device, Patient or RelatedPerson.) 297 */ 298 public Schedule setActorTarget(Resource value) { 299 this.actorTarget = value; 300 return this; 301 } 302 303 /** 304 * @return {@link #planningHorizon} (The period of time that the slots that are attached to this Schedule resource cover (even if none exist). These cover the amount of time that an organization's planning horizon; the interval for which they are currently accepting appointments. This does not define a "template" for planning outside these dates.) 305 */ 306 public Period getPlanningHorizon() { 307 if (this.planningHorizon == null) 308 if (Configuration.errorOnAutoCreate()) 309 throw new Error("Attempt to auto-create Schedule.planningHorizon"); 310 else if (Configuration.doAutoCreate()) 311 this.planningHorizon = new Period(); // cc 312 return this.planningHorizon; 313 } 314 315 public boolean hasPlanningHorizon() { 316 return this.planningHorizon != null && !this.planningHorizon.isEmpty(); 317 } 318 319 /** 320 * @param value {@link #planningHorizon} (The period of time that the slots that are attached to this Schedule resource cover (even if none exist). These cover the amount of time that an organization's planning horizon; the interval for which they are currently accepting appointments. This does not define a "template" for planning outside these dates.) 321 */ 322 public Schedule setPlanningHorizon(Period value) { 323 this.planningHorizon = value; 324 return this; 325 } 326 327 /** 328 * @return {@link #comment} (Comments on the availability to describe any extended information. Such as custom constraints on the slot(s) that may be associated.). This is the underlying object with id, value and extensions. The accessor "getComment" gives direct access to the value 329 */ 330 public StringType getCommentElement() { 331 if (this.comment == null) 332 if (Configuration.errorOnAutoCreate()) 333 throw new Error("Attempt to auto-create Schedule.comment"); 334 else if (Configuration.doAutoCreate()) 335 this.comment = new StringType(); // bb 336 return this.comment; 337 } 338 339 public boolean hasCommentElement() { 340 return this.comment != null && !this.comment.isEmpty(); 341 } 342 343 public boolean hasComment() { 344 return this.comment != null && !this.comment.isEmpty(); 345 } 346 347 /** 348 * @param value {@link #comment} (Comments on the availability to describe any extended information. Such as custom constraints on the slot(s) that may be associated.). This is the underlying object with id, value and extensions. The accessor "getComment" gives direct access to the value 349 */ 350 public Schedule setCommentElement(StringType value) { 351 this.comment = value; 352 return this; 353 } 354 355 /** 356 * @return Comments on the availability to describe any extended information. Such as custom constraints on the slot(s) that may be associated. 357 */ 358 public String getComment() { 359 return this.comment == null ? null : this.comment.getValue(); 360 } 361 362 /** 363 * @param value Comments on the availability to describe any extended information. Such as custom constraints on the slot(s) that may be associated. 364 */ 365 public Schedule setComment(String value) { 366 if (Utilities.noString(value)) 367 this.comment = null; 368 else { 369 if (this.comment == null) 370 this.comment = new StringType(); 371 this.comment.setValue(value); 372 } 373 return this; 374 } 375 376 protected void listChildren(List<Property> childrenList) { 377 super.listChildren(childrenList); 378 childrenList.add(new Property("identifier", "Identifier", "External Ids for this item.", 0, java.lang.Integer.MAX_VALUE, identifier)); 379 childrenList.add(new Property("serviceCategory", "CodeableConcept", "A broad categorisation of the service that is to be performed during this appointment.", 0, java.lang.Integer.MAX_VALUE, serviceCategory)); 380 childrenList.add(new Property("serviceType", "CodeableConcept", "The specific service that is to be performed during this appointment.", 0, java.lang.Integer.MAX_VALUE, serviceType)); 381 childrenList.add(new Property("specialty", "CodeableConcept", "The specialty of a practitioner that would be required to perform the service requested in this appointment.", 0, java.lang.Integer.MAX_VALUE, specialty)); 382 childrenList.add(new Property("actor", "Reference(Patient|Practitioner|RelatedPerson|Device|HealthcareService|Location)", "The resource this Schedule resource is providing availability information for. These are expected to usually be one of HealthcareService, Location, Practitioner, Device, Patient or RelatedPerson.", 0, java.lang.Integer.MAX_VALUE, actor)); 383 childrenList.add(new Property("planningHorizon", "Period", "The period of time that the slots that are attached to this Schedule resource cover (even if none exist). These cover the amount of time that an organization's planning horizon; the interval for which they are currently accepting appointments. This does not define a \"template\" for planning outside these dates.", 0, java.lang.Integer.MAX_VALUE, planningHorizon)); 384 childrenList.add(new Property("comment", "string", "Comments on the availability to describe any extended information. Such as custom constraints on the slot(s) that may be associated.", 0, java.lang.Integer.MAX_VALUE, comment)); 385 } 386 387 @Override 388 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 389 switch (hash) { 390 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 391 case 1281188563: /*serviceCategory*/ return this.serviceCategory == null ? new Base[0] : new Base[] {this.serviceCategory}; // CodeableConcept 392 case -1928370289: /*serviceType*/ return this.serviceType == null ? new Base[0] : this.serviceType.toArray(new Base[this.serviceType.size()]); // CodeableConcept 393 case -1694759682: /*specialty*/ return this.specialty == null ? new Base[0] : this.specialty.toArray(new Base[this.specialty.size()]); // CodeableConcept 394 case 92645877: /*actor*/ return this.actor == null ? new Base[0] : new Base[] {this.actor}; // Reference 395 case -1718507650: /*planningHorizon*/ return this.planningHorizon == null ? new Base[0] : new Base[] {this.planningHorizon}; // Period 396 case 950398559: /*comment*/ return this.comment == null ? new Base[0] : new Base[] {this.comment}; // StringType 397 default: return super.getProperty(hash, name, checkValid); 398 } 399 400 } 401 402 @Override 403 public void setProperty(int hash, String name, Base value) throws FHIRException { 404 switch (hash) { 405 case -1618432855: // identifier 406 this.getIdentifier().add(castToIdentifier(value)); // Identifier 407 break; 408 case 1281188563: // serviceCategory 409 this.serviceCategory = castToCodeableConcept(value); // CodeableConcept 410 break; 411 case -1928370289: // serviceType 412 this.getServiceType().add(castToCodeableConcept(value)); // CodeableConcept 413 break; 414 case -1694759682: // specialty 415 this.getSpecialty().add(castToCodeableConcept(value)); // CodeableConcept 416 break; 417 case 92645877: // actor 418 this.actor = castToReference(value); // Reference 419 break; 420 case -1718507650: // planningHorizon 421 this.planningHorizon = castToPeriod(value); // Period 422 break; 423 case 950398559: // comment 424 this.comment = castToString(value); // StringType 425 break; 426 default: super.setProperty(hash, name, value); 427 } 428 429 } 430 431 @Override 432 public void setProperty(String name, Base value) throws FHIRException { 433 if (name.equals("identifier")) 434 this.getIdentifier().add(castToIdentifier(value)); 435 else if (name.equals("serviceCategory")) 436 this.serviceCategory = castToCodeableConcept(value); // CodeableConcept 437 else if (name.equals("serviceType")) 438 this.getServiceType().add(castToCodeableConcept(value)); 439 else if (name.equals("specialty")) 440 this.getSpecialty().add(castToCodeableConcept(value)); 441 else if (name.equals("actor")) 442 this.actor = castToReference(value); // Reference 443 else if (name.equals("planningHorizon")) 444 this.planningHorizon = castToPeriod(value); // Period 445 else if (name.equals("comment")) 446 this.comment = castToString(value); // StringType 447 else 448 super.setProperty(name, value); 449 } 450 451 @Override 452 public Base makeProperty(int hash, String name) throws FHIRException { 453 switch (hash) { 454 case -1618432855: return addIdentifier(); // Identifier 455 case 1281188563: return getServiceCategory(); // CodeableConcept 456 case -1928370289: return addServiceType(); // CodeableConcept 457 case -1694759682: return addSpecialty(); // CodeableConcept 458 case 92645877: return getActor(); // Reference 459 case -1718507650: return getPlanningHorizon(); // Period 460 case 950398559: throw new FHIRException("Cannot make property comment as it is not a complex type"); // StringType 461 default: return super.makeProperty(hash, name); 462 } 463 464 } 465 466 @Override 467 public Base addChild(String name) throws FHIRException { 468 if (name.equals("identifier")) { 469 return addIdentifier(); 470 } 471 else if (name.equals("serviceCategory")) { 472 this.serviceCategory = new CodeableConcept(); 473 return this.serviceCategory; 474 } 475 else if (name.equals("serviceType")) { 476 return addServiceType(); 477 } 478 else if (name.equals("specialty")) { 479 return addSpecialty(); 480 } 481 else if (name.equals("actor")) { 482 this.actor = new Reference(); 483 return this.actor; 484 } 485 else if (name.equals("planningHorizon")) { 486 this.planningHorizon = new Period(); 487 return this.planningHorizon; 488 } 489 else if (name.equals("comment")) { 490 throw new FHIRException("Cannot call addChild on a primitive type Schedule.comment"); 491 } 492 else 493 return super.addChild(name); 494 } 495 496 public String fhirType() { 497 return "Schedule"; 498 499 } 500 501 public Schedule copy() { 502 Schedule dst = new Schedule(); 503 copyValues(dst); 504 if (identifier != null) { 505 dst.identifier = new ArrayList<Identifier>(); 506 for (Identifier i : identifier) 507 dst.identifier.add(i.copy()); 508 }; 509 dst.serviceCategory = serviceCategory == null ? null : serviceCategory.copy(); 510 if (serviceType != null) { 511 dst.serviceType = new ArrayList<CodeableConcept>(); 512 for (CodeableConcept i : serviceType) 513 dst.serviceType.add(i.copy()); 514 }; 515 if (specialty != null) { 516 dst.specialty = new ArrayList<CodeableConcept>(); 517 for (CodeableConcept i : specialty) 518 dst.specialty.add(i.copy()); 519 }; 520 dst.actor = actor == null ? null : actor.copy(); 521 dst.planningHorizon = planningHorizon == null ? null : planningHorizon.copy(); 522 dst.comment = comment == null ? null : comment.copy(); 523 return dst; 524 } 525 526 protected Schedule typedCopy() { 527 return copy(); 528 } 529 530 @Override 531 public boolean equalsDeep(Base other) { 532 if (!super.equalsDeep(other)) 533 return false; 534 if (!(other instanceof Schedule)) 535 return false; 536 Schedule o = (Schedule) other; 537 return compareDeep(identifier, o.identifier, true) && compareDeep(serviceCategory, o.serviceCategory, true) 538 && compareDeep(serviceType, o.serviceType, true) && compareDeep(specialty, o.specialty, true) && compareDeep(actor, o.actor, true) 539 && compareDeep(planningHorizon, o.planningHorizon, true) && compareDeep(comment, o.comment, true) 540 ; 541 } 542 543 @Override 544 public boolean equalsShallow(Base other) { 545 if (!super.equalsShallow(other)) 546 return false; 547 if (!(other instanceof Schedule)) 548 return false; 549 Schedule o = (Schedule) other; 550 return compareValues(comment, o.comment, true); 551 } 552 553 public boolean isEmpty() { 554 return super.isEmpty() && (identifier == null || identifier.isEmpty()) && (serviceCategory == null || serviceCategory.isEmpty()) 555 && (serviceType == null || serviceType.isEmpty()) && (specialty == null || specialty.isEmpty()) 556 && (actor == null || actor.isEmpty()) && (planningHorizon == null || planningHorizon.isEmpty()) 557 && (comment == null || comment.isEmpty()); 558 } 559 560 @Override 561 public ResourceType getResourceType() { 562 return ResourceType.Schedule; 563 } 564 565 /** 566 * Search parameter: <b>actor</b> 567 * <p> 568 * Description: <b>The individual(HealthcareService, Practitioner, Location, ...) to find a Schedule for</b><br> 569 * Type: <b>reference</b><br> 570 * Path: <b>Schedule.actor</b><br> 571 * </p> 572 */ 573 @SearchParamDefinition(name="actor", path="Schedule.actor", description="The individual(HealthcareService, Practitioner, Location, ...) to find a Schedule for", type="reference" ) 574 public static final String SP_ACTOR = "actor"; 575 /** 576 * <b>Fluent Client</b> search parameter constant for <b>actor</b> 577 * <p> 578 * Description: <b>The individual(HealthcareService, Practitioner, Location, ...) to find a Schedule for</b><br> 579 * Type: <b>reference</b><br> 580 * Path: <b>Schedule.actor</b><br> 581 * </p> 582 */ 583 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam ACTOR = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_ACTOR); 584 585/** 586 * Constant for fluent queries to be used to add include statements. Specifies 587 * the path value of "<b>Schedule:actor</b>". 588 */ 589 public static final ca.uhn.fhir.model.api.Include INCLUDE_ACTOR = new ca.uhn.fhir.model.api.Include("Schedule:actor").toLocked(); 590 591 /** 592 * Search parameter: <b>date</b> 593 * <p> 594 * Description: <b>Search for Schedule resources that have a period that contains this date specified</b><br> 595 * Type: <b>date</b><br> 596 * Path: <b>Schedule.planningHorizon</b><br> 597 * </p> 598 */ 599 @SearchParamDefinition(name="date", path="Schedule.planningHorizon", description="Search for Schedule resources that have a period that contains this date specified", type="date" ) 600 public static final String SP_DATE = "date"; 601 /** 602 * <b>Fluent Client</b> search parameter constant for <b>date</b> 603 * <p> 604 * Description: <b>Search for Schedule resources that have a period that contains this date specified</b><br> 605 * Type: <b>date</b><br> 606 * Path: <b>Schedule.planningHorizon</b><br> 607 * </p> 608 */ 609 public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); 610 611 /** 612 * Search parameter: <b>type</b> 613 * <p> 614 * Description: <b>The type of appointments that can be booked into associated slot(s)</b><br> 615 * Type: <b>token</b><br> 616 * Path: <b>Schedule.serviceType</b><br> 617 * </p> 618 */ 619 @SearchParamDefinition(name="type", path="Schedule.serviceType", description="The type of appointments that can be booked into associated slot(s)", type="token" ) 620 public static final String SP_TYPE = "type"; 621 /** 622 * <b>Fluent Client</b> search parameter constant for <b>type</b> 623 * <p> 624 * Description: <b>The type of appointments that can be booked into associated slot(s)</b><br> 625 * Type: <b>token</b><br> 626 * Path: <b>Schedule.serviceType</b><br> 627 * </p> 628 */ 629 public static final ca.uhn.fhir.rest.gclient.TokenClientParam TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_TYPE); 630 631 /** 632 * Search parameter: <b>identifier</b> 633 * <p> 634 * Description: <b>A Schedule Identifier</b><br> 635 * Type: <b>token</b><br> 636 * Path: <b>Schedule.identifier</b><br> 637 * </p> 638 */ 639 @SearchParamDefinition(name="identifier", path="Schedule.identifier", description="A Schedule Identifier", type="token" ) 640 public static final String SP_IDENTIFIER = "identifier"; 641 /** 642 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 643 * <p> 644 * Description: <b>A Schedule Identifier</b><br> 645 * Type: <b>token</b><br> 646 * Path: <b>Schedule.identifier</b><br> 647 * </p> 648 */ 649 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 650 651 652} 653