Class Field91D

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

    @Generated
    public class Field91D
    extends OptionDPartyField
    implements java.io.Serializable, MultiLineField
    SWIFT MT Field 91D.

    Model and parser for field 91D of a SWIFT MT message.

    Subfields (components) Data types

    1. Component 1: DCMark: String
    2. Component 2: Account: String
    3. Component 3: NameAndAddress: String
    4. Component 4: NameAndAddress2: String
    5. Component 5: NameAndAddress3: String
    6. Component 6: NameAndAddress4: String

    Structure definition

    • validation pattern: [[/<DC>][/34x]$]35x[$35x]0-3
    • parser pattern: [[/c][/S]$]S[$S]0-3
    • components pattern: SSSSSS

    This class complies with standard release SRU2022

    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 91D.
        See Also:
        Constant Field Values
      • F_91D

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

      • Field91D

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

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

        public Field91D​(Tag tag)
        Creates a new field and initializes its components with content from the parameter tag. The value is parsed with OptionDPartyField.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 Field91D newInstance​(Field91D 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 OptionDPartyField
      • setComponent1

        public Field91D 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 Field91D 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 Field91D 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 Field91D 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 Field91D setComponent3​(java.lang.String component3)
        Set the component 3 (Name And Address).
        Parameters:
        component3 - the Name And Address to set
        Returns:
        the field object to enable build pattern
      • setNameAndAddressLine1

        public Field91D setNameAndAddressLine1​(java.lang.String component3)
        Set the Name And Address (component 3).
        Parameters:
        component3 - the Name And Address to set
        Returns:
        the field object to enable build pattern
      • setNameAndAddress

        public Field91D setNameAndAddress​(java.lang.String value)
        Set the Name And Address splitting the parameter lines into components 3 to 6.
        Parameters:
        value - the Name And Address to set, may contain line ends and each line will be set to its correspondent component attribute
        Returns:
        the field object to enable build pattern
      • setComponent4

        public Field91D setComponent4​(java.lang.String component4)
        Set the component 4 (Name And Address 2).
        Parameters:
        component4 - the Name And Address 2 to set
        Returns:
        the field object to enable build pattern
      • setNameAndAddressLine2

        public Field91D setNameAndAddressLine2​(java.lang.String component4)
        Set the Name And Address 2 (component 4).
        Parameters:
        component4 - the Name And Address 2 to set
        Returns:
        the field object to enable build pattern
      • setComponent5

        public Field91D setComponent5​(java.lang.String component5)
        Set the component 5 (Name And Address 3).
        Parameters:
        component5 - the Name And Address 3 to set
        Returns:
        the field object to enable build pattern
      • setNameAndAddressLine3

        public Field91D setNameAndAddressLine3​(java.lang.String component5)
        Set the Name And Address 3 (component 5).
        Parameters:
        component5 - the Name And Address 3 to set
        Returns:
        the field object to enable build pattern
      • setComponent6

        public Field91D setComponent6​(java.lang.String component6)
        Set the component 6 (Name And Address 4).
        Parameters:
        component6 - the Name And Address 4 to set
        Returns:
        the field object to enable build pattern
      • setNameAndAddressLine4

        public Field91D setNameAndAddressLine4​(java.lang.String component6)
        Set the Name And Address 4 (component 6).
        Parameters:
        component6 - the Name And Address 4 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 OptionDPartyField
        Returns:
        the static value of Field91D.NAME
      • get

        public static Field91D 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 Field91D get​(SwiftMessage msg)
        Gets the first instance of Field91D 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<Field91D> getAll​(SwiftMessage msg)
        Gets a list of all occurrences of the field Field91D 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<Field91D> getAll​(SwiftTagListBlock block)
        Gets a list of all occurrences of the field Field91D 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 Field91D fromJson​(java.lang.String json)
        This method deserializes the JSON data into a Field91D 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)