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.Date; 035import java.util.List; 036 037import org.hl7.fhir.exceptions.FHIRException; 038import org.hl7.fhir.instance.model.api.IBaseBackboneElement; 039import org.hl7.fhir.utilities.Utilities; 040 041import ca.uhn.fhir.model.api.annotation.Block; 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 patient's point-in-time immunization and recommendation (i.e. forecasting a patient's immunization eligibility according to a published schedule) with optional supporting justification. 048 */ 049@ResourceDef(name="ImmunizationRecommendation", profile="http://hl7.org/fhir/Profile/ImmunizationRecommendation") 050public class ImmunizationRecommendation extends DomainResource { 051 052 @Block() 053 public static class ImmunizationRecommendationRecommendationComponent extends BackboneElement implements IBaseBackboneElement { 054 /** 055 * The date the immunization recommendation was created. 056 */ 057 @Child(name = "date", type = {DateTimeType.class}, order=1, min=1, max=1, modifier=false, summary=true) 058 @Description(shortDefinition="Date recommendation created", formalDefinition="The date the immunization recommendation was created." ) 059 protected DateTimeType date; 060 061 /** 062 * Vaccine that pertains to the recommendation. 063 */ 064 @Child(name = "vaccineCode", type = {CodeableConcept.class}, order=2, min=1, max=1, modifier=false, summary=true) 065 @Description(shortDefinition="Vaccine recommendation applies to", formalDefinition="Vaccine that pertains to the recommendation." ) 066 protected CodeableConcept vaccineCode; 067 068 /** 069 * This indicates the next recommended dose number (e.g. dose 2 is the next recommended dose). 070 */ 071 @Child(name = "doseNumber", type = {PositiveIntType.class}, order=3, min=0, max=1, modifier=false, summary=true) 072 @Description(shortDefinition="Recommended dose number", formalDefinition="This indicates the next recommended dose number (e.g. dose 2 is the next recommended dose)." ) 073 protected PositiveIntType doseNumber; 074 075 /** 076 * Vaccine administration status. 077 */ 078 @Child(name = "forecastStatus", type = {CodeableConcept.class}, order=4, min=1, max=1, modifier=false, summary=true) 079 @Description(shortDefinition="Vaccine administration status", formalDefinition="Vaccine administration status." ) 080 protected CodeableConcept forecastStatus; 081 082 /** 083 * Vaccine date recommendations. For example, earliest date to administer, latest date to administer, etc. 084 */ 085 @Child(name = "dateCriterion", type = {}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 086 @Description(shortDefinition="Dates governing proposed immunization", formalDefinition="Vaccine date recommendations. For example, earliest date to administer, latest date to administer, etc." ) 087 protected List<ImmunizationRecommendationRecommendationDateCriterionComponent> dateCriterion; 088 089 /** 090 * Contains information about the protocol under which the vaccine was administered. 091 */ 092 @Child(name = "protocol", type = {}, order=6, min=0, max=1, modifier=false, summary=false) 093 @Description(shortDefinition="Protocol used by recommendation", formalDefinition="Contains information about the protocol under which the vaccine was administered." ) 094 protected ImmunizationRecommendationRecommendationProtocolComponent protocol; 095 096 /** 097 * Immunization event history that supports the status and recommendation. 098 */ 099 @Child(name = "supportingImmunization", type = {Immunization.class}, order=7, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 100 @Description(shortDefinition="Past immunizations supporting recommendation", formalDefinition="Immunization event history that supports the status and recommendation." ) 101 protected List<Reference> supportingImmunization; 102 /** 103 * The actual objects that are the target of the reference (Immunization event history that supports the status and recommendation.) 104 */ 105 protected List<Immunization> supportingImmunizationTarget; 106 107 108 /** 109 * Patient Information that supports the status and recommendation. This includes patient observations, adverse reactions and allergy/intolerance information. 110 */ 111 @Child(name = "supportingPatientInformation", type = {Observation.class, AllergyIntolerance.class}, order=8, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 112 @Description(shortDefinition="Patient observations supporting recommendation", formalDefinition="Patient Information that supports the status and recommendation. This includes patient observations, adverse reactions and allergy/intolerance information." ) 113 protected List<Reference> supportingPatientInformation; 114 /** 115 * The actual objects that are the target of the reference (Patient Information that supports the status and recommendation. This includes patient observations, adverse reactions and allergy/intolerance information.) 116 */ 117 protected List<Resource> supportingPatientInformationTarget; 118 119 120 private static final long serialVersionUID = 1501347482L; 121 122 /** 123 * Constructor 124 */ 125 public ImmunizationRecommendationRecommendationComponent() { 126 super(); 127 } 128 129 /** 130 * Constructor 131 */ 132 public ImmunizationRecommendationRecommendationComponent(DateTimeType date, CodeableConcept vaccineCode, CodeableConcept forecastStatus) { 133 super(); 134 this.date = date; 135 this.vaccineCode = vaccineCode; 136 this.forecastStatus = forecastStatus; 137 } 138 139 /** 140 * @return {@link #date} (The date the immunization recommendation was created.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 141 */ 142 public DateTimeType getDateElement() { 143 if (this.date == null) 144 if (Configuration.errorOnAutoCreate()) 145 throw new Error("Attempt to auto-create ImmunizationRecommendationRecommendationComponent.date"); 146 else if (Configuration.doAutoCreate()) 147 this.date = new DateTimeType(); // bb 148 return this.date; 149 } 150 151 public boolean hasDateElement() { 152 return this.date != null && !this.date.isEmpty(); 153 } 154 155 public boolean hasDate() { 156 return this.date != null && !this.date.isEmpty(); 157 } 158 159 /** 160 * @param value {@link #date} (The date the immunization recommendation was created.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 161 */ 162 public ImmunizationRecommendationRecommendationComponent setDateElement(DateTimeType value) { 163 this.date = value; 164 return this; 165 } 166 167 /** 168 * @return The date the immunization recommendation was created. 169 */ 170 public Date getDate() { 171 return this.date == null ? null : this.date.getValue(); 172 } 173 174 /** 175 * @param value The date the immunization recommendation was created. 176 */ 177 public ImmunizationRecommendationRecommendationComponent setDate(Date value) { 178 if (this.date == null) 179 this.date = new DateTimeType(); 180 this.date.setValue(value); 181 return this; 182 } 183 184 /** 185 * @return {@link #vaccineCode} (Vaccine that pertains to the recommendation.) 186 */ 187 public CodeableConcept getVaccineCode() { 188 if (this.vaccineCode == null) 189 if (Configuration.errorOnAutoCreate()) 190 throw new Error("Attempt to auto-create ImmunizationRecommendationRecommendationComponent.vaccineCode"); 191 else if (Configuration.doAutoCreate()) 192 this.vaccineCode = new CodeableConcept(); // cc 193 return this.vaccineCode; 194 } 195 196 public boolean hasVaccineCode() { 197 return this.vaccineCode != null && !this.vaccineCode.isEmpty(); 198 } 199 200 /** 201 * @param value {@link #vaccineCode} (Vaccine that pertains to the recommendation.) 202 */ 203 public ImmunizationRecommendationRecommendationComponent setVaccineCode(CodeableConcept value) { 204 this.vaccineCode = value; 205 return this; 206 } 207 208 /** 209 * @return {@link #doseNumber} (This indicates the next recommended dose number (e.g. dose 2 is the next recommended dose).). This is the underlying object with id, value and extensions. The accessor "getDoseNumber" gives direct access to the value 210 */ 211 public PositiveIntType getDoseNumberElement() { 212 if (this.doseNumber == null) 213 if (Configuration.errorOnAutoCreate()) 214 throw new Error("Attempt to auto-create ImmunizationRecommendationRecommendationComponent.doseNumber"); 215 else if (Configuration.doAutoCreate()) 216 this.doseNumber = new PositiveIntType(); // bb 217 return this.doseNumber; 218 } 219 220 public boolean hasDoseNumberElement() { 221 return this.doseNumber != null && !this.doseNumber.isEmpty(); 222 } 223 224 public boolean hasDoseNumber() { 225 return this.doseNumber != null && !this.doseNumber.isEmpty(); 226 } 227 228 /** 229 * @param value {@link #doseNumber} (This indicates the next recommended dose number (e.g. dose 2 is the next recommended dose).). This is the underlying object with id, value and extensions. The accessor "getDoseNumber" gives direct access to the value 230 */ 231 public ImmunizationRecommendationRecommendationComponent setDoseNumberElement(PositiveIntType value) { 232 this.doseNumber = value; 233 return this; 234 } 235 236 /** 237 * @return This indicates the next recommended dose number (e.g. dose 2 is the next recommended dose). 238 */ 239 public int getDoseNumber() { 240 return this.doseNumber == null || this.doseNumber.isEmpty() ? 0 : this.doseNumber.getValue(); 241 } 242 243 /** 244 * @param value This indicates the next recommended dose number (e.g. dose 2 is the next recommended dose). 245 */ 246 public ImmunizationRecommendationRecommendationComponent setDoseNumber(int value) { 247 if (this.doseNumber == null) 248 this.doseNumber = new PositiveIntType(); 249 this.doseNumber.setValue(value); 250 return this; 251 } 252 253 /** 254 * @return {@link #forecastStatus} (Vaccine administration status.) 255 */ 256 public CodeableConcept getForecastStatus() { 257 if (this.forecastStatus == null) 258 if (Configuration.errorOnAutoCreate()) 259 throw new Error("Attempt to auto-create ImmunizationRecommendationRecommendationComponent.forecastStatus"); 260 else if (Configuration.doAutoCreate()) 261 this.forecastStatus = new CodeableConcept(); // cc 262 return this.forecastStatus; 263 } 264 265 public boolean hasForecastStatus() { 266 return this.forecastStatus != null && !this.forecastStatus.isEmpty(); 267 } 268 269 /** 270 * @param value {@link #forecastStatus} (Vaccine administration status.) 271 */ 272 public ImmunizationRecommendationRecommendationComponent setForecastStatus(CodeableConcept value) { 273 this.forecastStatus = value; 274 return this; 275 } 276 277 /** 278 * @return {@link #dateCriterion} (Vaccine date recommendations. For example, earliest date to administer, latest date to administer, etc.) 279 */ 280 public List<ImmunizationRecommendationRecommendationDateCriterionComponent> getDateCriterion() { 281 if (this.dateCriterion == null) 282 this.dateCriterion = new ArrayList<ImmunizationRecommendationRecommendationDateCriterionComponent>(); 283 return this.dateCriterion; 284 } 285 286 public boolean hasDateCriterion() { 287 if (this.dateCriterion == null) 288 return false; 289 for (ImmunizationRecommendationRecommendationDateCriterionComponent item : this.dateCriterion) 290 if (!item.isEmpty()) 291 return true; 292 return false; 293 } 294 295 /** 296 * @return {@link #dateCriterion} (Vaccine date recommendations. For example, earliest date to administer, latest date to administer, etc.) 297 */ 298 // syntactic sugar 299 public ImmunizationRecommendationRecommendationDateCriterionComponent addDateCriterion() { //3 300 ImmunizationRecommendationRecommendationDateCriterionComponent t = new ImmunizationRecommendationRecommendationDateCriterionComponent(); 301 if (this.dateCriterion == null) 302 this.dateCriterion = new ArrayList<ImmunizationRecommendationRecommendationDateCriterionComponent>(); 303 this.dateCriterion.add(t); 304 return t; 305 } 306 307 // syntactic sugar 308 public ImmunizationRecommendationRecommendationComponent addDateCriterion(ImmunizationRecommendationRecommendationDateCriterionComponent t) { //3 309 if (t == null) 310 return this; 311 if (this.dateCriterion == null) 312 this.dateCriterion = new ArrayList<ImmunizationRecommendationRecommendationDateCriterionComponent>(); 313 this.dateCriterion.add(t); 314 return this; 315 } 316 317 /** 318 * @return {@link #protocol} (Contains information about the protocol under which the vaccine was administered.) 319 */ 320 public ImmunizationRecommendationRecommendationProtocolComponent getProtocol() { 321 if (this.protocol == null) 322 if (Configuration.errorOnAutoCreate()) 323 throw new Error("Attempt to auto-create ImmunizationRecommendationRecommendationComponent.protocol"); 324 else if (Configuration.doAutoCreate()) 325 this.protocol = new ImmunizationRecommendationRecommendationProtocolComponent(); // cc 326 return this.protocol; 327 } 328 329 public boolean hasProtocol() { 330 return this.protocol != null && !this.protocol.isEmpty(); 331 } 332 333 /** 334 * @param value {@link #protocol} (Contains information about the protocol under which the vaccine was administered.) 335 */ 336 public ImmunizationRecommendationRecommendationComponent setProtocol(ImmunizationRecommendationRecommendationProtocolComponent value) { 337 this.protocol = value; 338 return this; 339 } 340 341 /** 342 * @return {@link #supportingImmunization} (Immunization event history that supports the status and recommendation.) 343 */ 344 public List<Reference> getSupportingImmunization() { 345 if (this.supportingImmunization == null) 346 this.supportingImmunization = new ArrayList<Reference>(); 347 return this.supportingImmunization; 348 } 349 350 public boolean hasSupportingImmunization() { 351 if (this.supportingImmunization == null) 352 return false; 353 for (Reference item : this.supportingImmunization) 354 if (!item.isEmpty()) 355 return true; 356 return false; 357 } 358 359 /** 360 * @return {@link #supportingImmunization} (Immunization event history that supports the status and recommendation.) 361 */ 362 // syntactic sugar 363 public Reference addSupportingImmunization() { //3 364 Reference t = new Reference(); 365 if (this.supportingImmunization == null) 366 this.supportingImmunization = new ArrayList<Reference>(); 367 this.supportingImmunization.add(t); 368 return t; 369 } 370 371 // syntactic sugar 372 public ImmunizationRecommendationRecommendationComponent addSupportingImmunization(Reference t) { //3 373 if (t == null) 374 return this; 375 if (this.supportingImmunization == null) 376 this.supportingImmunization = new ArrayList<Reference>(); 377 this.supportingImmunization.add(t); 378 return this; 379 } 380 381 /** 382 * @return {@link #supportingImmunization} (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. Immunization event history that supports the status and recommendation.) 383 */ 384 public List<Immunization> getSupportingImmunizationTarget() { 385 if (this.supportingImmunizationTarget == null) 386 this.supportingImmunizationTarget = new ArrayList<Immunization>(); 387 return this.supportingImmunizationTarget; 388 } 389 390 // syntactic sugar 391 /** 392 * @return {@link #supportingImmunization} (Add an actual object that is the target of the reference. The reference library doesn't use these, but you can use this to hold the resources if you resolvethemt. Immunization event history that supports the status and recommendation.) 393 */ 394 public Immunization addSupportingImmunizationTarget() { 395 Immunization r = new Immunization(); 396 if (this.supportingImmunizationTarget == null) 397 this.supportingImmunizationTarget = new ArrayList<Immunization>(); 398 this.supportingImmunizationTarget.add(r); 399 return r; 400 } 401 402 /** 403 * @return {@link #supportingPatientInformation} (Patient Information that supports the status and recommendation. This includes patient observations, adverse reactions and allergy/intolerance information.) 404 */ 405 public List<Reference> getSupportingPatientInformation() { 406 if (this.supportingPatientInformation == null) 407 this.supportingPatientInformation = new ArrayList<Reference>(); 408 return this.supportingPatientInformation; 409 } 410 411 public boolean hasSupportingPatientInformation() { 412 if (this.supportingPatientInformation == null) 413 return false; 414 for (Reference item : this.supportingPatientInformation) 415 if (!item.isEmpty()) 416 return true; 417 return false; 418 } 419 420 /** 421 * @return {@link #supportingPatientInformation} (Patient Information that supports the status and recommendation. This includes patient observations, adverse reactions and allergy/intolerance information.) 422 */ 423 // syntactic sugar 424 public Reference addSupportingPatientInformation() { //3 425 Reference t = new Reference(); 426 if (this.supportingPatientInformation == null) 427 this.supportingPatientInformation = new ArrayList<Reference>(); 428 this.supportingPatientInformation.add(t); 429 return t; 430 } 431 432 // syntactic sugar 433 public ImmunizationRecommendationRecommendationComponent addSupportingPatientInformation(Reference t) { //3 434 if (t == null) 435 return this; 436 if (this.supportingPatientInformation == null) 437 this.supportingPatientInformation = new ArrayList<Reference>(); 438 this.supportingPatientInformation.add(t); 439 return this; 440 } 441 442 /** 443 * @return {@link #supportingPatientInformation} (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. Patient Information that supports the status and recommendation. This includes patient observations, adverse reactions and allergy/intolerance information.) 444 */ 445 public List<Resource> getSupportingPatientInformationTarget() { 446 if (this.supportingPatientInformationTarget == null) 447 this.supportingPatientInformationTarget = new ArrayList<Resource>(); 448 return this.supportingPatientInformationTarget; 449 } 450 451 protected void listChildren(List<Property> childrenList) { 452 super.listChildren(childrenList); 453 childrenList.add(new Property("date", "dateTime", "The date the immunization recommendation was created.", 0, java.lang.Integer.MAX_VALUE, date)); 454 childrenList.add(new Property("vaccineCode", "CodeableConcept", "Vaccine that pertains to the recommendation.", 0, java.lang.Integer.MAX_VALUE, vaccineCode)); 455 childrenList.add(new Property("doseNumber", "positiveInt", "This indicates the next recommended dose number (e.g. dose 2 is the next recommended dose).", 0, java.lang.Integer.MAX_VALUE, doseNumber)); 456 childrenList.add(new Property("forecastStatus", "CodeableConcept", "Vaccine administration status.", 0, java.lang.Integer.MAX_VALUE, forecastStatus)); 457 childrenList.add(new Property("dateCriterion", "", "Vaccine date recommendations. For example, earliest date to administer, latest date to administer, etc.", 0, java.lang.Integer.MAX_VALUE, dateCriterion)); 458 childrenList.add(new Property("protocol", "", "Contains information about the protocol under which the vaccine was administered.", 0, java.lang.Integer.MAX_VALUE, protocol)); 459 childrenList.add(new Property("supportingImmunization", "Reference(Immunization)", "Immunization event history that supports the status and recommendation.", 0, java.lang.Integer.MAX_VALUE, supportingImmunization)); 460 childrenList.add(new Property("supportingPatientInformation", "Reference(Observation|AllergyIntolerance)", "Patient Information that supports the status and recommendation. This includes patient observations, adverse reactions and allergy/intolerance information.", 0, java.lang.Integer.MAX_VALUE, supportingPatientInformation)); 461 } 462 463 @Override 464 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 465 switch (hash) { 466 case 3076014: /*date*/ return this.date == null ? new Base[0] : new Base[] {this.date}; // DateTimeType 467 case 664556354: /*vaccineCode*/ return this.vaccineCode == null ? new Base[0] : new Base[] {this.vaccineCode}; // CodeableConcept 468 case -887709242: /*doseNumber*/ return this.doseNumber == null ? new Base[0] : new Base[] {this.doseNumber}; // PositiveIntType 469 case 1904598477: /*forecastStatus*/ return this.forecastStatus == null ? new Base[0] : new Base[] {this.forecastStatus}; // CodeableConcept 470 case 2087518867: /*dateCriterion*/ return this.dateCriterion == null ? new Base[0] : this.dateCriterion.toArray(new Base[this.dateCriterion.size()]); // ImmunizationRecommendationRecommendationDateCriterionComponent 471 case -989163880: /*protocol*/ return this.protocol == null ? new Base[0] : new Base[] {this.protocol}; // ImmunizationRecommendationRecommendationProtocolComponent 472 case 1171592021: /*supportingImmunization*/ return this.supportingImmunization == null ? new Base[0] : this.supportingImmunization.toArray(new Base[this.supportingImmunization.size()]); // Reference 473 case -1234160646: /*supportingPatientInformation*/ return this.supportingPatientInformation == null ? new Base[0] : this.supportingPatientInformation.toArray(new Base[this.supportingPatientInformation.size()]); // Reference 474 default: return super.getProperty(hash, name, checkValid); 475 } 476 477 } 478 479 @Override 480 public void setProperty(int hash, String name, Base value) throws FHIRException { 481 switch (hash) { 482 case 3076014: // date 483 this.date = castToDateTime(value); // DateTimeType 484 break; 485 case 664556354: // vaccineCode 486 this.vaccineCode = castToCodeableConcept(value); // CodeableConcept 487 break; 488 case -887709242: // doseNumber 489 this.doseNumber = castToPositiveInt(value); // PositiveIntType 490 break; 491 case 1904598477: // forecastStatus 492 this.forecastStatus = castToCodeableConcept(value); // CodeableConcept 493 break; 494 case 2087518867: // dateCriterion 495 this.getDateCriterion().add((ImmunizationRecommendationRecommendationDateCriterionComponent) value); // ImmunizationRecommendationRecommendationDateCriterionComponent 496 break; 497 case -989163880: // protocol 498 this.protocol = (ImmunizationRecommendationRecommendationProtocolComponent) value; // ImmunizationRecommendationRecommendationProtocolComponent 499 break; 500 case 1171592021: // supportingImmunization 501 this.getSupportingImmunization().add(castToReference(value)); // Reference 502 break; 503 case -1234160646: // supportingPatientInformation 504 this.getSupportingPatientInformation().add(castToReference(value)); // Reference 505 break; 506 default: super.setProperty(hash, name, value); 507 } 508 509 } 510 511 @Override 512 public void setProperty(String name, Base value) throws FHIRException { 513 if (name.equals("date")) 514 this.date = castToDateTime(value); // DateTimeType 515 else if (name.equals("vaccineCode")) 516 this.vaccineCode = castToCodeableConcept(value); // CodeableConcept 517 else if (name.equals("doseNumber")) 518 this.doseNumber = castToPositiveInt(value); // PositiveIntType 519 else if (name.equals("forecastStatus")) 520 this.forecastStatus = castToCodeableConcept(value); // CodeableConcept 521 else if (name.equals("dateCriterion")) 522 this.getDateCriterion().add((ImmunizationRecommendationRecommendationDateCriterionComponent) value); 523 else if (name.equals("protocol")) 524 this.protocol = (ImmunizationRecommendationRecommendationProtocolComponent) value; // ImmunizationRecommendationRecommendationProtocolComponent 525 else if (name.equals("supportingImmunization")) 526 this.getSupportingImmunization().add(castToReference(value)); 527 else if (name.equals("supportingPatientInformation")) 528 this.getSupportingPatientInformation().add(castToReference(value)); 529 else 530 super.setProperty(name, value); 531 } 532 533 @Override 534 public Base makeProperty(int hash, String name) throws FHIRException { 535 switch (hash) { 536 case 3076014: throw new FHIRException("Cannot make property date as it is not a complex type"); // DateTimeType 537 case 664556354: return getVaccineCode(); // CodeableConcept 538 case -887709242: throw new FHIRException("Cannot make property doseNumber as it is not a complex type"); // PositiveIntType 539 case 1904598477: return getForecastStatus(); // CodeableConcept 540 case 2087518867: return addDateCriterion(); // ImmunizationRecommendationRecommendationDateCriterionComponent 541 case -989163880: return getProtocol(); // ImmunizationRecommendationRecommendationProtocolComponent 542 case 1171592021: return addSupportingImmunization(); // Reference 543 case -1234160646: return addSupportingPatientInformation(); // Reference 544 default: return super.makeProperty(hash, name); 545 } 546 547 } 548 549 @Override 550 public Base addChild(String name) throws FHIRException { 551 if (name.equals("date")) { 552 throw new FHIRException("Cannot call addChild on a primitive type ImmunizationRecommendation.date"); 553 } 554 else if (name.equals("vaccineCode")) { 555 this.vaccineCode = new CodeableConcept(); 556 return this.vaccineCode; 557 } 558 else if (name.equals("doseNumber")) { 559 throw new FHIRException("Cannot call addChild on a primitive type ImmunizationRecommendation.doseNumber"); 560 } 561 else if (name.equals("forecastStatus")) { 562 this.forecastStatus = new CodeableConcept(); 563 return this.forecastStatus; 564 } 565 else if (name.equals("dateCriterion")) { 566 return addDateCriterion(); 567 } 568 else if (name.equals("protocol")) { 569 this.protocol = new ImmunizationRecommendationRecommendationProtocolComponent(); 570 return this.protocol; 571 } 572 else if (name.equals("supportingImmunization")) { 573 return addSupportingImmunization(); 574 } 575 else if (name.equals("supportingPatientInformation")) { 576 return addSupportingPatientInformation(); 577 } 578 else 579 return super.addChild(name); 580 } 581 582 public ImmunizationRecommendationRecommendationComponent copy() { 583 ImmunizationRecommendationRecommendationComponent dst = new ImmunizationRecommendationRecommendationComponent(); 584 copyValues(dst); 585 dst.date = date == null ? null : date.copy(); 586 dst.vaccineCode = vaccineCode == null ? null : vaccineCode.copy(); 587 dst.doseNumber = doseNumber == null ? null : doseNumber.copy(); 588 dst.forecastStatus = forecastStatus == null ? null : forecastStatus.copy(); 589 if (dateCriterion != null) { 590 dst.dateCriterion = new ArrayList<ImmunizationRecommendationRecommendationDateCriterionComponent>(); 591 for (ImmunizationRecommendationRecommendationDateCriterionComponent i : dateCriterion) 592 dst.dateCriterion.add(i.copy()); 593 }; 594 dst.protocol = protocol == null ? null : protocol.copy(); 595 if (supportingImmunization != null) { 596 dst.supportingImmunization = new ArrayList<Reference>(); 597 for (Reference i : supportingImmunization) 598 dst.supportingImmunization.add(i.copy()); 599 }; 600 if (supportingPatientInformation != null) { 601 dst.supportingPatientInformation = new ArrayList<Reference>(); 602 for (Reference i : supportingPatientInformation) 603 dst.supportingPatientInformation.add(i.copy()); 604 }; 605 return dst; 606 } 607 608 @Override 609 public boolean equalsDeep(Base other) { 610 if (!super.equalsDeep(other)) 611 return false; 612 if (!(other instanceof ImmunizationRecommendationRecommendationComponent)) 613 return false; 614 ImmunizationRecommendationRecommendationComponent o = (ImmunizationRecommendationRecommendationComponent) other; 615 return compareDeep(date, o.date, true) && compareDeep(vaccineCode, o.vaccineCode, true) && compareDeep(doseNumber, o.doseNumber, true) 616 && compareDeep(forecastStatus, o.forecastStatus, true) && compareDeep(dateCriterion, o.dateCriterion, true) 617 && compareDeep(protocol, o.protocol, true) && compareDeep(supportingImmunization, o.supportingImmunization, true) 618 && compareDeep(supportingPatientInformation, o.supportingPatientInformation, true); 619 } 620 621 @Override 622 public boolean equalsShallow(Base other) { 623 if (!super.equalsShallow(other)) 624 return false; 625 if (!(other instanceof ImmunizationRecommendationRecommendationComponent)) 626 return false; 627 ImmunizationRecommendationRecommendationComponent o = (ImmunizationRecommendationRecommendationComponent) other; 628 return compareValues(date, o.date, true) && compareValues(doseNumber, o.doseNumber, true); 629 } 630 631 public boolean isEmpty() { 632 return super.isEmpty() && (date == null || date.isEmpty()) && (vaccineCode == null || vaccineCode.isEmpty()) 633 && (doseNumber == null || doseNumber.isEmpty()) && (forecastStatus == null || forecastStatus.isEmpty()) 634 && (dateCriterion == null || dateCriterion.isEmpty()) && (protocol == null || protocol.isEmpty()) 635 && (supportingImmunization == null || supportingImmunization.isEmpty()) && (supportingPatientInformation == null || supportingPatientInformation.isEmpty()) 636 ; 637 } 638 639 public String fhirType() { 640 return "ImmunizationRecommendation.recommendation"; 641 642 } 643 644 } 645 646 @Block() 647 public static class ImmunizationRecommendationRecommendationDateCriterionComponent extends BackboneElement implements IBaseBackboneElement { 648 /** 649 * Date classification of recommendation. For example, earliest date to give, latest date to give, etc. 650 */ 651 @Child(name = "code", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=false) 652 @Description(shortDefinition="Type of date", formalDefinition="Date classification of recommendation. For example, earliest date to give, latest date to give, etc." ) 653 protected CodeableConcept code; 654 655 /** 656 * The date whose meaning is specified by dateCriterion.code. 657 */ 658 @Child(name = "value", type = {DateTimeType.class}, order=2, min=1, max=1, modifier=false, summary=false) 659 @Description(shortDefinition="Recommended date", formalDefinition="The date whose meaning is specified by dateCriterion.code." ) 660 protected DateTimeType value; 661 662 private static final long serialVersionUID = 1036994566L; 663 664 /** 665 * Constructor 666 */ 667 public ImmunizationRecommendationRecommendationDateCriterionComponent() { 668 super(); 669 } 670 671 /** 672 * Constructor 673 */ 674 public ImmunizationRecommendationRecommendationDateCriterionComponent(CodeableConcept code, DateTimeType value) { 675 super(); 676 this.code = code; 677 this.value = value; 678 } 679 680 /** 681 * @return {@link #code} (Date classification of recommendation. For example, earliest date to give, latest date to give, etc.) 682 */ 683 public CodeableConcept getCode() { 684 if (this.code == null) 685 if (Configuration.errorOnAutoCreate()) 686 throw new Error("Attempt to auto-create ImmunizationRecommendationRecommendationDateCriterionComponent.code"); 687 else if (Configuration.doAutoCreate()) 688 this.code = new CodeableConcept(); // cc 689 return this.code; 690 } 691 692 public boolean hasCode() { 693 return this.code != null && !this.code.isEmpty(); 694 } 695 696 /** 697 * @param value {@link #code} (Date classification of recommendation. For example, earliest date to give, latest date to give, etc.) 698 */ 699 public ImmunizationRecommendationRecommendationDateCriterionComponent setCode(CodeableConcept value) { 700 this.code = value; 701 return this; 702 } 703 704 /** 705 * @return {@link #value} (The date whose meaning is specified by dateCriterion.code.). This is the underlying object with id, value and extensions. The accessor "getValue" gives direct access to the value 706 */ 707 public DateTimeType getValueElement() { 708 if (this.value == null) 709 if (Configuration.errorOnAutoCreate()) 710 throw new Error("Attempt to auto-create ImmunizationRecommendationRecommendationDateCriterionComponent.value"); 711 else if (Configuration.doAutoCreate()) 712 this.value = new DateTimeType(); // bb 713 return this.value; 714 } 715 716 public boolean hasValueElement() { 717 return this.value != null && !this.value.isEmpty(); 718 } 719 720 public boolean hasValue() { 721 return this.value != null && !this.value.isEmpty(); 722 } 723 724 /** 725 * @param value {@link #value} (The date whose meaning is specified by dateCriterion.code.). This is the underlying object with id, value and extensions. The accessor "getValue" gives direct access to the value 726 */ 727 public ImmunizationRecommendationRecommendationDateCriterionComponent setValueElement(DateTimeType value) { 728 this.value = value; 729 return this; 730 } 731 732 /** 733 * @return The date whose meaning is specified by dateCriterion.code. 734 */ 735 public Date getValue() { 736 return this.value == null ? null : this.value.getValue(); 737 } 738 739 /** 740 * @param value The date whose meaning is specified by dateCriterion.code. 741 */ 742 public ImmunizationRecommendationRecommendationDateCriterionComponent setValue(Date value) { 743 if (this.value == null) 744 this.value = new DateTimeType(); 745 this.value.setValue(value); 746 return this; 747 } 748 749 protected void listChildren(List<Property> childrenList) { 750 super.listChildren(childrenList); 751 childrenList.add(new Property("code", "CodeableConcept", "Date classification of recommendation. For example, earliest date to give, latest date to give, etc.", 0, java.lang.Integer.MAX_VALUE, code)); 752 childrenList.add(new Property("value", "dateTime", "The date whose meaning is specified by dateCriterion.code.", 0, java.lang.Integer.MAX_VALUE, value)); 753 } 754 755 @Override 756 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 757 switch (hash) { 758 case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeableConcept 759 case 111972721: /*value*/ return this.value == null ? new Base[0] : new Base[] {this.value}; // DateTimeType 760 default: return super.getProperty(hash, name, checkValid); 761 } 762 763 } 764 765 @Override 766 public void setProperty(int hash, String name, Base value) throws FHIRException { 767 switch (hash) { 768 case 3059181: // code 769 this.code = castToCodeableConcept(value); // CodeableConcept 770 break; 771 case 111972721: // value 772 this.value = castToDateTime(value); // DateTimeType 773 break; 774 default: super.setProperty(hash, name, value); 775 } 776 777 } 778 779 @Override 780 public void setProperty(String name, Base value) throws FHIRException { 781 if (name.equals("code")) 782 this.code = castToCodeableConcept(value); // CodeableConcept 783 else if (name.equals("value")) 784 this.value = castToDateTime(value); // DateTimeType 785 else 786 super.setProperty(name, value); 787 } 788 789 @Override 790 public Base makeProperty(int hash, String name) throws FHIRException { 791 switch (hash) { 792 case 3059181: return getCode(); // CodeableConcept 793 case 111972721: throw new FHIRException("Cannot make property value as it is not a complex type"); // DateTimeType 794 default: return super.makeProperty(hash, name); 795 } 796 797 } 798 799 @Override 800 public Base addChild(String name) throws FHIRException { 801 if (name.equals("code")) { 802 this.code = new CodeableConcept(); 803 return this.code; 804 } 805 else if (name.equals("value")) { 806 throw new FHIRException("Cannot call addChild on a primitive type ImmunizationRecommendation.value"); 807 } 808 else 809 return super.addChild(name); 810 } 811 812 public ImmunizationRecommendationRecommendationDateCriterionComponent copy() { 813 ImmunizationRecommendationRecommendationDateCriterionComponent dst = new ImmunizationRecommendationRecommendationDateCriterionComponent(); 814 copyValues(dst); 815 dst.code = code == null ? null : code.copy(); 816 dst.value = value == null ? null : value.copy(); 817 return dst; 818 } 819 820 @Override 821 public boolean equalsDeep(Base other) { 822 if (!super.equalsDeep(other)) 823 return false; 824 if (!(other instanceof ImmunizationRecommendationRecommendationDateCriterionComponent)) 825 return false; 826 ImmunizationRecommendationRecommendationDateCriterionComponent o = (ImmunizationRecommendationRecommendationDateCriterionComponent) other; 827 return compareDeep(code, o.code, true) && compareDeep(value, o.value, true); 828 } 829 830 @Override 831 public boolean equalsShallow(Base other) { 832 if (!super.equalsShallow(other)) 833 return false; 834 if (!(other instanceof ImmunizationRecommendationRecommendationDateCriterionComponent)) 835 return false; 836 ImmunizationRecommendationRecommendationDateCriterionComponent o = (ImmunizationRecommendationRecommendationDateCriterionComponent) other; 837 return compareValues(value, o.value, true); 838 } 839 840 public boolean isEmpty() { 841 return super.isEmpty() && (code == null || code.isEmpty()) && (value == null || value.isEmpty()) 842 ; 843 } 844 845 public String fhirType() { 846 return "ImmunizationRecommendation.recommendation.dateCriterion"; 847 848 } 849 850 } 851 852 @Block() 853 public static class ImmunizationRecommendationRecommendationProtocolComponent extends BackboneElement implements IBaseBackboneElement { 854 /** 855 * Indicates the nominal position in a series of the next dose. This is the recommended dose number as per a specified protocol. 856 */ 857 @Child(name = "doseSequence", type = {IntegerType.class}, order=1, min=0, max=1, modifier=false, summary=false) 858 @Description(shortDefinition="Dose number within sequence", formalDefinition="Indicates the nominal position in a series of the next dose. This is the recommended dose number as per a specified protocol." ) 859 protected IntegerType doseSequence; 860 861 /** 862 * Contains the description about the protocol under which the vaccine was administered. 863 */ 864 @Child(name = "description", type = {StringType.class}, order=2, min=0, max=1, modifier=false, summary=false) 865 @Description(shortDefinition="Protocol details", formalDefinition="Contains the description about the protocol under which the vaccine was administered." ) 866 protected StringType description; 867 868 /** 869 * Indicates the authority who published the protocol. For example, ACIP. 870 */ 871 @Child(name = "authority", type = {Organization.class}, order=3, min=0, max=1, modifier=false, summary=false) 872 @Description(shortDefinition="Who is responsible for protocol", formalDefinition="Indicates the authority who published the protocol. For example, ACIP." ) 873 protected Reference authority; 874 875 /** 876 * The actual object that is the target of the reference (Indicates the authority who published the protocol. For example, ACIP.) 877 */ 878 protected Organization authorityTarget; 879 880 /** 881 * One possible path to achieve presumed immunity against a disease - within the context of an authority. 882 */ 883 @Child(name = "series", type = {StringType.class}, order=4, min=0, max=1, modifier=false, summary=false) 884 @Description(shortDefinition="Name of vaccination series", formalDefinition="One possible path to achieve presumed immunity against a disease - within the context of an authority." ) 885 protected StringType series; 886 887 private static final long serialVersionUID = -512702014L; 888 889 /** 890 * Constructor 891 */ 892 public ImmunizationRecommendationRecommendationProtocolComponent() { 893 super(); 894 } 895 896 /** 897 * @return {@link #doseSequence} (Indicates the nominal position in a series of the next dose. This is the recommended dose number as per a specified protocol.). This is the underlying object with id, value and extensions. The accessor "getDoseSequence" gives direct access to the value 898 */ 899 public IntegerType getDoseSequenceElement() { 900 if (this.doseSequence == null) 901 if (Configuration.errorOnAutoCreate()) 902 throw new Error("Attempt to auto-create ImmunizationRecommendationRecommendationProtocolComponent.doseSequence"); 903 else if (Configuration.doAutoCreate()) 904 this.doseSequence = new IntegerType(); // bb 905 return this.doseSequence; 906 } 907 908 public boolean hasDoseSequenceElement() { 909 return this.doseSequence != null && !this.doseSequence.isEmpty(); 910 } 911 912 public boolean hasDoseSequence() { 913 return this.doseSequence != null && !this.doseSequence.isEmpty(); 914 } 915 916 /** 917 * @param value {@link #doseSequence} (Indicates the nominal position in a series of the next dose. This is the recommended dose number as per a specified protocol.). This is the underlying object with id, value and extensions. The accessor "getDoseSequence" gives direct access to the value 918 */ 919 public ImmunizationRecommendationRecommendationProtocolComponent setDoseSequenceElement(IntegerType value) { 920 this.doseSequence = value; 921 return this; 922 } 923 924 /** 925 * @return Indicates the nominal position in a series of the next dose. This is the recommended dose number as per a specified protocol. 926 */ 927 public int getDoseSequence() { 928 return this.doseSequence == null || this.doseSequence.isEmpty() ? 0 : this.doseSequence.getValue(); 929 } 930 931 /** 932 * @param value Indicates the nominal position in a series of the next dose. This is the recommended dose number as per a specified protocol. 933 */ 934 public ImmunizationRecommendationRecommendationProtocolComponent setDoseSequence(int value) { 935 if (this.doseSequence == null) 936 this.doseSequence = new IntegerType(); 937 this.doseSequence.setValue(value); 938 return this; 939 } 940 941 /** 942 * @return {@link #description} (Contains the description about the protocol under which the vaccine was administered.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value 943 */ 944 public StringType getDescriptionElement() { 945 if (this.description == null) 946 if (Configuration.errorOnAutoCreate()) 947 throw new Error("Attempt to auto-create ImmunizationRecommendationRecommendationProtocolComponent.description"); 948 else if (Configuration.doAutoCreate()) 949 this.description = new StringType(); // bb 950 return this.description; 951 } 952 953 public boolean hasDescriptionElement() { 954 return this.description != null && !this.description.isEmpty(); 955 } 956 957 public boolean hasDescription() { 958 return this.description != null && !this.description.isEmpty(); 959 } 960 961 /** 962 * @param value {@link #description} (Contains the description about the protocol under which the vaccine was administered.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value 963 */ 964 public ImmunizationRecommendationRecommendationProtocolComponent setDescriptionElement(StringType value) { 965 this.description = value; 966 return this; 967 } 968 969 /** 970 * @return Contains the description about the protocol under which the vaccine was administered. 971 */ 972 public String getDescription() { 973 return this.description == null ? null : this.description.getValue(); 974 } 975 976 /** 977 * @param value Contains the description about the protocol under which the vaccine was administered. 978 */ 979 public ImmunizationRecommendationRecommendationProtocolComponent setDescription(String value) { 980 if (Utilities.noString(value)) 981 this.description = null; 982 else { 983 if (this.description == null) 984 this.description = new StringType(); 985 this.description.setValue(value); 986 } 987 return this; 988 } 989 990 /** 991 * @return {@link #authority} (Indicates the authority who published the protocol. For example, ACIP.) 992 */ 993 public Reference getAuthority() { 994 if (this.authority == null) 995 if (Configuration.errorOnAutoCreate()) 996 throw new Error("Attempt to auto-create ImmunizationRecommendationRecommendationProtocolComponent.authority"); 997 else if (Configuration.doAutoCreate()) 998 this.authority = new Reference(); // cc 999 return this.authority; 1000 } 1001 1002 public boolean hasAuthority() { 1003 return this.authority != null && !this.authority.isEmpty(); 1004 } 1005 1006 /** 1007 * @param value {@link #authority} (Indicates the authority who published the protocol. For example, ACIP.) 1008 */ 1009 public ImmunizationRecommendationRecommendationProtocolComponent setAuthority(Reference value) { 1010 this.authority = value; 1011 return this; 1012 } 1013 1014 /** 1015 * @return {@link #authority} 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. (Indicates the authority who published the protocol. For example, ACIP.) 1016 */ 1017 public Organization getAuthorityTarget() { 1018 if (this.authorityTarget == null) 1019 if (Configuration.errorOnAutoCreate()) 1020 throw new Error("Attempt to auto-create ImmunizationRecommendationRecommendationProtocolComponent.authority"); 1021 else if (Configuration.doAutoCreate()) 1022 this.authorityTarget = new Organization(); // aa 1023 return this.authorityTarget; 1024 } 1025 1026 /** 1027 * @param value {@link #authority} 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. (Indicates the authority who published the protocol. For example, ACIP.) 1028 */ 1029 public ImmunizationRecommendationRecommendationProtocolComponent setAuthorityTarget(Organization value) { 1030 this.authorityTarget = value; 1031 return this; 1032 } 1033 1034 /** 1035 * @return {@link #series} (One possible path to achieve presumed immunity against a disease - within the context of an authority.). This is the underlying object with id, value and extensions. The accessor "getSeries" gives direct access to the value 1036 */ 1037 public StringType getSeriesElement() { 1038 if (this.series == null) 1039 if (Configuration.errorOnAutoCreate()) 1040 throw new Error("Attempt to auto-create ImmunizationRecommendationRecommendationProtocolComponent.series"); 1041 else if (Configuration.doAutoCreate()) 1042 this.series = new StringType(); // bb 1043 return this.series; 1044 } 1045 1046 public boolean hasSeriesElement() { 1047 return this.series != null && !this.series.isEmpty(); 1048 } 1049 1050 public boolean hasSeries() { 1051 return this.series != null && !this.series.isEmpty(); 1052 } 1053 1054 /** 1055 * @param value {@link #series} (One possible path to achieve presumed immunity against a disease - within the context of an authority.). This is the underlying object with id, value and extensions. The accessor "getSeries" gives direct access to the value 1056 */ 1057 public ImmunizationRecommendationRecommendationProtocolComponent setSeriesElement(StringType value) { 1058 this.series = value; 1059 return this; 1060 } 1061 1062 /** 1063 * @return One possible path to achieve presumed immunity against a disease - within the context of an authority. 1064 */ 1065 public String getSeries() { 1066 return this.series == null ? null : this.series.getValue(); 1067 } 1068 1069 /** 1070 * @param value One possible path to achieve presumed immunity against a disease - within the context of an authority. 1071 */ 1072 public ImmunizationRecommendationRecommendationProtocolComponent setSeries(String value) { 1073 if (Utilities.noString(value)) 1074 this.series = null; 1075 else { 1076 if (this.series == null) 1077 this.series = new StringType(); 1078 this.series.setValue(value); 1079 } 1080 return this; 1081 } 1082 1083 protected void listChildren(List<Property> childrenList) { 1084 super.listChildren(childrenList); 1085 childrenList.add(new Property("doseSequence", "integer", "Indicates the nominal position in a series of the next dose. This is the recommended dose number as per a specified protocol.", 0, java.lang.Integer.MAX_VALUE, doseSequence)); 1086 childrenList.add(new Property("description", "string", "Contains the description about the protocol under which the vaccine was administered.", 0, java.lang.Integer.MAX_VALUE, description)); 1087 childrenList.add(new Property("authority", "Reference(Organization)", "Indicates the authority who published the protocol. For example, ACIP.", 0, java.lang.Integer.MAX_VALUE, authority)); 1088 childrenList.add(new Property("series", "string", "One possible path to achieve presumed immunity against a disease - within the context of an authority.", 0, java.lang.Integer.MAX_VALUE, series)); 1089 } 1090 1091 @Override 1092 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1093 switch (hash) { 1094 case 550933246: /*doseSequence*/ return this.doseSequence == null ? new Base[0] : new Base[] {this.doseSequence}; // IntegerType 1095 case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // StringType 1096 case 1475610435: /*authority*/ return this.authority == null ? new Base[0] : new Base[] {this.authority}; // Reference 1097 case -905838985: /*series*/ return this.series == null ? new Base[0] : new Base[] {this.series}; // StringType 1098 default: return super.getProperty(hash, name, checkValid); 1099 } 1100 1101 } 1102 1103 @Override 1104 public void setProperty(int hash, String name, Base value) throws FHIRException { 1105 switch (hash) { 1106 case 550933246: // doseSequence 1107 this.doseSequence = castToInteger(value); // IntegerType 1108 break; 1109 case -1724546052: // description 1110 this.description = castToString(value); // StringType 1111 break; 1112 case 1475610435: // authority 1113 this.authority = castToReference(value); // Reference 1114 break; 1115 case -905838985: // series 1116 this.series = castToString(value); // StringType 1117 break; 1118 default: super.setProperty(hash, name, value); 1119 } 1120 1121 } 1122 1123 @Override 1124 public void setProperty(String name, Base value) throws FHIRException { 1125 if (name.equals("doseSequence")) 1126 this.doseSequence = castToInteger(value); // IntegerType 1127 else if (name.equals("description")) 1128 this.description = castToString(value); // StringType 1129 else if (name.equals("authority")) 1130 this.authority = castToReference(value); // Reference 1131 else if (name.equals("series")) 1132 this.series = castToString(value); // StringType 1133 else 1134 super.setProperty(name, value); 1135 } 1136 1137 @Override 1138 public Base makeProperty(int hash, String name) throws FHIRException { 1139 switch (hash) { 1140 case 550933246: throw new FHIRException("Cannot make property doseSequence as it is not a complex type"); // IntegerType 1141 case -1724546052: throw new FHIRException("Cannot make property description as it is not a complex type"); // StringType 1142 case 1475610435: return getAuthority(); // Reference 1143 case -905838985: throw new FHIRException("Cannot make property series as it is not a complex type"); // StringType 1144 default: return super.makeProperty(hash, name); 1145 } 1146 1147 } 1148 1149 @Override 1150 public Base addChild(String name) throws FHIRException { 1151 if (name.equals("doseSequence")) { 1152 throw new FHIRException("Cannot call addChild on a primitive type ImmunizationRecommendation.doseSequence"); 1153 } 1154 else if (name.equals("description")) { 1155 throw new FHIRException("Cannot call addChild on a primitive type ImmunizationRecommendation.description"); 1156 } 1157 else if (name.equals("authority")) { 1158 this.authority = new Reference(); 1159 return this.authority; 1160 } 1161 else if (name.equals("series")) { 1162 throw new FHIRException("Cannot call addChild on a primitive type ImmunizationRecommendation.series"); 1163 } 1164 else 1165 return super.addChild(name); 1166 } 1167 1168 public ImmunizationRecommendationRecommendationProtocolComponent copy() { 1169 ImmunizationRecommendationRecommendationProtocolComponent dst = new ImmunizationRecommendationRecommendationProtocolComponent(); 1170 copyValues(dst); 1171 dst.doseSequence = doseSequence == null ? null : doseSequence.copy(); 1172 dst.description = description == null ? null : description.copy(); 1173 dst.authority = authority == null ? null : authority.copy(); 1174 dst.series = series == null ? null : series.copy(); 1175 return dst; 1176 } 1177 1178 @Override 1179 public boolean equalsDeep(Base other) { 1180 if (!super.equalsDeep(other)) 1181 return false; 1182 if (!(other instanceof ImmunizationRecommendationRecommendationProtocolComponent)) 1183 return false; 1184 ImmunizationRecommendationRecommendationProtocolComponent o = (ImmunizationRecommendationRecommendationProtocolComponent) other; 1185 return compareDeep(doseSequence, o.doseSequence, true) && compareDeep(description, o.description, true) 1186 && compareDeep(authority, o.authority, true) && compareDeep(series, o.series, true); 1187 } 1188 1189 @Override 1190 public boolean equalsShallow(Base other) { 1191 if (!super.equalsShallow(other)) 1192 return false; 1193 if (!(other instanceof ImmunizationRecommendationRecommendationProtocolComponent)) 1194 return false; 1195 ImmunizationRecommendationRecommendationProtocolComponent o = (ImmunizationRecommendationRecommendationProtocolComponent) other; 1196 return compareValues(doseSequence, o.doseSequence, true) && compareValues(description, o.description, true) 1197 && compareValues(series, o.series, true); 1198 } 1199 1200 public boolean isEmpty() { 1201 return super.isEmpty() && (doseSequence == null || doseSequence.isEmpty()) && (description == null || description.isEmpty()) 1202 && (authority == null || authority.isEmpty()) && (series == null || series.isEmpty()); 1203 } 1204 1205 public String fhirType() { 1206 return "ImmunizationRecommendation.recommendation.protocol"; 1207 1208 } 1209 1210 } 1211 1212 /** 1213 * A unique identifier assigned to this particular recommendation record. 1214 */ 1215 @Child(name = "identifier", type = {Identifier.class}, order=0, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1216 @Description(shortDefinition="Business identifier", formalDefinition="A unique identifier assigned to this particular recommendation record." ) 1217 protected List<Identifier> identifier; 1218 1219 /** 1220 * The patient for whom the recommendations are for. 1221 */ 1222 @Child(name = "patient", type = {Patient.class}, order=1, min=1, max=1, modifier=false, summary=true) 1223 @Description(shortDefinition="Who this profile is for", formalDefinition="The patient for whom the recommendations are for." ) 1224 protected Reference patient; 1225 1226 /** 1227 * The actual object that is the target of the reference (The patient for whom the recommendations are for.) 1228 */ 1229 protected Patient patientTarget; 1230 1231 /** 1232 * Vaccine administration recommendations. 1233 */ 1234 @Child(name = "recommendation", type = {}, order=2, min=1, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1235 @Description(shortDefinition="Vaccine administration recommendations", formalDefinition="Vaccine administration recommendations." ) 1236 protected List<ImmunizationRecommendationRecommendationComponent> recommendation; 1237 1238 private static final long serialVersionUID = 641058495L; 1239 1240 /** 1241 * Constructor 1242 */ 1243 public ImmunizationRecommendation() { 1244 super(); 1245 } 1246 1247 /** 1248 * Constructor 1249 */ 1250 public ImmunizationRecommendation(Reference patient) { 1251 super(); 1252 this.patient = patient; 1253 } 1254 1255 /** 1256 * @return {@link #identifier} (A unique identifier assigned to this particular recommendation record.) 1257 */ 1258 public List<Identifier> getIdentifier() { 1259 if (this.identifier == null) 1260 this.identifier = new ArrayList<Identifier>(); 1261 return this.identifier; 1262 } 1263 1264 public boolean hasIdentifier() { 1265 if (this.identifier == null) 1266 return false; 1267 for (Identifier item : this.identifier) 1268 if (!item.isEmpty()) 1269 return true; 1270 return false; 1271 } 1272 1273 /** 1274 * @return {@link #identifier} (A unique identifier assigned to this particular recommendation record.) 1275 */ 1276 // syntactic sugar 1277 public Identifier addIdentifier() { //3 1278 Identifier t = new Identifier(); 1279 if (this.identifier == null) 1280 this.identifier = new ArrayList<Identifier>(); 1281 this.identifier.add(t); 1282 return t; 1283 } 1284 1285 // syntactic sugar 1286 public ImmunizationRecommendation addIdentifier(Identifier t) { //3 1287 if (t == null) 1288 return this; 1289 if (this.identifier == null) 1290 this.identifier = new ArrayList<Identifier>(); 1291 this.identifier.add(t); 1292 return this; 1293 } 1294 1295 /** 1296 * @return {@link #patient} (The patient for whom the recommendations are for.) 1297 */ 1298 public Reference getPatient() { 1299 if (this.patient == null) 1300 if (Configuration.errorOnAutoCreate()) 1301 throw new Error("Attempt to auto-create ImmunizationRecommendation.patient"); 1302 else if (Configuration.doAutoCreate()) 1303 this.patient = new Reference(); // cc 1304 return this.patient; 1305 } 1306 1307 public boolean hasPatient() { 1308 return this.patient != null && !this.patient.isEmpty(); 1309 } 1310 1311 /** 1312 * @param value {@link #patient} (The patient for whom the recommendations are for.) 1313 */ 1314 public ImmunizationRecommendation setPatient(Reference value) { 1315 this.patient = value; 1316 return this; 1317 } 1318 1319 /** 1320 * @return {@link #patient} 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 for whom the recommendations are for.) 1321 */ 1322 public Patient getPatientTarget() { 1323 if (this.patientTarget == null) 1324 if (Configuration.errorOnAutoCreate()) 1325 throw new Error("Attempt to auto-create ImmunizationRecommendation.patient"); 1326 else if (Configuration.doAutoCreate()) 1327 this.patientTarget = new Patient(); // aa 1328 return this.patientTarget; 1329 } 1330 1331 /** 1332 * @param value {@link #patient} 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 for whom the recommendations are for.) 1333 */ 1334 public ImmunizationRecommendation setPatientTarget(Patient value) { 1335 this.patientTarget = value; 1336 return this; 1337 } 1338 1339 /** 1340 * @return {@link #recommendation} (Vaccine administration recommendations.) 1341 */ 1342 public List<ImmunizationRecommendationRecommendationComponent> getRecommendation() { 1343 if (this.recommendation == null) 1344 this.recommendation = new ArrayList<ImmunizationRecommendationRecommendationComponent>(); 1345 return this.recommendation; 1346 } 1347 1348 public boolean hasRecommendation() { 1349 if (this.recommendation == null) 1350 return false; 1351 for (ImmunizationRecommendationRecommendationComponent item : this.recommendation) 1352 if (!item.isEmpty()) 1353 return true; 1354 return false; 1355 } 1356 1357 /** 1358 * @return {@link #recommendation} (Vaccine administration recommendations.) 1359 */ 1360 // syntactic sugar 1361 public ImmunizationRecommendationRecommendationComponent addRecommendation() { //3 1362 ImmunizationRecommendationRecommendationComponent t = new ImmunizationRecommendationRecommendationComponent(); 1363 if (this.recommendation == null) 1364 this.recommendation = new ArrayList<ImmunizationRecommendationRecommendationComponent>(); 1365 this.recommendation.add(t); 1366 return t; 1367 } 1368 1369 // syntactic sugar 1370 public ImmunizationRecommendation addRecommendation(ImmunizationRecommendationRecommendationComponent t) { //3 1371 if (t == null) 1372 return this; 1373 if (this.recommendation == null) 1374 this.recommendation = new ArrayList<ImmunizationRecommendationRecommendationComponent>(); 1375 this.recommendation.add(t); 1376 return this; 1377 } 1378 1379 protected void listChildren(List<Property> childrenList) { 1380 super.listChildren(childrenList); 1381 childrenList.add(new Property("identifier", "Identifier", "A unique identifier assigned to this particular recommendation record.", 0, java.lang.Integer.MAX_VALUE, identifier)); 1382 childrenList.add(new Property("patient", "Reference(Patient)", "The patient for whom the recommendations are for.", 0, java.lang.Integer.MAX_VALUE, patient)); 1383 childrenList.add(new Property("recommendation", "", "Vaccine administration recommendations.", 0, java.lang.Integer.MAX_VALUE, recommendation)); 1384 } 1385 1386 @Override 1387 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1388 switch (hash) { 1389 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 1390 case -791418107: /*patient*/ return this.patient == null ? new Base[0] : new Base[] {this.patient}; // Reference 1391 case -1028636743: /*recommendation*/ return this.recommendation == null ? new Base[0] : this.recommendation.toArray(new Base[this.recommendation.size()]); // ImmunizationRecommendationRecommendationComponent 1392 default: return super.getProperty(hash, name, checkValid); 1393 } 1394 1395 } 1396 1397 @Override 1398 public void setProperty(int hash, String name, Base value) throws FHIRException { 1399 switch (hash) { 1400 case -1618432855: // identifier 1401 this.getIdentifier().add(castToIdentifier(value)); // Identifier 1402 break; 1403 case -791418107: // patient 1404 this.patient = castToReference(value); // Reference 1405 break; 1406 case -1028636743: // recommendation 1407 this.getRecommendation().add((ImmunizationRecommendationRecommendationComponent) value); // ImmunizationRecommendationRecommendationComponent 1408 break; 1409 default: super.setProperty(hash, name, value); 1410 } 1411 1412 } 1413 1414 @Override 1415 public void setProperty(String name, Base value) throws FHIRException { 1416 if (name.equals("identifier")) 1417 this.getIdentifier().add(castToIdentifier(value)); 1418 else if (name.equals("patient")) 1419 this.patient = castToReference(value); // Reference 1420 else if (name.equals("recommendation")) 1421 this.getRecommendation().add((ImmunizationRecommendationRecommendationComponent) value); 1422 else 1423 super.setProperty(name, value); 1424 } 1425 1426 @Override 1427 public Base makeProperty(int hash, String name) throws FHIRException { 1428 switch (hash) { 1429 case -1618432855: return addIdentifier(); // Identifier 1430 case -791418107: return getPatient(); // Reference 1431 case -1028636743: return addRecommendation(); // ImmunizationRecommendationRecommendationComponent 1432 default: return super.makeProperty(hash, name); 1433 } 1434 1435 } 1436 1437 @Override 1438 public Base addChild(String name) throws FHIRException { 1439 if (name.equals("identifier")) { 1440 return addIdentifier(); 1441 } 1442 else if (name.equals("patient")) { 1443 this.patient = new Reference(); 1444 return this.patient; 1445 } 1446 else if (name.equals("recommendation")) { 1447 return addRecommendation(); 1448 } 1449 else 1450 return super.addChild(name); 1451 } 1452 1453 public String fhirType() { 1454 return "ImmunizationRecommendation"; 1455 1456 } 1457 1458 public ImmunizationRecommendation copy() { 1459 ImmunizationRecommendation dst = new ImmunizationRecommendation(); 1460 copyValues(dst); 1461 if (identifier != null) { 1462 dst.identifier = new ArrayList<Identifier>(); 1463 for (Identifier i : identifier) 1464 dst.identifier.add(i.copy()); 1465 }; 1466 dst.patient = patient == null ? null : patient.copy(); 1467 if (recommendation != null) { 1468 dst.recommendation = new ArrayList<ImmunizationRecommendationRecommendationComponent>(); 1469 for (ImmunizationRecommendationRecommendationComponent i : recommendation) 1470 dst.recommendation.add(i.copy()); 1471 }; 1472 return dst; 1473 } 1474 1475 protected ImmunizationRecommendation typedCopy() { 1476 return copy(); 1477 } 1478 1479 @Override 1480 public boolean equalsDeep(Base other) { 1481 if (!super.equalsDeep(other)) 1482 return false; 1483 if (!(other instanceof ImmunizationRecommendation)) 1484 return false; 1485 ImmunizationRecommendation o = (ImmunizationRecommendation) other; 1486 return compareDeep(identifier, o.identifier, true) && compareDeep(patient, o.patient, true) && compareDeep(recommendation, o.recommendation, true) 1487 ; 1488 } 1489 1490 @Override 1491 public boolean equalsShallow(Base other) { 1492 if (!super.equalsShallow(other)) 1493 return false; 1494 if (!(other instanceof ImmunizationRecommendation)) 1495 return false; 1496 ImmunizationRecommendation o = (ImmunizationRecommendation) other; 1497 return true; 1498 } 1499 1500 public boolean isEmpty() { 1501 return super.isEmpty() && (identifier == null || identifier.isEmpty()) && (patient == null || patient.isEmpty()) 1502 && (recommendation == null || recommendation.isEmpty()); 1503 } 1504 1505 @Override 1506 public ResourceType getResourceType() { 1507 return ResourceType.ImmunizationRecommendation; 1508 } 1509 1510 /** 1511 * Search parameter: <b>information</b> 1512 * <p> 1513 * Description: <b>Patient observations supporting recommendation</b><br> 1514 * Type: <b>reference</b><br> 1515 * Path: <b>ImmunizationRecommendation.recommendation.supportingPatientInformation</b><br> 1516 * </p> 1517 */ 1518 @SearchParamDefinition(name="information", path="ImmunizationRecommendation.recommendation.supportingPatientInformation", description="Patient observations supporting recommendation", type="reference" ) 1519 public static final String SP_INFORMATION = "information"; 1520 /** 1521 * <b>Fluent Client</b> search parameter constant for <b>information</b> 1522 * <p> 1523 * Description: <b>Patient observations supporting recommendation</b><br> 1524 * Type: <b>reference</b><br> 1525 * Path: <b>ImmunizationRecommendation.recommendation.supportingPatientInformation</b><br> 1526 * </p> 1527 */ 1528 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam INFORMATION = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_INFORMATION); 1529 1530/** 1531 * Constant for fluent queries to be used to add include statements. Specifies 1532 * the path value of "<b>ImmunizationRecommendation:information</b>". 1533 */ 1534 public static final ca.uhn.fhir.model.api.Include INCLUDE_INFORMATION = new ca.uhn.fhir.model.api.Include("ImmunizationRecommendation:information").toLocked(); 1535 1536 /** 1537 * Search parameter: <b>dose-sequence</b> 1538 * <p> 1539 * Description: <b>Dose number within sequence</b><br> 1540 * Type: <b>number</b><br> 1541 * Path: <b>ImmunizationRecommendation.recommendation.protocol.doseSequence</b><br> 1542 * </p> 1543 */ 1544 @SearchParamDefinition(name="dose-sequence", path="ImmunizationRecommendation.recommendation.protocol.doseSequence", description="Dose number within sequence", type="number" ) 1545 public static final String SP_DOSE_SEQUENCE = "dose-sequence"; 1546 /** 1547 * <b>Fluent Client</b> search parameter constant for <b>dose-sequence</b> 1548 * <p> 1549 * Description: <b>Dose number within sequence</b><br> 1550 * Type: <b>number</b><br> 1551 * Path: <b>ImmunizationRecommendation.recommendation.protocol.doseSequence</b><br> 1552 * </p> 1553 */ 1554 public static final ca.uhn.fhir.rest.gclient.NumberClientParam DOSE_SEQUENCE = new ca.uhn.fhir.rest.gclient.NumberClientParam(SP_DOSE_SEQUENCE); 1555 1556 /** 1557 * Search parameter: <b>patient</b> 1558 * <p> 1559 * Description: <b>Who this profile is for</b><br> 1560 * Type: <b>reference</b><br> 1561 * Path: <b>ImmunizationRecommendation.patient</b><br> 1562 * </p> 1563 */ 1564 @SearchParamDefinition(name="patient", path="ImmunizationRecommendation.patient", description="Who this profile is for", type="reference" ) 1565 public static final String SP_PATIENT = "patient"; 1566 /** 1567 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 1568 * <p> 1569 * Description: <b>Who this profile is for</b><br> 1570 * Type: <b>reference</b><br> 1571 * Path: <b>ImmunizationRecommendation.patient</b><br> 1572 * </p> 1573 */ 1574 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); 1575 1576/** 1577 * Constant for fluent queries to be used to add include statements. Specifies 1578 * the path value of "<b>ImmunizationRecommendation:patient</b>". 1579 */ 1580 public static final ca.uhn.fhir.model.api.Include INCLUDE_PATIENT = new ca.uhn.fhir.model.api.Include("ImmunizationRecommendation:patient").toLocked(); 1581 1582 /** 1583 * Search parameter: <b>support</b> 1584 * <p> 1585 * Description: <b>Past immunizations supporting recommendation</b><br> 1586 * Type: <b>reference</b><br> 1587 * Path: <b>ImmunizationRecommendation.recommendation.supportingImmunization</b><br> 1588 * </p> 1589 */ 1590 @SearchParamDefinition(name="support", path="ImmunizationRecommendation.recommendation.supportingImmunization", description="Past immunizations supporting recommendation", type="reference" ) 1591 public static final String SP_SUPPORT = "support"; 1592 /** 1593 * <b>Fluent Client</b> search parameter constant for <b>support</b> 1594 * <p> 1595 * Description: <b>Past immunizations supporting recommendation</b><br> 1596 * Type: <b>reference</b><br> 1597 * Path: <b>ImmunizationRecommendation.recommendation.supportingImmunization</b><br> 1598 * </p> 1599 */ 1600 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam SUPPORT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_SUPPORT); 1601 1602/** 1603 * Constant for fluent queries to be used to add include statements. Specifies 1604 * the path value of "<b>ImmunizationRecommendation:support</b>". 1605 */ 1606 public static final ca.uhn.fhir.model.api.Include INCLUDE_SUPPORT = new ca.uhn.fhir.model.api.Include("ImmunizationRecommendation:support").toLocked(); 1607 1608 /** 1609 * Search parameter: <b>vaccine-type</b> 1610 * <p> 1611 * Description: <b>Vaccine recommendation applies to</b><br> 1612 * Type: <b>token</b><br> 1613 * Path: <b>ImmunizationRecommendation.recommendation.vaccineCode</b><br> 1614 * </p> 1615 */ 1616 @SearchParamDefinition(name="vaccine-type", path="ImmunizationRecommendation.recommendation.vaccineCode", description="Vaccine recommendation applies to", type="token" ) 1617 public static final String SP_VACCINE_TYPE = "vaccine-type"; 1618 /** 1619 * <b>Fluent Client</b> search parameter constant for <b>vaccine-type</b> 1620 * <p> 1621 * Description: <b>Vaccine recommendation applies to</b><br> 1622 * Type: <b>token</b><br> 1623 * Path: <b>ImmunizationRecommendation.recommendation.vaccineCode</b><br> 1624 * </p> 1625 */ 1626 public static final ca.uhn.fhir.rest.gclient.TokenClientParam VACCINE_TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_VACCINE_TYPE); 1627 1628 /** 1629 * Search parameter: <b>status</b> 1630 * <p> 1631 * Description: <b>Vaccine administration status</b><br> 1632 * Type: <b>token</b><br> 1633 * Path: <b>ImmunizationRecommendation.recommendation.forecastStatus</b><br> 1634 * </p> 1635 */ 1636 @SearchParamDefinition(name="status", path="ImmunizationRecommendation.recommendation.forecastStatus", description="Vaccine administration status", type="token" ) 1637 public static final String SP_STATUS = "status"; 1638 /** 1639 * <b>Fluent Client</b> search parameter constant for <b>status</b> 1640 * <p> 1641 * Description: <b>Vaccine administration status</b><br> 1642 * Type: <b>token</b><br> 1643 * Path: <b>ImmunizationRecommendation.recommendation.forecastStatus</b><br> 1644 * </p> 1645 */ 1646 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); 1647 1648 /** 1649 * Search parameter: <b>dose-number</b> 1650 * <p> 1651 * Description: <b>Recommended dose number</b><br> 1652 * Type: <b>number</b><br> 1653 * Path: <b>ImmunizationRecommendation.recommendation.doseNumber</b><br> 1654 * </p> 1655 */ 1656 @SearchParamDefinition(name="dose-number", path="ImmunizationRecommendation.recommendation.doseNumber", description="Recommended dose number", type="number" ) 1657 public static final String SP_DOSE_NUMBER = "dose-number"; 1658 /** 1659 * <b>Fluent Client</b> search parameter constant for <b>dose-number</b> 1660 * <p> 1661 * Description: <b>Recommended dose number</b><br> 1662 * Type: <b>number</b><br> 1663 * Path: <b>ImmunizationRecommendation.recommendation.doseNumber</b><br> 1664 * </p> 1665 */ 1666 public static final ca.uhn.fhir.rest.gclient.NumberClientParam DOSE_NUMBER = new ca.uhn.fhir.rest.gclient.NumberClientParam(SP_DOSE_NUMBER); 1667 1668 /** 1669 * Search parameter: <b>date</b> 1670 * <p> 1671 * Description: <b>Date recommendation created</b><br> 1672 * Type: <b>date</b><br> 1673 * Path: <b>ImmunizationRecommendation.recommendation.date</b><br> 1674 * </p> 1675 */ 1676 @SearchParamDefinition(name="date", path="ImmunizationRecommendation.recommendation.date", description="Date recommendation created", type="date" ) 1677 public static final String SP_DATE = "date"; 1678 /** 1679 * <b>Fluent Client</b> search parameter constant for <b>date</b> 1680 * <p> 1681 * Description: <b>Date recommendation created</b><br> 1682 * Type: <b>date</b><br> 1683 * Path: <b>ImmunizationRecommendation.recommendation.date</b><br> 1684 * </p> 1685 */ 1686 public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); 1687 1688 /** 1689 * Search parameter: <b>identifier</b> 1690 * <p> 1691 * Description: <b>Business identifier</b><br> 1692 * Type: <b>token</b><br> 1693 * Path: <b>ImmunizationRecommendation.identifier</b><br> 1694 * </p> 1695 */ 1696 @SearchParamDefinition(name="identifier", path="ImmunizationRecommendation.identifier", description="Business identifier", type="token" ) 1697 public static final String SP_IDENTIFIER = "identifier"; 1698 /** 1699 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 1700 * <p> 1701 * Description: <b>Business identifier</b><br> 1702 * Type: <b>token</b><br> 1703 * Path: <b>ImmunizationRecommendation.identifier</b><br> 1704 * </p> 1705 */ 1706 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 1707 1708 1709} 1710