Class OptionQPartyField
- java.lang.Object
-
- com.prowidesoftware.swift.model.field.Field
-
- com.prowidesoftware.swift.model.field.OptionQPartyField
-
- All Implemented Interfaces:
JsonSerializable
,PatternContainer
- Direct Known Subclasses:
Field95Q
public abstract class OptionQPartyField extends Field
PartySubfields (components) Data types
- Component 1: Qualifier:
String
- Component 2: NameAndAddress:
String
- Component 3: NameAndAddress2:
String
- Component 4: NameAndAddress3:
String
- Component 5: NameAndAddress4:
String
Structure definition
- parser pattern:
:S//S[$S]0-3
- components pattern:
SSSSS
- Since:
- 7.11.0
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
COMPONENTS_PATTERN
Deprecated.UsetypesPattern()
insteadstatic java.lang.Integer
NAME_AND_ADDRESS
Component number for the Name And Address subfieldstatic java.lang.String
PARSER_PATTERN
static java.lang.Integer
QUALIFIER
Component number for the Qualifier subfieldstatic java.lang.String
TYPES_PATTERN
Types pattern Contains a description of the type of each component-
Fields inherited from class com.prowidesoftware.swift.model.field.Field
components, labelMap
-
-
Constructor Summary
Constructors Constructor Description OptionQPartyField()
Default constructor.OptionQPartyField(java.lang.String value)
Creates a new field and initializes its components with content from the parameter value.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Deprecated Methods Modifier and Type Method Description java.lang.String
componentsPattern()
Deprecated.UsetypesPattern()
insteadint
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.lang.String
getComponent1()
Gets the component1 (Qualifier).java.lang.String
getComponent2()
Gets the component2 (Name And Address).java.lang.String
getComponent3()
Gets the component3 (Name And Address).java.lang.String
getComponent4()
Gets the component4 (Name And Address).java.lang.String
getComponent5()
Gets the component5 (Name And Address).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.protected java.util.Map<java.lang.String,java.lang.Integer>
getLabelMap()
Returns a mapping between component labels and the internal component number.abstract java.lang.String
getName()
Returns the field's name composed by the field number and the letter option (if any)java.lang.String
getNameAndAddress()
Gets the Name And Address as a concatenation of component2 to component5.java.lang.String
getNameAndAddressLine1()
Gets the Name And Address (component2).java.lang.String
getNameAndAddressLine2()
Gets the Name And Address (component3).java.lang.String
getNameAndAddressLine3()
Gets the Name And Address (component4).java.lang.String
getNameAndAddressLine4()
Gets the Name And Address (component5).java.lang.String
getQualifier()
Gets the Qualifier (component1).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
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.void
parse(java.lang.String value)
Parses the parameter value into the internal components structure.java.lang.String
parserPattern()
Returns the field parser patternjava.lang.String
typesPattern()
Returns the field component types pattern This method returns a letter representing the type for each component in the Field.abstract java.lang.String
validatorPattern()
Returns the field validator pattern, that could vary er specific field-
Methods inherited from class com.prowidesoftware.swift.model.field.Field
append, appendInLines, appendInLines, asTag, componentNameToNumber, equals, findComponentStartingWith, format, formatAccount, formatNumber, fromJson, 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
-
-
-
-
Field Detail
-
PARSER_PATTERN
public static final java.lang.String PARSER_PATTERN
- See Also:
- Constant Field Values
-
COMPONENTS_PATTERN
@Deprecated @ProwideDeprecated(phase4=SRU2024) public static final java.lang.String COMPONENTS_PATTERN
Deprecated.UsetypesPattern()
instead- See Also:
- Constant Field Values
-
TYPES_PATTERN
public static final java.lang.String TYPES_PATTERN
Types pattern Contains a description of the type of each component- See Also:
- Constant Field Values
-
QUALIFIER
public static final java.lang.Integer QUALIFIER
Component number for the Qualifier subfield
-
NAME_AND_ADDRESS
public static final java.lang.Integer NAME_AND_ADDRESS
Component number for the Name And Address subfield
-
-
Constructor Detail
-
OptionQPartyField
public OptionQPartyField()
Default constructor. Creates a new field setting all components to null.
-
OptionQPartyField
public OptionQPartyField(java.lang.String value)
Creates a new field and initializes its components with content from the parameter value.- Parameters:
value
- complete field value including separators and CRLF
-
-
Method Detail
-
parse
public void parse(java.lang.String value)
Parses the parameter value into the internal components structure.Used to update all components from a full new value, as an alternative to setting individual components. Previous component values are overwritten.
-
getValue
public java.lang.String getValue()
Serializes the fields' components into the single string value (SWIFT format)
-
getValueDisplay
public java.lang.String getValueDisplay(int component, java.util.Locale locale)
Returns a localized suitable for showing to humans string of a field component.- Specified by:
getValueDisplay
in classField
- Parameters:
component
- number of the component to displaylocale
- optional locale to format date and amounts, if null, the default locale is used- Returns:
- formatted component value or null if component number is invalid or not present
- Throws:
java.lang.IllegalArgumentException
- if component number is invalid for the field- Since:
- 7.8
-
componentsPattern
@Deprecated @ProwideDeprecated(phase4=SRU2024) public final java.lang.String componentsPattern()
Deprecated.UsetypesPattern()
instead- Specified by:
componentsPattern
in classField
-
typesPattern
public final java.lang.String typesPattern()
Returns the field component types pattern This method returns a letter representing the type for each component in the Field. It supersedes the Components Pattern because it distinguishes between N (Number) and I (BigDecimal).- Specified by:
typesPattern
in interfacePatternContainer
- Specified by:
typesPattern
in classField
- Returns:
- the static value of TYPES_PATTERN
- See Also:
TYPES_PATTERN
-
parserPattern
public final java.lang.String parserPattern()
Returns the field parser pattern- Returns:
- the static value of PARSER_PATTERN
-
validatorPattern
public abstract java.lang.String validatorPattern()
Returns the field validator pattern, that could vary er specific field- Specified by:
validatorPattern
in classField
-
isOptional
public 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.- Specified by:
isOptional
in classField
- Parameters:
component
- component number, first component of a field is referenced as 1- Returns:
- true if the component is optional for this field, false otherwise
-
isGeneric
public boolean isGeneric()
Returns true if the field is a GENERIC FIELD as specified by the standard.
-
componentsSize
public 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.- Specified by:
componentsSize
in classField
- Since:
- 7.7
-
getComponentLabels
public java.util.List<java.lang.String> getComponentLabels()
Returns english label for components.
The index in the list is in sync with specific field component structure.- Specified by:
getComponentLabels
in classField
- Since:
- 7.8.4
- See Also:
Field.getComponentLabel(int)
-
getComponentMap
protected java.util.Map<java.lang.Integer,java.lang.String> getComponentMap()
Returns a mapping between component numbers and their label in camel case format.- Specified by:
getComponentMap
in classField
- Since:
- 7.10.3
-
getLabelMap
protected java.util.Map<java.lang.String,java.lang.Integer> getLabelMap()
Description copied from class:Field
Returns a mapping between component labels and the internal component number. Component labels are in lowercase and without spaces and separators. If a for a given component there is more than one label option, both are mapped to the same component number.- Specified by:
getLabelMap
in classField
- Since:
- 9.3.12
- See Also:
Field.getLabelMap()
-
getName
public abstract java.lang.String getName()
Description copied from class:Field
Returns the field's name composed by the field number and the letter option (if any)
-
getComponent1
public java.lang.String getComponent1()
Gets the component1 (Qualifier).- Returns:
- the component1
-
getQualifier
public java.lang.String getQualifier()
Gets the Qualifier (component1).- Returns:
- the Qualifier from component1
-
getComponent2
public java.lang.String getComponent2()
Gets the component2 (Name And Address).- Returns:
- the component2
-
getNameAndAddressLine1
public java.lang.String getNameAndAddressLine1()
Gets the Name And Address (component2).- Returns:
- the Name And Address from component2
-
getNameAndAddressLine2
public java.lang.String getNameAndAddressLine2()
Gets the Name And Address (component3).- Returns:
- the Name And Address from component3
-
getNameAndAddressLine3
public java.lang.String getNameAndAddressLine3()
Gets the Name And Address (component4).- Returns:
- the Name And Address from component4
-
getNameAndAddressLine4
public java.lang.String getNameAndAddressLine4()
Gets the Name And Address (component5).- Returns:
- the Name And Address from component5
-
getNameAndAddress
public java.lang.String getNameAndAddress()
Gets the Name And Address as a concatenation of component2 to component5.- Returns:
- the Name And Address from components
-
getComponent3
public java.lang.String getComponent3()
Gets the component3 (Name And Address).- Returns:
- the component3
-
getComponent4
public java.lang.String getComponent4()
Gets the component4 (Name And Address).- Returns:
- the component4
-
getComponent5
public java.lang.String getComponent5()
Gets the component5 (Name And Address).- Returns:
- the component5
-
-