com.helger.genericode.v10.Value Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of ph-genericode Show documentation
Show all versions of ph-genericode Show documentation
Library to read and write OASIS GeneriCode and CVA documents
package com.helger.genericode.v10;
import java.io.Serializable;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
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.XmlIDREF;
import javax.xml.bind.annotation.XmlSchemaType;
import javax.xml.bind.annotation.XmlType;
import com.helger.commons.annotation.CodingStyleguideUnaware;
import com.helger.commons.annotation.ReturnsMutableCopy;
import com.helger.commons.equals.EqualsHelper;
import com.helger.commons.hashcode.HashCodeGenerator;
import com.helger.commons.string.ToStringGenerator;
/**
* An individual code list metadata value.
*
* Java class for Value complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="Value">
* <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* <sequence>
* <element name="Annotation" type="{http://docs.oasis-open.org/codelist/ns/genericode/1.0/}Annotation" minOccurs="0"/>
* <group ref="{http://docs.oasis-open.org/codelist/ns/genericode/1.0/}ValueChoice" minOccurs="0"/>
* </sequence>
* <attGroup ref="{http://docs.oasis-open.org/codelist/ns/genericode/1.0/}ColumnReference"/>
* </restriction>
* </complexContent>
* </complexType>
*
* This class was annotated by ph-jaxb22-plugin -Xph-annotate
* This class contains methods created by ph-jaxb22-plugin -Xph-equalshashcode
* This class contains methods created by ph-jaxb22-plugin -Xph-tostring
* This class contains methods created by ph-jaxb22-plugin -Xph-cloneable
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "Value", propOrder = {
"annotation",
"simpleValue",
"complexValue"
})
@CodingStyleguideUnaware
public class Value implements Serializable, Cloneable
{
@XmlElement(name = "Annotation")
private Annotation annotation;
@XmlElement(name = "SimpleValue")
private SimpleValue simpleValue;
@XmlElement(name = "ComplexValue")
private AnyOtherContent complexValue;
@XmlAttribute(name = "ColumnRef")
@XmlIDREF
@XmlSchemaType(name = "IDREF")
private Object columnRef;
/**
* Gets the value of the annotation property.
*
* @return
* possible object is
* {@link Annotation }
*
*/
@Nullable
public Annotation getAnnotation() {
return annotation;
}
/**
* Sets the value of the annotation property.
*
* @param value
* allowed object is
* {@link Annotation }
*
*/
public void setAnnotation(
@Nullable
Annotation value) {
this.annotation = value;
}
/**
* Gets the value of the simpleValue property.
*
* @return
* possible object is
* {@link SimpleValue }
*
*/
@Nullable
public SimpleValue getSimpleValue() {
return simpleValue;
}
/**
* Sets the value of the simpleValue property.
*
* @param value
* allowed object is
* {@link SimpleValue }
*
*/
public void setSimpleValue(
@Nullable
SimpleValue value) {
this.simpleValue = value;
}
/**
* Gets the value of the complexValue property.
*
* @return
* possible object is
* {@link AnyOtherContent }
*
*/
@Nullable
public AnyOtherContent getComplexValue() {
return complexValue;
}
/**
* Sets the value of the complexValue property.
*
* @param value
* allowed object is
* {@link AnyOtherContent }
*
*/
public void setComplexValue(
@Nullable
AnyOtherContent value) {
this.complexValue = value;
}
/**
* Gets the value of the columnRef property.
*
* @return
* possible object is
* {@link Object }
*
*/
@Nullable
public Object getColumnRef() {
return columnRef;
}
/**
* Sets the value of the columnRef property.
*
* @param value
* allowed object is
* {@link Object }
*
*/
public void setColumnRef(
@Nullable
Object value) {
this.columnRef = value;
}
/**
* Created by ph-jaxb22-plugin -Xph-equalshashcode
*
*/
@Override
public boolean equals(final Object o) {
if (o == this) {
return true;
}
if ((o == null)||(!getClass().equals(o.getClass()))) {
return false;
}
final Value rhs = ((Value) o);
if (!EqualsHelper.equals(annotation, rhs.annotation)) {
return false;
}
if (!EqualsHelper.equals(simpleValue, rhs.simpleValue)) {
return false;
}
if (!EqualsHelper.equals(complexValue, rhs.complexValue)) {
return false;
}
if (!EqualsHelper.equals(columnRef, rhs.columnRef)) {
return false;
}
return true;
}
/**
* Created by ph-jaxb22-plugin -Xph-equalshashcode
*
*/
@Override
public int hashCode() {
return new HashCodeGenerator(this).append(annotation).append(simpleValue).append(complexValue).append(columnRef).getHashCode();
}
/**
* Created by ph-jaxb22-plugin -Xph-tostring
*
*/
@Override
public String toString() {
return new ToStringGenerator(this).append("annotation", annotation).append("simpleValue", simpleValue).append("complexValue", complexValue).append("columnRef", columnRef).getToString();
}
/**
* This method clones all values from this
to the passed object. All data in the parameter object is overwritten!Created by ph-jaxb22-plugin -Xph-cloneable
*
* @param ret
* The target object to clone to. May not be null
.
*/
public void cloneTo(
@Nonnull
Value ret) {
ret.annotation = ((annotation == null)?null:annotation.clone());
ret.columnRef = columnRef;
ret.complexValue = ((complexValue == null)?null:complexValue.clone());
ret.simpleValue = ((simpleValue == null)?null:simpleValue.clone());
}
/**
* Created by ph-jaxb22-plugin -Xph-cloneable
*
* @return
* The cloned object. Never null
.
*/
@Nonnull
@ReturnsMutableCopy
@Override
public Value clone() {
Value ret = new Value();
cloneTo(ret);
return ret;
}
}