![JAR search and dependency download from the Maven repository](/logo.png)
org.cqframework.cql.elm.execution.ParameterDef 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.04.13 at 05:43:32 PM MDT
//
package org.cqframework.cql.elm.execution;
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.XmlElement;
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 ParameterDef type defines a parameter that can be referenced by name anywhere within an expression. Parameters are defined at the artifact level, and may be provided as part of the payload for an evaluation request. If no parameter value is provided, the default element is used to provide the value for the parameter. If no parameter or default is provided, the parameter is defined to be null.
*
* Java class for ParameterDef complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="ParameterDef">
* <complexContent>
* <extension base="{urn:hl7-org:elm:r1}Element">
* <sequence>
* <element name="default" type="{urn:hl7-org:elm:r1}Expression" minOccurs="0"/>
* <element name="parameterTypeSpecifier" type="{urn:hl7-org:elm:r1}TypeSpecifier" minOccurs="0"/>
* </sequence>
* <attribute name="name" type="{http://www.w3.org/2001/XMLSchema}string" />
* <attribute name="parameterType" type="{http://www.w3.org/2001/XMLSchema}QName" />
* <attribute name="accessLevel" type="{urn:hl7-org:elm:r1}AccessModifier" default="Public" />
* </extension>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "ParameterDef", namespace = "urn:hl7-org:elm:r1", propOrder = {
"_default",
"parameterTypeSpecifier"
})
public class ParameterDef
extends Element
implements Equals, HashCode, ToString
{
@XmlElement(name = "default", namespace = "urn:hl7-org:elm:r1")
protected Expression _default;
@XmlElement(namespace = "urn:hl7-org:elm:r1")
protected TypeSpecifier parameterTypeSpecifier;
@XmlAttribute(name = "name")
protected String name;
@XmlAttribute(name = "parameterType")
protected QName parameterType;
@XmlAttribute(name = "accessLevel")
protected AccessModifier accessLevel;
/**
* Gets the value of the default property.
*
* @return
* possible object is
* {@link Expression }
*
*/
public Expression getDefault() {
return _default;
}
/**
* Sets the value of the default property.
*
* @param value
* allowed object is
* {@link Expression }
*
*/
public void setDefault(Expression value) {
this._default = value;
}
/**
* Gets the value of the parameterTypeSpecifier property.
*
* @return
* possible object is
* {@link TypeSpecifier }
*
*/
public TypeSpecifier getParameterTypeSpecifier() {
return parameterTypeSpecifier;
}
/**
* Sets the value of the parameterTypeSpecifier property.
*
* @param value
* allowed object is
* {@link TypeSpecifier }
*
*/
public void setParameterTypeSpecifier(TypeSpecifier value) {
this.parameterTypeSpecifier = value;
}
/**
* 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 parameterType property.
*
* @return
* possible object is
* {@link QName }
*
*/
public QName getParameterType() {
return parameterType;
}
/**
* Sets the value of the parameterType property.
*
* @param value
* allowed object is
* {@link QName }
*
*/
public void setParameterType(QName value) {
this.parameterType = value;
}
/**
* Gets the value of the accessLevel property.
*
* @return
* possible object is
* {@link AccessModifier }
*
*/
public AccessModifier getAccessLevel() {
if (accessLevel == null) {
return AccessModifier.PUBLIC;
} else {
return accessLevel;
}
}
/**
* Sets the value of the accessLevel property.
*
* @param value
* allowed object is
* {@link AccessModifier }
*
*/
public void setAccessLevel(AccessModifier value) {
this.accessLevel = value;
}
public ParameterDef withDefault(Expression value) {
setDefault(value);
return this;
}
public ParameterDef withParameterTypeSpecifier(TypeSpecifier value) {
setParameterTypeSpecifier(value);
return this;
}
public ParameterDef withName(String value) {
setName(value);
return this;
}
public ParameterDef withParameterType(QName value) {
setParameterType(value);
return this;
}
public ParameterDef withAccessLevel(AccessModifier value) {
setAccessLevel(value);
return this;
}
@Override
public ParameterDef withAnnotation(Object... values) {
if (values!= null) {
for (Object value: values) {
getAnnotation().add(value);
}
}
return this;
}
@Override
public ParameterDef withAnnotation(Collection
© 2015 - 2025 Weber Informatics LLC | Privacy Policy