Class Field84B

  • All Implemented Interfaces:
    JsonSerializable, MultiLineField, PartyIdentifier, PatternContainer, java.io.Serializable

    @Generated
    public class Field84B
    extends OptionBPartyField
    implements java.io.Serializable, MultiLineField
    SWIFT MT Field 84B.

    Model and parser for field 84B of a SWIFT MT message.

    Subfields (components) Data types

    1. Component 1: DCMark: String
    2. Component 2: Account: String
    3. Component 3: Location: String

    Structure definition

    • validation pattern: [[/<DC>][/34x]$][35x](****)
    • parser pattern: [[/c][/S]$][S]
    • components pattern: SSS

    This class complies with standard release SRU2023

    See Also:
    Serialized Form
    • Field Detail

      • SRU

        public static final int SRU
        Constant identifying the SRU to which this class belongs to.
        See Also:
        Constant Field Values
      • NAME

        public static final java.lang.String NAME
        Constant with the field name 84B.
        See Also:
        Constant Field Values
      • F_84B

        public static final java.lang.String F_84B
        Same as NAME, intended to be clear when using static imports.
        See Also:
        Constant Field Values
    • Constructor Detail

      • Field84B

        public Field84B()
        Default constructor. Creates a new field setting all components to null.
      • Field84B

        public Field84B​(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
      • Field84B

        public Field84B​(Tag tag)
        Creates a new field and initializes its components with content from the parameter tag. The value is parsed with OptionBPartyField.parse(String)
        Throws:
        java.lang.IllegalArgumentException - if the parameter tag is null or its tagname does not match the field name
        Since:
        7.8
    • Method Detail

      • newInstance

        public static Field84B newInstance​(Field84B source)
        Copy constructor. Initializes the components list with a deep copy of the source components list.
        Parameters:
        source - a field instance to copy
        Since:
        7.7
      • tag

        public static Tag tag​(java.lang.String value)
        Create a Tag with this field name and the given value. Shorthand for new Tag(NAME, value)
        Since:
        7.5
        See Also:
        NAME
      • emptyTag

        public static Tag emptyTag()
        Create a Tag with this field name and an empty string as value. Shorthand for new Tag(NAME, "")
        Since:
        7.5
        See Also:
        NAME
      • validatorPattern

        public final java.lang.String validatorPattern()
        Returns the field validator pattern.
        Specified by:
        validatorPattern in class OptionBPartyField
      • setComponent1

        public Field84B setComponent1​(java.lang.String component1)
        Set the component 1 (D/C Mark).
        Parameters:
        component1 - the D/C Mark to set
        Returns:
        the field object to enable build pattern
      • setDCMark

        public Field84B setDCMark​(java.lang.String component1)
        Set the D/C Mark (component 1).
        Parameters:
        component1 - the D/C Mark to set
        Returns:
        the field object to enable build pattern
      • setComponent2

        public Field84B setComponent2​(java.lang.String component2)
        Set the component 2 (Account).
        Parameters:
        component2 - the Account to set
        Returns:
        the field object to enable build pattern
      • setAccount

        public Field84B setAccount​(java.lang.String component2)
        Set the Account (component 2).
        Parameters:
        component2 - the Account to set
        Returns:
        the field object to enable build pattern
      • setComponent3

        public Field84B setComponent3​(java.lang.String component3)
        Set the component 3 (Location).
        Parameters:
        component3 - the Location to set
        Returns:
        the field object to enable build pattern
      • setLocation

        public Field84B setLocation​(java.lang.String component3)
        Set the Location (component 3).
        Parameters:
        component3 - the Location to set
        Returns:
        the field object to enable build pattern
      • getName

        public java.lang.String getName()
        Returns the field's name composed by the field number and the letter option (if any).
        Specified by:
        getName in class OptionBPartyField
        Returns:
        the static value of Field84B.NAME
      • get

        public static Field84B get​(SwiftTagListBlock block)
        Gets the first occurrence form the tag list or null if not found.
        Parameters:
        block - may be null or empty
        Returns:
        null if not found o block is null or empty
      • get

        public static Field84B get​(SwiftMessage msg)
        Gets the first instance of Field84B in the given message.
        Parameters:
        msg - may be empty or null
        Returns:
        null if not found or msg is empty or null
        See Also:
        get(SwiftTagListBlock)
      • getAll

        public static java.util.List<Field84B> getAll​(SwiftMessage msg)
        Gets a list of all occurrences of the field Field84B in the given message an empty list is returned if none found.
        Parameters:
        msg - may be empty or null in which case an empty list is returned
        See Also:
        getAll(SwiftTagListBlock)
      • getAll

        public static java.util.List<Field84B> getAll​(SwiftTagListBlock block)
        Gets a list of all occurrences of the field Field84B from the given block an empty list is returned if none found.
        Parameters:
        block - may be empty or null in which case an empty list is returned
      • getLine

        public java.lang.String getLine​(int line)
        Returns a specific line from the field's value.
        Specified by:
        getLine in interface MultiLineField
        Parameters:
        line - a reference to a specific line in the field, first line being 1
        Returns:
        line content or null if not present or if line number is above the expected
        Since:
        7.7
        See Also:
        MultiLineField.getLine(int)
      • getLine

        public java.lang.String getLine​(int line,
                                        int offset)
        Returns a specific line from the field's value.
        Specified by:
        getLine in interface MultiLineField
        Parameters:
        line - a reference to a specific line in the field, first line being 1
        offset - an optional component number used as offset when counting lines
        Returns:
        line content or null if not present or if line number is above the expected
        Since:
        7.7
        See Also:
        MultiLineField.getLine(int, int)
      • getLines

        public java.util.List<java.lang.String> getLines()
        Returns the field value split into lines.
        Specified by:
        getLines in interface MultiLineField
        Returns:
        lines content or empty list if field's value is empty
        Since:
        7.7
        See Also:
        MultiLineField.getLines()
      • getLines

        public java.util.List<java.lang.String> getLines​(int offset)
        Returns the field value starting at the offset component, split into lines.
        Specified by:
        getLines in interface MultiLineField
        Parameters:
        offset - an optional component number used as offset when counting lines
        Returns:
        found lines or empty list if lines are not present or the offset is invalid
        Since:
        7.7
        See Also:
        MultiLineField.getLines(int)
      • getLinesBetween

        public 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.
        Specified by:
        getLinesBetween in interface MultiLineField
        Parameters:
        start - a reference to a specific line in the field, first line being 1
        end - a reference to a specific line in the field, must be greater than start
        Returns:
        found lines or empty list if value is empty
        Since:
        7.7
        See Also:
        MultiLineField.getLinesBetween(int, int )
      • getLinesBetween

        public 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.
        Specified by:
        getLinesBetween in interface MultiLineField
        Parameters:
        start - a reference to a specific line in the field, first line being 1
        end - a reference to a specific line in the field, must be greater than start
        offset - an optional component number used as offset when counting lines
        Returns:
        found lines or empty list if lines are not present or the offset is invalid
        Since:
        7.7
        See Also:
        MultiLineField.getLinesBetween(int start, int end, int offset)
      • fromJson

        public static Field84B fromJson​(java.lang.String json)
        This method deserializes the JSON data into a Field84B object.
        Parameters:
        json - JSON structure including tuples with label and value for all field components
        Returns:
        a new field instance with the JSON data parsed into field components or an empty field id the JSON is invalid
        Since:
        7.10.3
        See Also:
        Field.fromJson(String)