All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.hl7.elm_modelinfo.r1.ModelInfo Maven / Gradle / Ivy

//
// 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.09.27 at 12:41:40 AM MDT 
//


package org.hl7.elm_modelinfo.r1;

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.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlSchemaType;
import javax.xml.bind.annotation.XmlType;
import javax.xml.namespace.QName;
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;


/**
 * The ModelInfo type defines the metadata associated with a particular model to enable it to be used by the CQL translator. Note that none of the information specified here is required, it just enables some convenient shorthands within the language.
 * 
 * 

Java class for ModelInfo complex type. * *

The following schema fragment specifies the expected content contained within this class. * *

 * <complexType name="ModelInfo">
 *   <complexContent>
 *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *       <sequence>
 *         <element name="requiredModelInfo" type="{urn:hl7-org:elm-modelinfo:r1}ModelSpecifier" maxOccurs="unbounded" minOccurs="0"/>
 *         <element name="typeInfo" type="{urn:hl7-org:elm-modelinfo:r1}TypeInfo" maxOccurs="unbounded" minOccurs="0"/>
 *         <element name="conversionInfo" type="{urn:hl7-org:elm-modelinfo:r1}ConversionInfo" maxOccurs="unbounded" minOccurs="0"/>
 *       </sequence>
 *       <attribute name="name" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
 *       <attribute name="version" type="{http://www.w3.org/2001/XMLSchema}string" />
 *       <attribute name="url" use="required" type="{http://www.w3.org/2001/XMLSchema}anyURI" />
 *       <attribute name="schemaLocation" type="{http://www.w3.org/2001/XMLSchema}string" />
 *       <attribute name="targetQualifier" type="{http://www.w3.org/2001/XMLSchema}QName" />
 *       <attribute name="patientClassName" type="{http://www.w3.org/2001/XMLSchema}string" />
 *       <attribute name="patientClassIdentifier" type="{http://www.w3.org/2001/XMLSchema}string" />
 *       <attribute name="patientBirthDatePropertyName" type="{http://www.w3.org/2001/XMLSchema}string" />
 *       <attribute name="caseSensitive" type="{http://www.w3.org/2001/XMLSchema}boolean" />
 *       <attribute name="strictRetrieveTyping" type="{http://www.w3.org/2001/XMLSchema}boolean" />
 *     </restriction>
 *   </complexContent>
 * </complexType>
 * 
* * */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "ModelInfo", namespace = "urn:hl7-org:elm-modelinfo:r1", propOrder = { "requiredModelInfo", "typeInfo", "conversionInfo" }) public class ModelInfo implements Equals, HashCode, ToString { @XmlElement(namespace = "urn:hl7-org:elm-modelinfo:r1") protected List requiredModelInfo; @XmlElement(namespace = "urn:hl7-org:elm-modelinfo:r1") protected List typeInfo; @XmlElement(namespace = "urn:hl7-org:elm-modelinfo:r1") protected List conversionInfo; @XmlAttribute(name = "name", required = true) protected String name; @XmlAttribute(name = "version") protected String version; @XmlAttribute(name = "url", required = true) @XmlSchemaType(name = "anyURI") protected String url; @XmlAttribute(name = "schemaLocation") protected String schemaLocation; @XmlAttribute(name = "targetQualifier") protected QName targetQualifier; @XmlAttribute(name = "patientClassName") protected String patientClassName; @XmlAttribute(name = "patientClassIdentifier") protected String patientClassIdentifier; @XmlAttribute(name = "patientBirthDatePropertyName") protected String patientBirthDatePropertyName; @XmlAttribute(name = "caseSensitive") protected Boolean caseSensitive; @XmlAttribute(name = "strictRetrieveTyping") protected Boolean strictRetrieveTyping; /** * Gets the value of the requiredModelInfo 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 requiredModelInfo property. * *

* For example, to add a new item, do as follows: *

     *    getRequiredModelInfo().add(newItem);
     * 
* * *

* Objects of the following type(s) are allowed in the list * {@link ModelSpecifier } * * */ public List getRequiredModelInfo() { if (requiredModelInfo == null) { requiredModelInfo = new ArrayList(); } return this.requiredModelInfo; } /** * Gets the value of the typeInfo 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 typeInfo property. * *

* For example, to add a new item, do as follows: *

     *    getTypeInfo().add(newItem);
     * 
* * *

* Objects of the following type(s) are allowed in the list * {@link TypeInfo } * * */ public List getTypeInfo() { if (typeInfo == null) { typeInfo = new ArrayList(); } return this.typeInfo; } /** * Gets the value of the conversionInfo 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 conversionInfo property. * *

* For example, to add a new item, do as follows: *

     *    getConversionInfo().add(newItem);
     * 
* * *

* Objects of the following type(s) are allowed in the list * {@link ConversionInfo } * * */ public List getConversionInfo() { if (conversionInfo == null) { conversionInfo = new ArrayList(); } return this.conversionInfo; } /** * Gets the value of the name property. * * @return * possible object is * {@link String } * */ public String getName() { return name; } /** * Sets the value of the name property. * * @param value * allowed object is * {@link String } * */ public void setName(String value) { this.name = value; } /** * Gets the value of the version property. * * @return * possible object is * {@link String } * */ public String getVersion() { return version; } /** * Sets the value of the version property. * * @param value * allowed object is * {@link String } * */ public void setVersion(String value) { this.version = value; } /** * Gets the value of the url property. * * @return * possible object is * {@link String } * */ public String getUrl() { return url; } /** * Sets the value of the url property. * * @param value * allowed object is * {@link String } * */ public void setUrl(String value) { this.url = value; } /** * Gets the value of the schemaLocation property. * * @return * possible object is * {@link String } * */ public String getSchemaLocation() { return schemaLocation; } /** * Sets the value of the schemaLocation property. * * @param value * allowed object is * {@link String } * */ public void setSchemaLocation(String value) { this.schemaLocation = value; } /** * Gets the value of the targetQualifier property. * * @return * possible object is * {@link QName } * */ public QName getTargetQualifier() { return targetQualifier; } /** * Sets the value of the targetQualifier property. * * @param value * allowed object is * {@link QName } * */ public void setTargetQualifier(QName value) { this.targetQualifier = value; } /** * Gets the value of the patientClassName property. * * @return * possible object is * {@link String } * */ public String getPatientClassName() { return patientClassName; } /** * Sets the value of the patientClassName property. * * @param value * allowed object is * {@link String } * */ public void setPatientClassName(String value) { this.patientClassName = value; } /** * Gets the value of the patientClassIdentifier property. * * @return * possible object is * {@link String } * */ public String getPatientClassIdentifier() { return patientClassIdentifier; } /** * Sets the value of the patientClassIdentifier property. * * @param value * allowed object is * {@link String } * */ public void setPatientClassIdentifier(String value) { this.patientClassIdentifier = value; } /** * Gets the value of the patientBirthDatePropertyName property. * * @return * possible object is * {@link String } * */ public String getPatientBirthDatePropertyName() { return patientBirthDatePropertyName; } /** * Sets the value of the patientBirthDatePropertyName property. * * @param value * allowed object is * {@link String } * */ public void setPatientBirthDatePropertyName(String value) { this.patientBirthDatePropertyName = value; } /** * Gets the value of the caseSensitive property. * * @return * possible object is * {@link Boolean } * */ public Boolean isCaseSensitive() { return caseSensitive; } /** * Sets the value of the caseSensitive property. * * @param value * allowed object is * {@link Boolean } * */ public void setCaseSensitive(Boolean value) { this.caseSensitive = value; } /** * Gets the value of the strictRetrieveTyping property. * * @return * possible object is * {@link Boolean } * */ public Boolean isStrictRetrieveTyping() { return strictRetrieveTyping; } /** * Sets the value of the strictRetrieveTyping property. * * @param value * allowed object is * {@link Boolean } * */ public void setStrictRetrieveTyping(Boolean value) { this.strictRetrieveTyping = value; } public ModelInfo withRequiredModelInfo(ModelSpecifier... values) { if (values!= null) { for (ModelSpecifier value: values) { getRequiredModelInfo().add(value); } } return this; } public ModelInfo withRequiredModelInfo(Collection values) { if (values!= null) { getRequiredModelInfo().addAll(values); } return this; } public ModelInfo withTypeInfo(TypeInfo... values) { if (values!= null) { for (TypeInfo value: values) { getTypeInfo().add(value); } } return this; } public ModelInfo withTypeInfo(Collection values) { if (values!= null) { getTypeInfo().addAll(values); } return this; } public ModelInfo withConversionInfo(ConversionInfo... values) { if (values!= null) { for (ConversionInfo value: values) { getConversionInfo().add(value); } } return this; } public ModelInfo withConversionInfo(Collection values) { if (values!= null) { getConversionInfo().addAll(values); } return this; } public ModelInfo withName(String value) { setName(value); return this; } public ModelInfo withVersion(String value) { setVersion(value); return this; } public ModelInfo withUrl(String value) { setUrl(value); return this; } public ModelInfo withSchemaLocation(String value) { setSchemaLocation(value); return this; } public ModelInfo withTargetQualifier(QName value) { setTargetQualifier(value); return this; } public ModelInfo withPatientClassName(String value) { setPatientClassName(value); return this; } public ModelInfo withPatientClassIdentifier(String value) { setPatientClassIdentifier(value); return this; } public ModelInfo withPatientBirthDatePropertyName(String value) { setPatientBirthDatePropertyName(value); return this; } public ModelInfo withCaseSensitive(Boolean value) { setCaseSensitive(value); return this; } public ModelInfo withStrictRetrieveTyping(Boolean value) { setStrictRetrieveTyping(value); return this; } public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) { if (!(object instanceof ModelInfo)) { return false; } if (this == object) { return true; } final ModelInfo that = ((ModelInfo) object); { List lhsRequiredModelInfo; lhsRequiredModelInfo = (((this.requiredModelInfo!= null)&&(!this.requiredModelInfo.isEmpty()))?this.getRequiredModelInfo():null); List rhsRequiredModelInfo; rhsRequiredModelInfo = (((that.requiredModelInfo!= null)&&(!that.requiredModelInfo.isEmpty()))?that.getRequiredModelInfo():null); if (!strategy.equals(LocatorUtils.property(thisLocator, "requiredModelInfo", lhsRequiredModelInfo), LocatorUtils.property(thatLocator, "requiredModelInfo", rhsRequiredModelInfo), lhsRequiredModelInfo, rhsRequiredModelInfo)) { return false; } } { List lhsTypeInfo; lhsTypeInfo = (((this.typeInfo!= null)&&(!this.typeInfo.isEmpty()))?this.getTypeInfo():null); List rhsTypeInfo; rhsTypeInfo = (((that.typeInfo!= null)&&(!that.typeInfo.isEmpty()))?that.getTypeInfo():null); if (!strategy.equals(LocatorUtils.property(thisLocator, "typeInfo", lhsTypeInfo), LocatorUtils.property(thatLocator, "typeInfo", rhsTypeInfo), lhsTypeInfo, rhsTypeInfo)) { return false; } } { List lhsConversionInfo; lhsConversionInfo = (((this.conversionInfo!= null)&&(!this.conversionInfo.isEmpty()))?this.getConversionInfo():null); List rhsConversionInfo; rhsConversionInfo = (((that.conversionInfo!= null)&&(!that.conversionInfo.isEmpty()))?that.getConversionInfo():null); if (!strategy.equals(LocatorUtils.property(thisLocator, "conversionInfo", lhsConversionInfo), LocatorUtils.property(thatLocator, "conversionInfo", rhsConversionInfo), lhsConversionInfo, rhsConversionInfo)) { return false; } } { String lhsName; lhsName = this.getName(); String rhsName; rhsName = that.getName(); if (!strategy.equals(LocatorUtils.property(thisLocator, "name", lhsName), LocatorUtils.property(thatLocator, "name", rhsName), lhsName, rhsName)) { return false; } } { String lhsVersion; lhsVersion = this.getVersion(); String rhsVersion; rhsVersion = that.getVersion(); if (!strategy.equals(LocatorUtils.property(thisLocator, "version", lhsVersion), LocatorUtils.property(thatLocator, "version", rhsVersion), lhsVersion, rhsVersion)) { return false; } } { String lhsUrl; lhsUrl = this.getUrl(); String rhsUrl; rhsUrl = that.getUrl(); if (!strategy.equals(LocatorUtils.property(thisLocator, "url", lhsUrl), LocatorUtils.property(thatLocator, "url", rhsUrl), lhsUrl, rhsUrl)) { return false; } } { String lhsSchemaLocation; lhsSchemaLocation = this.getSchemaLocation(); String rhsSchemaLocation; rhsSchemaLocation = that.getSchemaLocation(); if (!strategy.equals(LocatorUtils.property(thisLocator, "schemaLocation", lhsSchemaLocation), LocatorUtils.property(thatLocator, "schemaLocation", rhsSchemaLocation), lhsSchemaLocation, rhsSchemaLocation)) { return false; } } { QName lhsTargetQualifier; lhsTargetQualifier = this.getTargetQualifier(); QName rhsTargetQualifier; rhsTargetQualifier = that.getTargetQualifier(); if (!strategy.equals(LocatorUtils.property(thisLocator, "targetQualifier", lhsTargetQualifier), LocatorUtils.property(thatLocator, "targetQualifier", rhsTargetQualifier), lhsTargetQualifier, rhsTargetQualifier)) { return false; } } { String lhsPatientClassName; lhsPatientClassName = this.getPatientClassName(); String rhsPatientClassName; rhsPatientClassName = that.getPatientClassName(); if (!strategy.equals(LocatorUtils.property(thisLocator, "patientClassName", lhsPatientClassName), LocatorUtils.property(thatLocator, "patientClassName", rhsPatientClassName), lhsPatientClassName, rhsPatientClassName)) { return false; } } { String lhsPatientClassIdentifier; lhsPatientClassIdentifier = this.getPatientClassIdentifier(); String rhsPatientClassIdentifier; rhsPatientClassIdentifier = that.getPatientClassIdentifier(); if (!strategy.equals(LocatorUtils.property(thisLocator, "patientClassIdentifier", lhsPatientClassIdentifier), LocatorUtils.property(thatLocator, "patientClassIdentifier", rhsPatientClassIdentifier), lhsPatientClassIdentifier, rhsPatientClassIdentifier)) { return false; } } { String lhsPatientBirthDatePropertyName; lhsPatientBirthDatePropertyName = this.getPatientBirthDatePropertyName(); String rhsPatientBirthDatePropertyName; rhsPatientBirthDatePropertyName = that.getPatientBirthDatePropertyName(); if (!strategy.equals(LocatorUtils.property(thisLocator, "patientBirthDatePropertyName", lhsPatientBirthDatePropertyName), LocatorUtils.property(thatLocator, "patientBirthDatePropertyName", rhsPatientBirthDatePropertyName), lhsPatientBirthDatePropertyName, rhsPatientBirthDatePropertyName)) { return false; } } { Boolean lhsCaseSensitive; lhsCaseSensitive = this.isCaseSensitive(); Boolean rhsCaseSensitive; rhsCaseSensitive = that.isCaseSensitive(); if (!strategy.equals(LocatorUtils.property(thisLocator, "caseSensitive", lhsCaseSensitive), LocatorUtils.property(thatLocator, "caseSensitive", rhsCaseSensitive), lhsCaseSensitive, rhsCaseSensitive)) { return false; } } { Boolean lhsStrictRetrieveTyping; lhsStrictRetrieveTyping = this.isStrictRetrieveTyping(); Boolean rhsStrictRetrieveTyping; rhsStrictRetrieveTyping = that.isStrictRetrieveTyping(); if (!strategy.equals(LocatorUtils.property(thisLocator, "strictRetrieveTyping", lhsStrictRetrieveTyping), LocatorUtils.property(thatLocator, "strictRetrieveTyping", rhsStrictRetrieveTyping), lhsStrictRetrieveTyping, rhsStrictRetrieveTyping)) { 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 = 1; { List theRequiredModelInfo; theRequiredModelInfo = (((this.requiredModelInfo!= null)&&(!this.requiredModelInfo.isEmpty()))?this.getRequiredModelInfo():null); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "requiredModelInfo", theRequiredModelInfo), currentHashCode, theRequiredModelInfo); } { List theTypeInfo; theTypeInfo = (((this.typeInfo!= null)&&(!this.typeInfo.isEmpty()))?this.getTypeInfo():null); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "typeInfo", theTypeInfo), currentHashCode, theTypeInfo); } { List theConversionInfo; theConversionInfo = (((this.conversionInfo!= null)&&(!this.conversionInfo.isEmpty()))?this.getConversionInfo():null); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "conversionInfo", theConversionInfo), currentHashCode, theConversionInfo); } { String theName; theName = this.getName(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "name", theName), currentHashCode, theName); } { String theVersion; theVersion = this.getVersion(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "version", theVersion), currentHashCode, theVersion); } { String theUrl; theUrl = this.getUrl(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "url", theUrl), currentHashCode, theUrl); } { String theSchemaLocation; theSchemaLocation = this.getSchemaLocation(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "schemaLocation", theSchemaLocation), currentHashCode, theSchemaLocation); } { QName theTargetQualifier; theTargetQualifier = this.getTargetQualifier(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "targetQualifier", theTargetQualifier), currentHashCode, theTargetQualifier); } { String thePatientClassName; thePatientClassName = this.getPatientClassName(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "patientClassName", thePatientClassName), currentHashCode, thePatientClassName); } { String thePatientClassIdentifier; thePatientClassIdentifier = this.getPatientClassIdentifier(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "patientClassIdentifier", thePatientClassIdentifier), currentHashCode, thePatientClassIdentifier); } { String thePatientBirthDatePropertyName; thePatientBirthDatePropertyName = this.getPatientBirthDatePropertyName(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "patientBirthDatePropertyName", thePatientBirthDatePropertyName), currentHashCode, thePatientBirthDatePropertyName); } { Boolean theCaseSensitive; theCaseSensitive = this.isCaseSensitive(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "caseSensitive", theCaseSensitive), currentHashCode, theCaseSensitive); } { Boolean theStrictRetrieveTyping; theStrictRetrieveTyping = this.isStrictRetrieveTyping(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "strictRetrieveTyping", theStrictRetrieveTyping), currentHashCode, theStrictRetrieveTyping); } return currentHashCode; } public int hashCode() { final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE; return this.hashCode(null, strategy); } public 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) { { List theRequiredModelInfo; theRequiredModelInfo = (((this.requiredModelInfo!= null)&&(!this.requiredModelInfo.isEmpty()))?this.getRequiredModelInfo():null); strategy.appendField(locator, this, "requiredModelInfo", buffer, theRequiredModelInfo); } { List theTypeInfo; theTypeInfo = (((this.typeInfo!= null)&&(!this.typeInfo.isEmpty()))?this.getTypeInfo():null); strategy.appendField(locator, this, "typeInfo", buffer, theTypeInfo); } { List theConversionInfo; theConversionInfo = (((this.conversionInfo!= null)&&(!this.conversionInfo.isEmpty()))?this.getConversionInfo():null); strategy.appendField(locator, this, "conversionInfo", buffer, theConversionInfo); } { String theName; theName = this.getName(); strategy.appendField(locator, this, "name", buffer, theName); } { String theVersion; theVersion = this.getVersion(); strategy.appendField(locator, this, "version", buffer, theVersion); } { String theUrl; theUrl = this.getUrl(); strategy.appendField(locator, this, "url", buffer, theUrl); } { String theSchemaLocation; theSchemaLocation = this.getSchemaLocation(); strategy.appendField(locator, this, "schemaLocation", buffer, theSchemaLocation); } { QName theTargetQualifier; theTargetQualifier = this.getTargetQualifier(); strategy.appendField(locator, this, "targetQualifier", buffer, theTargetQualifier); } { String thePatientClassName; thePatientClassName = this.getPatientClassName(); strategy.appendField(locator, this, "patientClassName", buffer, thePatientClassName); } { String thePatientClassIdentifier; thePatientClassIdentifier = this.getPatientClassIdentifier(); strategy.appendField(locator, this, "patientClassIdentifier", buffer, thePatientClassIdentifier); } { String thePatientBirthDatePropertyName; thePatientBirthDatePropertyName = this.getPatientBirthDatePropertyName(); strategy.appendField(locator, this, "patientBirthDatePropertyName", buffer, thePatientBirthDatePropertyName); } { Boolean theCaseSensitive; theCaseSensitive = this.isCaseSensitive(); strategy.appendField(locator, this, "caseSensitive", buffer, theCaseSensitive); } { Boolean theStrictRetrieveTyping; theStrictRetrieveTyping = this.isStrictRetrieveTyping(); strategy.appendField(locator, this, "strictRetrieveTyping", buffer, theStrictRetrieveTyping); } return buffer; } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy