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