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

com.tools20022.repository.msg.TaxRecordDetails1 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.datatype.ActiveOrHistoricCurrencyAndAmount;
import com.tools20022.repository.entity.Tax;
import com.tools20022.repository.GeneratedRepository;
import java.util.Arrays;
import java.util.concurrent.atomic.AtomicReference;
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 information on the individual tax amount(s) per period of the tax
 * record.
 * 

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageElementContainer#getMessageElement * messageElement} = *
      *
    • {@linkplain com.tools20022.repository.msg.TaxRecordDetails1#mmPeriod * TaxRecordDetails1.mmPeriod}
    • *
    • {@linkplain com.tools20022.repository.msg.TaxRecordDetails1#mmAmount * TaxRecordDetails1.mmAmount}
    • *
    *
  • *
  • {@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} = * "TaxRecordDetails1"
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Provides information on the individual tax amount(s) per period of the tax record." *
  • *
*/ @XmlAccessorType(XmlAccessType.PROPERTY) @XmlType(name = "TaxRecordDetails1", propOrder = {"period", "amount"}) public class TaxRecordDetails1 { final static private AtomicReference mmObject_lazy = new AtomicReference<>(); protected TaxPeriod1 period; /** * Set of elements used to provide details on the period of time related to * the tax payment. *

* Constant fields: *

    *
  • {@linkplain com.tools20022.metamodel.MMMessageAssociationEnd#getType * type} = {@linkplain com.tools20022.repository.msg.TaxPeriod1 TaxPeriod1}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.TaxRecordDetails1 * TaxRecordDetails1}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "Prd"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "Period"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Set of elements used to provide details on the period of time related to the tax payment." *
  • *
*/ public static final MMMessageAssociationEnd mmPeriod = new MMMessageAssociationEnd() { { componentContext_lazy = () -> TaxRecordDetails1.mmObject(); isDerived = false; xmlTag = "Prd"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "Period"; definition = "Set of elements used to provide details on the period of time related to the tax payment."; maxOccurs = 1; minOccurs = 0; isComposite = true; type_lazy = () -> com.tools20022.repository.msg.TaxPeriod1.mmObject(); } }; protected ActiveOrHistoricCurrencyAndAmount amount; /** * Underlying tax amount related to the specified period. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageAttribute#getSimpleType * simpleType} = * {@linkplain com.tools20022.repository.datatype.ActiveOrHistoricCurrencyAndAmount * ActiveOrHistoricCurrencyAndAmount}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace * businessElementTrace} = * {@linkplain com.tools20022.repository.entity.Tax#mmAmount Tax.mmAmount}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.TaxRecordDetails1 * TaxRecordDetails1}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "Amt"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "Amount"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = "Underlying tax amount related to the specified period."
  • *
*/ public static final MMMessageAttribute mmAmount = new MMMessageAttribute() { { businessElementTrace_lazy = () -> Tax.mmAmount; componentContext_lazy = () -> TaxRecordDetails1.mmObject(); isDerived = false; xmlTag = "Amt"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "Amount"; definition = "Underlying tax amount related to the specified period."; maxOccurs = 1; minOccurs = 1; simpleType_lazy = () -> ActiveOrHistoricCurrencyAndAmount.mmObject(); } }; final static public MMMessageComponent mmObject() { mmObject_lazy.compareAndSet(null, new MMMessageComponent() { { messageElement_lazy = () -> Arrays.asList(TaxRecordDetails1.mmPeriod, TaxRecordDetails1.mmAmount); trace_lazy = () -> Tax.mmObject(); dataDictionary_lazy = () -> GeneratedRepository.mmdataDict; registrationStatus = MMRegistrationStatus.REGISTERED; name = "TaxRecordDetails1"; definition = "Provides information on the individual tax amount(s) per period of the tax record."; } }); return mmObject_lazy.get(); } @XmlElement(name = "Prd") public TaxPeriod1 getPeriod() { return period; } public void setPeriod(com.tools20022.repository.msg.TaxPeriod1 period) { this.period = period; } @XmlElement(name = "Amt", required = true) public ActiveOrHistoricCurrencyAndAmount getAmount() { return amount; } public void setAmount(ActiveOrHistoricCurrencyAndAmount amount) { this.amount = amount; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy