org.hl7.fhir.GroupCharacteristic Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of quick Show documentation
Show all versions of quick Show documentation
The quick library for the Clinical Quality Language Java reference implementation
//
// This file was generated by the Eclipse Implementation of JAXB, v3.0.2
// See https://eclipse-ee4j.github.io/jaxb-ri
// Any modifications to this file will be lost upon recompilation of the source schema.
// Generated on: 2024.08.16 at 09:36:55 AM MDT
//
package org.hl7.fhir;
import java.util.Collection;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
import jakarta.xml.bind.annotation.XmlElement;
import jakarta.xml.bind.annotation.XmlType;
import org.jvnet.jaxb2_commons.lang.Equals2;
import org.jvnet.jaxb2_commons.lang.EqualsStrategy2;
import org.jvnet.jaxb2_commons.lang.HashCode2;
import org.jvnet.jaxb2_commons.lang.HashCodeStrategy2;
import org.jvnet.jaxb2_commons.lang.JAXBEqualsStrategy;
import org.jvnet.jaxb2_commons.lang.JAXBHashCodeStrategy;
import org.jvnet.jaxb2_commons.lang.JAXBToStringStrategy;
import org.jvnet.jaxb2_commons.lang.ToString2;
import org.jvnet.jaxb2_commons.lang.ToStringStrategy2;
import org.jvnet.jaxb2_commons.locator.ObjectLocator;
import org.jvnet.jaxb2_commons.locator.util.LocatorUtils;
/**
* Represents a defined collection of entities that may be discussed or acted upon collectively but which are not expected to act collectively and are not formally or legally recognized; i.e. a collection of entities that isn't an Organization.
*
* Java class for Group.Characteristic complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="Group.Characteristic">
* <complexContent>
* <extension base="{http://hl7.org/fhir}BackboneElement">
* <sequence>
* <element name="code" type="{http://hl7.org/fhir}CodeableConcept"/>
* <choice>
* <element name="valueCodeableConcept" type="{http://hl7.org/fhir}CodeableConcept"/>
* <element name="valueBoolean" type="{http://hl7.org/fhir}boolean"/>
* <element name="valueQuantity" type="{http://hl7.org/fhir}Quantity"/>
* <element name="valueRange" type="{http://hl7.org/fhir}Range"/>
* </choice>
* <element name="exclude" type="{http://hl7.org/fhir}boolean"/>
* <element name="period" type="{http://hl7.org/fhir}Period" minOccurs="0"/>
* </sequence>
* </extension>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "Group.Characteristic", propOrder = {
"code",
"valueCodeableConcept",
"valueBoolean",
"valueQuantity",
"valueRange",
"exclude",
"period"
})
public class GroupCharacteristic
extends BackboneElement
implements Equals2, HashCode2, ToString2
{
@XmlElement(required = true)
protected CodeableConcept code;
protected CodeableConcept valueCodeableConcept;
protected Boolean valueBoolean;
protected Quantity valueQuantity;
protected Range valueRange;
@XmlElement(required = true)
protected Boolean exclude;
protected Period period;
/**
* Gets the value of the code property.
*
* @return
* possible object is
* {@link CodeableConcept }
*
*/
public CodeableConcept getCode() {
return code;
}
/**
* Sets the value of the code property.
*
* @param value
* allowed object is
* {@link CodeableConcept }
*
*/
public void setCode(CodeableConcept value) {
this.code = value;
}
/**
* Gets the value of the valueCodeableConcept property.
*
* @return
* possible object is
* {@link CodeableConcept }
*
*/
public CodeableConcept getValueCodeableConcept() {
return valueCodeableConcept;
}
/**
* Sets the value of the valueCodeableConcept property.
*
* @param value
* allowed object is
* {@link CodeableConcept }
*
*/
public void setValueCodeableConcept(CodeableConcept value) {
this.valueCodeableConcept = value;
}
/**
* Gets the value of the valueBoolean property.
*
* @return
* possible object is
* {@link Boolean }
*
*/
public Boolean getValueBoolean() {
return valueBoolean;
}
/**
* Sets the value of the valueBoolean property.
*
* @param value
* allowed object is
* {@link Boolean }
*
*/
public void setValueBoolean(Boolean value) {
this.valueBoolean = value;
}
/**
* Gets the value of the valueQuantity property.
*
* @return
* possible object is
* {@link Quantity }
*
*/
public Quantity getValueQuantity() {
return valueQuantity;
}
/**
* Sets the value of the valueQuantity property.
*
* @param value
* allowed object is
* {@link Quantity }
*
*/
public void setValueQuantity(Quantity value) {
this.valueQuantity = value;
}
/**
* Gets the value of the valueRange property.
*
* @return
* possible object is
* {@link Range }
*
*/
public Range getValueRange() {
return valueRange;
}
/**
* Sets the value of the valueRange property.
*
* @param value
* allowed object is
* {@link Range }
*
*/
public void setValueRange(Range value) {
this.valueRange = value;
}
/**
* Gets the value of the exclude property.
*
* @return
* possible object is
* {@link Boolean }
*
*/
public Boolean getExclude() {
return exclude;
}
/**
* Sets the value of the exclude property.
*
* @param value
* allowed object is
* {@link Boolean }
*
*/
public void setExclude(Boolean value) {
this.exclude = value;
}
/**
* Gets the value of the period property.
*
* @return
* possible object is
* {@link Period }
*
*/
public Period getPeriod() {
return period;
}
/**
* Sets the value of the period property.
*
* @param value
* allowed object is
* {@link Period }
*
*/
public void setPeriod(Period value) {
this.period = value;
}
public GroupCharacteristic withCode(CodeableConcept value) {
setCode(value);
return this;
}
public GroupCharacteristic withValueCodeableConcept(CodeableConcept value) {
setValueCodeableConcept(value);
return this;
}
public GroupCharacteristic withValueBoolean(Boolean value) {
setValueBoolean(value);
return this;
}
public GroupCharacteristic withValueQuantity(Quantity value) {
setValueQuantity(value);
return this;
}
public GroupCharacteristic withValueRange(Range value) {
setValueRange(value);
return this;
}
public GroupCharacteristic withExclude(Boolean value) {
setExclude(value);
return this;
}
public GroupCharacteristic withPeriod(Period value) {
setPeriod(value);
return this;
}
@Override
public GroupCharacteristic withModifierExtension(Extension... values) {
if (values!= null) {
for (Extension value: values) {
getModifierExtension().add(value);
}
}
return this;
}
@Override
public GroupCharacteristic withModifierExtension(Collection values) {
if (values!= null) {
getModifierExtension().addAll(values);
}
return this;
}
@Override
public GroupCharacteristic withExtension(Extension... values) {
if (values!= null) {
for (Extension value: values) {
getExtension().add(value);
}
}
return this;
}
@Override
public GroupCharacteristic withExtension(Collection values) {
if (values!= null) {
getExtension().addAll(values);
}
return this;
}
@Override
public GroupCharacteristic 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 GroupCharacteristic that = ((GroupCharacteristic) object);
{
CodeableConcept lhsCode;
lhsCode = this.getCode();
CodeableConcept rhsCode;
rhsCode = that.getCode();
if (!strategy.equals(LocatorUtils.property(thisLocator, "code", lhsCode), LocatorUtils.property(thatLocator, "code", rhsCode), lhsCode, rhsCode, (this.code!= null), (that.code!= null))) {
return false;
}
}
{
CodeableConcept lhsValueCodeableConcept;
lhsValueCodeableConcept = this.getValueCodeableConcept();
CodeableConcept rhsValueCodeableConcept;
rhsValueCodeableConcept = that.getValueCodeableConcept();
if (!strategy.equals(LocatorUtils.property(thisLocator, "valueCodeableConcept", lhsValueCodeableConcept), LocatorUtils.property(thatLocator, "valueCodeableConcept", rhsValueCodeableConcept), lhsValueCodeableConcept, rhsValueCodeableConcept, (this.valueCodeableConcept!= null), (that.valueCodeableConcept!= null))) {
return false;
}
}
{
Boolean lhsValueBoolean;
lhsValueBoolean = this.getValueBoolean();
Boolean rhsValueBoolean;
rhsValueBoolean = that.getValueBoolean();
if (!strategy.equals(LocatorUtils.property(thisLocator, "valueBoolean", lhsValueBoolean), LocatorUtils.property(thatLocator, "valueBoolean", rhsValueBoolean), lhsValueBoolean, rhsValueBoolean, (this.valueBoolean!= null), (that.valueBoolean!= null))) {
return false;
}
}
{
Quantity lhsValueQuantity;
lhsValueQuantity = this.getValueQuantity();
Quantity rhsValueQuantity;
rhsValueQuantity = that.getValueQuantity();
if (!strategy.equals(LocatorUtils.property(thisLocator, "valueQuantity", lhsValueQuantity), LocatorUtils.property(thatLocator, "valueQuantity", rhsValueQuantity), lhsValueQuantity, rhsValueQuantity, (this.valueQuantity!= null), (that.valueQuantity!= null))) {
return false;
}
}
{
Range lhsValueRange;
lhsValueRange = this.getValueRange();
Range rhsValueRange;
rhsValueRange = that.getValueRange();
if (!strategy.equals(LocatorUtils.property(thisLocator, "valueRange", lhsValueRange), LocatorUtils.property(thatLocator, "valueRange", rhsValueRange), lhsValueRange, rhsValueRange, (this.valueRange!= null), (that.valueRange!= null))) {
return false;
}
}
{
Boolean lhsExclude;
lhsExclude = this.getExclude();
Boolean rhsExclude;
rhsExclude = that.getExclude();
if (!strategy.equals(LocatorUtils.property(thisLocator, "exclude", lhsExclude), LocatorUtils.property(thatLocator, "exclude", rhsExclude), lhsExclude, rhsExclude, (this.exclude!= null), (that.exclude!= null))) {
return false;
}
}
{
Period lhsPeriod;
lhsPeriod = this.getPeriod();
Period rhsPeriod;
rhsPeriod = that.getPeriod();
if (!strategy.equals(LocatorUtils.property(thisLocator, "period", lhsPeriod), LocatorUtils.property(thatLocator, "period", rhsPeriod), lhsPeriod, rhsPeriod, (this.period!= null), (that.period!= 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);
{
CodeableConcept theCode;
theCode = this.getCode();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "code", theCode), currentHashCode, theCode, (this.code!= null));
}
{
CodeableConcept theValueCodeableConcept;
theValueCodeableConcept = this.getValueCodeableConcept();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "valueCodeableConcept", theValueCodeableConcept), currentHashCode, theValueCodeableConcept, (this.valueCodeableConcept!= null));
}
{
Boolean theValueBoolean;
theValueBoolean = this.getValueBoolean();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "valueBoolean", theValueBoolean), currentHashCode, theValueBoolean, (this.valueBoolean!= null));
}
{
Quantity theValueQuantity;
theValueQuantity = this.getValueQuantity();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "valueQuantity", theValueQuantity), currentHashCode, theValueQuantity, (this.valueQuantity!= null));
}
{
Range theValueRange;
theValueRange = this.getValueRange();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "valueRange", theValueRange), currentHashCode, theValueRange, (this.valueRange!= null));
}
{
Boolean theExclude;
theExclude = this.getExclude();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "exclude", theExclude), currentHashCode, theExclude, (this.exclude!= null));
}
{
Period thePeriod;
thePeriod = this.getPeriod();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "period", thePeriod), currentHashCode, thePeriod, (this.period!= 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);
{
CodeableConcept theCode;
theCode = this.getCode();
strategy.appendField(locator, this, "code", buffer, theCode, (this.code!= null));
}
{
CodeableConcept theValueCodeableConcept;
theValueCodeableConcept = this.getValueCodeableConcept();
strategy.appendField(locator, this, "valueCodeableConcept", buffer, theValueCodeableConcept, (this.valueCodeableConcept!= null));
}
{
Boolean theValueBoolean;
theValueBoolean = this.getValueBoolean();
strategy.appendField(locator, this, "valueBoolean", buffer, theValueBoolean, (this.valueBoolean!= null));
}
{
Quantity theValueQuantity;
theValueQuantity = this.getValueQuantity();
strategy.appendField(locator, this, "valueQuantity", buffer, theValueQuantity, (this.valueQuantity!= null));
}
{
Range theValueRange;
theValueRange = this.getValueRange();
strategy.appendField(locator, this, "valueRange", buffer, theValueRange, (this.valueRange!= null));
}
{
Boolean theExclude;
theExclude = this.getExclude();
strategy.appendField(locator, this, "exclude", buffer, theExclude, (this.exclude!= null));
}
{
Period thePeriod;
thePeriod = this.getPeriod();
strategy.appendField(locator, this, "period", buffer, thePeriod, (this.period!= null));
}
return buffer;
}
}