theLink 10.0
Loading...
Searching...
No Matches
MqContextC_Link_ATL_API

MqContextC - setup and manage a client-server-linkMore...

+ Collaboration diagram for MqContextC_Link_ATL_API:

Functions

static OT_ProcRet atlmqmsgque_MqContextC_LinkGetParent (MqContextC_ARGS)
  Atl: MqContextC [MqContextC::LinkGetParent $ctx] C-API
get the initial parent-context from a client/server link …
 
static OT_ProcRet atlmqmsgque_MqContextC_LinkConnect (MqContextC_ARGS)
  Atl: MqContextC::LinkConnect $ctx C-API
re-connect a client-server-link after a server crash or a network downtime …
 
static OT_ProcRet atlmqmsgque_MqContextC_LinkCreate (MqContextC_ARGS)
  Atl: MqContextC::LinkCreate $ctx ?args:MkBufferListC...=NULL? C-API
make ctx to a parent-context and setup a new client-server-link
 
static OT_ProcRet atlmqmsgque_MqContextC_LinkCreateChild (MqContextC_ARGS)
  Atl: MqContextC::LinkCreateChild $ctx parent:MqContextC ?args:MkBufferListC...=NULL? C-API
make a context to a child-context on-top of an existing parent-client-server-link
 
static OT_ProcRet atlmqmsgque_MqContextC_LinkDelete (MqContextC_ARGS)
  Atl: MqContextC::LinkDelete $ctx C-API
close the client-server-link
 
static OT_ProcRet atlmqmsgque_MqContextC_LinkGetCtxId (MqContextC_ARGS)
  Atl: int32 [MqContextC::LinkGetCtxId $ctx] C-API
get an identifier which is unique per parent-or-child-context
 
static OT_ProcRet atlmqmsgque_MqContextC_LinkGetTargetIdent (MqContextC_ARGS)
  Atl: string [MqContextC::LinkGetTargetIdent $ctx] C-API
get the ident of the link-target
 
static OT_ProcRet atlmqmsgque_MqContextC_LinkIsConnected (MqContextC_ARGS)
  Atl: bool [MqContextC::LinkIsConnected $ctx] C-API
is the context connected? …
 
static OT_ProcRet atlmqmsgque_MqContextC_LinkIsParent (MqContextC_ARGS)
  Atl: bool [MqContextC::LinkIsParent $ctx] C-API
is the context a parent-context? …
 
static OT_ProcRet atlmqmsgque_MqContextC_LinkShutdown (MqContextC_ARGS)
  Atl: MqContextC::LinkShutdown $ctx C-API
shutdown the communication with a server
 

Detailed Description

MqContextC - setup and manage a client-server-link

The client-server-link connect two context, a client-parent-context and a server-parent-context. The link can be local (connect two context on the same host) or can be remote (connect two context on different hosts). On-Top the parent-context multiple child-context are allowed.

  !on remote host!                                  !on local host!

      server1---------x                     x----------server2
         |            |                     |             |
         |     child-context-1       child-context-2      |
         |            |                     |             |                      server
 parent-context-1-----x                     x-----parent-context-2
         |                                                |
 (MqConfigS::server)                 (example: MqConfigS::server --fork --uds … --file …)
         |                                                |
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
         |                                                |
      (--tcp)                                  (--pipe, --uds, --tcp)
         |                                                |
 parent-context-1-----x                     x-----parent-context-2
         |            |                     |             |                      client
         |     child-context-1       child-context-2      |
         |            |                     |             |
         x------------x--------client-------x-------------x

                           !on local host!

Definition of a "client-context"

Definition of a "server-context"

client --tcp --host REMOTE_HOST --port REMOTE_PORT ... or
client --uds --file MYFILE ...

Definition of a "parent-context"

Definition of a "child-context"

Function Documentation

◆ atlmqmsgque_MqContextC_LinkConnect()

static OT_ProcRet atlmqmsgque_MqContextC_LinkConnect ( MqContextC_ARGS )
static

Atl: MqContextC::LinkConnect $ctx C-API
re-connect a client-server-link after a server crash or a network downtime …

Definition at line 1492 of file MqContextC_atl.c.

1492 {
1496 MkErrorC_Check(hdl,MqLinkConnect (hdl));
1498 goto end;
1499 error:
1501 end:
1503}
#define OT_SETUP_NOARG(d)
#define OT_retObj_SET_Error
#define OT_retObj_SET_None
#define OT_retObj_RETURN
#define OT_CHECK_NOARGS
#define MkErrorC_Check(mng, PROC)
#define OT_SETUP_hdl
#define LinkConnect_doc
#define error
Definition high_lng.h:339

◆ atlmqmsgque_MqContextC_LinkCreate()

static OT_ProcRet atlmqmsgque_MqContextC_LinkCreate ( MqContextC_ARGS )
static

Atl: MqContextC::LinkCreate $ctx ?args:MkBufferListC...=NULL? C-API
make ctx to a parent-context and setup a new client-server-link

Definition at line 1506 of file MqContextC_atl.c.

1506 {
1509 MkBufferListCreateTLS_T(args,10);
1512 MkErrorC_Check(hdl,MqLinkCreate (hdl, args));
1514 goto end;
1515 error:
1517 end:
1519}
#define OT_SETUP_VARARGS(min, max, d)
#define OT_CHECK_OPTIONAL(val)
#define LinkCreate_doc
#define MkBufferListCreateTLS_T(name, num)
#define OT_CHECK_BAC(val)

◆ atlmqmsgque_MqContextC_LinkCreateChild()

static OT_ProcRet atlmqmsgque_MqContextC_LinkCreateChild ( MqContextC_ARGS )
static

Atl: MqContextC::LinkCreateChild $ctx parent:MqContextC ?args:MkBufferListC...=NULL? C-API
make a context to a child-context on-top of an existing parent-client-server-link

Definition at line 1522 of file MqContextC_atl.c.

1522 {
1525 MQ_CTX parent = 0;
1527 MkBufferListCreateTLS_T(args,10);
1530 MkErrorC_Check(hdl,MqLinkCreateChild (hdl, parent, args));
1532 goto end;
1533 error:
1535 end:
1537}
#define OT_CHECK_REQUIRED(val)
#define LinkCreateChild_doc
#define MK_NULL_NO
#define OT_CHECK_CTX(val, nullB)
PUBLIC data structure for the atlmqmsgque-specific-data

◆ atlmqmsgque_MqContextC_LinkDelete()

static OT_ProcRet atlmqmsgque_MqContextC_LinkDelete ( MqContextC_ARGS )
static

Atl: MqContextC::LinkDelete $ctx C-API
close the client-server-link

Definition at line 1540 of file MqContextC_atl.c.

1540 {
1544 MqLinkDelete (hdl);
1546 goto end;
1547 error:
1549 end:
1551}
#define LinkDelete_doc

◆ atlmqmsgque_MqContextC_LinkGetCtxId()

static OT_ProcRet atlmqmsgque_MqContextC_LinkGetCtxId ( MqContextC_ARGS )
static

Atl: int32 [MqContextC::LinkGetCtxId $ctx] C-API
get an identifier which is unique per parent-or-child-context

Definition at line 1554 of file MqContextC_atl.c.

1554 {
1559 goto end;
1560 error:
1562 end:
1564}
#define OT_retObj_SET_I32(nat)
#define LinkGetCtxId_doc

◆ atlmqmsgque_MqContextC_LinkGetParent()

static OT_ProcRet atlmqmsgque_MqContextC_LinkGetParent ( MqContextC_ARGS )
static

Atl: MqContextC [MqContextC::LinkGetParent $ctx] C-API
get the initial parent-context from a client/server link …

Definition at line 1476 of file MqContextC_atl.c.

1476 {
1480 MQ_CTX retVal = MqLinkGetParent (hdl);
1481 OT_retObj_SET_CTX(retVal);
1482 goto end;
1483 error:
1485 end:
1487}
#define OT_retObj_SET_CTX(nat)
#define LinkGetParent_doc

◆ atlmqmsgque_MqContextC_LinkGetTargetIdent()

static OT_ProcRet atlmqmsgque_MqContextC_LinkGetTargetIdent ( MqContextC_ARGS )
static

Atl: string [MqContextC::LinkGetTargetIdent $ctx] C-API
get the ident of the link-target

Definition at line 1567 of file MqContextC_atl.c.

1567 {
1572 goto end;
1573 error:
1575 end:
1577}
#define OT_retObj_SET_STR(nat)
#define LinkGetTargetIdent_doc

◆ atlmqmsgque_MqContextC_LinkIsConnected()

static OT_ProcRet atlmqmsgque_MqContextC_LinkIsConnected ( MqContextC_ARGS )
static

Atl: bool [MqContextC::LinkIsConnected $ctx] C-API
is the context connected? …

Definition at line 1580 of file MqContextC_atl.c.

1580 {
1585 goto end;
1586 error:
1588 end:
1590}
#define OT_retObj_SET_BOL(nat)
#define LinkIsConnected_doc

◆ atlmqmsgque_MqContextC_LinkIsParent()

static OT_ProcRet atlmqmsgque_MqContextC_LinkIsParent ( MqContextC_ARGS )
static

Atl: bool [MqContextC::LinkIsParent $ctx] C-API
is the context a parent-context? …

Definition at line 1593 of file MqContextC_atl.c.

1593 {
1598 goto end;
1599 error:
1601 end:
1603}
#define LinkIsParent_doc

◆ atlmqmsgque_MqContextC_LinkShutdown()

static OT_ProcRet atlmqmsgque_MqContextC_LinkShutdown ( MqContextC_ARGS )
static

Atl: MqContextC::LinkShutdown $ctx C-API
shutdown the communication with a server

Definition at line 1606 of file MqContextC_atl.c.

1606 {
1610 MkErrorC_Check(hdl,MqLinkShutdown (hdl));
1612 goto end;
1613 error:
1615 end:
1617}
#define LinkShutdown_doc