Skip to content

Commit

Permalink
PW-1947: Updated MX model with latest SWIFT SRU2024 schema update, in…
Browse files Browse the repository at this point in the history
…cluding new messages such as trck.001.001.03 (#121)
  • Loading branch information
zubri authored Aug 1, 2024
1 parent 81e93b7 commit 4a031ca
Show file tree
Hide file tree
Showing 399 changed files with 66,749 additions and 0 deletions.
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
# Prowide ISO 20022 - CHANGELOG

#### 10.2.2 - SNAPSHOT
* (PW-1947) Updated MX model with latest SWIFT SRU2024 schema update, including new messages such as trck.001.001.03

#### 10.2.1 - June 2024
* Enhanced the AppHdrFactory to honor the business service set in the parameter MxId
* Enhanced the MxParseUtils#identifyMessage to set the business service in the MxId when present
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,180 @@

package com.prowidesoftware.swift.model.mx;

import com.prowidesoftware.swift.model.mx.dic.*;
import com.prowidesoftware.swift.model.mx.AbstractMX;

import com.prowidesoftware.swift.model.MxSwiftMessage;
import com.prowidesoftware.swift.model.mx.MxRead;
import com.prowidesoftware.swift.model.mx.MxReadConfiguration;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
import jakarta.xml.bind.annotation.XmlElement;
import jakarta.xml.bind.annotation.XmlRootElement;
import jakarta.xml.bind.annotation.XmlType;
import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;


/**
* Class for auth.029.001.04 ISO 20022 message.
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "Document", propOrder = {
"derivsTradRptQry"
})
@XmlRootElement(name = "Document", namespace = "urn:iso:std:iso:20022:tech:xsd:auth.029.001.04")
public class MxAuth02900104
extends com.prowidesoftware.swift.model.mx.AbstractMX
{

@XmlElement(name = "DerivsTradRptQry", required = true)
protected DerivativesTradeReportQueryV04 derivsTradRptQry;
public static final transient String BUSINESS_PROCESS = "auth";
public static final transient int FUNCTIONALITY = 29;
public static final transient int VARIANT = 1;
public static final transient int VERSION = 4;
@SuppressWarnings("rawtypes")
public static final transient Class[] _classes = new Class[] {AddressType2Code.class, AnyMIC1Code.class, BasketQuery1 .class, CorporateSectorCriteria6 .class, DateOrBlankQuery2Choice.class, DatePeriod1 .class, DateTimeOrBlankQuery1Choice.class, DateTimePeriod1 .class, DerivativeEventType3Code.class, DerivativesTradeReportQueryV04 .class, FinancialInstrumentContractType2Code.class, FinancialPartySectorType2Code.class, Frequency14Code.class, GenericIdentification1 .class, GenericIdentification175 .class, ISINQueryCriteria1 .class, LegalPersonIdentification1 .class, ModificationLevel1Code.class, MxAuth02900104 .class, NameAndAddress5 .class, NaturalPersonIdentification2 .class, NaturalPersonIdentification3 .class, NonFinancialPartySector1Code.class, NotAvailable1Code.class, NotReported1Code.class, Operation3Code.class, OrganisationIdentification15Choice.class, OrganisationIdentification38 .class, PartyIdentification121Choice.class, PartyIdentification248Choice.class, PartyNatureType1Code.class, PostalAddress1 .class, ProductClassificationCriteria1 .class, ProductType4Code.class, SecuritiesTradeVenueCriteria1Choice.class, SecurityIdentification20Choice.class, SecurityIdentificationQuery4Choice.class, SecurityIdentificationQueryCriteria1 .class, SupplementaryData1 .class, SupplementaryDataEnvelope1 .class, TradeAdditionalQueryCriteria9 .class, TradeDateTimeQueryCriteria6 .class, TradePartyIdentificationQuery10Choice.class, TradePartyIdentificationQuery11Choice.class, TradePartyQueryCriteria7 .class, TradeQueryCriteria14 .class, TradeQueryExecutionFrequency3 .class, TradeRecurrentQuery5 .class, TradeReportQuery17Choice.class, TradeSecurityIdentificationQueryCriteria3 .class, TransactionOperationType8Code.class, UPIQueryCriteria1 .class, WeekDay3Code.class };
public static final transient String NAMESPACE = "urn:iso:std:iso:20022:tech:xsd:auth.029.001.04";

public MxAuth02900104() {
super();
}

/**
* Creates the MX object parsing the parameter String with the XML content
*
*/
public MxAuth02900104(final String xml) {
this();
MxAuth02900104 tmp = parse(xml);
derivsTradRptQry = tmp.getDerivsTradRptQry();
}

/**
* Creates the MX object parsing the raw content from the parameter MxSwiftMessage
*
*/
public MxAuth02900104(final MxSwiftMessage mxSwiftMessage) {
this(mxSwiftMessage.message());
}

/**
* Gets the value of the derivsTradRptQry property.
*
* @return
* possible object is
* {@link DerivativesTradeReportQueryV04 }
*
*/
public DerivativesTradeReportQueryV04 getDerivsTradRptQry() {
return derivsTradRptQry;
}

/**
* Sets the value of the derivsTradRptQry property.
*
* @param value
* allowed object is
* {@link DerivativesTradeReportQueryV04 }
*
*/
public MxAuth02900104 setDerivsTradRptQry(DerivativesTradeReportQueryV04 value) {
this.derivsTradRptQry = value;
return this;
}

@Override
public String getBusinessProcess() {
return BUSINESS_PROCESS;
}

@Override
public int getFunctionality() {
return FUNCTIONALITY;
}

@Override
public int getVariant() {
return VARIANT;
}

@Override
public int getVersion() {
return VERSION;
}

/**
* Creates the MX object parsing the raw content from the parameter XML, using default unmarshalling options
*
*/
public static MxAuth02900104 parse(String xml) {
return ((MxAuth02900104) com.prowidesoftware.swift.model.mx.MxReadImpl.parse(MxAuth02900104 .class, xml, _classes, new com.prowidesoftware.swift.model.mx.MxReadParams()));
}

/**
* Creates the MX object parsing the raw content from the parameter XML, using the provided unmarshalling options
* @since 9.2.6
*
*/
public static MxAuth02900104 parse(String xml, MxReadConfiguration conf) {
return ((MxAuth02900104) com.prowidesoftware.swift.model.mx.MxReadImpl.parse(MxAuth02900104 .class, xml, _classes, new com.prowidesoftware.swift.model.mx.MxReadParams(conf)));
}

/**
* Creates the MX object parsing the raw content from the parameter XML with injected read implementation
* @since 9.0.1
*
* @param parserImpl an MX unmarshall implementation
*/
public static MxAuth02900104 parse(String xml, MxRead parserImpl) {
return ((MxAuth02900104) parserImpl.read(MxAuth02900104 .class, xml, _classes));
}

@Override
public String getNamespace() {
return NAMESPACE;
}

@Override
@SuppressWarnings("rawtypes")
public Class[] getClasses() {
return _classes;
}

/**
* Creates an MxAuth02900104 messages from its JSON representation.
* <p>
* For generic conversion of JSON into the corresponding MX instance
* see {@link AbstractMX#fromJson(String)}
*
* @since 7.10.2
*
* @param json a JSON representation of an MxAuth02900104 message
* @return
* a new instance of MxAuth02900104
*/
public static final MxAuth02900104 fromJson(String json) {
return com.prowidesoftware.swift.model.mx.AbstractMX.fromJson(json, MxAuth02900104 .class);
}

@Override
public String toString() {
return ToStringBuilder.reflectionToString(this, ToStringStyle.MULTI_LINE_STYLE);
}

@Override
public boolean equals(Object that) {
return EqualsBuilder.reflectionEquals(this, that);
}

@Override
public int hashCode() {
return HashCodeBuilder.reflectionHashCode(this);
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,180 @@

package com.prowidesoftware.swift.model.mx;

import com.prowidesoftware.swift.model.mx.dic.*;
import com.prowidesoftware.swift.model.mx.AbstractMX;

import com.prowidesoftware.swift.model.MxSwiftMessage;
import com.prowidesoftware.swift.model.mx.MxRead;
import com.prowidesoftware.swift.model.mx.MxReadConfiguration;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
import jakarta.xml.bind.annotation.XmlElement;
import jakarta.xml.bind.annotation.XmlRootElement;
import jakarta.xml.bind.annotation.XmlType;
import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;


/**
* Class for auth.029.001.05 ISO 20022 message.
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "Document", propOrder = {
"derivsTradRptQry"
})
@XmlRootElement(name = "Document", namespace = "urn:iso:std:iso:20022:tech:xsd:auth.029.001.05")
public class MxAuth02900105
extends com.prowidesoftware.swift.model.mx.AbstractMX
{

@XmlElement(name = "DerivsTradRptQry", required = true)
protected DerivativesTradeReportQueryV05 derivsTradRptQry;
public static final transient String BUSINESS_PROCESS = "auth";
public static final transient int FUNCTIONALITY = 29;
public static final transient int VARIANT = 1;
public static final transient int VERSION = 5;
@SuppressWarnings("rawtypes")
public static final transient Class[] _classes = new Class[] {AddressType2Code.class, AnyMIC1Code.class, BasketQuery1 .class, CorporateSectorCriteria6 .class, DateOrBlankQuery2Choice.class, DatePeriod1 .class, DateTimeOrBlankQuery1Choice.class, DateTimePeriod1 .class, DerivativeEventType3Code.class, DerivativesTradeReportQueryV05 .class, FinancialInstrumentContractType2Code.class, FinancialPartySectorType2Code.class, Frequency14Code.class, GenericIdentification1 .class, GenericIdentification175 .class, ISINQueryCriteria1 .class, LegalPersonIdentification1 .class, ModificationLevel1Code.class, MxAuth02900105 .class, NameAndAddress5 .class, NaturalPersonIdentification2 .class, NaturalPersonIdentification3 .class, NonFinancialPartySector1Code.class, NotAvailable1Code.class, NotReported1Code.class, Operation3Code.class, OrganisationIdentification15Choice.class, OrganisationIdentification38 .class, PartyIdentification121Choice.class, PartyIdentification248Choice.class, PartyNatureType1Code.class, PostalAddress1 .class, ProductClassificationCriteria1 .class, ProductType4Code.class, SecuritiesTradeVenueCriteria1Choice.class, SecurityIdentification20Choice.class, SecurityIdentificationQuery4Choice.class, SecurityIdentificationQueryCriteria1 .class, SupplementaryData1 .class, SupplementaryDataEnvelope1 .class, TradeAdditionalQueryCriteria9 .class, TradeDateTimeQueryCriteria6 .class, TradePartyIdentificationQuery10Choice.class, TradePartyIdentificationQuery11Choice.class, TradePartyQueryCriteria7 .class, TradeQueryCriteria14 .class, TradeQueryExecutionFrequency3 .class, TradeRecurrentQuery7 .class, TradeReportQuery18Choice.class, TradeSecurityIdentificationQueryCriteria3 .class, TransactionOperationType8Code.class, UPIQueryCriteria1 .class, WeekDay3Code.class };
public static final transient String NAMESPACE = "urn:iso:std:iso:20022:tech:xsd:auth.029.001.05";

public MxAuth02900105() {
super();
}

/**
* Creates the MX object parsing the parameter String with the XML content
*
*/
public MxAuth02900105(final String xml) {
this();
MxAuth02900105 tmp = parse(xml);
derivsTradRptQry = tmp.getDerivsTradRptQry();
}

/**
* Creates the MX object parsing the raw content from the parameter MxSwiftMessage
*
*/
public MxAuth02900105(final MxSwiftMessage mxSwiftMessage) {
this(mxSwiftMessage.message());
}

/**
* Gets the value of the derivsTradRptQry property.
*
* @return
* possible object is
* {@link DerivativesTradeReportQueryV05 }
*
*/
public DerivativesTradeReportQueryV05 getDerivsTradRptQry() {
return derivsTradRptQry;
}

/**
* Sets the value of the derivsTradRptQry property.
*
* @param value
* allowed object is
* {@link DerivativesTradeReportQueryV05 }
*
*/
public MxAuth02900105 setDerivsTradRptQry(DerivativesTradeReportQueryV05 value) {
this.derivsTradRptQry = value;
return this;
}

@Override
public String getBusinessProcess() {
return BUSINESS_PROCESS;
}

@Override
public int getFunctionality() {
return FUNCTIONALITY;
}

@Override
public int getVariant() {
return VARIANT;
}

@Override
public int getVersion() {
return VERSION;
}

/**
* Creates the MX object parsing the raw content from the parameter XML, using default unmarshalling options
*
*/
public static MxAuth02900105 parse(String xml) {
return ((MxAuth02900105) com.prowidesoftware.swift.model.mx.MxReadImpl.parse(MxAuth02900105 .class, xml, _classes, new com.prowidesoftware.swift.model.mx.MxReadParams()));
}

/**
* Creates the MX object parsing the raw content from the parameter XML, using the provided unmarshalling options
* @since 9.2.6
*
*/
public static MxAuth02900105 parse(String xml, MxReadConfiguration conf) {
return ((MxAuth02900105) com.prowidesoftware.swift.model.mx.MxReadImpl.parse(MxAuth02900105 .class, xml, _classes, new com.prowidesoftware.swift.model.mx.MxReadParams(conf)));
}

/**
* Creates the MX object parsing the raw content from the parameter XML with injected read implementation
* @since 9.0.1
*
* @param parserImpl an MX unmarshall implementation
*/
public static MxAuth02900105 parse(String xml, MxRead parserImpl) {
return ((MxAuth02900105) parserImpl.read(MxAuth02900105 .class, xml, _classes));
}

@Override
public String getNamespace() {
return NAMESPACE;
}

@Override
@SuppressWarnings("rawtypes")
public Class[] getClasses() {
return _classes;
}

/**
* Creates an MxAuth02900105 messages from its JSON representation.
* <p>
* For generic conversion of JSON into the corresponding MX instance
* see {@link AbstractMX#fromJson(String)}
*
* @since 7.10.2
*
* @param json a JSON representation of an MxAuth02900105 message
* @return
* a new instance of MxAuth02900105
*/
public static final MxAuth02900105 fromJson(String json) {
return com.prowidesoftware.swift.model.mx.AbstractMX.fromJson(json, MxAuth02900105 .class);
}

@Override
public String toString() {
return ToStringBuilder.reflectionToString(this, ToStringStyle.MULTI_LINE_STYLE);
}

@Override
public boolean equals(Object that) {
return EqualsBuilder.reflectionEquals(this, that);
}

@Override
public int hashCode() {
return HashCodeBuilder.reflectionHashCode(this);
}

}
Loading

0 comments on commit 4a031ca

Please sign in to comment.