org.hl7.fhir.QuestionnaireResponseItem 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.08.16 at 09:36:55 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.XmlType;
import org.jvnet.jaxb2_commons.lang.Equals2;
import org.jvnet.jaxb2_commons.lang.EqualsStrategy2;
import org.jvnet.jaxb2_commons.lang.HashCode2;
import org.jvnet.jaxb2_commons.lang.HashCodeStrategy2;
import org.jvnet.jaxb2_commons.lang.JAXBEqualsStrategy;
import org.jvnet.jaxb2_commons.lang.JAXBHashCodeStrategy;
import org.jvnet.jaxb2_commons.lang.JAXBToStringStrategy;
import org.jvnet.jaxb2_commons.lang.ToString2;
import org.jvnet.jaxb2_commons.lang.ToStringStrategy2;
import org.jvnet.jaxb2_commons.locator.ObjectLocator;
import org.jvnet.jaxb2_commons.locator.util.LocatorUtils;
/**
* A structured set of questions and their answers. The questions are ordered and grouped into coherent subsets, corresponding to the structure of the grouping of the underlying questions.
*
* Java class for QuestionnaireResponse.Item complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="QuestionnaireResponse.Item">
* <complexContent>
* <extension base="{http://hl7.org/fhir}BackboneElement">
* <sequence>
* <element name="linkId" type="{http://hl7.org/fhir}string" minOccurs="0"/>
* <element name="text" type="{http://hl7.org/fhir}string" minOccurs="0"/>
* <element name="subject" type="{http://hl7.org/fhir}Reference" minOccurs="0"/>
* <element name="answer" type="{http://hl7.org/fhir}QuestionnaireResponse.Answer" maxOccurs="unbounded" minOccurs="0"/>
* <element name="item" type="{http://hl7.org/fhir}QuestionnaireResponse.Item" maxOccurs="unbounded" minOccurs="0"/>
* </sequence>
* </extension>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "QuestionnaireResponse.Item", propOrder = {
"linkId",
"text",
"subject",
"answer",
"item"
})
public class QuestionnaireResponseItem
extends BackboneElement
implements Equals2, HashCode2, ToString2
{
protected org.hl7.fhir.String linkId;
protected org.hl7.fhir.String text;
protected Reference subject;
protected List answer;
protected List item;
/**
* Gets the value of the linkId property.
*
* @return
* possible object is
* {@link org.hl7.fhir.String }
*
*/
public org.hl7.fhir.String getLinkId() {
return linkId;
}
/**
* Sets the value of the linkId property.
*
* @param value
* allowed object is
* {@link org.hl7.fhir.String }
*
*/
public void setLinkId(org.hl7.fhir.String value) {
this.linkId = value;
}
/**
* Gets the value of the text property.
*
* @return
* possible object is
* {@link org.hl7.fhir.String }
*
*/
public org.hl7.fhir.String getText() {
return text;
}
/**
* Sets the value of the text property.
*
* @param value
* allowed object is
* {@link org.hl7.fhir.String }
*
*/
public void setText(org.hl7.fhir.String value) {
this.text = 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 answer 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 answer property.
*
*
* For example, to add a new item, do as follows:
*
* getAnswer().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link QuestionnaireResponseAnswer }
*
*
*/
public List getAnswer() {
if (answer == null) {
answer = new ArrayList();
}
return this.answer;
}
/**
* Gets the value of the item 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 item property.
*
*
* For example, to add a new item, do as follows:
*
* getItem().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link QuestionnaireResponseItem }
*
*
*/
public List getItem() {
if (item == null) {
item = new ArrayList();
}
return this.item;
}
public QuestionnaireResponseItem withLinkId(org.hl7.fhir.String value) {
setLinkId(value);
return this;
}
public QuestionnaireResponseItem withText(org.hl7.fhir.String value) {
setText(value);
return this;
}
public QuestionnaireResponseItem withSubject(Reference value) {
setSubject(value);
return this;
}
public QuestionnaireResponseItem withAnswer(QuestionnaireResponseAnswer... values) {
if (values!= null) {
for (QuestionnaireResponseAnswer value: values) {
getAnswer().add(value);
}
}
return this;
}
public QuestionnaireResponseItem withAnswer(Collection values) {
if (values!= null) {
getAnswer().addAll(values);
}
return this;
}
public QuestionnaireResponseItem withItem(QuestionnaireResponseItem... values) {
if (values!= null) {
for (QuestionnaireResponseItem value: values) {
getItem().add(value);
}
}
return this;
}
public QuestionnaireResponseItem withItem(Collection values) {
if (values!= null) {
getItem().addAll(values);
}
return this;
}
@Override
public QuestionnaireResponseItem withModifierExtension(Extension... values) {
if (values!= null) {
for (Extension value: values) {
getModifierExtension().add(value);
}
}
return this;
}
@Override
public QuestionnaireResponseItem withModifierExtension(Collection values) {
if (values!= null) {
getModifierExtension().addAll(values);
}
return this;
}
@Override
public QuestionnaireResponseItem withExtension(Extension... values) {
if (values!= null) {
for (Extension value: values) {
getExtension().add(value);
}
}
return this;
}
@Override
public QuestionnaireResponseItem withExtension(Collection values) {
if (values!= null) {
getExtension().addAll(values);
}
return this;
}
@Override
public QuestionnaireResponseItem withId(java.lang.String value) {
setId(value);
return this;
}
@Override
public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy2 strategy) {
if ((object == null)||(this.getClass()!= object.getClass())) {
return false;
}
if (this == object) {
return true;
}
if (!super.equals(thisLocator, thatLocator, object, strategy)) {
return false;
}
final QuestionnaireResponseItem that = ((QuestionnaireResponseItem) object);
{
org.hl7.fhir.String lhsLinkId;
lhsLinkId = this.getLinkId();
org.hl7.fhir.String rhsLinkId;
rhsLinkId = that.getLinkId();
if (!strategy.equals(LocatorUtils.property(thisLocator, "linkId", lhsLinkId), LocatorUtils.property(thatLocator, "linkId", rhsLinkId), lhsLinkId, rhsLinkId, (this.linkId!= null), (that.linkId!= null))) {
return false;
}
}
{
org.hl7.fhir.String lhsText;
lhsText = this.getText();
org.hl7.fhir.String rhsText;
rhsText = that.getText();
if (!strategy.equals(LocatorUtils.property(thisLocator, "text", lhsText), LocatorUtils.property(thatLocator, "text", rhsText), lhsText, rhsText, (this.text!= null), (that.text!= 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;
}
}
{
List lhsAnswer;
lhsAnswer = (((this.answer!= null)&&(!this.answer.isEmpty()))?this.getAnswer():null);
List rhsAnswer;
rhsAnswer = (((that.answer!= null)&&(!that.answer.isEmpty()))?that.getAnswer():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "answer", lhsAnswer), LocatorUtils.property(thatLocator, "answer", rhsAnswer), lhsAnswer, rhsAnswer, ((this.answer!= null)&&(!this.answer.isEmpty())), ((that.answer!= null)&&(!that.answer.isEmpty())))) {
return false;
}
}
{
List lhsItem;
lhsItem = (((this.item!= null)&&(!this.item.isEmpty()))?this.getItem():null);
List rhsItem;
rhsItem = (((that.item!= null)&&(!that.item.isEmpty()))?that.getItem():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "item", lhsItem), LocatorUtils.property(thatLocator, "item", rhsItem), lhsItem, rhsItem, ((this.item!= null)&&(!this.item.isEmpty())), ((that.item!= null)&&(!that.item.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);
{
org.hl7.fhir.String theLinkId;
theLinkId = this.getLinkId();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "linkId", theLinkId), currentHashCode, theLinkId, (this.linkId!= null));
}
{
org.hl7.fhir.String theText;
theText = this.getText();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "text", theText), currentHashCode, theText, (this.text!= null));
}
{
Reference theSubject;
theSubject = this.getSubject();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "subject", theSubject), currentHashCode, theSubject, (this.subject!= null));
}
{
List theAnswer;
theAnswer = (((this.answer!= null)&&(!this.answer.isEmpty()))?this.getAnswer():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "answer", theAnswer), currentHashCode, theAnswer, ((this.answer!= null)&&(!this.answer.isEmpty())));
}
{
List theItem;
theItem = (((this.item!= null)&&(!this.item.isEmpty()))?this.getItem():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "item", theItem), currentHashCode, theItem, ((this.item!= null)&&(!this.item.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);
{
org.hl7.fhir.String theLinkId;
theLinkId = this.getLinkId();
strategy.appendField(locator, this, "linkId", buffer, theLinkId, (this.linkId!= null));
}
{
org.hl7.fhir.String theText;
theText = this.getText();
strategy.appendField(locator, this, "text", buffer, theText, (this.text!= null));
}
{
Reference theSubject;
theSubject = this.getSubject();
strategy.appendField(locator, this, "subject", buffer, theSubject, (this.subject!= null));
}
{
List theAnswer;
theAnswer = (((this.answer!= null)&&(!this.answer.isEmpty()))?this.getAnswer():null);
strategy.appendField(locator, this, "answer", buffer, theAnswer, ((this.answer!= null)&&(!this.answer.isEmpty())));
}
{
List theItem;
theItem = (((this.item!= null)&&(!this.item.isEmpty()))?this.getItem():null);
strategy.appendField(locator, this, "item", buffer, theItem, ((this.item!= null)&&(!this.item.isEmpty())));
}
return buffer;
}
public void setAnswer(List value) {
this.answer = value;
}
public void setItem(List value) {
this.item = value;
}
}