org.hl7.fhir.ExplanationOfBenefitProcedure 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: 2023.12.08 at 08:47:56 AM MST
//
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.Procedure complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="ExplanationOfBenefit.Procedure">
* <complexContent>
* <extension base="{http://hl7.org/fhir}BackboneElement">
* <sequence>
* <element name="sequence" type="{http://hl7.org/fhir}positiveInt"/>
* <element name="date" type="{http://hl7.org/fhir}dateTime" minOccurs="0"/>
* <choice>
* <element name="procedureCoding" type="{http://hl7.org/fhir}Coding"/>
* <element name="procedureReference" type="{http://hl7.org/fhir}Reference"/>
* </choice>
* </sequence>
* </extension>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "ExplanationOfBenefit.Procedure", propOrder = {
"sequence",
"date",
"procedureCoding",
"procedureReference"
})
public class ExplanationOfBenefitProcedure
extends BackboneElement
implements Equals2, HashCode2, ToString2
{
@XmlElement(required = true)
protected PositiveInt sequence;
protected DateTime date;
protected Coding procedureCoding;
protected Reference procedureReference;
/**
* Gets the value of the sequence property.
*
* @return
* possible object is
* {@link PositiveInt }
*
*/
public PositiveInt getSequence() {
return sequence;
}
/**
* Sets the value of the sequence property.
*
* @param value
* allowed object is
* {@link PositiveInt }
*
*/
public void setSequence(PositiveInt value) {
this.sequence = value;
}
/**
* Gets the value of the date property.
*
* @return
* possible object is
* {@link DateTime }
*
*/
public DateTime getDate() {
return date;
}
/**
* Sets the value of the date property.
*
* @param value
* allowed object is
* {@link DateTime }
*
*/
public void setDate(DateTime value) {
this.date = value;
}
/**
* Gets the value of the procedureCoding property.
*
* @return
* possible object is
* {@link Coding }
*
*/
public Coding getProcedureCoding() {
return procedureCoding;
}
/**
* Sets the value of the procedureCoding property.
*
* @param value
* allowed object is
* {@link Coding }
*
*/
public void setProcedureCoding(Coding value) {
this.procedureCoding = value;
}
/**
* Gets the value of the procedureReference property.
*
* @return
* possible object is
* {@link Reference }
*
*/
public Reference getProcedureReference() {
return procedureReference;
}
/**
* Sets the value of the procedureReference property.
*
* @param value
* allowed object is
* {@link Reference }
*
*/
public void setProcedureReference(Reference value) {
this.procedureReference = value;
}
public ExplanationOfBenefitProcedure withSequence(PositiveInt value) {
setSequence(value);
return this;
}
public ExplanationOfBenefitProcedure withDate(DateTime value) {
setDate(value);
return this;
}
public ExplanationOfBenefitProcedure withProcedureCoding(Coding value) {
setProcedureCoding(value);
return this;
}
public ExplanationOfBenefitProcedure withProcedureReference(Reference value) {
setProcedureReference(value);
return this;
}
@Override
public ExplanationOfBenefitProcedure withModifierExtension(Extension... values) {
if (values!= null) {
for (Extension value: values) {
getModifierExtension().add(value);
}
}
return this;
}
@Override
public ExplanationOfBenefitProcedure withModifierExtension(Collection values) {
if (values!= null) {
getModifierExtension().addAll(values);
}
return this;
}
@Override
public ExplanationOfBenefitProcedure withExtension(Extension... values) {
if (values!= null) {
for (Extension value: values) {
getExtension().add(value);
}
}
return this;
}
@Override
public ExplanationOfBenefitProcedure withExtension(Collection values) {
if (values!= null) {
getExtension().addAll(values);
}
return this;
}
@Override
public ExplanationOfBenefitProcedure 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 ExplanationOfBenefitProcedure that = ((ExplanationOfBenefitProcedure) object);
{
PositiveInt lhsSequence;
lhsSequence = this.getSequence();
PositiveInt rhsSequence;
rhsSequence = that.getSequence();
if (!strategy.equals(LocatorUtils.property(thisLocator, "sequence", lhsSequence), LocatorUtils.property(thatLocator, "sequence", rhsSequence), lhsSequence, rhsSequence, (this.sequence!= null), (that.sequence!= null))) {
return false;
}
}
{
DateTime lhsDate;
lhsDate = this.getDate();
DateTime rhsDate;
rhsDate = that.getDate();
if (!strategy.equals(LocatorUtils.property(thisLocator, "date", lhsDate), LocatorUtils.property(thatLocator, "date", rhsDate), lhsDate, rhsDate, (this.date!= null), (that.date!= null))) {
return false;
}
}
{
Coding lhsProcedureCoding;
lhsProcedureCoding = this.getProcedureCoding();
Coding rhsProcedureCoding;
rhsProcedureCoding = that.getProcedureCoding();
if (!strategy.equals(LocatorUtils.property(thisLocator, "procedureCoding", lhsProcedureCoding), LocatorUtils.property(thatLocator, "procedureCoding", rhsProcedureCoding), lhsProcedureCoding, rhsProcedureCoding, (this.procedureCoding!= null), (that.procedureCoding!= null))) {
return false;
}
}
{
Reference lhsProcedureReference;
lhsProcedureReference = this.getProcedureReference();
Reference rhsProcedureReference;
rhsProcedureReference = that.getProcedureReference();
if (!strategy.equals(LocatorUtils.property(thisLocator, "procedureReference", lhsProcedureReference), LocatorUtils.property(thatLocator, "procedureReference", rhsProcedureReference), lhsProcedureReference, rhsProcedureReference, (this.procedureReference!= null), (that.procedureReference!= 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);
{
PositiveInt theSequence;
theSequence = this.getSequence();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "sequence", theSequence), currentHashCode, theSequence, (this.sequence!= null));
}
{
DateTime theDate;
theDate = this.getDate();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "date", theDate), currentHashCode, theDate, (this.date!= null));
}
{
Coding theProcedureCoding;
theProcedureCoding = this.getProcedureCoding();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "procedureCoding", theProcedureCoding), currentHashCode, theProcedureCoding, (this.procedureCoding!= null));
}
{
Reference theProcedureReference;
theProcedureReference = this.getProcedureReference();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "procedureReference", theProcedureReference), currentHashCode, theProcedureReference, (this.procedureReference!= 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);
{
PositiveInt theSequence;
theSequence = this.getSequence();
strategy.appendField(locator, this, "sequence", buffer, theSequence, (this.sequence!= null));
}
{
DateTime theDate;
theDate = this.getDate();
strategy.appendField(locator, this, "date", buffer, theDate, (this.date!= null));
}
{
Coding theProcedureCoding;
theProcedureCoding = this.getProcedureCoding();
strategy.appendField(locator, this, "procedureCoding", buffer, theProcedureCoding, (this.procedureCoding!= null));
}
{
Reference theProcedureReference;
theProcedureReference = this.getProcedureReference();
strategy.appendField(locator, this, "procedureReference", buffer, theProcedureReference, (this.procedureReference!= null));
}
return buffer;
}
}