com.prowidesoftware.swift.model.mx.dic.CustomerPaymentStatusReportV05 Maven / Gradle / Ivy
Show all versions of pw-iso20022 Show documentation
package com.prowidesoftware.swift.model.mx.dic;
import java.util.ArrayList;
import java.util.List;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
import jakarta.xml.bind.annotation.XmlElement;
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;
/**
* Scope
* The CustomerPaymentStatusReport message is sent by an instructed agent to the previous party in the payment chain. It is used to inform this party about the positive or negative status of an instruction (either single or file). It is also used to report on a pending instruction.
* Usage
* The CustomerPaymentStatusReport message is exchanged between an agent and a non-financial institution customer to provide status information on instructions previously sent. Its usage will always be governed by a bilateral agreement between the agent and the non-financial institution customer.
* The CustomerPaymentStatusReport message can be used to provide information about the status (e.g. rejection, acceptance) of the initiation of a credit transfer, a direct debit, as well as on the initiation of other customer instructions.
* The CustomerPaymentStatusReport message refers to the original instruction(s) by means of references only or by means of references and a set of elements from the original instruction.
* The CustomerPaymentStatusReport message can be used in domestic and cross-border scenarios.
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "CustomerPaymentStatusReportV05", propOrder = {
"grpHdr",
"orgnlGrpInfAndSts",
"orgnlPmtInfAndSts",
"splmtryData"
})
public class CustomerPaymentStatusReportV05 {
@XmlElement(name = "GrpHdr", required = true)
protected GroupHeader52 grpHdr;
@XmlElement(name = "OrgnlGrpInfAndSts", required = true)
protected OriginalGroupHeader1 orgnlGrpInfAndSts;
@XmlElement(name = "OrgnlPmtInfAndSts")
protected List orgnlPmtInfAndSts;
@XmlElement(name = "SplmtryData")
protected List splmtryData;
/**
* Gets the value of the grpHdr property.
*
* @return
* possible object is
* {@link GroupHeader52 }
*
*/
public GroupHeader52 getGrpHdr() {
return grpHdr;
}
/**
* Sets the value of the grpHdr property.
*
* @param value
* allowed object is
* {@link GroupHeader52 }
*
*/
public CustomerPaymentStatusReportV05 setGrpHdr(GroupHeader52 value) {
this.grpHdr = value;
return this;
}
/**
* Gets the value of the orgnlGrpInfAndSts property.
*
* @return
* possible object is
* {@link OriginalGroupHeader1 }
*
*/
public OriginalGroupHeader1 getOrgnlGrpInfAndSts() {
return orgnlGrpInfAndSts;
}
/**
* Sets the value of the orgnlGrpInfAndSts property.
*
* @param value
* allowed object is
* {@link OriginalGroupHeader1 }
*
*/
public CustomerPaymentStatusReportV05 setOrgnlGrpInfAndSts(OriginalGroupHeader1 value) {
this.orgnlGrpInfAndSts = value;
return this;
}
/**
* Gets the value of the orgnlPmtInfAndSts property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the Jakarta XML Binding object.
* This is why there is not a {@code set} method for the orgnlPmtInfAndSts property.
*
*
* For example, to add a new item, do as follows:
*
* getOrgnlPmtInfAndSts().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link OriginalPaymentInstruction6 }
*
*
* @return
* The value of the orgnlPmtInfAndSts property.
*/
public List getOrgnlPmtInfAndSts() {
if (orgnlPmtInfAndSts == null) {
orgnlPmtInfAndSts = new ArrayList<>();
}
return this.orgnlPmtInfAndSts;
}
/**
* Gets the value of the splmtryData property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the Jakarta XML Binding object.
* This is why there is not a {@code set} method for the splmtryData property.
*
*
* For example, to add a new item, do as follows:
*
* getSplmtryData().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link SupplementaryData1 }
*
*
* @return
* The value of the splmtryData property.
*/
public List getSplmtryData() {
if (splmtryData == null) {
splmtryData = new ArrayList<>();
}
return this.splmtryData;
}
@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);
}
/**
* Adds a new item to the orgnlPmtInfAndSts list.
* @see #getOrgnlPmtInfAndSts()
*
*/
public CustomerPaymentStatusReportV05 addOrgnlPmtInfAndSts(OriginalPaymentInstruction6 orgnlPmtInfAndSts) {
getOrgnlPmtInfAndSts().add(orgnlPmtInfAndSts);
return this;
}
/**
* Adds a new item to the splmtryData list.
* @see #getSplmtryData()
*
*/
public CustomerPaymentStatusReportV05 addSplmtryData(SupplementaryData1 splmtryData) {
getSplmtryData().add(splmtryData);
return this;
}
}