com.prowidesoftware.swift.model.mx.dic.AccountOpeningInstructionV07 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 AccountOpeningInstruction message is sent by an account owner, for example, an investor or its designated agent to the account servicer, for example, a registrar, transfer agent, custodian or securities depository, to instruct the opening of an account or the opening of an account and the establishment of an investment plan.
* Usage
* The AccountOpeningInstruction is used to open an account directly or indirectly with the account servicer or an intermediary.
* In some markets, for example, Australia, and for some products in the United Kingdom, a first order (also known as a deposit instruction) is placed at the same time as the account opening. To cater for this scenario, an order message can be linked (via references in the message) to the AccountOpeningInstruction message when needed.
* Execution of the AccountOpeningInstruction is confirmed via an AccountDetailsConfirmation message.
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "AccountOpeningInstructionV07", propOrder = {
"msgId",
"ordrRef",
"prvsRef",
"instrDtls",
"invstmtAcct",
"acctPties",
"intrmies",
"plcmnt",
"newIsseAllcn",
"svgsInvstmtPlan",
"wdrwlInvstmtPlan",
"cshSttlm",
"svcLvlAgrmt",
"addtlInf",
"mktPrctcVrsn",
"xtnsn"
})
public class AccountOpeningInstructionV07 {
@XmlElement(name = "MsgId", required = true)
protected MessageIdentification1 msgId;
@XmlElement(name = "OrdrRef")
protected InvestmentFundOrder4 ordrRef;
@XmlElement(name = "PrvsRef")
protected AdditionalReference6 prvsRef;
@XmlElement(name = "InstrDtls", required = true)
protected InvestmentAccountOpening3 instrDtls;
@XmlElement(name = "InvstmtAcct", required = true)
protected InvestmentAccount61 invstmtAcct;
@XmlElement(name = "AcctPties", required = true)
protected AccountParties15 acctPties;
@XmlElement(name = "Intrmies")
protected List intrmies;
@XmlElement(name = "Plcmnt")
protected ReferredAgent2 plcmnt;
@XmlElement(name = "NewIsseAllcn")
protected NewIssueAllocation2 newIsseAllcn;
@XmlElement(name = "SvgsInvstmtPlan")
protected List svgsInvstmtPlan;
@XmlElement(name = "WdrwlInvstmtPlan")
protected List wdrwlInvstmtPlan;
@XmlElement(name = "CshSttlm")
protected List cshSttlm;
@XmlElement(name = "SvcLvlAgrmt")
protected List svcLvlAgrmt;
@XmlElement(name = "AddtlInf")
protected List addtlInf;
@XmlElement(name = "MktPrctcVrsn")
protected MarketPracticeVersion1 mktPrctcVrsn;
@XmlElement(name = "Xtnsn")
protected List xtnsn;
/**
* Gets the value of the msgId property.
*
* @return
* possible object is
* {@link MessageIdentification1 }
*
*/
public MessageIdentification1 getMsgId() {
return msgId;
}
/**
* Sets the value of the msgId property.
*
* @param value
* allowed object is
* {@link MessageIdentification1 }
*
*/
public AccountOpeningInstructionV07 setMsgId(MessageIdentification1 value) {
this.msgId = value;
return this;
}
/**
* Gets the value of the ordrRef property.
*
* @return
* possible object is
* {@link InvestmentFundOrder4 }
*
*/
public InvestmentFundOrder4 getOrdrRef() {
return ordrRef;
}
/**
* Sets the value of the ordrRef property.
*
* @param value
* allowed object is
* {@link InvestmentFundOrder4 }
*
*/
public AccountOpeningInstructionV07 setOrdrRef(InvestmentFundOrder4 value) {
this.ordrRef = value;
return this;
}
/**
* Gets the value of the prvsRef property.
*
* @return
* possible object is
* {@link AdditionalReference6 }
*
*/
public AdditionalReference6 getPrvsRef() {
return prvsRef;
}
/**
* Sets the value of the prvsRef property.
*
* @param value
* allowed object is
* {@link AdditionalReference6 }
*
*/
public AccountOpeningInstructionV07 setPrvsRef(AdditionalReference6 value) {
this.prvsRef = value;
return this;
}
/**
* Gets the value of the instrDtls property.
*
* @return
* possible object is
* {@link InvestmentAccountOpening3 }
*
*/
public InvestmentAccountOpening3 getInstrDtls() {
return instrDtls;
}
/**
* Sets the value of the instrDtls property.
*
* @param value
* allowed object is
* {@link InvestmentAccountOpening3 }
*
*/
public AccountOpeningInstructionV07 setInstrDtls(InvestmentAccountOpening3 value) {
this.instrDtls = value;
return this;
}
/**
* Gets the value of the invstmtAcct property.
*
* @return
* possible object is
* {@link InvestmentAccount61 }
*
*/
public InvestmentAccount61 getInvstmtAcct() {
return invstmtAcct;
}
/**
* Sets the value of the invstmtAcct property.
*
* @param value
* allowed object is
* {@link InvestmentAccount61 }
*
*/
public AccountOpeningInstructionV07 setInvstmtAcct(InvestmentAccount61 value) {
this.invstmtAcct = value;
return this;
}
/**
* Gets the value of the acctPties property.
*
* @return
* possible object is
* {@link AccountParties15 }
*
*/
public AccountParties15 getAcctPties() {
return acctPties;
}
/**
* Sets the value of the acctPties property.
*
* @param value
* allowed object is
* {@link AccountParties15 }
*
*/
public AccountOpeningInstructionV07 setAcctPties(AccountParties15 value) {
this.acctPties = value;
return this;
}
/**
* Gets the value of the intrmies 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 intrmies property.
*
*
* For example, to add a new item, do as follows:
*
* getIntrmies().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link Intermediary36 }
*
*
* @return
* The value of the intrmies property.
*/
public List getIntrmies() {
if (intrmies == null) {
intrmies = new ArrayList<>();
}
return this.intrmies;
}
/**
* Gets the value of the plcmnt property.
*
* @return
* possible object is
* {@link ReferredAgent2 }
*
*/
public ReferredAgent2 getPlcmnt() {
return plcmnt;
}
/**
* Sets the value of the plcmnt property.
*
* @param value
* allowed object is
* {@link ReferredAgent2 }
*
*/
public AccountOpeningInstructionV07 setPlcmnt(ReferredAgent2 value) {
this.plcmnt = value;
return this;
}
/**
* Gets the value of the newIsseAllcn property.
*
* @return
* possible object is
* {@link NewIssueAllocation2 }
*
*/
public NewIssueAllocation2 getNewIsseAllcn() {
return newIsseAllcn;
}
/**
* Sets the value of the newIsseAllcn property.
*
* @param value
* allowed object is
* {@link NewIssueAllocation2 }
*
*/
public AccountOpeningInstructionV07 setNewIsseAllcn(NewIssueAllocation2 value) {
this.newIsseAllcn = value;
return this;
}
/**
* Gets the value of the svgsInvstmtPlan 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 svgsInvstmtPlan property.
*
*
* For example, to add a new item, do as follows:
*
* getSvgsInvstmtPlan().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link InvestmentPlan14 }
*
*
* @return
* The value of the svgsInvstmtPlan property.
*/
public List getSvgsInvstmtPlan() {
if (svgsInvstmtPlan == null) {
svgsInvstmtPlan = new ArrayList<>();
}
return this.svgsInvstmtPlan;
}
/**
* Gets the value of the wdrwlInvstmtPlan 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 wdrwlInvstmtPlan property.
*
*
* For example, to add a new item, do as follows:
*
* getWdrwlInvstmtPlan().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link InvestmentPlan14 }
*
*
* @return
* The value of the wdrwlInvstmtPlan property.
*/
public List getWdrwlInvstmtPlan() {
if (wdrwlInvstmtPlan == null) {
wdrwlInvstmtPlan = new ArrayList<>();
}
return this.wdrwlInvstmtPlan;
}
/**
* Gets the value of the cshSttlm 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 cshSttlm property.
*
*
* For example, to add a new item, do as follows:
*
* getCshSttlm().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link CashSettlement1 }
*
*
* @return
* The value of the cshSttlm property.
*/
public List getCshSttlm() {
if (cshSttlm == null) {
cshSttlm = new ArrayList<>();
}
return this.cshSttlm;
}
/**
* Gets the value of the svcLvlAgrmt 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 svcLvlAgrmt property.
*
*
* For example, to add a new item, do as follows:
*
* getSvcLvlAgrmt().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link DocumentToSend3 }
*
*
* @return
* The value of the svcLvlAgrmt property.
*/
public List getSvcLvlAgrmt() {
if (svcLvlAgrmt == null) {
svcLvlAgrmt = new ArrayList<>();
}
return this.svcLvlAgrmt;
}
/**
* Gets the value of the addtlInf 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 addtlInf property.
*
*
* For example, to add a new item, do as follows:
*
* getAddtlInf().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link AdditiononalInformation12 }
*
*
* @return
* The value of the addtlInf property.
*/
public List getAddtlInf() {
if (addtlInf == null) {
addtlInf = new ArrayList<>();
}
return this.addtlInf;
}
/**
* Gets the value of the mktPrctcVrsn property.
*
* @return
* possible object is
* {@link MarketPracticeVersion1 }
*
*/
public MarketPracticeVersion1 getMktPrctcVrsn() {
return mktPrctcVrsn;
}
/**
* Sets the value of the mktPrctcVrsn property.
*
* @param value
* allowed object is
* {@link MarketPracticeVersion1 }
*
*/
public AccountOpeningInstructionV07 setMktPrctcVrsn(MarketPracticeVersion1 value) {
this.mktPrctcVrsn = value;
return this;
}
/**
* Gets the value of the xtnsn 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 xtnsn property.
*
*
* For example, to add a new item, do as follows:
*
* getXtnsn().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link Extension1 }
*
*
* @return
* The value of the xtnsn property.
*/
public List getXtnsn() {
if (xtnsn == null) {
xtnsn = new ArrayList<>();
}
return this.xtnsn;
}
@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 intrmies list.
* @see #getIntrmies()
*
*/
public AccountOpeningInstructionV07 addIntrmies(Intermediary36 intrmies) {
getIntrmies().add(intrmies);
return this;
}
/**
* Adds a new item to the svgsInvstmtPlan list.
* @see #getSvgsInvstmtPlan()
*
*/
public AccountOpeningInstructionV07 addSvgsInvstmtPlan(InvestmentPlan14 svgsInvstmtPlan) {
getSvgsInvstmtPlan().add(svgsInvstmtPlan);
return this;
}
/**
* Adds a new item to the wdrwlInvstmtPlan list.
* @see #getWdrwlInvstmtPlan()
*
*/
public AccountOpeningInstructionV07 addWdrwlInvstmtPlan(InvestmentPlan14 wdrwlInvstmtPlan) {
getWdrwlInvstmtPlan().add(wdrwlInvstmtPlan);
return this;
}
/**
* Adds a new item to the cshSttlm list.
* @see #getCshSttlm()
*
*/
public AccountOpeningInstructionV07 addCshSttlm(CashSettlement1 cshSttlm) {
getCshSttlm().add(cshSttlm);
return this;
}
/**
* Adds a new item to the svcLvlAgrmt list.
* @see #getSvcLvlAgrmt()
*
*/
public AccountOpeningInstructionV07 addSvcLvlAgrmt(DocumentToSend3 svcLvlAgrmt) {
getSvcLvlAgrmt().add(svcLvlAgrmt);
return this;
}
/**
* Adds a new item to the addtlInf list.
* @see #getAddtlInf()
*
*/
public AccountOpeningInstructionV07 addAddtlInf(AdditiononalInformation12 addtlInf) {
getAddtlInf().add(addtlInf);
return this;
}
/**
* Adds a new item to the xtnsn list.
* @see #getXtnsn()
*
*/
public AccountOpeningInstructionV07 addXtnsn(Extension1 xtnsn) {
getXtnsn().add(xtnsn);
return this;
}
}