Jump to content

mjustin

Members
  • Content Count

    80
  • Joined

  • Last visited

  • Days Won

    2

Posts posted by mjustin


  1. Habarisoft released new versions of its native STOMP client libraries for Delphi / Object Pascal for integration with popular open source message brokers:

     

     

    Release notes can be found at: https://www.habarisoft.com/release_notes.html

    Home page and demo applications

    Home page: https://www.habarisoft.com/

    About Habari STOMP Client libraries

    Habari STOMP Client libraries enable Object Pascal applications to take advantage of message broker / message queue technology - which is distributed, loosely coupled, reliable and asynchronous - to build integrated systems, using peer-to-peer and publish-subscribe communication models.

    The libraries are available for the open source message brokers ActiveMQ, ActiveMQ Artemis, Eclipse OpenMQ and RabbitMQ. ActiveMQ and OpenMQ are also serving as default messaging subsystems in Enterprise Application Servers such as GlassFish, Payara, TomEE+ or WildFly.

    Typical use cases of message brokers include: load balancing (distributed processing), client notification in multi-tiered applications, dynamically configuring and controlling software, alerting and logging, and integration with ISAPI, PHP, .NET, Python or Jakarta EE based web applications.


  2. A TClientDataSet (together with a TDataSetProvider) can be used. Even when the Connection is closed, the TClientDataSet is still showing all data.

    This briefcase-model programming style is available since around Delphi 3, where the architecture was branded as MIDAS, later renamed to Datasnap.

     

    So basically this is needed:

    * a TFDQuery

    * which is connected to a TDatasetProvider,  which in turn

    * is connected to the TClientDataSet.

     

    The TFDQuery or its connection may be closed without losing the data in the TClientDataSet

     

    Resources:

    https://docwiki.embarcadero.com/Libraries/Sydney/en/Datasnap.Provider.TDataSetProvider

    https://docwiki.embarcadero.com/Libraries/Sydney/en/Datasnap.DBClient.TClientDataSet


  3. Habarisoft released new versions of its native STOMP client libraries for Delphi / Object Pascal for open source message brokers:

    * Habari Client for ActiveMQ 7.2 – tested with Apache ActiveMQ 5.16.5 and 5.17.1
    * Habari Client for Artemis 7.2 – tested with Apache ActiveMQ Artemis 2.23.1
    * Habari Client for OpenMQ 7.2 – tested with Eclipse OpenMQ 6.3.0
    * Habari Client for RabbitMQ 7.2 – tested with RabbitMQ 3.9.22 and 3.10.7

    Release notes
    Full release notes can be found at: https://www.habarisoft.com/release_notes.html

     

    Home page, demo download, full documentation: https://www.habarisoft.com/

    About Habari STOMP Client libraries
    Habari STOMP Client libraries enable Object Pascal applications to take advantage of message broker / message queue technology - which is distributed, loosely coupled, reliable and asynchronous - to build integrated systems, using peer-to-peer and publish-subscribe communication models.


  4. Habarisoft released new versions of its native STOMP client libraries for Delphi / Object Pascal for integration with popular open source message brokers:

    * Habari Client for ActiveMQ 7.1 – tested with Apache ActiveMQ 5.16.5 and 5.17.1
    * Habari Client for Artemis 7.1 – tested with Apache ActiveMQ Artemis 2.22.0
    * Habari Client for OpenMQ 7.1 – tested with Eclipse GlassFish 6.2.3
    * Habari Client for RabbitMQ 7.1 – tested with RabbitMQ 3.9.18, 3.10.0 and 3.10.2

    Release notes
    Full release notes can be found at: https://www.habarisoft.com/release_notes.html

    Home page, demo download, full documentation: https://www.habarisoft.com/

    About Habari STOMP Client libraries
    Habari STOMP Client libraries enable Object Pascal applications to take advantage of message broker / message queue technology - which is distributed, loosely coupled, reliable and asynchronous - to build integrated systems, using peer-to-peer and publish-subscribe communication models.

     


  5. 2 hours ago, softtouch said:

    I thought that is only Win/Linux (server). I need to have IPC on macOS, communicating between macOS apps.

    Indy runs on many operating systems including Linux. It should also run on macOS.

    If you get an "error #5", you may find the cause by debugging, to find the location in your application and the actual operation it tries to perform.


  6. To celebrate its 25. foundation anniversary, Habarisoft increased the special discount for ScroogeXHTML Server Deployment licenses:
    * old discount: 25%
    * new discount: 50%
     
    Order links and editions overview can be found at https://www.scroogexhtml.com/object_pascal.html#order
    Single Developer License and Server Deployment License terms are explained at https://www.scroogexhtml.com/scroogexhtml_license.html
    Conditions: the discount is only valid for purchases together with one ore more ScroogeXHTML Single Developer Licenses. License purchases are not refundable. The special discount is only valid for a limited time and can not be combined with other discounts (except volume discounts) and promotions.
     
    The discount is valid both for the Java and the Delphi / Pascal version of ScroogeXHTML.

    Home page, API, Getting Started PDF, and demo download:
    https://www.scroogexhtml.com/scroogexhtml_delphi.html
     


  7.  

    Habarisoft released version 2022.02 of its Object Pascal STOMP client libraries for Delphi and Free Pascal integration with popular free open source message brokers.

    Release notes can be found at: https://www.habarisoft.com/release_notes.html

    Home page, demo download, full documentation: https://www.habarisoft.com/

    About Habari Client libraries

    Habari Stomp Client libraries enable Object Pascal applications to take advantage of message broker / message queue technology – which is distributed, loosely coupled, reliable and asynchronous – to build integrated systems, using peer-to-peer and publish-subscribe communication models.


  8. ScroogeXHTML for Object Pascal is a library which supports a subset of the Rich Text Format (RTF) standard.
    It converts RTF to HTML5 and XHTML standalone documents, or to fragments which can be embedded in other documents.
    ScroogeXHTML is compatible with Delphi 2009+ and Free Pascal 3.2.0.

    Version 8.0 is a major release which introduces new options, including customizable post-processing of the (internal) document tree before the final conversion step, and a customizable hyperlink URI builder class.

    Home page, API, Getting Started PDF, and demo download:
    https://www.scroogexhtml.com/scroogexhtml_delphi.html
    Full release notes:
    https://www.habarisoft.com/scroogexhtml/8.0/docs/api/version.html

  9. ScroogeXHTML for Object Pascal is a library which supports a subset of the Rich Text Format (RTF) standard.
    It converts RTF to HTML5 and XHTML standalone documents, or to fragments which can be embedded in other documents.
    ScroogeXHTML converts text attributes including background and highlight colors, paragraph alignment (left, right, centered, justified) and indent (left, right, first line).
    Unicode conversion allows multi-language documents, including simplified and traditional Chinese, Korean and Japanese.
    Compatible with Delphi 2009+ and Free Pascal 3.0.4 / 3.2.0.

    Version 7.3 is mainly a maintenance release which fixed several minor issues.
    Version 7.2 introduced support for embedded PNG and JPEG images using Data URI.

    Home page, API, Getting Started PDF, and demo download:
    https://www.scroogexhtml.com/scroogexhtml_delphi.html
    Full release notes:
    https://www.habarisoft.com/scroogexhtml/7.3/docs/api/version.html
     
    scrooge_portrait_logo_2016.png_html.png.9e652ae2d947dd05d43f4824ea4fea78.png
     

  10. Habarisoft released new versions of its Object Pascal STOMP client libraries for integration with popular open source message brokers. some of them known as default messaging providers in WildFly, Eclipse GlassFish and Payara Server.

     

     

    Release notes can be found at: https://www.habarisoft.com/release_notes.html

    Home page, demo download, full documentation: https://www.habarisoft.com/

    About Habari Client libraries

    Habari Client libraries enable Object Pascal applications to take advantage of message broker / message queue technology - which is distributed, loosely coupled, reliable and asynchronous - to build integrated systems, using peer-to-peer and publish-subscribe communication models.

    habari_logo_2016.png.d88edb0c49d8cb58e8d21988c844192d.png

     


  11. The Daraja HTTP Server Framework is a free open source library for Object Pascal (Free Pascal 3,1.0 or Delphi 2009+), based on the stand-alone HTTP server component in Internet Direct (Indy).

     

    With the 2.5-SNAPSHOT release, most code is now single-source and more readable, there are no "IFDEF FPC" branches anymore to use the Free Pascal fgl generics library.

    All DUnit / FPCUnit - based tests run successfully. The full 2.5-SNAPSHOT source and demo code is available at GitHub.

    Demo applications cover - for example - OAuth 2.0 and Twitter Bootstrap.


    More information
    - GitHub: https://github.com/michaelJustin/daraja-framework
    - API documentation: http://michaeljustin.github.io/daraja-framework/
    - Wiki: https://github.com/michaelJustin/daraja-framework/wiki
    - Features and FAQ: https://www.habarisoft.com/daraja_framework.html


    image.thumb.png.4786da403a515e67e8382b86e748eb28.png

    • Like 2

  12. A new version of the open source logging facade slf4p is now available on GitHub. It introduces a StringBuilder-based logger, which stores all messages in memory (use cases: testing of correct program execution flow, disk-less operation).

     

    The slf4p logging facade supports Log4D, LazLogger, and three bundled logger implementations (SimpleLogger, StringsLogger and NOPLogger). It is already used in production-ready libraries, including the Daraja HTTP Server framework.

    Project home page:

    https://github.com/michaelJustin/slf4p

    log4d resources

    - http://sourceforge.net/projects/log4d/

    - https://github.com/michaelJustin/log4d (fork with small fixes)

    - https://mikejustin.wordpress.com/2012/09/12/delphi-and-free-pascal-logging-with-the-log4d-open-source-library/

     

     


  13. 9 hours ago, Lars Fosdal said:

    Have you considered supporting AMQP as an option to STOMP?

    The specification document for AMQP 1.0 is 113 pages long, and there are incompatible versions ("1.0" vs "0-9-1") used by major message brokers.

    I am happy with the feature set of STOMP, it even allows to use broker-specific extensions, beyond the core protocol specification.


  14. On 6/28/2021 at 7:39 AM, Lars Fosdal said:

    Any chance of adding IBM MQ to the list of MQs?
    See also: https://developer.ibm.com/articles/mq-downloads/

    Thank you for your suggestion, IBM MQ however does not contain a Stomp client connector, which is required for the Habari Client libraries. The linked page shows that other options exists, some of them might be usable from Delphi/Free Pascal.


  15. Habarisoft released new versions of its Object Pascal STOMP client libraries for integration with popular open source message brokers.

    Release notes can be found at: https://www.habarisoft.com/release_notes.html

    Message Transformation API

    • Added a check that the map message transformation ID and the object message transformation ID are not equal
    • Removed unit tests for old (deprecated) message transformation API
    • Added unit test for new message transformation API, using MQContext API (which has been introduced in version 6.0)
    • Added a compiler warning which appears when the old (deprecated) message transformation API is enabled
    • Implement interface IMessageTransformerSupport in class TBTMQContext when the old (deprecated) message transformation API is enabled
    •  Moved message transformation IDs for the transformation API to the broker-specific unit BTBrokerConst

    Other

    • Removed experimental TCP keep-alive feature, instead the STOMP heart-beating may be used
    • Improved handling of incoming heart-beat (EOL bytes)
    • Removed a check for incoming heart-beats when no heart-beats are expected, this caused higher timeout times for Receive(Integer) method calls

    Further resources and demo applications

    Home page: https://www.habarisoft.com/

    About Habari Client libraries

    Habari Client libraries enable Object Pascal applications to take advantage of message broker / message queue technology - which is distributed, loosely coupled, reliable and asynchronous - to build integrated systems, using peer-to-peer and publish-subscribe communication models.

    habari_logo_2016.png.d88edb0c49d8cb58e8d21988c844192d.png

     

     


  16. 1 hour ago, Rollo62 said:

    @mjustin

    Nice product.

    I assume this works under VCL only, is that correct ?

    Since there were no infos about other platforms.

     

    Thanks! It will not work with ARC, so yes, there are limitations.

    But besides this it should work even on Linux with Delphi 10.3 (but this is not "officially" supported).

    For the adventurous developers out there, it is available for the Java platform 😉


  17. ScroogeXHTML for Delphi is a library which supports a subset of the Rich Text Format (RTF) standard. It converts RTF to HTML5 and XHTML standalone documents, or to fragments which can be embedded in other documents. Besides HTML5, it also supports HTML 3/Flex, HTML 4.01 Strict and Transistional, and various XHTML versions.

    It is compatible with Delphi 2009+ and Free Pascal 3.

    Version 7.2 introduces support for embedded PNG and JPEG images using Data URI.

    Home page, API, Getting Started PDF, full release notes and demo download:
    https://www.scroogexhtml.com/scroogexhtml_delphi.html
    • Like 2

  18. Habari Client libraries 2021.02

    Habarisoft released new versions of its Object Pascal STOMP client libraries for integration with popular open source message brokers:

    Improved map/object message transformation API

    • Register two message transformers – one for map messages, one for object messages – on the same connection
    • Use any custom transformation id value (transformation id’s are no longer limited to a hard-coded set)
    • Unit tests for map message and object message transformation are included
    • Documentation for map and object message exchange is updated
    • The old map/object message transformation API still included, but disabled and marked as deprecated

    Other changes

    • Added support for Artemis queue browser API
    • Migrated management API client from SuperObject to JsonDataObjects
    • Installer applications are now digitally signed
    • Console output for unit test logging now includes test class name and test method name
    • Removed support for OmniXML and Superobject
    • Fixed Free Pascal 3.2.0 warnings about uninitialized values
    • Fixed failing unit tests for Artemis
    • Added a test for ActiveMQ queue browser API

    20% to 70% discount

    You may purchase licenses now with a 20% discount if you use code habari202102delphi in the order form. This special offer is limited until 31 March 2021. Existing license holders with expired access to updates qualify for 30% discount. License holders within the first year after purchase qualify for 70% discount. Offer may not be combined with any other coupons, discounts, offers, or promotions.

    Further resources and demo applications

    Home page: https://www.habarisoft.com/

    About Habari Client libraries

    habari_logo_2016.png.d88edb0c49d8cb58e8d21988c844192d.pngHabari Client libraries enable Object Pascal applications to take advantage of message broker / message queue technology – which is distributed, loosely coupled, reliable and asynchronous – to build integrated systems, using peer-to-peer and publish-subscribe communication models.

     

     

     


  19. Habari Client library for RabbitMQ: 6.8 beta 1 released

    Habarisoft released version 6.8 beta 1 of its Object Pascal STOMP client library for integration with the RabbitMQ open source message broker.

    Improved map/object message transformation API

    • Send and receive map and object messages with a single message transformer on the connection
    • Transformation id values are no longer restricted to a hard-coded set
    • Unit tests included for map message and object message transformation
    • Updated documentation for map and object message exchange
    • Old API still included (but marked as deprecated)
     

    Existing license holders qualify for up to 70% discount. Please contact Habarisoft to receive your discount code for your order. This offer may not be combined with any other coupons, discounts, offers, or promotions.

    Download

    https://www.habarisoft.com/habari_rabbitmq/download/snapshot/habari-rabbitmq-6.8-b1-installer.exe

    Resources and demo applications

    Home page: https://www.habarisoft.com/

    About Habari Client libraries

    habari_logo_2016.png.99ca83f3ea83ad56c47de089231cb2cd.png

    Habari Client libraries enable Object Pascal applications to take advantage of message broker / message queue technology – which is distributed, loosely coupled, reliable and asynchronous – to build integrated systems, using peer-to-peer and publish-subscribe communication models.

×