예제 #1
0
        public void SetBlock(SwiftBlockBase block)
        {
            if (block == null)
            {
                throw new ArgumentNullException("block");
            }

            switch (block.BlockIdentifier)
            {
            case 1:
                Block1 = (SwiftBlock1)block;
                break;

            case 2:
                Block2 = (SwiftBlock2)block;
                break;

            case 3:
                Block3 = (SwiftBlock3)block;
                break;

            case 4:
                Block4 = (SwiftBlock4)block;
                break;

            case 5:
                Block5 = (SwiftBlock5)block;
                break;

            default:
                throw new ArgumentException("The block identifier must be between 1 and 5");
            }
        }
예제 #2
0
        private SwiftMessage Parse(string messageText)
        {
            List <string> blocks = ReadBlocks(messageText);

            if ((blocks == null) || (blocks.Count == 0))
            {
                throw new SwiftParserException("Error while reading blocks");
            }

            SwiftMessage swiftMessage = new SwiftMessage();

            foreach (var blockText in blocks)
            {
                SwiftBlockBase block = CreateBlock(blockText);
                swiftMessage.SetBlock(block);
            }

            return(swiftMessage);
        }