@Generated public class Field90A extends Field implements java.io.Serializable, AmountContainer, GenericField
Model and parser for field 90A of a SWIFT MT message.
Subfields (components) Data types
String
String
String
BigDecimal
Structure definition
:4!c//4!c/[<N>]<AMOUNT>15
:S//S/[S]N
SSSN
This class complies with standard release SRU2022
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
COMPONENTS_PATTERN
Deprecated.
Use
typesPattern() method instead. |
static java.lang.Integer |
CONDITIONAL_QUALIFIER
Component number for the conditional qualifier subfield.
|
static java.lang.String |
F_90A
Same as NAME, intended to be clear when using static imports.
|
static java.lang.String |
NAME
Constant with the field name 90A.
|
static java.lang.String |
PARSER_PATTERN
Deprecated.
Use
parserPattern() method instead. |
static java.lang.Integer |
PERCENTAGE_TYPE_CODE
Component number for the Percentage Type Code subfield.
|
static java.lang.Integer |
PRICE
Component number for the Price subfield.
|
static java.lang.Integer |
QUALIFIER
Component number for the Qualifier subfield.
|
static java.lang.Integer |
SIGN
Component number for the Sign subfield.
|
static int |
SRU
Constant identifying the SRU to which this class belongs to.
|
static java.lang.String |
TYPES_PATTERN
Deprecated.
Use
typesPattern() method instead. |
components, labelMap
Constructor and Description |
---|
Field90A()
Default constructor.
|
Field90A(java.lang.String value)
Creates a new field and initializes its components with content from the parameter value.
|
Field90A(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. |
static Tag |
emptyTag()
Create a Tag with this field name and an empty string as value.
|
static Field90A |
fromJson(java.lang.String json)
This method deserializes the JSON data into a Field90A object.
|
static Field90A |
get(SwiftMessage msg)
Gets the first instance of Field90A in the given message.
|
static Field90A |
get(SwiftTagListBlock block)
Gets the first occurrence form the tag list or null if not found.
|
static java.util.List<Field90A> |
getAll(SwiftMessage msg)
Gets a list of all occurrences of the field Field90A in the given message
an empty list is returned if none found.
|
static java.util.List<Field90A> |
getAll(SwiftTagListBlock block)
Gets a list of all occurrences of the field Field90A from the given block
an empty list is returned if none found.
|
java.lang.String |
getComponent1()
Gets the component 1 (Qualifier).
|
java.lang.String |
getComponent2()
Gets the component 2 (Percentage Type Code).
|
java.lang.String |
getComponent3()
Gets the component 3 (Sign).
|
java.lang.String |
getComponent4()
Gets the component 4 (Price).
|
java.math.BigDecimal |
getComponent4AsBigDecimal()
Get the component 4 as BigDecimal
|
java.lang.Number |
getComponent4AsNumber()
Deprecated.
|
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 |
getConditionalQualifier()
Gets the component with the conditional (secondary) qualifier.
|
java.lang.String |
getDSS()
Returns the issuer code (or Data Source Scheme or DSS).
|
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 |
getName()
Returns the field's name composed by the field number and the letter option (if any).
|
java.lang.String |
getPercentageTypeCode()
Gets the Percentage Type Code (component 2).
|
java.lang.String |
getPrice()
Gets the Price (component 4).
|
java.math.BigDecimal |
getPriceAsBigDecimal()
Get the Price (component 4) as BigDecimal
|
java.lang.Number |
getPriceAsNumber()
Deprecated.
|
java.lang.String |
getQualifier()
Gets the Qualifier (component 1).
|
java.lang.String |
getSign()
Gets the Sign (component 3).
|
java.lang.String |
getValue()
Serializes the fields' components into the single string value (SWIFT format)
|
java.lang.String |
getValueDisplay(int component,
java.util.Locale locale)
Returns a localized suitable for showing to humans string of a field component.
|
boolean |
isDSSPresent()
Checks if the issuer code (or Data Source Scheme or DSS) is present.
|
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 Field90A |
newInstance(Field90A source)
Copy constructor.
|
void |
parse(java.lang.String value)
Parses the parameter value into the internal components structure.
|
java.lang.String |
parserPattern()
Returns the field parser pattern.
|
Field90A |
setComponent1(java.lang.String component1)
Set the component 1 (Qualifier).
|
Field90A |
setComponent2(java.lang.String component2)
Set the component 2 (Percentage Type Code).
|
Field90A |
setComponent3(java.lang.String component3)
Set the component 3 (Sign).
|
Field90A |
setComponent4(java.math.BigDecimal component4)
Set the component4 from a BigDecimal object.
|
Field90A |
setComponent4(java.lang.Number component4)
Alternative method setter for field's Price (component 4) as as Number
This method supports java constant value boxing for simpler coding styles (ex: 10.0 becomes an Float)
|
Field90A |
setComponent4(java.lang.String component4)
Set the component 4 (Price).
|
Field90A |
setPercentageTypeCode(java.lang.String component2)
Set the Percentage Type Code (component 2).
|
Field90A |
setPrice(java.math.BigDecimal component4)
Set the Price (component 4) from a BigDecimal object.
|
Field90A |
setPrice(java.lang.Number component4)
Alternative method setter for field's Price (component 4) as as Number
This method supports java constant value boxing for simpler coding styles (ex: 10 becomes an Integer)
|
Field90A |
setPrice(java.lang.String component4)
Set the Price (component 4).
|
Field90A |
setQualifier(java.lang.String component1)
Set the Qualifier (component 1).
|
Field90A |
setSign(java.lang.String component3)
Set the Sign (component 3).
|
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_90A
@Deprecated @ProwideDeprecated(phase3=SRU2023) public static final java.lang.String PARSER_PATTERN
parserPattern()
method instead.@Deprecated @ProwideDeprecated(phase3=SRU2023) public static final java.lang.String COMPONENTS_PATTERN
typesPattern()
method instead.@Deprecated @ProwideDeprecated(phase3=SRU2023) public static final java.lang.String TYPES_PATTERN
typesPattern()
method instead.public static final java.lang.Integer QUALIFIER
public static final java.lang.Integer PERCENTAGE_TYPE_CODE
public static final java.lang.Integer SIGN
public static final java.lang.Integer PRICE
public static final java.lang.Integer CONDITIONAL_QUALIFIER
public Field90A()
public Field90A(java.lang.String value)
value
- complete field value including separators and CRLFpublic Field90A(Tag tag)
parse(String)
java.lang.IllegalArgumentException
- if the parameter tag is null or its tagname does not match the field namepublic static Field90A newInstance(Field90A 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(phase3=SRU2023) 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.lang.String getQualifier()
public java.lang.String getComponent2()
public java.lang.String getPercentageTypeCode()
public java.lang.String getComponent3()
public java.lang.String getSign()
public java.lang.String getComponent4()
public java.math.BigDecimal getComponent4AsBigDecimal()
@Deprecated @ProwideDeprecated(phase3=SRU2023) public java.lang.Number getComponent4AsNumber()
getComponent4AsBigDecimal()
to get the proper value.getComponent4AsBigDecimal()
public java.lang.String getPrice()
public java.math.BigDecimal getPriceAsBigDecimal()
@Deprecated @ProwideDeprecated(phase3=SRU2023) public java.lang.Number getPriceAsNumber()
getComponent4AsBigDecimal()
to get the proper value.getPriceAsBigDecimal()
public Field90A setComponent1(java.lang.String component1)
component1
- the Qualifier to setpublic Field90A setQualifier(java.lang.String component1)
component1
- the Qualifier to setpublic Field90A setComponent2(java.lang.String component2)
component2
- the Percentage Type Code to setpublic Field90A setPercentageTypeCode(java.lang.String component2)
component2
- the Percentage Type Code to setpublic Field90A setComponent3(java.lang.String component3)
component3
- the Sign to setpublic Field90A setSign(java.lang.String component3)
component3
- the Sign to setpublic Field90A setComponent4(java.lang.String component4)
component4
- the Price to setpublic Field90A setComponent4(java.math.BigDecimal component4)
component4
- the BigDecimal with the Price content to setpublic Field90A setComponent4(java.lang.Number component4)
component4
- the Number with the Price content to setsetPrice(java.math.BigDecimal)
public Field90A setPrice(java.lang.String component4)
component4
- the Price to setpublic Field90A setPrice(java.math.BigDecimal component4)
component4
- BigDecimal with the Price content to setsetComponent4(java.math.BigDecimal)
public Field90A setPrice(java.lang.Number component4)
component4
- the Number with the Price content to setsetPrice(java.math.BigDecimal)
public java.util.List<java.math.BigDecimal> amounts()
AmountResolver.amounts(Field)
public java.math.BigDecimal amount()
amount
in interface AmountContainer
AmountResolver.amount(Field)
public java.lang.String getDSS()
getDSS
in interface GenericField
public boolean isDSSPresent()
isDSSPresent
in interface GenericField
getDSS()
public java.lang.String getConditionalQualifier()
getConditionalQualifier
in interface GenericField
public java.lang.String getName()
public static Field90A get(SwiftTagListBlock block)
block
- may be null or emptypublic static Field90A get(SwiftMessage msg)
msg
- may be empty or nullget(SwiftTagListBlock)
public static java.util.List<Field90A> getAll(SwiftMessage msg)
msg
- may be empty or null in which case an empty list is returnedgetAll(SwiftTagListBlock)
public static java.util.List<Field90A> getAll(SwiftTagListBlock block)
block
- may be empty or null in which case an empty list is returnedpublic static Field90A fromJson(java.lang.String json)
json
- JSON structure including tuples with label and value for all field componentsField.fromJson(String)