
org.hl7.fhir.ConformanceResource Maven / Gradle / Ivy
Show all versions of quick Show documentation
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.11
// See http://java.sun.com/xml/jaxb
// Any modifications to this file will be lost upon recompilation of the source schema.
// Generated on: 2018.01.12 at 11:04:27 AM MST
//
package org.hl7.fhir;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
import org.jvnet.jaxb2_commons.lang.Equals;
import org.jvnet.jaxb2_commons.lang.EqualsStrategy;
import org.jvnet.jaxb2_commons.lang.HashCode;
import org.jvnet.jaxb2_commons.lang.HashCodeStrategy;
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.ToString;
import org.jvnet.jaxb2_commons.lang.ToStringStrategy;
import org.jvnet.jaxb2_commons.locator.ObjectLocator;
import org.jvnet.jaxb2_commons.locator.util.LocatorUtils;
/**
* A conformance statement is a set of capabilities of a FHIR Server that may be used as a statement of actual server functionality or a statement of required or desired server implementation.
*
* Java class for Conformance.Resource complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="Conformance.Resource">
* <complexContent>
* <extension base="{http://hl7.org/fhir}BackboneElement">
* <sequence>
* <element name="type" type="{http://hl7.org/fhir}code"/>
* <element name="profile" type="{http://hl7.org/fhir}Reference" minOccurs="0"/>
* <element name="interaction" type="{http://hl7.org/fhir}Conformance.Interaction" maxOccurs="unbounded"/>
* <element name="versioning" type="{http://hl7.org/fhir}ResourceVersionPolicy" minOccurs="0"/>
* <element name="readHistory" type="{http://hl7.org/fhir}boolean" minOccurs="0"/>
* <element name="updateCreate" type="{http://hl7.org/fhir}boolean" minOccurs="0"/>
* <element name="conditionalCreate" type="{http://hl7.org/fhir}boolean" minOccurs="0"/>
* <element name="conditionalUpdate" type="{http://hl7.org/fhir}boolean" minOccurs="0"/>
* <element name="conditionalDelete" type="{http://hl7.org/fhir}ConditionalDeleteStatus" minOccurs="0"/>
* <element name="searchInclude" type="{http://hl7.org/fhir}string" maxOccurs="unbounded" minOccurs="0"/>
* <element name="searchRevInclude" type="{http://hl7.org/fhir}string" maxOccurs="unbounded" minOccurs="0"/>
* <element name="searchParam" type="{http://hl7.org/fhir}Conformance.SearchParam" maxOccurs="unbounded" minOccurs="0"/>
* </sequence>
* </extension>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "Conformance.Resource", propOrder = {
"type",
"profile",
"interaction",
"versioning",
"readHistory",
"updateCreate",
"conditionalCreate",
"conditionalUpdate",
"conditionalDelete",
"searchInclude",
"searchRevInclude",
"searchParam"
})
public class ConformanceResource
extends BackboneElement
implements Equals, HashCode, ToString
{
@XmlElement(required = true)
protected Code type;
protected Reference profile;
@XmlElement(required = true)
protected List interaction;
protected ResourceVersionPolicy versioning;
protected Boolean readHistory;
protected Boolean updateCreate;
protected Boolean conditionalCreate;
protected Boolean conditionalUpdate;
protected ConditionalDeleteStatus conditionalDelete;
protected List searchInclude;
protected List searchRevInclude;
protected List searchParam;
/**
* Gets the value of the type property.
*
* @return
* possible object is
* {@link Code }
*
*/
public Code getType() {
return type;
}
/**
* Sets the value of the type property.
*
* @param value
* allowed object is
* {@link Code }
*
*/
public void setType(Code value) {
this.type = value;
}
/**
* Gets the value of the profile property.
*
* @return
* possible object is
* {@link Reference }
*
*/
public Reference getProfile() {
return profile;
}
/**
* Sets the value of the profile property.
*
* @param value
* allowed object is
* {@link Reference }
*
*/
public void setProfile(Reference value) {
this.profile = value;
}
/**
* Gets the value of the interaction 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 JAXB object.
* This is why there is not a set
method for the interaction property.
*
*
* For example, to add a new item, do as follows:
*
* getInteraction().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link ConformanceInteraction }
*
*
*/
public List getInteraction() {
if (interaction == null) {
interaction = new ArrayList();
}
return this.interaction;
}
/**
* Gets the value of the versioning property.
*
* @return
* possible object is
* {@link ResourceVersionPolicy }
*
*/
public ResourceVersionPolicy getVersioning() {
return versioning;
}
/**
* Sets the value of the versioning property.
*
* @param value
* allowed object is
* {@link ResourceVersionPolicy }
*
*/
public void setVersioning(ResourceVersionPolicy value) {
this.versioning = value;
}
/**
* Gets the value of the readHistory property.
*
* @return
* possible object is
* {@link Boolean }
*
*/
public Boolean getReadHistory() {
return readHistory;
}
/**
* Sets the value of the readHistory property.
*
* @param value
* allowed object is
* {@link Boolean }
*
*/
public void setReadHistory(Boolean value) {
this.readHistory = value;
}
/**
* Gets the value of the updateCreate property.
*
* @return
* possible object is
* {@link Boolean }
*
*/
public Boolean getUpdateCreate() {
return updateCreate;
}
/**
* Sets the value of the updateCreate property.
*
* @param value
* allowed object is
* {@link Boolean }
*
*/
public void setUpdateCreate(Boolean value) {
this.updateCreate = value;
}
/**
* Gets the value of the conditionalCreate property.
*
* @return
* possible object is
* {@link Boolean }
*
*/
public Boolean getConditionalCreate() {
return conditionalCreate;
}
/**
* Sets the value of the conditionalCreate property.
*
* @param value
* allowed object is
* {@link Boolean }
*
*/
public void setConditionalCreate(Boolean value) {
this.conditionalCreate = value;
}
/**
* Gets the value of the conditionalUpdate property.
*
* @return
* possible object is
* {@link Boolean }
*
*/
public Boolean getConditionalUpdate() {
return conditionalUpdate;
}
/**
* Sets the value of the conditionalUpdate property.
*
* @param value
* allowed object is
* {@link Boolean }
*
*/
public void setConditionalUpdate(Boolean value) {
this.conditionalUpdate = value;
}
/**
* Gets the value of the conditionalDelete property.
*
* @return
* possible object is
* {@link ConditionalDeleteStatus }
*
*/
public ConditionalDeleteStatus getConditionalDelete() {
return conditionalDelete;
}
/**
* Sets the value of the conditionalDelete property.
*
* @param value
* allowed object is
* {@link ConditionalDeleteStatus }
*
*/
public void setConditionalDelete(ConditionalDeleteStatus value) {
this.conditionalDelete = value;
}
/**
* Gets the value of the searchInclude 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 JAXB object.
* This is why there is not a set
method for the searchInclude property.
*
*
* For example, to add a new item, do as follows:
*
* getSearchInclude().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link org.hl7.fhir.String }
*
*
*/
public List getSearchInclude() {
if (searchInclude == null) {
searchInclude = new ArrayList();
}
return this.searchInclude;
}
/**
* Gets the value of the searchRevInclude 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 JAXB object.
* This is why there is not a set
method for the searchRevInclude property.
*
*
* For example, to add a new item, do as follows:
*
* getSearchRevInclude().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link org.hl7.fhir.String }
*
*
*/
public List getSearchRevInclude() {
if (searchRevInclude == null) {
searchRevInclude = new ArrayList();
}
return this.searchRevInclude;
}
/**
* Gets the value of the searchParam 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 JAXB object.
* This is why there is not a set
method for the searchParam property.
*
*
* For example, to add a new item, do as follows:
*
* getSearchParam().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link ConformanceSearchParam }
*
*
*/
public List getSearchParam() {
if (searchParam == null) {
searchParam = new ArrayList();
}
return this.searchParam;
}
public ConformanceResource withType(Code value) {
setType(value);
return this;
}
public ConformanceResource withProfile(Reference value) {
setProfile(value);
return this;
}
public ConformanceResource withInteraction(ConformanceInteraction... values) {
if (values!= null) {
for (ConformanceInteraction value: values) {
getInteraction().add(value);
}
}
return this;
}
public ConformanceResource withInteraction(Collection values) {
if (values!= null) {
getInteraction().addAll(values);
}
return this;
}
public ConformanceResource withVersioning(ResourceVersionPolicy value) {
setVersioning(value);
return this;
}
public ConformanceResource withReadHistory(Boolean value) {
setReadHistory(value);
return this;
}
public ConformanceResource withUpdateCreate(Boolean value) {
setUpdateCreate(value);
return this;
}
public ConformanceResource withConditionalCreate(Boolean value) {
setConditionalCreate(value);
return this;
}
public ConformanceResource withConditionalUpdate(Boolean value) {
setConditionalUpdate(value);
return this;
}
public ConformanceResource withConditionalDelete(ConditionalDeleteStatus value) {
setConditionalDelete(value);
return this;
}
public ConformanceResource withSearchInclude(org.hl7.fhir.String... values) {
if (values!= null) {
for (org.hl7.fhir.String value: values) {
getSearchInclude().add(value);
}
}
return this;
}
public ConformanceResource withSearchInclude(Collection values) {
if (values!= null) {
getSearchInclude().addAll(values);
}
return this;
}
public ConformanceResource withSearchRevInclude(org.hl7.fhir.String... values) {
if (values!= null) {
for (org.hl7.fhir.String value: values) {
getSearchRevInclude().add(value);
}
}
return this;
}
public ConformanceResource withSearchRevInclude(Collection values) {
if (values!= null) {
getSearchRevInclude().addAll(values);
}
return this;
}
public ConformanceResource withSearchParam(ConformanceSearchParam... values) {
if (values!= null) {
for (ConformanceSearchParam value: values) {
getSearchParam().add(value);
}
}
return this;
}
public ConformanceResource withSearchParam(Collection values) {
if (values!= null) {
getSearchParam().addAll(values);
}
return this;
}
@Override
public ConformanceResource withModifierExtension(Extension... values) {
if (values!= null) {
for (Extension value: values) {
getModifierExtension().add(value);
}
}
return this;
}
@Override
public ConformanceResource withModifierExtension(Collection values) {
if (values!= null) {
getModifierExtension().addAll(values);
}
return this;
}
@Override
public ConformanceResource withExtension(Extension... values) {
if (values!= null) {
for (Extension value: values) {
getExtension().add(value);
}
}
return this;
}
@Override
public ConformanceResource withExtension(Collection values) {
if (values!= null) {
getExtension().addAll(values);
}
return this;
}
@Override
public ConformanceResource withId(java.lang.String value) {
setId(value);
return this;
}
public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
if (!(object instanceof ConformanceResource)) {
return false;
}
if (this == object) {
return true;
}
if (!super.equals(thisLocator, thatLocator, object, strategy)) {
return false;
}
final ConformanceResource that = ((ConformanceResource) object);
{
Code lhsType;
lhsType = this.getType();
Code rhsType;
rhsType = that.getType();
if (!strategy.equals(LocatorUtils.property(thisLocator, "type", lhsType), LocatorUtils.property(thatLocator, "type", rhsType), lhsType, rhsType)) {
return false;
}
}
{
Reference lhsProfile;
lhsProfile = this.getProfile();
Reference rhsProfile;
rhsProfile = that.getProfile();
if (!strategy.equals(LocatorUtils.property(thisLocator, "profile", lhsProfile), LocatorUtils.property(thatLocator, "profile", rhsProfile), lhsProfile, rhsProfile)) {
return false;
}
}
{
List lhsInteraction;
lhsInteraction = (((this.interaction!= null)&&(!this.interaction.isEmpty()))?this.getInteraction():null);
List rhsInteraction;
rhsInteraction = (((that.interaction!= null)&&(!that.interaction.isEmpty()))?that.getInteraction():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "interaction", lhsInteraction), LocatorUtils.property(thatLocator, "interaction", rhsInteraction), lhsInteraction, rhsInteraction)) {
return false;
}
}
{
ResourceVersionPolicy lhsVersioning;
lhsVersioning = this.getVersioning();
ResourceVersionPolicy rhsVersioning;
rhsVersioning = that.getVersioning();
if (!strategy.equals(LocatorUtils.property(thisLocator, "versioning", lhsVersioning), LocatorUtils.property(thatLocator, "versioning", rhsVersioning), lhsVersioning, rhsVersioning)) {
return false;
}
}
{
Boolean lhsReadHistory;
lhsReadHistory = this.getReadHistory();
Boolean rhsReadHistory;
rhsReadHistory = that.getReadHistory();
if (!strategy.equals(LocatorUtils.property(thisLocator, "readHistory", lhsReadHistory), LocatorUtils.property(thatLocator, "readHistory", rhsReadHistory), lhsReadHistory, rhsReadHistory)) {
return false;
}
}
{
Boolean lhsUpdateCreate;
lhsUpdateCreate = this.getUpdateCreate();
Boolean rhsUpdateCreate;
rhsUpdateCreate = that.getUpdateCreate();
if (!strategy.equals(LocatorUtils.property(thisLocator, "updateCreate", lhsUpdateCreate), LocatorUtils.property(thatLocator, "updateCreate", rhsUpdateCreate), lhsUpdateCreate, rhsUpdateCreate)) {
return false;
}
}
{
Boolean lhsConditionalCreate;
lhsConditionalCreate = this.getConditionalCreate();
Boolean rhsConditionalCreate;
rhsConditionalCreate = that.getConditionalCreate();
if (!strategy.equals(LocatorUtils.property(thisLocator, "conditionalCreate", lhsConditionalCreate), LocatorUtils.property(thatLocator, "conditionalCreate", rhsConditionalCreate), lhsConditionalCreate, rhsConditionalCreate)) {
return false;
}
}
{
Boolean lhsConditionalUpdate;
lhsConditionalUpdate = this.getConditionalUpdate();
Boolean rhsConditionalUpdate;
rhsConditionalUpdate = that.getConditionalUpdate();
if (!strategy.equals(LocatorUtils.property(thisLocator, "conditionalUpdate", lhsConditionalUpdate), LocatorUtils.property(thatLocator, "conditionalUpdate", rhsConditionalUpdate), lhsConditionalUpdate, rhsConditionalUpdate)) {
return false;
}
}
{
ConditionalDeleteStatus lhsConditionalDelete;
lhsConditionalDelete = this.getConditionalDelete();
ConditionalDeleteStatus rhsConditionalDelete;
rhsConditionalDelete = that.getConditionalDelete();
if (!strategy.equals(LocatorUtils.property(thisLocator, "conditionalDelete", lhsConditionalDelete), LocatorUtils.property(thatLocator, "conditionalDelete", rhsConditionalDelete), lhsConditionalDelete, rhsConditionalDelete)) {
return false;
}
}
{
List lhsSearchInclude;
lhsSearchInclude = (((this.searchInclude!= null)&&(!this.searchInclude.isEmpty()))?this.getSearchInclude():null);
List rhsSearchInclude;
rhsSearchInclude = (((that.searchInclude!= null)&&(!that.searchInclude.isEmpty()))?that.getSearchInclude():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "searchInclude", lhsSearchInclude), LocatorUtils.property(thatLocator, "searchInclude", rhsSearchInclude), lhsSearchInclude, rhsSearchInclude)) {
return false;
}
}
{
List lhsSearchRevInclude;
lhsSearchRevInclude = (((this.searchRevInclude!= null)&&(!this.searchRevInclude.isEmpty()))?this.getSearchRevInclude():null);
List rhsSearchRevInclude;
rhsSearchRevInclude = (((that.searchRevInclude!= null)&&(!that.searchRevInclude.isEmpty()))?that.getSearchRevInclude():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "searchRevInclude", lhsSearchRevInclude), LocatorUtils.property(thatLocator, "searchRevInclude", rhsSearchRevInclude), lhsSearchRevInclude, rhsSearchRevInclude)) {
return false;
}
}
{
List lhsSearchParam;
lhsSearchParam = (((this.searchParam!= null)&&(!this.searchParam.isEmpty()))?this.getSearchParam():null);
List rhsSearchParam;
rhsSearchParam = (((that.searchParam!= null)&&(!that.searchParam.isEmpty()))?that.getSearchParam():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "searchParam", lhsSearchParam), LocatorUtils.property(thatLocator, "searchParam", rhsSearchParam), lhsSearchParam, rhsSearchParam)) {
return false;
}
}
return true;
}
public boolean equals(Object object) {
final EqualsStrategy strategy = JAXBEqualsStrategy.INSTANCE;
return equals(null, null, object, strategy);
}
public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
int currentHashCode = super.hashCode(locator, strategy);
{
Code theType;
theType = this.getType();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "type", theType), currentHashCode, theType);
}
{
Reference theProfile;
theProfile = this.getProfile();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "profile", theProfile), currentHashCode, theProfile);
}
{
List theInteraction;
theInteraction = (((this.interaction!= null)&&(!this.interaction.isEmpty()))?this.getInteraction():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "interaction", theInteraction), currentHashCode, theInteraction);
}
{
ResourceVersionPolicy theVersioning;
theVersioning = this.getVersioning();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "versioning", theVersioning), currentHashCode, theVersioning);
}
{
Boolean theReadHistory;
theReadHistory = this.getReadHistory();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "readHistory", theReadHistory), currentHashCode, theReadHistory);
}
{
Boolean theUpdateCreate;
theUpdateCreate = this.getUpdateCreate();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "updateCreate", theUpdateCreate), currentHashCode, theUpdateCreate);
}
{
Boolean theConditionalCreate;
theConditionalCreate = this.getConditionalCreate();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "conditionalCreate", theConditionalCreate), currentHashCode, theConditionalCreate);
}
{
Boolean theConditionalUpdate;
theConditionalUpdate = this.getConditionalUpdate();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "conditionalUpdate", theConditionalUpdate), currentHashCode, theConditionalUpdate);
}
{
ConditionalDeleteStatus theConditionalDelete;
theConditionalDelete = this.getConditionalDelete();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "conditionalDelete", theConditionalDelete), currentHashCode, theConditionalDelete);
}
{
List theSearchInclude;
theSearchInclude = (((this.searchInclude!= null)&&(!this.searchInclude.isEmpty()))?this.getSearchInclude():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "searchInclude", theSearchInclude), currentHashCode, theSearchInclude);
}
{
List theSearchRevInclude;
theSearchRevInclude = (((this.searchRevInclude!= null)&&(!this.searchRevInclude.isEmpty()))?this.getSearchRevInclude():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "searchRevInclude", theSearchRevInclude), currentHashCode, theSearchRevInclude);
}
{
List theSearchParam;
theSearchParam = (((this.searchParam!= null)&&(!this.searchParam.isEmpty()))?this.getSearchParam():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "searchParam", theSearchParam), currentHashCode, theSearchParam);
}
return currentHashCode;
}
public int hashCode() {
final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
return this.hashCode(null, strategy);
}
public java.lang.String toString() {
final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE;
final StringBuilder buffer = new StringBuilder();
append(null, buffer, strategy);
return buffer.toString();
}
public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
strategy.appendStart(locator, this, buffer);
appendFields(locator, buffer, strategy);
strategy.appendEnd(locator, this, buffer);
return buffer;
}
public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) {
super.appendFields(locator, buffer, strategy);
{
Code theType;
theType = this.getType();
strategy.appendField(locator, this, "type", buffer, theType);
}
{
Reference theProfile;
theProfile = this.getProfile();
strategy.appendField(locator, this, "profile", buffer, theProfile);
}
{
List theInteraction;
theInteraction = (((this.interaction!= null)&&(!this.interaction.isEmpty()))?this.getInteraction():null);
strategy.appendField(locator, this, "interaction", buffer, theInteraction);
}
{
ResourceVersionPolicy theVersioning;
theVersioning = this.getVersioning();
strategy.appendField(locator, this, "versioning", buffer, theVersioning);
}
{
Boolean theReadHistory;
theReadHistory = this.getReadHistory();
strategy.appendField(locator, this, "readHistory", buffer, theReadHistory);
}
{
Boolean theUpdateCreate;
theUpdateCreate = this.getUpdateCreate();
strategy.appendField(locator, this, "updateCreate", buffer, theUpdateCreate);
}
{
Boolean theConditionalCreate;
theConditionalCreate = this.getConditionalCreate();
strategy.appendField(locator, this, "conditionalCreate", buffer, theConditionalCreate);
}
{
Boolean theConditionalUpdate;
theConditionalUpdate = this.getConditionalUpdate();
strategy.appendField(locator, this, "conditionalUpdate", buffer, theConditionalUpdate);
}
{
ConditionalDeleteStatus theConditionalDelete;
theConditionalDelete = this.getConditionalDelete();
strategy.appendField(locator, this, "conditionalDelete", buffer, theConditionalDelete);
}
{
List theSearchInclude;
theSearchInclude = (((this.searchInclude!= null)&&(!this.searchInclude.isEmpty()))?this.getSearchInclude():null);
strategy.appendField(locator, this, "searchInclude", buffer, theSearchInclude);
}
{
List theSearchRevInclude;
theSearchRevInclude = (((this.searchRevInclude!= null)&&(!this.searchRevInclude.isEmpty()))?this.getSearchRevInclude():null);
strategy.appendField(locator, this, "searchRevInclude", buffer, theSearchRevInclude);
}
{
List theSearchParam;
theSearchParam = (((this.searchParam!= null)&&(!this.searchParam.isEmpty()))?this.getSearchParam():null);
strategy.appendField(locator, this, "searchParam", buffer, theSearchParam);
}
return buffer;
}
}