Tmax HMS User Guide

Tmax v5.0 SP2 Fix #1

Restricted Rights Legend

All TmaxSoft Software (Tmax®) and documents are protected by copyright laws and international convention. TmaxSoft software and documents are made available under the terms of the TmaxSoft License Agreement and may only be used or copied in accordance with the terms of this agreement. No part of this document may be transmitted, copied, deployed, or reproduced in any form or by any means, electronic, mechanical, or optical, without the prior written consent of TmaxSoft Co., Ltd.

Nothing in this software document and agreement constitutes a transfer of intellectual property rights regardless of whether or not such rights are registered) or any rights to TmaxSoft trademarks, logos, or any other brand features.

This document is for information purposes only. The company assumes no direct or indirect responsibilities for the contents of this document, and does not guarantee that the information contained in this document satisfies certain legal or commercial conditions.

The information contained in this document is subject to change without prior notice due to product upgrades or updates. The company assumes no liability for any errors in this document.

Trademarks

Tmax®, Tmax WebtoB® and JEUS® are registered trademark of TmaxSoft Co., Ltd. Other products, titles or services may be registered trademarks of their respective companies.

Open Source Software Notice

Some modules or files of this product are subject to the terms of the following licenses: openssl-0.9.7.m, zlib-1.1.4, expat-2.0.0, netsnmp, DCE1.0, pthread, google-diff-match-patch, libevent, getopt.

Detailed Information related to the license can be found in the following directory: ${INSTALL_PATH}/license/oss_licenses.

Document Information

Document Name: Tmax HMS User Guide

Document Created: 2016-03-31

Software Version: Tmax v5.0 SP2 Fix #1

Document Version: v2.1.5.1


Table of Contents

About This Document
1. Introduction
1.1. Overview
1.2. HMS Structure
1.3. JMS and HMS Programming
1.3.1. Connections
1.3.2. Sessions
1.3.3. Destination
1.3.4. Messages
1.3.5. QueueBrowser
1.3.6. Recovery
1.3.7. Clustering
2. Configuring an HMS Environment
2.1. Configuring a Tmax Environment
2.1.1. DOMAIN Clause
2.1.2. NODE Clause
2.1.3. SVRGROUP Clause
2.1.4. HMS Clause
2.2. Examples
3. API Functions
3.1. Overview
3.2. Session API
3.2.1. hms_create_session
3.2.2. hms_create_xa_session
3.2.3. hms_create_async_session
3.2.4. hms_close_session
3.2.5. hms_unsubscribe_durable_subscriber
3.2.6. hms_commit
3.2.7. hms_rollback
3.2.8. hms_recover
3.3. Message APIs
3.3.1. hms_alloc
3.3.2. hms_free
3.3.3. hms_get_property
3.3.4. hms_set_property
3.3.5. hms_get_body
3.3.6. hms_set_body
3.3.7. hms_ack
3.4. Producer API
3.4.1. hms_create_producer
3.4.2. hms_create_sender
3.4.3. hms_create_publisher
3.4.4. hms_close_producer
3.4.5. hms_close_sender
3.4.6. hms_close_publisher
3.4.7. hms_sendex
3.4.8. hms_send
3.5. Consumer API
3.5.1. hms_create_consumer
3.5.2. hms_create_receiver
3.5.3. hms_create_subscriber
3.5.4. hms_create_durable_subscriber
3.5.5. hms_close_consumer
3.5.6. hms_close_receiver
3.5.7. hms_close_subscriber
3.5.8. hms_close_durable_subscriber
3.5.9. hms_recvex
3.5.10. hms_recv
3.6. QueueBrowser API
3.6.1. hms_create_browser
3.6.2. hms_close_browser
3.6.3. hms_browser_nextmsg
3.6.4. hms_browser_get_msgselector
3.6.5. hms_browser_get_queue
4. HMS Management
4.1. Building an HMS
4.1.1. Preparation
4.1.2. Makefile
4.1.3. HMS Build and Verification
4.2. Starting and Terminating an HMS
4.3. Inquiring the HMS Status
4.3.1. Inquiring the Destination Information
4.3.2. Inquiring the Client Information
5. Examples
5.1. Message Transmission Program
5.1.1. Configuring an HMS Environment
5.1.2. Client Program
5.1.3. Server Program
5.1.4. Compiling the Program
5.2. Message Saving Program
5.2.1. Configuring an HMS Environment
5.2.2. Client Program
5.2.3. Server Program
5.2.4. Database Script
5.2.5. Compiling the Program
A. Using a Message Selector
Index

List of Figures

[Figure 1.1] HMS Structure
[Figure 1.2] Programming Model
[Figure 5.1] Flow of a Message Transmission Program
[Figure 5.2] Flow of a Message Saving Program