org.hl7.fhir.ClinicalImpression 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: 2024.09.27 at 11:16:19 AM MDT
//
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 ClinicalImpression complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="ClinicalImpression">
* <complexContent>
* <extension base="{http://hl7.org/fhir}DomainResource">
* <sequence>
* <element name="patient" type="{http://hl7.org/fhir}Reference"/>
* <element name="assessor" type="{http://hl7.org/fhir}Reference" minOccurs="0"/>
* <element name="status" type="{http://hl7.org/fhir}ClinicalImpressionStatus"/>
* <element name="date" type="{http://hl7.org/fhir}dateTime" minOccurs="0"/>
* <element name="description" type="{http://hl7.org/fhir}string" minOccurs="0"/>
* <element name="previous" type="{http://hl7.org/fhir}Reference" minOccurs="0"/>
* <element name="problem" type="{http://hl7.org/fhir}Reference" maxOccurs="unbounded" minOccurs="0"/>
* <choice minOccurs="0">
* <element name="triggerCodeableConcept" type="{http://hl7.org/fhir}CodeableConcept"/>
* <element name="triggerReference" type="{http://hl7.org/fhir}Reference"/>
* </choice>
* <element name="investigations" type="{http://hl7.org/fhir}ClinicalImpression.Investigations" maxOccurs="unbounded" minOccurs="0"/>
* <element name="protocol" type="{http://hl7.org/fhir}uri" minOccurs="0"/>
* <element name="summary" type="{http://hl7.org/fhir}string" minOccurs="0"/>
* <element name="finding" type="{http://hl7.org/fhir}ClinicalImpression.Finding" maxOccurs="unbounded" minOccurs="0"/>
* <element name="resolved" type="{http://hl7.org/fhir}CodeableConcept" maxOccurs="unbounded" minOccurs="0"/>
* <element name="ruledOut" type="{http://hl7.org/fhir}ClinicalImpression.RuledOut" maxOccurs="unbounded" minOccurs="0"/>
* <element name="prognosis" type="{http://hl7.org/fhir}string" minOccurs="0"/>
* <element name="plan" type="{http://hl7.org/fhir}Reference" maxOccurs="unbounded" minOccurs="0"/>
* <element name="action" type="{http://hl7.org/fhir}Reference" maxOccurs="unbounded" minOccurs="0"/>
* </sequence>
* </extension>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "ClinicalImpression", propOrder = {
"patient",
"assessor",
"status",
"date",
"description",
"previous",
"problem",
"triggerCodeableConcept",
"triggerReference",
"investigations",
"protocol",
"summary",
"finding",
"resolved",
"ruledOut",
"prognosis",
"plan",
"action"
})
public class ClinicalImpression
extends DomainResource
implements Equals2, HashCode2, ToString2
{
@XmlElement(required = true)
protected Reference patient;
protected Reference assessor;
@XmlElement(required = true)
protected ClinicalImpressionStatus status;
protected DateTime date;
protected org.hl7.fhir.String description;
protected Reference previous;
protected List problem;
protected CodeableConcept triggerCodeableConcept;
protected Reference triggerReference;
protected List investigations;
protected Uri protocol;
protected org.hl7.fhir.String summary;
protected List finding;
protected List resolved;
protected List ruledOut;
protected org.hl7.fhir.String prognosis;
protected List plan;
protected List action;
/**
* 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 assessor property.
*
* @return
* possible object is
* {@link Reference }
*
*/
public Reference getAssessor() {
return assessor;
}
/**
* Sets the value of the assessor property.
*
* @param value
* allowed object is
* {@link Reference }
*
*/
public void setAssessor(Reference value) {
this.assessor = value;
}
/**
* Gets the value of the status property.
*
* @return
* possible object is
* {@link ClinicalImpressionStatus }
*
*/
public ClinicalImpressionStatus getStatus() {
return status;
}
/**
* Sets the value of the status property.
*
* @param value
* allowed object is
* {@link ClinicalImpressionStatus }
*
*/
public void setStatus(ClinicalImpressionStatus value) {
this.status = 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 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 previous property.
*
* @return
* possible object is
* {@link Reference }
*
*/
public Reference getPrevious() {
return previous;
}
/**
* Sets the value of the previous property.
*
* @param value
* allowed object is
* {@link Reference }
*
*/
public void setPrevious(Reference value) {
this.previous = value;
}
/**
* Gets the value of the problem 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 problem property.
*
*
* For example, to add a new item, do as follows:
*
* getProblem().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link Reference }
*
*
*/
public List getProblem() {
if (problem == null) {
problem = new ArrayList();
}
return this.problem;
}
/**
* Gets the value of the triggerCodeableConcept property.
*
* @return
* possible object is
* {@link CodeableConcept }
*
*/
public CodeableConcept getTriggerCodeableConcept() {
return triggerCodeableConcept;
}
/**
* Sets the value of the triggerCodeableConcept property.
*
* @param value
* allowed object is
* {@link CodeableConcept }
*
*/
public void setTriggerCodeableConcept(CodeableConcept value) {
this.triggerCodeableConcept = value;
}
/**
* Gets the value of the triggerReference property.
*
* @return
* possible object is
* {@link Reference }
*
*/
public Reference getTriggerReference() {
return triggerReference;
}
/**
* Sets the value of the triggerReference property.
*
* @param value
* allowed object is
* {@link Reference }
*
*/
public void setTriggerReference(Reference value) {
this.triggerReference = value;
}
/**
* Gets the value of the investigations 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 investigations property.
*
*
* For example, to add a new item, do as follows:
*
* getInvestigations().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link ClinicalImpressionInvestigations }
*
*
*/
public List getInvestigations() {
if (investigations == null) {
investigations = new ArrayList();
}
return this.investigations;
}
/**
* Gets the value of the protocol property.
*
* @return
* possible object is
* {@link Uri }
*
*/
public Uri getProtocol() {
return protocol;
}
/**
* Sets the value of the protocol property.
*
* @param value
* allowed object is
* {@link Uri }
*
*/
public void setProtocol(Uri value) {
this.protocol = value;
}
/**
* Gets the value of the summary property.
*
* @return
* possible object is
* {@link org.hl7.fhir.String }
*
*/
public org.hl7.fhir.String getSummary() {
return summary;
}
/**
* Sets the value of the summary property.
*
* @param value
* allowed object is
* {@link org.hl7.fhir.String }
*
*/
public void setSummary(org.hl7.fhir.String value) {
this.summary = value;
}
/**
* Gets the value of the finding 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 finding property.
*
*
* For example, to add a new item, do as follows:
*
* getFinding().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link ClinicalImpressionFinding }
*
*
*/
public List getFinding() {
if (finding == null) {
finding = new ArrayList();
}
return this.finding;
}
/**
* Gets the value of the resolved 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 resolved property.
*
*
* For example, to add a new item, do as follows:
*
* getResolved().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link CodeableConcept }
*
*
*/
public List getResolved() {
if (resolved == null) {
resolved = new ArrayList();
}
return this.resolved;
}
/**
* Gets the value of the ruledOut 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 ruledOut property.
*
*
* For example, to add a new item, do as follows:
*
* getRuledOut().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link ClinicalImpressionRuledOut }
*
*
*/
public List getRuledOut() {
if (ruledOut == null) {
ruledOut = new ArrayList();
}
return this.ruledOut;
}
/**
* Gets the value of the prognosis property.
*
* @return
* possible object is
* {@link org.hl7.fhir.String }
*
*/
public org.hl7.fhir.String getPrognosis() {
return prognosis;
}
/**
* Sets the value of the prognosis property.
*
* @param value
* allowed object is
* {@link org.hl7.fhir.String }
*
*/
public void setPrognosis(org.hl7.fhir.String value) {
this.prognosis = value;
}
/**
* Gets the value of the plan 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 plan property.
*
*
* For example, to add a new item, do as follows:
*
* getPlan().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link Reference }
*
*
*/
public List getPlan() {
if (plan == null) {
plan = new ArrayList();
}
return this.plan;
}
/**
* Gets the value of the action 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 action property.
*
*
* For example, to add a new item, do as follows:
*
* getAction().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link Reference }
*
*
*/
public List getAction() {
if (action == null) {
action = new ArrayList();
}
return this.action;
}
public ClinicalImpression withPatient(Reference value) {
setPatient(value);
return this;
}
public ClinicalImpression withAssessor(Reference value) {
setAssessor(value);
return this;
}
public ClinicalImpression withStatus(ClinicalImpressionStatus value) {
setStatus(value);
return this;
}
public ClinicalImpression withDate(DateTime value) {
setDate(value);
return this;
}
public ClinicalImpression withDescription(org.hl7.fhir.String value) {
setDescription(value);
return this;
}
public ClinicalImpression withPrevious(Reference value) {
setPrevious(value);
return this;
}
public ClinicalImpression withProblem(Reference... values) {
if (values!= null) {
for (Reference value: values) {
getProblem().add(value);
}
}
return this;
}
public ClinicalImpression withProblem(Collection values) {
if (values!= null) {
getProblem().addAll(values);
}
return this;
}
public ClinicalImpression withTriggerCodeableConcept(CodeableConcept value) {
setTriggerCodeableConcept(value);
return this;
}
public ClinicalImpression withTriggerReference(Reference value) {
setTriggerReference(value);
return this;
}
public ClinicalImpression withInvestigations(ClinicalImpressionInvestigations... values) {
if (values!= null) {
for (ClinicalImpressionInvestigations value: values) {
getInvestigations().add(value);
}
}
return this;
}
public ClinicalImpression withInvestigations(Collection values) {
if (values!= null) {
getInvestigations().addAll(values);
}
return this;
}
public ClinicalImpression withProtocol(Uri value) {
setProtocol(value);
return this;
}
public ClinicalImpression withSummary(org.hl7.fhir.String value) {
setSummary(value);
return this;
}
public ClinicalImpression withFinding(ClinicalImpressionFinding... values) {
if (values!= null) {
for (ClinicalImpressionFinding value: values) {
getFinding().add(value);
}
}
return this;
}
public ClinicalImpression withFinding(Collection values) {
if (values!= null) {
getFinding().addAll(values);
}
return this;
}
public ClinicalImpression withResolved(CodeableConcept... values) {
if (values!= null) {
for (CodeableConcept value: values) {
getResolved().add(value);
}
}
return this;
}
public ClinicalImpression withResolved(Collection values) {
if (values!= null) {
getResolved().addAll(values);
}
return this;
}
public ClinicalImpression withRuledOut(ClinicalImpressionRuledOut... values) {
if (values!= null) {
for (ClinicalImpressionRuledOut value: values) {
getRuledOut().add(value);
}
}
return this;
}
public ClinicalImpression withRuledOut(Collection values) {
if (values!= null) {
getRuledOut().addAll(values);
}
return this;
}
public ClinicalImpression withPrognosis(org.hl7.fhir.String value) {
setPrognosis(value);
return this;
}
public ClinicalImpression withPlan(Reference... values) {
if (values!= null) {
for (Reference value: values) {
getPlan().add(value);
}
}
return this;
}
public ClinicalImpression withPlan(Collection values) {
if (values!= null) {
getPlan().addAll(values);
}
return this;
}
public ClinicalImpression withAction(Reference... values) {
if (values!= null) {
for (Reference value: values) {
getAction().add(value);
}
}
return this;
}
public ClinicalImpression withAction(Collection values) {
if (values!= null) {
getAction().addAll(values);
}
return this;
}
@Override
public ClinicalImpression withText(Narrative value) {
setText(value);
return this;
}
@Override
public ClinicalImpression withContained(ResourceContainer... values) {
if (values!= null) {
for (ResourceContainer value: values) {
getContained().add(value);
}
}
return this;
}
@Override
public ClinicalImpression withContained(Collection values) {
if (values!= null) {
getContained().addAll(values);
}
return this;
}
@Override
public ClinicalImpression withExtension(Extension... values) {
if (values!= null) {
for (Extension value: values) {
getExtension().add(value);
}
}
return this;
}
@Override
public ClinicalImpression withExtension(Collection values) {
if (values!= null) {
getExtension().addAll(values);
}
return this;
}
@Override
public ClinicalImpression withModifierExtension(Extension... values) {
if (values!= null) {
for (Extension value: values) {
getModifierExtension().add(value);
}
}
return this;
}
@Override
public ClinicalImpression withModifierExtension(Collection values) {
if (values!= null) {
getModifierExtension().addAll(values);
}
return this;
}
@Override
public ClinicalImpression withId(Id value) {
setId(value);
return this;
}
@Override
public ClinicalImpression withMeta(Meta value) {
setMeta(value);
return this;
}
@Override
public ClinicalImpression withImplicitRules(Uri value) {
setImplicitRules(value);
return this;
}
@Override
public ClinicalImpression 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 ClinicalImpression that = ((ClinicalImpression) object);
{
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 lhsAssessor;
lhsAssessor = this.getAssessor();
Reference rhsAssessor;
rhsAssessor = that.getAssessor();
if (!strategy.equals(LocatorUtils.property(thisLocator, "assessor", lhsAssessor), LocatorUtils.property(thatLocator, "assessor", rhsAssessor), lhsAssessor, rhsAssessor, (this.assessor!= null), (that.assessor!= null))) {
return false;
}
}
{
ClinicalImpressionStatus lhsStatus;
lhsStatus = this.getStatus();
ClinicalImpressionStatus 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;
}
}
{
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;
}
}
{
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;
}
}
{
Reference lhsPrevious;
lhsPrevious = this.getPrevious();
Reference rhsPrevious;
rhsPrevious = that.getPrevious();
if (!strategy.equals(LocatorUtils.property(thisLocator, "previous", lhsPrevious), LocatorUtils.property(thatLocator, "previous", rhsPrevious), lhsPrevious, rhsPrevious, (this.previous!= null), (that.previous!= null))) {
return false;
}
}
{
List lhsProblem;
lhsProblem = (((this.problem!= null)&&(!this.problem.isEmpty()))?this.getProblem():null);
List rhsProblem;
rhsProblem = (((that.problem!= null)&&(!that.problem.isEmpty()))?that.getProblem():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "problem", lhsProblem), LocatorUtils.property(thatLocator, "problem", rhsProblem), lhsProblem, rhsProblem, ((this.problem!= null)&&(!this.problem.isEmpty())), ((that.problem!= null)&&(!that.problem.isEmpty())))) {
return false;
}
}
{
CodeableConcept lhsTriggerCodeableConcept;
lhsTriggerCodeableConcept = this.getTriggerCodeableConcept();
CodeableConcept rhsTriggerCodeableConcept;
rhsTriggerCodeableConcept = that.getTriggerCodeableConcept();
if (!strategy.equals(LocatorUtils.property(thisLocator, "triggerCodeableConcept", lhsTriggerCodeableConcept), LocatorUtils.property(thatLocator, "triggerCodeableConcept", rhsTriggerCodeableConcept), lhsTriggerCodeableConcept, rhsTriggerCodeableConcept, (this.triggerCodeableConcept!= null), (that.triggerCodeableConcept!= null))) {
return false;
}
}
{
Reference lhsTriggerReference;
lhsTriggerReference = this.getTriggerReference();
Reference rhsTriggerReference;
rhsTriggerReference = that.getTriggerReference();
if (!strategy.equals(LocatorUtils.property(thisLocator, "triggerReference", lhsTriggerReference), LocatorUtils.property(thatLocator, "triggerReference", rhsTriggerReference), lhsTriggerReference, rhsTriggerReference, (this.triggerReference!= null), (that.triggerReference!= null))) {
return false;
}
}
{
List lhsInvestigations;
lhsInvestigations = (((this.investigations!= null)&&(!this.investigations.isEmpty()))?this.getInvestigations():null);
List rhsInvestigations;
rhsInvestigations = (((that.investigations!= null)&&(!that.investigations.isEmpty()))?that.getInvestigations():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "investigations", lhsInvestigations), LocatorUtils.property(thatLocator, "investigations", rhsInvestigations), lhsInvestigations, rhsInvestigations, ((this.investigations!= null)&&(!this.investigations.isEmpty())), ((that.investigations!= null)&&(!that.investigations.isEmpty())))) {
return false;
}
}
{
Uri lhsProtocol;
lhsProtocol = this.getProtocol();
Uri rhsProtocol;
rhsProtocol = that.getProtocol();
if (!strategy.equals(LocatorUtils.property(thisLocator, "protocol", lhsProtocol), LocatorUtils.property(thatLocator, "protocol", rhsProtocol), lhsProtocol, rhsProtocol, (this.protocol!= null), (that.protocol!= null))) {
return false;
}
}
{
org.hl7.fhir.String lhsSummary;
lhsSummary = this.getSummary();
org.hl7.fhir.String rhsSummary;
rhsSummary = that.getSummary();
if (!strategy.equals(LocatorUtils.property(thisLocator, "summary", lhsSummary), LocatorUtils.property(thatLocator, "summary", rhsSummary), lhsSummary, rhsSummary, (this.summary!= null), (that.summary!= null))) {
return false;
}
}
{
List lhsFinding;
lhsFinding = (((this.finding!= null)&&(!this.finding.isEmpty()))?this.getFinding():null);
List rhsFinding;
rhsFinding = (((that.finding!= null)&&(!that.finding.isEmpty()))?that.getFinding():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "finding", lhsFinding), LocatorUtils.property(thatLocator, "finding", rhsFinding), lhsFinding, rhsFinding, ((this.finding!= null)&&(!this.finding.isEmpty())), ((that.finding!= null)&&(!that.finding.isEmpty())))) {
return false;
}
}
{
List lhsResolved;
lhsResolved = (((this.resolved!= null)&&(!this.resolved.isEmpty()))?this.getResolved():null);
List rhsResolved;
rhsResolved = (((that.resolved!= null)&&(!that.resolved.isEmpty()))?that.getResolved():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "resolved", lhsResolved), LocatorUtils.property(thatLocator, "resolved", rhsResolved), lhsResolved, rhsResolved, ((this.resolved!= null)&&(!this.resolved.isEmpty())), ((that.resolved!= null)&&(!that.resolved.isEmpty())))) {
return false;
}
}
{
List lhsRuledOut;
lhsRuledOut = (((this.ruledOut!= null)&&(!this.ruledOut.isEmpty()))?this.getRuledOut():null);
List rhsRuledOut;
rhsRuledOut = (((that.ruledOut!= null)&&(!that.ruledOut.isEmpty()))?that.getRuledOut():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "ruledOut", lhsRuledOut), LocatorUtils.property(thatLocator, "ruledOut", rhsRuledOut), lhsRuledOut, rhsRuledOut, ((this.ruledOut!= null)&&(!this.ruledOut.isEmpty())), ((that.ruledOut!= null)&&(!that.ruledOut.isEmpty())))) {
return false;
}
}
{
org.hl7.fhir.String lhsPrognosis;
lhsPrognosis = this.getPrognosis();
org.hl7.fhir.String rhsPrognosis;
rhsPrognosis = that.getPrognosis();
if (!strategy.equals(LocatorUtils.property(thisLocator, "prognosis", lhsPrognosis), LocatorUtils.property(thatLocator, "prognosis", rhsPrognosis), lhsPrognosis, rhsPrognosis, (this.prognosis!= null), (that.prognosis!= null))) {
return false;
}
}
{
List lhsPlan;
lhsPlan = (((this.plan!= null)&&(!this.plan.isEmpty()))?this.getPlan():null);
List rhsPlan;
rhsPlan = (((that.plan!= null)&&(!that.plan.isEmpty()))?that.getPlan():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "plan", lhsPlan), LocatorUtils.property(thatLocator, "plan", rhsPlan), lhsPlan, rhsPlan, ((this.plan!= null)&&(!this.plan.isEmpty())), ((that.plan!= null)&&(!that.plan.isEmpty())))) {
return false;
}
}
{
List lhsAction;
lhsAction = (((this.action!= null)&&(!this.action.isEmpty()))?this.getAction():null);
List rhsAction;
rhsAction = (((that.action!= null)&&(!that.action.isEmpty()))?that.getAction():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "action", lhsAction), LocatorUtils.property(thatLocator, "action", rhsAction), lhsAction, rhsAction, ((this.action!= null)&&(!this.action.isEmpty())), ((that.action!= null)&&(!that.action.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);
{
Reference thePatient;
thePatient = this.getPatient();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "patient", thePatient), currentHashCode, thePatient, (this.patient!= null));
}
{
Reference theAssessor;
theAssessor = this.getAssessor();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "assessor", theAssessor), currentHashCode, theAssessor, (this.assessor!= null));
}
{
ClinicalImpressionStatus theStatus;
theStatus = this.getStatus();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "status", theStatus), currentHashCode, theStatus, (this.status!= null));
}
{
DateTime theDate;
theDate = this.getDate();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "date", theDate), currentHashCode, theDate, (this.date!= null));
}
{
org.hl7.fhir.String theDescription;
theDescription = this.getDescription();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "description", theDescription), currentHashCode, theDescription, (this.description!= null));
}
{
Reference thePrevious;
thePrevious = this.getPrevious();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "previous", thePrevious), currentHashCode, thePrevious, (this.previous!= null));
}
{
List theProblem;
theProblem = (((this.problem!= null)&&(!this.problem.isEmpty()))?this.getProblem():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "problem", theProblem), currentHashCode, theProblem, ((this.problem!= null)&&(!this.problem.isEmpty())));
}
{
CodeableConcept theTriggerCodeableConcept;
theTriggerCodeableConcept = this.getTriggerCodeableConcept();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "triggerCodeableConcept", theTriggerCodeableConcept), currentHashCode, theTriggerCodeableConcept, (this.triggerCodeableConcept!= null));
}
{
Reference theTriggerReference;
theTriggerReference = this.getTriggerReference();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "triggerReference", theTriggerReference), currentHashCode, theTriggerReference, (this.triggerReference!= null));
}
{
List theInvestigations;
theInvestigations = (((this.investigations!= null)&&(!this.investigations.isEmpty()))?this.getInvestigations():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "investigations", theInvestigations), currentHashCode, theInvestigations, ((this.investigations!= null)&&(!this.investigations.isEmpty())));
}
{
Uri theProtocol;
theProtocol = this.getProtocol();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "protocol", theProtocol), currentHashCode, theProtocol, (this.protocol!= null));
}
{
org.hl7.fhir.String theSummary;
theSummary = this.getSummary();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "summary", theSummary), currentHashCode, theSummary, (this.summary!= null));
}
{
List theFinding;
theFinding = (((this.finding!= null)&&(!this.finding.isEmpty()))?this.getFinding():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "finding", theFinding), currentHashCode, theFinding, ((this.finding!= null)&&(!this.finding.isEmpty())));
}
{
List theResolved;
theResolved = (((this.resolved!= null)&&(!this.resolved.isEmpty()))?this.getResolved():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "resolved", theResolved), currentHashCode, theResolved, ((this.resolved!= null)&&(!this.resolved.isEmpty())));
}
{
List theRuledOut;
theRuledOut = (((this.ruledOut!= null)&&(!this.ruledOut.isEmpty()))?this.getRuledOut():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "ruledOut", theRuledOut), currentHashCode, theRuledOut, ((this.ruledOut!= null)&&(!this.ruledOut.isEmpty())));
}
{
org.hl7.fhir.String thePrognosis;
thePrognosis = this.getPrognosis();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "prognosis", thePrognosis), currentHashCode, thePrognosis, (this.prognosis!= null));
}
{
List thePlan;
thePlan = (((this.plan!= null)&&(!this.plan.isEmpty()))?this.getPlan():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "plan", thePlan), currentHashCode, thePlan, ((this.plan!= null)&&(!this.plan.isEmpty())));
}
{
List theAction;
theAction = (((this.action!= null)&&(!this.action.isEmpty()))?this.getAction():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "action", theAction), currentHashCode, theAction, ((this.action!= null)&&(!this.action.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);
{
Reference thePatient;
thePatient = this.getPatient();
strategy.appendField(locator, this, "patient", buffer, thePatient, (this.patient!= null));
}
{
Reference theAssessor;
theAssessor = this.getAssessor();
strategy.appendField(locator, this, "assessor", buffer, theAssessor, (this.assessor!= null));
}
{
ClinicalImpressionStatus theStatus;
theStatus = this.getStatus();
strategy.appendField(locator, this, "status", buffer, theStatus, (this.status!= null));
}
{
DateTime theDate;
theDate = this.getDate();
strategy.appendField(locator, this, "date", buffer, theDate, (this.date!= null));
}
{
org.hl7.fhir.String theDescription;
theDescription = this.getDescription();
strategy.appendField(locator, this, "description", buffer, theDescription, (this.description!= null));
}
{
Reference thePrevious;
thePrevious = this.getPrevious();
strategy.appendField(locator, this, "previous", buffer, thePrevious, (this.previous!= null));
}
{
List theProblem;
theProblem = (((this.problem!= null)&&(!this.problem.isEmpty()))?this.getProblem():null);
strategy.appendField(locator, this, "problem", buffer, theProblem, ((this.problem!= null)&&(!this.problem.isEmpty())));
}
{
CodeableConcept theTriggerCodeableConcept;
theTriggerCodeableConcept = this.getTriggerCodeableConcept();
strategy.appendField(locator, this, "triggerCodeableConcept", buffer, theTriggerCodeableConcept, (this.triggerCodeableConcept!= null));
}
{
Reference theTriggerReference;
theTriggerReference = this.getTriggerReference();
strategy.appendField(locator, this, "triggerReference", buffer, theTriggerReference, (this.triggerReference!= null));
}
{
List theInvestigations;
theInvestigations = (((this.investigations!= null)&&(!this.investigations.isEmpty()))?this.getInvestigations():null);
strategy.appendField(locator, this, "investigations", buffer, theInvestigations, ((this.investigations!= null)&&(!this.investigations.isEmpty())));
}
{
Uri theProtocol;
theProtocol = this.getProtocol();
strategy.appendField(locator, this, "protocol", buffer, theProtocol, (this.protocol!= null));
}
{
org.hl7.fhir.String theSummary;
theSummary = this.getSummary();
strategy.appendField(locator, this, "summary", buffer, theSummary, (this.summary!= null));
}
{
List theFinding;
theFinding = (((this.finding!= null)&&(!this.finding.isEmpty()))?this.getFinding():null);
strategy.appendField(locator, this, "finding", buffer, theFinding, ((this.finding!= null)&&(!this.finding.isEmpty())));
}
{
List theResolved;
theResolved = (((this.resolved!= null)&&(!this.resolved.isEmpty()))?this.getResolved():null);
strategy.appendField(locator, this, "resolved", buffer, theResolved, ((this.resolved!= null)&&(!this.resolved.isEmpty())));
}
{
List theRuledOut;
theRuledOut = (((this.ruledOut!= null)&&(!this.ruledOut.isEmpty()))?this.getRuledOut():null);
strategy.appendField(locator, this, "ruledOut", buffer, theRuledOut, ((this.ruledOut!= null)&&(!this.ruledOut.isEmpty())));
}
{
org.hl7.fhir.String thePrognosis;
thePrognosis = this.getPrognosis();
strategy.appendField(locator, this, "prognosis", buffer, thePrognosis, (this.prognosis!= null));
}
{
List thePlan;
thePlan = (((this.plan!= null)&&(!this.plan.isEmpty()))?this.getPlan():null);
strategy.appendField(locator, this, "plan", buffer, thePlan, ((this.plan!= null)&&(!this.plan.isEmpty())));
}
{
List theAction;
theAction = (((this.action!= null)&&(!this.action.isEmpty()))?this.getAction():null);
strategy.appendField(locator, this, "action", buffer, theAction, ((this.action!= null)&&(!this.action.isEmpty())));
}
return buffer;
}
public void setProblem(List value) {
this.problem = value;
}
public void setInvestigations(List value) {
this.investigations = value;
}
public void setFinding(List value) {
this.finding = value;
}
public void setResolved(List value) {
this.resolved = value;
}
public void setRuledOut(List value) {
this.ruledOut = value;
}
public void setPlan(List value) {
this.plan = value;
}
public void setAction(List value) {
this.action = value;
}
}