oasis.names.specification.ubl.schema.xsd.commonaggregatecomponents_2.FinancialAccountType 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.AccountTypeCodeType;
import oasis.names.specification.ubl.schema.xsd.commonbasiccomponents_2.CurrencyCodeType;
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.PaymentNoteType;
/**
*
*
* <?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>Financial Account. Details</ccts:DictionaryEntryName><ccts:Definition>Information about a Financial Account.</ccts:Definition><ccts:ObjectClass>Financial Account</ccts:ObjectClass></ccts:Component>
*
*
*
* Java class for FinancialAccountType complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="FinancialAccountType">
* <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}AccountTypeCode" minOccurs="0"/>
* <element ref="{urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2}CurrencyCode" minOccurs="0"/>
* <element ref="{urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2}PaymentNote" maxOccurs="unbounded" minOccurs="0"/>
* <element ref="{urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2}FinancialInstitutionBranch" minOccurs="0"/>
* <element ref="{urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2}Country" minOccurs="0"/>
* </sequence>
* </restriction>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "FinancialAccountType", propOrder = {
"id",
"name",
"accountTypeCode",
"currencyCode",
"paymentNote",
"financialInstitutionBranch",
"country"
})
public class FinancialAccountType 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 = "AccountTypeCode", namespace = "urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2")
private AccountTypeCodeType accountTypeCode;
@XmlElement(name = "CurrencyCode", namespace = "urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2")
private CurrencyCodeType currencyCode;
@XmlElement(name = "PaymentNote", namespace = "urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2")
private List paymentNote;
@XmlElement(name = "FinancialInstitutionBranch")
private BranchType financialInstitutionBranch;
@XmlElement(name = "Country")
private CountryType country;
/**
* Default constructor
* Created by phloc-ubl-jaxb-plugin -Xphloc-ubl-value
*
*/
public FinancialAccountType() {
}
/**
*
*
* <?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>Financial Account. Identifier</ccts:DictionaryEntryName><ccts:Definition>The identifier for the Financial Account; the Bank Account Number.</ccts:Definition><ccts:Cardinality>0..1</ccts:Cardinality><ccts:ObjectClass>Financial Account</ccts:ObjectClass><ccts:PropertyTerm>Identifier</ccts:PropertyTerm><ccts:RepresentationTerm>Identifier</ccts:RepresentationTerm><ccts:DataType>Identifier. Type</ccts:DataType><ccts:Examples>SWIFT(BIC) and IBAN are defined in ISO 9362 and ISO 13616.</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>Financial Account. Name</ccts:DictionaryEntryName><ccts:Definition>The name of the Financial Account.</ccts:Definition><ccts:Cardinality>0..1</ccts:Cardinality><ccts:ObjectClass>Financial Account</ccts:ObjectClass><ccts:PropertyTerm>Name</ccts:PropertyTerm><ccts:RepresentationTerm>Name</ccts:RepresentationTerm><ccts:DataType>Name. Type</ccts:DataType></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>Financial Account. Account Type Code. Code</ccts:DictionaryEntryName><ccts:Definition>The type of Financial Account, expressed as a code.</ccts:Definition><ccts:Cardinality>0..1</ccts:Cardinality><ccts:ObjectClass>Financial Account</ccts:ObjectClass><ccts:PropertyTerm>Account Type Code</ccts:PropertyTerm><ccts:RepresentationTerm>Code</ccts:RepresentationTerm><ccts:DataType>Code. Type</ccts:DataType></ccts:Component>
*
*
*
* @return
* possible object is
* {@link AccountTypeCodeType }
*
*/
@Nullable
public AccountTypeCodeType getAccountTypeCode() {
return accountTypeCode;
}
/**
* Sets the value of the accountTypeCode property.
*
* @param value
* allowed object is
* {@link AccountTypeCodeType }
*
*/
public void setAccountTypeCode(
@Nullable
AccountTypeCodeType value) {
this.accountTypeCode = 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>Financial Account. Currency Code. Code</ccts:DictionaryEntryName><ccts:Definition>The currency in which the Financial Account is held, expressed as a code.</ccts:Definition><ccts:Cardinality>0..1</ccts:Cardinality><ccts:ObjectClass>Financial Account</ccts:ObjectClass><ccts:PropertyTerm>Currency Code</ccts:PropertyTerm><ccts:RepresentationTerm>Code</ccts:RepresentationTerm><ccts:DataType>Currency_ Code. Type</ccts:DataType></ccts:Component>
*
*
*
* @return
* possible object is
* {@link CurrencyCodeType }
*
*/
@Nullable
public CurrencyCodeType getCurrencyCode() {
return currencyCode;
}
/**
* Sets the value of the currencyCode property.
*
* @param value
* allowed object is
* {@link CurrencyCodeType }
*
*/
public void setCurrencyCode(
@Nullable
CurrencyCodeType value) {
this.currencyCode = 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>Financial Account. Payment_ Note. Text</ccts:DictionaryEntryName><ccts:Definition>Free-form text applying to the Payment to the owner of this account.</ccts:Definition><ccts:Cardinality>0..n</ccts:Cardinality><ccts:ObjectClass>Financial Account</ccts:ObjectClass><ccts:PropertyTermQualifier>Payment</ccts:PropertyTermQualifier><ccts:PropertyTerm>Note</ccts:PropertyTerm><ccts:RepresentationTerm>Text</ccts:RepresentationTerm><ccts:DataType>Text. Type</ccts:DataType></ccts:Component>
*
* Gets the value of the paymentNote 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 paymentNote property.
*
*
* For example, to add a new item, do as follows:
*
* getPaymentNote().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link PaymentNoteType }
*
*
*/
@Nonnull
@ReturnsMutableObject(reason = "JAXB implementation style")
public List getPaymentNote() {
if (paymentNote == null) {
paymentNote = new ArrayList();
}
return this.paymentNote;
}
/**
*
*
* <?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>Financial Account. Financial Institution_ Branch. Branch</ccts:DictionaryEntryName><ccts:Definition>An association to Financial Institution Branch.</ccts:Definition><ccts:Cardinality>0..1</ccts:Cardinality><ccts:ObjectClass>Financial Account</ccts:ObjectClass><ccts:PropertyTermQualifier>Financial Institution</ccts:PropertyTermQualifier><ccts:PropertyTerm>Branch</ccts:PropertyTerm><ccts:AssociatedObjectClass>Branch</ccts:AssociatedObjectClass></ccts:Component>
*
*
*
* @return
* possible object is
* {@link BranchType }
*
*/
@Nullable
public BranchType getFinancialInstitutionBranch() {
return financialInstitutionBranch;
}
/**
* Sets the value of the financialInstitutionBranch property.
*
* @param value
* allowed object is
* {@link BranchType }
*
*/
public void setFinancialInstitutionBranch(
@Nullable
BranchType value) {
this.financialInstitutionBranch = 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>Financial Account. Country</ccts:DictionaryEntryName><ccts:Definition>An association to Country.</ccts:Definition><ccts:Cardinality>0..1</ccts:Cardinality><ccts:ObjectClass>Financial Account</ccts:ObjectClass><ccts:PropertyTerm>Country</ccts:PropertyTerm><ccts:AssociatedObjectClass>Country</ccts:AssociatedObjectClass></ccts:Component>
*
*
*
* @return
* possible object is
* {@link CountryType }
*
*/
@Nullable
public CountryType getCountry() {
return country;
}
/**
* Sets the value of the country property.
*
* @param value
* allowed object is
* {@link CountryType }
*
*/
public void setCountry(
@Nullable
CountryType value) {
this.country = value;
}
/**
* 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 FinancialAccountType rhs = ((FinancialAccountType) o);
if (!EqualsUtils.equals(id, rhs.id)) {
return false;
}
if (!EqualsUtils.equals(name, rhs.name)) {
return false;
}
if (!EqualsUtils.equals(accountTypeCode, rhs.accountTypeCode)) {
return false;
}
if (!EqualsUtils.equals(currencyCode, rhs.currencyCode)) {
return false;
}
if (!EqualsUtils.equals(paymentNote, rhs.paymentNote)) {
return false;
}
if (!EqualsUtils.equals(financialInstitutionBranch, rhs.financialInstitutionBranch)) {
return false;
}
if (!EqualsUtils.equals(country, rhs.country)) {
return false;
}
return true;
}
/**
* Created by phloc-jaxb22-plugin -Xphloc-equalshashcode
*
*/
@Override
public int hashCode() {
return new HashCodeGenerator(this).append(id).append(name).append(accountTypeCode).append(currencyCode).append(paymentNote).append(financialInstitutionBranch).append(country).getHashCode();
}
/**
* Created by phloc-jaxb22-plugin -Xphloc-tostring
*
*/
@Override
public String toString() {
return new ToStringGenerator(this).append("id", id).append("name", name).append("accountTypeCode", accountTypeCode).append("currencyCode", currencyCode).append("paymentNote", paymentNote).append("financialInstitutionBranch", financialInstitutionBranch).append("country", country).toString();
}
/**
* Created by phloc-jaxb22-plugin -Xphloc-list-extension
*
* @param aList
* The new list member to set. May be null
.
*/
public void setPaymentNote(
@Nullable
final List aList) {
paymentNote = aList;
}
/**
* Created by phloc-jaxb22-plugin -Xphloc-list-extension
*
* @return
* true
if at least one item is contained, false
otherwise.
*/
public boolean hasPaymentNoteEntries() {
return (!getPaymentNote().isEmpty());
}
/**
* Created by phloc-jaxb22-plugin -Xphloc-list-extension
*
* @return
* true
if no item is contained, false
otherwise.
*/
public boolean hasNoPaymentNoteEntries() {
return getPaymentNote().isEmpty();
}
/**
* Created by phloc-jaxb22-plugin -Xphloc-list-extension
*
* @return
* The number of contained elements. Always ≥ 0.
*/
@Nonnegative
public int getPaymentNoteCount() {
return getPaymentNote().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 PaymentNoteType getPaymentNoteAtIndex(
@Nonnegative
final int index) {
return getPaymentNote().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 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;
}
/**
* 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 AccountTypeCodeType and never null
*/
@Nonnull
public AccountTypeCodeType setAccountTypeCode(
@Nullable
final String valueParam) {
AccountTypeCodeType aObj = getAccountTypeCode();
if (aObj == null) {
aObj = new AccountTypeCodeType(valueParam);
setAccountTypeCode(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 CurrencyCodeType and never null
*/
@Nonnull
public CurrencyCodeType setCurrencyCode(
@Nullable
final String valueParam) {
CurrencyCodeType aObj = getCurrencyCode();
if (aObj == null) {
aObj = new CurrencyCodeType(valueParam);
setCurrencyCode(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 AccountTypeCodeType object
* Created by phloc-ubl-jaxb-plugin -Xphloc-ubl-value
*
* @return
* Either the value of the contained AccountTypeCodeType object or null
*/
@Nullable
public String getAccountTypeCodeValue() {
AccountTypeCodeType aObj = getAccountTypeCode();
return ((aObj == null)?null:aObj.getValue());
}
/**
* Get the value of the contained CurrencyCodeType object
* Created by phloc-ubl-jaxb-plugin -Xphloc-ubl-value
*
* @return
* Either the value of the contained CurrencyCodeType object or null
*/
@Nullable
public String getCurrencyCodeValue() {
CurrencyCodeType aObj = getCurrencyCode();
return ((aObj == null)?null:aObj.getValue());
}
}