001package org.hl7.fhir.r4.model; 002 003 004 005/* 006 Copyright (c) 2011+, HL7, Inc. 007 All rights reserved. 008 009 Redistribution and use in source and binary forms, with or without modification, 010 are permitted provided that the following conditions are met: 011 012 * Redistributions of source code must retain the above copyright notice, this 013 list of conditions and the following disclaimer. 014 * Redistributions in binary form must reproduce the above copyright notice, 015 this list of conditions and the following disclaimer in the documentation 016 and/or other materials provided with the distribution. 017 * Neither the name of HL7 nor the names of its contributors may be used to 018 endorse or promote products derived from this software without specific 019 prior written permission. 020 021 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 022 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 023 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 024 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 025 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 026 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 027 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 028 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 029 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 030 POSSIBILITY OF SUCH DAMAGE. 031 032*/ 033 034 035// Generated on Tue, May 12, 2020 07:26+1000 for FHIR v4.0.1 036 037import java.util.*; 038 039import org.hl7.fhir.utilities.Utilities; 040import ca.uhn.fhir.model.api.annotation.ResourceDef; 041import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; 042import ca.uhn.fhir.model.api.annotation.Child; 043import ca.uhn.fhir.model.api.annotation.ChildOrder; 044import ca.uhn.fhir.model.api.annotation.Description; 045import ca.uhn.fhir.model.api.annotation.Block; 046import org.hl7.fhir.instance.model.api.*; 047import org.hl7.fhir.exceptions.FHIRException; 048/** 049 * A financial tool for tracking value accrued for a particular purpose. In the healthcare field, used to track charges for a patient, cost centers, etc. 050 */ 051@ResourceDef(name="Account", profile="http://hl7.org/fhir/StructureDefinition/Account") 052public class Account extends DomainResource { 053 054 public enum AccountStatus { 055 /** 056 * This account is active and may be used. 057 */ 058 ACTIVE, 059 /** 060 * This account is inactive and should not be used to track financial information. 061 */ 062 INACTIVE, 063 /** 064 * This instance should not have been part of this patient's medical record. 065 */ 066 ENTEREDINERROR, 067 /** 068 * This account is on hold. 069 */ 070 ONHOLD, 071 /** 072 * The account status is unknown. 073 */ 074 UNKNOWN, 075 /** 076 * added to help the parsers with the generic types 077 */ 078 NULL; 079 public static AccountStatus fromCode(String codeString) throws FHIRException { 080 if (codeString == null || "".equals(codeString)) 081 return null; 082 if ("active".equals(codeString)) 083 return ACTIVE; 084 if ("inactive".equals(codeString)) 085 return INACTIVE; 086 if ("entered-in-error".equals(codeString)) 087 return ENTEREDINERROR; 088 if ("on-hold".equals(codeString)) 089 return ONHOLD; 090 if ("unknown".equals(codeString)) 091 return UNKNOWN; 092 if (Configuration.isAcceptInvalidEnums()) 093 return null; 094 else 095 throw new FHIRException("Unknown AccountStatus code '"+codeString+"'"); 096 } 097 public String toCode() { 098 switch (this) { 099 case ACTIVE: return "active"; 100 case INACTIVE: return "inactive"; 101 case ENTEREDINERROR: return "entered-in-error"; 102 case ONHOLD: return "on-hold"; 103 case UNKNOWN: return "unknown"; 104 case NULL: return null; 105 default: return "?"; 106 } 107 } 108 public String getSystem() { 109 switch (this) { 110 case ACTIVE: return "http://hl7.org/fhir/account-status"; 111 case INACTIVE: return "http://hl7.org/fhir/account-status"; 112 case ENTEREDINERROR: return "http://hl7.org/fhir/account-status"; 113 case ONHOLD: return "http://hl7.org/fhir/account-status"; 114 case UNKNOWN: return "http://hl7.org/fhir/account-status"; 115 case NULL: return null; 116 default: return "?"; 117 } 118 } 119 public String getDefinition() { 120 switch (this) { 121 case ACTIVE: return "This account is active and may be used."; 122 case INACTIVE: return "This account is inactive and should not be used to track financial information."; 123 case ENTEREDINERROR: return "This instance should not have been part of this patient's medical record."; 124 case ONHOLD: return "This account is on hold."; 125 case UNKNOWN: return "The account status is unknown."; 126 case NULL: return null; 127 default: return "?"; 128 } 129 } 130 public String getDisplay() { 131 switch (this) { 132 case ACTIVE: return "Active"; 133 case INACTIVE: return "Inactive"; 134 case ENTEREDINERROR: return "Entered in error"; 135 case ONHOLD: return "On Hold"; 136 case UNKNOWN: return "Unknown"; 137 case NULL: return null; 138 default: return "?"; 139 } 140 } 141 } 142 143 public static class AccountStatusEnumFactory implements EnumFactory<AccountStatus> { 144 public AccountStatus fromCode(String codeString) throws IllegalArgumentException { 145 if (codeString == null || "".equals(codeString)) 146 if (codeString == null || "".equals(codeString)) 147 return null; 148 if ("active".equals(codeString)) 149 return AccountStatus.ACTIVE; 150 if ("inactive".equals(codeString)) 151 return AccountStatus.INACTIVE; 152 if ("entered-in-error".equals(codeString)) 153 return AccountStatus.ENTEREDINERROR; 154 if ("on-hold".equals(codeString)) 155 return AccountStatus.ONHOLD; 156 if ("unknown".equals(codeString)) 157 return AccountStatus.UNKNOWN; 158 throw new IllegalArgumentException("Unknown AccountStatus code '"+codeString+"'"); 159 } 160 public Enumeration<AccountStatus> fromType(Base code) throws FHIRException { 161 if (code == null) 162 return null; 163 if (code.isEmpty()) 164 return new Enumeration<AccountStatus>(this); 165 String codeString = ((PrimitiveType) code).asStringValue(); 166 if (codeString == null || "".equals(codeString)) 167 return null; 168 if ("active".equals(codeString)) 169 return new Enumeration<AccountStatus>(this, AccountStatus.ACTIVE); 170 if ("inactive".equals(codeString)) 171 return new Enumeration<AccountStatus>(this, AccountStatus.INACTIVE); 172 if ("entered-in-error".equals(codeString)) 173 return new Enumeration<AccountStatus>(this, AccountStatus.ENTEREDINERROR); 174 if ("on-hold".equals(codeString)) 175 return new Enumeration<AccountStatus>(this, AccountStatus.ONHOLD); 176 if ("unknown".equals(codeString)) 177 return new Enumeration<AccountStatus>(this, AccountStatus.UNKNOWN); 178 throw new FHIRException("Unknown AccountStatus code '"+codeString+"'"); 179 } 180 public String toCode(AccountStatus code) { 181 if (code == AccountStatus.ACTIVE) 182 return "active"; 183 if (code == AccountStatus.INACTIVE) 184 return "inactive"; 185 if (code == AccountStatus.ENTEREDINERROR) 186 return "entered-in-error"; 187 if (code == AccountStatus.ONHOLD) 188 return "on-hold"; 189 if (code == AccountStatus.UNKNOWN) 190 return "unknown"; 191 return "?"; 192 } 193 public String toSystem(AccountStatus code) { 194 return code.getSystem(); 195 } 196 } 197 198 @Block() 199 public static class CoverageComponent extends BackboneElement implements IBaseBackboneElement { 200 /** 201 * The party(s) that contribute to payment (or part of) of the charges applied to this account (including self-pay). 202 203A coverage may only be responsible for specific types of charges, and the sequence of the coverages in the account could be important when processing billing. 204 */ 205 @Child(name = "coverage", type = {Coverage.class}, order=1, min=1, max=1, modifier=false, summary=true) 206 @Description(shortDefinition="The party(s), such as insurances, that may contribute to the payment of this account", formalDefinition="The party(s) that contribute to payment (or part of) of the charges applied to this account (including self-pay).\n\nA coverage may only be responsible for specific types of charges, and the sequence of the coverages in the account could be important when processing billing." ) 207 protected Reference coverage; 208 209 /** 210 * The actual object that is the target of the reference (The party(s) that contribute to payment (or part of) of the charges applied to this account (including self-pay). 211 212A coverage may only be responsible for specific types of charges, and the sequence of the coverages in the account could be important when processing billing.) 213 */ 214 protected Coverage coverageTarget; 215 216 /** 217 * The priority of the coverage in the context of this account. 218 */ 219 @Child(name = "priority", type = {PositiveIntType.class}, order=2, min=0, max=1, modifier=false, summary=true) 220 @Description(shortDefinition="The priority of the coverage in the context of this account", formalDefinition="The priority of the coverage in the context of this account." ) 221 protected PositiveIntType priority; 222 223 private static final long serialVersionUID = -1046265008L; 224 225 /** 226 * Constructor 227 */ 228 public CoverageComponent() { 229 super(); 230 } 231 232 /** 233 * Constructor 234 */ 235 public CoverageComponent(Reference coverage) { 236 super(); 237 this.coverage = coverage; 238 } 239 240 /** 241 * @return {@link #coverage} (The party(s) that contribute to payment (or part of) of the charges applied to this account (including self-pay). 242 243A coverage may only be responsible for specific types of charges, and the sequence of the coverages in the account could be important when processing billing.) 244 */ 245 public Reference getCoverage() { 246 if (this.coverage == null) 247 if (Configuration.errorOnAutoCreate()) 248 throw new Error("Attempt to auto-create CoverageComponent.coverage"); 249 else if (Configuration.doAutoCreate()) 250 this.coverage = new Reference(); // cc 251 return this.coverage; 252 } 253 254 public boolean hasCoverage() { 255 return this.coverage != null && !this.coverage.isEmpty(); 256 } 257 258 /** 259 * @param value {@link #coverage} (The party(s) that contribute to payment (or part of) of the charges applied to this account (including self-pay). 260 261A coverage may only be responsible for specific types of charges, and the sequence of the coverages in the account could be important when processing billing.) 262 */ 263 public CoverageComponent setCoverage(Reference value) { 264 this.coverage = value; 265 return this; 266 } 267 268 /** 269 * @return {@link #coverage} 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 party(s) that contribute to payment (or part of) of the charges applied to this account (including self-pay). 270 271A coverage may only be responsible for specific types of charges, and the sequence of the coverages in the account could be important when processing billing.) 272 */ 273 public Coverage getCoverageTarget() { 274 if (this.coverageTarget == null) 275 if (Configuration.errorOnAutoCreate()) 276 throw new Error("Attempt to auto-create CoverageComponent.coverage"); 277 else if (Configuration.doAutoCreate()) 278 this.coverageTarget = new Coverage(); // aa 279 return this.coverageTarget; 280 } 281 282 /** 283 * @param value {@link #coverage} 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 party(s) that contribute to payment (or part of) of the charges applied to this account (including self-pay). 284 285A coverage may only be responsible for specific types of charges, and the sequence of the coverages in the account could be important when processing billing.) 286 */ 287 public CoverageComponent setCoverageTarget(Coverage value) { 288 this.coverageTarget = value; 289 return this; 290 } 291 292 /** 293 * @return {@link #priority} (The priority of the coverage in the context of this account.). This is the underlying object with id, value and extensions. The accessor "getPriority" gives direct access to the value 294 */ 295 public PositiveIntType getPriorityElement() { 296 if (this.priority == null) 297 if (Configuration.errorOnAutoCreate()) 298 throw new Error("Attempt to auto-create CoverageComponent.priority"); 299 else if (Configuration.doAutoCreate()) 300 this.priority = new PositiveIntType(); // bb 301 return this.priority; 302 } 303 304 public boolean hasPriorityElement() { 305 return this.priority != null && !this.priority.isEmpty(); 306 } 307 308 public boolean hasPriority() { 309 return this.priority != null && !this.priority.isEmpty(); 310 } 311 312 /** 313 * @param value {@link #priority} (The priority of the coverage in the context of this account.). This is the underlying object with id, value and extensions. The accessor "getPriority" gives direct access to the value 314 */ 315 public CoverageComponent setPriorityElement(PositiveIntType value) { 316 this.priority = value; 317 return this; 318 } 319 320 /** 321 * @return The priority of the coverage in the context of this account. 322 */ 323 public int getPriority() { 324 return this.priority == null || this.priority.isEmpty() ? 0 : this.priority.getValue(); 325 } 326 327 /** 328 * @param value The priority of the coverage in the context of this account. 329 */ 330 public CoverageComponent setPriority(int value) { 331 if (this.priority == null) 332 this.priority = new PositiveIntType(); 333 this.priority.setValue(value); 334 return this; 335 } 336 337 protected void listChildren(List<Property> children) { 338 super.listChildren(children); 339 children.add(new Property("coverage", "Reference(Coverage)", "The party(s) that contribute to payment (or part of) of the charges applied to this account (including self-pay).\n\nA coverage may only be responsible for specific types of charges, and the sequence of the coverages in the account could be important when processing billing.", 0, 1, coverage)); 340 children.add(new Property("priority", "positiveInt", "The priority of the coverage in the context of this account.", 0, 1, priority)); 341 } 342 343 @Override 344 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 345 switch (_hash) { 346 case -351767064: /*coverage*/ return new Property("coverage", "Reference(Coverage)", "The party(s) that contribute to payment (or part of) of the charges applied to this account (including self-pay).\n\nA coverage may only be responsible for specific types of charges, and the sequence of the coverages in the account could be important when processing billing.", 0, 1, coverage); 347 case -1165461084: /*priority*/ return new Property("priority", "positiveInt", "The priority of the coverage in the context of this account.", 0, 1, priority); 348 default: return super.getNamedProperty(_hash, _name, _checkValid); 349 } 350 351 } 352 353 @Override 354 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 355 switch (hash) { 356 case -351767064: /*coverage*/ return this.coverage == null ? new Base[0] : new Base[] {this.coverage}; // Reference 357 case -1165461084: /*priority*/ return this.priority == null ? new Base[0] : new Base[] {this.priority}; // PositiveIntType 358 default: return super.getProperty(hash, name, checkValid); 359 } 360 361 } 362 363 @Override 364 public Base setProperty(int hash, String name, Base value) throws FHIRException { 365 switch (hash) { 366 case -351767064: // coverage 367 this.coverage = castToReference(value); // Reference 368 return value; 369 case -1165461084: // priority 370 this.priority = castToPositiveInt(value); // PositiveIntType 371 return value; 372 default: return super.setProperty(hash, name, value); 373 } 374 375 } 376 377 @Override 378 public Base setProperty(String name, Base value) throws FHIRException { 379 if (name.equals("coverage")) { 380 this.coverage = castToReference(value); // Reference 381 } else if (name.equals("priority")) { 382 this.priority = castToPositiveInt(value); // PositiveIntType 383 } else 384 return super.setProperty(name, value); 385 return value; 386 } 387 388 @Override 389 public Base makeProperty(int hash, String name) throws FHIRException { 390 switch (hash) { 391 case -351767064: return getCoverage(); 392 case -1165461084: return getPriorityElement(); 393 default: return super.makeProperty(hash, name); 394 } 395 396 } 397 398 @Override 399 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 400 switch (hash) { 401 case -351767064: /*coverage*/ return new String[] {"Reference"}; 402 case -1165461084: /*priority*/ return new String[] {"positiveInt"}; 403 default: return super.getTypesForProperty(hash, name); 404 } 405 406 } 407 408 @Override 409 public Base addChild(String name) throws FHIRException { 410 if (name.equals("coverage")) { 411 this.coverage = new Reference(); 412 return this.coverage; 413 } 414 else if (name.equals("priority")) { 415 throw new FHIRException("Cannot call addChild on a primitive type Account.priority"); 416 } 417 else 418 return super.addChild(name); 419 } 420 421 public CoverageComponent copy() { 422 CoverageComponent dst = new CoverageComponent(); 423 copyValues(dst); 424 return dst; 425 } 426 427 public void copyValues(CoverageComponent dst) { 428 super.copyValues(dst); 429 dst.coverage = coverage == null ? null : coverage.copy(); 430 dst.priority = priority == null ? null : priority.copy(); 431 } 432 433 @Override 434 public boolean equalsDeep(Base other_) { 435 if (!super.equalsDeep(other_)) 436 return false; 437 if (!(other_ instanceof CoverageComponent)) 438 return false; 439 CoverageComponent o = (CoverageComponent) other_; 440 return compareDeep(coverage, o.coverage, true) && compareDeep(priority, o.priority, true); 441 } 442 443 @Override 444 public boolean equalsShallow(Base other_) { 445 if (!super.equalsShallow(other_)) 446 return false; 447 if (!(other_ instanceof CoverageComponent)) 448 return false; 449 CoverageComponent o = (CoverageComponent) other_; 450 return compareValues(priority, o.priority, true); 451 } 452 453 public boolean isEmpty() { 454 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(coverage, priority); 455 } 456 457 public String fhirType() { 458 return "Account.coverage"; 459 460 } 461 462 } 463 464 @Block() 465 public static class GuarantorComponent extends BackboneElement implements IBaseBackboneElement { 466 /** 467 * The entity who is responsible. 468 */ 469 @Child(name = "party", type = {Patient.class, RelatedPerson.class, Organization.class}, order=1, min=1, max=1, modifier=false, summary=false) 470 @Description(shortDefinition="Responsible entity", formalDefinition="The entity who is responsible." ) 471 protected Reference party; 472 473 /** 474 * The actual object that is the target of the reference (The entity who is responsible.) 475 */ 476 protected Resource partyTarget; 477 478 /** 479 * A guarantor may be placed on credit hold or otherwise have their role temporarily suspended. 480 */ 481 @Child(name = "onHold", type = {BooleanType.class}, order=2, min=0, max=1, modifier=false, summary=false) 482 @Description(shortDefinition="Credit or other hold applied", formalDefinition="A guarantor may be placed on credit hold or otherwise have their role temporarily suspended." ) 483 protected BooleanType onHold; 484 485 /** 486 * The timeframe during which the guarantor accepts responsibility for the account. 487 */ 488 @Child(name = "period", type = {Period.class}, order=3, min=0, max=1, modifier=false, summary=false) 489 @Description(shortDefinition="Guarantee account during", formalDefinition="The timeframe during which the guarantor accepts responsibility for the account." ) 490 protected Period period; 491 492 private static final long serialVersionUID = -1012345396L; 493 494 /** 495 * Constructor 496 */ 497 public GuarantorComponent() { 498 super(); 499 } 500 501 /** 502 * Constructor 503 */ 504 public GuarantorComponent(Reference party) { 505 super(); 506 this.party = party; 507 } 508 509 /** 510 * @return {@link #party} (The entity who is responsible.) 511 */ 512 public Reference getParty() { 513 if (this.party == null) 514 if (Configuration.errorOnAutoCreate()) 515 throw new Error("Attempt to auto-create GuarantorComponent.party"); 516 else if (Configuration.doAutoCreate()) 517 this.party = new Reference(); // cc 518 return this.party; 519 } 520 521 public boolean hasParty() { 522 return this.party != null && !this.party.isEmpty(); 523 } 524 525 /** 526 * @param value {@link #party} (The entity who is responsible.) 527 */ 528 public GuarantorComponent setParty(Reference value) { 529 this.party = value; 530 return this; 531 } 532 533 /** 534 * @return {@link #party} The actual object that is the target of the reference. The reference library doesn't populate this, but you can use it to hold the resource if you resolve it. (The entity who is responsible.) 535 */ 536 public Resource getPartyTarget() { 537 return this.partyTarget; 538 } 539 540 /** 541 * @param value {@link #party} The actual object that is the target of the reference. The reference library doesn't use these, but you can use it to hold the resource if you resolve it. (The entity who is responsible.) 542 */ 543 public GuarantorComponent setPartyTarget(Resource value) { 544 this.partyTarget = value; 545 return this; 546 } 547 548 /** 549 * @return {@link #onHold} (A guarantor may be placed on credit hold or otherwise have their role temporarily suspended.). This is the underlying object with id, value and extensions. The accessor "getOnHold" gives direct access to the value 550 */ 551 public BooleanType getOnHoldElement() { 552 if (this.onHold == null) 553 if (Configuration.errorOnAutoCreate()) 554 throw new Error("Attempt to auto-create GuarantorComponent.onHold"); 555 else if (Configuration.doAutoCreate()) 556 this.onHold = new BooleanType(); // bb 557 return this.onHold; 558 } 559 560 public boolean hasOnHoldElement() { 561 return this.onHold != null && !this.onHold.isEmpty(); 562 } 563 564 public boolean hasOnHold() { 565 return this.onHold != null && !this.onHold.isEmpty(); 566 } 567 568 /** 569 * @param value {@link #onHold} (A guarantor may be placed on credit hold or otherwise have their role temporarily suspended.). This is the underlying object with id, value and extensions. The accessor "getOnHold" gives direct access to the value 570 */ 571 public GuarantorComponent setOnHoldElement(BooleanType value) { 572 this.onHold = value; 573 return this; 574 } 575 576 /** 577 * @return A guarantor may be placed on credit hold or otherwise have their role temporarily suspended. 578 */ 579 public boolean getOnHold() { 580 return this.onHold == null || this.onHold.isEmpty() ? false : this.onHold.getValue(); 581 } 582 583 /** 584 * @param value A guarantor may be placed on credit hold or otherwise have their role temporarily suspended. 585 */ 586 public GuarantorComponent setOnHold(boolean value) { 587 if (this.onHold == null) 588 this.onHold = new BooleanType(); 589 this.onHold.setValue(value); 590 return this; 591 } 592 593 /** 594 * @return {@link #period} (The timeframe during which the guarantor accepts responsibility for the account.) 595 */ 596 public Period getPeriod() { 597 if (this.period == null) 598 if (Configuration.errorOnAutoCreate()) 599 throw new Error("Attempt to auto-create GuarantorComponent.period"); 600 else if (Configuration.doAutoCreate()) 601 this.period = new Period(); // cc 602 return this.period; 603 } 604 605 public boolean hasPeriod() { 606 return this.period != null && !this.period.isEmpty(); 607 } 608 609 /** 610 * @param value {@link #period} (The timeframe during which the guarantor accepts responsibility for the account.) 611 */ 612 public GuarantorComponent setPeriod(Period value) { 613 this.period = value; 614 return this; 615 } 616 617 protected void listChildren(List<Property> children) { 618 super.listChildren(children); 619 children.add(new Property("party", "Reference(Patient|RelatedPerson|Organization)", "The entity who is responsible.", 0, 1, party)); 620 children.add(new Property("onHold", "boolean", "A guarantor may be placed on credit hold or otherwise have their role temporarily suspended.", 0, 1, onHold)); 621 children.add(new Property("period", "Period", "The timeframe during which the guarantor accepts responsibility for the account.", 0, 1, period)); 622 } 623 624 @Override 625 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 626 switch (_hash) { 627 case 106437350: /*party*/ return new Property("party", "Reference(Patient|RelatedPerson|Organization)", "The entity who is responsible.", 0, 1, party); 628 case -1013289154: /*onHold*/ return new Property("onHold", "boolean", "A guarantor may be placed on credit hold or otherwise have their role temporarily suspended.", 0, 1, onHold); 629 case -991726143: /*period*/ return new Property("period", "Period", "The timeframe during which the guarantor accepts responsibility for the account.", 0, 1, period); 630 default: return super.getNamedProperty(_hash, _name, _checkValid); 631 } 632 633 } 634 635 @Override 636 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 637 switch (hash) { 638 case 106437350: /*party*/ return this.party == null ? new Base[0] : new Base[] {this.party}; // Reference 639 case -1013289154: /*onHold*/ return this.onHold == null ? new Base[0] : new Base[] {this.onHold}; // BooleanType 640 case -991726143: /*period*/ return this.period == null ? new Base[0] : new Base[] {this.period}; // Period 641 default: return super.getProperty(hash, name, checkValid); 642 } 643 644 } 645 646 @Override 647 public Base setProperty(int hash, String name, Base value) throws FHIRException { 648 switch (hash) { 649 case 106437350: // party 650 this.party = castToReference(value); // Reference 651 return value; 652 case -1013289154: // onHold 653 this.onHold = castToBoolean(value); // BooleanType 654 return value; 655 case -991726143: // period 656 this.period = castToPeriod(value); // Period 657 return value; 658 default: return super.setProperty(hash, name, value); 659 } 660 661 } 662 663 @Override 664 public Base setProperty(String name, Base value) throws FHIRException { 665 if (name.equals("party")) { 666 this.party = castToReference(value); // Reference 667 } else if (name.equals("onHold")) { 668 this.onHold = castToBoolean(value); // BooleanType 669 } else if (name.equals("period")) { 670 this.period = castToPeriod(value); // Period 671 } else 672 return super.setProperty(name, value); 673 return value; 674 } 675 676 @Override 677 public Base makeProperty(int hash, String name) throws FHIRException { 678 switch (hash) { 679 case 106437350: return getParty(); 680 case -1013289154: return getOnHoldElement(); 681 case -991726143: return getPeriod(); 682 default: return super.makeProperty(hash, name); 683 } 684 685 } 686 687 @Override 688 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 689 switch (hash) { 690 case 106437350: /*party*/ return new String[] {"Reference"}; 691 case -1013289154: /*onHold*/ return new String[] {"boolean"}; 692 case -991726143: /*period*/ return new String[] {"Period"}; 693 default: return super.getTypesForProperty(hash, name); 694 } 695 696 } 697 698 @Override 699 public Base addChild(String name) throws FHIRException { 700 if (name.equals("party")) { 701 this.party = new Reference(); 702 return this.party; 703 } 704 else if (name.equals("onHold")) { 705 throw new FHIRException("Cannot call addChild on a primitive type Account.onHold"); 706 } 707 else if (name.equals("period")) { 708 this.period = new Period(); 709 return this.period; 710 } 711 else 712 return super.addChild(name); 713 } 714 715 public GuarantorComponent copy() { 716 GuarantorComponent dst = new GuarantorComponent(); 717 copyValues(dst); 718 return dst; 719 } 720 721 public void copyValues(GuarantorComponent dst) { 722 super.copyValues(dst); 723 dst.party = party == null ? null : party.copy(); 724 dst.onHold = onHold == null ? null : onHold.copy(); 725 dst.period = period == null ? null : period.copy(); 726 } 727 728 @Override 729 public boolean equalsDeep(Base other_) { 730 if (!super.equalsDeep(other_)) 731 return false; 732 if (!(other_ instanceof GuarantorComponent)) 733 return false; 734 GuarantorComponent o = (GuarantorComponent) other_; 735 return compareDeep(party, o.party, true) && compareDeep(onHold, o.onHold, true) && compareDeep(period, o.period, true) 736 ; 737 } 738 739 @Override 740 public boolean equalsShallow(Base other_) { 741 if (!super.equalsShallow(other_)) 742 return false; 743 if (!(other_ instanceof GuarantorComponent)) 744 return false; 745 GuarantorComponent o = (GuarantorComponent) other_; 746 return compareValues(onHold, o.onHold, true); 747 } 748 749 public boolean isEmpty() { 750 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(party, onHold, period); 751 } 752 753 public String fhirType() { 754 return "Account.guarantor"; 755 756 } 757 758 } 759 760 /** 761 * Unique identifier used to reference the account. Might or might not be intended for human use (e.g. credit card number). 762 */ 763 @Child(name = "identifier", type = {Identifier.class}, order=0, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 764 @Description(shortDefinition="Account number", formalDefinition="Unique identifier used to reference the account. Might or might not be intended for human use (e.g. credit card number)." ) 765 protected List<Identifier> identifier; 766 767 /** 768 * Indicates whether the account is presently used/usable or not. 769 */ 770 @Child(name = "status", type = {CodeType.class}, order=1, min=1, max=1, modifier=true, summary=true) 771 @Description(shortDefinition="active | inactive | entered-in-error | on-hold | unknown", formalDefinition="Indicates whether the account is presently used/usable or not." ) 772 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/account-status") 773 protected Enumeration<AccountStatus> status; 774 775 /** 776 * Categorizes the account for reporting and searching purposes. 777 */ 778 @Child(name = "type", type = {CodeableConcept.class}, order=2, min=0, max=1, modifier=false, summary=true) 779 @Description(shortDefinition="E.g. patient, expense, depreciation", formalDefinition="Categorizes the account for reporting and searching purposes." ) 780 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/account-type") 781 protected CodeableConcept type; 782 783 /** 784 * Name used for the account when displaying it to humans in reports, etc. 785 */ 786 @Child(name = "name", type = {StringType.class}, order=3, min=0, max=1, modifier=false, summary=true) 787 @Description(shortDefinition="Human-readable label", formalDefinition="Name used for the account when displaying it to humans in reports, etc." ) 788 protected StringType name; 789 790 /** 791 * Identifies the entity which incurs the expenses. While the immediate recipients of services or goods might be entities related to the subject, the expenses were ultimately incurred by the subject of the Account. 792 */ 793 @Child(name = "subject", type = {Patient.class, Device.class, Practitioner.class, PractitionerRole.class, Location.class, HealthcareService.class, Organization.class}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 794 @Description(shortDefinition="The entity that caused the expenses", formalDefinition="Identifies the entity which incurs the expenses. While the immediate recipients of services or goods might be entities related to the subject, the expenses were ultimately incurred by the subject of the Account." ) 795 protected List<Reference> subject; 796 /** 797 * The actual objects that are the target of the reference (Identifies the entity which incurs the expenses. While the immediate recipients of services or goods might be entities related to the subject, the expenses were ultimately incurred by the subject of the Account.) 798 */ 799 protected List<Resource> subjectTarget; 800 801 802 /** 803 * The date range of services associated with this account. 804 */ 805 @Child(name = "servicePeriod", type = {Period.class}, order=5, min=0, max=1, modifier=false, summary=true) 806 @Description(shortDefinition="Transaction window", formalDefinition="The date range of services associated with this account." ) 807 protected Period servicePeriod; 808 809 /** 810 * The party(s) that are responsible for covering the payment of this account, and what order should they be applied to the account. 811 */ 812 @Child(name = "coverage", type = {}, order=6, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 813 @Description(shortDefinition="The party(s) that are responsible for covering the payment of this account, and what order should they be applied to the account", formalDefinition="The party(s) that are responsible for covering the payment of this account, and what order should they be applied to the account." ) 814 protected List<CoverageComponent> coverage; 815 816 /** 817 * Indicates the service area, hospital, department, etc. with responsibility for managing the Account. 818 */ 819 @Child(name = "owner", type = {Organization.class}, order=7, min=0, max=1, modifier=false, summary=true) 820 @Description(shortDefinition="Entity managing the Account", formalDefinition="Indicates the service area, hospital, department, etc. with responsibility for managing the Account." ) 821 protected Reference owner; 822 823 /** 824 * The actual object that is the target of the reference (Indicates the service area, hospital, department, etc. with responsibility for managing the Account.) 825 */ 826 protected Organization ownerTarget; 827 828 /** 829 * Provides additional information about what the account tracks and how it is used. 830 */ 831 @Child(name = "description", type = {StringType.class}, order=8, min=0, max=1, modifier=false, summary=true) 832 @Description(shortDefinition="Explanation of purpose/use", formalDefinition="Provides additional information about what the account tracks and how it is used." ) 833 protected StringType description; 834 835 /** 836 * The parties responsible for balancing the account if other payment options fall short. 837 */ 838 @Child(name = "guarantor", type = {}, order=9, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 839 @Description(shortDefinition="The parties ultimately responsible for balancing the Account", formalDefinition="The parties responsible for balancing the account if other payment options fall short." ) 840 protected List<GuarantorComponent> guarantor; 841 842 /** 843 * Reference to a parent Account. 844 */ 845 @Child(name = "partOf", type = {Account.class}, order=10, min=0, max=1, modifier=false, summary=false) 846 @Description(shortDefinition="Reference to a parent Account", formalDefinition="Reference to a parent Account." ) 847 protected Reference partOf; 848 849 /** 850 * The actual object that is the target of the reference (Reference to a parent Account.) 851 */ 852 protected Account partOfTarget; 853 854 private static final long serialVersionUID = 1211238069L; 855 856 /** 857 * Constructor 858 */ 859 public Account() { 860 super(); 861 } 862 863 /** 864 * Constructor 865 */ 866 public Account(Enumeration<AccountStatus> status) { 867 super(); 868 this.status = status; 869 } 870 871 /** 872 * @return {@link #identifier} (Unique identifier used to reference the account. Might or might not be intended for human use (e.g. credit card number).) 873 */ 874 public List<Identifier> getIdentifier() { 875 if (this.identifier == null) 876 this.identifier = new ArrayList<Identifier>(); 877 return this.identifier; 878 } 879 880 /** 881 * @return Returns a reference to <code>this</code> for easy method chaining 882 */ 883 public Account setIdentifier(List<Identifier> theIdentifier) { 884 this.identifier = theIdentifier; 885 return this; 886 } 887 888 public boolean hasIdentifier() { 889 if (this.identifier == null) 890 return false; 891 for (Identifier item : this.identifier) 892 if (!item.isEmpty()) 893 return true; 894 return false; 895 } 896 897 public Identifier addIdentifier() { //3 898 Identifier t = new Identifier(); 899 if (this.identifier == null) 900 this.identifier = new ArrayList<Identifier>(); 901 this.identifier.add(t); 902 return t; 903 } 904 905 public Account addIdentifier(Identifier t) { //3 906 if (t == null) 907 return this; 908 if (this.identifier == null) 909 this.identifier = new ArrayList<Identifier>(); 910 this.identifier.add(t); 911 return this; 912 } 913 914 /** 915 * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist 916 */ 917 public Identifier getIdentifierFirstRep() { 918 if (getIdentifier().isEmpty()) { 919 addIdentifier(); 920 } 921 return getIdentifier().get(0); 922 } 923 924 /** 925 * @return {@link #status} (Indicates whether the account is presently used/usable or not.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 926 */ 927 public Enumeration<AccountStatus> getStatusElement() { 928 if (this.status == null) 929 if (Configuration.errorOnAutoCreate()) 930 throw new Error("Attempt to auto-create Account.status"); 931 else if (Configuration.doAutoCreate()) 932 this.status = new Enumeration<AccountStatus>(new AccountStatusEnumFactory()); // bb 933 return this.status; 934 } 935 936 public boolean hasStatusElement() { 937 return this.status != null && !this.status.isEmpty(); 938 } 939 940 public boolean hasStatus() { 941 return this.status != null && !this.status.isEmpty(); 942 } 943 944 /** 945 * @param value {@link #status} (Indicates whether the account is presently used/usable or not.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 946 */ 947 public Account setStatusElement(Enumeration<AccountStatus> value) { 948 this.status = value; 949 return this; 950 } 951 952 /** 953 * @return Indicates whether the account is presently used/usable or not. 954 */ 955 public AccountStatus getStatus() { 956 return this.status == null ? null : this.status.getValue(); 957 } 958 959 /** 960 * @param value Indicates whether the account is presently used/usable or not. 961 */ 962 public Account setStatus(AccountStatus value) { 963 if (this.status == null) 964 this.status = new Enumeration<AccountStatus>(new AccountStatusEnumFactory()); 965 this.status.setValue(value); 966 return this; 967 } 968 969 /** 970 * @return {@link #type} (Categorizes the account for reporting and searching purposes.) 971 */ 972 public CodeableConcept getType() { 973 if (this.type == null) 974 if (Configuration.errorOnAutoCreate()) 975 throw new Error("Attempt to auto-create Account.type"); 976 else if (Configuration.doAutoCreate()) 977 this.type = new CodeableConcept(); // cc 978 return this.type; 979 } 980 981 public boolean hasType() { 982 return this.type != null && !this.type.isEmpty(); 983 } 984 985 /** 986 * @param value {@link #type} (Categorizes the account for reporting and searching purposes.) 987 */ 988 public Account setType(CodeableConcept value) { 989 this.type = value; 990 return this; 991 } 992 993 /** 994 * @return {@link #name} (Name used for the account when displaying it to humans in reports, etc.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value 995 */ 996 public StringType getNameElement() { 997 if (this.name == null) 998 if (Configuration.errorOnAutoCreate()) 999 throw new Error("Attempt to auto-create Account.name"); 1000 else if (Configuration.doAutoCreate()) 1001 this.name = new StringType(); // bb 1002 return this.name; 1003 } 1004 1005 public boolean hasNameElement() { 1006 return this.name != null && !this.name.isEmpty(); 1007 } 1008 1009 public boolean hasName() { 1010 return this.name != null && !this.name.isEmpty(); 1011 } 1012 1013 /** 1014 * @param value {@link #name} (Name used for the account when displaying it to humans in reports, etc.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value 1015 */ 1016 public Account setNameElement(StringType value) { 1017 this.name = value; 1018 return this; 1019 } 1020 1021 /** 1022 * @return Name used for the account when displaying it to humans in reports, etc. 1023 */ 1024 public String getName() { 1025 return this.name == null ? null : this.name.getValue(); 1026 } 1027 1028 /** 1029 * @param value Name used for the account when displaying it to humans in reports, etc. 1030 */ 1031 public Account setName(String value) { 1032 if (Utilities.noString(value)) 1033 this.name = null; 1034 else { 1035 if (this.name == null) 1036 this.name = new StringType(); 1037 this.name.setValue(value); 1038 } 1039 return this; 1040 } 1041 1042 /** 1043 * @return {@link #subject} (Identifies the entity which incurs the expenses. While the immediate recipients of services or goods might be entities related to the subject, the expenses were ultimately incurred by the subject of the Account.) 1044 */ 1045 public List<Reference> getSubject() { 1046 if (this.subject == null) 1047 this.subject = new ArrayList<Reference>(); 1048 return this.subject; 1049 } 1050 1051 /** 1052 * @return Returns a reference to <code>this</code> for easy method chaining 1053 */ 1054 public Account setSubject(List<Reference> theSubject) { 1055 this.subject = theSubject; 1056 return this; 1057 } 1058 1059 public boolean hasSubject() { 1060 if (this.subject == null) 1061 return false; 1062 for (Reference item : this.subject) 1063 if (!item.isEmpty()) 1064 return true; 1065 return false; 1066 } 1067 1068 public Reference addSubject() { //3 1069 Reference t = new Reference(); 1070 if (this.subject == null) 1071 this.subject = new ArrayList<Reference>(); 1072 this.subject.add(t); 1073 return t; 1074 } 1075 1076 public Account addSubject(Reference t) { //3 1077 if (t == null) 1078 return this; 1079 if (this.subject == null) 1080 this.subject = new ArrayList<Reference>(); 1081 this.subject.add(t); 1082 return this; 1083 } 1084 1085 /** 1086 * @return The first repetition of repeating field {@link #subject}, creating it if it does not already exist 1087 */ 1088 public Reference getSubjectFirstRep() { 1089 if (getSubject().isEmpty()) { 1090 addSubject(); 1091 } 1092 return getSubject().get(0); 1093 } 1094 1095 /** 1096 * @deprecated Use Reference#setResource(IBaseResource) instead 1097 */ 1098 @Deprecated 1099 public List<Resource> getSubjectTarget() { 1100 if (this.subjectTarget == null) 1101 this.subjectTarget = new ArrayList<Resource>(); 1102 return this.subjectTarget; 1103 } 1104 1105 /** 1106 * @return {@link #servicePeriod} (The date range of services associated with this account.) 1107 */ 1108 public Period getServicePeriod() { 1109 if (this.servicePeriod == null) 1110 if (Configuration.errorOnAutoCreate()) 1111 throw new Error("Attempt to auto-create Account.servicePeriod"); 1112 else if (Configuration.doAutoCreate()) 1113 this.servicePeriod = new Period(); // cc 1114 return this.servicePeriod; 1115 } 1116 1117 public boolean hasServicePeriod() { 1118 return this.servicePeriod != null && !this.servicePeriod.isEmpty(); 1119 } 1120 1121 /** 1122 * @param value {@link #servicePeriod} (The date range of services associated with this account.) 1123 */ 1124 public Account setServicePeriod(Period value) { 1125 this.servicePeriod = value; 1126 return this; 1127 } 1128 1129 /** 1130 * @return {@link #coverage} (The party(s) that are responsible for covering the payment of this account, and what order should they be applied to the account.) 1131 */ 1132 public List<CoverageComponent> getCoverage() { 1133 if (this.coverage == null) 1134 this.coverage = new ArrayList<CoverageComponent>(); 1135 return this.coverage; 1136 } 1137 1138 /** 1139 * @return Returns a reference to <code>this</code> for easy method chaining 1140 */ 1141 public Account setCoverage(List<CoverageComponent> theCoverage) { 1142 this.coverage = theCoverage; 1143 return this; 1144 } 1145 1146 public boolean hasCoverage() { 1147 if (this.coverage == null) 1148 return false; 1149 for (CoverageComponent item : this.coverage) 1150 if (!item.isEmpty()) 1151 return true; 1152 return false; 1153 } 1154 1155 public CoverageComponent addCoverage() { //3 1156 CoverageComponent t = new CoverageComponent(); 1157 if (this.coverage == null) 1158 this.coverage = new ArrayList<CoverageComponent>(); 1159 this.coverage.add(t); 1160 return t; 1161 } 1162 1163 public Account addCoverage(CoverageComponent t) { //3 1164 if (t == null) 1165 return this; 1166 if (this.coverage == null) 1167 this.coverage = new ArrayList<CoverageComponent>(); 1168 this.coverage.add(t); 1169 return this; 1170 } 1171 1172 /** 1173 * @return The first repetition of repeating field {@link #coverage}, creating it if it does not already exist 1174 */ 1175 public CoverageComponent getCoverageFirstRep() { 1176 if (getCoverage().isEmpty()) { 1177 addCoverage(); 1178 } 1179 return getCoverage().get(0); 1180 } 1181 1182 /** 1183 * @return {@link #owner} (Indicates the service area, hospital, department, etc. with responsibility for managing the Account.) 1184 */ 1185 public Reference getOwner() { 1186 if (this.owner == null) 1187 if (Configuration.errorOnAutoCreate()) 1188 throw new Error("Attempt to auto-create Account.owner"); 1189 else if (Configuration.doAutoCreate()) 1190 this.owner = new Reference(); // cc 1191 return this.owner; 1192 } 1193 1194 public boolean hasOwner() { 1195 return this.owner != null && !this.owner.isEmpty(); 1196 } 1197 1198 /** 1199 * @param value {@link #owner} (Indicates the service area, hospital, department, etc. with responsibility for managing the Account.) 1200 */ 1201 public Account setOwner(Reference value) { 1202 this.owner = value; 1203 return this; 1204 } 1205 1206 /** 1207 * @return {@link #owner} 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 service area, hospital, department, etc. with responsibility for managing the Account.) 1208 */ 1209 public Organization getOwnerTarget() { 1210 if (this.ownerTarget == null) 1211 if (Configuration.errorOnAutoCreate()) 1212 throw new Error("Attempt to auto-create Account.owner"); 1213 else if (Configuration.doAutoCreate()) 1214 this.ownerTarget = new Organization(); // aa 1215 return this.ownerTarget; 1216 } 1217 1218 /** 1219 * @param value {@link #owner} 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 service area, hospital, department, etc. with responsibility for managing the Account.) 1220 */ 1221 public Account setOwnerTarget(Organization value) { 1222 this.ownerTarget = value; 1223 return this; 1224 } 1225 1226 /** 1227 * @return {@link #description} (Provides additional information about what the account tracks and how it is used.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value 1228 */ 1229 public StringType getDescriptionElement() { 1230 if (this.description == null) 1231 if (Configuration.errorOnAutoCreate()) 1232 throw new Error("Attempt to auto-create Account.description"); 1233 else if (Configuration.doAutoCreate()) 1234 this.description = new StringType(); // bb 1235 return this.description; 1236 } 1237 1238 public boolean hasDescriptionElement() { 1239 return this.description != null && !this.description.isEmpty(); 1240 } 1241 1242 public boolean hasDescription() { 1243 return this.description != null && !this.description.isEmpty(); 1244 } 1245 1246 /** 1247 * @param value {@link #description} (Provides additional information about what the account tracks and how it is used.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value 1248 */ 1249 public Account setDescriptionElement(StringType value) { 1250 this.description = value; 1251 return this; 1252 } 1253 1254 /** 1255 * @return Provides additional information about what the account tracks and how it is used. 1256 */ 1257 public String getDescription() { 1258 return this.description == null ? null : this.description.getValue(); 1259 } 1260 1261 /** 1262 * @param value Provides additional information about what the account tracks and how it is used. 1263 */ 1264 public Account setDescription(String value) { 1265 if (Utilities.noString(value)) 1266 this.description = null; 1267 else { 1268 if (this.description == null) 1269 this.description = new StringType(); 1270 this.description.setValue(value); 1271 } 1272 return this; 1273 } 1274 1275 /** 1276 * @return {@link #guarantor} (The parties responsible for balancing the account if other payment options fall short.) 1277 */ 1278 public List<GuarantorComponent> getGuarantor() { 1279 if (this.guarantor == null) 1280 this.guarantor = new ArrayList<GuarantorComponent>(); 1281 return this.guarantor; 1282 } 1283 1284 /** 1285 * @return Returns a reference to <code>this</code> for easy method chaining 1286 */ 1287 public Account setGuarantor(List<GuarantorComponent> theGuarantor) { 1288 this.guarantor = theGuarantor; 1289 return this; 1290 } 1291 1292 public boolean hasGuarantor() { 1293 if (this.guarantor == null) 1294 return false; 1295 for (GuarantorComponent item : this.guarantor) 1296 if (!item.isEmpty()) 1297 return true; 1298 return false; 1299 } 1300 1301 public GuarantorComponent addGuarantor() { //3 1302 GuarantorComponent t = new GuarantorComponent(); 1303 if (this.guarantor == null) 1304 this.guarantor = new ArrayList<GuarantorComponent>(); 1305 this.guarantor.add(t); 1306 return t; 1307 } 1308 1309 public Account addGuarantor(GuarantorComponent t) { //3 1310 if (t == null) 1311 return this; 1312 if (this.guarantor == null) 1313 this.guarantor = new ArrayList<GuarantorComponent>(); 1314 this.guarantor.add(t); 1315 return this; 1316 } 1317 1318 /** 1319 * @return The first repetition of repeating field {@link #guarantor}, creating it if it does not already exist 1320 */ 1321 public GuarantorComponent getGuarantorFirstRep() { 1322 if (getGuarantor().isEmpty()) { 1323 addGuarantor(); 1324 } 1325 return getGuarantor().get(0); 1326 } 1327 1328 /** 1329 * @return {@link #partOf} (Reference to a parent Account.) 1330 */ 1331 public Reference getPartOf() { 1332 if (this.partOf == null) 1333 if (Configuration.errorOnAutoCreate()) 1334 throw new Error("Attempt to auto-create Account.partOf"); 1335 else if (Configuration.doAutoCreate()) 1336 this.partOf = new Reference(); // cc 1337 return this.partOf; 1338 } 1339 1340 public boolean hasPartOf() { 1341 return this.partOf != null && !this.partOf.isEmpty(); 1342 } 1343 1344 /** 1345 * @param value {@link #partOf} (Reference to a parent Account.) 1346 */ 1347 public Account setPartOf(Reference value) { 1348 this.partOf = value; 1349 return this; 1350 } 1351 1352 /** 1353 * @return {@link #partOf} 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. (Reference to a parent Account.) 1354 */ 1355 public Account getPartOfTarget() { 1356 if (this.partOfTarget == null) 1357 if (Configuration.errorOnAutoCreate()) 1358 throw new Error("Attempt to auto-create Account.partOf"); 1359 else if (Configuration.doAutoCreate()) 1360 this.partOfTarget = new Account(); // aa 1361 return this.partOfTarget; 1362 } 1363 1364 /** 1365 * @param value {@link #partOf} 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. (Reference to a parent Account.) 1366 */ 1367 public Account setPartOfTarget(Account value) { 1368 this.partOfTarget = value; 1369 return this; 1370 } 1371 1372 protected void listChildren(List<Property> children) { 1373 super.listChildren(children); 1374 children.add(new Property("identifier", "Identifier", "Unique identifier used to reference the account. Might or might not be intended for human use (e.g. credit card number).", 0, java.lang.Integer.MAX_VALUE, identifier)); 1375 children.add(new Property("status", "code", "Indicates whether the account is presently used/usable or not.", 0, 1, status)); 1376 children.add(new Property("type", "CodeableConcept", "Categorizes the account for reporting and searching purposes.", 0, 1, type)); 1377 children.add(new Property("name", "string", "Name used for the account when displaying it to humans in reports, etc.", 0, 1, name)); 1378 children.add(new Property("subject", "Reference(Patient|Device|Practitioner|PractitionerRole|Location|HealthcareService|Organization)", "Identifies the entity which incurs the expenses. While the immediate recipients of services or goods might be entities related to the subject, the expenses were ultimately incurred by the subject of the Account.", 0, java.lang.Integer.MAX_VALUE, subject)); 1379 children.add(new Property("servicePeriod", "Period", "The date range of services associated with this account.", 0, 1, servicePeriod)); 1380 children.add(new Property("coverage", "", "The party(s) that are responsible for covering the payment of this account, and what order should they be applied to the account.", 0, java.lang.Integer.MAX_VALUE, coverage)); 1381 children.add(new Property("owner", "Reference(Organization)", "Indicates the service area, hospital, department, etc. with responsibility for managing the Account.", 0, 1, owner)); 1382 children.add(new Property("description", "string", "Provides additional information about what the account tracks and how it is used.", 0, 1, description)); 1383 children.add(new Property("guarantor", "", "The parties responsible for balancing the account if other payment options fall short.", 0, java.lang.Integer.MAX_VALUE, guarantor)); 1384 children.add(new Property("partOf", "Reference(Account)", "Reference to a parent Account.", 0, 1, partOf)); 1385 } 1386 1387 @Override 1388 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1389 switch (_hash) { 1390 case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Unique identifier used to reference the account. Might or might not be intended for human use (e.g. credit card number).", 0, java.lang.Integer.MAX_VALUE, identifier); 1391 case -892481550: /*status*/ return new Property("status", "code", "Indicates whether the account is presently used/usable or not.", 0, 1, status); 1392 case 3575610: /*type*/ return new Property("type", "CodeableConcept", "Categorizes the account for reporting and searching purposes.", 0, 1, type); 1393 case 3373707: /*name*/ return new Property("name", "string", "Name used for the account when displaying it to humans in reports, etc.", 0, 1, name); 1394 case -1867885268: /*subject*/ return new Property("subject", "Reference(Patient|Device|Practitioner|PractitionerRole|Location|HealthcareService|Organization)", "Identifies the entity which incurs the expenses. While the immediate recipients of services or goods might be entities related to the subject, the expenses were ultimately incurred by the subject of the Account.", 0, java.lang.Integer.MAX_VALUE, subject); 1395 case 2129104086: /*servicePeriod*/ return new Property("servicePeriod", "Period", "The date range of services associated with this account.", 0, 1, servicePeriod); 1396 case -351767064: /*coverage*/ return new Property("coverage", "", "The party(s) that are responsible for covering the payment of this account, and what order should they be applied to the account.", 0, java.lang.Integer.MAX_VALUE, coverage); 1397 case 106164915: /*owner*/ return new Property("owner", "Reference(Organization)", "Indicates the service area, hospital, department, etc. with responsibility for managing the Account.", 0, 1, owner); 1398 case -1724546052: /*description*/ return new Property("description", "string", "Provides additional information about what the account tracks and how it is used.", 0, 1, description); 1399 case -188629045: /*guarantor*/ return new Property("guarantor", "", "The parties responsible for balancing the account if other payment options fall short.", 0, java.lang.Integer.MAX_VALUE, guarantor); 1400 case -995410646: /*partOf*/ return new Property("partOf", "Reference(Account)", "Reference to a parent Account.", 0, 1, partOf); 1401 default: return super.getNamedProperty(_hash, _name, _checkValid); 1402 } 1403 1404 } 1405 1406 @Override 1407 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1408 switch (hash) { 1409 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 1410 case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration<AccountStatus> 1411 case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept 1412 case 3373707: /*name*/ return this.name == null ? new Base[0] : new Base[] {this.name}; // StringType 1413 case -1867885268: /*subject*/ return this.subject == null ? new Base[0] : this.subject.toArray(new Base[this.subject.size()]); // Reference 1414 case 2129104086: /*servicePeriod*/ return this.servicePeriod == null ? new Base[0] : new Base[] {this.servicePeriod}; // Period 1415 case -351767064: /*coverage*/ return this.coverage == null ? new Base[0] : this.coverage.toArray(new Base[this.coverage.size()]); // CoverageComponent 1416 case 106164915: /*owner*/ return this.owner == null ? new Base[0] : new Base[] {this.owner}; // Reference 1417 case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // StringType 1418 case -188629045: /*guarantor*/ return this.guarantor == null ? new Base[0] : this.guarantor.toArray(new Base[this.guarantor.size()]); // GuarantorComponent 1419 case -995410646: /*partOf*/ return this.partOf == null ? new Base[0] : new Base[] {this.partOf}; // Reference 1420 default: return super.getProperty(hash, name, checkValid); 1421 } 1422 1423 } 1424 1425 @Override 1426 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1427 switch (hash) { 1428 case -1618432855: // identifier 1429 this.getIdentifier().add(castToIdentifier(value)); // Identifier 1430 return value; 1431 case -892481550: // status 1432 value = new AccountStatusEnumFactory().fromType(castToCode(value)); 1433 this.status = (Enumeration) value; // Enumeration<AccountStatus> 1434 return value; 1435 case 3575610: // type 1436 this.type = castToCodeableConcept(value); // CodeableConcept 1437 return value; 1438 case 3373707: // name 1439 this.name = castToString(value); // StringType 1440 return value; 1441 case -1867885268: // subject 1442 this.getSubject().add(castToReference(value)); // Reference 1443 return value; 1444 case 2129104086: // servicePeriod 1445 this.servicePeriod = castToPeriod(value); // Period 1446 return value; 1447 case -351767064: // coverage 1448 this.getCoverage().add((CoverageComponent) value); // CoverageComponent 1449 return value; 1450 case 106164915: // owner 1451 this.owner = castToReference(value); // Reference 1452 return value; 1453 case -1724546052: // description 1454 this.description = castToString(value); // StringType 1455 return value; 1456 case -188629045: // guarantor 1457 this.getGuarantor().add((GuarantorComponent) value); // GuarantorComponent 1458 return value; 1459 case -995410646: // partOf 1460 this.partOf = castToReference(value); // Reference 1461 return value; 1462 default: return super.setProperty(hash, name, value); 1463 } 1464 1465 } 1466 1467 @Override 1468 public Base setProperty(String name, Base value) throws FHIRException { 1469 if (name.equals("identifier")) { 1470 this.getIdentifier().add(castToIdentifier(value)); 1471 } else if (name.equals("status")) { 1472 value = new AccountStatusEnumFactory().fromType(castToCode(value)); 1473 this.status = (Enumeration) value; // Enumeration<AccountStatus> 1474 } else if (name.equals("type")) { 1475 this.type = castToCodeableConcept(value); // CodeableConcept 1476 } else if (name.equals("name")) { 1477 this.name = castToString(value); // StringType 1478 } else if (name.equals("subject")) { 1479 this.getSubject().add(castToReference(value)); 1480 } else if (name.equals("servicePeriod")) { 1481 this.servicePeriod = castToPeriod(value); // Period 1482 } else if (name.equals("coverage")) { 1483 this.getCoverage().add((CoverageComponent) value); 1484 } else if (name.equals("owner")) { 1485 this.owner = castToReference(value); // Reference 1486 } else if (name.equals("description")) { 1487 this.description = castToString(value); // StringType 1488 } else if (name.equals("guarantor")) { 1489 this.getGuarantor().add((GuarantorComponent) value); 1490 } else if (name.equals("partOf")) { 1491 this.partOf = castToReference(value); // Reference 1492 } else 1493 return super.setProperty(name, value); 1494 return value; 1495 } 1496 1497 @Override 1498 public Base makeProperty(int hash, String name) throws FHIRException { 1499 switch (hash) { 1500 case -1618432855: return addIdentifier(); 1501 case -892481550: return getStatusElement(); 1502 case 3575610: return getType(); 1503 case 3373707: return getNameElement(); 1504 case -1867885268: return addSubject(); 1505 case 2129104086: return getServicePeriod(); 1506 case -351767064: return addCoverage(); 1507 case 106164915: return getOwner(); 1508 case -1724546052: return getDescriptionElement(); 1509 case -188629045: return addGuarantor(); 1510 case -995410646: return getPartOf(); 1511 default: return super.makeProperty(hash, name); 1512 } 1513 1514 } 1515 1516 @Override 1517 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1518 switch (hash) { 1519 case -1618432855: /*identifier*/ return new String[] {"Identifier"}; 1520 case -892481550: /*status*/ return new String[] {"code"}; 1521 case 3575610: /*type*/ return new String[] {"CodeableConcept"}; 1522 case 3373707: /*name*/ return new String[] {"string"}; 1523 case -1867885268: /*subject*/ return new String[] {"Reference"}; 1524 case 2129104086: /*servicePeriod*/ return new String[] {"Period"}; 1525 case -351767064: /*coverage*/ return new String[] {}; 1526 case 106164915: /*owner*/ return new String[] {"Reference"}; 1527 case -1724546052: /*description*/ return new String[] {"string"}; 1528 case -188629045: /*guarantor*/ return new String[] {}; 1529 case -995410646: /*partOf*/ return new String[] {"Reference"}; 1530 default: return super.getTypesForProperty(hash, name); 1531 } 1532 1533 } 1534 1535 @Override 1536 public Base addChild(String name) throws FHIRException { 1537 if (name.equals("identifier")) { 1538 return addIdentifier(); 1539 } 1540 else if (name.equals("status")) { 1541 throw new FHIRException("Cannot call addChild on a primitive type Account.status"); 1542 } 1543 else if (name.equals("type")) { 1544 this.type = new CodeableConcept(); 1545 return this.type; 1546 } 1547 else if (name.equals("name")) { 1548 throw new FHIRException("Cannot call addChild on a primitive type Account.name"); 1549 } 1550 else if (name.equals("subject")) { 1551 return addSubject(); 1552 } 1553 else if (name.equals("servicePeriod")) { 1554 this.servicePeriod = new Period(); 1555 return this.servicePeriod; 1556 } 1557 else if (name.equals("coverage")) { 1558 return addCoverage(); 1559 } 1560 else if (name.equals("owner")) { 1561 this.owner = new Reference(); 1562 return this.owner; 1563 } 1564 else if (name.equals("description")) { 1565 throw new FHIRException("Cannot call addChild on a primitive type Account.description"); 1566 } 1567 else if (name.equals("guarantor")) { 1568 return addGuarantor(); 1569 } 1570 else if (name.equals("partOf")) { 1571 this.partOf = new Reference(); 1572 return this.partOf; 1573 } 1574 else 1575 return super.addChild(name); 1576 } 1577 1578 public String fhirType() { 1579 return "Account"; 1580 1581 } 1582 1583 public Account copy() { 1584 Account dst = new Account(); 1585 copyValues(dst); 1586 return dst; 1587 } 1588 1589 public void copyValues(Account dst) { 1590 super.copyValues(dst); 1591 if (identifier != null) { 1592 dst.identifier = new ArrayList<Identifier>(); 1593 for (Identifier i : identifier) 1594 dst.identifier.add(i.copy()); 1595 }; 1596 dst.status = status == null ? null : status.copy(); 1597 dst.type = type == null ? null : type.copy(); 1598 dst.name = name == null ? null : name.copy(); 1599 if (subject != null) { 1600 dst.subject = new ArrayList<Reference>(); 1601 for (Reference i : subject) 1602 dst.subject.add(i.copy()); 1603 }; 1604 dst.servicePeriod = servicePeriod == null ? null : servicePeriod.copy(); 1605 if (coverage != null) { 1606 dst.coverage = new ArrayList<CoverageComponent>(); 1607 for (CoverageComponent i : coverage) 1608 dst.coverage.add(i.copy()); 1609 }; 1610 dst.owner = owner == null ? null : owner.copy(); 1611 dst.description = description == null ? null : description.copy(); 1612 if (guarantor != null) { 1613 dst.guarantor = new ArrayList<GuarantorComponent>(); 1614 for (GuarantorComponent i : guarantor) 1615 dst.guarantor.add(i.copy()); 1616 }; 1617 dst.partOf = partOf == null ? null : partOf.copy(); 1618 } 1619 1620 protected Account typedCopy() { 1621 return copy(); 1622 } 1623 1624 @Override 1625 public boolean equalsDeep(Base other_) { 1626 if (!super.equalsDeep(other_)) 1627 return false; 1628 if (!(other_ instanceof Account)) 1629 return false; 1630 Account o = (Account) other_; 1631 return compareDeep(identifier, o.identifier, true) && compareDeep(status, o.status, true) && compareDeep(type, o.type, true) 1632 && compareDeep(name, o.name, true) && compareDeep(subject, o.subject, true) && compareDeep(servicePeriod, o.servicePeriod, true) 1633 && compareDeep(coverage, o.coverage, true) && compareDeep(owner, o.owner, true) && compareDeep(description, o.description, true) 1634 && compareDeep(guarantor, o.guarantor, true) && compareDeep(partOf, o.partOf, true); 1635 } 1636 1637 @Override 1638 public boolean equalsShallow(Base other_) { 1639 if (!super.equalsShallow(other_)) 1640 return false; 1641 if (!(other_ instanceof Account)) 1642 return false; 1643 Account o = (Account) other_; 1644 return compareValues(status, o.status, true) && compareValues(name, o.name, true) && compareValues(description, o.description, true) 1645 ; 1646 } 1647 1648 public boolean isEmpty() { 1649 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, status, type 1650 , name, subject, servicePeriod, coverage, owner, description, guarantor, partOf 1651 ); 1652 } 1653 1654 @Override 1655 public ResourceType getResourceType() { 1656 return ResourceType.Account; 1657 } 1658 1659 /** 1660 * Search parameter: <b>owner</b> 1661 * <p> 1662 * Description: <b>Entity managing the Account</b><br> 1663 * Type: <b>reference</b><br> 1664 * Path: <b>Account.owner</b><br> 1665 * </p> 1666 */ 1667 @SearchParamDefinition(name="owner", path="Account.owner", description="Entity managing the Account", type="reference", target={Organization.class } ) 1668 public static final String SP_OWNER = "owner"; 1669 /** 1670 * <b>Fluent Client</b> search parameter constant for <b>owner</b> 1671 * <p> 1672 * Description: <b>Entity managing the Account</b><br> 1673 * Type: <b>reference</b><br> 1674 * Path: <b>Account.owner</b><br> 1675 * </p> 1676 */ 1677 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam OWNER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_OWNER); 1678 1679/** 1680 * Constant for fluent queries to be used to add include statements. Specifies 1681 * the path value of "<b>Account:owner</b>". 1682 */ 1683 public static final ca.uhn.fhir.model.api.Include INCLUDE_OWNER = new ca.uhn.fhir.model.api.Include("Account:owner").toLocked(); 1684 1685 /** 1686 * Search parameter: <b>identifier</b> 1687 * <p> 1688 * Description: <b>Account number</b><br> 1689 * Type: <b>token</b><br> 1690 * Path: <b>Account.identifier</b><br> 1691 * </p> 1692 */ 1693 @SearchParamDefinition(name="identifier", path="Account.identifier", description="Account number", type="token" ) 1694 public static final String SP_IDENTIFIER = "identifier"; 1695 /** 1696 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 1697 * <p> 1698 * Description: <b>Account number</b><br> 1699 * Type: <b>token</b><br> 1700 * Path: <b>Account.identifier</b><br> 1701 * </p> 1702 */ 1703 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 1704 1705 /** 1706 * Search parameter: <b>period</b> 1707 * <p> 1708 * Description: <b>Transaction window</b><br> 1709 * Type: <b>date</b><br> 1710 * Path: <b>Account.servicePeriod</b><br> 1711 * </p> 1712 */ 1713 @SearchParamDefinition(name="period", path="Account.servicePeriod", description="Transaction window", type="date" ) 1714 public static final String SP_PERIOD = "period"; 1715 /** 1716 * <b>Fluent Client</b> search parameter constant for <b>period</b> 1717 * <p> 1718 * Description: <b>Transaction window</b><br> 1719 * Type: <b>date</b><br> 1720 * Path: <b>Account.servicePeriod</b><br> 1721 * </p> 1722 */ 1723 public static final ca.uhn.fhir.rest.gclient.DateClientParam PERIOD = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_PERIOD); 1724 1725 /** 1726 * Search parameter: <b>subject</b> 1727 * <p> 1728 * Description: <b>The entity that caused the expenses</b><br> 1729 * Type: <b>reference</b><br> 1730 * Path: <b>Account.subject</b><br> 1731 * </p> 1732 */ 1733 @SearchParamDefinition(name="subject", path="Account.subject", description="The entity that caused the expenses", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Device"), @ca.uhn.fhir.model.api.annotation.Compartment(name="Patient"), @ca.uhn.fhir.model.api.annotation.Compartment(name="Practitioner") }, target={Device.class, HealthcareService.class, Location.class, Organization.class, Patient.class, Practitioner.class, PractitionerRole.class } ) 1734 public static final String SP_SUBJECT = "subject"; 1735 /** 1736 * <b>Fluent Client</b> search parameter constant for <b>subject</b> 1737 * <p> 1738 * Description: <b>The entity that caused the expenses</b><br> 1739 * Type: <b>reference</b><br> 1740 * Path: <b>Account.subject</b><br> 1741 * </p> 1742 */ 1743 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam SUBJECT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_SUBJECT); 1744 1745/** 1746 * Constant for fluent queries to be used to add include statements. Specifies 1747 * the path value of "<b>Account:subject</b>". 1748 */ 1749 public static final ca.uhn.fhir.model.api.Include INCLUDE_SUBJECT = new ca.uhn.fhir.model.api.Include("Account:subject").toLocked(); 1750 1751 /** 1752 * Search parameter: <b>patient</b> 1753 * <p> 1754 * Description: <b>The entity that caused the expenses</b><br> 1755 * Type: <b>reference</b><br> 1756 * Path: <b>Account.subject</b><br> 1757 * </p> 1758 */ 1759 @SearchParamDefinition(name="patient", path="Account.subject.where(resolve() is Patient)", description="The entity that caused the expenses", type="reference", target={Patient.class } ) 1760 public static final String SP_PATIENT = "patient"; 1761 /** 1762 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 1763 * <p> 1764 * Description: <b>The entity that caused the expenses</b><br> 1765 * Type: <b>reference</b><br> 1766 * Path: <b>Account.subject</b><br> 1767 * </p> 1768 */ 1769 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); 1770 1771/** 1772 * Constant for fluent queries to be used to add include statements. Specifies 1773 * the path value of "<b>Account:patient</b>". 1774 */ 1775 public static final ca.uhn.fhir.model.api.Include INCLUDE_PATIENT = new ca.uhn.fhir.model.api.Include("Account:patient").toLocked(); 1776 1777 /** 1778 * Search parameter: <b>name</b> 1779 * <p> 1780 * Description: <b>Human-readable label</b><br> 1781 * Type: <b>string</b><br> 1782 * Path: <b>Account.name</b><br> 1783 * </p> 1784 */ 1785 @SearchParamDefinition(name="name", path="Account.name", description="Human-readable label", type="string" ) 1786 public static final String SP_NAME = "name"; 1787 /** 1788 * <b>Fluent Client</b> search parameter constant for <b>name</b> 1789 * <p> 1790 * Description: <b>Human-readable label</b><br> 1791 * Type: <b>string</b><br> 1792 * Path: <b>Account.name</b><br> 1793 * </p> 1794 */ 1795 public static final ca.uhn.fhir.rest.gclient.StringClientParam NAME = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_NAME); 1796 1797 /** 1798 * Search parameter: <b>type</b> 1799 * <p> 1800 * Description: <b>E.g. patient, expense, depreciation</b><br> 1801 * Type: <b>token</b><br> 1802 * Path: <b>Account.type</b><br> 1803 * </p> 1804 */ 1805 @SearchParamDefinition(name="type", path="Account.type", description="E.g. patient, expense, depreciation", type="token" ) 1806 public static final String SP_TYPE = "type"; 1807 /** 1808 * <b>Fluent Client</b> search parameter constant for <b>type</b> 1809 * <p> 1810 * Description: <b>E.g. patient, expense, depreciation</b><br> 1811 * Type: <b>token</b><br> 1812 * Path: <b>Account.type</b><br> 1813 * </p> 1814 */ 1815 public static final ca.uhn.fhir.rest.gclient.TokenClientParam TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_TYPE); 1816 1817 /** 1818 * Search parameter: <b>status</b> 1819 * <p> 1820 * Description: <b>active | inactive | entered-in-error | on-hold | unknown</b><br> 1821 * Type: <b>token</b><br> 1822 * Path: <b>Account.status</b><br> 1823 * </p> 1824 */ 1825 @SearchParamDefinition(name="status", path="Account.status", description="active | inactive | entered-in-error | on-hold | unknown", type="token" ) 1826 public static final String SP_STATUS = "status"; 1827 /** 1828 * <b>Fluent Client</b> search parameter constant for <b>status</b> 1829 * <p> 1830 * Description: <b>active | inactive | entered-in-error | on-hold | unknown</b><br> 1831 * Type: <b>token</b><br> 1832 * Path: <b>Account.status</b><br> 1833 * </p> 1834 */ 1835 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); 1836 1837 1838}