Habari STOMP Client libraries 10.3: release candidate 1 available

Habari STOMP Client libraries 10.3: release candidate 1 available The first release candidate of version 10.3 of the Habari STOMP Client libraries for Delphi and Free Pascal is now available for ActiveMQ, Artemis, OpenMQ and RabbitMQ. Version 10.3 brings asynchronous receive to the simplified API, fixes several defects around message listeners, heart-beats and receiving, runs … Continue reading Habari STOMP Client libraries 10.3: release candidate 1 available

From Java to Delphi in one HTTP GET: ActiveMQ objects over REST

How do you get a Java object from Apache ActiveMQ Classic into a Delphi application with nothing but HTTP? A new open-source starter project shows one way: https://github.com/michaelJustin/delphi-activemq-rest-starter The idea A Java sender creates a plain JMS ObjectMessage holding an Order object. A client-side MessageTransformer converts the object to JSON on the way out, in … Continue reading From Java to Delphi in one HTTP GET: ActiveMQ objects over REST

PREVIEW Habari STOMP Client 10.3: Asynchronous Receive Grows Up

Habari STOMP Client 10.3 is not final yet, but it is approaching its first release candidate for ActiveMQ, Artemis, OpenMQ and RabbitMQ. Its main theme is IMessageListener: asynchronous receive is now a supported feature, with documented limits, in both the classic and the simplified API. IMessageListener is now a supported feature Until now, listener-based receive … Continue reading PREVIEW Habari STOMP Client 10.3: Asynchronous Receive Grows Up

Habari STOMP Client libraries 10.2 released

Version 10.2 of the Habari STOMP Client libraries for Delphi and Free Pascal is now available for ActiveMQ, Artemis, OpenMQ and RabbitMQ. It turns two compile-time options into run-time settings and fixes two defects that could stall or corrupt a connection. New Line-length limit at run time. Cast the connection to IMaxLineLength and set MaxLineLength before calling Start. This helps when … Continue reading Habari STOMP Client libraries 10.2 released

PREVIEW: What’s New in Habari STOMP Client 10.2

Version 10.2 of the Habari STOMP Client libraries moves two settings that used to require a recompile into ordinary properties on the connection, and fixes two defects that could stall or corrupt a connection at run time. As always, the same code works against all four supported brokers. New New: The maximum length of a STOMP … Continue reading PREVIEW: What’s New in Habari STOMP Client 10.2

PREVIEW: The timeout that wasn’t

Every read in the mORMot2 transport took a timeout parameter, and none of them honoured it. Here is why a Receive(1000) could wait forever, and what changed. Affects: mORMot2 comm adapter only Unaffected: Indy, Synapse Products: all Habari Client libraries (for ActiveMQ · Artemis · OpenMQ · RabbitMQ) Verified on: Delphi 2009, FPC 3.2.2 The symptom Select … Continue reading PREVIEW: The timeout that wasn’t

PREVIEW: Failover, configured from code

Connecting across a list of brokers no longer means recompiling the library. The failover: transport is now switched on at runtime, per connection, through a small interface on IConnection. Why the define had to go Habari has long understood a failover connection URL — failover:(stomp://a,stomp://b) — that tries each broker in turn and reconnects with backoff when a connection can … Continue reading PREVIEW: Failover, configured from code

PREVIEW: Setting the line‑length limit from code

A new MaxLineLength property on IConnection replaces the HABARI_X_MAXLINELENGTH compile‑time switch — so one application can raise the limit for one connection without rebuilding the library. Applies to The Indy transport. Synapse and mORMot2 accept the value and ignore it. New API IMaxLineLength in BTCommInterfaces, implemented by every IConnection. Supersedes HABARI_X_MAXLINELENGTH — still honoured, now with a deprecation warning. The problem Indy caps how long … Continue reading PREVIEW: Setting the line‑length limit from code