com.tools20022.repository.msg.GroupHeader59 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.MMMessageAssociationEnd;
import com.tools20022.metamodel.MMMessageAttribute;
import com.tools20022.metamodel.MMMessageComponent;
import com.tools20022.metamodel.MMRegistrationStatus;
import com.tools20022.repository.area.camt.AccountReportingRequestV03;
import com.tools20022.repository.area.camt.NotificationToReceiveCancellationAdviceV05;
import com.tools20022.repository.area.camt.NotificationToReceiveV05;
import com.tools20022.repository.choice.Party12Choice;
import com.tools20022.repository.datatype.ISODateTime;
import com.tools20022.repository.datatype.Max35Text;
import com.tools20022.repository.entity.Payment;
import com.tools20022.repository.entity.PaymentExecution;
import com.tools20022.repository.entity.PaymentIdentification;
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 further details on the message.
*
* Constant fields:
*
* -
* {@linkplain com.tools20022.metamodel.MMMessageElementContainer#getMessageElement
* messageElement} =
*
* -
* {@linkplain com.tools20022.repository.msg.GroupHeader59#mmMessageIdentification
* GroupHeader59.mmMessageIdentification}
* -
* {@linkplain com.tools20022.repository.msg.GroupHeader59#mmCreationDateTime
* GroupHeader59.mmCreationDateTime}
* - {@linkplain com.tools20022.repository.msg.GroupHeader59#mmMessageSender
* GroupHeader59.mmMessageSender}
*
*
* - {@linkplain com.tools20022.metamodel.MMMessageComponentType#getTrace
* trace} = {@linkplain com.tools20022.repository.entity.Payment Payment}
* -
* {@linkplain com.tools20022.metamodel.MMMessageComponentType#getMessageBuildingBlock
* messageBuildingBlock} =
*
* -
* {@linkplain com.tools20022.repository.area.camt.AccountReportingRequestV03#mmGroupHeader
* AccountReportingRequestV03.mmGroupHeader}
* -
* {@linkplain com.tools20022.repository.area.camt.NotificationToReceiveCancellationAdviceV05#mmGroupHeader
* NotificationToReceiveCancellationAdviceV05.mmGroupHeader}
* -
* {@linkplain com.tools20022.repository.area.camt.NotificationToReceiveV05#mmGroupHeader
* NotificationToReceiveV05.mmGroupHeader}
*
*
* -
* {@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} =
* "GroupHeader59"
* - {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition
* definition} = "Provides further details on the message."
*
*/
@XmlAccessorType(XmlAccessType.PROPERTY)
@XmlType(name = "GroupHeader59", propOrder = {"messageIdentification", "creationDateTime", "messageSender"})
public class GroupHeader59 {
final static private AtomicReference mmObject_lazy = new AtomicReference<>();
protected Max35Text messageIdentification;
/**
* Point to point reference, as assigned by the account owner or the party
* authorised to send the message, and sent to the account servicing
* institution, to unambiguously identify the message. Usage: The sender has
* to make sure that 'MessageIdentification' is unique per account servicing
* institution for a pre-agreed period.
*
* Constant fields:
*
* -
* {@linkplain com.tools20022.metamodel.MMMessageAttribute#getSimpleType
* simpleType} = {@linkplain com.tools20022.repository.datatype.Max35Text
* Max35Text}
* -
* {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace
* businessElementTrace} =
* {@linkplain com.tools20022.repository.entity.PaymentIdentification#mmExecutionIdentification
* PaymentIdentification.mmExecutionIdentification}
* -
* {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext
* componentContext} =
* {@linkplain com.tools20022.repository.msg.GroupHeader59 GroupHeader59}
* - {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag
* xmlTag} = "MsgId"
* -
* {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus
* registrationStatus} =
* com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
* - {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName
* name} = "MessageIdentification"
* -
* {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition
* definition} =
* "Point to point reference, as assigned by the account owner or the party authorised to send the message, and sent to the account servicing institution, to unambiguously identify the message.\nUsage: The sender has to make sure that 'MessageIdentification' is unique per account servicing institution for a pre-agreed period."
*
*
*/
public static final MMMessageAttribute mmMessageIdentification = new MMMessageAttribute() {
{
businessElementTrace_lazy = () -> PaymentIdentification.mmExecutionIdentification;
componentContext_lazy = () -> GroupHeader59.mmObject();
isDerived = false;
xmlTag = "MsgId";
registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED;
name = "MessageIdentification";
definition = "Point to point reference, as assigned by the account owner or the party authorised to send the message, and sent to the account servicing institution, to unambiguously identify the message.\nUsage: The sender has to make sure that 'MessageIdentification' is unique per account servicing institution for a pre-agreed period.";
maxOccurs = 1;
minOccurs = 1;
simpleType_lazy = () -> Max35Text.mmObject();
}
};
protected ISODateTime creationDateTime;
/**
* Date and time at which the message was created.
*
* Constant fields:
*
* -
* {@linkplain com.tools20022.metamodel.MMMessageAttribute#getSimpleType
* simpleType} = {@linkplain com.tools20022.repository.datatype.ISODateTime
* ISODateTime}
* -
* {@linkplain com.tools20022.metamodel.MMMessageElement#getBusinessElementTrace
* businessElementTrace} =
* {@linkplain com.tools20022.repository.entity.PaymentExecution#mmCreationDate
* PaymentExecution.mmCreationDate}
* -
* {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext
* componentContext} =
* {@linkplain com.tools20022.repository.msg.GroupHeader59 GroupHeader59}
* - {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag
* xmlTag} = "CreDtTm"
* -
* {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus
* registrationStatus} =
* com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
* - {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName
* name} = "CreationDateTime"
* -
* {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition
* definition} = "Date and time at which the message was created."
*
*/
public static final MMMessageAttribute mmCreationDateTime = new MMMessageAttribute() {
{
businessElementTrace_lazy = () -> PaymentExecution.mmCreationDate;
componentContext_lazy = () -> GroupHeader59.mmObject();
isDerived = false;
xmlTag = "CreDtTm";
registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED;
name = "CreationDateTime";
definition = "Date and time at which the message was created.";
maxOccurs = 1;
minOccurs = 1;
simpleType_lazy = () -> ISODateTime.mmObject();
}
};
protected Party12Choice messageSender;
/**
* Identification of the party that is sending the message, when different
* from the account owner.
*
* Constant fields:
*
* - {@linkplain com.tools20022.metamodel.MMMessageAssociationEnd#getType
* type} = {@linkplain com.tools20022.repository.choice.Party12Choice
* Party12Choice}
* -
* {@linkplain com.tools20022.metamodel.MMMessageElement#getComponentContext
* componentContext} =
* {@linkplain com.tools20022.repository.msg.GroupHeader59 GroupHeader59}
* - {@linkplain com.tools20022.metamodel.MMMessageConstruct#getXmlTag
* xmlTag} = "MsgSndr"
* -
* {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getRegistrationStatus
* registrationStatus} =
* com.tools20022.metamodel.MMRegistrationStatus.PROVISIONALLY_REGISTERED
* - {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getName
* name} = "MessageSender"
* -
* {@linkplain com.tools20022.metamodel.MMRepositoryConcept#getDefinition
* definition} =
* "Identification of the party that is sending the message, when different from the account owner."
*
*
*/
public static final MMMessageAssociationEnd mmMessageSender = new MMMessageAssociationEnd() {
{
componentContext_lazy = () -> GroupHeader59.mmObject();
isDerived = false;
xmlTag = "MsgSndr";
registrationStatus = MMRegistrationStatus.PROVISIONALLY_REGISTERED;
name = "MessageSender";
definition = "Identification of the party that is sending the message, when different from the account owner.";
maxOccurs = 1;
minOccurs = 0;
isComposite = true;
type_lazy = () -> Party12Choice.mmObject();
}
};
final static public MMMessageComponent mmObject() {
mmObject_lazy.compareAndSet(null, new MMMessageComponent() {
{
messageElement_lazy = () -> Arrays.asList(GroupHeader59.mmMessageIdentification, GroupHeader59.mmCreationDateTime, GroupHeader59.mmMessageSender);
messageBuildingBlock_lazy = () -> Arrays.asList(AccountReportingRequestV03.mmGroupHeader, NotificationToReceiveCancellationAdviceV05.mmGroupHeader, NotificationToReceiveV05.mmGroupHeader);
trace_lazy = () -> Payment.mmObject();
dataDictionary_lazy = () -> GeneratedRepository.mmdataDict;
registrationStatus = MMRegistrationStatus.REGISTERED;
name = "GroupHeader59";
definition = "Provides further details on the message.";
}
});
return mmObject_lazy.get();
}
@XmlElement(name = "MsgId", required = true)
public Max35Text getMessageIdentification() {
return messageIdentification;
}
public void setMessageIdentification(Max35Text messageIdentification) {
this.messageIdentification = messageIdentification;
}
@XmlElement(name = "CreDtTm", required = true)
public ISODateTime getCreationDateTime() {
return creationDateTime;
}
public void setCreationDateTime(ISODateTime creationDateTime) {
this.creationDateTime = creationDateTime;
}
@XmlElement(name = "MsgSndr")
public Party12Choice getMessageSender() {
return messageSender;
}
public void setMessageSender(Party12Choice messageSender) {
this.messageSender = messageSender;
}
}