Class MT517

  • All Implemented Interfaces:
    JsonSerializable, java.io.Serializable

    @Generated
    public class MT517
    extends AbstractMT
    implements java.io.Serializable
    MT 517 - Trade Confirmation Affirmation.

    SWIFT MT517 (ISO 15022) message structure:

    • Sequence A - General Information (M)
      • Field 16 R (M)
      • Field 20 C (M)
      • Field 23 G (M)
      • Field 98 A,C,E (O)
      • Fieldset 95 (M) (repetitive)
        • FieldsetItem 95 P,Q,R (M)
        • FieldsetItem 95 P,Q,R (O)
        • FieldsetItem 95 P,Q,R (O)
        • FieldsetItem 95 P,Q,R (O)
        • FieldsetItem 95 P,Q,R (O)
        • FieldsetItem 95 L (O)
      • Field 25 D (O)
      • Sequence A1 - Linkages (O) (repetitive)
        • Field 16 R (M)
        • Field 13 A,B (O)
        • Field 20 C,U (M)
        • Field 16 S (M)
      • Field 16 S (M)

    This source code is specific to release SRU 2023

    For additional resources check https://www.prowidesoftware.com/resources

    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 for MT name, this is part of the classname, after MT.
        See Also:
        Constant Field Values
    • Constructor Detail

      • MT517

        public MT517​(SwiftMessage m)
        Creates an MT517 initialized with the parameter SwiftMessage.
        Parameters:
        m - swift message with the MT517 content
      • MT517

        public MT517​(MtSwiftMessage m)
        Creates an MT517 initialized with the parameter MtSwiftMessage.
        Parameters:
        m - swift message with the MT517 content, the parameter can not be null
        See Also:
        MT517(String)
      • MT517

        public MT517()
        Creates and initializes a new MT517 input message setting TEST BICS as sender and receiver. All mandatory header attributes are completed with default values.
        Since:
        7.6
      • MT517

        public MT517​(java.lang.String sender,
                     java.lang.String receiver)
        Creates and initializes a new MT517 input message from sender to receiver. All mandatory header attributes are completed with default values. In particular the sender and receiver addresses will be filled with proper default LT identifier and branch codes if not provided,
        Parameters:
        sender - the sender address as a bic8, bic11 or full logical terminal consisting of 12 characters
        receiver - the receiver address as a bic8, bic11 or full logical terminal consisting of 12 characters
        Since:
        7.7
      • MT517

        public MT517​(java.lang.String fin)
        Creates a new MT517 by parsing a String with the message content in its swift FIN format. If the fin parameter is null or the message cannot be parsed, the internal message object will be initialized (blocks will be created) but empty. If the string contains multiple messages, only the first one will be parsed.
        Parameters:
        fin - a string with the MT message in its FIN swift format
        Since:
        7.7
      • MT517

        public MT517​(java.io.InputStream stream)
              throws java.io.IOException
        Creates a new MT517 by parsing a input stream with the message content in its swift FIN format, using "UTF-8" as encoding. If the message content is null or cannot be parsed, the internal message object will be initialized (blocks will be created) but empty. If the stream contains multiple messages, only the first one will be parsed.
        Parameters:
        stream - an input stream in UTF-8 encoding with the MT message in its FIN swift format.
        Throws:
        java.io.IOException - if the stream data cannot be read
        Since:
        7.7
      • MT517

        public MT517​(java.io.File file)
              throws java.io.IOException
        Creates a new MT517 by parsing a file with the message content in its swift FIN format. If the file content is null or cannot be parsed as a message, the internal message object will be initialized (blocks will be created) but empty. If the file contains multiple messages, only the first one will be parsed.
        Parameters:
        file - a file with the MT message in its FIN swift format.
        Throws:
        java.io.IOException - if the file content cannot be read
        Since:
        7.7
    • Method Detail

      • parse

        public static MT517 parse​(MtSwiftMessage m)
        Creates an MT517 initialized with the parameter MtSwiftMessage.
        Parameters:
        m - swift message with the MT517 content
        Returns:
        the created object or null if the parameter is null
        Since:
        7.7
        See Also:
        MT517(String)
      • parse

        public static MT517 parse​(java.lang.String fin)
        Creates a new MT517 by parsing a String with the message content in its swift FIN format. If the fin parameter cannot be parsed, the returned MT517 will have its internal message object initialized (blocks will be created) but empty. If the string contains multiple messages, only the first one will be parsed.
        Parameters:
        fin - a string with the MT message in its FIN swift format. fin may be null in which case this method returns null
        Returns:
        a new instance of MT517 or null if fin is null
        Since:
        7.7
      • parse

        public static MT517 parse​(java.io.InputStream stream)
                           throws java.io.IOException
        Creates a new MT517 by parsing a input stream with the message content in its swift FIN format, using "UTF-8" as encoding. If the stream contains multiple messages, only the first one will be parsed.
        Parameters:
        stream - an input stream in UTF-8 encoding with the MT message in its FIN swift format.
        Returns:
        a new instance of MT517 or null if stream is null or the message cannot be parsed
        Throws:
        java.io.IOException - if the stream data cannot be read
        Since:
        7.7
      • parse

        public static MT517 parse​(java.io.File file)
                           throws java.io.IOException
        Creates a new MT517 by parsing a file with the message content in its swift FIN format. If the file contains multiple messages, only the first one will be parsed.
        Parameters:
        file - a file with the MT message in its FIN swift format.
        Returns:
        a new instance of MT517 or null if; file is null, does not exist, can't be read, is not a file or the message cannot be parsed
        Throws:
        java.io.IOException - if the file content cannot be read
        Since:
        7.7
      • getMessageType

        public java.lang.String getMessageType()
        Returns this MT number.
        Specified by:
        getMessageType in class AbstractMT
        Returns:
        the message type number of this MT
        Since:
        6.4
      • append

        public MT517 append​(SwiftTagListBlock block)
        Add all tags from block to the end of the block4.
        Overrides:
        append in class AbstractMT
        Parameters:
        block - to append
        Returns:
        this object to allow method chaining
        Since:
        7.6
      • append

        public MT517 append​(Tag... tags)
        Add all tags to the end of the block4.
        Overrides:
        append in class AbstractMT
        Parameters:
        tags - to append
        Returns:
        this object to allow method chaining
        Since:
        7.6
      • append

        public MT517 append​(Field... fields)
        Add all the fields to the end of the block4.
        Overrides:
        append in class AbstractMT
        Parameters:
        fields - to append
        Returns:
        this object to allow method chaining
        Since:
        7.6
      • fromJson

        public static MT517 fromJson​(java.lang.String json)
        Creates an MT517 messages from its JSON representation.

        For generic conversion of JSON into the corresponding MT instance see AbstractMT.fromJson(String)

        Parameters:
        json - a JSON representation of an MT517 message
        Returns:
        a new instance of MT517
        Since:
        7.10.3
      • getField23G

        public Field23G getField23G()
        Iterates through block4 fields and return the first one whose name matches 23G, or null if none is found. The first occurrence of field 23G at MT517 is expected to be the only one.
        Returns:
        a Field23G object or null if the field is not found
        Throws:
        java.lang.IllegalStateException - if SwiftMessage object is not initialized
        See Also:
        SwiftTagListBlock.getTagByName(String)
      • getField98A

        public Field98A getField98A()
        Iterates through block4 fields and return the first one whose name matches 98A, or null if none is found. The first occurrence of field 98A at MT517 is expected to be the only one.
        Returns:
        a Field98A object or null if the field is not found
        Throws:
        java.lang.IllegalStateException - if SwiftMessage object is not initialized
        See Also:
        SwiftTagListBlock.getTagByName(String)
      • getField98C

        public Field98C getField98C()
        Iterates through block4 fields and return the first one whose name matches 98C, or null if none is found. The first occurrence of field 98C at MT517 is expected to be the only one.
        Returns:
        a Field98C object or null if the field is not found
        Throws:
        java.lang.IllegalStateException - if SwiftMessage object is not initialized
        See Also:
        SwiftTagListBlock.getTagByName(String)
      • getField98E

        public Field98E getField98E()
        Iterates through block4 fields and return the first one whose name matches 98E, or null if none is found. The first occurrence of field 98E at MT517 is expected to be the only one.
        Returns:
        a Field98E object or null if the field is not found
        Throws:
        java.lang.IllegalStateException - if SwiftMessage object is not initialized
        See Also:
        SwiftTagListBlock.getTagByName(String)
      • getField25D

        public Field25D getField25D()
        Iterates through block4 fields and return the first one whose name matches 25D, or null if none is found. The first occurrence of field 25D at MT517 is expected to be the only one.
        Returns:
        a Field25D object or null if the field is not found
        Throws:
        java.lang.IllegalStateException - if SwiftMessage object is not initialized
        See Also:
        SwiftTagListBlock.getTagByName(String)
      • getField95L

        public java.util.List<Field95L> getField95L()
        Iterates through block4 fields and return all occurrences of fields whose names matches 95L, or Collections.emptyList() if none is found. Multiple occurrences of field 95L at MT517 are expected at one sequence or across several sequences.
        Returns:
        a List of Field95L objects or Collections.emptyList() if none is not found
        Throws:
        java.lang.IllegalStateException - if SwiftMessage object is not initialized
        See Also:
        SwiftTagListBlock.getTagsByName(String)
      • getField95P

        public java.util.List<Field95P> getField95P()
        Iterates through block4 fields and return all occurrences of fields whose names matches 95P, or Collections.emptyList() if none is found. Multiple occurrences of field 95P at MT517 are expected at one sequence or across several sequences.
        Returns:
        a List of Field95P objects or Collections.emptyList() if none is not found
        Throws:
        java.lang.IllegalStateException - if SwiftMessage object is not initialized
        See Also:
        SwiftTagListBlock.getTagsByName(String)
      • getField95Q

        public java.util.List<Field95Q> getField95Q()
        Iterates through block4 fields and return all occurrences of fields whose names matches 95Q, or Collections.emptyList() if none is found. Multiple occurrences of field 95Q at MT517 are expected at one sequence or across several sequences.
        Returns:
        a List of Field95Q objects or Collections.emptyList() if none is not found
        Throws:
        java.lang.IllegalStateException - if SwiftMessage object is not initialized
        See Also:
        SwiftTagListBlock.getTagsByName(String)
      • getField95R

        public java.util.List<Field95R> getField95R()
        Iterates through block4 fields and return all occurrences of fields whose names matches 95R, or Collections.emptyList() if none is found. Multiple occurrences of field 95R at MT517 are expected at one sequence or across several sequences.
        Returns:
        a List of Field95R objects or Collections.emptyList() if none is not found
        Throws:
        java.lang.IllegalStateException - if SwiftMessage object is not initialized
        See Also:
        SwiftTagListBlock.getTagsByName(String)
      • getField16R

        public java.util.List<Field16R> getField16R()
        Iterates through block4 fields and return all occurrences of fields whose names matches 16R, or Collections.emptyList() if none is found. Multiple occurrences of field 16R at MT517 are expected at one sequence or across several sequences.
        Returns:
        a List of Field16R objects or Collections.emptyList() if none is not found
        Throws:
        java.lang.IllegalStateException - if SwiftMessage object is not initialized
        See Also:
        SwiftTagListBlock.getTagsByName(String)
      • getField13A

        public java.util.List<Field13A> getField13A()
        Iterates through block4 fields and return all occurrences of fields whose names matches 13A, or Collections.emptyList() if none is found. Multiple occurrences of field 13A at MT517 are expected at one sequence or across several sequences.
        Returns:
        a List of Field13A objects or Collections.emptyList() if none is not found
        Throws:
        java.lang.IllegalStateException - if SwiftMessage object is not initialized
        See Also:
        SwiftTagListBlock.getTagsByName(String)
      • getField13B

        public java.util.List<Field13B> getField13B()
        Iterates through block4 fields and return all occurrences of fields whose names matches 13B, or Collections.emptyList() if none is found. Multiple occurrences of field 13B at MT517 are expected at one sequence or across several sequences.
        Returns:
        a List of Field13B objects or Collections.emptyList() if none is not found
        Throws:
        java.lang.IllegalStateException - if SwiftMessage object is not initialized
        See Also:
        SwiftTagListBlock.getTagsByName(String)
      • getField20C

        public java.util.List<Field20C> getField20C()
        Iterates through block4 fields and return all occurrences of fields whose names matches 20C, or Collections.emptyList() if none is found. Multiple occurrences of field 20C at MT517 are expected at one sequence or across several sequences.
        Returns:
        a List of Field20C objects or Collections.emptyList() if none is not found
        Throws:
        java.lang.IllegalStateException - if SwiftMessage object is not initialized
        See Also:
        SwiftTagListBlock.getTagsByName(String)
      • getField20U

        public java.util.List<Field20U> getField20U()
        Iterates through block4 fields and return all occurrences of fields whose names matches 20U, or Collections.emptyList() if none is found. Multiple occurrences of field 20U at MT517 are expected at one sequence or across several sequences.
        Returns:
        a List of Field20U objects or Collections.emptyList() if none is not found
        Throws:
        java.lang.IllegalStateException - if SwiftMessage object is not initialized
        See Also:
        SwiftTagListBlock.getTagsByName(String)
      • getField16S

        public java.util.List<Field16S> getField16S()
        Iterates through block4 fields and return all occurrences of fields whose names matches 16S, or Collections.emptyList() if none is found. Multiple occurrences of field 16S at MT517 are expected at one sequence or across several sequences.
        Returns:
        a List of Field16S objects or Collections.emptyList() if none is not found
        Throws:
        java.lang.IllegalStateException - if SwiftMessage object is not initialized
        See Also:
        SwiftTagListBlock.getTagsByName(String)
      • getSequenceA

        @SequenceStyle(GENERATED_16RS)
        public MT517.SequenceA getSequenceA()
        Get the single occurrence of SequenceA delimited by 16R/16S the value of SequenceA#START_END_16RS. The presence of this method indicates that this sequence can occur only once according to the Standard.
        Returns:
        the found sequence or an empty sequence if none is found
        See Also:
        MT517.SequenceA.START_END_16RS
      • getSequenceGENL

        public MT517.SequenceA getSequenceGENL()
        Same as getSequenceA using the sequence delimiter field qualifier
        Returns:
        the found sequence or an empty sequence if none is found, never returns null
        Since:
        9.2.18
        See Also:
        getSequenceA()
      • getSequenceA

        @SequenceStyle(GENERATED_16RS)
        public static MT517.SequenceA getSequenceA​(SwiftTagListBlock parentSequence)
        Get the single occurrence of SequenceA delimited by 16R/16S the value of SequenceA#START_END_16RS. The presence of this method indicates that this sequence can occur only once according to the Standard.
        Parameters:
        parentSequence - a not null parent sequence to find SequenceA within it
        Returns:
        the found sequence or an empty sequence if none is found, never returns null
        Since:
        7.7
        See Also:
        MT517.SequenceA.START_END_16RS
      • getSequenceGENL

        public static MT517.SequenceA getSequenceGENL​(SwiftTagListBlock parentSequence)
        Same as getSequenceA using the sequence delimiter field qualifier
        Parameters:
        parentSequence - a not null parent sequence to find SequenceA within it
        Returns:
        the found sequence or an empty sequence if none is found, never returns null
        Since:
        9.2.18
        See Also:
        getSequenceA(SwiftTagListBlock)
      • getSequenceA1List

        @SequenceStyle(GENERATED_16RS)
        public java.util.List<MT517.SequenceA1> getSequenceA1List()
        Get the list of SequenceA1 delimited by 16R/16S with value specified in MT517.SequenceA1.START_END_16RS.

        The presence of this method indicates that this sequence can occur more than once according to the Standard.

        Returns:
        the found sequences or an empty list if none is found
        See Also:
        MT517.SequenceA1.START_END_16RS
      • getSequenceLINKList

        public java.util.List<MT517.SequenceA1> getSequenceLINKList()
        Same as getSequenceA1List using the sequence delimiter field qualifier
        Returns:
        the found sequences or an empty list if none is found
        Since:
        9.2.18
        See Also:
        getSequenceA1List()
      • getSequenceA1List

        @SequenceStyle(GENERATED_16RS)
        public static java.util.List<MT517.SequenceA1> getSequenceA1List​(SwiftTagListBlock parentSequence)
        Get the list of SequenceA1 delimited by 16R/16S with value specified in MT517.SequenceA1.START_END_16RS.

        The presence of this method indicates that this sequence can occur more than once according to the Standard.

        Parameters:
        parentSequence - a not null parent sequence to find SequenceA1 within it
        Returns:
        the found sequences or an empty list if none is found or parent sequence is null
        Since:
        7.7
        See Also:
        MT517.SequenceA1.START_END_16RS
      • getSequenceLINKList

        public static java.util.List<MT517.SequenceA1> getSequenceLINKList​(SwiftTagListBlock parentSequence)
        Same as getSequenceA1List using the sequence delimiter field qualifier
        Parameters:
        parentSequence - a not null parent sequence to find SequenceA1 within it
        Returns:
        the found sequences or an empty list if none is found
        Since:
        9.2.18
        See Also:
        getSequenceA1List(SwiftTagListBlock)