com.tools20022.repository.msg.AccountContract2 Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of tools20022-api-payments Show documentation
Show all versions of tools20022-api-payments Show documentation
Java API for ISO 20022 - Payments business domain
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.MMMessageAttribute;
import com.tools20022.metamodel.MMMessageComponent;
import com.tools20022.metamodel.MMRegistrationStatus;
import com.tools20022.repository.area.acmt.*;
import com.tools20022.repository.datatype.ISODate;
import com.tools20022.repository.datatype.YesNoIndicator;
import com.tools20022.repository.entity.AccountContract;
import com.tools20022.repository.entity.CashAccountContract;
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;
/**
* Specifies target dates dates related to account opening and closing.
*
* Constant fields:
*
* -
* {@linkplain com.tools20022.metamodel.MMMessageElementContainer#getMessageElement
* messageElement} =
*
* -
* {@linkplain com.tools20022.repository.msg.AccountContract2#mmTargetGoLiveDate
* AccountContract2.mmTargetGoLiveDate}
* -
* {@linkplain com.tools20022.repository.msg.AccountContract2#mmTargetClosingDate
* AccountContract2.mmTargetClosingDate}
* - {@linkplain com.tools20022.repository.msg.AccountContract2#mmUrgencyFlag
* AccountContract2.mmUrgencyFlag}
*
*
* - {@linkplain com.tools20022.metamodel.MMMessageComponentType#getTrace
* trace} = {@linkplain com.tools20022.repository.entity.CashAccountContract
* CashAccountContract}
* -
* {@linkplain com.tools20022.metamodel.MMMessageComponentType#getMessageBuildingBlock
* messageBuildingBlock} =
*
* -
* {@linkplain com.tools20022.repository.area.acmt.AccountExcludedMandateMaintenanceAmendmentRequestV02#mmContractDates
* AccountExcludedMandateMaintenanceAmendmentRequestV02.mmContractDates}
* -
* {@linkplain com.tools20022.repository.area.acmt.AccountExcludedMandateMaintenanceRequestV02#mmContractDates
* AccountExcludedMandateMaintenanceRequestV02.mmContractDates}
* -
* {@linkplain com.tools20022.repository.area.acmt.AccountMandateMaintenanceAmendmentRequestV02#mmContractDates
* AccountMandateMaintenanceAmendmentRequestV02.mmContractDates}
* -
* {@linkplain com.tools20022.repository.area.acmt.AccountMandateMaintenanceRequestV02#mmContractDates
* AccountMandateMaintenanceRequestV02.mmContractDates}
* -
* {@linkplain com.tools20022.repository.area.acmt.AccountOpeningAmendmentRequestV02#mmContractDates
* AccountOpeningAmendmentRequestV02.mmContractDates}
* -
* {@linkplain com.tools20022.repository.area.acmt.AccountOpeningRequestV02#mmContractDates
* AccountOpeningRequestV02.mmContractDates}
*
*
* -
* {@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} =
* "AccountContract2"
* - {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition
* definition} =
* "Specifies target dates dates related to account opening and closing."
*
*/
@XmlAccessorType(XmlAccessType.PROPERTY)
@XmlType(name = "AccountContract2", propOrder = {"targetGoLiveDate", "targetClosingDate", "urgencyFlag"})
public class AccountContract2 {
final static private AtomicReference mmObject_lazy = new AtomicReference<>();
protected ISODate targetGoLiveDate;
/**
* Date on which the account and related basic services are expected to be
* operational for the account owner.
*
* Constant fields:
*
* -
* {@linkplain com.tools20022.metamodel.MMMessageAttribute#getSimpleType
* simpleType} = {@linkplain com.tools20022.repository.datatype.ISODate
* ISODate}
* -
* {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace
* businessElementTrace} =
* {@linkplain com.tools20022.repository.entity.AccountContract#mmTargetGoLiveDate
* AccountContract.mmTargetGoLiveDate}
* -
* {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext
* componentContext} =
* {@linkplain com.tools20022.repository.msg.AccountContract2
* AccountContract2}
* - {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag
* xmlTag} = "TrgtGoLiveDt"
* -
* {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus
* registrationStatus} =
* com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
* - {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName
* name} = "TargetGoLiveDate"
* -
* {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition
* definition} =
* "Date on which the account and related basic services are expected to be operational for the account owner."
*
*
*/
public static final MMMessageAttribute mmTargetGoLiveDate = new MMMessageAttribute() {
{
businessElementTrace_lazy = () -> AccountContract.mmTargetGoLiveDate;
componentContext_lazy = () -> AccountContract2.mmObject();
isDerived = false;
xmlTag = "TrgtGoLiveDt";
registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED;
name = "TargetGoLiveDate";
definition = "Date on which the account and related basic services are expected to be operational for the account owner.";
maxOccurs = 1;
minOccurs = 0;
simpleType_lazy = () -> ISODate.mmObject();
}
};
protected ISODate targetClosingDate;
/**
* Date on which the account and related services are expected to cease to
* be operational for the account owner.
*
* Constant fields:
*
* -
* {@linkplain com.tools20022.metamodel.MMMessageAttribute#getSimpleType
* simpleType} = {@linkplain com.tools20022.repository.datatype.ISODate
* ISODate}
* -
* {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace
* businessElementTrace} =
* {@linkplain com.tools20022.repository.entity.AccountContract#mmTargetClosingDate
* AccountContract.mmTargetClosingDate}
* -
* {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext
* componentContext} =
* {@linkplain com.tools20022.repository.msg.AccountContract2
* AccountContract2}
* - {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag
* xmlTag} = "TrgtClsgDt"
* -
* {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus
* registrationStatus} =
* com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
* - {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName
* name} = "TargetClosingDate"
* -
* {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition
* definition} =
* "Date on which the account and related services are expected to cease to be operational for the account owner."
*
*
*/
public static final MMMessageAttribute mmTargetClosingDate = new MMMessageAttribute() {
{
businessElementTrace_lazy = () -> AccountContract.mmTargetClosingDate;
componentContext_lazy = () -> AccountContract2.mmObject();
isDerived = false;
xmlTag = "TrgtClsgDt";
registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED;
name = "TargetClosingDate";
definition = "Date on which the account and related services are expected to cease to be operational for the account owner.";
maxOccurs = 1;
minOccurs = 0;
simpleType_lazy = () -> ISODate.mmObject();
}
};
protected YesNoIndicator urgencyFlag;
/**
* Indicator that the account opening/maintenance/closing process needs to
* be treated urgently, that is, sooner than the terms established by the
* service level agreed between the account holder customer and the account
* servicing institution.
*
* Constant fields:
*
* -
* {@linkplain com.tools20022.metamodel.MMMessageAttribute#getSimpleType
* simpleType} =
* {@linkplain com.tools20022.repository.datatype.YesNoIndicator
* YesNoIndicator}
* -
* {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace
* businessElementTrace} =
* {@linkplain com.tools20022.repository.entity.AccountContract#mmUrgencyFlag
* AccountContract.mmUrgencyFlag}
* -
* {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext
* componentContext} =
* {@linkplain com.tools20022.repository.msg.AccountContract2
* AccountContract2}
* - {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag
* xmlTag} = "UrgcyFlg"
* -
* {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus
* registrationStatus} =
* com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
* - {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName
* name} = "UrgencyFlag"
* -
* {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition
* definition} =
* "Indicator that the account opening/maintenance/closing process needs to be treated urgently, that is, sooner than the terms established by the service level agreed between the account holder customer and the account servicing institution."
*
*
*/
public static final MMMessageAttribute mmUrgencyFlag = new MMMessageAttribute() {
{
businessElementTrace_lazy = () -> AccountContract.mmUrgencyFlag;
componentContext_lazy = () -> AccountContract2.mmObject();
isDerived = false;
xmlTag = "UrgcyFlg";
registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED;
name = "UrgencyFlag";
definition = "Indicator that the account opening/maintenance/closing process needs to be treated urgently, that is, sooner than the terms established by the service level agreed between the account holder customer and the account servicing institution.";
maxOccurs = 1;
minOccurs = 0;
simpleType_lazy = () -> YesNoIndicator.mmObject();
}
};
final static public MMMessageComponent mmObject() {
mmObject_lazy.compareAndSet(null, new MMMessageComponent() {
{
messageElement_lazy = () -> Arrays.asList(AccountContract2.mmTargetGoLiveDate, AccountContract2.mmTargetClosingDate, AccountContract2.mmUrgencyFlag);
messageBuildingBlock_lazy = () -> Arrays.asList(AccountExcludedMandateMaintenanceAmendmentRequestV02.mmContractDates, AccountExcludedMandateMaintenanceRequestV02.mmContractDates,
AccountMandateMaintenanceAmendmentRequestV02.mmContractDates, AccountMandateMaintenanceRequestV02.mmContractDates, AccountOpeningAmendmentRequestV02.mmContractDates, AccountOpeningRequestV02.mmContractDates);
trace_lazy = () -> CashAccountContract.mmObject();
dataDictionary_lazy = () -> GeneratedRepository.mmdataDict;
registrationStatus = MMRegistrationStatus.REGISTERED;
name = "AccountContract2";
definition = "Specifies target dates dates related to account opening and closing.";
}
});
return mmObject_lazy.get();
}
@XmlElement(name = "TrgtGoLiveDt")
public ISODate getTargetGoLiveDate() {
return targetGoLiveDate;
}
public void setTargetGoLiveDate(ISODate targetGoLiveDate) {
this.targetGoLiveDate = targetGoLiveDate;
}
@XmlElement(name = "TrgtClsgDt")
public ISODate getTargetClosingDate() {
return targetClosingDate;
}
public void setTargetClosingDate(ISODate targetClosingDate) {
this.targetClosingDate = targetClosingDate;
}
@XmlElement(name = "UrgcyFlg")
public YesNoIndicator getUrgencyFlag() {
return urgencyFlag;
}
public void setUrgencyFlag(YesNoIndicator urgencyFlag) {
this.urgencyFlag = urgencyFlag;
}
}