org.hl7.elm.r1.Literal Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of elm Show documentation
Show all versions of elm Show documentation
The elm library for the Clinical Quality Language Java reference implementation
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.4.0-b180830.0438
// See https://javaee.github.io/jaxb-v2/
// Any modifications to this file will be lost upon recompilation of the source schema.
// Generated on: 2023.08.24 at 01:22:35 PM MDT
//
package org.hl7.elm.r1;
import java.util.Collection;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlSchemaType;
import javax.xml.bind.annotation.XmlType;
import javax.xml.namespace.QName;
import org.hl7.cql_annotations.r1.CqlToElmBase;
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;
/**
* The Literal type defines a single scalar value. For example, the literal 5, the boolean value true or the string "antithrombotic".
*
* Java class for Literal complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="Literal">
* <complexContent>
* <extension base="{urn:hl7-org:elm:r1}Expression">
* <attribute name="valueType" use="required" type="{http://www.w3.org/2001/XMLSchema}QName" />
* <attribute name="value" type="{http://www.w3.org/2001/XMLSchema}anySimpleType" />
* </extension>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "Literal", namespace = "urn:hl7-org:elm:r1")
public class Literal
extends Expression
implements Equals2, HashCode2, ToString2
{
@XmlAttribute(name = "valueType", required = true)
protected QName valueType;
@XmlAttribute(name = "value")
@XmlSchemaType(name = "anySimpleType")
protected String value;
/**
* Gets the value of the valueType property.
*
* @return
* possible object is
* {@link QName }
*
*/
public QName getValueType() {
return valueType;
}
/**
* Sets the value of the valueType property.
*
* @param value
* allowed object is
* {@link QName }
*
*/
public void setValueType(QName value) {
this.valueType = value;
}
/**
* Gets the value of the value property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getValue() {
return value;
}
/**
* Sets the value of the value property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setValue(String value) {
this.value = value;
}
public Literal withValueType(QName value) {
setValueType(value);
return this;
}
public Literal withValue(String value) {
setValue(value);
return this;
}
@Override
public Literal withAnnotation(CqlToElmBase... values) {
if (values!= null) {
for (CqlToElmBase value: values) {
getAnnotation().add(value);
}
}
return this;
}
@Override
public Literal withAnnotation(Collection values) {
if (values!= null) {
getAnnotation().addAll(values);
}
return this;
}
@Override
public Literal withResultTypeSpecifier(TypeSpecifier value) {
setResultTypeSpecifier(value);
return this;
}
@Override
public Literal withLocalId(String value) {
setLocalId(value);
return this;
}
@Override
public Literal withLocator(String value) {
setLocator(value);
return this;
}
@Override
public Literal withResultTypeName(QName value) {
setResultTypeName(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 Literal that = ((Literal) object);
{
QName lhsValueType;
lhsValueType = this.getValueType();
QName rhsValueType;
rhsValueType = that.getValueType();
if (!strategy.equals(LocatorUtils.property(thisLocator, "valueType", lhsValueType), LocatorUtils.property(thatLocator, "valueType", rhsValueType), lhsValueType, rhsValueType, (this.valueType!= null), (that.valueType!= null))) {
return false;
}
}
{
String lhsValue;
lhsValue = this.getValue();
String rhsValue;
rhsValue = that.getValue();
if (!strategy.equals(LocatorUtils.property(thisLocator, "value", lhsValue), LocatorUtils.property(thatLocator, "value", rhsValue), lhsValue, rhsValue, (this.value!= null), (that.value!= 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);
{
QName theValueType;
theValueType = this.getValueType();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "valueType", theValueType), currentHashCode, theValueType, (this.valueType!= null));
}
{
String theValue;
theValue = this.getValue();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "value", theValue), currentHashCode, theValue, (this.value!= null));
}
return currentHashCode;
}
@Override
public int hashCode() {
final HashCodeStrategy2 strategy = JAXBHashCodeStrategy.getInstance();
return this.hashCode(null, strategy);
}
@Override
public 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);
{
QName theValueType;
theValueType = this.getValueType();
strategy.appendField(locator, this, "valueType", buffer, theValueType, (this.valueType!= null));
}
{
String theValue;
theValue = this.getValue();
strategy.appendField(locator, this, "value", buffer, theValue, (this.value!= null));
}
return buffer;
}
}