All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.tools20022.repository.msg.BillingMethod3 Maven / Gradle / Ivy

The newest version!
/* Tools20022 - API for ISO 20022
* Copyright (C) 2017 Tools20022.com - László Bukodi 
* 
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* 
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
* GNU General Public License for more details.
* 
* You should have received a copy of the GNU General Public License
* along with this program.  If not, see .
*/

package com.tools20022.repository.msg;

import com.tools20022.metamodel.MMMessageAssociationEnd;
import com.tools20022.metamodel.MMMessageAttribute;
import com.tools20022.metamodel.MMMessageComponent;
import com.tools20022.metamodel.MMRegistrationStatus;
import com.tools20022.repository.entity.Tax;
import com.tools20022.repository.entity.TaxRecord;
import com.tools20022.repository.GeneratedRepository;
import java.util.Arrays;
import java.util.concurrent.atomic.AtomicReference;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;

/**
 * Provides the details for the tax calculation method D.
 * 

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageElementContainer#getMessageElement * messageElement} = *
      *
    • * {@linkplain com.tools20022.repository.msg.BillingMethod3#mmServiceTaxPriceAmount * BillingMethod3.mmServiceTaxPriceAmount}
    • *
    • * {@linkplain com.tools20022.repository.msg.BillingMethod3#mmTaxIdentification * BillingMethod3.mmTaxIdentification}
    • *
    *
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageComponentType#getTrace * trace} = {@linkplain com.tools20022.repository.entity.Tax Tax}
  • *
  • * {@linkplain com.tools20022.metamodel.MMTopLevelDictionaryEntry#getDataDictionary * dataDictionary} = * {@linkplain com.tools20022.repository.GeneratedRepository#mmdataDict * GeneratedRepository.mmdataDict}
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName name} = * "BillingMethod3"
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = "Provides the details for the tax calculation method D."
  • *
*/ @XmlAccessorType(XmlAccessType.PROPERTY) @XmlType(name = "BillingMethod3", propOrder = {"serviceTaxPriceAmount", "taxIdentification"}) public class BillingMethod3 { final static private AtomicReference mmObject_lazy = new AtomicReference<>(); protected AmountAndDirection34 serviceTaxPriceAmount; /** * Equivalent amount to the service tax host amount but allows the sender to * optionally express the value in the pricing currency. *

* Constant fields: *

    *
  • {@linkplain com.tools20022.metamodel.MMMessageAssociationEnd#getType * type} = {@linkplain com.tools20022.repository.msg.AmountAndDirection34 * AmountAndDirection34}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace * businessElementTrace} = * {@linkplain com.tools20022.repository.entity.TaxRecord#mmAmount * TaxRecord.mmAmount}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.BillingMethod3 BillingMethod3}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "SvcTaxPricAmt"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "ServiceTaxPriceAmount"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Equivalent amount to the service tax host amount but allows the sender to optionally express the value in the pricing currency." *
  • *
*/ public static final MMMessageAssociationEnd mmServiceTaxPriceAmount = new MMMessageAssociationEnd() { { businessElementTrace_lazy = () -> TaxRecord.mmAmount; componentContext_lazy = () -> BillingMethod3.mmObject(); isDerived = false; xmlTag = "SvcTaxPricAmt"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "ServiceTaxPriceAmount"; definition = "Equivalent amount to the service tax host amount but allows the sender to optionally express the value in the pricing currency."; maxOccurs = 1; minOccurs = 1; isComposite = true; type_lazy = () -> com.tools20022.repository.msg.AmountAndDirection34.mmObject(); } }; protected List taxIdentification; /** * Provides for the specific tax identification within the same tax region.
*
* Usage: This element allows for a maximum of three regional taxes on the * same service. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageAttribute#getComplexType * complexType} = * {@linkplain com.tools20022.repository.msg.BillingServicesTax2 * BillingServicesTax2}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace * businessElementTrace} = * {@linkplain com.tools20022.repository.entity.Tax#mmRecord Tax.mmRecord}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.BillingMethod3 BillingMethod3}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "TaxId"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "TaxIdentification"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Provides for the specific tax identification within the same tax region. \r\n\r\nUsage: This element allows for a maximum of three regional taxes on the same service." *
  • *
*/ public static final MMMessageAttribute mmTaxIdentification = new MMMessageAttribute() { { businessElementTrace_lazy = () -> Tax.mmRecord; componentContext_lazy = () -> BillingMethod3.mmObject(); isDerived = false; xmlTag = "TaxId"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "TaxIdentification"; definition = "Provides for the specific tax identification within the same tax region. \r\n\r\nUsage: This element allows for a maximum of three regional taxes on the same service."; maxOccurs = 3; minOccurs = 1; complexType_lazy = () -> com.tools20022.repository.msg.BillingServicesTax2.mmObject(); } }; final static public MMMessageComponent mmObject() { mmObject_lazy.compareAndSet(null, new MMMessageComponent() { { messageElement_lazy = () -> Arrays.asList(BillingMethod3.mmServiceTaxPriceAmount, BillingMethod3.mmTaxIdentification); trace_lazy = () -> Tax.mmObject(); dataDictionary_lazy = () -> GeneratedRepository.mmdataDict; registrationStatus = MMRegistrationStatus.REGISTERED; name = "BillingMethod3"; definition = "Provides the details for the tax calculation method D."; } }); return mmObject_lazy.get(); } @XmlElement(name = "SvcTaxPricAmt", required = true) public AmountAndDirection34 getServiceTaxPriceAmount() { return serviceTaxPriceAmount; } public void setServiceTaxPriceAmount(com.tools20022.repository.msg.AmountAndDirection34 serviceTaxPriceAmount) { this.serviceTaxPriceAmount = serviceTaxPriceAmount; } @XmlElement(name = "TaxId", required = true) public List getTaxIdentification() { return taxIdentification; } public void setTaxIdentification(List taxIdentification) { this.taxIdentification = taxIdentification; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy