Application integration with Delphi and Free Pascal
With Habari Client libraries, Delphi and Free Pascal developers can take advantage of message broker technology, which is distributed, loosely coupled, reliable and asynchronous, and build integrated systems, connecting clients using the peer-to-peer or the publish and subscribe communication model. Delphi and Free Pascal applications - including multi-threaded servers, services, ISAPI and stand-alone web applications - can communicate at high speed, exchanging up to thousands of messages per second.
Since 2008, Habari Client libraries provide access to standards-based, enterprise quality messaging solutions. Supported message brokers now include Apache ActiveMQ, Apollo, HornetQ, Open MQ, and RabbitMQ. These open source message brokers also support clients for other languages and protocols, which is a key to integration of cross-language / cross-platform systems with Delphi and Free Pascal applications.
Last but not least, Habari Client libraries can also be used for integration with Java™ EE application servers such as TomEE, Geronimo, GlassFish, WildFly and WebLogic, which have been tested with open source message brokers or use them as their default messaging service implementation.
Simply playing around with it this morning I have been able to connect to my topics and receive messages from a Java Enterprise application. It's fantastic. I have done in 3 hours what I thought it would take 4 weeks ... That's great. Thanks a million.
A. B., United Kingdom
Habari Client libraries use a programming model which is based on message producers and message consumers. The basic API is the same for all library versions to allow easy migration between supported message brokers (with the exception of broker-specific features). It is loosely based on the Java Message Service (JMS) API.
For client-specific demo and documentation downloads and registered versions, please choose your library version below, or from the products menu.
| Habari Client Version | ActiveMQ | Apollo | HornetQ | OpenMQ | RabbitMQ |
|---|---|---|---|---|---|
| Message Types | |||||
| TextMessage / BytesMessage | ✓/✓ | ✓/✓ | ✓/✓ | ✓/✓ | ✓/✓ |
| ObjectMessage / MapMessage | ✓/✓ | ✓/✓ | ✓/✓ | ✓/✓ | ✓/✓ |
| JMS Mapping | |||||
| Temporary Queues | ✓ | ✓ | ① | ✓ | ✓ |
| Durable Topics | ✓ | ✓ | ✓ | ✓ | ✓ |
| JMS STOMP bindings | |||||
| Message Expiration | ✓ | ✓ | ✓ | ✓ | ✓ |
| Message Priority | ✓ | ① | ✓ | ✓ | ① |
| Persistent Message | ✓ | ✓ | ✓ | ✓ | ✓ |
| Message Selector | ✓ | ✓ | ✓ | ✓ | ① |
| Advanced Features | |||||
| Fail-over Support | ✓ | ✓ | ✓ | ✓ | ✓ |
| Log4D Support | ✓ | ✓ | ✓ | ✓ | ✓ |
| Object Exchange | ✓ | ✓ | ✓ | ✓ | ✓ |
| Transacted Send | ✓ | ✓ | ✓ | ✓ | ✓ |
| Application Types | |||||
| VCL app / Console app | ✓/✓ | ✓/✓ | ✓/✓ | ✓/✓ | ✓/✓ |
| ISAPI DLL / Service app | ✓/✓ | ✓/✓ | ✓/✓ | ✓/✓ | ✓/✓ |
| Compiler | |||||
| Delphi 2009+ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Delphi 6 - 2007 | ② | ② | ② | ② | ② |
| Free Pascal 2.6.0 | ② | ② | ② | ② | ② |
| TCP/IP Libraries | |||||
| Internet Direct (Indy) 10.5.9 | ✓ | ✓ | ✓ | ✓ | ✓ |
| Ararat Synapse 40 | ✓ | ✓ | ✓ | ✓ | ✓ |
|
① - not supported by message broker STOMP implementation ② - with limitations, please contact us for details |
|||||
Animolecular Ltd
APD Communications
Banco Privado de Inversiones Argentina
Burrows Communications Ltd
Clinicient
Lombard Risk
Mandiri Sekuritas PT
NIZO Food Research
OXXO
Peer Software, Inc.
Raytheon
Sabre Travelocity
Samuel Sekuritas Indonesia
SOPTIM AG
Taiwan Semiconductor Manufacturing Company Ltd
Thum+Mahr GmbH
Transrail Sweden AB
Tudor Investment Corporation
Veltec Soluções Tecnológicas Ltda.
Habari is a word in the Swahili language for "message" and "news"