ChangeLog

Alejandro Revilla edited this page Nov 6, 2018 · 388 revisions

Resources


jPOS 2.1.3-SNAPSHOT

  • NACChannel Minus length of length from the 2 byte msg length PR186
  • Add "RR" (round-robin) option to QServer PR187
  • CMFConverter protect against null cfg ddd9ee0a
  • Protect against NPE in ResultCode.warns 85f63b59
  • Upgrade javassist to 3.23-1-GA 647f8fe9
  • NPE in SystemMonitor metrics dump #189
  • QueryHost new property 'ignore-host-unreachable' ab045cc7
  • CheckFields Return CMF error on INVALID_CARD_NUMBER 37a418d0
  • Fixed DirPoll performance issue - high CPU/memory consumption Issue 190
  • CheckFields: if card is optional, but present, it has to be a good one ee4eeb28
  • PADChannel now logs event before running filters df8bbe1f

jPOS 2.1.2 - released 2018-09-19

  • Added Q2.ready() and Q2.ready(timeout) fbe61555
  • Added IFE_L* set of field packagers PR151
  • Issue 155: metrics related NPE when debug=false eb5c1f60
  • Adds CDATA tag to strings on log when needed PR155
  • Upgrade Gradle to 4.6 77ee81ae
  • Protect against log event exceptions PR162
  • Added Profiler accessor for events field so that external systems can process PR163
  • LoggerAdaptor now honors XmlConfigurable interface b27e8c0f
  • Upgrade BouncyCastle to 1.57 f0e76d33
  • Added RealmLogFilter to filter log events by their realm 914c220
  • Upgrade sshd to 1.7.0 ba48b9b3
  • Replaced sensitive data in CardHolder generated exceptions with safe PR167
  • Added IFAE_LLCHAR PR168
  • Maven artifact now do not include Main-Class nor Class-path Issue 169
  • Custom Exception Handler Pipelines PR170
  • ISOUtil.protect: Provide a protect method with a char to protect with. PR172
  • Added static StopWatch.get befa21f7
  • Added Automatic-Module-Name to MANIFEST.MF a83fee50
  • Upgrade JLine to 3.9.0 3408309a
  • IF_TCHAR pass encoding to getBytes method PR177
  • Added Pause participant bee3825e
  • Upgrade Gradle to 4.9 023d7030
  • New NACChnanel include-header-length property 3b5f9d60
  • FrozenLogEvent now honors log-source 3c1df1c9
  • DailyLogListener changes for support maxage property were added PR181
  • Added support for Venezuelan Bolivar Soberano 1d652a4d
  • Protect against ISOServer side effects by bad end user code PR185

jPOS 2.1.1 - released 2017-11-13

  • Added activeTransactions counter in TransactionManager PR133
  • Corrected error message in QueryHost when mux is not connected f46ed5cf
  • Added IgnoreLuhnCardValidator 0408ac5
  • Added SelectDestination participant 1ef57b2
  • Added Context persist, evict, clone, equals, hashCode methods 7c8b7fa
  • Logger adaptor honors 'redirect' property bec01ea
  • Added IRCConverter RC to IRC 8ea4184
  • BaseChannel now honors local-port if timeout is set a9c66f1
  • extract QBeans from META-INF/q2/deploy 1dc8a15
  • Bugfix in ISOUtil.bcd2str(String,boolean,byte) 4ca1c5b1
  • ChannelAdaptor and QMUX check in/out queues at config time 154cb021
  • SelectDestination support regexp eaf0a57c
  • iso87binary.xml DE55 now binary 4b4baa99
  • TSpace handle race condition with templates and expirables 31dd37e5
  • Added SpaceSource with IncomingListener support for remote spaces 1ab5d8f5
  • SendResponse now handle SpaceSource 436e2d06
  • Fine tune TransactionManager InputQueueMonitor 5cca039d
  • TransactionManager new abort-on-pause-timeout property (defaults to true) 1ad478f1
  • Added CALCLUHN command dcd75442
  • SendResponse adds support for header-strategy a0d0a4d2
  • Card now gets and validates service code from track1/track2 c9fdbf39
  • Temporary fix to unsorted tags in GenericTaggedFieldsPackager 686be859
  • TransactionManager getInTransit now users activeTransation counter 8dfe8d33
  • Added boolean ISOMsg.hasMTI() method PR140
  • org.jpos.util.Tags properly deal with empty tags df24aa52
  • org.jpos.rc.Result protect against null 'format' 545e8802
  • Allow in-memory LMKs in JCESecurityModule 4ad06b1e
  • added Serializer compact Map<String,String serializer 7a670e64
  • Added JCESecurityModule DUKPT Data Encrypt/Decrypt b4aabfbc
  • SystemMonitor show Java version/vendor/AES info 51edcc96
  • Added PGPHelper.encrypt/decrypt 3a7dd6b7
  • SystemSeed handle dual seed (system/custom) c6165d34
  • Context now back to <Object,Object> 05234c63
  • QMUX.notify add debug info cf8859e3
  • TM Debug and Trace now shows abbreviated package names and optional realm ad4a6fef
  • Context now tells apart String versus non-String keys 8eda685d
  • Added NativePackager 918023a6
  • ISOUtil.normalize now use unicode-like escaping f75807de
  • Upgraded HdrHistogram dependency 07ec0290
  • Dump metrics a4d66c5b
  • ISOUtil.hexdump with CharSet support PR146

jPOS 2.1.0 -- released 2017-05-27

  • Moved to semantic versioning
  • TransactionManager unified debug and trace d04e77c2
  • Upgrade Gradle to 3.3 04094a0
  • Upgrade JLine to 3.1.2 4394eef
  • Upgrade BouncyCastle to 1.56 6e864b0
  • Upgrade SSHD to 1.3.0 6780c94
  • Upgrade SLF4J to 1.7.22 ab85f61
  • SimpleConfiguration implements Serializable a5b1049
  • Prevention against locking of deploy directory scanning PR115
  • JESpace accept lock.timeout and txn.timeout 7e8e917
  • Removed SLF4J-NOP dependency 598d73f7
  • Add jPOS custom SLF4J provider dynamically PR123
  • QMUX supports per-MTI key override 73ace32
  • QMUX validate responses aac64d3
  • Added QMUX return-rejects property (default to false) 13b7991
  • Upgrade JLine to 3.2.0 1645444
  • Add metrics to TM 413ddbe4
  • Debug participant use FrozenLogEvent 669275d5
  • Avoid possible NPE when throwing ISOExceptions PR124
  • Provide default implementaion of TM.commit, abort and prepareForAbort 3f93807
  • Added general purpose IncomingListener 06dbce9
  • Added ContextConstants enum 090be9a
  • Added SendResponse participant 5ee0e52
  • Added Switch participant 33cdf7b
  • Added Caller.info helper class 1429584
  • Added org.jpos.rc package (RC, IRC, IRCConverter, CMF, CMFConverter, Result) 247ef72
  • Make sure Context key is a String 16b5737
  • Added ISOMsg.hasAny methods 9006fba
  • Added ISOAmount toString, hashCode, equals 2489e9d
  • Added jPOS CMF packager (cmf.xml) b2a9bce0
  • Added CheckFields participant e8813a3
  • Corrected TPS.peakWhen PR125
  • Handle debug on TMs without participants bb546013
  • Added TransactionConstants.FAIL (equals to ABORTED | READONLY | NO_JOIN) e6d3cfa
  • Added QueryHost participant 2cc2349
  • Upgrade to Gradle 3.5 6d2de3f
  • Fixed QMUX counters on async requests 903f1a2
  • Added metrics to QMUX 3157363
  • Removed 01_single.xml (use --pid=xxx instead) 9377319
  • ASCIIChannel, add length-digits property... PR127
  • Synchronize LogEvent.payLoad in toString eeed89f
  • Major issue with TM debug output 783e68a1
  • QMUX race condition detecting duplicate STAN 07c4c145
  • Added Profiler.getPartialInMillis() method 4d70f65
  • Added TransactionManager resumed metrics and metrics-highest-trackable-value property b57faf2
  • Log paused transaction counters in TransactionManager 1ce69fe
  • Removed shutdownQ2 operation from MBean 5f4c0a5
  • Added QBeanSupport.getDump 297f250
  • TM now uses loadMonitorExecutor e4ed756
  • Added a getter method for TransactionManager.pausedCounter PR131
  • Improved logic to calculate average TPS PR132
  • Added inhibit() indicator to IRC 2ad73e0

jPOS 2.0.10 -- released 2017-01-01

jPOS 2.0.9

  • Upgrade JLine to 3.0.0 f915457
  • CLI Builtin commands, colon to run subsystems, semicolon now escaped 2a285ac
  • CLISubSystem has access to CLIContext 04b8aaa
  • Upgrade to Jline 3.1.0 fac4811
  • INFO_NOT_FROM_CARD renamed to CONTACTLESS d6d9061
  • Upgrade to Gradle 3.2.1 a6ba5cf
  • optionally read license file from external file c893bf2d
  • Upgrade to JLine 3.1.1 43bf7e6
  • Removed double-logging in PADChannel 05da7cfa

jPOS 2.0.8 -- released 2016-10-16

jPOS 2.0.7

  • ISOMsg, no reason to declare never thrown ISOException PR107
  • Upgrade to Gradle wrapper 2.13 af1797c
  • Remove verbosity of common peer-disconnect event 1404032
  • QFactory.properties expands 'groovy' to org.jpos.q2.qbean.Groovy f663653
  • Fixed ISOUtil.byte2BitSet (3rd bitmap support) PR108
  • multiple dependency upgrades 1d3127c
  • small fixes, comments, and tiny performance improv PR109
  • Added jPOS default ISOCurrency overrides 5037153
  • ISOCurrency sorts JRE currencies by currencyCode 04ae697
  • Got rid of Xerces and JUnit addons deps 04ae697.
  • q2 --cli now defaults to deploy/cli directory 86e3450
  • ISOResponseListener converted into functional interface PR112
  • Bugfix in ISOUtil.asciiToEbcdic(byte[], int, int) 8a12c18
  • Implementation of pin block format 05 in JCESecurityModule PR114
  • Prevention against locking of deploy directory scanning PR115
  • ISOUtil now use Charset IBM1047 for EBCDIC conversions 6e2d3d3
  • Add --ssh et al, migrated to jline3 c6cc6024
  • Upgrade Gradle to 3.1 c3dbc3a
  • ISOField.dump dumps JSON data as field content 2326752
  • Added CLI 'deploy' subsystem PR116
  • Upgrade JE to 7.0.6 1d8c330
  • Upgrade BC to 1.55 ed5b64dc
  • Added CLI.exec methods d66511b
  • Correct 3rd bitmap handling for cases of contiguous or split bitmaps (3rd bm in a data element) PR118
  • BaseChannel add ability to override pack 79f31a8

jPOS 2.0.6 -- released 2016-04-02

jPOS 2.0.5

  • Upgrade to Gradle 2.8 ad26f77
  • Add org.jpos.util.Tags helper class c50fb0b
  • Add Tags hasAll, hasAny and hasNone methods 95db3dd
  • Reduced Context.dump verbosity 2e93815
  • SystemMonitor: Added OS version and load average a461b9f
  • MUXPool adds 'enabled' support a52b088
  • Enable PKI (RSA) cryptosystem in SMAdaptor PR99
  • Add support for IFB_HEX f9c83e4
  • Added reply-keepalive property to CSChannel and VAPChannel. Defaults to true f9c83e4f3a25...8028e07c47c1
  • Upgraded Gradle wrapper to 2.11 fc3e953
  • Update ISO-4217 currencies PR100
  • ISOCurrency now uses currencies from jvm PR101
  • Q2 uses WatchService to speedup deploy dir changes detection 44a9f54
  • Transition to org.jdom2 PR102
  • Serializable TSpace PR103
  • Q2 registers itself with the NameRegistrar bc7be43
  • Add Card, Track1, Track2, CardValidator, LUHNValidator 7ceb158
  • Possibility to use dCVV/CVC3 calculation PR105
  • Add IFEPE_LLLCHAR support for mastercard DE112 PR104

jPOS 2.0.4 -- released 2015-10-19

jPOS 2.0.3

  • Do not throw ISOException for a field not present in fpath PR91
  • TransactionManager resume checkpoints in profiler e9355878
  • Upgraded Gradle wrapper to 2.4 d4295d2
  • Added viewTests task d5e8bc2
  • BaseHeader and BASE1Header now operates on cloned copies of byte[] 6a4f430
  • TransactionManager: Reduce memory footprint of processed transactions 37f5f62b
  • Q2 do not force new classloader on first iteration d77dd3f2
  • Multiple minor improvements (PMD complains)
  • add ability to shutdown SystemMonitor 38173f6
  • commons-cli upgraded to 1.3.1 ce5ceb3
  • xerces upgraded to 2.11.0 888ec12
  • Upgrade to BC 1.52 d14b811
  • Added BaseChannel round-robin property f93d986
  • Added QBeanSupport.close(Closeable ...) helper ecb3f95
  • ChannelAdaptor reduced verbosity on failed connections 2e4bbc8
  • TransactionManager call profiler.checkPoint on prepareForAbort 9d4f40d
  • Logger.log catches LogListener Throwables 1646073c
  • Baseline is now Java 8 c6b996c
  • Better alignment of Context.log output 6e2a8bc
  • Added JSParticipant 28ba07f
  • Fixed issue with JBoss classloader 5d1d2f99
  • Fixed jPOS-118 DailyLogListener - OutOfMemory on compress PR-92
  • jPOS-115 add deny to iso server PR-94
  • Add process name and peak threads to SystemMonitor f47b6e8
  • Upgrade to Gradle wrapper 2.6 b3360be
  • Fixed jPOS-77 SimpleConfiguration.get fails when multiple entries are used PR97
  • Add TZCHECK cli command 34e5adc4
  • Add TimeZone info to SystemMonitor 9a84b00
  • Show Log timestamp in ISO-8601 format (UTC) cd5aafd4
  • Add Q2 --pid-file optional switch 8523b9ab
  • Add ISOUtil.readableFileSize method 618a2a5
  • Add free and usable diskspace on CWD FS 3febd1b
  • Add a timestamp to the transaction manager thread name PR98
  • Add SpaceLogListener d29efb1c
  • FrozenLogEvent implements Serializable 06d3401

jPOS 2.0.2 -- released 2015-06-09

jPOS 2.0.1

  • BaseChannel.receive throws IOException instead of ISOException if not connected 6d0a883
  • Added support encryption and decryption in JCEHandler PR84
  • Resolved memory leak in OneShotChannelAdaptorMK2 PR85
  • Handle channel-name and socket-info as Strings 7fa77c2
  • EuroSubFieldPackager reverted baae23b (issue with LL versus LLLL prefecture)
  • Added IFEP_LLLBINARY, IFEP_LLLCHAR, GICCSubFieldPackager and GICCChannel c615a1d
  • Added org.jpos.util.StopWatch 2cc4e6a
  • Added SystemSeed helper 129a187
  • SMAdapter.translateKeyScheme and JCESecurityModule implementation (PR86)
  • Got rid of detecting numeric tags in TLV packager to simplify and guarantee order of tags, MUXPool private methods made protected to allow subclassing (PR87)
  • SunJSSESocketFactory extends GenericSSLSocketFactory in order to avoid repeated code 8f682ad
  • GenericSSLSocketFactory adds support for enabledProtocols required per PCI compliance e8cf528
  • Fix thread allocation error with race conditions and improve thread naming PR88
  • TransactionManager more aggressive thread creation 0b41072
  • TransactionManager warning if in-transit transactions is too high 5603099
  • Updated deps: felix.framework to 5.0.0 org.osgi.core:6.0.0 xmlunit:1.6 c460076
  • JSONPackager temporarily on hold 42f8ad6
  • MUXPool now has ROUND_ROBIN_WITH_OVERRIDE and SPLIT_BY_DIVISO f14b4e2

jPOS 2.0.0 -- released 2015-02-25

jPOS 1.9.9

  • Add space to error DirPoll message to make more readable (PR66)
  • Use default logger when no log source logger or listeners (PR67)
  • TransactionManager.getOutstandingTransactions needs to check input-space that can be different than the standard space (9c83a64 )
  • Q2 checks if ClassLoader has been already registered with the MBeanServer 2dbd8de
  • Allow faster shutdown of dir polls PR70
  • SimpleKeyFile do not log if logger is null (7c92d0a) - this is a follow-up to PR67
  • Fix for PR67 backward compatibility (8d5da6e)
  • Added `ISOUtil.hexdump(byte[] buffer, int offset); (efb6e97)
  • Added TTTLLLV support e9defcf
  • Fix padding end issues in TLVList - PR77
  • PosDataCode now implements Loggeable (f25c784)
  • Added LogEvent.toString(String indent) helper method (0037ed6)
  • LogChannel support nested messages and new properties realm-field and realm-timestamp (5a11844)
  • Added TPS.setSimulatedNanoTime(long) (b411eda)
  • Improved LogEvent timestamp PR78
  • JCESecurityModule maintenance and added calculatePVVImpl PR80
  • BSHResquestListener now honor script's boolean return value PR81
  • Fix logging issue in calculatePVVImpl, Split formatPANPSN to separate methods, Add ARQC veryfication and ARPC generation support PR82
  • BaseChannel now throws IOException instead of ISOException on non ISOExceptions 6e08532 221196f d7a92bd
  • Enhanced DUKPT functionality (exportPIN) PR83

jPOS 1.9.8 -- released 2014-08-10

jPOS 1.9.7

  • Added OneShotChannelAdaptorMK2 (experimental, will replace OneShotChannelAdaptor) (2784deea)
  • Bugfix in AsciiHexInterpreter lowercase uninterpret (ab7a9a63)
  • TransactionManager: convert Thread[] to List, Use foreach, SpceUtil.wipe and generics (see PR47)
  • Added org.jpos.iso.PosDataCode (1fdfd1d)
  • QMUX use internal space, use reuse-space property for backward compatibility (d6194c3)
  • Added Context trace (cce6a27)
  • Fixes javadoc, deprecation and unchecked warnings PR-50
  • Generalized BaseChannel (PR-51)
  • Added contributed DecimalTagMapper (PR-53)
  • Added contributed TLV and EMV support (PR-52)
  • Protect sensitive data in ISOMsgPanel (401d820)
  • jPOS-65 ISOUtil.hexdump (offset+len) behaviour (e957d1c)
  • Added support for setting custom trailers. (Also fix long standing typo) (PR54)
  • Simplifications and improvements in SimpleMsg PR55
  • Replace ISOUtil.ENCODING with ISOUtil.CHARSET PR56
  • Enable nesting in *TaggedPackager other composite fields PR57
  • TLVList and TLVMsg implement Loggeable e044c24
  • Remove dependency on platform default encoding for ISOUtil.asciiToEbcdic (PR60)
  • Added xml-config (ae05521 )
  • Upgrade Gradle to 1.12 (548a57b)
  • ISOPackager interface does not extend LogSource anymore (ada3f0c)
  • Added ISOComponent.getFieldNumber() (b53edc7)
  • Added JSONPackager (9d1a86e)
  • Added TransactionManager getSerializable, getContext and getId ThreadLocal based statics (c6da5f3)
  • OSGi Activator now honors org.jpos.q2.autostart property (bfdaa4c)
  • Upgraded Gradle to 2.0 (af16f20)
  • Added src/dist/bin/q2.bat DOS script (e900fe1)
  • NameRegistrar now internally use TSpace, adds get(String,timeout) method (c5160f2)
  • Added PosDataCode.valueOf(byte[]) (e1a0c38)
  • Fixed TM ConcurrentMotificationException in TM stop introduced in PR47 (bd97570)
  • Added TRACK1 and TRACK2 flags to PosDataCode.ReadingMethods according to jPOS-CMF 1.0.11 (1335d6a)
  • Prevent ISOMsgFieldPackager.unpack NPE PR61
  • Initial support for types ZEK, DEK, MK-DAC, MK-DN PR62
  • SMAdapter: add methods for CAVV/AAV calculation and verification PR63
  • Added preliminary PGP support (ce66f8d)
  • Support for jar: protocol for FSDMsg schema (PR64)
  • QConfig and QXmlConfig now has get with timeout (aee43ca)
  • Fixed IFA_BITMAP issue with small bitmaps ([42b1f035])
  • QMUX.isConnected() check that QMUX is in running state (df69a8c)
  • EuroSubFieldPackager tag prefix is actually LLLL ([baae23b3])

jPOS 1.9.6 -- released 2014-03-22

jPOS 1.9.5

  • Added DUKPT support (dc24d14)

  • Added interface TaggedFieldPackager (568011e)

  • Upgrade to JE 5.0.73 (3d49428)

    WARNING This upgrade requires running the DbPreUpgrade_4_1 script using version 4.1.20.
    The command is:

    java -jar je-4.1.20.jar DbPreUpgrade_4_1 -h directoryName
    

    on every JE space created with the previous version. See JE's ChangeLog.

  • Avoid unpacking fields not required in requests (acfb52c)

  • Added new Space NRD (not read) operation (f50169206)

  • qbean.SystemMonitor now shows default encoding (26ebd40)

  • PR36 - Bugfix in MUXPool round-robin (a64ae215)

  • PR37 - Remove unpadding of binary fields in FSDMsg.pack method (112b0a3d)

  • jPOS-113 SimpleKeyFile.getKeys fails when key names have dots f552682

  • PR38 - Clean shutdown of DirPoll when file processing is in progress (7dd4090)

  • PR39 - Allow schema attribute separator to use in new separators (12486354)

  • BaseChannel.closeSocket is now protected (4caab615)

  • PR42 PIN mailer api

  • PR43 jPOS-100 Prevent multiple instances from running

  • Indonesian Rupiah (360) will have 2 decimals ef843b58

  • Added ISOCurrency parseFromISO87String and toISO87String - deprecated double convertFromISOMsg e67d4af

  • PR45 TLVMsg and TLVList improvements

  • Added SpaceUtil.outIfEmpty and outWhenEmpty 647ebfe

  • Bugfix in IFE_BITMAP not properly dealing with secondary bitmap e610f11

  • jPOS-116 XML parser behaviour causing field value to be set prematurely 1f8ce54

  • Improved TSpace performance by reducing calls to notifyAll e59d679

  • BSH script now expose cfg Configuration

  • Added new QConfig service ea9c1a3

  • Added merge-configuration support 35a1a208

jPOS 1.9.4 -- released 2013-12-24

jPOS 1.9.3

  • Added len,description constructor to IF_NOP
  • Added IFB_LLHEX (can be used to deal with encrypted track2s)
  • Added HexNibblesPrefixer (required by IFB_LLHEX)
  • Added OSGi support
  • Added 'qnode' (OSGi testbed)
  • DirPoll now supports file compression
  • Profiler can be reenabled
  • TransactionManager PAUSED transactions reuse profiler to provide combined elapsed times
  • Added org.jpos.iso.GenericSSLSocketFactory
  • jPOS-105 QServer should unregister as a space listener
  • jPOS-106 ChannelAdaptor reconnect flag uses non serializable Object
  • jPOS-108 FSDMsg consuming input stream
  • DirPoll.scan is now protected
  • MUX interface now extends ISOSource
  • QMUX.send now checks isConnected()
  • DirPoll now accepts a priority.regex boolean property (73c2f84)
  • jPOS-110 QMUX major start-up issue (1526dab)
  • DirPoll Retry when archive.timestamp is set to true (pull/33)
  • Generate optional app specific version info 02f739a

jPOS 1.9.2 -- released 2013-08-03

jPOS 1.9.1

  • TransactionManager sets activity related thread name
  • TransactionManager call-selector-on-abort property now defaults to true
  • Added QThreadPoolExecutor contributed by Damien pull/18
  • QServer now fire connect/disconnect events contributed by Chhil pull 22 and pull 23.
  • Assorted contributed code inspections
  • Bugfix for ArrayIndexOutOfRange in EuroSubFieldPackager
  • Contributed IFE_LLLLCHAR and IFE_LLLLBINARY field packagers
  • QExec now has an QFactory alias, logs stdout to jPOS logger
  • SystemMonitor can run optional scripts (using multiple script properties)
  • jPOS-104 make sure the TransactionManager sessions <= max-sessions <= max-active-sessions
  • jPOS-103 BaseChannel now has default 5 minutes timeout
  • jPOS-101 ISOAmount constructor forces ISOCurrency scale
  • org.jpos.iso.Connector now supports a preserve-source-header property (defaults to 'true') d
  • Q2 now honors optional 'enabled' attribute in QBean descriptors
  • PADChannel now supports 'delay' property.
  • Added org.jpos.util.ConcurrentUtil
  • jPOS-102 QMUX use ScheduledThreadPoolExecutor
  • jPOS-55 QMUX getKey - make sure MTI is padded to 4 positions
  • jPOS-63 Filter sensitive in org.jpos.transaction.Context dumpMap
  • jPOS-61 Extending SMAdapter for support validation and generation of EMV Application Cryptograms ARQC/TC/AAC and ARPC

jPOS 1.9.0 -- released 2013-03-02

jPOS 1.8.9

  • JESpace has now a default txn lock timeout of 5s (instead of JE's default 500ms)
  • BaseChannel removed double notification to observers at connect time
  • KeyStoreAdaptor now registers with the NameRegistrar at init time
  • Upgraded to Gradle wrapper 1.4
  • jPOS-98 Context not serializable to JESpace
  • Added org.jpos.util.BufferedExceptionLogListener
  • GenericPackager supports 'jar:' prefix in packager-config
  • Added INSTALL support (backported from jPOS-EE, extract META-INF/q2/installs from available jars)
  • Context.dumpMap is now protected
  • added IFE_LLLEBINARY (Binary version of IFE_LLLCHAR)
  • added EbcdicBinaryInterpreter
  • added ISOUtil.asciiToEbcdic(byte[] s, byte[] e, int offset)
  • added ISOUtil.char calcLUHN (String p)
  • added ISOUtil.String getRandomDigits(Random r, int l, int radix)
  • jPOS-95 jPOS-95 Handling different character encodings by FSDMsg
  • New Build system Gradle

jPOS 1.8.8 -- released 10/27/2012 (0c2925a)

jPOS 1.8.7

  • jPOS-94 KeepAlive not honored in BaseChannel.connect(Socket)
  • jPOS-92 CLI parser gets confused with spaces
  • jPOS-89 GroupSelector's select should not be called if prepare is ABORTING (IMPORTANT NOTICE: make sure you don't need to set the call-selector-on-abort property)
  • Added wait-for-workers-on-stop to ChannelAdaptor pull#14 8e97165
  • BaseChannel now has a setSoLinger method
  • jPOS-85 UnsupportedOperationException in BaseChannel.closeSocket when using SunJSSESocketFactory
  • XMLPackager.unpack input stream now honors header
  • FSDMsg binary fields can be used as key (they get converted to hex when looking for the schema) 74d306c
  • ISOServer start/end now shows remote port number in realm
  • Profiler.dump end event now shows partial time since last checkpoint 1d6fe26

jPOS 1.8.6 -- released 06/29/2012 (f075bf3)

jPOS 1.8.5

  • jPOS-80 Expose TPS data in TransactionManager via JMX ([https://github.com/jpos/jPOS/commit/53ab608c2981a893284f04570591c53bd7b1a724 53ab608])
  • jPOS-79 Add support for Configuration providers to Q2
  • jPOS-74 Add support for Secure Messaging in JCESecurityModule
  • jPOS-73 NPE in ISOServer run when configured outside Q2
  • jPOS-72 New MultiSessionChannelAdaptor
  • jPOS-71 Extended SMAdapter to support CVC3 verification
  • jPOS-68 Improved default server socket creating in ISOServer
  • jPOS-69 Fix ThreadPool.getPoolSize()
  • Upgraded BerkeleyDB to 4.1.10 (requires java -jar je-4.1.10.jar
  • DbPreUpgrade_4_1 -h before moving to version 5, see BDB Release * Notes
  • New TSpace gc strategy with dual expirables sets

jPOS 1.8.4 -- released 04/12/2011 (3eba026)

jPOS 1.8.3

  • jPOS-47 Add support to ISOUtil.protect to accept 'D' as delimiter
  • jPOS-48 Added methods to parse and format conversion rate fields
  • jPOS-50 Adding implementation of LocalSpace for JESpace
  • jPOS-51 Update ISOCurrency.properties
  • jPOS-49 Added service of packaging complex field (as binary) if it is defined as opaque
  • jPOS-46 SimpleMsg support in ProtectedLogListener
  • [jPOS-45[(https://jpos.org/issues/issue/jPOS-45) EncryptedPIN.extractAccountNumberPart with length of accountNumber < 13
  • jPOS-44 LogEvent: ConcurrentModificationException issue
  • jPOS-43 'truncate' attribute in fixed length fields
  • jPOS-5 XMLPackager header encoding
  • jPOS-3 XMLPackager header encoding
  • jPOS-42 QMUX, header and non ISOMsgs (i.e. FSDISOMsg)
  • raise ISOException if QMUX.getKey() does not have content besides the MTI * 20b388b

jPOS 1.8.2

  • jPOS 1.8.2 0141850

jPOS 1.8.1

  • bugfix: DirPoll sets processor even if Processor is not an instance of LogSource
  • jPOS-39 XMLPackager charset bytes issue
  • TransactionManager now support dynamic session creation [g142f8bb]
  • jPOS-40 QMUX startService method query
  • Added jPOS Archetype

jPOS 1.8.0

  • First jPOS version built by Maven - We have now jpos-1.8.0 and compat_1_5_2 as independent Maven artifacts. The 1.7 series has been tagged as v1_7

jPOS 1.7.1

  • jPOS-37 Add xml definition support for TransactionManager.statusListeners ([https://github.com/jpos/jPOS/commit/0b8b16e0de116b805dc4c6088f4b238426d47934 0b8b16e])
  • As of r3019, we moved the jPOS development to [http://github.com/ar/jPOS Github]
  • GenericPackager now uses an entity resolver (r3019)
  • Bugfix on MAC generation, use HashMap instead of TreeMap in JCEHandler (r3002)
  • jPOS-24 TSpace.dump now shows key count (r3008)

jPOS 1.7.0''' -- released 25/06/2010 (r3000)

  • Tagged as tags/v1_7_0

jPOS 1.6.9

  • jPOS-21 QServer registers the underlying ISOServer with the NameRegistrar, but not QServer itself (r2944)
  • Q2 now has an instanceId (r2949)
  • Q2 now support transient descriptors (r2950)
  • jPOS-23 Encoding issue in ISOMsg.getBytes(int) and ISOMsg.getBytes(String) (r2959)
  • ReConfiguration now deprecated (r2961)
  • BSHTransactionParticipant, BSHGroupSelector and BSHMethod moved to module txnmgr. Package renamed to org.jpos.transaction.participant (r2962)
  • ISORequest moved to compat_1_5_2 module (r2963)
  • jPOS-3 improved unpack exceptions
  • jPOS-12 Add ability to use 'header' as part of the key in QMUX's ''
  • jPOS-25 JESpace now implements Loggeable
  • jPOS-19 QMUX - add ability to use inner fields as keys (r2972)
  • jPOS-20 ChannelAdaptor write-only mode and timeout (r2974)
  • Q2 now supports NameSpaces and XInclude (r2982)
  • jPOS-30 LMK & scheme variants for JCESecurityModule (r2983)
  • jPOS-31 BaseChannel small issues packager before filters (r2989)
  • jPOS-32 Updated ISOCurrency.properties (r2996)
  • jPOS-33 NPE issue on unconnected ChannelAdaptor when calling isConnected() (r2997)
  • jPOS-34 ISODate now supports Locale (r2998)
  • jPOS-35 BaseChannel.receive now logs ISOMsg before applying filters (r2999)

jPOS 1.6.8 -- released 25/06/2010 (r2938)

  • Tagged as tags/v1_6_8

jPOS 1.6.7

  • Added ISOPackager.getDescription(), ISOMsg.dump() now shows packager's description as a comment (r2850)
  • HEXChannel new behavior [https://jpos.org/issues/issue/jPOS-6 jPOS-6] (r2851)
  • GenericPackager now push logger to sub packagers [https://jpos.org/issues/issue/jPOS-8 jPOS-8] (r2853)
  • Added Space.put operation (r2858)
  • Profiler support for duplicate checkpoint descriptions (r2859)
  • Include fpath option on hasField and unset (r2860)
  • [https://jpos.org/issues/issue/jPOS-10 jPOS-10] Issue with ProtectedLogListener and ISOMsg change to use TreeMap (r2861)
  • Added ISOMsg.getComponent(fpath) (r2864)
  • [https://jpos.org/issues/issue/jPOS-2 jPOS-2] ISOUtil​.​protect doesn​'​t properly mask track​-​1 trailer (r2867)
  • Add support for a FSDMsg to have a default key schema and not require every key to has its own schema (r2869)
  • [https://jpos.org/issues/issue/jPOS-13 jPOS-13] ISOMsg/ISOAmount serialization issue (r2873)
  • [https://jpos.org/issues/issue/jPOS-16 jPOS-16] LogEvent records log time and LogEvent lifespan (r2877)
  • [https://jpos.org/issues/issue/jPOS-17 jPOS-17] Added max-active-sessions and retry-timeout to TransactionManager (r2886)
  • Upgraded jDOM to 1.1.1 (r2887)
  • QServer has support for in and out queues (r2892)
  • Added new QMUXProxy, QMUXProxyAdaptor and RemoteQMUX (r2892)
  • Profiler now uses nanos instead of millis for better accuracy (r2898)
  • Added automatic profiling to TransactionManager (r2899)
  • Added org.jpos.util.TPS, TransactionManager StatusEvents, TMMonitor (r2919)
  • Updated JE libraries to 4.0.103 (r2929)
  • CardHolder(ISOMsg) expiration date is now optional (r2932)
  • TransactionManager's paused-timeout default is now 0 (r2933)

jPOS 1.6.6

  • Tagged as tags/v1_6_6

jPOS 1.6.5

  • DirPoll now accepts a 'zero-length' property (r2721)
  • Space interface now supports generics (r2729)
  • Added ISO-8583 v2003 support (r2731)
  • Added helper method boolean ISOMsg.getFields() (r2733)
  • Added Q2 start() and stop() methods (r2735)
  • OneShotChannelAdaptor now support handback-field(s) property (r2740)
  • New build target 'srcjar' for source browsing and debugging in IDEs like Eclipse (r2750)
  • Added org.jpos.util.WatchDog (r2752)
  • Added XML preamble to RotateLogListener (and DailyLogListener) r2761
  • Fixed issue with ISOMeter counters not going beyond 1M messages (r2763)
  • Added JESpace (r2784)
  • Added junit.jar to lib/test directory, and added tests and code for separator attribute and nested property elements in key fields for handling key fields with values like backslash and spaces (r2788).
  • ChannelAdaptor.getCountersAsString() now show idel time instead of last transaction timestamp (r2789)
  • Added BaseChanne.getDynamicHeader(header, image) (r2791)
  • QMUX fixed bug with notifications (xx4x/xx50) (r2804)
  • QMUX Handle situations where STAN length is > 6 in versions earlier than v2003 (r2808)
  • BaseChannel fixed important bug in clone that affects ISOServer (r2813)
  • XMLPackager now suppors payload as field content in addition to the 'value' attribute (r2817)
  • Aligned packing length error to match class name on several ISOFieldPackagers (r2818)
  • Provide direct route into Channel to allow sending of data in addition to ISOMsg (r2822)
  • Added Dumpable helper class and DebugFilter (r2827)
  • ISOComponent.getChildren is now a Map (r2836)
  • Bugfix in BCDInterpreter, RIGHT_PADDER_F, added IFB_FNUMERIC and IFB_FLLNUM (r2841)
  • QMUX XML config now support mtimapping element (r2842)

jPOS 1.6.4 -- released 25/5/2008 (r2710)

  • Tagged as tags/v1_6_4

jPOS 1.6.3

  • Default MAC implementations in JCESecurityModule for CBC-MAC and EDE-MAC based on MAC algorithms available in BouncyCastle JCE provider (r2633 - demsey)
  • Added FSDISOMsg, DummyPackager and FSDChannel (r2635)
  • Bugfix in BCDInterpreter related to padding (r2636)
  • Use ISO8859_1 encoding in FSDMsg and FSDISOMsg (r2640)
  • FSDMsg now has a setMap(Map) method (r2645)
  • FSDMsg added dummy separator (DS) (r2646)
  • Prevent defense in JDBMSpace.gc() and TSpace.gc() to avoid killing DefaultTimer on exeption (r2649)
  • Added Contributed QBeanFactory (r2656 - bharavi)
  • ISOUtil handle odd-length in hex2byte (String) (r2656 - bharavi)
  • Added Space.existAny(Object[] keys) and Space.existAny(Object[] keys, long timeout) (r2664)
  • NACChannel supports new optional property 'tpdu-swap', defaults to true, the old behavior (r2667)
  • Added IFMC_LLBINARY, patched EuroSubFieldPackager in order to deal with Binary fields (r2669)
  • Added TelnetXMLChannel (r2670 - mark)
  • Fixed bug in ISOMsg's bitmap when using fields > 192 (r2673)
  • Added ChannelInfoFilter (r2674)
  • Added SysLogListener (r2688)
  • Prevented ArrayIndexOutOfRange in ISOBasePackager.getFirstField() (r2700)
  • Optimized imports in DirPoll, removed dependencie with compat_1_5_2 [ReConfigurable] (r2701)
  • Added getEntry to Profiler (r2704 - dbergert)

jPOS 1.6.2 -- released 25/5/2008 (r2626)

  • Tagged as tags/v1_6_2

jPOS 1.6.1

  • added ISOCurrency.getCurrency(String) (r2466)
  • added ISOPackager.createISOMsg() factory method (r2469)
  • new SpaceTap class (r2475)
  • added IFA_LLLLBINARY (r2480)
  • added Context.resume(), new ISOResponseListener interface (Work in progress) (r2488)
  • added ISOServer.getISOChannel(String) method (r2490)
  • added getCountersAsString and resetCounters to QMUX and ChannelAdaptor MBean (r2494)
  • added getCountersAsString(*) to QServer and ISOServer (r2500)
  • ISOServer, QMUX and ChannelAdaptor are now loggeables (and would dump the counters) r2502
  • QMUX implements async functionality (r2509)
  • Added jPOS CLI support and some initial commands (r2517)
  • add new helpers to Configuration (getInts, getLongs, getDoubles...) (r2530)
  • new ThroughputControl and ThroughputControlFilter (r2530)
  • added ISOMsg.getBytes(int) (r2532)
  • bugfix in FSDMsg leading blanks on variable length fields, added EOF modifier (r2539)
  • added Space.push operation (r2541)
  • resumed transactions take precedence over standard ones (r2542)
  • added GZIPChannel flush (r2545)
  • fixed race condition in TransactionManager pausable context (r2547)
  • Added optional "recover" configuration property to TransactionManager (defaults to true, r2548)
  • ChannelAdaptor, added optional 'ignore-iso-exceptions' element (r2551)
  • bug fix in QMUX.mapMTI (issue matching retransmissions) (r2556)
  • QMUX support for ISO-8583 version 2003 (STAN's length is 12) (r2564)
  • Added new connect-timeout configuration property to BaseChannel (r2567)
  • BaseChannel now support [multiple] alternate-host and alternate-port (r2568)
  • License upgrade to AGPLv3.0 (r2569)
  • Removed MX4J-specific JMX extensions - MX4J is now optional (r2571)
  • Added NameRegistrar.getIfExists (r2576)
  • EBCDIC related packager support contributed by Alexander Yakovlev (r2593)
  • ISOMsg - added support for field paths (r2596)
  • ProtectedLogListener support field paths (r2598)

jPOS 1.6.0 -- released 21/4/2007 (r2465)

  • Upgrade to jdom-1.0.jar
  • Changed LogEvent to support new jdom version
  • Upgraded build system (uses jPOS-EE's approach
  • Added DailyLogListener
  • Use crimson instead of xerces
  • Created compat_1_5_2 module
  • Upgraded jdbm to 1.0
  • transient:* and persistent:* Spaces 'urns' now maps to TSpace and JDBMSpace
  • ISOMsg writeExternal and readExternal now honors packager if available
  • ISOMsg.set(int,String) can be used for ISOBinaryFields provided there's a packager associated with the ISOMsg (the string is interpreted as hex)
  • Added appropriate thread names
  • TransactionManager stuff moved to its own module 'txnmgr'
  • BaseChannel.disconnect closes socket before closing streams (better SSL behaveour)
  • ISOServer do not drop connection on VetoException
  • bugfix in Log4JListener (if watch=0 use default watch to avoid CPU going up to 100%
  • TSpace and JDBMSpace throws NPE at out time if either key or value are null
  • ISOCurrency's data moved to a ResourceBundle
  • Dump hexstring of binary fields in ISOBasePackager.unpack
  • Added IFE_AMOUNT
  • Added TransactionManager debug property
  • TransactionManager creates default persistent-space if one is not specified
  • TransactionManager honors participants configured after group selectors
  • TransactionManager now support RETRY action at prepare time (r2359)
  • QServer.stop - avoid npe on unstarted/misconfigured servers (r2360)
  • ISOChannelPanel now supports wipe and protect attributes (r2363)
  • Added IFE_SIGNED_NUMERIC and SignedEbcdicNumberInterpreter
  • Added sendKeepAlive() method to BaseChannel
  • New ´keep-alive´ element in ChannelAdaptor
  • FSDMsg trunk fields bigger than length
  • Reworked 3rd bitmap support
  • QMUX now support multiple ready indicators
  • NPE in Q2 startup when deploy directory is not available/readable
  • ISOServer now honors new keep-channels property (true|false)
  • Added bind-address and backlog properties to ISOServer
  • ISOServer: close ThreadPool on shutdown
  • FSDMsg truncate A fields larger than length
  • synchronized NameRegistrar
  • GenericSubFieldPackager - pack dummy fields if field is not available and inner message has no bitmap
  • QMUX now supports new .. configuration element (defaults to 41, 11).
  • Added org.jpos.transaction.participant.HasEntry general purpose Group Selector
  • TransactionManager attempts to call setTransactionManager(TransactionManager) on participants
  • Bugfix in IF_TCHAR (unpack offset - r2410)
  • Added Q2.shutdown (boolean join) (r2414)
  • Added Join participant (r2416)
  • Added keep-alive property to BaseChannel (r2417) - feature request #404
  • Include a call to tx & rx.interrupt so that an idle ISOMUX will honour terminate requests.
  • added setOverrideHeader(boolean) and isOverrideHeader() to BaseChannel
  • ISOUtil.normalize uses UTF-8 encoding
  • BaseChannel: added protected int getHeaderLength(ISOMsg m)
  • TransactionManager.stop() wait (via join) for sessions to terminate (r2422)
  • ISOServer/ThreadPool: Added socket closure in the event of ThreadPool exhaustion. Combined with a tightening of count of active, working and available Threads in ThreadPool itself (r2423).
  • Added IFA_LLLLLLCHAR field packager (r2424)
  • Bugfix in DailyTaskAdaptor in order to deal with daylight saving change (r2425)
  • XMLPackager honors optional 'header' element at unpack time. (r2426)
  • bugfix in ChannelAdaptor: honor reconnect delay on peer-disconnect exceptions (r2429)
  • Added new configuration element to QMUX (r2432)
  • genericpackager.dtd - added optional firstField element to fieldpackager and isofieldpackager (r2434)
  • QMUX added removeISORequestListener (r2435)
  • IFB_LLLHCHAR, IFB_LLLHECHAR and IFB_LLLHBINARY length can go up to 65535 (r2437)
  • ISOBasePackager - add support for composite MTIs (r2438)
  • BaseChannel accepts new max-packet-length optional property - new default size 100k (r2441)
  • bugfix: ISOServer clones max-packet-length
  • Added new MUXPool component (r2443)
  • TransactionManager minor optimization - do not take snapshot if psp is not actually persistent (r2444)
  • SpaceUtil new wipeAndOut helpers (r2447)
  • TransactionManager - new PAUSE support (r2448)
  • bugfix: GZipChannel compressed/uncompressed length (r2458)
  • TransactionManager new method getOutstandingTransactions (r2459)
  • added org.jpos.transaction.participant.Forward (r2459)
  • added org.jpos.transaction.participant.CheckPoint (r2460)
  • QFactory.properties added txnmgr and transaction-manager aliases (r2462)

jPOS 1.5.2

  • Tagged as v1_5_2 - only available via subversion

jPOS 1.5.1

  • org.jpos.util.DefaultTimer - set daemon flag
  • FSDMsg: use TSpace instead of TransientSpace
  • BASE1Header.unpack doesn't clone byte array
  • ChannelAdaptor now registers itself in the NameRegistrar
  • IFB_BITMAP, deal with primary bitmaps where bit 0 turned on doesn't mean we have a secondary bitmap.
  • FSDMsg, bugfix: read was breaking on FS, even if fs=false
  • ConnectionPool - Altered getConnection to wait if maxConnections is not reached and a new connection is pending even if waitIfBusy is false.
  • Added QBean based SystemMonitor (org.jpos.q2.qbean).
  • BSHFilter honors returned ISOMsg
  • Q2 prevents exiting the JVM when not running in standalone mode (i.e. inside an appserver)
  • org.jpos.ui.action.Exit now accepts an optional exit code
  • q2mod_jpos added ConnectionPoolAdaptor
  • BaseChannel.sendMessage (byte[] b, int offset, int len) was not honoring offset and length - fixed.
  • QMUX register itself with the NameRegistrar at ''init'' time instead of ''start''
  • NPE in ISOUtil.trimf
  • IF_NOP.pack now returns a zero-length byte array instead of null
  • EuroSubFieldPackager.pack fixed problem with ebcdic subfields
  • Added support for postpack F127.26
  • Fixed postpack fields 127 and 52
  • BSHTransactionParticipant implements AbortPartipant - added optional trace attribute
  • ISOBasePackager.unpack raises exception if field packager not configured
  • Added SunJSSESocketFactory.getConfiguration()
  • BaseChannel now honors local-iface and local-port properties
  • Fixed bug in ISODate.parseISODate, added unit tests
  • ChannelAdaptor doesn't disconnect on VetoException
  • BSHFilter handles VetoException
  • TLVList allow starting offset on unpack
  • FSDMsg.dump more YAML-ish and less XML-ish
  • q2modules - added OneShotChannelAdaptor
  • TLVList allow data stream being unpacked to end with padding (0x00 or 0xFF)
  • Bug fix in BCDInterpreter (when using RIGHT_PADDED_F)
  • Added GZIPChannel
  • ISOMsgPanel: Ask the message to be displayed for the highest field, rather than assume 128
  • ConnectionPool retries connections on errors (r2260)
  • GenericSubFieldPackager skip over null fields, this allows fields to be non-sequential in number. (r2262)
  • Q2 - Include thrown Errors in the problem renaming processing (.ENV extension)

jPOS 1.5.0

  • Released in 09/18/2005 (Tagged v1_5_0)

jPOS 1.4.9

  • new package org.jpos.tlv (TLVMsg, TLVList)
  • Added HEXChannel
  • LogEvent new constructors (no need for LogSource), added toString()
  • FSDMsg supports 'B' type (Binary data)
  • DirPoll - ability to archive processed requests
  • BaseChannel.disconnect - set SO_LINGER to zero
  • #423 - ISODate.parseISODate - force milliseconds down to zero.
  • Changed sendMessageTrailler signature in order to make packed image available.
  • Added interface ReadableConfiguration
  • Added Configuration.put
  • JDBMSpace and TSpace performs automatic gc by means of a Timer task
  • Added LocalSpace.addListener(key,listener,timeout)
  • New TSpace implementation
  • Added ObjectTemplate
  • bugfix in SpaceProxy jndi binding
  • BSHRequestListener whitelist support
  • Added BSHTransactionParticipant and BSHGroupSelector
  • Added XmlConfigurable to jpos-util.jar
  • Q2Configurable replaced by org.jpos.core.XmlConfigurable
  • Q2ConfigurationException replaced by ConfigurationException
  • ISOException accepts throwable as nested parameter (instead of Exception)
  • Bugfix in ISOUtil ebcdic tables
  • Enhanced support for SSL in ChannelAdaptor and QServer
  • Added IFB_LLLHCHAR
  • Bugfix in RowMap (escape "'")

jPOS 1.4.8

  • released Oct 2004 (tagged: v1_4_8)

jPOS 1.4.7

  • Added ExceptionLogFilter
  • Added setSocketFactory(ISOClientSocketFactory) to ISOChannel. All classes who implement ISOChannel will need to add this method.
  • Made SunJSSESocketFactory configurable. Can specify keystore and clientauth now in Q2.
  • SunJSSESocketFactory client authentication added.
  • Upgrade to JDom beta 10
  • LogEvent now handle JDom Elements
  • added org.jpos.transaction.GroupSelector
  • added JDBMSpace.getKeys()
  • Bugfix in ISOBasePackager (fields > 128)
  • Added SpaceUtil.nextLong(sp,key)
  • MX4J upgraded to 2.0.1
  • ISOServer: new factory method createSession
  • ISOServer: new method getLastConnectedISOChannel
  • BaseHeader implements Loggeable
  • ISOMsg.dump dumps header
  • BaseChannel.receive hexdumps header and binary image on ISOException
  • Added org.jpos.transaction package
  • Added ISOUtil.hexdump (byte[], int, int);
  • Bugfix in IFEB_LLNUM.unpack (ISOComponent, InputStream)
  • Added TinySpace, org.jpos.space.Request
  • CardSelector, added remove(CardBrand) method
  • CardBrand, added handBack object
  • Added Padder, Interpreter and Prefixer interfaces for easy implementation of field Packagers.
  • Added JDBMSpace template based in/rd
  • New ISOFieldPackager implementation (based on interpreters, padders and prefixers)
  • Added BSHLogListener
  • Track1 support in CardHolder
  • Added SpaceUtil
  • Added SpaceFactory(spaceUri), SpaceInterceptors
  • Added FSDMsg (Field Separator Delimited Message)
  • Bugfix: IFB_LLLHECHAR wrong maxlength
  • Added helper ISOUtil.hexdump (String)
  • Bugfix: handle ISOException in ISOMUX.doTransmit
  • Added ISOBasePackager.setFieldPackager (int, ISOFieldPackager)
  • Added JDBMSpace
  • Added Space.out (key,value,timeout) method
  • New ISO93BTLVPackager/TLVField, etc.
  • LogListener.log now returns a [possibly null] LogEvent
  • New package org.jpos.ui
  • Added org.jpos.bsh (BSHFilter, BSHRequestListener)
  • New method ISOUtil.str2bcd (String s, boolean padLeft, byte fill)
  • Bugfix: NPE in ISOServer.checkPermission when used standalone
  • Bugfix: RotateLogListener.logDebug () - synchronized
  • Support AspectJ 1.1

jPOS 1.4.6

  • released Jul 2003 (tagged: v1_4_6)

jPOS 1.4.5

  • Removed Q2 and related modules.
  • Added PersistentSpace
  • Added ISOMsg setSource/getSource
  • Support for ISOValidators (contributed by Jose Eduardo Leon)
  • New application: Q2
  • Replaced JMXRI by MX4J, new HTTPAdaptor, JNDIAdaptor and RMIAdaptor
  • Security: new 'allow' property in ISOServer (checks peer IP)
  • Added: packager/nyceiso8583.xml (contributed by Henry Chan q8e192@yahoo.com)
  • QSP: new thread-pool tag
  • ISOMeter, new scroll and refresh attributes (contributed by Kris Leite)

jPOS 1.4.4

  • released Sep 2002 (tagged: v1_4_4)

jPOS 1.4.3

  • Removed deprecated ISOFactory and ISOFactory based examples
  • New org.jpos.apps.qsp.Router class
  • SQLFilter and CalculateFilter contributed by Zhiyu Tang
  • QSP New tag
  • New org.jpos.space package and supporting classes
  • New MUX and Channel interfaces
  • New Stream based pack/unpack
  • New stream based approach to PADChannel
  • New ChannelPool
  • Bugfix: MacroFilter problem with nested ISOMsgs
  • XMLChannel: Better handling of message boundary
  • New BlockingQueue.dequeue (timeout) method
  • GenericPackager now support reading config file from XML InputStream (code contributed by Mat?as Salvador mhs@sisa.com.ar)
  • QSP's tag now support new "class" attribute (code contributed by Andres Alcarraz aalcarraz@cabal.com.uy)

jPOS 1.4.2

  • Released May 2002 (tagged: v1_4_2)

jPOS 1.4.1

  • Added IFA_LCHAR (contributed by Kris Leite)
  • New SubConfiguration class contributed by Andres Alcarraz
  • BaseChannel honours header
  • Sender and MacroFilter added support for specifying timezone in the $date
  • Added org.jpos.security package, examples, unit tests
  • QSP Sender task is now an MBean
  • new ISOMsg.unset (int []) method
  • MacroFilter now accepts "valid" and "unset" config properties
  • new WebServer task (integrates Jetty with QSP)
  • new TLVPackager
  • new EJBConnector (and EJBConnectorMBean)
  • new LogChannel/LogPackager can be used to reprocess jPOS's log files
  • Bugfix: AWT blocker activation interrupted (JDK1.4+QSP+GUI)
  • Bugfix: jmxri.jar added to jpos.jar's manifest

jPOS 1.4.0

  • Released Feb 2002 (tagged: v1_4_0)

jPOS 1.3.9

  • Added MacroFilter (useful to set sequencers, date, etc.)
  • Added SAFChannel (reliable Store and forward)
  • Sender task now support $date and $sequencer, sequencer property and one-shot.* Added preliminary JMX support
  • Tagged all files as v1_3_9_preJMX
  • added byte[] ISOUtil.hex2byte (String s)
  • added static Configuration QSP.getGlobalConfiguration()

jPOS 1.3.8

  • Released Nov 2001 (tagged: v1_3_8)

jPOS 1.3.7

  • Added static QSP.getTask (name);
  • QSP allows custom tags
  • Configuration now allow multiple properties with the same name.
  • New helper method in Configuration.
  • QSP qsp-config accepts name and property*.
  • QSP : name attribute is added as a property to configuration object.
  • QSP : added support for non-Runnable tasks.
  • bugfix: NullPointer in Header serialization (reported by Bharavi).
  • ConnectionPool QSP example (added by Rajal)
  • bugfix: XMLPackager - problem with inner messages (added unittest)
  • bugfix: ProtectedLogListener setting alien wiped fields
  •     (Thanks Soren Hilmer <sh@itplus.dk>).
    
  • bugfix: ISOBaseHeoder.unpack, use factory method for MTI too
  •     (Thanks Soren Hilmer <sh@itplus.dk>).
    
  • moved BASE1Header from org.jpos.iso to org.jpos.iso.header.
  • added org.jpos.iso.ISOHeader and org.jpos.iso.header package .
  • VAPChannel now uses org.jpos.iso.header stuff.

###jPOS 1.3.6 *Released Sep 2001 (tagged: v1_3_6)

jPOS 1.3.5

  • New renumber test in examples/isomsg
  • Added ISOMsg.move (old,new) method.
  • Added setFieldNumber to ISOComponent in order to effectively renumber
  • a component. --thanks Eoin!
  • BaseChannel setHeader before unpack (unpack can access header) --thanks Eoin!
  • Bugfix: extended bitmap was generated/expected when MAC present --thanks Hani!
  • Added ConnectionPool support (tpl and QSP) --thanks Rajal!
  • Added static launch(String) method to QSP
  • Added PackagerWrapper and CryptoPackager
  • Preliminary jUnit support (ant's "test" target)
  • Changed build.xml (conditionally build ext module if jars are available)
  • LoopbackChannel now clones incoming ISOMsg (in order to simulate a real channel)

###jPOS 1.3.4

  • Released Jun 2001 (tagged: v1_3_4)

jPOS 1.3.3

  • new Externalizable strategy on ISOMsg.
  • new class org.jpos.util.DefaultTimer().
  • RotateLogListener uses DefaultTimer (instead of its own Thread requires JDK1.3).
  • RotateLogListener accepts new 'maxSize' parameter.
  • new method ISOUtil.protect();
  • Added ProtectedLogListener.
  • LogEvent added getPayLoad() (required by ProtectedLogListener.
  • updated build and jars (Ant 1.4 - crimson, jaxp).
  • added log4j preliminary support.
  • Added BaseChannel.getServerSocket().
  • ISOBasePackager.unpack rethrows ISOException (should an Exception occur).
  • ISOBinaryField.setValue accepts either byte[] or String.
  • ISOMsgFieldPackager.pack allow components other than ISOMsg to be passed in.
  • BaseChannel.newSocket changed signature (no args now).
  • BaseChannel.accept now closes listening socket.
  • ISOMsg set(fldno,String), set(fldno,byte[]) and new constructor ISOMsg(mti).
  • New classes ISOServerFactory and ISOClientFactory
  • BaseChannel new easy to override sendMessage (encryption hook).
  • BaseChannel uses ISOClientFactory (SSL hook).
  • Changes to BaseChannel and ISOServer to support SocketFactories
  • Added SunJsseSocketFactory contributed by Bharavi Gade.
Clone this wiki locally
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.