theLink 10.0
Loading...
Searching...
No Matches
MqContextC_Link_CS_API

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

+ Collaboration diagram for MqContextC_Link_CS_API:

Functions

MqContextC csmqmsgque.MqContextC.LinkGetParent ()
  C#: MqContextC ctx.LinkGetParent() C-API
get the initial parent-context from a client/server link …
 
void csmqmsgque.MqContextC.LinkConnect ()
  C#: ctx.LinkConnect() C-API
re-connect a client-server-link after a server crash or a network downtime …
 
void csmqmsgque.MqContextC.LinkCreate (MkBufferListC args=null)
  C#: ctx.LinkCreate(MkBufferListC args = null) C-API
make ctx to a parent-context and setup a new client-server-link
 
void csmqmsgque.MqContextC.LinkCreateChild (MqContextC parent, MkBufferListC args=null)
  C#: ctx.LinkCreateChild(MqContextC parent, MkBufferListC args = null) C-API
make a context to a child-context on-top of an existing parent-client-server-link
 
void csmqmsgque.MqContextC.LinkCreateChild (MqContextC parent, params string[] args)
  C#: ctx.LinkCreateChild(MqContextC parent, MkBufferListC args = null) C-API
make a context to a child-context on-top of an existing parent-client-server-link
 
void csmqmsgque.MqContextC.LinkCreate (params string[] args)
  C#: ctx.LinkCreate(MkBufferListC args = null) C-API
make ctx to a parent-context and setup a new client-server-link
 
void csmqmsgque.MqContextC.LinkDelete ()
  C#: ctx.LinkDelete() C-API
close the client-server-link
 
int csmqmsgque.MqContextC.LinkGetCtxId ()
  C#: int ctx.LinkGetCtxId() C-API
get an identifier which is unique per parent-or-child-context
 
string csmqmsgque.MqContextC.LinkGetTargetIdent ()
  C#: string ctx.LinkGetTargetIdent() C-API
get the ident of the link-target
 
bool csmqmsgque.MqContextC.LinkIsConnected ()
  C#: bool ctx.LinkIsConnected() C-API
is the context connected? …
 
bool csmqmsgque.MqContextC.LinkIsParent ()
  C#: bool ctx.LinkIsParent() C-API
is the context a parent-context? …
 
void csmqmsgque.MqContextC.LinkShutdown ()
  C#: ctx.LinkShutdown() 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

◆ LinkConnect()

void csmqmsgque.MqContextC.LinkConnect ( )
inline

C#: ctx.LinkConnect() C-API
re-connect a client-server-link after a server crash or a network downtime …

Definition at line 749 of file MqContextC.cs.

749 {
750 MkErrorE errVal = Mq.MqLinkConnect(mkrt, hdl);
751 MkErrorC.Check(hdl, errVal);
752 }
csmqmsgque.MqMsgque Mq
static void Check(IntPtr ctx, MkErrorE err)
MkErrorE

◆ LinkCreate() [1/2]

void csmqmsgque.MqContextC.LinkCreate ( MkBufferListC args = null)
inline

C#: ctx.LinkCreate(MkBufferListC args = null) C-API
make ctx to a parent-context and setup a new client-server-link

Definition at line 755 of file MqContextC.cs.

755 {
756 IntPtr args_hdl = MkBufferListC.getOBJ_null_allow(args);
757 MkErrorE errVal = Mq.MqLinkCreate(mkrt, hdl, args_hdl);
758 MkErrorC.Check(hdl, errVal);
759 }
+ Here is the caller graph for this function:

◆ LinkCreate() [2/2]

void csmqmsgque.MqContextC.LinkCreate ( params string[] args)
inline

C#: ctx.LinkCreate(MkBufferListC args = null) C-API
make ctx to a parent-context and setup a new client-server-link

Definition at line 776 of file MqContextC.cs.

776 {
777 // OVERLOAD
778 LinkCreate (new MkBufferListC(args));
779 }

◆ LinkCreateChild() [1/2]

void csmqmsgque.MqContextC.LinkCreateChild ( MqContextC parent,
MkBufferListC args = null )
inline

C#: ctx.LinkCreateChild(MqContextC parent, MkBufferListC args = null) C-API
make a context to a child-context on-top of an existing parent-client-server-link

Definition at line 762 of file MqContextC.cs.

762 {
763 IntPtr parent_hdl = MqContextC.getOBJ("MqContextC",parent);
764 IntPtr args_hdl = MkBufferListC.getOBJ_null_allow(args);
765 MkErrorE errVal = Mq.MqLinkCreateChild(mkrt, hdl, parent_hdl, args_hdl);
766 MkErrorC.Check(hdl, errVal);
767 }
+ Here is the caller graph for this function:

◆ LinkCreateChild() [2/2]

void csmqmsgque.MqContextC.LinkCreateChild ( MqContextC parent,
params string[] args )
inline

C#: ctx.LinkCreateChild(MqContextC parent, MkBufferListC args = null) C-API
make a context to a child-context on-top of an existing parent-client-server-link

Definition at line 770 of file MqContextC.cs.

770 {
771 // OVERLOAD
772 LinkCreateChild (parent, new MkBufferListC(args));
773 }

◆ LinkDelete()

void csmqmsgque.MqContextC.LinkDelete ( )
inline

C#: ctx.LinkDelete() C-API
close the client-server-link

Definition at line 782 of file MqContextC.cs.

782 {
783 Mq.MqLinkDelete(mkrt, hdl);
784 }

◆ LinkGetCtxId()

int csmqmsgque.MqContextC.LinkGetCtxId ( )
inline

C#: int ctx.LinkGetCtxId() C-API
get an identifier which is unique per parent-or-child-context

Definition at line 787 of file MqContextC.cs.

787 {
788 Int32 __retVal__L = Mq.MqLinkGetCtxId(hdl);
789 return __retVal__L;
790 }

◆ LinkGetParent()

MqContextC csmqmsgque.MqContextC.LinkGetParent ( )
inline

C#: MqContextC ctx.LinkGetParent() C-API
get the initial parent-context from a client/server link …

Definition at line 741 of file MqContextC.cs.

741 {
742 IntPtr __retVal__L = Mq.MqLinkGetParent(hdl);
743 return MqContextC.MqContextC_ObjNew(__retVal__L);
744 }

◆ LinkGetTargetIdent()

string csmqmsgque.MqContextC.LinkGetTargetIdent ( )
inline

C#: string ctx.LinkGetTargetIdent() C-API
get the ident of the link-target

Definition at line 793 of file MqContextC.cs.

793 {
794 IntPtr __retVal__L = Mq.MqLinkGetTargetIdent(hdl);
795 return Marshal.PtrToStringAnsi(__retVal__L);
796 }

◆ LinkIsConnected()

bool csmqmsgque.MqContextC.LinkIsConnected ( )
inline

C#: bool ctx.LinkIsConnected() C-API
is the context connected? …

Definition at line 799 of file MqContextC.cs.

799 {
800 bool __retVal__L = Mq.MqLinkIsConnected(hdl);
801 return __retVal__L;
802 }

◆ LinkIsParent()

bool csmqmsgque.MqContextC.LinkIsParent ( )
inline

C#: bool ctx.LinkIsParent() C-API
is the context a parent-context? …

Definition at line 805 of file MqContextC.cs.

805 {
806 bool __retVal__L = Mq.MqLinkIsParent(hdl);
807 return __retVal__L;
808 }

◆ LinkShutdown()

void csmqmsgque.MqContextC.LinkShutdown ( )
inline

C#: ctx.LinkShutdown() C-API
shutdown the communication with a server

Definition at line 811 of file MqContextC.cs.

811 {
812 MkErrorE errVal = Mq.MqLinkShutdown(mkrt, hdl);
813 MkErrorC.Check(hdl, errVal);
814 }