Commit Graph
15 Commits
Author SHA1 Message Date
chochos a4a21551b3 Added future tolerance to Date10 and Date4 parsers; simplified the use of generics in all the FieldParseInfo subclasses. Added a test for the future tolerance of date parsers.
git-svn-id: https://j8583.svn.sourceforge.net/svnroot/j8583/j8583@85 db60a039-f72e-0410-b1d2-baa000846441
2011-07-13 16:33:37 +00:00
chochos 13a04b271a Add documentation for the problem with CustomField encoders for mutable value objects, since we can't really do anything about it.
git-svn-id: https://j8583.svn.sourceforge.net/svnroot/j8583/j8583@73 db60a039-f72e-0410-b1d2-baa000846441
2011-05-20 16:39:31 +00:00
chochos a8c2aecd3e Validate that there is indeed a field to set the encoding to, in the IsoMessage. Update version to 1.5.1
git-svn-id: https://j8583.svn.sourceforge.net/svnroot/j8583/j8583@72 db60a039-f72e-0410-b1d2-baa000846441
2011-04-08 16:21:58 +00:00
chochos 5c4259eba3 Added a new property, characterEncoding, to MessageFactory, IsoMessage, FieldParseInfo and IsoValue. This helps in parsing messages from byte buffers containing extended characters in encodings other than the default for the JVM. Tested with UTF8 on a Mac (which has default Mac OS Roman) and worked fine.
Several methods now have an additional encoding parameter (just a String, not directly a Charset), but the default is always the JVM's default encoding (taken from the property 'file.encoding').


git-svn-id: https://j8583.svn.sourceforge.net/svnroot/j8583/j8583@70 db60a039-f72e-0410-b1d2-baa000846441
2011-03-21 23:22:58 +00:00
chochos c7d696acc7 Simplified some of the formatting routines in IsoType, using String.format(). Added unit tests to check that the new formatting code works fine.
git-svn-id: https://j8583.svn.sourceforge.net/svnroot/j8583/j8583@69 db60a039-f72e-0410-b1d2-baa000846441
2011-02-22 02:15:38 +00:00
chochos 18dc948b08 remove unnecessary printf
git-svn-id: https://j8583.svn.sourceforge.net/svnroot/j8583/j8583@68 db60a039-f72e-0410-b1d2-baa000846441
2011-02-21 21:57:03 +00:00
chochos 3efc794f3e Added LGPL notice to the new classes.
git-svn-id: https://j8583.svn.sourceforge.net/svnroot/j8583/j8583@67 db60a039-f72e-0410-b1d2-baa000846441
2011-02-21 20:07:41 +00:00
chochos d291d41bbc FieldParseInfo is now an abstract class, with a concrete subclass for each IsoType. This greatly improves the parsing speed.
git-svn-id: https://j8583.svn.sourceforge.net/svnroot/j8583/j8583@66 db60a039-f72e-0410-b1d2-baa000846441
2011-02-21 19:53:47 +00:00
chochos 3b36a1dfe9 binary message parsing has improved drastically. BINARY, LLBIN and LLLBIN types are correctly encoded and parsed in both ASCII and binary formats.
git-svn-id: https://j8583.svn.sourceforge.net/svnroot/j8583/j8583@65 db60a039-f72e-0410-b1d2-baa000846441
2010-12-07 19:24:52 +00:00
chochos ad4f51d3cd Added unit tests for binaries (in progress). Added BINARY, LLBIN and LLLBIN to the DTD. Added a message template and a parsing template to the test config.
Fixed some problems with the stored values in IsoValues.


git-svn-id: https://j8583.svn.sourceforge.net/svnroot/j8583/j8583@64 db60a039-f72e-0410-b1d2-baa000846441
2010-12-07 17:14:04 +00:00
chochos 3c8cacbb8d Added new IsoTypes: BINARY, LLBIN and LLLBIN. Similar to ALPHA, LLVAR and LLLVAR but they handle binary values that get translated to byte arrays, directly if using binary coding, or hex-encoded if using ASCII.
git-svn-id: https://j8583.svn.sourceforge.net/svnroot/j8583/j8583@63 db60a039-f72e-0410-b1d2-baa000846441
2010-12-06 18:42:02 +00:00
chochos 04d61220d1 Added javadoc to a couple of MessageFactory methods.
Some more docs have been translated, and the pom now has my name.


git-svn-id: https://j8583.svn.sourceforge.net/svnroot/j8583/j8583@61 db60a039-f72e-0410-b1d2-baa000846441
2010-12-01 19:45:04 +00:00
chochos 2c501c3f43 The new copyFieldsFrom() method had problems with fields that had CustomField encoders. A getter has been added to IsoValue for the CustomField and it's used in the copyFieldsFrom() method.
git-svn-id: https://j8583.svn.sourceforge.net/svnroot/j8583/j8583@58 db60a039-f72e-0410-b1d2-baa000846441
2010-11-30 02:29:37 +00:00
chochos b1e09634d6 Made several changes that result in considerable performance improvements:
- Fields inside the IsoMessage are now stored in an IsoValue[] instead of a map (this avoids the sorting step when encoding)
- The constructor IsoValue(IsoType, T, int, CustomField) for LLVAR and LLLVAR types uses the received length parameter instead of reencoding the value with the CustomField; this results in much faster parsing performance.
- FieldParseInfo passes the length of LLVAR and LLLVAR fields to the IsoValue constructor so that reencoding the value (or getting the length of the string) is not necessary. Field header length is checked to be digits when parsing ASCII.
- IsoType now parses AMOUNT values as BigDecimals.
- MessageFactory has separate code for parsing binary and ASCII messages.

Also, the DTD was moved to the resources directory.


git-svn-id: https://j8583.svn.sourceforge.net/svnroot/j8583/j8583@56 db60a039-f72e-0410-b1d2-baa000846441
2010-11-29 19:27:25 +00:00
chochos 1b07cf9a32 This is the mavenized version of the project, and it's the one I'll be working with from now on.
git-svn-id: https://j8583.svn.sourceforge.net/svnroot/j8583/j8583@52 db60a039-f72e-0410-b1d2-baa000846441
2010-11-26 00:30:40 +00:00