oasis.names.specification.ubl.schema.xsd.commonaggregatecomponents_2.ContactType Maven / Gradle / Ivy
package oasis.names.specification.ubl.schema.xsd.commonaggregatecomponents_2;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.Nonnegative;
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.XmlElement;
import javax.xml.bind.annotation.XmlType;
import com.phloc.commons.annotations.ReturnsMutableObject;
import com.phloc.commons.equals.EqualsUtils;
import com.phloc.commons.hash.HashCodeGenerator;
import com.phloc.commons.string.ToStringGenerator;
import oasis.names.specification.ubl.schema.xsd.commonbasiccomponents_2.ElectronicMailType;
import oasis.names.specification.ubl.schema.xsd.commonbasiccomponents_2.IDType;
import oasis.names.specification.ubl.schema.xsd.commonbasiccomponents_2.NameType;
import oasis.names.specification.ubl.schema.xsd.commonbasiccomponents_2.NoteType;
import oasis.names.specification.ubl.schema.xsd.commonbasiccomponents_2.TelefaxType;
import oasis.names.specification.ubl.schema.xsd.commonbasiccomponents_2.TelephoneType;
/**
*
*
* <?xml version="1.0" encoding="UTF-8"?><ccts:Component xmlns:ccts="urn:un:unece:uncefact:documentation:2" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2" xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" xmlns:qdt="urn:oasis:names:specification:ubl:schema:xsd:QualifiedDatatypes-2" xmlns:udt="urn:un:unece:uncefact:data:specification:UnqualifiedDataTypesSchemaModule:2" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><ccts:ComponentType>ABIE</ccts:ComponentType><ccts:DictionaryEntryName>Contact. Details</ccts:DictionaryEntryName><ccts:Definition>Information about a contactable person or organization department.</ccts:Definition><ccts:ObjectClass>Contact</ccts:ObjectClass></ccts:Component>
*
*
*
* Java class for ContactType complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="ContactType">
* <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* <sequence>
* <element ref="{urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2}ID" minOccurs="0"/>
* <element ref="{urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2}Name" minOccurs="0"/>
* <element ref="{urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2}Telephone" minOccurs="0"/>
* <element ref="{urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2}Telefax" minOccurs="0"/>
* <element ref="{urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2}ElectronicMail" minOccurs="0"/>
* <element ref="{urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2}Note" minOccurs="0"/>
* <element ref="{urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2}OtherCommunication" maxOccurs="unbounded" minOccurs="0"/>
* </sequence>
* </restriction>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "ContactType", propOrder = {
"id",
"name",
"telephone",
"telefax",
"electronicMail",
"note",
"otherCommunication"
})
public class ContactType implements Serializable
{
@XmlElement(name = "ID", namespace = "urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2")
private IDType id;
@XmlElement(name = "Name", namespace = "urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2")
private NameType name;
@XmlElement(name = "Telephone", namespace = "urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2")
private TelephoneType telephone;
@XmlElement(name = "Telefax", namespace = "urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2")
private TelefaxType telefax;
@XmlElement(name = "ElectronicMail", namespace = "urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2")
private ElectronicMailType electronicMail;
@XmlElement(name = "Note", namespace = "urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2")
private NoteType note;
@XmlElement(name = "OtherCommunication")
private List otherCommunication;
/**
* Default constructor
* Created by phloc-ubl-jaxb-plugin -Xphloc-ubl-value
*
*/
public ContactType() {
}
/**
*
*
* <?xml version="1.0" encoding="UTF-8"?><ccts:Component xmlns:ccts="urn:un:unece:uncefact:documentation:2" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2" xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" xmlns:qdt="urn:oasis:names:specification:ubl:schema:xsd:QualifiedDatatypes-2" xmlns:udt="urn:un:unece:uncefact:data:specification:UnqualifiedDataTypesSchemaModule:2" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><ccts:ComponentType>BBIE</ccts:ComponentType><ccts:DictionaryEntryName>Contact. Identifier</ccts:DictionaryEntryName><ccts:Definition>An identifier for the Contact.</ccts:Definition><ccts:Cardinality>0..1</ccts:Cardinality><ccts:ObjectClass>Contact</ccts:ObjectClass><ccts:PropertyTerm>Identifier</ccts:PropertyTerm><ccts:RepresentationTerm>Identifier</ccts:RepresentationTerm><ccts:DataType>Identifier. Type</ccts:DataType><ccts:Examples>"Receivals Clerk"</ccts:Examples></ccts:Component>
*
*
*
* @return
* possible object is
* {@link IDType }
*
*/
@Nullable
public IDType getID() {
return id;
}
/**
* Sets the value of the id property.
*
* @param value
* allowed object is
* {@link IDType }
*
*/
public void setID(
@Nullable
IDType value) {
this.id = value;
}
/**
*
*
* <?xml version="1.0" encoding="UTF-8"?><ccts:Component xmlns:ccts="urn:un:unece:uncefact:documentation:2" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2" xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" xmlns:qdt="urn:oasis:names:specification:ubl:schema:xsd:QualifiedDatatypes-2" xmlns:udt="urn:un:unece:uncefact:data:specification:UnqualifiedDataTypesSchemaModule:2" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><ccts:ComponentType>BBIE</ccts:ComponentType><ccts:DictionaryEntryName>Contact. Name</ccts:DictionaryEntryName><ccts:Definition>The name of the Contact.</ccts:Definition><ccts:Cardinality>0..1</ccts:Cardinality><ccts:ObjectClass>Contact</ccts:ObjectClass><ccts:PropertyTerm>Name</ccts:PropertyTerm><ccts:RepresentationTerm>Name</ccts:RepresentationTerm><ccts:DataType>Name. Type</ccts:DataType><ccts:Examples>"Delivery Dock"</ccts:Examples></ccts:Component>
*
*
*
* @return
* possible object is
* {@link NameType }
*
*/
@Nullable
public NameType getName() {
return name;
}
/**
* Sets the value of the name property.
*
* @param value
* allowed object is
* {@link NameType }
*
*/
public void setName(
@Nullable
NameType value) {
this.name = value;
}
/**
*
*
* <?xml version="1.0" encoding="UTF-8"?><ccts:Component xmlns:ccts="urn:un:unece:uncefact:documentation:2" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2" xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" xmlns:qdt="urn:oasis:names:specification:ubl:schema:xsd:QualifiedDatatypes-2" xmlns:udt="urn:un:unece:uncefact:data:specification:UnqualifiedDataTypesSchemaModule:2" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><ccts:ComponentType>BBIE</ccts:ComponentType><ccts:DictionaryEntryName>Contact. Telephone. Text</ccts:DictionaryEntryName><ccts:Definition>The telephone number of the Contact.</ccts:Definition><ccts:Cardinality>0..1</ccts:Cardinality><ccts:ObjectClass>Contact</ccts:ObjectClass><ccts:PropertyTerm>Telephone</ccts:PropertyTerm><ccts:RepresentationTerm>Text</ccts:RepresentationTerm><ccts:DataType>Text. Type</ccts:DataType></ccts:Component>
*
*
*
* @return
* possible object is
* {@link TelephoneType }
*
*/
@Nullable
public TelephoneType getTelephone() {
return telephone;
}
/**
* Sets the value of the telephone property.
*
* @param value
* allowed object is
* {@link TelephoneType }
*
*/
public void setTelephone(
@Nullable
TelephoneType value) {
this.telephone = value;
}
/**
*
*
* <?xml version="1.0" encoding="UTF-8"?><ccts:Component xmlns:ccts="urn:un:unece:uncefact:documentation:2" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2" xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" xmlns:qdt="urn:oasis:names:specification:ubl:schema:xsd:QualifiedDatatypes-2" xmlns:udt="urn:un:unece:uncefact:data:specification:UnqualifiedDataTypesSchemaModule:2" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><ccts:ComponentType>BBIE</ccts:ComponentType><ccts:DictionaryEntryName>Contact. Telefax. Text</ccts:DictionaryEntryName><ccts:Definition>The fax number of the Contact.</ccts:Definition><ccts:Cardinality>0..1</ccts:Cardinality><ccts:ObjectClass>Contact</ccts:ObjectClass><ccts:PropertyTerm>Telefax</ccts:PropertyTerm><ccts:RepresentationTerm>Text</ccts:RepresentationTerm><ccts:DataType>Text. Type</ccts:DataType></ccts:Component>
*
*
*
* @return
* possible object is
* {@link TelefaxType }
*
*/
@Nullable
public TelefaxType getTelefax() {
return telefax;
}
/**
* Sets the value of the telefax property.
*
* @param value
* allowed object is
* {@link TelefaxType }
*
*/
public void setTelefax(
@Nullable
TelefaxType value) {
this.telefax = value;
}
/**
*
*
* <?xml version="1.0" encoding="UTF-8"?><ccts:Component xmlns:ccts="urn:un:unece:uncefact:documentation:2" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2" xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" xmlns:qdt="urn:oasis:names:specification:ubl:schema:xsd:QualifiedDatatypes-2" xmlns:udt="urn:un:unece:uncefact:data:specification:UnqualifiedDataTypesSchemaModule:2" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><ccts:ComponentType>BBIE</ccts:ComponentType><ccts:DictionaryEntryName>Contact. Electronic_ Mail. Text</ccts:DictionaryEntryName><ccts:Definition>The email address of the Contact.</ccts:Definition><ccts:Cardinality>0..1</ccts:Cardinality><ccts:ObjectClass>Contact</ccts:ObjectClass><ccts:PropertyTermQualifier>Electronic</ccts:PropertyTermQualifier><ccts:PropertyTerm>Mail</ccts:PropertyTerm><ccts:RepresentationTerm>Text</ccts:RepresentationTerm><ccts:DataType>Text. Type</ccts:DataType></ccts:Component>
*
*
*
* @return
* possible object is
* {@link ElectronicMailType }
*
*/
@Nullable
public ElectronicMailType getElectronicMail() {
return electronicMail;
}
/**
* Sets the value of the electronicMail property.
*
* @param value
* allowed object is
* {@link ElectronicMailType }
*
*/
public void setElectronicMail(
@Nullable
ElectronicMailType value) {
this.electronicMail = value;
}
/**
*
*
* <?xml version="1.0" encoding="UTF-8"?><ccts:Component xmlns:ccts="urn:un:unece:uncefact:documentation:2" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2" xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" xmlns:qdt="urn:oasis:names:specification:ubl:schema:xsd:QualifiedDatatypes-2" xmlns:udt="urn:un:unece:uncefact:data:specification:UnqualifiedDataTypesSchemaModule:2" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><ccts:ComponentType>BBIE</ccts:ComponentType><ccts:DictionaryEntryName>Contact. Note. Text</ccts:DictionaryEntryName><ccts:Definition>A note such as 'Emergency' or 'After Hours' describing the circumstances in which the Contact can be used.</ccts:Definition><ccts:Cardinality>0..1</ccts:Cardinality><ccts:ObjectClass>Contact</ccts:ObjectClass><ccts:PropertyTerm>Note</ccts:PropertyTerm><ccts:RepresentationTerm>Text</ccts:RepresentationTerm><ccts:DataType>Text. Type</ccts:DataType></ccts:Component>
*
*
*
* @return
* possible object is
* {@link NoteType }
*
*/
@Nullable
public NoteType getNote() {
return note;
}
/**
* Sets the value of the note property.
*
* @param value
* allowed object is
* {@link NoteType }
*
*/
public void setNote(
@Nullable
NoteType value) {
this.note = value;
}
/**
*
*
* <?xml version="1.0" encoding="UTF-8"?><ccts:Component xmlns:ccts="urn:un:unece:uncefact:documentation:2" xmlns="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2" xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" xmlns:qdt="urn:oasis:names:specification:ubl:schema:xsd:QualifiedDatatypes-2" xmlns:udt="urn:un:unece:uncefact:data:specification:UnqualifiedDataTypesSchemaModule:2" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><ccts:ComponentType>ASBIE</ccts:ComponentType><ccts:DictionaryEntryName>Contact. Other_ Communication. Communication</ccts:DictionaryEntryName><ccts:Definition>An association to Other Communication.</ccts:Definition><ccts:Cardinality>0..n</ccts:Cardinality><ccts:ObjectClass>Contact</ccts:ObjectClass><ccts:PropertyTermQualifier>Other</ccts:PropertyTermQualifier><ccts:PropertyTerm>Communication</ccts:PropertyTerm><ccts:AssociatedObjectClass>Communication</ccts:AssociatedObjectClass></ccts:Component>
*
* Gets the value of the otherCommunication 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 otherCommunication property.
*
*
* For example, to add a new item, do as follows:
*
* getOtherCommunication().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link CommunicationType }
*
*
*/
@Nonnull
@ReturnsMutableObject(reason = "JAXB implementation style")
public List getOtherCommunication() {
if (otherCommunication == null) {
otherCommunication = new ArrayList();
}
return this.otherCommunication;
}
/**
* Created by phloc-jaxb22-plugin -Xphloc-equalshashcode
*
*/
@Override
public boolean equals(final Object o) {
if (o == this) {
return true;
}
if ((o == null)||(!getClass().equals(o.getClass()))) {
return false;
}
final ContactType rhs = ((ContactType) o);
if (!EqualsUtils.equals(id, rhs.id)) {
return false;
}
if (!EqualsUtils.equals(name, rhs.name)) {
return false;
}
if (!EqualsUtils.equals(telephone, rhs.telephone)) {
return false;
}
if (!EqualsUtils.equals(telefax, rhs.telefax)) {
return false;
}
if (!EqualsUtils.equals(electronicMail, rhs.electronicMail)) {
return false;
}
if (!EqualsUtils.equals(note, rhs.note)) {
return false;
}
if (!EqualsUtils.equals(otherCommunication, rhs.otherCommunication)) {
return false;
}
return true;
}
/**
* Created by phloc-jaxb22-plugin -Xphloc-equalshashcode
*
*/
@Override
public int hashCode() {
return new HashCodeGenerator(this).append(id).append(name).append(telephone).append(telefax).append(electronicMail).append(note).append(otherCommunication).getHashCode();
}
/**
* Created by phloc-jaxb22-plugin -Xphloc-tostring
*
*/
@Override
public String toString() {
return new ToStringGenerator(this).append("id", id).append("name", name).append("telephone", telephone).append("telefax", telefax).append("electronicMail", electronicMail).append("note", note).append("otherCommunication", otherCommunication).toString();
}
/**
* Created by phloc-jaxb22-plugin -Xphloc-list-extension
*
* @param aList
* The new list member to set. May be null
.
*/
public void setOtherCommunication(
@Nullable
final List aList) {
otherCommunication = aList;
}
/**
* Created by phloc-jaxb22-plugin -Xphloc-list-extension
*
* @return
* true
if at least one item is contained, false
otherwise.
*/
public boolean hasOtherCommunicationEntries() {
return (!getOtherCommunication().isEmpty());
}
/**
* Created by phloc-jaxb22-plugin -Xphloc-list-extension
*
* @return
* true
if no item is contained, false
otherwise.
*/
public boolean hasNoOtherCommunicationEntries() {
return getOtherCommunication().isEmpty();
}
/**
* Created by phloc-jaxb22-plugin -Xphloc-list-extension
*
* @return
* The number of contained elements. Always ≥ 0.
*/
@Nonnegative
public int getOtherCommunicationCount() {
return getOtherCommunication().size();
}
/**
* Created by phloc-jaxb22-plugin -Xphloc-list-extension
*
* @param index
* The index to retrieve
* @return
* The element at the specified index. May be null
* @throws ArrayIndexOutOfBoundsException
* if the index is invalid!
*/
@Nullable
public CommunicationType getOtherCommunicationAtIndex(
@Nonnegative
final int index) {
return getOtherCommunication().get(index);
}
/**
* Special setter with value of type String
* Created by phloc-ubl-jaxb-plugin -Xphloc-ubl-value
*
* @param valueParam
* The value to be set. May be null
.
* @return
* The created intermediary object of type TelephoneType and never null
*/
@Nonnull
public TelephoneType setTelephone(
@Nullable
final String valueParam) {
TelephoneType aObj = getTelephone();
if (aObj == null) {
aObj = new TelephoneType(valueParam);
setTelephone(aObj);
} else {
aObj.setValue(valueParam);
}
return aObj;
}
/**
* Special setter with value of type String
* Created by phloc-ubl-jaxb-plugin -Xphloc-ubl-value
*
* @param valueParam
* The value to be set. May be null
.
* @return
* The created intermediary object of type TelefaxType and never null
*/
@Nonnull
public TelefaxType setTelefax(
@Nullable
final String valueParam) {
TelefaxType aObj = getTelefax();
if (aObj == null) {
aObj = new TelefaxType(valueParam);
setTelefax(aObj);
} else {
aObj.setValue(valueParam);
}
return aObj;
}
/**
* Special setter with value of type String
* Created by phloc-ubl-jaxb-plugin -Xphloc-ubl-value
*
* @param valueParam
* The value to be set. May be null
.
* @return
* The created intermediary object of type ElectronicMailType and never null
*/
@Nonnull
public ElectronicMailType setElectronicMail(
@Nullable
final String valueParam) {
ElectronicMailType aObj = getElectronicMail();
if (aObj == null) {
aObj = new ElectronicMailType(valueParam);
setElectronicMail(aObj);
} else {
aObj.setValue(valueParam);
}
return aObj;
}
/**
* Special setter with value of type String
* Created by phloc-ubl-jaxb-plugin -Xphloc-ubl-value
*
* @param valueParam
* The value to be set. May be null
.
* @return
* The created intermediary object of type NoteType and never null
*/
@Nonnull
public NoteType setNote(
@Nullable
final String valueParam) {
NoteType aObj = getNote();
if (aObj == null) {
aObj = new NoteType(valueParam);
setNote(aObj);
} else {
aObj.setValue(valueParam);
}
return aObj;
}
/**
* Special setter with value of type String
* Created by phloc-ubl-jaxb-plugin -Xphloc-ubl-value
*
* @param valueParam
* The value to be set. May be null
.
* @return
* The created intermediary object of type NameType and never null
*/
@Nonnull
public NameType setName(
@Nullable
final String valueParam) {
NameType aObj = getName();
if (aObj == null) {
aObj = new NameType(valueParam);
setName(aObj);
} else {
aObj.setValue(valueParam);
}
return aObj;
}
/**
* Special setter with value of type String
* Created by phloc-ubl-jaxb-plugin -Xphloc-ubl-value
*
* @param valueParam
* The value to be set. May be null
.
* @return
* The created intermediary object of type IDType and never null
*/
@Nonnull
public IDType setID(
@Nullable
final String valueParam) {
IDType aObj = getID();
if (aObj == null) {
aObj = new IDType(valueParam);
setID(aObj);
} else {
aObj.setValue(valueParam);
}
return aObj;
}
/**
* Get the value of the contained IDType object
* Created by phloc-ubl-jaxb-plugin -Xphloc-ubl-value
*
* @return
* Either the value of the contained IDType object or null
*/
@Nullable
public String getIDValue() {
IDType aObj = getID();
return ((aObj == null)?null:aObj.getValue());
}
/**
* Get the value of the contained NameType object
* Created by phloc-ubl-jaxb-plugin -Xphloc-ubl-value
*
* @return
* Either the value of the contained NameType object or null
*/
@Nullable
public String getNameValue() {
NameType aObj = getName();
return ((aObj == null)?null:aObj.getValue());
}
/**
* Get the value of the contained TelephoneType object
* Created by phloc-ubl-jaxb-plugin -Xphloc-ubl-value
*
* @return
* Either the value of the contained TelephoneType object or null
*/
@Nullable
public String getTelephoneValue() {
TelephoneType aObj = getTelephone();
return ((aObj == null)?null:aObj.getValue());
}
/**
* Get the value of the contained TelefaxType object
* Created by phloc-ubl-jaxb-plugin -Xphloc-ubl-value
*
* @return
* Either the value of the contained TelefaxType object or null
*/
@Nullable
public String getTelefaxValue() {
TelefaxType aObj = getTelefax();
return ((aObj == null)?null:aObj.getValue());
}
/**
* Get the value of the contained ElectronicMailType object
* Created by phloc-ubl-jaxb-plugin -Xphloc-ubl-value
*
* @return
* Either the value of the contained ElectronicMailType object or null
*/
@Nullable
public String getElectronicMailValue() {
ElectronicMailType aObj = getElectronicMail();
return ((aObj == null)?null:aObj.getValue());
}
/**
* Get the value of the contained NoteType object
* Created by phloc-ubl-jaxb-plugin -Xphloc-ubl-value
*
* @return
* Either the value of the contained NoteType object or null
*/
@Nullable
public String getNoteValue() {
NoteType aObj = getNote();
return ((aObj == null)?null:aObj.getValue());
}
}