oasis.names.specification.ubl.schema.xsd.commonaggregatecomponents_2.BillingReferenceType 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;
/**
*
*
* <?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>Billing Reference. Details</ccts:DictionaryEntryName><ccts:Definition>Information directly relating to a related document.</ccts:Definition><ccts:ObjectClass>Billing Reference</ccts:ObjectClass></ccts:Component>
*
*
*
* Java class for BillingReferenceType complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="BillingReferenceType">
* <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* <sequence>
* <element ref="{urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2}InvoiceDocumentReference" minOccurs="0"/>
* <element ref="{urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2}SelfBilledInvoiceDocumentReference" minOccurs="0"/>
* <element ref="{urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2}CreditNoteDocumentReference" minOccurs="0"/>
* <element ref="{urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2}SelfBilledCreditNoteDocumentReference" minOccurs="0"/>
* <element ref="{urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2}DebitNoteDocumentReference" minOccurs="0"/>
* <element ref="{urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2}ReminderDocumentReference" minOccurs="0"/>
* <element ref="{urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2}AdditionalDocumentReference" minOccurs="0"/>
* <element ref="{urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2}BillingReferenceLine" maxOccurs="unbounded" minOccurs="0"/>
* </sequence>
* </restriction>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "BillingReferenceType", propOrder = {
"invoiceDocumentReference",
"selfBilledInvoiceDocumentReference",
"creditNoteDocumentReference",
"selfBilledCreditNoteDocumentReference",
"debitNoteDocumentReference",
"reminderDocumentReference",
"additionalDocumentReference",
"billingReferenceLine"
})
public class BillingReferenceType implements Serializable
{
@XmlElement(name = "InvoiceDocumentReference")
private DocumentReferenceType invoiceDocumentReference;
@XmlElement(name = "SelfBilledInvoiceDocumentReference")
private DocumentReferenceType selfBilledInvoiceDocumentReference;
@XmlElement(name = "CreditNoteDocumentReference")
private DocumentReferenceType creditNoteDocumentReference;
@XmlElement(name = "SelfBilledCreditNoteDocumentReference")
private DocumentReferenceType selfBilledCreditNoteDocumentReference;
@XmlElement(name = "DebitNoteDocumentReference")
private DocumentReferenceType debitNoteDocumentReference;
@XmlElement(name = "ReminderDocumentReference")
private DocumentReferenceType reminderDocumentReference;
@XmlElement(name = "AdditionalDocumentReference")
private DocumentReferenceType additionalDocumentReference;
@XmlElement(name = "BillingReferenceLine")
private List billingReferenceLine;
/**
* Default constructor
* Created by phloc-ubl-jaxb-plugin -Xphloc-ubl-value
*
*/
public BillingReferenceType() {
}
/**
*
*
* <?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>Billing Reference. Invoice_ Document Reference. Document Reference</ccts:DictionaryEntryName><ccts:Definition>An associative reference to Invoice.</ccts:Definition><ccts:Cardinality>0..1</ccts:Cardinality><ccts:ObjectClass>Billing Reference</ccts:ObjectClass><ccts:PropertyTermQualifier>Invoice</ccts:PropertyTermQualifier><ccts:PropertyTerm>Document Reference</ccts:PropertyTerm><ccts:AssociatedObjectClass>Document Reference</ccts:AssociatedObjectClass></ccts:Component>
*
*
*
* @return
* possible object is
* {@link DocumentReferenceType }
*
*/
@Nullable
public DocumentReferenceType getInvoiceDocumentReference() {
return invoiceDocumentReference;
}
/**
* Sets the value of the invoiceDocumentReference property.
*
* @param value
* allowed object is
* {@link DocumentReferenceType }
*
*/
public void setInvoiceDocumentReference(
@Nullable
DocumentReferenceType value) {
this.invoiceDocumentReference = 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>Billing Reference. Self Billed Invoice_ Document Reference. Document Reference</ccts:DictionaryEntryName><ccts:Definition>An associative reference to Self Billed Invoice.</ccts:Definition><ccts:Cardinality>0..1</ccts:Cardinality><ccts:ObjectClass>Billing Reference</ccts:ObjectClass><ccts:PropertyTermQualifier>Self Billed Invoice</ccts:PropertyTermQualifier><ccts:PropertyTerm>Document Reference</ccts:PropertyTerm><ccts:AssociatedObjectClass>Document Reference</ccts:AssociatedObjectClass></ccts:Component>
*
*
*
* @return
* possible object is
* {@link DocumentReferenceType }
*
*/
@Nullable
public DocumentReferenceType getSelfBilledInvoiceDocumentReference() {
return selfBilledInvoiceDocumentReference;
}
/**
* Sets the value of the selfBilledInvoiceDocumentReference property.
*
* @param value
* allowed object is
* {@link DocumentReferenceType }
*
*/
public void setSelfBilledInvoiceDocumentReference(
@Nullable
DocumentReferenceType value) {
this.selfBilledInvoiceDocumentReference = 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>Billing Reference. Credit Note_ Document Reference. Document Reference</ccts:DictionaryEntryName><ccts:Definition>An associative reference to Credit Note.</ccts:Definition><ccts:Cardinality>0..1</ccts:Cardinality><ccts:ObjectClass>Billing Reference</ccts:ObjectClass><ccts:PropertyTermQualifier>Credit Note</ccts:PropertyTermQualifier><ccts:PropertyTerm>Document Reference</ccts:PropertyTerm><ccts:AssociatedObjectClass>Document Reference</ccts:AssociatedObjectClass></ccts:Component>
*
*
*
* @return
* possible object is
* {@link DocumentReferenceType }
*
*/
@Nullable
public DocumentReferenceType getCreditNoteDocumentReference() {
return creditNoteDocumentReference;
}
/**
* Sets the value of the creditNoteDocumentReference property.
*
* @param value
* allowed object is
* {@link DocumentReferenceType }
*
*/
public void setCreditNoteDocumentReference(
@Nullable
DocumentReferenceType value) {
this.creditNoteDocumentReference = 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>Billing Reference. Self Billed Credit Note_ Document Reference. Document Reference</ccts:DictionaryEntryName><ccts:Definition>An associative reference to Self Billed Credit Note.</ccts:Definition><ccts:Cardinality>0..1</ccts:Cardinality><ccts:ObjectClass>Billing Reference</ccts:ObjectClass><ccts:PropertyTermQualifier>Self Billed Credit Note</ccts:PropertyTermQualifier><ccts:PropertyTerm>Document Reference</ccts:PropertyTerm><ccts:AssociatedObjectClass>Document Reference</ccts:AssociatedObjectClass></ccts:Component>
*
*
*
* @return
* possible object is
* {@link DocumentReferenceType }
*
*/
@Nullable
public DocumentReferenceType getSelfBilledCreditNoteDocumentReference() {
return selfBilledCreditNoteDocumentReference;
}
/**
* Sets the value of the selfBilledCreditNoteDocumentReference property.
*
* @param value
* allowed object is
* {@link DocumentReferenceType }
*
*/
public void setSelfBilledCreditNoteDocumentReference(
@Nullable
DocumentReferenceType value) {
this.selfBilledCreditNoteDocumentReference = 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>Billing Reference. Debit Note_ Document Reference. Document Reference</ccts:DictionaryEntryName><ccts:Definition>An associative reference to Debit Note.</ccts:Definition><ccts:Cardinality>0..1</ccts:Cardinality><ccts:ObjectClass>Billing Reference</ccts:ObjectClass><ccts:PropertyTermQualifier>Debit Note</ccts:PropertyTermQualifier><ccts:PropertyTerm>Document Reference</ccts:PropertyTerm><ccts:AssociatedObjectClass>Document Reference</ccts:AssociatedObjectClass></ccts:Component>
*
*
*
* @return
* possible object is
* {@link DocumentReferenceType }
*
*/
@Nullable
public DocumentReferenceType getDebitNoteDocumentReference() {
return debitNoteDocumentReference;
}
/**
* Sets the value of the debitNoteDocumentReference property.
*
* @param value
* allowed object is
* {@link DocumentReferenceType }
*
*/
public void setDebitNoteDocumentReference(
@Nullable
DocumentReferenceType value) {
this.debitNoteDocumentReference = 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>Billing Reference. Reminder_ Document Reference. Document Reference</ccts:DictionaryEntryName><ccts:Definition>An associative reference to Reminder Document Reference</ccts:Definition><ccts:Cardinality>0..1</ccts:Cardinality><ccts:ObjectClass>Billing Reference</ccts:ObjectClass><ccts:PropertyTermQualifier>Reminder</ccts:PropertyTermQualifier><ccts:PropertyTerm>Document Reference</ccts:PropertyTerm><ccts:AssociatedObjectClass>Document Reference</ccts:AssociatedObjectClass></ccts:Component>
*
*
*
* @return
* possible object is
* {@link DocumentReferenceType }
*
*/
@Nullable
public DocumentReferenceType getReminderDocumentReference() {
return reminderDocumentReference;
}
/**
* Sets the value of the reminderDocumentReference property.
*
* @param value
* allowed object is
* {@link DocumentReferenceType }
*
*/
public void setReminderDocumentReference(
@Nullable
DocumentReferenceType value) {
this.reminderDocumentReference = 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>Billing Reference. Additional_ Document Reference. Document Reference</ccts:DictionaryEntryName><ccts:Definition>An associative reference to Additional Document.</ccts:Definition><ccts:Cardinality>0..1</ccts:Cardinality><ccts:ObjectClass>Billing Reference</ccts:ObjectClass><ccts:PropertyTermQualifier>Additional</ccts:PropertyTermQualifier><ccts:PropertyTerm>Document Reference</ccts:PropertyTerm><ccts:AssociatedObjectClass>Document Reference</ccts:AssociatedObjectClass></ccts:Component>
*
*
*
* @return
* possible object is
* {@link DocumentReferenceType }
*
*/
@Nullable
public DocumentReferenceType getAdditionalDocumentReference() {
return additionalDocumentReference;
}
/**
* Sets the value of the additionalDocumentReference property.
*
* @param value
* allowed object is
* {@link DocumentReferenceType }
*
*/
public void setAdditionalDocumentReference(
@Nullable
DocumentReferenceType value) {
this.additionalDocumentReference = 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>Billing Reference. Billing Reference Line</ccts:DictionaryEntryName><ccts:Definition>An association to Billing Reference Line.</ccts:Definition><ccts:Cardinality>0..n</ccts:Cardinality><ccts:ObjectClass>Billing Reference</ccts:ObjectClass><ccts:PropertyTerm>Billing Reference Line</ccts:PropertyTerm><ccts:AssociatedObjectClass>Billing Reference Line</ccts:AssociatedObjectClass></ccts:Component>
*
* Gets the value of the billingReferenceLine 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 billingReferenceLine property.
*
*
* For example, to add a new item, do as follows:
*
* getBillingReferenceLine().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link BillingReferenceLineType }
*
*
*/
@Nonnull
@ReturnsMutableObject(reason = "JAXB implementation style")
public List getBillingReferenceLine() {
if (billingReferenceLine == null) {
billingReferenceLine = new ArrayList();
}
return this.billingReferenceLine;
}
/**
* 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 BillingReferenceType rhs = ((BillingReferenceType) o);
if (!EqualsUtils.equals(invoiceDocumentReference, rhs.invoiceDocumentReference)) {
return false;
}
if (!EqualsUtils.equals(selfBilledInvoiceDocumentReference, rhs.selfBilledInvoiceDocumentReference)) {
return false;
}
if (!EqualsUtils.equals(creditNoteDocumentReference, rhs.creditNoteDocumentReference)) {
return false;
}
if (!EqualsUtils.equals(selfBilledCreditNoteDocumentReference, rhs.selfBilledCreditNoteDocumentReference)) {
return false;
}
if (!EqualsUtils.equals(debitNoteDocumentReference, rhs.debitNoteDocumentReference)) {
return false;
}
if (!EqualsUtils.equals(reminderDocumentReference, rhs.reminderDocumentReference)) {
return false;
}
if (!EqualsUtils.equals(additionalDocumentReference, rhs.additionalDocumentReference)) {
return false;
}
if (!EqualsUtils.equals(billingReferenceLine, rhs.billingReferenceLine)) {
return false;
}
return true;
}
/**
* Created by phloc-jaxb22-plugin -Xphloc-equalshashcode
*
*/
@Override
public int hashCode() {
return new HashCodeGenerator(this).append(invoiceDocumentReference).append(selfBilledInvoiceDocumentReference).append(creditNoteDocumentReference).append(selfBilledCreditNoteDocumentReference).append(debitNoteDocumentReference).append(reminderDocumentReference).append(additionalDocumentReference).append(billingReferenceLine).getHashCode();
}
/**
* Created by phloc-jaxb22-plugin -Xphloc-tostring
*
*/
@Override
public String toString() {
return new ToStringGenerator(this).append("invoiceDocumentReference", invoiceDocumentReference).append("selfBilledInvoiceDocumentReference", selfBilledInvoiceDocumentReference).append("creditNoteDocumentReference", creditNoteDocumentReference).append("selfBilledCreditNoteDocumentReference", selfBilledCreditNoteDocumentReference).append("debitNoteDocumentReference", debitNoteDocumentReference).append("reminderDocumentReference", reminderDocumentReference).append("additionalDocumentReference", additionalDocumentReference).append("billingReferenceLine", billingReferenceLine).toString();
}
/**
* Created by phloc-jaxb22-plugin -Xphloc-list-extension
*
* @param aList
* The new list member to set. May be null
.
*/
public void setBillingReferenceLine(
@Nullable
final List aList) {
billingReferenceLine = aList;
}
/**
* Created by phloc-jaxb22-plugin -Xphloc-list-extension
*
* @return
* true
if at least one item is contained, false
otherwise.
*/
public boolean hasBillingReferenceLineEntries() {
return (!getBillingReferenceLine().isEmpty());
}
/**
* Created by phloc-jaxb22-plugin -Xphloc-list-extension
*
* @return
* true
if no item is contained, false
otherwise.
*/
public boolean hasNoBillingReferenceLineEntries() {
return getBillingReferenceLine().isEmpty();
}
/**
* Created by phloc-jaxb22-plugin -Xphloc-list-extension
*
* @return
* The number of contained elements. Always ≥ 0.
*/
@Nonnegative
public int getBillingReferenceLineCount() {
return getBillingReferenceLine().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 BillingReferenceLineType getBillingReferenceLineAtIndex(
@Nonnegative
final int index) {
return getBillingReferenceLine().get(index);
}
}