Habari Client libraries release 2014.09

Habarisoft released new versions of Habari Client libraries for Delphi and Free Pascal application integration with free open source message brokers.

Tested with current message broker versions

  • Apache ActiveMQ 5.10.0
  • Apollo 1.7
  • HornetQ 2.4.0.Final
  • Open MQ 5.1 b09
  • RabbitMQ 3.3.5


  • Unhandled Exceptions in WaitForReceiptFrame are re-raised to notify client code about the exception
  • Fixed compiler error undeclared identifier ‘ShortDateFormat’ when using Log4D with newer Delphi versions
  • Fixed Free Pascal compiler warning about deprecated ShortDateFormat in Log4D
  • Fixed Free Pascal compiler error ‘unknown identifier: TClassList’ and run time error SIGSGEV (Linux)
  • Fixed CurrentUTC method by using LocalTimeToUniversal (Free Pascal)


  • changed the Receive methods to update the heart-beat timestamp when heart-beats arrive, even if no message has been received. With this change, it is no longer required to call the CheckHeartbeat method periodically if no message arrived
  • ITextMessage.Text is now of type string instead of WideString
  • all persistent messages will be sent with a receipt request
  • improved Free Pascal and Linux support
  • Eliminate duplicate code in map message transformers
  • Added a check that the STOMP frame ends with a NUL byte and raise a EBTStompError if a non-NUL byte is found, to indicate a STOMP protocol violation (and a potential loss of data)

New features

  • Added a transformer class for map message exchange based on the Superobject JSON library
  • Added a transformer class for map message exchange based on the default XML parser library in Delphi (IXMLDocument)
  • Added class TBTConnectionBuilder which can be used to construct a connection by chaining configuration methods (experimental/unsupported code)
  • Added Free Pascal version of ConsumerTool application
  • Added unit tests for durable subscriptions
  • Added unit tests and a mock server to verify that the library detects a connection loss
  • Added Free Pascal version of throughput test application

DUnit and FPCUnit tests