org.hl7.fhir.CommunicationRequest 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.06 at 03:09:41 PM 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.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 CommunicationRequest complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="CommunicationRequest">
* <complexContent>
* <extension base="{http://hl7.org/fhir}DomainResource">
* <sequence>
* <element name="identifier" type="{http://hl7.org/fhir}Identifier" maxOccurs="unbounded" minOccurs="0"/>
* <element name="category" type="{http://hl7.org/fhir}CodeableConcept" minOccurs="0"/>
* <element name="sender" type="{http://hl7.org/fhir}Reference" minOccurs="0"/>
* <element name="recipient" type="{http://hl7.org/fhir}Reference" maxOccurs="unbounded" minOccurs="0"/>
* <element name="payload" type="{http://hl7.org/fhir}CommunicationRequest.Payload" maxOccurs="unbounded" minOccurs="0"/>
* <element name="medium" type="{http://hl7.org/fhir}CodeableConcept" maxOccurs="unbounded" minOccurs="0"/>
* <element name="requester" type="{http://hl7.org/fhir}Reference" minOccurs="0"/>
* <element name="status" type="{http://hl7.org/fhir}CommunicationRequestStatus" minOccurs="0"/>
* <element name="encounter" type="{http://hl7.org/fhir}Reference" minOccurs="0"/>
* <choice minOccurs="0">
* <element name="scheduledDateTime" type="{http://hl7.org/fhir}dateTime"/>
* <element name="scheduledPeriod" type="{http://hl7.org/fhir}Period"/>
* </choice>
* <element name="reason" type="{http://hl7.org/fhir}CodeableConcept" maxOccurs="unbounded" minOccurs="0"/>
* <element name="requestedOn" type="{http://hl7.org/fhir}dateTime" minOccurs="0"/>
* <element name="subject" type="{http://hl7.org/fhir}Reference" minOccurs="0"/>
* <element name="priority" type="{http://hl7.org/fhir}CodeableConcept" minOccurs="0"/>
* </sequence>
* </extension>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CommunicationRequest", propOrder = {
"identifier",
"category",
"sender",
"recipient",
"payload",
"medium",
"requester",
"status",
"encounter",
"scheduledDateTime",
"scheduledPeriod",
"reason",
"requestedOn",
"subject",
"priority"
})
public class CommunicationRequest
extends DomainResource
implements Equals2, HashCode2, ToString2
{
protected List identifier;
protected CodeableConcept category;
protected Reference sender;
protected List recipient;
protected List payload;
protected List medium;
protected Reference requester;
protected CommunicationRequestStatus status;
protected Reference encounter;
protected DateTime scheduledDateTime;
protected Period scheduledPeriod;
protected List reason;
protected DateTime requestedOn;
protected Reference subject;
protected CodeableConcept priority;
/**
* 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 category property.
*
* @return
* possible object is
* {@link CodeableConcept }
*
*/
public CodeableConcept getCategory() {
return category;
}
/**
* Sets the value of the category property.
*
* @param value
* allowed object is
* {@link CodeableConcept }
*
*/
public void setCategory(CodeableConcept value) {
this.category = value;
}
/**
* Gets the value of the sender property.
*
* @return
* possible object is
* {@link Reference }
*
*/
public Reference getSender() {
return sender;
}
/**
* Sets the value of the sender property.
*
* @param value
* allowed object is
* {@link Reference }
*
*/
public void setSender(Reference value) {
this.sender = 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 payload 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 payload property.
*
*
* For example, to add a new item, do as follows:
*
* getPayload().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link CommunicationRequestPayload }
*
*
*/
public List getPayload() {
if (payload == null) {
payload = new ArrayList();
}
return this.payload;
}
/**
* Gets the value of the medium 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 medium property.
*
*
* For example, to add a new item, do as follows:
*
* getMedium().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link CodeableConcept }
*
*
*/
public List getMedium() {
if (medium == null) {
medium = new ArrayList();
}
return this.medium;
}
/**
* 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 status property.
*
* @return
* possible object is
* {@link CommunicationRequestStatus }
*
*/
public CommunicationRequestStatus getStatus() {
return status;
}
/**
* Sets the value of the status property.
*
* @param value
* allowed object is
* {@link CommunicationRequestStatus }
*
*/
public void setStatus(CommunicationRequestStatus value) {
this.status = value;
}
/**
* Gets the value of the encounter property.
*
* @return
* possible object is
* {@link Reference }
*
*/
public Reference getEncounter() {
return encounter;
}
/**
* Sets the value of the encounter property.
*
* @param value
* allowed object is
* {@link Reference }
*
*/
public void setEncounter(Reference value) {
this.encounter = value;
}
/**
* Gets the value of the scheduledDateTime property.
*
* @return
* possible object is
* {@link DateTime }
*
*/
public DateTime getScheduledDateTime() {
return scheduledDateTime;
}
/**
* Sets the value of the scheduledDateTime property.
*
* @param value
* allowed object is
* {@link DateTime }
*
*/
public void setScheduledDateTime(DateTime value) {
this.scheduledDateTime = value;
}
/**
* Gets the value of the scheduledPeriod property.
*
* @return
* possible object is
* {@link Period }
*
*/
public Period getScheduledPeriod() {
return scheduledPeriod;
}
/**
* Sets the value of the scheduledPeriod property.
*
* @param value
* allowed object is
* {@link Period }
*
*/
public void setScheduledPeriod(Period value) {
this.scheduledPeriod = value;
}
/**
* Gets the value of the reason 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 reason property.
*
*
* For example, to add a new item, do as follows:
*
* getReason().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link CodeableConcept }
*
*
*/
public List getReason() {
if (reason == null) {
reason = new ArrayList();
}
return this.reason;
}
/**
* Gets the value of the requestedOn property.
*
* @return
* possible object is
* {@link DateTime }
*
*/
public DateTime getRequestedOn() {
return requestedOn;
}
/**
* Sets the value of the requestedOn property.
*
* @param value
* allowed object is
* {@link DateTime }
*
*/
public void setRequestedOn(DateTime value) {
this.requestedOn = value;
}
/**
* Gets the value of the subject property.
*
* @return
* possible object is
* {@link Reference }
*
*/
public Reference getSubject() {
return subject;
}
/**
* Sets the value of the subject property.
*
* @param value
* allowed object is
* {@link Reference }
*
*/
public void setSubject(Reference value) {
this.subject = 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;
}
public CommunicationRequest withIdentifier(Identifier... values) {
if (values!= null) {
for (Identifier value: values) {
getIdentifier().add(value);
}
}
return this;
}
public CommunicationRequest withIdentifier(Collection values) {
if (values!= null) {
getIdentifier().addAll(values);
}
return this;
}
public CommunicationRequest withCategory(CodeableConcept value) {
setCategory(value);
return this;
}
public CommunicationRequest withSender(Reference value) {
setSender(value);
return this;
}
public CommunicationRequest withRecipient(Reference... values) {
if (values!= null) {
for (Reference value: values) {
getRecipient().add(value);
}
}
return this;
}
public CommunicationRequest withRecipient(Collection values) {
if (values!= null) {
getRecipient().addAll(values);
}
return this;
}
public CommunicationRequest withPayload(CommunicationRequestPayload... values) {
if (values!= null) {
for (CommunicationRequestPayload value: values) {
getPayload().add(value);
}
}
return this;
}
public CommunicationRequest withPayload(Collection values) {
if (values!= null) {
getPayload().addAll(values);
}
return this;
}
public CommunicationRequest withMedium(CodeableConcept... values) {
if (values!= null) {
for (CodeableConcept value: values) {
getMedium().add(value);
}
}
return this;
}
public CommunicationRequest withMedium(Collection values) {
if (values!= null) {
getMedium().addAll(values);
}
return this;
}
public CommunicationRequest withRequester(Reference value) {
setRequester(value);
return this;
}
public CommunicationRequest withStatus(CommunicationRequestStatus value) {
setStatus(value);
return this;
}
public CommunicationRequest withEncounter(Reference value) {
setEncounter(value);
return this;
}
public CommunicationRequest withScheduledDateTime(DateTime value) {
setScheduledDateTime(value);
return this;
}
public CommunicationRequest withScheduledPeriod(Period value) {
setScheduledPeriod(value);
return this;
}
public CommunicationRequest withReason(CodeableConcept... values) {
if (values!= null) {
for (CodeableConcept value: values) {
getReason().add(value);
}
}
return this;
}
public CommunicationRequest withReason(Collection values) {
if (values!= null) {
getReason().addAll(values);
}
return this;
}
public CommunicationRequest withRequestedOn(DateTime value) {
setRequestedOn(value);
return this;
}
public CommunicationRequest withSubject(Reference value) {
setSubject(value);
return this;
}
public CommunicationRequest withPriority(CodeableConcept value) {
setPriority(value);
return this;
}
@Override
public CommunicationRequest withText(Narrative value) {
setText(value);
return this;
}
@Override
public CommunicationRequest withContained(ResourceContainer... values) {
if (values!= null) {
for (ResourceContainer value: values) {
getContained().add(value);
}
}
return this;
}
@Override
public CommunicationRequest withContained(Collection values) {
if (values!= null) {
getContained().addAll(values);
}
return this;
}
@Override
public CommunicationRequest withExtension(Extension... values) {
if (values!= null) {
for (Extension value: values) {
getExtension().add(value);
}
}
return this;
}
@Override
public CommunicationRequest withExtension(Collection values) {
if (values!= null) {
getExtension().addAll(values);
}
return this;
}
@Override
public CommunicationRequest withModifierExtension(Extension... values) {
if (values!= null) {
for (Extension value: values) {
getModifierExtension().add(value);
}
}
return this;
}
@Override
public CommunicationRequest withModifierExtension(Collection values) {
if (values!= null) {
getModifierExtension().addAll(values);
}
return this;
}
@Override
public CommunicationRequest withId(Id value) {
setId(value);
return this;
}
@Override
public CommunicationRequest withMeta(Meta value) {
setMeta(value);
return this;
}
@Override
public CommunicationRequest withImplicitRules(Uri value) {
setImplicitRules(value);
return this;
}
@Override
public CommunicationRequest 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 CommunicationRequest that = ((CommunicationRequest) 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;
}
}
{
CodeableConcept lhsCategory;
lhsCategory = this.getCategory();
CodeableConcept 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;
}
}
{
Reference lhsSender;
lhsSender = this.getSender();
Reference rhsSender;
rhsSender = that.getSender();
if (!strategy.equals(LocatorUtils.property(thisLocator, "sender", lhsSender), LocatorUtils.property(thatLocator, "sender", rhsSender), lhsSender, rhsSender, (this.sender!= null), (that.sender!= 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;
}
}
{
List lhsPayload;
lhsPayload = (((this.payload!= null)&&(!this.payload.isEmpty()))?this.getPayload():null);
List rhsPayload;
rhsPayload = (((that.payload!= null)&&(!that.payload.isEmpty()))?that.getPayload():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "payload", lhsPayload), LocatorUtils.property(thatLocator, "payload", rhsPayload), lhsPayload, rhsPayload, ((this.payload!= null)&&(!this.payload.isEmpty())), ((that.payload!= null)&&(!that.payload.isEmpty())))) {
return false;
}
}
{
List lhsMedium;
lhsMedium = (((this.medium!= null)&&(!this.medium.isEmpty()))?this.getMedium():null);
List rhsMedium;
rhsMedium = (((that.medium!= null)&&(!that.medium.isEmpty()))?that.getMedium():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "medium", lhsMedium), LocatorUtils.property(thatLocator, "medium", rhsMedium), lhsMedium, rhsMedium, ((this.medium!= null)&&(!this.medium.isEmpty())), ((that.medium!= null)&&(!that.medium.isEmpty())))) {
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;
}
}
{
CommunicationRequestStatus lhsStatus;
lhsStatus = this.getStatus();
CommunicationRequestStatus 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;
}
}
{
Reference lhsEncounter;
lhsEncounter = this.getEncounter();
Reference rhsEncounter;
rhsEncounter = that.getEncounter();
if (!strategy.equals(LocatorUtils.property(thisLocator, "encounter", lhsEncounter), LocatorUtils.property(thatLocator, "encounter", rhsEncounter), lhsEncounter, rhsEncounter, (this.encounter!= null), (that.encounter!= null))) {
return false;
}
}
{
DateTime lhsScheduledDateTime;
lhsScheduledDateTime = this.getScheduledDateTime();
DateTime rhsScheduledDateTime;
rhsScheduledDateTime = that.getScheduledDateTime();
if (!strategy.equals(LocatorUtils.property(thisLocator, "scheduledDateTime", lhsScheduledDateTime), LocatorUtils.property(thatLocator, "scheduledDateTime", rhsScheduledDateTime), lhsScheduledDateTime, rhsScheduledDateTime, (this.scheduledDateTime!= null), (that.scheduledDateTime!= null))) {
return false;
}
}
{
Period lhsScheduledPeriod;
lhsScheduledPeriod = this.getScheduledPeriod();
Period rhsScheduledPeriod;
rhsScheduledPeriod = that.getScheduledPeriod();
if (!strategy.equals(LocatorUtils.property(thisLocator, "scheduledPeriod", lhsScheduledPeriod), LocatorUtils.property(thatLocator, "scheduledPeriod", rhsScheduledPeriod), lhsScheduledPeriod, rhsScheduledPeriod, (this.scheduledPeriod!= null), (that.scheduledPeriod!= null))) {
return false;
}
}
{
List lhsReason;
lhsReason = (((this.reason!= null)&&(!this.reason.isEmpty()))?this.getReason():null);
List rhsReason;
rhsReason = (((that.reason!= null)&&(!that.reason.isEmpty()))?that.getReason():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "reason", lhsReason), LocatorUtils.property(thatLocator, "reason", rhsReason), lhsReason, rhsReason, ((this.reason!= null)&&(!this.reason.isEmpty())), ((that.reason!= null)&&(!that.reason.isEmpty())))) {
return false;
}
}
{
DateTime lhsRequestedOn;
lhsRequestedOn = this.getRequestedOn();
DateTime rhsRequestedOn;
rhsRequestedOn = that.getRequestedOn();
if (!strategy.equals(LocatorUtils.property(thisLocator, "requestedOn", lhsRequestedOn), LocatorUtils.property(thatLocator, "requestedOn", rhsRequestedOn), lhsRequestedOn, rhsRequestedOn, (this.requestedOn!= null), (that.requestedOn!= null))) {
return false;
}
}
{
Reference lhsSubject;
lhsSubject = this.getSubject();
Reference rhsSubject;
rhsSubject = that.getSubject();
if (!strategy.equals(LocatorUtils.property(thisLocator, "subject", lhsSubject), LocatorUtils.property(thatLocator, "subject", rhsSubject), lhsSubject, rhsSubject, (this.subject!= null), (that.subject!= 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;
}
}
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())));
}
{
CodeableConcept theCategory;
theCategory = this.getCategory();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "category", theCategory), currentHashCode, theCategory, (this.category!= null));
}
{
Reference theSender;
theSender = this.getSender();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "sender", theSender), currentHashCode, theSender, (this.sender!= 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())));
}
{
List thePayload;
thePayload = (((this.payload!= null)&&(!this.payload.isEmpty()))?this.getPayload():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "payload", thePayload), currentHashCode, thePayload, ((this.payload!= null)&&(!this.payload.isEmpty())));
}
{
List theMedium;
theMedium = (((this.medium!= null)&&(!this.medium.isEmpty()))?this.getMedium():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "medium", theMedium), currentHashCode, theMedium, ((this.medium!= null)&&(!this.medium.isEmpty())));
}
{
Reference theRequester;
theRequester = this.getRequester();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "requester", theRequester), currentHashCode, theRequester, (this.requester!= null));
}
{
CommunicationRequestStatus theStatus;
theStatus = this.getStatus();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "status", theStatus), currentHashCode, theStatus, (this.status!= null));
}
{
Reference theEncounter;
theEncounter = this.getEncounter();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "encounter", theEncounter), currentHashCode, theEncounter, (this.encounter!= null));
}
{
DateTime theScheduledDateTime;
theScheduledDateTime = this.getScheduledDateTime();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "scheduledDateTime", theScheduledDateTime), currentHashCode, theScheduledDateTime, (this.scheduledDateTime!= null));
}
{
Period theScheduledPeriod;
theScheduledPeriod = this.getScheduledPeriod();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "scheduledPeriod", theScheduledPeriod), currentHashCode, theScheduledPeriod, (this.scheduledPeriod!= null));
}
{
List theReason;
theReason = (((this.reason!= null)&&(!this.reason.isEmpty()))?this.getReason():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "reason", theReason), currentHashCode, theReason, ((this.reason!= null)&&(!this.reason.isEmpty())));
}
{
DateTime theRequestedOn;
theRequestedOn = this.getRequestedOn();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "requestedOn", theRequestedOn), currentHashCode, theRequestedOn, (this.requestedOn!= null));
}
{
Reference theSubject;
theSubject = this.getSubject();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "subject", theSubject), currentHashCode, theSubject, (this.subject!= null));
}
{
CodeableConcept thePriority;
thePriority = this.getPriority();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "priority", thePriority), currentHashCode, thePriority, (this.priority!= 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);
{
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())));
}
{
CodeableConcept theCategory;
theCategory = this.getCategory();
strategy.appendField(locator, this, "category", buffer, theCategory, (this.category!= null));
}
{
Reference theSender;
theSender = this.getSender();
strategy.appendField(locator, this, "sender", buffer, theSender, (this.sender!= 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())));
}
{
List thePayload;
thePayload = (((this.payload!= null)&&(!this.payload.isEmpty()))?this.getPayload():null);
strategy.appendField(locator, this, "payload", buffer, thePayload, ((this.payload!= null)&&(!this.payload.isEmpty())));
}
{
List theMedium;
theMedium = (((this.medium!= null)&&(!this.medium.isEmpty()))?this.getMedium():null);
strategy.appendField(locator, this, "medium", buffer, theMedium, ((this.medium!= null)&&(!this.medium.isEmpty())));
}
{
Reference theRequester;
theRequester = this.getRequester();
strategy.appendField(locator, this, "requester", buffer, theRequester, (this.requester!= null));
}
{
CommunicationRequestStatus theStatus;
theStatus = this.getStatus();
strategy.appendField(locator, this, "status", buffer, theStatus, (this.status!= null));
}
{
Reference theEncounter;
theEncounter = this.getEncounter();
strategy.appendField(locator, this, "encounter", buffer, theEncounter, (this.encounter!= null));
}
{
DateTime theScheduledDateTime;
theScheduledDateTime = this.getScheduledDateTime();
strategy.appendField(locator, this, "scheduledDateTime", buffer, theScheduledDateTime, (this.scheduledDateTime!= null));
}
{
Period theScheduledPeriod;
theScheduledPeriod = this.getScheduledPeriod();
strategy.appendField(locator, this, "scheduledPeriod", buffer, theScheduledPeriod, (this.scheduledPeriod!= null));
}
{
List theReason;
theReason = (((this.reason!= null)&&(!this.reason.isEmpty()))?this.getReason():null);
strategy.appendField(locator, this, "reason", buffer, theReason, ((this.reason!= null)&&(!this.reason.isEmpty())));
}
{
DateTime theRequestedOn;
theRequestedOn = this.getRequestedOn();
strategy.appendField(locator, this, "requestedOn", buffer, theRequestedOn, (this.requestedOn!= null));
}
{
Reference theSubject;
theSubject = this.getSubject();
strategy.appendField(locator, this, "subject", buffer, theSubject, (this.subject!= null));
}
{
CodeableConcept thePriority;
thePriority = this.getPriority();
strategy.appendField(locator, this, "priority", buffer, thePriority, (this.priority!= null));
}
return buffer;
}
}