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