@Generated public class Field61 extends Field implements java.io.Serializable, AmountContainer, DateContainer, MultiLineField
Model and parser for field 61 of a SWIFT MT message.
Subfields (components) Data types
Calendar
Calendar
String
String
BigDecimal
String
String
String
String
String
Structure definition
CUSTOM
CUSTOM
EJSSNSSSSS
This class complies with standard release SRU2023
Modifier and Type | Field and Description |
---|---|
static java.lang.Integer |
AMOUNT
Component number for the Amount subfield.
|
static java.lang.String |
COMPONENTS_PATTERN
Deprecated.
Use
typesPattern() method instead. |
static java.lang.Integer |
DATE
Alternative constant name for field's Value Date Component number.
|
static java.lang.Integer |
DC_MARK
Deprecated.
use #DEBITCREDIT_MARK instead
|
static java.lang.Integer |
DEBITCREDIT_MARK
Component number for the Debit/Credit Mark subfield.
|
static java.lang.Integer |
ENTRY_DATE
Component number for the Entry Date subfield.
|
static java.lang.String |
F_61
Same as NAME, intended to be clear when using static imports.
|
static java.lang.Integer |
FUNDS_CODE
Component number for the Funds Code subfield.
|
static java.lang.Integer |
IDENTIFICATION_CODE
Component number for the Identification Code subfield.
|
static java.lang.String |
NAME
Constant with the field name 61.
|
static java.lang.String |
PARSER_PATTERN
Deprecated.
Use
parserPattern() method instead. |
static java.lang.Integer |
REFERENCE_FOR_THE_ACCOUNT_OWNER
Component number for the Reference For The Account Owner subfield.
|
static java.lang.Integer |
REFERENCE_OF_THE_ACCOUNT_SERVICING_INSTITUTION
Component number for the Reference Of The Account Servicing Institution subfield.
|
static int |
SRU
Constant identifying the SRU to which this class belongs to.
|
static java.lang.Integer |
SUPPLEMENTARY_DETAILS
Component number for the Supplementary Details subfield.
|
static java.lang.Integer |
TRANSACTION_TYPE
Component number for the Transaction Type subfield.
|
static java.lang.String |
TYPES_PATTERN
Deprecated.
Use
typesPattern() method instead. |
static java.lang.Integer |
VALUE_DATE
Component number for the Value Date subfield.
|
components, labelMap
Constructor and Description |
---|
Field61()
Default constructor.
|
Field61(java.lang.String value)
Creates a new field and initializes its components with content from the parameter value.
|
Field61(Tag tag)
Creates a new field and initializes its components with content from the parameter tag.
|
Modifier and Type | Method and Description |
---|---|
java.math.BigDecimal |
amount()
Returns the first amounts as BigDecimal
|
java.util.List<java.math.BigDecimal> |
amounts()
Returns the list of all NON-NULL amounts as BigDecimal
|
java.lang.String |
componentsPattern()
Deprecated.
Use
typesPattern() instead. |
int |
componentsSize()
Returns the defined amount of components.
This is not the amount of components present in the field instance, but the total amount of components that this field accepts as defined. |
java.util.Calendar |
date()
Returns the first component that can be converted to a Calendar
|
java.util.List<java.util.Calendar> |
dates()
Returns all components that can be converted to a Calendar
|
static Tag |
emptyTag()
Create a Tag with this field name and an empty string as value.
|
static Field61 |
fromJson(java.lang.String json)
This method deserializes the JSON data into a Field61 object.
|
static Field61 |
get(SwiftMessage msg)
Gets the first instance of Field61 in the given message.
|
static Field61 |
get(SwiftTagListBlock block)
Gets the first occurrence form the tag list or null if not found.
|
static java.util.List<Field61> |
getAll(SwiftMessage msg)
Gets a list of all occurrences of the field Field61 in the given message
an empty list is returned if none found.
|
static java.util.List<Field61> |
getAll(SwiftTagListBlock block)
Gets a list of all occurrences of the field Field61 from the given block
an empty list is returned if none found.
|
java.lang.String |
getAmount()
Gets the Amount (component 5).
|
java.math.BigDecimal |
getAmountAsBigDecimal()
Get the Amount (component 5) as BigDecimal
|
java.lang.Number |
getAmountAsNumber()
Deprecated.
use #getAmountAsBigDecimal() instead
|
java.lang.String |
getComponent1()
Gets the component 1 (Value Date).
|
java.lang.String |
getComponent10()
Gets the component 10 (Supplementary Details).
|
java.util.Calendar |
getComponent1AsCalendar()
Get the component 1 as Calendar
|
java.lang.String |
getComponent2()
Gets the component 2 (Entry Date).
|
java.util.Calendar |
getComponent2AsCalendar()
Get the component 2 as Calendar
|
java.lang.String |
getComponent3()
Gets the component 3 (Debit/Credit Mark).
|
java.lang.String |
getComponent4()
Gets the component 4 (Funds Code).
|
java.lang.String |
getComponent5()
Gets the component 5 (Amount).
|
java.math.BigDecimal |
getComponent5AsBigDecimal()
Get the component 5 as BigDecimal
|
java.lang.Number |
getComponent5AsNumber()
Deprecated.
use #getComponent5AsBigDecimal() instead
|
java.lang.String |
getComponent6()
Gets the component 6 (Transaction Type).
|
java.lang.String |
getComponent7()
Gets the component 7 (Identification Code).
|
java.lang.String |
getComponent8()
Gets the component 8 (Reference For The Account Owner).
|
java.lang.String |
getComponent9()
Gets the component 9 (Reference Of The Account Servicing Institution).
|
java.util.List<java.lang.String> |
getComponentLabels()
Returns english label for components.
|
protected java.util.Map<java.lang.Integer,java.lang.String> |
getComponentMap()
Returns a mapping between component numbers and their label in camel case format.
|
java.lang.String |
getDate()
Deprecated.
use #getValueDate() instead
|
java.util.Calendar |
getDateAsCalendar()
Deprecated.
use #getValueDateAsCalendar() instead
|
java.lang.String |
getDCMark()
Deprecated.
use #getDebitCreditMark() instead
|
java.lang.String |
getDebitCreditMark()
Gets the Debit/Credit Mark (component 3).
|
java.lang.String |
getEntryDate()
Gets the Entry Date (component 2).
|
java.util.Calendar |
getEntryDateAsCalendar()
Get the Entry Date (component 2) as Calendar
|
java.lang.String |
getFundsCode()
Gets the Funds Code (component 4).
|
java.lang.String |
getIdentificationCode()
Gets the Identification Code (component 7).
|
protected java.util.Map<java.lang.String,java.lang.Integer> |
getLabelMap()
Returns a mapping between component labels and the internal component number.
|
java.lang.String |
getLine(int line)
Returns a specific line from the field's value.
|
java.lang.String |
getLine(int line,
int offset)
Returns a specific line from the field's value.
|
java.util.List<java.lang.String> |
getLines()
Returns the field value split into lines.
|
java.util.List<java.lang.String> |
getLines(int offset)
Returns the field value starting at the offset component, split into lines.
|
java.util.List<java.lang.String> |
getLinesBetween(int start,
int end)
Returns a specific subset of lines from the field's value, given a range.
|
java.util.List<java.lang.String> |
getLinesBetween(int start,
int end,
int offset)
Returns a specific subset of lines from the field's value, starting at the offset component.
|
java.lang.String |
getName()
Returns the field's name composed by the field number and the letter option (if any).
|
java.lang.String |
getReferenceForTheAccountOwner()
Gets the Reference For The Account Owner (component 8).
|
java.lang.String |
getReferenceOfTheAccountServicingInstitution()
Gets the Reference Of The Account Servicing Institution (component 9).
|
java.lang.String |
getSupplementaryDetails()
Gets the Supplementary Details (component 10).
|
java.lang.String |
getTransactionType()
Gets the Transaction Type (component 6).
|
java.lang.String |
getValue()
Serializes the fields' components into the single string value (SWIFT format)
|
java.lang.String |
getValueDate()
Gets the Value Date (component 1).
|
java.util.Calendar |
getValueDateAsCalendar()
Get the Value Date (component 1) as Calendar
|
java.lang.String |
getValueDisplay(int component,
java.util.Locale locale)
Returns a localized suitable for showing to humans string of a field component.
|
boolean |
isGeneric()
Returns true if the field is a GENERIC FIELD as specified by the standard.
|
boolean |
isOptional(int component)
Given a component number it returns true if the component is optional,
regardless of the field being mandatory in a particular message.
Being the field's value conformed by a composition of one or several internal component values, the field may be present in a message with a proper value but with some of its internal components not set. |
static Field61 |
newInstance(Field61 source)
Copy constructor.
|
void |
parse(java.lang.String value)
Parses the parameter value into the internal components structure.
|
protected void |
parseCustom(java.lang.String value)
Custom parser for Field61.
|
java.lang.String |
parserPattern()
Returns the field parser pattern.
|
Field61 |
setAmount(java.math.BigDecimal component5)
Set the Amount (component 5) from a BigDecimal object.
|
Field61 |
setAmount(java.lang.Number component5)
Alternative method setter for field's Amount (component 5) as as Number
This method supports java constant value boxing for simpler coding styles (ex: 10 becomes an Integer)
|
Field61 |
setAmount(java.lang.String component5)
Set the Amount (component 5).
|
Field61 |
setComponent1(java.util.Calendar component1)
Set the component1 from a Calendar object.
|
Field61 |
setComponent1(java.lang.String component1)
Set the component 1 (Value Date).
|
Field61 |
setComponent10(java.lang.String component10)
Set the component 10 (Supplementary Details).
|
Field61 |
setComponent2(java.util.Calendar component2)
Set the component2 from a Calendar object.
|
Field61 |
setComponent2(java.lang.String component2)
Set the component 2 (Entry Date).
|
Field61 |
setComponent3(java.lang.String component3)
Set the component 3 (Debit/Credit Mark).
|
Field61 |
setComponent4(java.lang.String component4)
Set the component 4 (Funds Code).
|
Field61 |
setComponent5(java.math.BigDecimal component5)
Set the component5 from a BigDecimal object.
|
Field61 |
setComponent5(java.lang.Number component5)
Alternative method setter for field's Amount (component 5) as as Number
This method supports java constant value boxing for simpler coding styles (ex: 10.0 becomes an Float)
|
Field61 |
setComponent5(java.lang.String component5)
Set the component 5 (Amount).
|
Field61 |
setComponent6(java.lang.String component6)
Set the component 6 (Transaction Type).
|
Field61 |
setComponent7(java.lang.String component7)
Set the component 7 (Identification Code).
|
Field61 |
setComponent8(java.lang.String component8)
Set the component 8 (Reference For The Account Owner).
|
Field61 |
setComponent9(java.lang.String component9)
Set the component 9 (Reference Of The Account Servicing Institution).
|
Field61 |
setDate(java.util.Calendar component1)
Deprecated.
use #setComponent1(java.util.Calendar) instead
|
Field61 |
setDate(java.lang.String component1)
Deprecated.
use #setValueDate(String) instead
|
Field61 |
setDCMark(java.lang.String component3)
Deprecated.
use #setDebitCreditMark(String) instead
|
Field61 |
setDebitCreditMark(java.lang.String component3)
Set the Debit/Credit Mark (component 3).
|
Field61 |
setEntryDate(java.util.Calendar component2)
Set the Entry Date (component 2) from a Calendar object.
|
Field61 |
setEntryDate(java.lang.String component2)
Set the Entry Date (component 2).
|
Field61 |
setFundsCode(java.lang.String component4)
Set the Funds Code (component 4).
|
Field61 |
setIdentificationCode(java.lang.String component7)
Set the Identification Code (component 7).
|
Field61 |
setReferenceForTheAccountOwner(java.lang.String component8)
Set the Reference For The Account Owner (component 8).
|
Field61 |
setReferenceOfTheAccountServicingInstitution(java.lang.String component9)
Set the Reference Of The Account Servicing Institution (component 9).
|
Field61 |
setSupplementaryDetails(java.lang.String component10)
Set the Supplementary Details (component 10).
|
Field61 |
setTransactionType(java.lang.String component6)
Set the Transaction Type (component 6).
|
Field61 |
setValueDate(java.util.Calendar component1)
Set the Value Date (component 1) from a Calendar object.
|
Field61 |
setValueDate(java.lang.String component1)
Set the Value Date (component 1).
|
static Tag |
tag(java.lang.String value)
Create a Tag with this field name and the given value.
|
java.lang.String |
typesPattern()
Returns the field component types pattern.
|
java.lang.String |
validatorPattern()
Returns the field validator pattern
|
append, appendInLines, appendInLines, asTag, componentNameToNumber, equals, findComponentStartingWith, format, formatAccount, formatNumber, getAsBigDecimal, getComponent, getComponent, getComponentAs, getComponentAs, getComponentAsNumber, getComponentAsNumber, getComponentLabel, getComponentLabel, getComponents, getField, getField, getLabel, getLabel, getLabelComponents, getLine, getValueByCodeword, getValueDisplay, getValueDisplay, getValueDisplay, hashCode, init, is, is, is, is, isEmpty, isLetterOption, isNameAnyOf, joinComponents, joinComponents, joinComponents, joinComponents, letterOption, notNull, setComponent, setComponent, setComponents, toJson, toString, validName
public static final int SRU
public static final java.lang.String NAME
public static final java.lang.String F_61
@Deprecated @ProwideDeprecated(phase4=SRU2024) public static final java.lang.String PARSER_PATTERN
parserPattern()
method instead.@Deprecated @ProwideDeprecated(phase4=SRU2024) public static final java.lang.String COMPONENTS_PATTERN
typesPattern()
method instead.@Deprecated @ProwideDeprecated(phase4=SRU2024) public static final java.lang.String TYPES_PATTERN
typesPattern()
method instead.public static final java.lang.Integer VALUE_DATE
public static final java.lang.Integer DATE
VALUE_DATE
public static final java.lang.Integer ENTRY_DATE
public static final java.lang.Integer DEBITCREDIT_MARK
@Deprecated @ProwideDeprecated(phase4=SRU2024) public static final java.lang.Integer DC_MARK
public static final java.lang.Integer FUNDS_CODE
public static final java.lang.Integer AMOUNT
public static final java.lang.Integer TRANSACTION_TYPE
public static final java.lang.Integer IDENTIFICATION_CODE
public static final java.lang.Integer REFERENCE_FOR_THE_ACCOUNT_OWNER
public static final java.lang.Integer REFERENCE_OF_THE_ACCOUNT_SERVICING_INSTITUTION
public static final java.lang.Integer SUPPLEMENTARY_DETAILS
public Field61()
public Field61(java.lang.String value)
value
- complete field value including separators and CRLFpublic Field61(Tag tag)
parse(String)
java.lang.IllegalArgumentException
- if the parameter tag is null or its tagname does not match the field namepublic static Field61 newInstance(Field61 source)
source
- a field instance to copypublic static Tag tag(java.lang.String value)
new Tag(NAME, value)
NAME
public static Tag emptyTag()
new Tag(NAME, "")
NAME
public void parse(java.lang.String value)
Used to update all components from a full new value, as an alternative to setting individual components. Previous component values are overwritten.
public java.lang.String getValue()
public java.lang.String getValueDisplay(int component, java.util.Locale locale)
getValueDisplay
in class Field
component
- number of the component to displaylocale
- optional locale to format date and amounts, if null, the default locale is usedjava.lang.IllegalArgumentException
- if component number is invalid for the field@Deprecated @ProwideDeprecated(phase4=SRU2024) public java.lang.String componentsPattern()
typesPattern()
instead.componentsPattern
in class Field
public java.lang.String typesPattern()
typesPattern
in interface PatternContainer
typesPattern
in class Field
public java.lang.String parserPattern()
parserPattern
in interface PatternContainer
public java.lang.String validatorPattern()
validatorPattern
in class Field
public boolean isOptional(int component)
isOptional
in class Field
component
- component number, first component of a field is referenced as 1public boolean isGeneric()
public int componentsSize()
componentsSize
in class Field
public java.util.List<java.lang.String> getComponentLabels()
getComponentLabels
in class Field
Field.getComponentLabel(int)
protected java.util.Map<java.lang.Integer,java.lang.String> getComponentMap()
getComponentMap
in class Field
protected java.util.Map<java.lang.String,java.lang.Integer> getLabelMap()
Field
getLabelMap
in class Field
Field.getLabelMap()
public java.lang.String getComponent1()
public java.util.Calendar getComponent1AsCalendar()
public java.lang.String getValueDate()
public java.lang.String getDate()
public java.util.Calendar getValueDateAsCalendar()
public java.util.Calendar getDateAsCalendar()
public java.lang.String getComponent2()
public java.util.Calendar getComponent2AsCalendar()
public java.lang.String getEntryDate()
public java.util.Calendar getEntryDateAsCalendar()
public java.lang.String getComponent3()
public java.lang.String getDebitCreditMark()
@Deprecated @ProwideDeprecated(phase4=SRU2024) public java.lang.String getDCMark()
public java.lang.String getComponent4()
public java.lang.String getFundsCode()
public java.lang.String getComponent5()
public java.math.BigDecimal getComponent5AsBigDecimal()
@Deprecated @ProwideDeprecated(phase4=SRU2024) public java.lang.Number getComponent5AsNumber()
public java.lang.String getAmount()
public java.math.BigDecimal getAmountAsBigDecimal()
@Deprecated @ProwideDeprecated(phase4=SRU2024) public java.lang.Number getAmountAsNumber()
public java.lang.String getComponent6()
public java.lang.String getTransactionType()
public java.lang.String getComponent7()
public java.lang.String getIdentificationCode()
public java.lang.String getComponent8()
public java.lang.String getReferenceForTheAccountOwner()
public java.lang.String getComponent9()
public java.lang.String getReferenceOfTheAccountServicingInstitution()
public java.lang.String getComponent10()
public java.lang.String getSupplementaryDetails()
public Field61 setComponent1(java.lang.String component1)
component1
- the Value Date to setpublic Field61 setComponent1(java.util.Calendar component1)
component1
- the Calendar with the Value Date content to setpublic Field61 setValueDate(java.lang.String component1)
component1
- the Value Date to setpublic Field61 setValueDate(java.util.Calendar component1)
component1
- Calendar with the Value Date content to setsetComponent1(java.util.Calendar)
public Field61 setDate(java.lang.String component1)
public Field61 setDate(java.util.Calendar component1)
public Field61 setComponent2(java.lang.String component2)
component2
- the Entry Date to setpublic Field61 setComponent2(java.util.Calendar component2)
component2
- the Calendar with the Entry Date content to setpublic Field61 setEntryDate(java.lang.String component2)
component2
- the Entry Date to setpublic Field61 setEntryDate(java.util.Calendar component2)
component2
- Calendar with the Entry Date content to setsetComponent2(java.util.Calendar)
public Field61 setComponent3(java.lang.String component3)
component3
- the Debit/Credit Mark to setpublic Field61 setDebitCreditMark(java.lang.String component3)
component3
- the Debit/Credit Mark to set@Deprecated @ProwideDeprecated(phase4=SRU2024) public Field61 setDCMark(java.lang.String component3)
public Field61 setComponent4(java.lang.String component4)
component4
- the Funds Code to setpublic Field61 setFundsCode(java.lang.String component4)
component4
- the Funds Code to setpublic Field61 setComponent5(java.lang.String component5)
component5
- the Amount to setpublic Field61 setComponent5(java.math.BigDecimal component5)
component5
- the BigDecimal with the Amount content to setpublic Field61 setComponent5(java.lang.Number component5)
component5
- the Number with the Amount content to setsetAmount(java.math.BigDecimal)
public Field61 setAmount(java.lang.String component5)
component5
- the Amount to setpublic Field61 setAmount(java.math.BigDecimal component5)
component5
- BigDecimal with the Amount content to setsetComponent5(java.math.BigDecimal)
public Field61 setAmount(java.lang.Number component5)
component5
- the Number with the Amount content to setsetAmount(java.math.BigDecimal)
public Field61 setComponent6(java.lang.String component6)
component6
- the Transaction Type to setpublic Field61 setTransactionType(java.lang.String component6)
component6
- the Transaction Type to setpublic Field61 setComponent7(java.lang.String component7)
component7
- the Identification Code to setpublic Field61 setIdentificationCode(java.lang.String component7)
component7
- the Identification Code to setpublic Field61 setComponent8(java.lang.String component8)
component8
- the Reference For The Account Owner to setpublic Field61 setReferenceForTheAccountOwner(java.lang.String component8)
component8
- the Reference For The Account Owner to setpublic Field61 setComponent9(java.lang.String component9)
component9
- the Reference Of The Account Servicing Institution to setpublic Field61 setReferenceOfTheAccountServicingInstitution(java.lang.String component9)
component9
- the Reference Of The Account Servicing Institution to setpublic Field61 setComponent10(java.lang.String component10)
component10
- the Supplementary Details to setpublic Field61 setSupplementaryDetails(java.lang.String component10)
component10
- the Supplementary Details to setpublic java.util.List<java.math.BigDecimal> amounts()
AmountResolver.amounts(Field)
public java.math.BigDecimal amount()
amount
in interface AmountContainer
AmountResolver.amount(Field)
public java.util.List<java.util.Calendar> dates()
dates
in interface DateContainer
public java.util.Calendar date()
public java.lang.String getName()
public static Field61 get(SwiftTagListBlock block)
block
- may be null or emptypublic static Field61 get(SwiftMessage msg)
msg
- may be empty or nullget(SwiftTagListBlock)
public static java.util.List<Field61> getAll(SwiftMessage msg)
msg
- may be empty or null in which case an empty list is returnedgetAll(SwiftTagListBlock)
public static java.util.List<Field61> getAll(SwiftTagListBlock block)
block
- may be empty or null in which case an empty list is returnedpublic java.lang.String getLine(int line)
getLine
in interface MultiLineField
line
- a reference to a specific line in the field, first line being 1MultiLineField.getLine(int)
public java.lang.String getLine(int line, int offset)
getLine
in interface MultiLineField
line
- a reference to a specific line in the field, first line being 1offset
- an optional component number used as offset when counting linesMultiLineField.getLine(int, int)
public java.util.List<java.lang.String> getLines()
getLines
in interface MultiLineField
MultiLineField.getLines()
public java.util.List<java.lang.String> getLines(int offset)
getLines
in interface MultiLineField
offset
- an optional component number used as offset when counting linesMultiLineField.getLines(int)
public java.util.List<java.lang.String> getLinesBetween(int start, int end)
getLinesBetween
in interface MultiLineField
start
- a reference to a specific line in the field, first line being 1end
- a reference to a specific line in the field, must be greater than startMultiLineField.getLinesBetween(int, int )
public java.util.List<java.lang.String> getLinesBetween(int start, int end, int offset)
getLinesBetween
in interface MultiLineField
start
- a reference to a specific line in the field, first line being 1end
- a reference to a specific line in the field, must be greater than startoffset
- an optional component number used as offset when counting linesMultiLineField.getLinesBetween(int start, int end, int offset)
public static Field61 fromJson(java.lang.String json)
json
- JSON structure including tuples with label and value for all field componentsField.fromJson(String)
protected void parseCustom(java.lang.String value)
Uses semantic information to split components 3 and 4 (assuming component 3 can only be D, C, RD, RC). It also splits VAR-SEQU-1 into components 7 and 8.
MT=940, 942
<DATE2>[<DATE1>]2a[1a]<NUMBER>15<SUB-6><VAR-SEQU-1>[’CRLF’<ERI-F61>]
MT=other, i.e. : 608, 950, 970, 972, n92, n95, n96
<DATE2>[<DATE1>]2a[1a]<NUMBER>15<SUB-6><VAR-SEQU-1>[’CRLF’34x](**)