org.hl7.fhir.ExplanationOfBenefitAdjudication3 Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of quick Show documentation
Show all versions of quick Show documentation
The quick library for the Clinical Quality Language Java reference implementation
//
// This file was generated by the Eclipse Implementation of JAXB, v3.0.2
// See https://eclipse-ee4j.github.io/jaxb-ri
// Any modifications to this file will be lost upon recompilation of the source schema.
// Generated on: 2024.08.16 at 09:36:55 AM MDT
//
package org.hl7.fhir;
import java.util.Collection;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
import jakarta.xml.bind.annotation.XmlElement;
import jakarta.xml.bind.annotation.XmlType;
import org.jvnet.jaxb2_commons.lang.Equals2;
import org.jvnet.jaxb2_commons.lang.EqualsStrategy2;
import org.jvnet.jaxb2_commons.lang.HashCode2;
import org.jvnet.jaxb2_commons.lang.HashCodeStrategy2;
import org.jvnet.jaxb2_commons.lang.JAXBEqualsStrategy;
import org.jvnet.jaxb2_commons.lang.JAXBHashCodeStrategy;
import org.jvnet.jaxb2_commons.lang.JAXBToStringStrategy;
import org.jvnet.jaxb2_commons.lang.ToString2;
import org.jvnet.jaxb2_commons.lang.ToStringStrategy2;
import org.jvnet.jaxb2_commons.locator.ObjectLocator;
import org.jvnet.jaxb2_commons.locator.util.LocatorUtils;
/**
* This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided.
*
* Java class for ExplanationOfBenefit.Adjudication3 complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="ExplanationOfBenefit.Adjudication3">
* <complexContent>
* <extension base="{http://hl7.org/fhir}BackboneElement">
* <sequence>
* <element name="category" type="{http://hl7.org/fhir}Coding"/>
* <element name="reason" type="{http://hl7.org/fhir}Coding" minOccurs="0"/>
* <element name="amount" type="{http://hl7.org/fhir}Money" minOccurs="0"/>
* <element name="value" type="{http://hl7.org/fhir}decimal" minOccurs="0"/>
* </sequence>
* </extension>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "ExplanationOfBenefit.Adjudication3", propOrder = {
"category",
"reason",
"amount",
"value"
})
public class ExplanationOfBenefitAdjudication3
extends BackboneElement
implements Equals2, HashCode2, ToString2
{
@XmlElement(required = true)
protected Coding category;
protected Coding reason;
protected Money amount;
protected Decimal value;
/**
* Gets the value of the category property.
*
* @return
* possible object is
* {@link Coding }
*
*/
public Coding getCategory() {
return category;
}
/**
* Sets the value of the category property.
*
* @param value
* allowed object is
* {@link Coding }
*
*/
public void setCategory(Coding value) {
this.category = value;
}
/**
* Gets the value of the reason property.
*
* @return
* possible object is
* {@link Coding }
*
*/
public Coding getReason() {
return reason;
}
/**
* Sets the value of the reason property.
*
* @param value
* allowed object is
* {@link Coding }
*
*/
public void setReason(Coding value) {
this.reason = value;
}
/**
* Gets the value of the amount property.
*
* @return
* possible object is
* {@link Money }
*
*/
public Money getAmount() {
return amount;
}
/**
* Sets the value of the amount property.
*
* @param value
* allowed object is
* {@link Money }
*
*/
public void setAmount(Money value) {
this.amount = value;
}
/**
* Gets the value of the value property.
*
* @return
* possible object is
* {@link Decimal }
*
*/
public Decimal getValue() {
return value;
}
/**
* Sets the value of the value property.
*
* @param value
* allowed object is
* {@link Decimal }
*
*/
public void setValue(Decimal value) {
this.value = value;
}
public ExplanationOfBenefitAdjudication3 withCategory(Coding value) {
setCategory(value);
return this;
}
public ExplanationOfBenefitAdjudication3 withReason(Coding value) {
setReason(value);
return this;
}
public ExplanationOfBenefitAdjudication3 withAmount(Money value) {
setAmount(value);
return this;
}
public ExplanationOfBenefitAdjudication3 withValue(Decimal value) {
setValue(value);
return this;
}
@Override
public ExplanationOfBenefitAdjudication3 withModifierExtension(Extension... values) {
if (values!= null) {
for (Extension value: values) {
getModifierExtension().add(value);
}
}
return this;
}
@Override
public ExplanationOfBenefitAdjudication3 withModifierExtension(Collection values) {
if (values!= null) {
getModifierExtension().addAll(values);
}
return this;
}
@Override
public ExplanationOfBenefitAdjudication3 withExtension(Extension... values) {
if (values!= null) {
for (Extension value: values) {
getExtension().add(value);
}
}
return this;
}
@Override
public ExplanationOfBenefitAdjudication3 withExtension(Collection values) {
if (values!= null) {
getExtension().addAll(values);
}
return this;
}
@Override
public ExplanationOfBenefitAdjudication3 withId(java.lang.String value) {
setId(value);
return this;
}
@Override
public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy2 strategy) {
if ((object == null)||(this.getClass()!= object.getClass())) {
return false;
}
if (this == object) {
return true;
}
if (!super.equals(thisLocator, thatLocator, object, strategy)) {
return false;
}
final ExplanationOfBenefitAdjudication3 that = ((ExplanationOfBenefitAdjudication3) object);
{
Coding lhsCategory;
lhsCategory = this.getCategory();
Coding rhsCategory;
rhsCategory = that.getCategory();
if (!strategy.equals(LocatorUtils.property(thisLocator, "category", lhsCategory), LocatorUtils.property(thatLocator, "category", rhsCategory), lhsCategory, rhsCategory, (this.category!= null), (that.category!= null))) {
return false;
}
}
{
Coding lhsReason;
lhsReason = this.getReason();
Coding rhsReason;
rhsReason = that.getReason();
if (!strategy.equals(LocatorUtils.property(thisLocator, "reason", lhsReason), LocatorUtils.property(thatLocator, "reason", rhsReason), lhsReason, rhsReason, (this.reason!= null), (that.reason!= null))) {
return false;
}
}
{
Money lhsAmount;
lhsAmount = this.getAmount();
Money rhsAmount;
rhsAmount = that.getAmount();
if (!strategy.equals(LocatorUtils.property(thisLocator, "amount", lhsAmount), LocatorUtils.property(thatLocator, "amount", rhsAmount), lhsAmount, rhsAmount, (this.amount!= null), (that.amount!= null))) {
return false;
}
}
{
Decimal lhsValue;
lhsValue = this.getValue();
Decimal rhsValue;
rhsValue = that.getValue();
if (!strategy.equals(LocatorUtils.property(thisLocator, "value", lhsValue), LocatorUtils.property(thatLocator, "value", rhsValue), lhsValue, rhsValue, (this.value!= null), (that.value!= null))) {
return false;
}
}
return true;
}
@Override
public boolean equals(Object object) {
final EqualsStrategy2 strategy = JAXBEqualsStrategy.getInstance();
return equals(null, null, object, strategy);
}
@Override
public int hashCode(ObjectLocator locator, HashCodeStrategy2 strategy) {
int currentHashCode = super.hashCode(locator, strategy);
{
Coding theCategory;
theCategory = this.getCategory();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "category", theCategory), currentHashCode, theCategory, (this.category!= null));
}
{
Coding theReason;
theReason = this.getReason();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "reason", theReason), currentHashCode, theReason, (this.reason!= null));
}
{
Money theAmount;
theAmount = this.getAmount();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "amount", theAmount), currentHashCode, theAmount, (this.amount!= null));
}
{
Decimal theValue;
theValue = this.getValue();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "value", theValue), currentHashCode, theValue, (this.value!= null));
}
return currentHashCode;
}
@Override
public int hashCode() {
final HashCodeStrategy2 strategy = JAXBHashCodeStrategy.getInstance();
return this.hashCode(null, strategy);
}
@Override
public java.lang.String toString() {
final ToStringStrategy2 strategy = JAXBToStringStrategy.getInstance();
final StringBuilder buffer = new StringBuilder();
append(null, buffer, strategy);
return buffer.toString();
}
@Override
public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy2 strategy) {
strategy.appendStart(locator, this, buffer);
appendFields(locator, buffer, strategy);
strategy.appendEnd(locator, this, buffer);
return buffer;
}
@Override
public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy2 strategy) {
super.appendFields(locator, buffer, strategy);
{
Coding theCategory;
theCategory = this.getCategory();
strategy.appendField(locator, this, "category", buffer, theCategory, (this.category!= null));
}
{
Coding theReason;
theReason = this.getReason();
strategy.appendField(locator, this, "reason", buffer, theReason, (this.reason!= null));
}
{
Money theAmount;
theAmount = this.getAmount();
strategy.appendField(locator, this, "amount", buffer, theAmount, (this.amount!= null));
}
{
Decimal theValue;
theValue = this.getValue();
strategy.appendField(locator, this, "value", buffer, theValue, (this.value!= null));
}
return buffer;
}
}