oasis.names.tc.ciq.xpil._3.ContactNumbers Maven / Gradle / Ivy
Show all versions of stix Show documentation
/**
* Copyright (c) 2015, The MITRE Corporation. All rights reserved.
* See LICENSE for complete terms.
*/
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.5-2
// See http://java.sun.com/xml/jaxb
// Any modifications to this file will be lost upon recompilation of the source schema.
// Generated on: 2015.07.01 at 03:19:53 PM EDT
//
package oasis.names.tc.ciq.xpil._3;
import java.io.StringReader;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBElement;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Unmarshaller;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAnyAttribute;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlSchemaType;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.XmlValue;
import javax.xml.bind.annotation.adapters.NormalizedStringAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import javax.xml.datatype.XMLGregorianCalendar;
import javax.xml.namespace.QName;
import javax.xml.transform.stream.StreamSource;
import oasis.names.tc.ciq.ct._3.DataQualityTypeList;
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;
import org.mitre.stix.DocumentUtilities;
import org.mitre.stix.STIXSchema;
import org.mitre.stix.ValidationEventHandler;
import org.xml.sax.SAXException;
/**
* Java class for anonymous complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType>
* <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* <sequence>
* <element name="ContactNumber" maxOccurs="unbounded">
* <complexType>
* <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* <sequence>
* <element name="ContactNumberElement" maxOccurs="unbounded" minOccurs="0">
* <complexType>
* <simpleContent>
* <extension base="<urn:oasis:names:tc:ciq:ct:3>String">
* <attribute name="Type" type="{urn:oasis:names:tc:ciq:xpil:3}ContactNumberElementList" />
* <anyAttribute processContents='lax' namespace='##other'/>
* </extension>
* </simpleContent>
* </complexType>
* </element>
* </sequence>
* <attGroup ref="{urn:oasis:names:tc:ciq:ct:3}grValidityDate"/>
* <attGroup ref="{urn:oasis:names:tc:ciq:ct:3}grDataQuality"/>
* <attribute name="CommunicationMediaType" type="{urn:oasis:names:tc:ciq:xpil:3}CommunicationMediaTypeList" />
* <attribute name="Status" type="{urn:oasis:names:tc:ciq:ct:3}StatusList" />
* <attribute name="Usage" type="{urn:oasis:names:tc:ciq:xpil:3}ContactNumberUsageList" />
* <attribute name="ContactHours" type="{urn:oasis:names:tc:ciq:ct:3}String" />
* <anyAttribute processContents='lax' namespace='#other'/>
* </restriction>
* </complexContent>
* </complexType>
* </element>
* </sequence>
* <anyAttribute processContents='lax' namespace='##other'/>
* </restriction>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = { "contactNumbers" })
@XmlRootElement(name = "ContactNumbers")
public class ContactNumbers implements Equals, HashCode, ToString {
@XmlElement(name = "ContactNumber", required = true)
protected List contactNumbers;
@XmlAnyAttribute
private Map otherAttributes = new HashMap();
/**
* Default no-arg constructor
*
*/
public ContactNumbers() {
super();
}
/**
* Fully-initialising value constructor
*
*/
public ContactNumbers(
final List contactNumbers,
final Map otherAttributes) {
this.contactNumbers = contactNumbers;
this.otherAttributes = otherAttributes;
}
/**
* Gets the value of the contactNumbers 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 contactNumbers property.
*
*
* For example, to add a new item, do as follows:
*
* getContactNumbers().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link ContactNumbers.ContactNumber }
*
*
*/
public List getContactNumbers() {
if (contactNumbers == null) {
contactNumbers = new ArrayList();
}
return this.contactNumbers;
}
/**
* Gets a map that contains attributes that aren't bound to any typed property on this class.
*
*
* the map is keyed by the name of the attribute and
* the value is the string value of the attribute.
*
* the map returned by this method is live, and you can add new attribute
* by updating the map directly. Because of this design, there's no setter.
*
*
* @return
* always non-null
*/
public Map getOtherAttributes() {
return otherAttributes;
}
public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator,
Object object, EqualsStrategy strategy) {
if (!(object instanceof ContactNumbers)) {
return false;
}
if (this == object) {
return true;
}
final ContactNumbers that = ((ContactNumbers) object);
{
List lhsContactNumbers;
lhsContactNumbers = (((this.contactNumbers != null) && (!this.contactNumbers
.isEmpty())) ? this.getContactNumbers() : null);
List rhsContactNumbers;
rhsContactNumbers = (((that.contactNumbers != null) && (!that.contactNumbers
.isEmpty())) ? that.getContactNumbers() : null);
if (!strategy.equals(LocatorUtils.property(thisLocator,
"contactNumbers", lhsContactNumbers),
LocatorUtils.property(thatLocator, "contactNumbers",
rhsContactNumbers), lhsContactNumbers,
rhsContactNumbers)) {
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 theContactNumbers;
theContactNumbers = (((this.contactNumbers != null) && (!this.contactNumbers
.isEmpty())) ? this.getContactNumbers() : null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator,
"contactNumbers", theContactNumbers), currentHashCode,
theContactNumbers);
}
return currentHashCode;
}
public int hashCode() {
final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
return this.hashCode(null, strategy);
}
public ContactNumbers withContactNumbers(
ContactNumbers.ContactNumber... values) {
if (values != null) {
for (ContactNumbers.ContactNumber value : values) {
getContactNumbers().add(value);
}
}
return this;
}
public ContactNumbers withContactNumbers(
Collection values) {
if (values != null) {
getContactNumbers().addAll(values);
}
return this;
}
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 theContactNumbers;
theContactNumbers = (((this.contactNumbers != null) && (!this.contactNumbers
.isEmpty())) ? this.getContactNumbers() : null);
strategy.appendField(locator, this, "contactNumbers", buffer,
theContactNumbers);
}
return buffer;
}
/**
* Java class for anonymous complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType>
* <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* <sequence>
* <element name="ContactNumberElement" maxOccurs="unbounded" minOccurs="0">
* <complexType>
* <simpleContent>
* <extension base="<urn:oasis:names:tc:ciq:ct:3>String">
* <attribute name="Type" type="{urn:oasis:names:tc:ciq:xpil:3}ContactNumberElementList" />
* <anyAttribute processContents='lax' namespace='##other'/>
* </extension>
* </simpleContent>
* </complexType>
* </element>
* </sequence>
* <attGroup ref="{urn:oasis:names:tc:ciq:ct:3}grValidityDate"/>
* <attGroup ref="{urn:oasis:names:tc:ciq:ct:3}grDataQuality"/>
* <attribute name="CommunicationMediaType" type="{urn:oasis:names:tc:ciq:xpil:3}CommunicationMediaTypeList" />
* <attribute name="Status" type="{urn:oasis:names:tc:ciq:ct:3}StatusList" />
* <attribute name="Usage" type="{urn:oasis:names:tc:ciq:xpil:3}ContactNumberUsageList" />
* <attribute name="ContactHours" type="{urn:oasis:names:tc:ciq:ct:3}String" />
* <anyAttribute processContents='lax' namespace='#other'/>
* </restriction>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = { "contactNumberElements" })
public static class ContactNumber implements Equals, HashCode, ToString {
@XmlElement(name = "ContactNumberElement")
protected List contactNumberElements;
@XmlAttribute(name = "CommunicationMediaType", namespace = "urn:oasis:names:tc:ciq:xpil:3")
protected CommunicationMediaTypeList communicationMediaType;
@XmlAttribute(name = "Status", namespace = "urn:oasis:names:tc:ciq:xpil:3")
protected String status;
@XmlAttribute(name = "Usage", namespace = "urn:oasis:names:tc:ciq:xpil:3")
@XmlJavaTypeAdapter(NormalizedStringAdapter.class)
protected String usage;
@XmlAttribute(name = "ContactHours", namespace = "urn:oasis:names:tc:ciq:xpil:3")
@XmlJavaTypeAdapter(NormalizedStringAdapter.class)
protected String contactHours;
@XmlAttribute(name = "DateValidFrom", namespace = "urn:oasis:names:tc:ciq:ct:3")
@XmlSchemaType(name = "dateTime")
protected XMLGregorianCalendar dateValidFrom;
@XmlAttribute(name = "DateValidTo", namespace = "urn:oasis:names:tc:ciq:ct:3")
@XmlSchemaType(name = "dateTime")
protected XMLGregorianCalendar dateValidTo;
@XmlAttribute(name = "DataQualityType", namespace = "urn:oasis:names:tc:ciq:ct:3")
protected DataQualityTypeList dataQualityType;
@XmlAttribute(name = "ValidFrom", namespace = "urn:oasis:names:tc:ciq:ct:3")
@XmlSchemaType(name = "dateTime")
protected XMLGregorianCalendar validFrom;
@XmlAttribute(name = "ValidTo", namespace = "urn:oasis:names:tc:ciq:ct:3")
@XmlSchemaType(name = "dateTime")
protected XMLGregorianCalendar validTo;
@XmlAnyAttribute
private Map otherAttributes = new HashMap();
/**
* Default no-arg constructor
*
*/
public ContactNumber() {
super();
}
/**
* Fully-initialising value constructor
*
*/
public ContactNumber(
final List contactNumberElements,
final CommunicationMediaTypeList communicationMediaType,
final String status, final String usage,
final String contactHours,
final XMLGregorianCalendar dateValidFrom,
final XMLGregorianCalendar dateValidTo,
final DataQualityTypeList dataQualityType,
final XMLGregorianCalendar validFrom,
final XMLGregorianCalendar validTo,
final Map otherAttributes) {
this.contactNumberElements = contactNumberElements;
this.communicationMediaType = communicationMediaType;
this.status = status;
this.usage = usage;
this.contactHours = contactHours;
this.dateValidFrom = dateValidFrom;
this.dateValidTo = dateValidTo;
this.dataQualityType = dataQualityType;
this.validFrom = validFrom;
this.validTo = validTo;
this.otherAttributes = otherAttributes;
}
/**
* Gets the value of the contactNumberElements 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 contactNumberElements property.
*
*
* For example, to add a new item, do as follows:
*
* getContactNumberElements().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link ContactNumbers.ContactNumber.ContactNumberElement }
*
*
*/
public List getContactNumberElements() {
if (contactNumberElements == null) {
contactNumberElements = new ArrayList();
}
return this.contactNumberElements;
}
/**
* Gets the value of the communicationMediaType property.
*
* @return
* possible object is
* {@link CommunicationMediaTypeList }
*
*/
public CommunicationMediaTypeList getCommunicationMediaType() {
return communicationMediaType;
}
/**
* Sets the value of the communicationMediaType property.
*
* @param value
* allowed object is
* {@link CommunicationMediaTypeList }
*
*/
public void setCommunicationMediaType(CommunicationMediaTypeList value) {
this.communicationMediaType = value;
}
/**
* Gets the value of the status property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getStatus() {
return status;
}
/**
* Sets the value of the status property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setStatus(String value) {
this.status = value;
}
/**
* Gets the value of the usage property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getUsage() {
return usage;
}
/**
* Sets the value of the usage property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setUsage(String value) {
this.usage = value;
}
/**
* Gets the value of the contactHours property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getContactHours() {
return contactHours;
}
/**
* Sets the value of the contactHours property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setContactHours(String value) {
this.contactHours = value;
}
/**
* Gets the value of the dateValidFrom property.
*
* @return
* possible object is
* {@link XMLGregorianCalendar }
*
*/
public XMLGregorianCalendar getDateValidFrom() {
return dateValidFrom;
}
/**
* Sets the value of the dateValidFrom property.
*
* @param value
* allowed object is
* {@link XMLGregorianCalendar }
*
*/
public void setDateValidFrom(XMLGregorianCalendar value) {
this.dateValidFrom = value;
}
/**
* Gets the value of the dateValidTo property.
*
* @return
* possible object is
* {@link XMLGregorianCalendar }
*
*/
public XMLGregorianCalendar getDateValidTo() {
return dateValidTo;
}
/**
* Sets the value of the dateValidTo property.
*
* @param value
* allowed object is
* {@link XMLGregorianCalendar }
*
*/
public void setDateValidTo(XMLGregorianCalendar value) {
this.dateValidTo = value;
}
/**
* Gets the value of the dataQualityType property.
*
* @return
* possible object is
* {@link DataQualityTypeList }
*
*/
public DataQualityTypeList getDataQualityType() {
return dataQualityType;
}
/**
* Sets the value of the dataQualityType property.
*
* @param value
* allowed object is
* {@link DataQualityTypeList }
*
*/
public void setDataQualityType(DataQualityTypeList value) {
this.dataQualityType = value;
}
/**
* Gets the value of the validFrom property.
*
* @return
* possible object is
* {@link XMLGregorianCalendar }
*
*/
public XMLGregorianCalendar getValidFrom() {
return validFrom;
}
/**
* Sets the value of the validFrom property.
*
* @param value
* allowed object is
* {@link XMLGregorianCalendar }
*
*/
public void setValidFrom(XMLGregorianCalendar value) {
this.validFrom = value;
}
/**
* Gets the value of the validTo property.
*
* @return
* possible object is
* {@link XMLGregorianCalendar }
*
*/
public XMLGregorianCalendar getValidTo() {
return validTo;
}
/**
* Sets the value of the validTo property.
*
* @param value
* allowed object is
* {@link XMLGregorianCalendar }
*
*/
public void setValidTo(XMLGregorianCalendar value) {
this.validTo = value;
}
/**
* Gets a map that contains attributes that aren't bound to any typed property on this class.
*
*
* the map is keyed by the name of the attribute and
* the value is the string value of the attribute.
*
* the map returned by this method is live, and you can add new attribute
* by updating the map directly. Because of this design, there's no setter.
*
*
* @return
* always non-null
*/
public Map getOtherAttributes() {
return otherAttributes;
}
public boolean equals(ObjectLocator thisLocator,
ObjectLocator thatLocator, Object object,
EqualsStrategy strategy) {
if (!(object instanceof ContactNumbers.ContactNumber)) {
return false;
}
if (this == object) {
return true;
}
final ContactNumbers.ContactNumber that = ((ContactNumbers.ContactNumber) object);
{
List lhsContactNumberElements;
lhsContactNumberElements = (((this.contactNumberElements != null) && (!this.contactNumberElements
.isEmpty())) ? this.getContactNumberElements() : null);
List rhsContactNumberElements;
rhsContactNumberElements = (((that.contactNumberElements != null) && (!that.contactNumberElements
.isEmpty())) ? that.getContactNumberElements() : null);
if (!strategy.equals(LocatorUtils.property(thisLocator,
"contactNumberElements", lhsContactNumberElements),
LocatorUtils.property(thatLocator,
"contactNumberElements",
rhsContactNumberElements),
lhsContactNumberElements, rhsContactNumberElements)) {
return false;
}
}
{
CommunicationMediaTypeList lhsCommunicationMediaType;
lhsCommunicationMediaType = this.getCommunicationMediaType();
CommunicationMediaTypeList rhsCommunicationMediaType;
rhsCommunicationMediaType = that.getCommunicationMediaType();
if (!strategy.equals(LocatorUtils.property(thisLocator,
"communicationMediaType", lhsCommunicationMediaType),
LocatorUtils.property(thatLocator,
"communicationMediaType",
rhsCommunicationMediaType),
lhsCommunicationMediaType, rhsCommunicationMediaType)) {
return false;
}
}
{
String lhsStatus;
lhsStatus = this.getStatus();
String rhsStatus;
rhsStatus = that.getStatus();
if (!strategy
.equals(LocatorUtils.property(thisLocator, "status",
lhsStatus), LocatorUtils.property(thatLocator,
"status", rhsStatus), lhsStatus, rhsStatus)) {
return false;
}
}
{
String lhsUsage;
lhsUsage = this.getUsage();
String rhsUsage;
rhsUsage = that.getUsage();
if (!strategy.equals(
LocatorUtils.property(thisLocator, "usage", lhsUsage),
LocatorUtils.property(thatLocator, "usage", rhsUsage),
lhsUsage, rhsUsage)) {
return false;
}
}
{
String lhsContactHours;
lhsContactHours = this.getContactHours();
String rhsContactHours;
rhsContactHours = that.getContactHours();
if (!strategy.equals(LocatorUtils.property(thisLocator,
"contactHours", lhsContactHours),
LocatorUtils.property(thatLocator, "contactHours",
rhsContactHours), lhsContactHours,
rhsContactHours)) {
return false;
}
}
{
XMLGregorianCalendar lhsDateValidFrom;
lhsDateValidFrom = this.getDateValidFrom();
XMLGregorianCalendar rhsDateValidFrom;
rhsDateValidFrom = that.getDateValidFrom();
if (!strategy.equals(LocatorUtils.property(thisLocator,
"dateValidFrom", lhsDateValidFrom), LocatorUtils
.property(thatLocator, "dateValidFrom",
rhsDateValidFrom), lhsDateValidFrom,
rhsDateValidFrom)) {
return false;
}
}
{
XMLGregorianCalendar lhsDateValidTo;
lhsDateValidTo = this.getDateValidTo();
XMLGregorianCalendar rhsDateValidTo;
rhsDateValidTo = that.getDateValidTo();
if (!strategy.equals(LocatorUtils.property(thisLocator,
"dateValidTo", lhsDateValidTo), LocatorUtils.property(
thatLocator, "dateValidTo", rhsDateValidTo),
lhsDateValidTo, rhsDateValidTo)) {
return false;
}
}
{
DataQualityTypeList lhsDataQualityType;
lhsDataQualityType = this.getDataQualityType();
DataQualityTypeList rhsDataQualityType;
rhsDataQualityType = that.getDataQualityType();
if (!strategy.equals(LocatorUtils.property(thisLocator,
"dataQualityType", lhsDataQualityType), LocatorUtils
.property(thatLocator, "dataQualityType",
rhsDataQualityType), lhsDataQualityType,
rhsDataQualityType)) {
return false;
}
}
{
XMLGregorianCalendar lhsValidFrom;
lhsValidFrom = this.getValidFrom();
XMLGregorianCalendar rhsValidFrom;
rhsValidFrom = that.getValidFrom();
if (!strategy.equals(LocatorUtils.property(thisLocator,
"validFrom", lhsValidFrom), LocatorUtils.property(
thatLocator, "validFrom", rhsValidFrom), lhsValidFrom,
rhsValidFrom)) {
return false;
}
}
{
XMLGregorianCalendar lhsValidTo;
lhsValidTo = this.getValidTo();
XMLGregorianCalendar rhsValidTo;
rhsValidTo = that.getValidTo();
if (!strategy.equals(LocatorUtils.property(thisLocator,
"validTo", lhsValidTo), LocatorUtils.property(
thatLocator, "validTo", rhsValidTo), lhsValidTo,
rhsValidTo)) {
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 theContactNumberElements;
theContactNumberElements = (((this.contactNumberElements != null) && (!this.contactNumberElements
.isEmpty())) ? this.getContactNumberElements() : null);
currentHashCode = strategy.hashCode(LocatorUtils.property(
locator, "contactNumberElements",
theContactNumberElements), currentHashCode,
theContactNumberElements);
}
{
CommunicationMediaTypeList theCommunicationMediaType;
theCommunicationMediaType = this.getCommunicationMediaType();
currentHashCode = strategy.hashCode(LocatorUtils.property(
locator, "communicationMediaType",
theCommunicationMediaType), currentHashCode,
theCommunicationMediaType);
}
{
String theStatus;
theStatus = this.getStatus();
currentHashCode = strategy.hashCode(
LocatorUtils.property(locator, "status", theStatus),
currentHashCode, theStatus);
}
{
String theUsage;
theUsage = this.getUsage();
currentHashCode = strategy.hashCode(
LocatorUtils.property(locator, "usage", theUsage),
currentHashCode, theUsage);
}
{
String theContactHours;
theContactHours = this.getContactHours();
currentHashCode = strategy.hashCode(LocatorUtils.property(
locator, "contactHours", theContactHours),
currentHashCode, theContactHours);
}
{
XMLGregorianCalendar theDateValidFrom;
theDateValidFrom = this.getDateValidFrom();
currentHashCode = strategy.hashCode(LocatorUtils.property(
locator, "dateValidFrom", theDateValidFrom),
currentHashCode, theDateValidFrom);
}
{
XMLGregorianCalendar theDateValidTo;
theDateValidTo = this.getDateValidTo();
currentHashCode = strategy.hashCode(LocatorUtils.property(
locator, "dateValidTo", theDateValidTo),
currentHashCode, theDateValidTo);
}
{
DataQualityTypeList theDataQualityType;
theDataQualityType = this.getDataQualityType();
currentHashCode = strategy.hashCode(LocatorUtils.property(
locator, "dataQualityType", theDataQualityType),
currentHashCode, theDataQualityType);
}
{
XMLGregorianCalendar theValidFrom;
theValidFrom = this.getValidFrom();
currentHashCode = strategy.hashCode(LocatorUtils.property(
locator, "validFrom", theValidFrom), currentHashCode,
theValidFrom);
}
{
XMLGregorianCalendar theValidTo;
theValidTo = this.getValidTo();
currentHashCode = strategy.hashCode(
LocatorUtils.property(locator, "validTo", theValidTo),
currentHashCode, theValidTo);
}
return currentHashCode;
}
public int hashCode() {
final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
return this.hashCode(null, strategy);
}
public ContactNumbers.ContactNumber withContactNumberElements(
ContactNumbers.ContactNumber.ContactNumberElement... values) {
if (values != null) {
for (ContactNumbers.ContactNumber.ContactNumberElement value : values) {
getContactNumberElements().add(value);
}
}
return this;
}
public ContactNumbers.ContactNumber withContactNumberElements(
Collection values) {
if (values != null) {
getContactNumberElements().addAll(values);
}
return this;
}
public ContactNumbers.ContactNumber withCommunicationMediaType(
CommunicationMediaTypeList value) {
setCommunicationMediaType(value);
return this;
}
public ContactNumbers.ContactNumber withStatus(String value) {
setStatus(value);
return this;
}
public ContactNumbers.ContactNumber withUsage(String value) {
setUsage(value);
return this;
}
public ContactNumbers.ContactNumber withContactHours(String value) {
setContactHours(value);
return this;
}
public ContactNumbers.ContactNumber withDateValidFrom(
XMLGregorianCalendar value) {
setDateValidFrom(value);
return this;
}
public ContactNumbers.ContactNumber withDateValidTo(
XMLGregorianCalendar value) {
setDateValidTo(value);
return this;
}
public ContactNumbers.ContactNumber withDataQualityType(
DataQualityTypeList value) {
setDataQualityType(value);
return this;
}
public ContactNumbers.ContactNumber withValidFrom(
XMLGregorianCalendar value) {
setValidFrom(value);
return this;
}
public ContactNumbers.ContactNumber withValidTo(
XMLGregorianCalendar value) {
setValidTo(value);
return this;
}
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 theContactNumberElements;
theContactNumberElements = (((this.contactNumberElements != null) && (!this.contactNumberElements
.isEmpty())) ? this.getContactNumberElements() : null);
strategy.appendField(locator, this, "contactNumberElements",
buffer, theContactNumberElements);
}
{
CommunicationMediaTypeList theCommunicationMediaType;
theCommunicationMediaType = this.getCommunicationMediaType();
strategy.appendField(locator, this, "communicationMediaType",
buffer, theCommunicationMediaType);
}
{
String theStatus;
theStatus = this.getStatus();
strategy.appendField(locator, this, "status", buffer, theStatus);
}
{
String theUsage;
theUsage = this.getUsage();
strategy.appendField(locator, this, "usage", buffer, theUsage);
}
{
String theContactHours;
theContactHours = this.getContactHours();
strategy.appendField(locator, this, "contactHours", buffer,
theContactHours);
}
{
XMLGregorianCalendar theDateValidFrom;
theDateValidFrom = this.getDateValidFrom();
strategy.appendField(locator, this, "dateValidFrom", buffer,
theDateValidFrom);
}
{
XMLGregorianCalendar theDateValidTo;
theDateValidTo = this.getDateValidTo();
strategy.appendField(locator, this, "dateValidTo", buffer,
theDateValidTo);
}
{
DataQualityTypeList theDataQualityType;
theDataQualityType = this.getDataQualityType();
strategy.appendField(locator, this, "dataQualityType", buffer,
theDataQualityType);
}
{
XMLGregorianCalendar theValidFrom;
theValidFrom = this.getValidFrom();
strategy.appendField(locator, this, "validFrom", buffer,
theValidFrom);
}
{
XMLGregorianCalendar theValidTo;
theValidTo = this.getValidTo();
strategy.appendField(locator, this, "validTo", buffer,
theValidTo);
}
return buffer;
}
/**
* Java class for anonymous complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType>
* <simpleContent>
* <extension base="<urn:oasis:names:tc:ciq:ct:3>String">
* <attribute name="Type" type="{urn:oasis:names:tc:ciq:xpil:3}ContactNumberElementList" />
* <anyAttribute processContents='lax' namespace='##other'/>
* </extension>
* </simpleContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = { "value" })
public static class ContactNumberElement implements Equals, HashCode,
ToString {
@XmlValue
@XmlJavaTypeAdapter(NormalizedStringAdapter.class)
protected String value;
@XmlAttribute(name = "Type", namespace = "urn:oasis:names:tc:ciq:xpil:3")
protected ContactNumberElementList type;
@XmlAnyAttribute
private Map otherAttributes = new HashMap();
/**
* Default no-arg constructor
*
*/
public ContactNumberElement() {
super();
}
/**
* Fully-initialising value constructor
*
*/
public ContactNumberElement(final String value,
final ContactNumberElementList type,
final Map otherAttributes) {
this.value = value;
this.type = type;
this.otherAttributes = otherAttributes;
}
/**
* Normalized and Collapsed String
*
* @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;
}
/**
* Gets the value of the type property.
*
* @return
* possible object is
* {@link ContactNumberElementList }
*
*/
public ContactNumberElementList getType() {
return type;
}
/**
* Sets the value of the type property.
*
* @param value
* allowed object is
* {@link ContactNumberElementList }
*
*/
public void setType(ContactNumberElementList value) {
this.type = value;
}
/**
* Gets a map that contains attributes that aren't bound to any typed property on this class.
*
*
* the map is keyed by the name of the attribute and
* the value is the string value of the attribute.
*
* the map returned by this method is live, and you can add new attribute
* by updating the map directly. Because of this design, there's no setter.
*
*
* @return
* always non-null
*/
public Map getOtherAttributes() {
return otherAttributes;
}
public boolean equals(ObjectLocator thisLocator,
ObjectLocator thatLocator, Object object,
EqualsStrategy strategy) {
if (!(object instanceof ContactNumbers.ContactNumber.ContactNumberElement)) {
return false;
}
if (this == object) {
return true;
}
final ContactNumbers.ContactNumber.ContactNumberElement that = ((ContactNumbers.ContactNumber.ContactNumberElement) object);
{
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)) {
return false;
}
}
{
ContactNumberElementList lhsType;
lhsType = this.getType();
ContactNumberElementList rhsType;
rhsType = that.getType();
if (!strategy
.equals(LocatorUtils.property(thisLocator, "type",
lhsType), LocatorUtils.property(
thatLocator, "type", rhsType), lhsType,
rhsType)) {
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;
{
String theValue;
theValue = this.getValue();
currentHashCode = strategy.hashCode(
LocatorUtils.property(locator, "value", theValue),
currentHashCode, theValue);
}
{
ContactNumberElementList theType;
theType = this.getType();
currentHashCode = strategy.hashCode(
LocatorUtils.property(locator, "type", theType),
currentHashCode, theType);
}
return currentHashCode;
}
public int hashCode() {
final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE;
return this.hashCode(null, strategy);
}
public ContactNumbers.ContactNumber.ContactNumberElement withValue(
String value) {
setValue(value);
return this;
}
public ContactNumbers.ContactNumber.ContactNumberElement withType(
ContactNumberElementList value) {
setType(value);
return this;
}
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) {
{
String theValue;
theValue = this.getValue();
strategy.appendField(locator, this, "value", buffer,
theValue);
}
{
ContactNumberElementList theType;
theType = this.getType();
strategy.appendField(locator, this, "type", buffer, theType);
}
return buffer;
}
}
}
/**
* Returns A Document representation of this instance that is not formatted.
*
* @return The Document representation for this instance.
*/
public org.w3c.dom.Document toDocument() {
return toDocument(false);
}
/**
* Returns A Document representation for this instance.
*
* @param prettyPrint
* True for pretty print, otherwise false
*
* @return The Document representation for this instance.
*/
public org.w3c.dom.Document toDocument(boolean prettyPrint) {
return DocumentUtilities.toDocument(toJAXBElement(), prettyPrint);
}
/**
* Returns JAXBElement for this instance.
*
* @return The JAXBElement for this instance.
*/
@SuppressWarnings({ "rawtypes", "unchecked" })
public JAXBElement> toJAXBElement() {
QName qualifiedName = STIXSchema.getQualifiedName(this);
return new JAXBElement(qualifiedName, ContactNumbers.class, this);
}
/**
* Returns String representation of this instance that is not formatted.
*
* @return The String containing the XML mark-up.
*/
public String toXMLString() {
return toXMLString(false);
}
/**
* Returns XML String for JAXB Document Object Model object.
*
* @param prettyPrint
* True for pretty print, otherwise false
*
* @return The String containing the XML mark-up.
*/
public String toXMLString(boolean prettyPrint) {
return DocumentUtilities.toXMLString(toDocument(), prettyPrint);
}
/**
* Creates ContactNumbers instance for XML String
*
* @param text
* XML String for the document
* @return The ContactNumbers instance for the passed XML String
*/
public static ContactNumbers fromXMLString(String text) {
JAXBContext jaxbContext;
try {
jaxbContext = JAXBContext.newInstance(ContactNumbers.class
.getPackage().getName());
Unmarshaller unmarshaller = jaxbContext.createUnmarshaller();
unmarshaller.setSchema(STIXSchema.getInstance().getSchema());
unmarshaller.setEventHandler(new ValidationEventHandler());
StreamSource streamSource = new StreamSource(new StringReader(text));
return (ContactNumbers) unmarshaller.unmarshal(streamSource);
} catch (JAXBException e) {
throw new RuntimeException(e);
}
}
/**
* Validates the XML representation of this ContactNumbers instance
* Returning true indicating a successful validation, false if not.
*
* @return boolean True If it validates against the schema
* @throws SAXException
* If the a validation ErrorHandler has not been set, and
* validation throws a SAXException
*/
public boolean validate() throws SAXException {
return STIXSchema.getInstance().validate(toXMLString());
}
}