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

com.tools20022.repository.entity.Entry Maven / Gradle / Ivy

There is a newer version: 0.1.2
Show 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.entity;

import com.tools20022.metamodel.*;
import com.tools20022.repository.codeset.DebitCreditCode;
import com.tools20022.repository.codeset.EntryCode;
import com.tools20022.repository.datatype.ISODateTime;
import com.tools20022.repository.datatype.Max35Text;
import com.tools20022.repository.datatype.TrueFalseIndicator;
import com.tools20022.repository.datatype.YesNoIndicator;
import com.tools20022.repository.GeneratedRepository;
import com.tools20022.repository.msg.*;
import java.lang.reflect.Method;
import java.util.Arrays;
import java.util.concurrent.atomic.AtomicReference;
import java.util.List;

/**
 * Posting to an account that results in an increase or decrease to a balance.
 * 

* Class diagram *

* *

* Constant fields: *

    *
  • {@linkplain com.tools20022.metamodel.MMBusinessComponent#getElement * element} = *
      *
    • * {@linkplain com.tools20022.repository.entity.Entry#mmCreditDebitIndicator * Entry.mmCreditDebitIndicator}
    • *
    • {@linkplain com.tools20022.repository.entity.Entry#mmEntryDate * Entry.mmEntryDate}
    • *
    • {@linkplain com.tools20022.repository.entity.Entry#mmIdentification * Entry.mmIdentification}
    • *
    • * {@linkplain com.tools20022.repository.entity.Entry#mmAccountOwnerTransactionIdentification * Entry.mmAccountOwnerTransactionIdentification}
    • *
    • * {@linkplain com.tools20022.repository.entity.Entry#mmAccountServicerTransactionIdentification * Entry.mmAccountServicerTransactionIdentification}
    • *
    • {@linkplain com.tools20022.repository.entity.Entry#mmReversalIndicator * Entry.mmReversalIndicator}
    • *
    • {@linkplain com.tools20022.repository.entity.Entry#mmValueDate * Entry.mmValueDate}
    • *
    • {@linkplain com.tools20022.repository.entity.Entry#mmBankTransactionCode * Entry.mmBankTransactionCode}
    • *
    • * {@linkplain com.tools20022.repository.entity.Entry#mmCommissionWaiverIndicator * Entry.mmCommissionWaiverIndicator}
    • *
    • {@linkplain com.tools20022.repository.entity.Entry#mmRole Entry.mmRole}
    • *
    • {@linkplain com.tools20022.repository.entity.Entry#mmAccount * Entry.mmAccount}
    • *
    • {@linkplain com.tools20022.repository.entity.Entry#mmBalance * Entry.mmBalance}
    • *
    • {@linkplain com.tools20022.repository.entity.Entry#mmEntryType * Entry.mmEntryType}
    • *
    *
  • *
  • * {@linkplain com.tools20022.metamodel.MMBusinessComponent#getAssociationDomain * associationDomain} = *
      *
    • {@linkplain com.tools20022.repository.entity.Role#mmEntry Role.mmEntry}
    • *
    • {@linkplain com.tools20022.repository.entity.Account#mmEntry * Account.mmEntry}
    • *
    • {@linkplain com.tools20022.repository.entity.Balance#mmBalanceEntry * Balance.mmBalanceEntry}
    • *
    • * {@linkplain com.tools20022.repository.entity.BankTransaction#mmRelatedEntry * BankTransaction.mmRelatedEntry}
    • *
    *
  • *
  • {@linkplain com.tools20022.metamodel.MMBusinessComponent#getSubType * subType} = *
      *
    • {@linkplain com.tools20022.repository.entity.CashEntry CashEntry}
    • *
    • {@linkplain com.tools20022.repository.entity.SecuritiesEntry * SecuritiesEntry}
    • *
    *
  • *
  • * {@linkplain com.tools20022.metamodel.MMBusinessComponent#getDerivationComponent * derivationComponent} = *
      *
    • {@linkplain com.tools20022.repository.msg.UnderlyingStatementEntry1 * UnderlyingStatementEntry1}
    • *
    • {@linkplain com.tools20022.repository.msg.EntryTransaction8 * EntryTransaction8}
    • *
    *
  • *
  • * {@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} = * "Entry"
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Posting to an account that results in an increase or decrease to a balance." *
  • *
*/ public class Entry { final static private AtomicReference mmObject_lazy = new AtomicReference<>(); protected DebitCreditCode creditDebitIndicator; /** * Indicates whether an entry is a credit or a debit. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMBusinessAttribute#getSimpleType * simpleType} = * {@linkplain com.tools20022.repository.codeset.DebitCreditCode * DebitCreditCode}
  • *
  • {@linkplain com.tools20022.metamodel.MMBusinessElement#getDerivation * derivation} = *
      *
    • * {@linkplain com.tools20022.repository.msg.AmountAndDirection35#mmCreditDebitIndicator * AmountAndDirection35.mmCreditDebitIndicator}
    • *
    • * {@linkplain com.tools20022.repository.msg.TransactionType1#mmCreditDebitIndicator * TransactionType1.mmCreditDebitIndicator}
    • *
    • * {@linkplain com.tools20022.repository.msg.ReportEntry8#mmCreditDebitIndicator * ReportEntry8.mmCreditDebitIndicator}
    • *
    • * {@linkplain com.tools20022.repository.msg.EntryTransaction8#mmCreditDebitIndicator * EntryTransaction8.mmCreditDebitIndicator}
    • *
    *
  • *
  • * {@linkplain com.tools20022.metamodel.MMBusinessElement#getElementContext * elementContext} = {@linkplain com.tools20022.repository.entity.Entry * Entry}
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "CreditDebitIndicator"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = "Indicates whether an entry is a credit or a debit."
  • *
*/ public static final MMBusinessAttribute mmCreditDebitIndicator = new MMBusinessAttribute() { { derivation_lazy = () -> Arrays.asList(AmountAndDirection35.mmCreditDebitIndicator, TransactionType1.mmCreditDebitIndicator, ReportEntry8.mmCreditDebitIndicator, EntryTransaction8.mmCreditDebitIndicator); isDerived = false; elementContext_lazy = () -> com.tools20022.repository.entity.Entry.mmObject(); registrationStatus = MMRegistrationStatus.REGISTERED; name = "CreditDebitIndicator"; definition = "Indicates whether an entry is a credit or a debit."; maxOccurs = 1; minOccurs = 1; simpleType_lazy = () -> DebitCreditCode.mmObject(); } public Method getGetterMethod() { try { return Entry.class.getMethod("getCreditDebitIndicator", new Class[]{}); } catch (NoSuchMethodException e) { throw new RuntimeException(e); } } }; protected ISODateTime entryDate; /** * Date and time at which an entry is posted to an account on the account * servicer's books. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMBusinessAttribute#getSimpleType * simpleType} = {@linkplain com.tools20022.repository.datatype.ISODateTime * ISODateTime}
  • *
  • {@linkplain com.tools20022.metamodel.MMBusinessElement#getDerivation * derivation} = *
      *
    • * {@linkplain com.tools20022.repository.msg.BalanceAdjustment1#mmPostingDate * BalanceAdjustment1.mmPostingDate}
    • *
    • {@linkplain com.tools20022.repository.msg.ReportEntry8#mmBookingDate * ReportEntry8.mmBookingDate}
    • *
    *
  • *
  • * {@linkplain com.tools20022.metamodel.MMBusinessElement#getElementContext * elementContext} = {@linkplain com.tools20022.repository.entity.Entry * Entry}
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "EntryDate"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Date and time at which an entry is posted to an account on the account servicer's books." *
  • *
*/ public static final MMBusinessAttribute mmEntryDate = new MMBusinessAttribute() { { derivation_lazy = () -> Arrays.asList(BalanceAdjustment1.mmPostingDate, ReportEntry8.mmBookingDate); isDerived = false; elementContext_lazy = () -> com.tools20022.repository.entity.Entry.mmObject(); registrationStatus = MMRegistrationStatus.REGISTERED; name = "EntryDate"; definition = "Date and time at which an entry is posted to an account on the account servicer's books."; maxOccurs = 1; minOccurs = 1; simpleType_lazy = () -> ISODateTime.mmObject(); } public Method getGetterMethod() { try { return Entry.class.getMethod("getEntryDate", new Class[]{}); } catch (NoSuchMethodException e) { throw new RuntimeException(e); } } }; protected Max35Text identification; /** * Unique and unambiguous identifier for an entry, as assigned by the * account servicer. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMBusinessAttribute#getSimpleType * simpleType} = {@linkplain com.tools20022.repository.datatype.Max35Text * Max35Text}
  • *
  • {@linkplain com.tools20022.metamodel.MMBusinessElement#getDerivation * derivation} = *
      *
    • * {@linkplain com.tools20022.repository.msg.UnderlyingStatementEntry1#mmOriginalEntryIdentification * UnderlyingStatementEntry1.mmOriginalEntryIdentification}
    • *
    • * {@linkplain com.tools20022.repository.msg.CertificateIdentification1#mmAccountServicerReference * CertificateIdentification1.mmAccountServicerReference}
    • *
    • * {@linkplain com.tools20022.repository.msg.ReportEntry8#mmEntryReference * ReportEntry8.mmEntryReference}
    • *
    • * {@linkplain com.tools20022.repository.msg.EntryTransaction8#mmReferences * EntryTransaction8.mmReferences}
    • *
    *
  • *
  • * {@linkplain com.tools20022.metamodel.MMBusinessElement#getElementContext * elementContext} = {@linkplain com.tools20022.repository.entity.Entry * Entry}
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "Identification"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Unique and unambiguous identifier for an entry, as assigned by the account servicer." *
  • *
*/ public static final MMBusinessAttribute mmIdentification = new MMBusinessAttribute() { { derivation_lazy = () -> Arrays.asList(UnderlyingStatementEntry1.mmOriginalEntryIdentification, CertificateIdentification1.mmAccountServicerReference, ReportEntry8.mmEntryReference, EntryTransaction8.mmReferences); isDerived = false; elementContext_lazy = () -> com.tools20022.repository.entity.Entry.mmObject(); registrationStatus = MMRegistrationStatus.REGISTERED; name = "Identification"; definition = "Unique and unambiguous identifier for an entry, as assigned by the account servicer."; maxOccurs = 1; minOccurs = 1; simpleType_lazy = () -> Max35Text.mmObject(); } public Method getGetterMethod() { try { return Entry.class.getMethod("getIdentification", new Class[]{}); } catch (NoSuchMethodException e) { throw new RuntimeException(e); } } }; protected Max35Text accountOwnerTransactionIdentification; /** * Unambiguous identification of the transaction as known by the account * owner (or the instructing party managing the account). *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMBusinessAttribute#getSimpleType * simpleType} = {@linkplain com.tools20022.repository.datatype.Max35Text * Max35Text}
  • *
  • {@linkplain com.tools20022.metamodel.MMBusinessElement#getDerivation * derivation} = *
      *
    • * {@linkplain com.tools20022.repository.msg.TransactionReferences3#mmAccountOwnerTransactionIdentification * TransactionReferences3.mmAccountOwnerTransactionIdentification}
    • *
    *
  • *
  • * {@linkplain com.tools20022.metamodel.MMBusinessElement#getElementContext * elementContext} = {@linkplain com.tools20022.repository.entity.Entry * Entry}
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "AccountOwnerTransactionIdentification"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Unambiguous identification of the transaction as known by the account owner (or the instructing party managing the account)." *
  • *
*/ public static final MMBusinessAttribute mmAccountOwnerTransactionIdentification = new MMBusinessAttribute() { { derivation_lazy = () -> Arrays.asList(TransactionReferences3.mmAccountOwnerTransactionIdentification); isDerived = false; elementContext_lazy = () -> com.tools20022.repository.entity.Entry.mmObject(); registrationStatus = MMRegistrationStatus.REGISTERED; name = "AccountOwnerTransactionIdentification"; definition = "Unambiguous identification of the transaction as known by the account owner (or the instructing party managing the account)."; maxOccurs = 1; minOccurs = 1; simpleType_lazy = () -> Max35Text.mmObject(); } public Method getGetterMethod() { try { return Entry.class.getMethod("getAccountOwnerTransactionIdentification", new Class[]{}); } catch (NoSuchMethodException e) { throw new RuntimeException(e); } } }; protected Max35Text accountServicerTransactionIdentification; /** * Unambiguous identification of the transaction as known by the account * servicer. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMBusinessAttribute#getSimpleType * simpleType} = {@linkplain com.tools20022.repository.datatype.Max35Text * Max35Text}
  • *
  • {@linkplain com.tools20022.metamodel.MMBusinessElement#getDerivation * derivation} = *
      *
    • * {@linkplain com.tools20022.repository.msg.TransactionReferences3#mmAccountServicerReference * TransactionReferences3.mmAccountServicerReference}
    • *
    • * {@linkplain com.tools20022.repository.msg.TransactionReferences3#mmAccountServicerTransactionIdentification * TransactionReferences3.mmAccountServicerTransactionIdentification}
    • *
    • * {@linkplain com.tools20022.repository.msg.StatementResolutionEntry2#mmAccountServicerReference * StatementResolutionEntry2.mmAccountServicerReference}
    • *
    • * {@linkplain com.tools20022.repository.msg.ReportEntry8#mmAccountServicerReference * ReportEntry8.mmAccountServicerReference}
    • *
    • * {@linkplain com.tools20022.repository.msg.PaymentTransaction80#mmAccountServicerReference * PaymentTransaction80.mmAccountServicerReference}
    • *
    • * {@linkplain com.tools20022.repository.msg.PaymentTransaction83#mmAccountServicerReference * PaymentTransaction83.mmAccountServicerReference}
    • *
    • * {@linkplain com.tools20022.repository.msg.PaymentTransaction82#mmAccountServicerReference * PaymentTransaction82.mmAccountServicerReference}
    • *
    *
  • *
  • * {@linkplain com.tools20022.metamodel.MMBusinessElement#getElementContext * elementContext} = {@linkplain com.tools20022.repository.entity.Entry * Entry}
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "AccountServicerTransactionIdentification"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Unambiguous identification of the transaction as known by the account servicer." *
  • *
*/ public static final MMBusinessAttribute mmAccountServicerTransactionIdentification = new MMBusinessAttribute() { { derivation_lazy = () -> Arrays.asList(TransactionReferences3.mmAccountServicerReference, TransactionReferences3.mmAccountServicerTransactionIdentification, StatementResolutionEntry2.mmAccountServicerReference, ReportEntry8.mmAccountServicerReference, PaymentTransaction80.mmAccountServicerReference, PaymentTransaction83.mmAccountServicerReference, PaymentTransaction82.mmAccountServicerReference); isDerived = false; elementContext_lazy = () -> com.tools20022.repository.entity.Entry.mmObject(); registrationStatus = MMRegistrationStatus.REGISTERED; name = "AccountServicerTransactionIdentification"; definition = "Unambiguous identification of the transaction as known by the account servicer."; maxOccurs = 1; minOccurs = 1; simpleType_lazy = () -> Max35Text.mmObject(); } public Method getGetterMethod() { try { return Entry.class.getMethod("getAccountServicerTransactionIdentification", new Class[]{}); } catch (NoSuchMethodException e) { throw new RuntimeException(e); } } }; protected TrueFalseIndicator reversalIndicator; /** * Indicates whether or not the entry is the result of a reversal. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMBusinessAttribute#getSimpleType * simpleType} = * {@linkplain com.tools20022.repository.datatype.TrueFalseIndicator * TrueFalseIndicator}
  • *
  • {@linkplain com.tools20022.metamodel.MMBusinessElement#getDerivation * derivation} = *
      *
    • * {@linkplain com.tools20022.repository.msg.ReportEntry8#mmReversalIndicator * ReportEntry8.mmReversalIndicator}
    • *
    *
  • *
  • * {@linkplain com.tools20022.metamodel.MMBusinessElement#getElementContext * elementContext} = {@linkplain com.tools20022.repository.entity.Entry * Entry}
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "ReversalIndicator"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Indicates whether or not the entry is the result of a reversal."
  • *
*/ public static final MMBusinessAttribute mmReversalIndicator = new MMBusinessAttribute() { { derivation_lazy = () -> Arrays.asList(ReportEntry8.mmReversalIndicator); isDerived = false; elementContext_lazy = () -> com.tools20022.repository.entity.Entry.mmObject(); registrationStatus = MMRegistrationStatus.REGISTERED; name = "ReversalIndicator"; definition = "Indicates whether or not the entry is the result of a reversal."; maxOccurs = 1; minOccurs = 1; simpleType_lazy = () -> TrueFalseIndicator.mmObject(); } public Method getGetterMethod() { try { return Entry.class.getMethod("getReversalIndicator", new Class[]{}); } catch (NoSuchMethodException e) { throw new RuntimeException(e); } } }; protected ISODateTime valueDate; /** * Date and time assets become available to the account owner (in a credit * entry), or cease to be available to the account owner (in a debit entry). *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMBusinessAttribute#getSimpleType * simpleType} = {@linkplain com.tools20022.repository.datatype.ISODateTime * ISODateTime}
  • *
  • {@linkplain com.tools20022.metamodel.MMBusinessElement#getDerivation * derivation} = *
      *
    • * {@linkplain com.tools20022.repository.msg.CashAccountCharacteristics2#mmDelayedDebitDate * CashAccountCharacteristics2.mmDelayedDebitDate}
    • *
    • {@linkplain com.tools20022.repository.msg.ReportEntry8#mmValueDate * ReportEntry8.mmValueDate}
    • *
    *
  • *
  • * {@linkplain com.tools20022.metamodel.MMBusinessElement#getElementContext * elementContext} = {@linkplain com.tools20022.repository.entity.Entry * Entry}
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "ValueDate"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Date and time assets become available to the account owner (in a credit entry), or cease to be available to the account owner (in a debit entry)." *
  • *
*/ public static final MMBusinessAttribute mmValueDate = new MMBusinessAttribute() { { derivation_lazy = () -> Arrays.asList(CashAccountCharacteristics2.mmDelayedDebitDate, ReportEntry8.mmValueDate); isDerived = false; elementContext_lazy = () -> com.tools20022.repository.entity.Entry.mmObject(); registrationStatus = MMRegistrationStatus.REGISTERED; name = "ValueDate"; definition = "Date and time assets become available to the account owner (in a credit entry), or cease to be available to the account owner (in a debit entry)."; maxOccurs = 1; minOccurs = 1; simpleType_lazy = () -> ISODateTime.mmObject(); } public Method getGetterMethod() { try { return Entry.class.getMethod("getValueDate", new Class[]{}); } catch (NoSuchMethodException e) { throw new RuntimeException(e); } } }; protected BankTransaction bankTransactionCode; /** * Type of underlying transaction resulting in the entry. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMBusinessAssociationEnd#getOpposite * opposite} = * {@linkplain com.tools20022.repository.entity.BankTransaction#mmRelatedEntry * BankTransaction.mmRelatedEntry}
  • *
  • * {@linkplain com.tools20022.metamodel.MMBusinessAssociationEnd#getAggregation * aggregation} = com.tools20022.metamodel.MMAggregation.NONE
  • *
  • * {@linkplain com.tools20022.metamodel.MMBusinessAssociationEnd#getType * type} = {@linkplain com.tools20022.repository.entity.BankTransaction * BankTransaction}
  • *
  • {@linkplain com.tools20022.metamodel.MMBusinessElement#getDerivation * derivation} = *
      *
    • * {@linkplain com.tools20022.repository.msg.ReportEntry8#mmBankTransactionCode * ReportEntry8.mmBankTransactionCode}
    • *
    • * {@linkplain com.tools20022.repository.msg.BillingServiceIdentification3#mmBankTransactionCode * BillingServiceIdentification3.mmBankTransactionCode}
    • *
    • * {@linkplain com.tools20022.repository.msg.EntryTransaction8#mmBankTransactionCode * EntryTransaction8.mmBankTransactionCode}
    • *
    *
  • *
  • * {@linkplain com.tools20022.metamodel.MMBusinessElement#getElementContext * elementContext} = {@linkplain com.tools20022.repository.entity.Entry * Entry}
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "BankTransactionCode"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = "Type of underlying transaction resulting in the entry."
  • *
*/ public static final MMBusinessAssociationEnd mmBankTransactionCode = new MMBusinessAssociationEnd() { { derivation_lazy = () -> Arrays.asList(ReportEntry8.mmBankTransactionCode, BillingServiceIdentification3.mmBankTransactionCode, EntryTransaction8.mmBankTransactionCode); isDerived = false; elementContext_lazy = () -> com.tools20022.repository.entity.Entry.mmObject(); registrationStatus = MMRegistrationStatus.REGISTERED; name = "BankTransactionCode"; definition = "Type of underlying transaction resulting in the entry."; maxOccurs = 1; minOccurs = 0; opposite_lazy = () -> com.tools20022.repository.entity.BankTransaction.mmRelatedEntry; aggregation = MMAggregation.NONE; type_lazy = () -> com.tools20022.repository.entity.BankTransaction.mmObject(); } }; protected YesNoIndicator commissionWaiverIndicator; /** * Indicates whether the transaction is exempt from commission or not. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMBusinessAttribute#getSimpleType * simpleType} = * {@linkplain com.tools20022.repository.datatype.YesNoIndicator * YesNoIndicator}
  • *
  • {@linkplain com.tools20022.metamodel.MMBusinessElement#getDerivation * derivation} = *
      *
    • * {@linkplain com.tools20022.repository.msg.ReportEntry8#mmCommissionWaiverIndicator * ReportEntry8.mmCommissionWaiverIndicator}
    • *
    *
  • *
  • * {@linkplain com.tools20022.metamodel.MMBusinessElement#getElementContext * elementContext} = {@linkplain com.tools20022.repository.entity.Entry * Entry}
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "CommissionWaiverIndicator"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Indicates whether the transaction is exempt from commission or not."
  • *
*/ public static final MMBusinessAttribute mmCommissionWaiverIndicator = new MMBusinessAttribute() { { derivation_lazy = () -> Arrays.asList(ReportEntry8.mmCommissionWaiverIndicator); isDerived = false; elementContext_lazy = () -> com.tools20022.repository.entity.Entry.mmObject(); registrationStatus = MMRegistrationStatus.REGISTERED; name = "CommissionWaiverIndicator"; definition = "Indicates whether the transaction is exempt from commission or not."; maxOccurs = 1; minOccurs = 1; simpleType_lazy = () -> YesNoIndicator.mmObject(); } public Method getGetterMethod() { try { return Entry.class.getMethod("getCommissionWaiverIndicator", new Class[]{}); } catch (NoSuchMethodException e) { throw new RuntimeException(e); } } }; protected List role; /** * Specifies the role played by a party or a system in the context of an * entry in an account. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMBusinessAssociationEnd#getOpposite * opposite} = {@linkplain com.tools20022.repository.entity.Role#mmEntry * Role.mmEntry}
  • *
  • * {@linkplain com.tools20022.metamodel.MMBusinessAssociationEnd#getAggregation * aggregation} = com.tools20022.metamodel.MMAggregation.NONE
  • *
  • * {@linkplain com.tools20022.metamodel.MMBusinessAssociationEnd#getType * type} = {@linkplain com.tools20022.repository.entity.Role Role}
  • *
  • * {@linkplain com.tools20022.metamodel.MMBusinessElement#getElementContext * elementContext} = {@linkplain com.tools20022.repository.entity.Entry * Entry}
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "Role"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Specifies the role played by a party or a system in the context of an entry in an account." *
  • *
*/ public static final MMBusinessAssociationEnd mmRole = new MMBusinessAssociationEnd() { { isDerived = false; elementContext_lazy = () -> com.tools20022.repository.entity.Entry.mmObject(); registrationStatus = MMRegistrationStatus.REGISTERED; name = "Role"; definition = "Specifies the role played by a party or a system in the context of an entry in an account."; minOccurs = 0; opposite_lazy = () -> com.tools20022.repository.entity.Role.mmEntry; aggregation = MMAggregation.NONE; type_lazy = () -> com.tools20022.repository.entity.Role.mmObject(); } }; protected List account; /** * Posting of an item to an account, that results in an increase or a * decrease to the balance of the account. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMBusinessAssociationEnd#getOpposite * opposite} = {@linkplain com.tools20022.repository.entity.Account#mmEntry * Account.mmEntry}
  • *
  • * {@linkplain com.tools20022.metamodel.MMBusinessAssociationEnd#getAggregation * aggregation} = com.tools20022.metamodel.MMAggregation.NONE
  • *
  • * {@linkplain com.tools20022.metamodel.MMBusinessAssociationEnd#getType * type} = {@linkplain com.tools20022.repository.entity.Account Account}
  • *
  • * {@linkplain com.tools20022.metamodel.MMBusinessElement#getElementContext * elementContext} = {@linkplain com.tools20022.repository.entity.Entry * Entry}
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "Account"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Posting of an item to an account, that results in an increase or a decrease to the balance of the account." *
  • *
*/ public static final MMBusinessAssociationEnd mmAccount = new MMBusinessAssociationEnd() { { isDerived = false; elementContext_lazy = () -> com.tools20022.repository.entity.Entry.mmObject(); registrationStatus = MMRegistrationStatus.REGISTERED; name = "Account"; definition = "Posting of an item to an account, that results in an increase or a decrease to the balance of the account."; minOccurs = 0; opposite_lazy = () -> com.tools20022.repository.entity.Account.mmEntry; aggregation = MMAggregation.NONE; type_lazy = () -> com.tools20022.repository.entity.Account.mmObject(); } }; protected List balance; /** * Amount that is the result of the sum of the entries from or to an * account. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMBusinessAssociationEnd#getOpposite * opposite} = * {@linkplain com.tools20022.repository.entity.Balance#mmBalanceEntry * Balance.mmBalanceEntry}
  • *
  • * {@linkplain com.tools20022.metamodel.MMBusinessAssociationEnd#getAggregation * aggregation} = com.tools20022.metamodel.MMAggregation.NONE
  • *
  • * {@linkplain com.tools20022.metamodel.MMBusinessAssociationEnd#getType * type} = {@linkplain com.tools20022.repository.entity.Balance Balance}
  • *
  • * {@linkplain com.tools20022.metamodel.MMBusinessElement#getElementContext * elementContext} = {@linkplain com.tools20022.repository.entity.Entry * Entry}
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "Balance"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = * "Amount that is the result of the sum of the entries from or to an account." *
  • *
*/ public static final MMBusinessAssociationEnd mmBalance = new MMBusinessAssociationEnd() { { isDerived = false; elementContext_lazy = () -> com.tools20022.repository.entity.Entry.mmObject(); registrationStatus = MMRegistrationStatus.REGISTERED; name = "Balance"; definition = "Amount that is the result of the sum of the entries from or to an account."; minOccurs = 0; opposite_lazy = () -> com.tools20022.repository.entity.Balance.mmBalanceEntry; aggregation = MMAggregation.NONE; type_lazy = () -> com.tools20022.repository.entity.Balance.mmObject(); } }; protected EntryCode entryType; /** * Specifies the type of an entry in a report. *

* Constant fields: *

    *
  • * {@linkplain com.tools20022.metamodel.MMBusinessAttribute#getSimpleType * simpleType} = {@linkplain com.tools20022.repository.codeset.EntryCode * EntryCode}
  • *
  • * {@linkplain com.tools20022.metamodel.MMBusinessElement#getElementContext * elementContext} = {@linkplain com.tools20022.repository.entity.Entry * Entry}
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus * registrationStatus} = * com.tools20022.metamodel.MMRegistrationStatus.REGISTERED
  • *
  • {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName * name} = "EntryType"
  • *
  • * {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition * definition} = "Specifies the type of an entry in a report."
  • *
*/ public static final MMBusinessAttribute mmEntryType = new MMBusinessAttribute() { { isDerived = false; elementContext_lazy = () -> com.tools20022.repository.entity.Entry.mmObject(); registrationStatus = MMRegistrationStatus.REGISTERED; name = "EntryType"; definition = "Specifies the type of an entry in a report."; maxOccurs = 1; minOccurs = 1; simpleType_lazy = () -> EntryCode.mmObject(); } public Method getGetterMethod() { try { return Entry.class.getMethod("getEntryType", new Class[]{}); } catch (NoSuchMethodException e) { throw new RuntimeException(e); } } }; static public MMBusinessComponent mmObject() { mmObject_lazy.compareAndSet(null, new MMBusinessComponent() { { dataDictionary_lazy = () -> GeneratedRepository.mmdataDict; registrationStatus = MMRegistrationStatus.REGISTERED; name = "Entry"; definition = "Posting to an account that results in an increase or decrease to a balance."; associationDomain_lazy = () -> Arrays.asList(com.tools20022.repository.entity.Role.mmEntry, com.tools20022.repository.entity.Account.mmEntry, com.tools20022.repository.entity.Balance.mmBalanceEntry, com.tools20022.repository.entity.BankTransaction.mmRelatedEntry); subType_lazy = () -> Arrays.asList(CashEntry.mmObject(), SecuritiesEntry.mmObject()); element_lazy = () -> Arrays.asList(com.tools20022.repository.entity.Entry.mmCreditDebitIndicator, com.tools20022.repository.entity.Entry.mmEntryDate, com.tools20022.repository.entity.Entry.mmIdentification, com.tools20022.repository.entity.Entry.mmAccountOwnerTransactionIdentification, com.tools20022.repository.entity.Entry.mmAccountServicerTransactionIdentification, com.tools20022.repository.entity.Entry.mmReversalIndicator, com.tools20022.repository.entity.Entry.mmValueDate, com.tools20022.repository.entity.Entry.mmBankTransactionCode, com.tools20022.repository.entity.Entry.mmCommissionWaiverIndicator, com.tools20022.repository.entity.Entry.mmRole, com.tools20022.repository.entity.Entry.mmAccount, com.tools20022.repository.entity.Entry.mmBalance, com.tools20022.repository.entity.Entry.mmEntryType); derivationComponent_lazy = () -> Arrays.asList(UnderlyingStatementEntry1.mmObject(), EntryTransaction8.mmObject()); } @Override public Class getInstanceClass() { return Entry.class; } }); return mmObject_lazy.get(); } public DebitCreditCode getCreditDebitIndicator() { return creditDebitIndicator; } public void setCreditDebitIndicator(DebitCreditCode creditDebitIndicator) { this.creditDebitIndicator = creditDebitIndicator; } public ISODateTime getEntryDate() { return entryDate; } public void setEntryDate(ISODateTime entryDate) { this.entryDate = entryDate; } public Max35Text getIdentification() { return identification; } public void setIdentification(Max35Text identification) { this.identification = identification; } public Max35Text getAccountOwnerTransactionIdentification() { return accountOwnerTransactionIdentification; } public void setAccountOwnerTransactionIdentification(Max35Text accountOwnerTransactionIdentification) { this.accountOwnerTransactionIdentification = accountOwnerTransactionIdentification; } public Max35Text getAccountServicerTransactionIdentification() { return accountServicerTransactionIdentification; } public void setAccountServicerTransactionIdentification(Max35Text accountServicerTransactionIdentification) { this.accountServicerTransactionIdentification = accountServicerTransactionIdentification; } public TrueFalseIndicator getReversalIndicator() { return reversalIndicator; } public void setReversalIndicator(TrueFalseIndicator reversalIndicator) { this.reversalIndicator = reversalIndicator; } public ISODateTime getValueDate() { return valueDate; } public void setValueDate(ISODateTime valueDate) { this.valueDate = valueDate; } public BankTransaction getBankTransactionCode() { return bankTransactionCode; } public void setBankTransactionCode(com.tools20022.repository.entity.BankTransaction bankTransactionCode) { this.bankTransactionCode = bankTransactionCode; } public YesNoIndicator getCommissionWaiverIndicator() { return commissionWaiverIndicator; } public void setCommissionWaiverIndicator(YesNoIndicator commissionWaiverIndicator) { this.commissionWaiverIndicator = commissionWaiverIndicator; } public List getRole() { return role; } public void setRole(List role) { this.role = role; } public List getAccount() { return account; } public void setAccount(List account) { this.account = account; } public List getBalance() { return balance; } public void setBalance(List balance) { this.balance = balance; } public EntryCode getEntryType() { return entryType; } public void setEntryType(EntryCode entryType) { this.entryType = entryType; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy