001package org.hl7.fhir.dstu2.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 Wed, Jul 13, 2016 05:32+1000 for FHIR v1.0.2 036import java.util.ArrayList; 037import java.util.Date; 038import java.util.List; 039 040import ca.uhn.fhir.model.api.annotation.Child; 041import ca.uhn.fhir.model.api.annotation.Description; 042import ca.uhn.fhir.model.api.annotation.ResourceDef; 043import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; 044import org.hl7.fhir.exceptions.FHIRException; 045/** 046 * This resource provides the status of the payment for goods and services rendered, and the request and response resource references. 047 */ 048@ResourceDef(name="PaymentNotice", profile="http://hl7.org/fhir/Profile/PaymentNotice") 049public class PaymentNotice extends DomainResource { 050 051 /** 052 * The Response business identifier. 053 */ 054 @Child(name = "identifier", type = {Identifier.class}, order=0, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 055 @Description(shortDefinition="Business Identifier", formalDefinition="The Response business identifier." ) 056 protected List<Identifier> identifier; 057 058 /** 059 * The version of the style of resource contents. This should be mapped to the allowable profiles for this and supporting resources. 060 */ 061 @Child(name = "ruleset", type = {Coding.class}, order=1, min=0, max=1, modifier=false, summary=true) 062 @Description(shortDefinition="Resource version", formalDefinition="The version of the style of resource contents. This should be mapped to the allowable profiles for this and supporting resources." ) 063 protected Coding ruleset; 064 065 /** 066 * The style (standard) and version of the original material which was converted into this resource. 067 */ 068 @Child(name = "originalRuleset", type = {Coding.class}, order=2, min=0, max=1, modifier=false, summary=true) 069 @Description(shortDefinition="Original version", formalDefinition="The style (standard) and version of the original material which was converted into this resource." ) 070 protected Coding originalRuleset; 071 072 /** 073 * The date when this resource was created. 074 */ 075 @Child(name = "created", type = {DateTimeType.class}, order=3, min=0, max=1, modifier=false, summary=true) 076 @Description(shortDefinition="Creation date", formalDefinition="The date when this resource was created." ) 077 protected DateTimeType created; 078 079 /** 080 * The Insurer who is target of the request. 081 */ 082 @Child(name = "target", type = {Organization.class}, order=4, min=0, max=1, modifier=false, summary=true) 083 @Description(shortDefinition="Insurer or Regulatory body", formalDefinition="The Insurer who is target of the request." ) 084 protected Reference target; 085 086 /** 087 * The actual object that is the target of the reference (The Insurer who is target of the request.) 088 */ 089 protected Organization targetTarget; 090 091 /** 092 * The practitioner who is responsible for the services rendered to the patient. 093 */ 094 @Child(name = "provider", type = {Practitioner.class}, order=5, min=0, max=1, modifier=false, summary=true) 095 @Description(shortDefinition="Responsible practitioner", formalDefinition="The practitioner who is responsible for the services rendered to the patient." ) 096 protected Reference provider; 097 098 /** 099 * The actual object that is the target of the reference (The practitioner who is responsible for the services rendered to the patient.) 100 */ 101 protected Practitioner providerTarget; 102 103 /** 104 * The organization which is responsible for the services rendered to the patient. 105 */ 106 @Child(name = "organization", type = {Organization.class}, order=6, min=0, max=1, modifier=false, summary=true) 107 @Description(shortDefinition="Responsible organization", formalDefinition="The organization which is responsible for the services rendered to the patient." ) 108 protected Reference organization; 109 110 /** 111 * The actual object that is the target of the reference (The organization which is responsible for the services rendered to the patient.) 112 */ 113 protected Organization organizationTarget; 114 115 /** 116 * Reference of resource to reverse. 117 */ 118 @Child(name = "request", type = {}, order=7, min=0, max=1, modifier=false, summary=true) 119 @Description(shortDefinition="Request reference", formalDefinition="Reference of resource to reverse." ) 120 protected Reference request; 121 122 /** 123 * The actual object that is the target of the reference (Reference of resource to reverse.) 124 */ 125 protected Resource requestTarget; 126 127 /** 128 * Reference of response to resource to reverse. 129 */ 130 @Child(name = "response", type = {}, order=8, min=0, max=1, modifier=false, summary=true) 131 @Description(shortDefinition="Response reference", formalDefinition="Reference of response to resource to reverse." ) 132 protected Reference response; 133 134 /** 135 * The actual object that is the target of the reference (Reference of response to resource to reverse.) 136 */ 137 protected Resource responseTarget; 138 139 /** 140 * The payment status, typically paid: payment sent, cleared: payment received. 141 */ 142 @Child(name = "paymentStatus", type = {Coding.class}, order=9, min=1, max=1, modifier=false, summary=true) 143 @Description(shortDefinition="Status of the payment", formalDefinition="The payment status, typically paid: payment sent, cleared: payment received." ) 144 protected Coding paymentStatus; 145 146 private static final long serialVersionUID = -394826458L; 147 148 /* 149 * Constructor 150 */ 151 public PaymentNotice() { 152 super(); 153 } 154 155 /* 156 * Constructor 157 */ 158 public PaymentNotice(Coding paymentStatus) { 159 super(); 160 this.paymentStatus = paymentStatus; 161 } 162 163 /** 164 * @return {@link #identifier} (The Response business identifier.) 165 */ 166 public List<Identifier> getIdentifier() { 167 if (this.identifier == null) 168 this.identifier = new ArrayList<Identifier>(); 169 return this.identifier; 170 } 171 172 public boolean hasIdentifier() { 173 if (this.identifier == null) 174 return false; 175 for (Identifier item : this.identifier) 176 if (!item.isEmpty()) 177 return true; 178 return false; 179 } 180 181 /** 182 * @return {@link #identifier} (The Response business identifier.) 183 */ 184 // syntactic sugar 185 public Identifier addIdentifier() { //3 186 Identifier t = new Identifier(); 187 if (this.identifier == null) 188 this.identifier = new ArrayList<Identifier>(); 189 this.identifier.add(t); 190 return t; 191 } 192 193 // syntactic sugar 194 public PaymentNotice addIdentifier(Identifier t) { //3 195 if (t == null) 196 return this; 197 if (this.identifier == null) 198 this.identifier = new ArrayList<Identifier>(); 199 this.identifier.add(t); 200 return this; 201 } 202 203 /** 204 * @return {@link #ruleset} (The version of the style of resource contents. This should be mapped to the allowable profiles for this and supporting resources.) 205 */ 206 public Coding getRuleset() { 207 if (this.ruleset == null) 208 if (Configuration.errorOnAutoCreate()) 209 throw new Error("Attempt to auto-create PaymentNotice.ruleset"); 210 else if (Configuration.doAutoCreate()) 211 this.ruleset = new Coding(); // cc 212 return this.ruleset; 213 } 214 215 public boolean hasRuleset() { 216 return this.ruleset != null && !this.ruleset.isEmpty(); 217 } 218 219 /** 220 * @param value {@link #ruleset} (The version of the style of resource contents. This should be mapped to the allowable profiles for this and supporting resources.) 221 */ 222 public PaymentNotice setRuleset(Coding value) { 223 this.ruleset = value; 224 return this; 225 } 226 227 /** 228 * @return {@link #originalRuleset} (The style (standard) and version of the original material which was converted into this resource.) 229 */ 230 public Coding getOriginalRuleset() { 231 if (this.originalRuleset == null) 232 if (Configuration.errorOnAutoCreate()) 233 throw new Error("Attempt to auto-create PaymentNotice.originalRuleset"); 234 else if (Configuration.doAutoCreate()) 235 this.originalRuleset = new Coding(); // cc 236 return this.originalRuleset; 237 } 238 239 public boolean hasOriginalRuleset() { 240 return this.originalRuleset != null && !this.originalRuleset.isEmpty(); 241 } 242 243 /** 244 * @param value {@link #originalRuleset} (The style (standard) and version of the original material which was converted into this resource.) 245 */ 246 public PaymentNotice setOriginalRuleset(Coding value) { 247 this.originalRuleset = value; 248 return this; 249 } 250 251 /** 252 * @return {@link #created} (The date when this resource was created.). This is the underlying object with id, value and extensions. The accessor "getCreated" gives direct access to the value 253 */ 254 public DateTimeType getCreatedElement() { 255 if (this.created == null) 256 if (Configuration.errorOnAutoCreate()) 257 throw new Error("Attempt to auto-create PaymentNotice.created"); 258 else if (Configuration.doAutoCreate()) 259 this.created = new DateTimeType(); // bb 260 return this.created; 261 } 262 263 public boolean hasCreatedElement() { 264 return this.created != null && !this.created.isEmpty(); 265 } 266 267 public boolean hasCreated() { 268 return this.created != null && !this.created.isEmpty(); 269 } 270 271 /** 272 * @param value {@link #created} (The date when this resource was created.). This is the underlying object with id, value and extensions. The accessor "getCreated" gives direct access to the value 273 */ 274 public PaymentNotice setCreatedElement(DateTimeType value) { 275 this.created = value; 276 return this; 277 } 278 279 /** 280 * @return The date when this resource was created. 281 */ 282 public Date getCreated() { 283 return this.created == null ? null : this.created.getValue(); 284 } 285 286 /** 287 * @param value The date when this resource was created. 288 */ 289 public PaymentNotice setCreated(Date value) { 290 if (value == null) 291 this.created = null; 292 else { 293 if (this.created == null) 294 this.created = new DateTimeType(); 295 this.created.setValue(value); 296 } 297 return this; 298 } 299 300 /** 301 * @return {@link #target} (The Insurer who is target of the request.) 302 */ 303 public Reference getTarget() { 304 if (this.target == null) 305 if (Configuration.errorOnAutoCreate()) 306 throw new Error("Attempt to auto-create PaymentNotice.target"); 307 else if (Configuration.doAutoCreate()) 308 this.target = new Reference(); // cc 309 return this.target; 310 } 311 312 public boolean hasTarget() { 313 return this.target != null && !this.target.isEmpty(); 314 } 315 316 /** 317 * @param value {@link #target} (The Insurer who is target of the request.) 318 */ 319 public PaymentNotice setTarget(Reference value) { 320 this.target = value; 321 return this; 322 } 323 324 /** 325 * @return {@link #target} 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 Insurer who is target of the request.) 326 */ 327 public Organization getTargetTarget() { 328 if (this.targetTarget == null) 329 if (Configuration.errorOnAutoCreate()) 330 throw new Error("Attempt to auto-create PaymentNotice.target"); 331 else if (Configuration.doAutoCreate()) 332 this.targetTarget = new Organization(); // aa 333 return this.targetTarget; 334 } 335 336 /** 337 * @param value {@link #target} 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 Insurer who is target of the request.) 338 */ 339 public PaymentNotice setTargetTarget(Organization value) { 340 this.targetTarget = value; 341 return this; 342 } 343 344 /** 345 * @return {@link #provider} (The practitioner who is responsible for the services rendered to the patient.) 346 */ 347 public Reference getProvider() { 348 if (this.provider == null) 349 if (Configuration.errorOnAutoCreate()) 350 throw new Error("Attempt to auto-create PaymentNotice.provider"); 351 else if (Configuration.doAutoCreate()) 352 this.provider = new Reference(); // cc 353 return this.provider; 354 } 355 356 public boolean hasProvider() { 357 return this.provider != null && !this.provider.isEmpty(); 358 } 359 360 /** 361 * @param value {@link #provider} (The practitioner who is responsible for the services rendered to the patient.) 362 */ 363 public PaymentNotice setProvider(Reference value) { 364 this.provider = value; 365 return this; 366 } 367 368 /** 369 * @return {@link #provider} 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 practitioner who is responsible for the services rendered to the patient.) 370 */ 371 public Practitioner getProviderTarget() { 372 if (this.providerTarget == null) 373 if (Configuration.errorOnAutoCreate()) 374 throw new Error("Attempt to auto-create PaymentNotice.provider"); 375 else if (Configuration.doAutoCreate()) 376 this.providerTarget = new Practitioner(); // aa 377 return this.providerTarget; 378 } 379 380 /** 381 * @param value {@link #provider} 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 practitioner who is responsible for the services rendered to the patient.) 382 */ 383 public PaymentNotice setProviderTarget(Practitioner value) { 384 this.providerTarget = value; 385 return this; 386 } 387 388 /** 389 * @return {@link #organization} (The organization which is responsible for the services rendered to the patient.) 390 */ 391 public Reference getOrganization() { 392 if (this.organization == null) 393 if (Configuration.errorOnAutoCreate()) 394 throw new Error("Attempt to auto-create PaymentNotice.organization"); 395 else if (Configuration.doAutoCreate()) 396 this.organization = new Reference(); // cc 397 return this.organization; 398 } 399 400 public boolean hasOrganization() { 401 return this.organization != null && !this.organization.isEmpty(); 402 } 403 404 /** 405 * @param value {@link #organization} (The organization which is responsible for the services rendered to the patient.) 406 */ 407 public PaymentNotice setOrganization(Reference value) { 408 this.organization = value; 409 return this; 410 } 411 412 /** 413 * @return {@link #organization} 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 organization which is responsible for the services rendered to the patient.) 414 */ 415 public Organization getOrganizationTarget() { 416 if (this.organizationTarget == null) 417 if (Configuration.errorOnAutoCreate()) 418 throw new Error("Attempt to auto-create PaymentNotice.organization"); 419 else if (Configuration.doAutoCreate()) 420 this.organizationTarget = new Organization(); // aa 421 return this.organizationTarget; 422 } 423 424 /** 425 * @param value {@link #organization} 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 organization which is responsible for the services rendered to the patient.) 426 */ 427 public PaymentNotice setOrganizationTarget(Organization value) { 428 this.organizationTarget = value; 429 return this; 430 } 431 432 /** 433 * @return {@link #request} (Reference of resource to reverse.) 434 */ 435 public Reference getRequest() { 436 if (this.request == null) 437 if (Configuration.errorOnAutoCreate()) 438 throw new Error("Attempt to auto-create PaymentNotice.request"); 439 else if (Configuration.doAutoCreate()) 440 this.request = new Reference(); // cc 441 return this.request; 442 } 443 444 public boolean hasRequest() { 445 return this.request != null && !this.request.isEmpty(); 446 } 447 448 /** 449 * @param value {@link #request} (Reference of resource to reverse.) 450 */ 451 public PaymentNotice setRequest(Reference value) { 452 this.request = value; 453 return this; 454 } 455 456 /** 457 * @return {@link #request} 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 of resource to reverse.) 458 */ 459 public Resource getRequestTarget() { 460 return this.requestTarget; 461 } 462 463 /** 464 * @param value {@link #request} 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 of resource to reverse.) 465 */ 466 public PaymentNotice setRequestTarget(Resource value) { 467 this.requestTarget = value; 468 return this; 469 } 470 471 /** 472 * @return {@link #response} (Reference of response to resource to reverse.) 473 */ 474 public Reference getResponse() { 475 if (this.response == null) 476 if (Configuration.errorOnAutoCreate()) 477 throw new Error("Attempt to auto-create PaymentNotice.response"); 478 else if (Configuration.doAutoCreate()) 479 this.response = new Reference(); // cc 480 return this.response; 481 } 482 483 public boolean hasResponse() { 484 return this.response != null && !this.response.isEmpty(); 485 } 486 487 /** 488 * @param value {@link #response} (Reference of response to resource to reverse.) 489 */ 490 public PaymentNotice setResponse(Reference value) { 491 this.response = value; 492 return this; 493 } 494 495 /** 496 * @return {@link #response} 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 of response to resource to reverse.) 497 */ 498 public Resource getResponseTarget() { 499 return this.responseTarget; 500 } 501 502 /** 503 * @param value {@link #response} 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 of response to resource to reverse.) 504 */ 505 public PaymentNotice setResponseTarget(Resource value) { 506 this.responseTarget = value; 507 return this; 508 } 509 510 /** 511 * @return {@link #paymentStatus} (The payment status, typically paid: payment sent, cleared: payment received.) 512 */ 513 public Coding getPaymentStatus() { 514 if (this.paymentStatus == null) 515 if (Configuration.errorOnAutoCreate()) 516 throw new Error("Attempt to auto-create PaymentNotice.paymentStatus"); 517 else if (Configuration.doAutoCreate()) 518 this.paymentStatus = new Coding(); // cc 519 return this.paymentStatus; 520 } 521 522 public boolean hasPaymentStatus() { 523 return this.paymentStatus != null && !this.paymentStatus.isEmpty(); 524 } 525 526 /** 527 * @param value {@link #paymentStatus} (The payment status, typically paid: payment sent, cleared: payment received.) 528 */ 529 public PaymentNotice setPaymentStatus(Coding value) { 530 this.paymentStatus = value; 531 return this; 532 } 533 534 protected void listChildren(List<Property> childrenList) { 535 super.listChildren(childrenList); 536 childrenList.add(new Property("identifier", "Identifier", "The Response business identifier.", 0, java.lang.Integer.MAX_VALUE, identifier)); 537 childrenList.add(new Property("ruleset", "Coding", "The version of the style of resource contents. This should be mapped to the allowable profiles for this and supporting resources.", 0, java.lang.Integer.MAX_VALUE, ruleset)); 538 childrenList.add(new Property("originalRuleset", "Coding", "The style (standard) and version of the original material which was converted into this resource.", 0, java.lang.Integer.MAX_VALUE, originalRuleset)); 539 childrenList.add(new Property("created", "dateTime", "The date when this resource was created.", 0, java.lang.Integer.MAX_VALUE, created)); 540 childrenList.add(new Property("target", "Reference(Organization)", "The Insurer who is target of the request.", 0, java.lang.Integer.MAX_VALUE, target)); 541 childrenList.add(new Property("provider", "Reference(Practitioner)", "The practitioner who is responsible for the services rendered to the patient.", 0, java.lang.Integer.MAX_VALUE, provider)); 542 childrenList.add(new Property("organization", "Reference(Organization)", "The organization which is responsible for the services rendered to the patient.", 0, java.lang.Integer.MAX_VALUE, organization)); 543 childrenList.add(new Property("request", "Reference(Any)", "Reference of resource to reverse.", 0, java.lang.Integer.MAX_VALUE, request)); 544 childrenList.add(new Property("response", "Reference(Any)", "Reference of response to resource to reverse.", 0, java.lang.Integer.MAX_VALUE, response)); 545 childrenList.add(new Property("paymentStatus", "Coding", "The payment status, typically paid: payment sent, cleared: payment received.", 0, java.lang.Integer.MAX_VALUE, paymentStatus)); 546 } 547 548 @Override 549 public void setProperty(String name, Base value) throws FHIRException { 550 if (name.equals("identifier")) 551 this.getIdentifier().add(castToIdentifier(value)); 552 else if (name.equals("ruleset")) 553 this.ruleset = castToCoding(value); // Coding 554 else if (name.equals("originalRuleset")) 555 this.originalRuleset = castToCoding(value); // Coding 556 else if (name.equals("created")) 557 this.created = castToDateTime(value); // DateTimeType 558 else if (name.equals("target")) 559 this.target = castToReference(value); // Reference 560 else if (name.equals("provider")) 561 this.provider = castToReference(value); // Reference 562 else if (name.equals("organization")) 563 this.organization = castToReference(value); // Reference 564 else if (name.equals("request")) 565 this.request = castToReference(value); // Reference 566 else if (name.equals("response")) 567 this.response = castToReference(value); // Reference 568 else if (name.equals("paymentStatus")) 569 this.paymentStatus = castToCoding(value); // Coding 570 else 571 super.setProperty(name, value); 572 } 573 574 @Override 575 public Base addChild(String name) throws FHIRException { 576 if (name.equals("identifier")) { 577 return addIdentifier(); 578 } 579 else if (name.equals("ruleset")) { 580 this.ruleset = new Coding(); 581 return this.ruleset; 582 } 583 else if (name.equals("originalRuleset")) { 584 this.originalRuleset = new Coding(); 585 return this.originalRuleset; 586 } 587 else if (name.equals("created")) { 588 throw new FHIRException("Cannot call addChild on a primitive type PaymentNotice.created"); 589 } 590 else if (name.equals("target")) { 591 this.target = new Reference(); 592 return this.target; 593 } 594 else if (name.equals("provider")) { 595 this.provider = new Reference(); 596 return this.provider; 597 } 598 else if (name.equals("organization")) { 599 this.organization = new Reference(); 600 return this.organization; 601 } 602 else if (name.equals("request")) { 603 this.request = new Reference(); 604 return this.request; 605 } 606 else if (name.equals("response")) { 607 this.response = new Reference(); 608 return this.response; 609 } 610 else if (name.equals("paymentStatus")) { 611 this.paymentStatus = new Coding(); 612 return this.paymentStatus; 613 } 614 else 615 return super.addChild(name); 616 } 617 618 public String fhirType() { 619 return "PaymentNotice"; 620 621 } 622 623 public PaymentNotice copy() { 624 PaymentNotice dst = new PaymentNotice(); 625 copyValues(dst); 626 if (identifier != null) { 627 dst.identifier = new ArrayList<Identifier>(); 628 for (Identifier i : identifier) 629 dst.identifier.add(i.copy()); 630 }; 631 dst.ruleset = ruleset == null ? null : ruleset.copy(); 632 dst.originalRuleset = originalRuleset == null ? null : originalRuleset.copy(); 633 dst.created = created == null ? null : created.copy(); 634 dst.target = target == null ? null : target.copy(); 635 dst.provider = provider == null ? null : provider.copy(); 636 dst.organization = organization == null ? null : organization.copy(); 637 dst.request = request == null ? null : request.copy(); 638 dst.response = response == null ? null : response.copy(); 639 dst.paymentStatus = paymentStatus == null ? null : paymentStatus.copy(); 640 return dst; 641 } 642 643 protected PaymentNotice typedCopy() { 644 return copy(); 645 } 646 647 @Override 648 public boolean equalsDeep(Base other) { 649 if (!super.equalsDeep(other)) 650 return false; 651 if (!(other instanceof PaymentNotice)) 652 return false; 653 PaymentNotice o = (PaymentNotice) other; 654 return compareDeep(identifier, o.identifier, true) && compareDeep(ruleset, o.ruleset, true) && compareDeep(originalRuleset, o.originalRuleset, true) 655 && compareDeep(created, o.created, true) && compareDeep(target, o.target, true) && compareDeep(provider, o.provider, true) 656 && compareDeep(organization, o.organization, true) && compareDeep(request, o.request, true) && compareDeep(response, o.response, true) 657 && compareDeep(paymentStatus, o.paymentStatus, true); 658 } 659 660 @Override 661 public boolean equalsShallow(Base other) { 662 if (!super.equalsShallow(other)) 663 return false; 664 if (!(other instanceof PaymentNotice)) 665 return false; 666 PaymentNotice o = (PaymentNotice) other; 667 return compareValues(created, o.created, true); 668 } 669 670 public boolean isEmpty() { 671 return super.isEmpty() && (identifier == null || identifier.isEmpty()) && (ruleset == null || ruleset.isEmpty()) 672 && (originalRuleset == null || originalRuleset.isEmpty()) && (created == null || created.isEmpty()) 673 && (target == null || target.isEmpty()) && (provider == null || provider.isEmpty()) && (organization == null || organization.isEmpty()) 674 && (request == null || request.isEmpty()) && (response == null || response.isEmpty()) && (paymentStatus == null || paymentStatus.isEmpty()) 675 ; 676 } 677 678 @Override 679 public ResourceType getResourceType() { 680 return ResourceType.PaymentNotice; 681 } 682 683 @SearchParamDefinition(name="identifier", path="PaymentNotice.identifier", description="The business identifier of the Eligibility", type="token" ) 684 public static final String SP_IDENTIFIER = "identifier"; 685 686}