Package com.prowidesoftware.swift.model
Core package with classes that model SWIFT messages.
-
Interface Summary Interface Description MessageMetadataStrategy A strategy to extract specific properties of an MT or MX message.TagVisitor -
Class Summary Class Description AbstractMessage Base class for hierarchy of specific MT and MX classes.AbstractSwiftMessage Base entity for MT and MX message persistence.BbanStructureDTO Container for a specific country BBAN structure.BbanStructureEntryDTO The bban structure entry.BbanStructureValidations This singleton handles all the available BBAN structure entries.BIC Helper class to process BIC information.IBAN Utility class to validate IBAN codes.LogicalTerminalAddress Identifies a logical channel connection to SWIFT, and the network uses it for addressing.MIR This class models and parses the Message Input Reference (MIR), String of 28 characters, always local to the sender of the message.Money A simple POJO to represent money, an amount associated with a currency.MOR This class models and parses the Message Output Reference (MOR).MtId Structured identification of MT message types, composed by the business process, actual type and variant.MtSwiftMessage MT messages entity for JPA persistence.SwiftBlock Base class for a generic SWIFT block.
This is an abstract class so specific block classes for each block (block 1, 2, 3, etc...) should be instantiated.
Instances of this class may have a list of unparsed texts (UnparsedTextList).SwiftBlock1 Base class for SWIFT Basic Header Block (block 1).SwiftBlock2 Base class for SWIFT Application Header Block (block 2)SwiftBlock2Adapter SwiftBlock2Input Base class for SWIFT Application Header Block (block 2) for INPUT (to SWIFT).
This block is used to construct messages that are going to be input to the SWIFT network.SwiftBlock2Output Base class for SWIFT Application Header Block (block 2) for OUTPUT (from SWIFT).
This block is used to construct messages that have been output from the SWIFT network.SwiftBlock3 Base class for SWIFT User Header Block (block 3).SwiftBlock3Builder Helper class to fill a User Header block 3 ensuring only expected fields are set and fields are set in proper order.SwiftBlock4 Base class for SWIFT Body Block (block 4).
This block is where the actual message content is specified and is what most users see.SwiftBlock5 Base class for SWIFT Trailer Block (block 5).SwiftBlockUser Base class for SWIFT User "ad-hoc" Blocks (blocks with number other than 1-5 or names).
The assumption is that these User Defined Blocks are used and defined as tag blocks (meaning that these blocks behave like a block 3 or 5).
NOTE: this is not part of SWIFT standard, but seems to be common practice for users to append some locally defined blocks to annotate messages in a semi-compatible way (for example: add block 9 for some local information or block "S" for system reference).
SwiftCharsetUtils Helper class to validate SWIFT char sets (named after the SWIFT User Handbook).SwiftMessage Base class for swift messages.SwiftMessageAdapter SwiftMessageNote Comments associated to a message for application only usage (not part of the standard).SwiftMessageRevision A revision is a snapshot of message content and is used to track the history of changes in a message.SwiftMessageStatusInfo Status tracking record for application only usage (not part of the standard).
The status name identifier is modeled with plain String, nevertheless the usage of an application specific enumeration is encourage; constructors and methods with raw Enum parameters are provided.SwiftMessageUtils Utility methods that provide higher level access toSwiftMessage
SwiftTagListBlock Base class for SWIFT blocks that contain and arbitrary set of fields (3, 4, 5 and user blocks).
Specific block classes for each block should be instantiated.SwiftValueBlock Base class for SWIFT blocks that contain its fields concatenated as a single fixed length value; blocks 1 and 2.
This is an abstract class so specific block classes for each block should be instantiated.Tag Representation of an MT field in a message as a plain key/value tuple.UETRUtils Unique end-to-end transaction reference (UETR) generator.UnparsedTextList List of unparsed texts for messages, blocks or tags.
For performance reasons, the unparsed texts are stored directly as strings inside this list object. -
Enum Summary Enum Description BbanEntryType Basic Bank Account Number Entry Types.BicValidationResult To indicate the validation problem found when validating a BICFileFormat Supported file formats in theAbstractSwiftMessage
hierarchy.IbanValidationResult To indicate the validation problem found when validating an IBANMessageDirection Message direction from SWIFT perspective.MessageIOType Message direction from application perspective, including the catch all value "both".MessageStandardType Enumeration of messages standard types.SwiftBlock1Field Full qualified names for attributes in block 1.SwiftBlock2.MessagePriority Message priority valuesSwiftBlock2Field Full qualified names for attributes in block 2.SwiftBlock2Input.DeliveryMonitoring Delivery monitoring valuesSwiftBlock2InputField Full qualified names for attributes in block 2 input.SwiftBlock2OutputField Full qualified names for attributes in block 2 output.SwiftBlock5Field Full qualified names for fields used in block 5.SwiftCharset SWIFT character sets named after the User Handbook.