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

com.tools20022.repository.msg.CustomerAccount4 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.area.acmt.AccountOpeningAdditionalInformationRequestV02;
import com.tools20022.repository.area.acmt.AccountOpeningAmendmentRequestV02;
import com.tools20022.repository.area.acmt.AccountOpeningRequestV02;
import com.tools20022.repository.choice.AccountIdentification4Choice;
import com.tools20022.repository.choice.CashAccountType2Choice;
import com.tools20022.repository.codeset.AccountStatus3Code;
import com.tools20022.repository.codeset.ActiveCurrencyCode;
import com.tools20022.repository.datatype.*;
import com.tools20022.repository.entity.*;
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;

/**
 * Account owned by a customer.
 * 

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageElementContainer#getMessageElement * messageElement} = *
      *
    • * {@linkplain com.tools20022.repository.msg.CustomerAccount4#mmIdentification * CustomerAccount4.mmIdentification}
    • *
    • {@linkplain com.tools20022.repository.msg.CustomerAccount4#mmName * CustomerAccount4.mmName}
    • *
    • {@linkplain com.tools20022.repository.msg.CustomerAccount4#mmStatus * CustomerAccount4.mmStatus}
    • *
    • {@linkplain com.tools20022.repository.msg.CustomerAccount4#mmType * CustomerAccount4.mmType}
    • *
    • {@linkplain com.tools20022.repository.msg.CustomerAccount4#mmCurrency * CustomerAccount4.mmCurrency}
    • *
    • * {@linkplain com.tools20022.repository.msg.CustomerAccount4#mmMonthlyPaymentValue * CustomerAccount4.mmMonthlyPaymentValue}
    • *
    • * {@linkplain com.tools20022.repository.msg.CustomerAccount4#mmMonthlyReceivedValue * CustomerAccount4.mmMonthlyReceivedValue}
    • *
    • * {@linkplain com.tools20022.repository.msg.CustomerAccount4#mmMonthlyTransactionNumber * CustomerAccount4.mmMonthlyTransactionNumber}
    • *
    • * {@linkplain com.tools20022.repository.msg.CustomerAccount4#mmAverageBalance * CustomerAccount4.mmAverageBalance}
    • *
    • * {@linkplain com.tools20022.repository.msg.CustomerAccount4#mmAccountPurpose * CustomerAccount4.mmAccountPurpose}
    • *
    • * {@linkplain com.tools20022.repository.msg.CustomerAccount4#mmFloorNotificationAmount * CustomerAccount4.mmFloorNotificationAmount}
    • *
    • * {@linkplain com.tools20022.repository.msg.CustomerAccount4#mmCeilingNotificationAmount * CustomerAccount4.mmCeilingNotificationAmount}
    • *
    • * {@linkplain com.tools20022.repository.msg.CustomerAccount4#mmStatementFrequencyAndFormat * CustomerAccount4.mmStatementFrequencyAndFormat}
    • *
    • {@linkplain com.tools20022.repository.msg.CustomerAccount4#mmClosingDate * CustomerAccount4.mmClosingDate}
    • *
    • {@linkplain com.tools20022.repository.msg.CustomerAccount4#mmRestriction * CustomerAccount4.mmRestriction}
    • *
    *
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageComponentType#getTrace * trace} = {@linkplain com.tools20022.repository.entity.CashAccount * CashAccount}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageComponentType#getMessageBuildingBlock * messageBuildingBlock} = *
      *
    • * {@linkplain com.tools20022.repository.area.acmt.AccountOpeningAdditionalInformationRequestV02#mmAccount * AccountOpeningAdditionalInformationRequestV02.mmAccount}
    • *
    • * {@linkplain com.tools20022.repository.area.acmt.AccountOpeningAmendmentRequestV02#mmAccount * AccountOpeningAmendmentRequestV02.mmAccount}
    • *
    • * {@linkplain com.tools20022.repository.area.acmt.AccountOpeningRequestV02#mmAccount * AccountOpeningRequestV02.mmAccount}
    • *
    *
  • *
  • * {@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} = * "CustomerAccount4"
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = "Account owned by a customer."
  • *
*/ @XmlAccessorType(XmlAccessType.PROPERTY) @XmlType(name = "CustomerAccount4", propOrder = {"identification", "name", "status", "type", "currency", "monthlyPaymentValue", "monthlyReceivedValue", "monthlyTransactionNumber", "averageBalance", "accountPurpose", "floorNotificationAmount", "ceilingNotificationAmount", "statementFrequencyAndFormat", "closingDate", "restriction"}) public class CustomerAccount4 { final static private AtomicReference mmObject_lazy = new AtomicReference<>(); protected AccountIdentification4Choice identification; /** * Identification of the account. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageAttribute#getComplexType * complexType} = * {@linkplain com.tools20022.repository.choice.AccountIdentification4Choice * AccountIdentification4Choice}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace * businessElementTrace} = * {@linkplain com.tools20022.repository.entity.Account#mmIdentification * Account.mmIdentification}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.CustomerAccount4 * CustomerAccount4}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "Id"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "Identification"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = "Identification of the account."
  • *
*/ public static final MMMessageAttribute mmIdentification = new MMMessageAttribute() { { businessElementTrace_lazy = () -> Account.mmIdentification; componentContext_lazy = () -> CustomerAccount4.mmObject(); isDerived = false; xmlTag = "Id"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "Identification"; definition = "Identification of the account."; maxOccurs = 1; minOccurs = 0; complexType_lazy = () -> AccountIdentification4Choice.mmObject(); } }; protected Max70Text name; /** * Name of the account. It provides an additional means of identification, * and is designated by the account servicer in agreement with the account * owner. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageAttribute#getSimpleType * simpleType} = {@linkplain com.tools20022.repository.datatype.Max70Text * Max70Text}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace * businessElementTrace} = * {@linkplain com.tools20022.repository.entity.AccountIdentification#mmName * AccountIdentification.mmName}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.CustomerAccount4 * CustomerAccount4}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "Nm"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "Name"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Name of the account. It provides an additional means of identification, and is designated by the account servicer in agreement with the account owner." *
  • *
*/ public static final MMMessageAttribute mmName = new MMMessageAttribute() { { businessElementTrace_lazy = () -> AccountIdentification.mmName; componentContext_lazy = () -> CustomerAccount4.mmObject(); isDerived = false; xmlTag = "Nm"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "Name"; definition = "Name of the account. It provides an additional means of identification, and is designated by the account servicer in agreement with the account owner."; maxOccurs = 1; minOccurs = 0; simpleType_lazy = () -> Max70Text.mmObject(); } }; protected AccountStatus3Code status; /** * Specifies the current state of an account, eg, enabled or deleted. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageAttribute#getSimpleType * simpleType} = * {@linkplain com.tools20022.repository.codeset.AccountStatus3Code * AccountStatus3Code}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace * businessElementTrace} = * {@linkplain com.tools20022.repository.entity.AccountStatus#mmStatus * AccountStatus.mmStatus}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.CustomerAccount4 * CustomerAccount4}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "Sts"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "Status"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Specifies the current state of an account, eg, enabled or deleted."
  • *
*/ public static final MMMessageAttribute mmStatus = new MMMessageAttribute() { { businessElementTrace_lazy = () -> AccountStatus.mmStatus; componentContext_lazy = () -> CustomerAccount4.mmObject(); isDerived = false; xmlTag = "Sts"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "Status"; definition = "Specifies the current state of an account, eg, enabled or deleted."; maxOccurs = 1; minOccurs = 0; simpleType_lazy = () -> AccountStatus3Code.mmObject(); } }; protected CashAccountType2Choice type; /** * Type of the account. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageAttribute#getComplexType * complexType} = * {@linkplain com.tools20022.repository.choice.CashAccountType2Choice * CashAccountType2Choice}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessComponentTrace * businessComponentTrace} = * {@linkplain com.tools20022.repository.entity.CashAccount CashAccount}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.CustomerAccount4 * CustomerAccount4}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "Tp"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "Type"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = "Type of the account."
  • *
*/ public static final MMMessageAttribute mmType = new MMMessageAttribute() { { businessComponentTrace_lazy = () -> CashAccount.mmObject(); componentContext_lazy = () -> CustomerAccount4.mmObject(); isDerived = false; xmlTag = "Tp"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "Type"; definition = "Type of the account."; maxOccurs = 1; minOccurs = 0; complexType_lazy = () -> CashAccountType2Choice.mmObject(); } }; protected ActiveCurrencyCode currency; /** * Medium of exchange of value. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageAttribute#getSimpleType * simpleType} = * {@linkplain com.tools20022.repository.codeset.ActiveCurrencyCode * ActiveCurrencyCode}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace * businessElementTrace} = * {@linkplain com.tools20022.repository.entity.Account#mmBaseCurrency * Account.mmBaseCurrency}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.CustomerAccount4 * CustomerAccount4}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "Ccy"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "Currency"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = "Medium of exchange of value."
  • *
*/ public static final MMMessageAttribute mmCurrency = new MMMessageAttribute() { { businessElementTrace_lazy = () -> Account.mmBaseCurrency; componentContext_lazy = () -> CustomerAccount4.mmObject(); isDerived = false; xmlTag = "Ccy"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "Currency"; definition = "Medium of exchange of value."; maxOccurs = 1; minOccurs = 1; simpleType_lazy = () -> ActiveCurrencyCode.mmObject(); } }; protected ImpliedCurrencyAndAmount monthlyPaymentValue; /** * Monthly average of the payment amounts (that is, payments going out) over * a year. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageAttribute#getSimpleType * simpleType} = * {@linkplain com.tools20022.repository.datatype.ImpliedCurrencyAndAmount * ImpliedCurrencyAndAmount}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace * businessElementTrace} = * {@linkplain com.tools20022.repository.entity.AccountReportedMovement#mmMonthlyPaymentValue * AccountReportedMovement.mmMonthlyPaymentValue}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.CustomerAccount4 * CustomerAccount4}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "MnthlyPmtVal"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "MonthlyPaymentValue"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Monthly average of the payment amounts (that is, payments going out) over a year." *
  • *
*/ public static final MMMessageAttribute mmMonthlyPaymentValue = new MMMessageAttribute() { { businessElementTrace_lazy = () -> AccountReportedMovement.mmMonthlyPaymentValue; componentContext_lazy = () -> CustomerAccount4.mmObject(); isDerived = false; xmlTag = "MnthlyPmtVal"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "MonthlyPaymentValue"; definition = "Monthly average of the payment amounts (that is, payments going out) over a year."; maxOccurs = 1; minOccurs = 0; simpleType_lazy = () -> ImpliedCurrencyAndAmount.mmObject(); } }; protected ImpliedCurrencyAndAmount monthlyReceivedValue; /** * Monthly average of the received amounts over a year (that is, payments * coming in). *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageAttribute#getSimpleType * simpleType} = * {@linkplain com.tools20022.repository.datatype.ImpliedCurrencyAndAmount * ImpliedCurrencyAndAmount}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace * businessElementTrace} = * {@linkplain com.tools20022.repository.entity.AccountReportedMovement#mmMonthlyReceivedValue * AccountReportedMovement.mmMonthlyReceivedValue}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.CustomerAccount4 * CustomerAccount4}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "MnthlyRcvdVal"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "MonthlyReceivedValue"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Monthly average of the received amounts over a year (that is, payments coming in)." *
  • *
*/ public static final MMMessageAttribute mmMonthlyReceivedValue = new MMMessageAttribute() { { businessElementTrace_lazy = () -> AccountReportedMovement.mmMonthlyReceivedValue; componentContext_lazy = () -> CustomerAccount4.mmObject(); isDerived = false; xmlTag = "MnthlyRcvdVal"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "MonthlyReceivedValue"; definition = "Monthly average of the received amounts over a year (that is, payments coming in)."; maxOccurs = 1; minOccurs = 0; simpleType_lazy = () -> ImpliedCurrencyAndAmount.mmObject(); } }; protected Max5NumericText monthlyTransactionNumber; /** * Monthly average of the number of payments (coming in and going out) over * a year. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageAttribute#getSimpleType * simpleType} = * {@linkplain com.tools20022.repository.datatype.Max5NumericText * Max5NumericText}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace * businessElementTrace} = * {@linkplain com.tools20022.repository.entity.AccountReportedMovement#mmMonthlyTransactionNumber * AccountReportedMovement.mmMonthlyTransactionNumber}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.CustomerAccount4 * CustomerAccount4}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "MnthlyTxNb"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "MonthlyTransactionNumber"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Monthly average of the number of payments (coming in and going out) over a year." *
  • *
*/ public static final MMMessageAttribute mmMonthlyTransactionNumber = new MMMessageAttribute() { { businessElementTrace_lazy = () -> AccountReportedMovement.mmMonthlyTransactionNumber; componentContext_lazy = () -> CustomerAccount4.mmObject(); isDerived = false; xmlTag = "MnthlyTxNb"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "MonthlyTransactionNumber"; definition = "Monthly average of the number of payments (coming in and going out) over a year."; maxOccurs = 1; minOccurs = 0; simpleType_lazy = () -> Max5NumericText.mmObject(); } }; protected ImpliedCurrencyAndAmount averageBalance; /** * Sum of the end of day balances over a month divided by the number of * business days in the month. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageAttribute#getSimpleType * simpleType} = * {@linkplain com.tools20022.repository.datatype.ImpliedCurrencyAndAmount * ImpliedCurrencyAndAmount}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace * businessElementTrace} = * {@linkplain com.tools20022.repository.entity.AccountReportedMovement#mmAverageBalance * AccountReportedMovement.mmAverageBalance}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.CustomerAccount4 * CustomerAccount4}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "AvrgBal"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "AverageBalance"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Sum of the end of day balances over a month divided by the number of business days in the month." *
  • *
*/ public static final MMMessageAttribute mmAverageBalance = new MMMessageAttribute() { { businessElementTrace_lazy = () -> AccountReportedMovement.mmAverageBalance; componentContext_lazy = () -> CustomerAccount4.mmObject(); isDerived = false; xmlTag = "AvrgBal"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "AverageBalance"; definition = "Sum of the end of day balances over a month divided by the number of business days in the month."; maxOccurs = 1; minOccurs = 0; simpleType_lazy = () -> ImpliedCurrencyAndAmount.mmObject(); } }; protected Max140Text accountPurpose; /** * Specifies the purpose of the account. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageAttribute#getSimpleType * simpleType} = {@linkplain com.tools20022.repository.datatype.Max140Text * Max140Text}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace * businessElementTrace} = * {@linkplain com.tools20022.repository.entity.Account#mmPurpose * Account.mmPurpose}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.CustomerAccount4 * CustomerAccount4}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "AcctPurp"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "AccountPurpose"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = "Specifies the purpose of the account."
  • *
*/ public static final MMMessageAttribute mmAccountPurpose = new MMMessageAttribute() { { businessElementTrace_lazy = () -> Account.mmPurpose; componentContext_lazy = () -> CustomerAccount4.mmObject(); isDerived = false; xmlTag = "AcctPurp"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "AccountPurpose"; definition = "Specifies the purpose of the account."; maxOccurs = 1; minOccurs = 0; simpleType_lazy = () -> Max140Text.mmObject(); } }; protected ImpliedCurrencyAndAmount floorNotificationAmount; /** * Specifies the value of the balance under which a notification will be * sent to the account owner. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageAttribute#getSimpleType * simpleType} = * {@linkplain com.tools20022.repository.datatype.ImpliedCurrencyAndAmount * ImpliedCurrencyAndAmount}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace * businessElementTrace} = * {@linkplain com.tools20022.repository.entity.ReportingService#mmFloorNotificationAmount * ReportingService.mmFloorNotificationAmount}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.CustomerAccount4 * CustomerAccount4}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "FlrNtfctnAmt"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "FloorNotificationAmount"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Specifies the value of the balance under which a notification will be sent to the account owner." *
  • *
*/ public static final MMMessageAttribute mmFloorNotificationAmount = new MMMessageAttribute() { { businessElementTrace_lazy = () -> ReportingService.mmFloorNotificationAmount; componentContext_lazy = () -> CustomerAccount4.mmObject(); isDerived = false; xmlTag = "FlrNtfctnAmt"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "FloorNotificationAmount"; definition = "Specifies the value of the balance under which a notification will be sent to the account owner."; maxOccurs = 1; minOccurs = 0; simpleType_lazy = () -> ImpliedCurrencyAndAmount.mmObject(); } }; protected ImpliedCurrencyAndAmount ceilingNotificationAmount; /** * Specifies the value of the balance above which a notification will be * sent to the account owner. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageAttribute#getSimpleType * simpleType} = * {@linkplain com.tools20022.repository.datatype.ImpliedCurrencyAndAmount * ImpliedCurrencyAndAmount}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace * businessElementTrace} = * {@linkplain com.tools20022.repository.entity.ReportingService#mmCeilingNotificationAmount * ReportingService.mmCeilingNotificationAmount}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.CustomerAccount4 * CustomerAccount4}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "ClngNtfctnAmt"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "CeilingNotificationAmount"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Specifies the value of the balance above which a notification will be sent to the account owner." *
  • *
*/ public static final MMMessageAttribute mmCeilingNotificationAmount = new MMMessageAttribute() { { businessElementTrace_lazy = () -> ReportingService.mmCeilingNotificationAmount; componentContext_lazy = () -> CustomerAccount4.mmObject(); isDerived = false; xmlTag = "ClngNtfctnAmt"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "CeilingNotificationAmount"; definition = "Specifies the value of the balance above which a notification will be sent to the account owner."; maxOccurs = 1; minOccurs = 0; simpleType_lazy = () -> ImpliedCurrencyAndAmount.mmObject(); } }; protected List statementFrequencyAndFormat; /** * Specifies how often statements (for audit purposes) will be sent, in * which format, to which address. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMMessageAttribute#getComplexType * complexType} = * {@linkplain com.tools20022.repository.msg.StatementFrequencyAndForm1 * StatementFrequencyAndForm1}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace * businessElementTrace} = * {@linkplain com.tools20022.repository.entity.ReportingService#mmStatementFrequency * ReportingService.mmStatementFrequency}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.CustomerAccount4 * CustomerAccount4}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "StmtFrqcyAndFrmt"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "StatementFrequencyAndFormat"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Specifies how often statements (for audit purposes) will be sent, in which format, to which address." *
  • *
*/ public static final MMMessageAttribute mmStatementFrequencyAndFormat = new MMMessageAttribute() { { businessElementTrace_lazy = () -> ReportingService.mmStatementFrequency; componentContext_lazy = () -> CustomerAccount4.mmObject(); isDerived = false; xmlTag = "StmtFrqcyAndFrmt"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "StatementFrequencyAndFormat"; definition = "Specifies how often statements (for audit purposes) will be sent, in which format, to which address."; minOccurs = 0; complexType_lazy = () -> com.tools20022.repository.msg.StatementFrequencyAndForm1.mmObject(); } }; protected ISODate closingDate; /** * Date when the account will be or was closed. *

* 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.Account#mmClosingDate * Account.mmClosingDate}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.CustomerAccount4 * CustomerAccount4}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "ClsgDt"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "ClosingDate"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = "Date when the account will be or was closed."
  • *
*/ public static final MMMessageAttribute mmClosingDate = new MMMessageAttribute() { { businessElementTrace_lazy = () -> Account.mmClosingDate; componentContext_lazy = () -> CustomerAccount4.mmObject(); isDerived = false; xmlTag = "ClsgDt"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "ClosingDate"; definition = "Date when the account will be or was closed."; maxOccurs = 1; minOccurs = 0; simpleType_lazy = () -> ISODate.mmObject(); } }; protected List restriction; /** * Restriction on capability or operations allowed. *

* Constant fields: *

    *
  • {@linkplain com.tools20022.metamodel.MMMessageAssociationEnd#getType * type} = {@linkplain com.tools20022.repository.msg.Restriction1 * Restriction1}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace * businessElementTrace} = * {@linkplain com.tools20022.repository.entity.Account#mmAccountRestriction * Account.mmAccountRestriction}
  • *
  • * {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext * componentContext} = * {@linkplain com.tools20022.repository.msg.CustomerAccount4 * CustomerAccount4}
  • *
  • {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag * xmlTag} = "Rstrctn"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "Restriction"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = "Restriction on capability or operations allowed."
  • *
*/ public static final MMMessageAssociationEnd mmRestriction = new MMMessageAssociationEnd() { { businessElementTrace_lazy = () -> Account.mmAccountRestriction; componentContext_lazy = () -> CustomerAccount4.mmObject(); isDerived = false; xmlTag = "Rstrctn"; registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED; name = "Restriction"; definition = "Restriction on capability or operations allowed."; minOccurs = 0; isComposite = true; type_lazy = () -> com.tools20022.repository.msg.Restriction1.mmObject(); } }; final static public MMMessageComponent mmObject() { mmObject_lazy.compareAndSet(null, new MMMessageComponent() { { messageElement_lazy = () -> Arrays.asList(CustomerAccount4.mmIdentification, CustomerAccount4.mmName, CustomerAccount4.mmStatus, CustomerAccount4.mmType, CustomerAccount4.mmCurrency, CustomerAccount4.mmMonthlyPaymentValue, CustomerAccount4.mmMonthlyReceivedValue, CustomerAccount4.mmMonthlyTransactionNumber, CustomerAccount4.mmAverageBalance, CustomerAccount4.mmAccountPurpose, CustomerAccount4.mmFloorNotificationAmount, CustomerAccount4.mmCeilingNotificationAmount, CustomerAccount4.mmStatementFrequencyAndFormat, CustomerAccount4.mmClosingDate, CustomerAccount4.mmRestriction); messageBuildingBlock_lazy = () -> Arrays.asList(AccountOpeningAdditionalInformationRequestV02.mmAccount, AccountOpeningAmendmentRequestV02.mmAccount, AccountOpeningRequestV02.mmAccount); trace_lazy = () -> CashAccount.mmObject(); dataDictionary_lazy = () -> GeneratedRepository.mmdataDict; registrationStatus = MMRegistrationStatus.REGISTERED; name = "CustomerAccount4"; definition = "Account owned by a customer."; } }); return mmObject_lazy.get(); } @XmlElement(name = "Id") public AccountIdentification4Choice getIdentification() { return identification; } public void setIdentification(AccountIdentification4Choice identification) { this.identification = identification; } @XmlElement(name = "Nm") public Max70Text getName() { return name; } public void setName(Max70Text name) { this.name = name; } @XmlElement(name = "Sts") public AccountStatus3Code getStatus() { return status; } public void setStatus(AccountStatus3Code status) { this.status = status; } @XmlElement(name = "Tp") public CashAccountType2Choice getType() { return type; } public void setType(CashAccountType2Choice type) { this.type = type; } @XmlElement(name = "Ccy", required = true) public ActiveCurrencyCode getCurrency() { return currency; } public void setCurrency(ActiveCurrencyCode currency) { this.currency = currency; } @XmlElement(name = "MnthlyPmtVal") public ImpliedCurrencyAndAmount getMonthlyPaymentValue() { return monthlyPaymentValue; } public void setMonthlyPaymentValue(ImpliedCurrencyAndAmount monthlyPaymentValue) { this.monthlyPaymentValue = monthlyPaymentValue; } @XmlElement(name = "MnthlyRcvdVal") public ImpliedCurrencyAndAmount getMonthlyReceivedValue() { return monthlyReceivedValue; } public void setMonthlyReceivedValue(ImpliedCurrencyAndAmount monthlyReceivedValue) { this.monthlyReceivedValue = monthlyReceivedValue; } @XmlElement(name = "MnthlyTxNb") public Max5NumericText getMonthlyTransactionNumber() { return monthlyTransactionNumber; } public void setMonthlyTransactionNumber(Max5NumericText monthlyTransactionNumber) { this.monthlyTransactionNumber = monthlyTransactionNumber; } @XmlElement(name = "AvrgBal") public ImpliedCurrencyAndAmount getAverageBalance() { return averageBalance; } public void setAverageBalance(ImpliedCurrencyAndAmount averageBalance) { this.averageBalance = averageBalance; } @XmlElement(name = "AcctPurp") public Max140Text getAccountPurpose() { return accountPurpose; } public void setAccountPurpose(Max140Text accountPurpose) { this.accountPurpose = accountPurpose; } @XmlElement(name = "FlrNtfctnAmt") public ImpliedCurrencyAndAmount getFloorNotificationAmount() { return floorNotificationAmount; } public void setFloorNotificationAmount(ImpliedCurrencyAndAmount floorNotificationAmount) { this.floorNotificationAmount = floorNotificationAmount; } @XmlElement(name = "ClngNtfctnAmt") public ImpliedCurrencyAndAmount getCeilingNotificationAmount() { return ceilingNotificationAmount; } public void setCeilingNotificationAmount(ImpliedCurrencyAndAmount ceilingNotificationAmount) { this.ceilingNotificationAmount = ceilingNotificationAmount; } @XmlElement(name = "StmtFrqcyAndFrmt") public List getStatementFrequencyAndFormat() { return statementFrequencyAndFormat; } public void setStatementFrequencyAndFormat(List statementFrequencyAndFormat) { this.statementFrequencyAndFormat = statementFrequencyAndFormat; } @XmlElement(name = "ClsgDt") public ISODate getClosingDate() { return closingDate; } public void setClosingDate(ISODate closingDate) { this.closingDate = closingDate; } @XmlElement(name = "Rstrctn") public List getRestriction() { return restriction; } public void setRestriction(List restriction) { this.restriction = restriction; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy