org.hl7.fhir.ClaimProcedure 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;
/**
* A provider issued list of services and products provided, or to be provided, to a patient which is provided to an insurer for payment recovery.
*
* Java class for Claim.Procedure complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="Claim.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 = "Claim.Procedure", propOrder = {
"sequence",
"date",
"procedureCoding",
"procedureReference"
})
public class ClaimProcedure
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 ClaimProcedure withSequence(PositiveInt value) {
setSequence(value);
return this;
}
public ClaimProcedure withDate(DateTime value) {
setDate(value);
return this;
}
public ClaimProcedure withProcedureCoding(Coding value) {
setProcedureCoding(value);
return this;
}
public ClaimProcedure withProcedureReference(Reference value) {
setProcedureReference(value);
return this;
}
@Override
public ClaimProcedure withModifierExtension(Extension... values) {
if (values!= null) {
for (Extension value: values) {
getModifierExtension().add(value);
}
}
return this;
}
@Override
public ClaimProcedure withModifierExtension(Collection values) {
if (values!= null) {
getModifierExtension().addAll(values);
}
return this;
}
@Override
public ClaimProcedure withExtension(Extension... values) {
if (values!= null) {
for (Extension value: values) {
getExtension().add(value);
}
}
return this;
}
@Override
public ClaimProcedure withExtension(Collection values) {
if (values!= null) {
getExtension().addAll(values);
}
return this;
}
@Override
public ClaimProcedure 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 ClaimProcedure that = ((ClaimProcedure) 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;
}
}