org.hl7.fhir.ReferralRequest Maven / Gradle / Ivy
Show all versions of quick Show documentation
//
// 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.ArrayList;
import java.util.Collection;
import java.util.List;
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;
/**
* If the element is present, it must have either a @value, an @id, or extensions
*
* Java class for ReferralRequest complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="ReferralRequest">
* <complexContent>
* <extension base="{http://hl7.org/fhir}DomainResource">
* <sequence>
* <element name="identifier" type="{http://hl7.org/fhir}Identifier" maxOccurs="unbounded" minOccurs="0"/>
* <element name="basedOn" type="{http://hl7.org/fhir}Reference" maxOccurs="unbounded" minOccurs="0"/>
* <element name="parent" type="{http://hl7.org/fhir}Identifier" minOccurs="0"/>
* <element name="status" type="{http://hl7.org/fhir}ReferralStatus"/>
* <element name="category" type="{http://hl7.org/fhir}ReferralCategory"/>
* <element name="type" type="{http://hl7.org/fhir}CodeableConcept" minOccurs="0"/>
* <element name="priority" type="{http://hl7.org/fhir}CodeableConcept" minOccurs="0"/>
* <element name="patient" type="{http://hl7.org/fhir}Reference" minOccurs="0"/>
* <element name="context" type="{http://hl7.org/fhir}Reference" minOccurs="0"/>
* <element name="fulfillmentTime" type="{http://hl7.org/fhir}Period" minOccurs="0"/>
* <element name="authored" type="{http://hl7.org/fhir}dateTime" minOccurs="0"/>
* <element name="requester" type="{http://hl7.org/fhir}Reference" minOccurs="0"/>
* <element name="specialty" type="{http://hl7.org/fhir}CodeableConcept" minOccurs="0"/>
* <element name="recipient" type="{http://hl7.org/fhir}Reference" maxOccurs="unbounded" minOccurs="0"/>
* <element name="reason" type="{http://hl7.org/fhir}CodeableConcept" minOccurs="0"/>
* <element name="description" type="{http://hl7.org/fhir}string" minOccurs="0"/>
* <element name="serviceRequested" type="{http://hl7.org/fhir}CodeableConcept" maxOccurs="unbounded" minOccurs="0"/>
* <element name="supportingInformation" type="{http://hl7.org/fhir}Reference" maxOccurs="unbounded" minOccurs="0"/>
* </sequence>
* </extension>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "ReferralRequest", propOrder = {
"identifier",
"basedOn",
"parent",
"status",
"category",
"type",
"priority",
"patient",
"context",
"fulfillmentTime",
"authored",
"requester",
"specialty",
"recipient",
"reason",
"description",
"serviceRequested",
"supportingInformation"
})
public class ReferralRequest
extends DomainResource
implements Equals2, HashCode2, ToString2
{
protected List identifier;
protected List basedOn;
protected Identifier parent;
@XmlElement(required = true)
protected ReferralStatus status;
@XmlElement(required = true)
protected ReferralCategory category;
protected CodeableConcept type;
protected CodeableConcept priority;
protected Reference patient;
protected Reference context;
protected Period fulfillmentTime;
protected DateTime authored;
protected Reference requester;
protected CodeableConcept specialty;
protected List recipient;
protected CodeableConcept reason;
protected org.hl7.fhir.String description;
protected List serviceRequested;
protected List supportingInformation;
/**
* Gets the value of the identifier property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the Jakarta XML Binding object.
* This is why there is not a set
method for the identifier property.
*
*
* For example, to add a new item, do as follows:
*
* getIdentifier().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link Identifier }
*
*
*/
public List getIdentifier() {
if (identifier == null) {
identifier = new ArrayList();
}
return this.identifier;
}
/**
* Gets the value of the basedOn property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the Jakarta XML Binding object.
* This is why there is not a set
method for the basedOn property.
*
*
* For example, to add a new item, do as follows:
*
* getBasedOn().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link Reference }
*
*
*/
public List getBasedOn() {
if (basedOn == null) {
basedOn = new ArrayList();
}
return this.basedOn;
}
/**
* Gets the value of the parent property.
*
* @return
* possible object is
* {@link Identifier }
*
*/
public Identifier getParent() {
return parent;
}
/**
* Sets the value of the parent property.
*
* @param value
* allowed object is
* {@link Identifier }
*
*/
public void setParent(Identifier value) {
this.parent = value;
}
/**
* Gets the value of the status property.
*
* @return
* possible object is
* {@link ReferralStatus }
*
*/
public ReferralStatus getStatus() {
return status;
}
/**
* Sets the value of the status property.
*
* @param value
* allowed object is
* {@link ReferralStatus }
*
*/
public void setStatus(ReferralStatus value) {
this.status = value;
}
/**
* Gets the value of the category property.
*
* @return
* possible object is
* {@link ReferralCategory }
*
*/
public ReferralCategory getCategory() {
return category;
}
/**
* Sets the value of the category property.
*
* @param value
* allowed object is
* {@link ReferralCategory }
*
*/
public void setCategory(ReferralCategory value) {
this.category = value;
}
/**
* Gets the value of the type property.
*
* @return
* possible object is
* {@link CodeableConcept }
*
*/
public CodeableConcept getType() {
return type;
}
/**
* Sets the value of the type property.
*
* @param value
* allowed object is
* {@link CodeableConcept }
*
*/
public void setType(CodeableConcept value) {
this.type = value;
}
/**
* Gets the value of the priority property.
*
* @return
* possible object is
* {@link CodeableConcept }
*
*/
public CodeableConcept getPriority() {
return priority;
}
/**
* Sets the value of the priority property.
*
* @param value
* allowed object is
* {@link CodeableConcept }
*
*/
public void setPriority(CodeableConcept value) {
this.priority = value;
}
/**
* Gets the value of the patient property.
*
* @return
* possible object is
* {@link Reference }
*
*/
public Reference getPatient() {
return patient;
}
/**
* Sets the value of the patient property.
*
* @param value
* allowed object is
* {@link Reference }
*
*/
public void setPatient(Reference value) {
this.patient = value;
}
/**
* Gets the value of the context property.
*
* @return
* possible object is
* {@link Reference }
*
*/
public Reference getContext() {
return context;
}
/**
* Sets the value of the context property.
*
* @param value
* allowed object is
* {@link Reference }
*
*/
public void setContext(Reference value) {
this.context = value;
}
/**
* Gets the value of the fulfillmentTime property.
*
* @return
* possible object is
* {@link Period }
*
*/
public Period getFulfillmentTime() {
return fulfillmentTime;
}
/**
* Sets the value of the fulfillmentTime property.
*
* @param value
* allowed object is
* {@link Period }
*
*/
public void setFulfillmentTime(Period value) {
this.fulfillmentTime = value;
}
/**
* Gets the value of the authored property.
*
* @return
* possible object is
* {@link DateTime }
*
*/
public DateTime getAuthored() {
return authored;
}
/**
* Sets the value of the authored property.
*
* @param value
* allowed object is
* {@link DateTime }
*
*/
public void setAuthored(DateTime value) {
this.authored = value;
}
/**
* Gets the value of the requester property.
*
* @return
* possible object is
* {@link Reference }
*
*/
public Reference getRequester() {
return requester;
}
/**
* Sets the value of the requester property.
*
* @param value
* allowed object is
* {@link Reference }
*
*/
public void setRequester(Reference value) {
this.requester = value;
}
/**
* Gets the value of the specialty property.
*
* @return
* possible object is
* {@link CodeableConcept }
*
*/
public CodeableConcept getSpecialty() {
return specialty;
}
/**
* Sets the value of the specialty property.
*
* @param value
* allowed object is
* {@link CodeableConcept }
*
*/
public void setSpecialty(CodeableConcept value) {
this.specialty = value;
}
/**
* Gets the value of the recipient property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the Jakarta XML Binding object.
* This is why there is not a set
method for the recipient property.
*
*
* For example, to add a new item, do as follows:
*
* getRecipient().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link Reference }
*
*
*/
public List getRecipient() {
if (recipient == null) {
recipient = new ArrayList();
}
return this.recipient;
}
/**
* Gets the value of the reason property.
*
* @return
* possible object is
* {@link CodeableConcept }
*
*/
public CodeableConcept getReason() {
return reason;
}
/**
* Sets the value of the reason property.
*
* @param value
* allowed object is
* {@link CodeableConcept }
*
*/
public void setReason(CodeableConcept value) {
this.reason = value;
}
/**
* Gets the value of the description property.
*
* @return
* possible object is
* {@link org.hl7.fhir.String }
*
*/
public org.hl7.fhir.String getDescription() {
return description;
}
/**
* Sets the value of the description property.
*
* @param value
* allowed object is
* {@link org.hl7.fhir.String }
*
*/
public void setDescription(org.hl7.fhir.String value) {
this.description = value;
}
/**
* Gets the value of the serviceRequested property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the Jakarta XML Binding object.
* This is why there is not a set
method for the serviceRequested property.
*
*
* For example, to add a new item, do as follows:
*
* getServiceRequested().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link CodeableConcept }
*
*
*/
public List getServiceRequested() {
if (serviceRequested == null) {
serviceRequested = new ArrayList();
}
return this.serviceRequested;
}
/**
* Gets the value of the supportingInformation property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the Jakarta XML Binding object.
* This is why there is not a set
method for the supportingInformation property.
*
*
* For example, to add a new item, do as follows:
*
* getSupportingInformation().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link Reference }
*
*
*/
public List getSupportingInformation() {
if (supportingInformation == null) {
supportingInformation = new ArrayList();
}
return this.supportingInformation;
}
public ReferralRequest withIdentifier(Identifier... values) {
if (values!= null) {
for (Identifier value: values) {
getIdentifier().add(value);
}
}
return this;
}
public ReferralRequest withIdentifier(Collection values) {
if (values!= null) {
getIdentifier().addAll(values);
}
return this;
}
public ReferralRequest withBasedOn(Reference... values) {
if (values!= null) {
for (Reference value: values) {
getBasedOn().add(value);
}
}
return this;
}
public ReferralRequest withBasedOn(Collection values) {
if (values!= null) {
getBasedOn().addAll(values);
}
return this;
}
public ReferralRequest withParent(Identifier value) {
setParent(value);
return this;
}
public ReferralRequest withStatus(ReferralStatus value) {
setStatus(value);
return this;
}
public ReferralRequest withCategory(ReferralCategory value) {
setCategory(value);
return this;
}
public ReferralRequest withType(CodeableConcept value) {
setType(value);
return this;
}
public ReferralRequest withPriority(CodeableConcept value) {
setPriority(value);
return this;
}
public ReferralRequest withPatient(Reference value) {
setPatient(value);
return this;
}
public ReferralRequest withContext(Reference value) {
setContext(value);
return this;
}
public ReferralRequest withFulfillmentTime(Period value) {
setFulfillmentTime(value);
return this;
}
public ReferralRequest withAuthored(DateTime value) {
setAuthored(value);
return this;
}
public ReferralRequest withRequester(Reference value) {
setRequester(value);
return this;
}
public ReferralRequest withSpecialty(CodeableConcept value) {
setSpecialty(value);
return this;
}
public ReferralRequest withRecipient(Reference... values) {
if (values!= null) {
for (Reference value: values) {
getRecipient().add(value);
}
}
return this;
}
public ReferralRequest withRecipient(Collection values) {
if (values!= null) {
getRecipient().addAll(values);
}
return this;
}
public ReferralRequest withReason(CodeableConcept value) {
setReason(value);
return this;
}
public ReferralRequest withDescription(org.hl7.fhir.String value) {
setDescription(value);
return this;
}
public ReferralRequest withServiceRequested(CodeableConcept... values) {
if (values!= null) {
for (CodeableConcept value: values) {
getServiceRequested().add(value);
}
}
return this;
}
public ReferralRequest withServiceRequested(Collection values) {
if (values!= null) {
getServiceRequested().addAll(values);
}
return this;
}
public ReferralRequest withSupportingInformation(Reference... values) {
if (values!= null) {
for (Reference value: values) {
getSupportingInformation().add(value);
}
}
return this;
}
public ReferralRequest withSupportingInformation(Collection values) {
if (values!= null) {
getSupportingInformation().addAll(values);
}
return this;
}
@Override
public ReferralRequest withText(Narrative value) {
setText(value);
return this;
}
@Override
public ReferralRequest withContained(ResourceContainer... values) {
if (values!= null) {
for (ResourceContainer value: values) {
getContained().add(value);
}
}
return this;
}
@Override
public ReferralRequest withContained(Collection values) {
if (values!= null) {
getContained().addAll(values);
}
return this;
}
@Override
public ReferralRequest withExtension(Extension... values) {
if (values!= null) {
for (Extension value: values) {
getExtension().add(value);
}
}
return this;
}
@Override
public ReferralRequest withExtension(Collection values) {
if (values!= null) {
getExtension().addAll(values);
}
return this;
}
@Override
public ReferralRequest withModifierExtension(Extension... values) {
if (values!= null) {
for (Extension value: values) {
getModifierExtension().add(value);
}
}
return this;
}
@Override
public ReferralRequest withModifierExtension(Collection values) {
if (values!= null) {
getModifierExtension().addAll(values);
}
return this;
}
@Override
public ReferralRequest withId(Id value) {
setId(value);
return this;
}
@Override
public ReferralRequest withMeta(Meta value) {
setMeta(value);
return this;
}
@Override
public ReferralRequest withImplicitRules(Uri value) {
setImplicitRules(value);
return this;
}
@Override
public ReferralRequest withLanguage(Code value) {
setLanguage(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 ReferralRequest that = ((ReferralRequest) object);
{
List lhsIdentifier;
lhsIdentifier = (((this.identifier!= null)&&(!this.identifier.isEmpty()))?this.getIdentifier():null);
List rhsIdentifier;
rhsIdentifier = (((that.identifier!= null)&&(!that.identifier.isEmpty()))?that.getIdentifier():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "identifier", lhsIdentifier), LocatorUtils.property(thatLocator, "identifier", rhsIdentifier), lhsIdentifier, rhsIdentifier, ((this.identifier!= null)&&(!this.identifier.isEmpty())), ((that.identifier!= null)&&(!that.identifier.isEmpty())))) {
return false;
}
}
{
List lhsBasedOn;
lhsBasedOn = (((this.basedOn!= null)&&(!this.basedOn.isEmpty()))?this.getBasedOn():null);
List rhsBasedOn;
rhsBasedOn = (((that.basedOn!= null)&&(!that.basedOn.isEmpty()))?that.getBasedOn():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "basedOn", lhsBasedOn), LocatorUtils.property(thatLocator, "basedOn", rhsBasedOn), lhsBasedOn, rhsBasedOn, ((this.basedOn!= null)&&(!this.basedOn.isEmpty())), ((that.basedOn!= null)&&(!that.basedOn.isEmpty())))) {
return false;
}
}
{
Identifier lhsParent;
lhsParent = this.getParent();
Identifier rhsParent;
rhsParent = that.getParent();
if (!strategy.equals(LocatorUtils.property(thisLocator, "parent", lhsParent), LocatorUtils.property(thatLocator, "parent", rhsParent), lhsParent, rhsParent, (this.parent!= null), (that.parent!= null))) {
return false;
}
}
{
ReferralStatus lhsStatus;
lhsStatus = this.getStatus();
ReferralStatus rhsStatus;
rhsStatus = that.getStatus();
if (!strategy.equals(LocatorUtils.property(thisLocator, "status", lhsStatus), LocatorUtils.property(thatLocator, "status", rhsStatus), lhsStatus, rhsStatus, (this.status!= null), (that.status!= null))) {
return false;
}
}
{
ReferralCategory lhsCategory;
lhsCategory = this.getCategory();
ReferralCategory 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;
}
}
{
CodeableConcept lhsType;
lhsType = this.getType();
CodeableConcept rhsType;
rhsType = that.getType();
if (!strategy.equals(LocatorUtils.property(thisLocator, "type", lhsType), LocatorUtils.property(thatLocator, "type", rhsType), lhsType, rhsType, (this.type!= null), (that.type!= null))) {
return false;
}
}
{
CodeableConcept lhsPriority;
lhsPriority = this.getPriority();
CodeableConcept rhsPriority;
rhsPriority = that.getPriority();
if (!strategy.equals(LocatorUtils.property(thisLocator, "priority", lhsPriority), LocatorUtils.property(thatLocator, "priority", rhsPriority), lhsPriority, rhsPriority, (this.priority!= null), (that.priority!= null))) {
return false;
}
}
{
Reference lhsPatient;
lhsPatient = this.getPatient();
Reference rhsPatient;
rhsPatient = that.getPatient();
if (!strategy.equals(LocatorUtils.property(thisLocator, "patient", lhsPatient), LocatorUtils.property(thatLocator, "patient", rhsPatient), lhsPatient, rhsPatient, (this.patient!= null), (that.patient!= null))) {
return false;
}
}
{
Reference lhsContext;
lhsContext = this.getContext();
Reference rhsContext;
rhsContext = that.getContext();
if (!strategy.equals(LocatorUtils.property(thisLocator, "context", lhsContext), LocatorUtils.property(thatLocator, "context", rhsContext), lhsContext, rhsContext, (this.context!= null), (that.context!= null))) {
return false;
}
}
{
Period lhsFulfillmentTime;
lhsFulfillmentTime = this.getFulfillmentTime();
Period rhsFulfillmentTime;
rhsFulfillmentTime = that.getFulfillmentTime();
if (!strategy.equals(LocatorUtils.property(thisLocator, "fulfillmentTime", lhsFulfillmentTime), LocatorUtils.property(thatLocator, "fulfillmentTime", rhsFulfillmentTime), lhsFulfillmentTime, rhsFulfillmentTime, (this.fulfillmentTime!= null), (that.fulfillmentTime!= null))) {
return false;
}
}
{
DateTime lhsAuthored;
lhsAuthored = this.getAuthored();
DateTime rhsAuthored;
rhsAuthored = that.getAuthored();
if (!strategy.equals(LocatorUtils.property(thisLocator, "authored", lhsAuthored), LocatorUtils.property(thatLocator, "authored", rhsAuthored), lhsAuthored, rhsAuthored, (this.authored!= null), (that.authored!= null))) {
return false;
}
}
{
Reference lhsRequester;
lhsRequester = this.getRequester();
Reference rhsRequester;
rhsRequester = that.getRequester();
if (!strategy.equals(LocatorUtils.property(thisLocator, "requester", lhsRequester), LocatorUtils.property(thatLocator, "requester", rhsRequester), lhsRequester, rhsRequester, (this.requester!= null), (that.requester!= null))) {
return false;
}
}
{
CodeableConcept lhsSpecialty;
lhsSpecialty = this.getSpecialty();
CodeableConcept rhsSpecialty;
rhsSpecialty = that.getSpecialty();
if (!strategy.equals(LocatorUtils.property(thisLocator, "specialty", lhsSpecialty), LocatorUtils.property(thatLocator, "specialty", rhsSpecialty), lhsSpecialty, rhsSpecialty, (this.specialty!= null), (that.specialty!= null))) {
return false;
}
}
{
List lhsRecipient;
lhsRecipient = (((this.recipient!= null)&&(!this.recipient.isEmpty()))?this.getRecipient():null);
List rhsRecipient;
rhsRecipient = (((that.recipient!= null)&&(!that.recipient.isEmpty()))?that.getRecipient():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "recipient", lhsRecipient), LocatorUtils.property(thatLocator, "recipient", rhsRecipient), lhsRecipient, rhsRecipient, ((this.recipient!= null)&&(!this.recipient.isEmpty())), ((that.recipient!= null)&&(!that.recipient.isEmpty())))) {
return false;
}
}
{
CodeableConcept lhsReason;
lhsReason = this.getReason();
CodeableConcept 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;
}
}
{
org.hl7.fhir.String lhsDescription;
lhsDescription = this.getDescription();
org.hl7.fhir.String rhsDescription;
rhsDescription = that.getDescription();
if (!strategy.equals(LocatorUtils.property(thisLocator, "description", lhsDescription), LocatorUtils.property(thatLocator, "description", rhsDescription), lhsDescription, rhsDescription, (this.description!= null), (that.description!= null))) {
return false;
}
}
{
List lhsServiceRequested;
lhsServiceRequested = (((this.serviceRequested!= null)&&(!this.serviceRequested.isEmpty()))?this.getServiceRequested():null);
List rhsServiceRequested;
rhsServiceRequested = (((that.serviceRequested!= null)&&(!that.serviceRequested.isEmpty()))?that.getServiceRequested():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "serviceRequested", lhsServiceRequested), LocatorUtils.property(thatLocator, "serviceRequested", rhsServiceRequested), lhsServiceRequested, rhsServiceRequested, ((this.serviceRequested!= null)&&(!this.serviceRequested.isEmpty())), ((that.serviceRequested!= null)&&(!that.serviceRequested.isEmpty())))) {
return false;
}
}
{
List lhsSupportingInformation;
lhsSupportingInformation = (((this.supportingInformation!= null)&&(!this.supportingInformation.isEmpty()))?this.getSupportingInformation():null);
List rhsSupportingInformation;
rhsSupportingInformation = (((that.supportingInformation!= null)&&(!that.supportingInformation.isEmpty()))?that.getSupportingInformation():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "supportingInformation", lhsSupportingInformation), LocatorUtils.property(thatLocator, "supportingInformation", rhsSupportingInformation), lhsSupportingInformation, rhsSupportingInformation, ((this.supportingInformation!= null)&&(!this.supportingInformation.isEmpty())), ((that.supportingInformation!= null)&&(!that.supportingInformation.isEmpty())))) {
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);
{
List theIdentifier;
theIdentifier = (((this.identifier!= null)&&(!this.identifier.isEmpty()))?this.getIdentifier():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "identifier", theIdentifier), currentHashCode, theIdentifier, ((this.identifier!= null)&&(!this.identifier.isEmpty())));
}
{
List theBasedOn;
theBasedOn = (((this.basedOn!= null)&&(!this.basedOn.isEmpty()))?this.getBasedOn():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "basedOn", theBasedOn), currentHashCode, theBasedOn, ((this.basedOn!= null)&&(!this.basedOn.isEmpty())));
}
{
Identifier theParent;
theParent = this.getParent();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "parent", theParent), currentHashCode, theParent, (this.parent!= null));
}
{
ReferralStatus theStatus;
theStatus = this.getStatus();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "status", theStatus), currentHashCode, theStatus, (this.status!= null));
}
{
ReferralCategory theCategory;
theCategory = this.getCategory();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "category", theCategory), currentHashCode, theCategory, (this.category!= null));
}
{
CodeableConcept theType;
theType = this.getType();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "type", theType), currentHashCode, theType, (this.type!= null));
}
{
CodeableConcept thePriority;
thePriority = this.getPriority();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "priority", thePriority), currentHashCode, thePriority, (this.priority!= null));
}
{
Reference thePatient;
thePatient = this.getPatient();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "patient", thePatient), currentHashCode, thePatient, (this.patient!= null));
}
{
Reference theContext;
theContext = this.getContext();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "context", theContext), currentHashCode, theContext, (this.context!= null));
}
{
Period theFulfillmentTime;
theFulfillmentTime = this.getFulfillmentTime();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "fulfillmentTime", theFulfillmentTime), currentHashCode, theFulfillmentTime, (this.fulfillmentTime!= null));
}
{
DateTime theAuthored;
theAuthored = this.getAuthored();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "authored", theAuthored), currentHashCode, theAuthored, (this.authored!= null));
}
{
Reference theRequester;
theRequester = this.getRequester();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "requester", theRequester), currentHashCode, theRequester, (this.requester!= null));
}
{
CodeableConcept theSpecialty;
theSpecialty = this.getSpecialty();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "specialty", theSpecialty), currentHashCode, theSpecialty, (this.specialty!= null));
}
{
List theRecipient;
theRecipient = (((this.recipient!= null)&&(!this.recipient.isEmpty()))?this.getRecipient():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "recipient", theRecipient), currentHashCode, theRecipient, ((this.recipient!= null)&&(!this.recipient.isEmpty())));
}
{
CodeableConcept theReason;
theReason = this.getReason();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "reason", theReason), currentHashCode, theReason, (this.reason!= null));
}
{
org.hl7.fhir.String theDescription;
theDescription = this.getDescription();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "description", theDescription), currentHashCode, theDescription, (this.description!= null));
}
{
List theServiceRequested;
theServiceRequested = (((this.serviceRequested!= null)&&(!this.serviceRequested.isEmpty()))?this.getServiceRequested():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "serviceRequested", theServiceRequested), currentHashCode, theServiceRequested, ((this.serviceRequested!= null)&&(!this.serviceRequested.isEmpty())));
}
{
List theSupportingInformation;
theSupportingInformation = (((this.supportingInformation!= null)&&(!this.supportingInformation.isEmpty()))?this.getSupportingInformation():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "supportingInformation", theSupportingInformation), currentHashCode, theSupportingInformation, ((this.supportingInformation!= null)&&(!this.supportingInformation.isEmpty())));
}
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);
{
List theIdentifier;
theIdentifier = (((this.identifier!= null)&&(!this.identifier.isEmpty()))?this.getIdentifier():null);
strategy.appendField(locator, this, "identifier", buffer, theIdentifier, ((this.identifier!= null)&&(!this.identifier.isEmpty())));
}
{
List theBasedOn;
theBasedOn = (((this.basedOn!= null)&&(!this.basedOn.isEmpty()))?this.getBasedOn():null);
strategy.appendField(locator, this, "basedOn", buffer, theBasedOn, ((this.basedOn!= null)&&(!this.basedOn.isEmpty())));
}
{
Identifier theParent;
theParent = this.getParent();
strategy.appendField(locator, this, "parent", buffer, theParent, (this.parent!= null));
}
{
ReferralStatus theStatus;
theStatus = this.getStatus();
strategy.appendField(locator, this, "status", buffer, theStatus, (this.status!= null));
}
{
ReferralCategory theCategory;
theCategory = this.getCategory();
strategy.appendField(locator, this, "category", buffer, theCategory, (this.category!= null));
}
{
CodeableConcept theType;
theType = this.getType();
strategy.appendField(locator, this, "type", buffer, theType, (this.type!= null));
}
{
CodeableConcept thePriority;
thePriority = this.getPriority();
strategy.appendField(locator, this, "priority", buffer, thePriority, (this.priority!= null));
}
{
Reference thePatient;
thePatient = this.getPatient();
strategy.appendField(locator, this, "patient", buffer, thePatient, (this.patient!= null));
}
{
Reference theContext;
theContext = this.getContext();
strategy.appendField(locator, this, "context", buffer, theContext, (this.context!= null));
}
{
Period theFulfillmentTime;
theFulfillmentTime = this.getFulfillmentTime();
strategy.appendField(locator, this, "fulfillmentTime", buffer, theFulfillmentTime, (this.fulfillmentTime!= null));
}
{
DateTime theAuthored;
theAuthored = this.getAuthored();
strategy.appendField(locator, this, "authored", buffer, theAuthored, (this.authored!= null));
}
{
Reference theRequester;
theRequester = this.getRequester();
strategy.appendField(locator, this, "requester", buffer, theRequester, (this.requester!= null));
}
{
CodeableConcept theSpecialty;
theSpecialty = this.getSpecialty();
strategy.appendField(locator, this, "specialty", buffer, theSpecialty, (this.specialty!= null));
}
{
List theRecipient;
theRecipient = (((this.recipient!= null)&&(!this.recipient.isEmpty()))?this.getRecipient():null);
strategy.appendField(locator, this, "recipient", buffer, theRecipient, ((this.recipient!= null)&&(!this.recipient.isEmpty())));
}
{
CodeableConcept theReason;
theReason = this.getReason();
strategy.appendField(locator, this, "reason", buffer, theReason, (this.reason!= null));
}
{
org.hl7.fhir.String theDescription;
theDescription = this.getDescription();
strategy.appendField(locator, this, "description", buffer, theDescription, (this.description!= null));
}
{
List theServiceRequested;
theServiceRequested = (((this.serviceRequested!= null)&&(!this.serviceRequested.isEmpty()))?this.getServiceRequested():null);
strategy.appendField(locator, this, "serviceRequested", buffer, theServiceRequested, ((this.serviceRequested!= null)&&(!this.serviceRequested.isEmpty())));
}
{
List theSupportingInformation;
theSupportingInformation = (((this.supportingInformation!= null)&&(!this.supportingInformation.isEmpty()))?this.getSupportingInformation():null);
strategy.appendField(locator, this, "supportingInformation", buffer, theSupportingInformation, ((this.supportingInformation!= null)&&(!this.supportingInformation.isEmpty())));
}
return buffer;
}
}