theLink 10.0
Loading...
Searching...
No Matches
MqContextC_Proxy_CC_API

MqContextC - copy data from the read-data-package of the sourceCtx to the send-data-package of the targetCtx More...

+ Collaboration diagram for MqContextC_Proxy_CC_API:

Functions

void ccmqmsgque::MqContextC::ProxyForward (MqContextC *targetCtx, MqDumpC *dump=NULL, MK_TIME_T timeout=MK_TIMEOUT_DEFAULT)
  C++: sourceCtx.ProxyForward(MqContextC* targetCtx, MqDumpC* dump = NULL, MK_TIME_T timeout = MK_TIMEOUT_DEFAULT) C-API
send the entire read-data-package-data to the link-target
 
void ccmqmsgque::MqContextC::ProxyForward (const MqContextC &targetCtx, const MqDumpC &dump, MK_TIME_T timeout=MK_TIMEOUT_DEFAULT)
  C++: sourceCtx.ProxyForward(MqContextC* targetCtx, MqDumpC* dump = NULL, MK_TIME_T timeout = MK_TIMEOUT_DEFAULT) C-API
send the entire read-data-package-data to the link-target
 
void ccmqmsgque::MqContextC::ProxyItem (MqContextC *targetCtx)
  C++: sourceCtx.ProxyItem(MqContextC* targetCtx) C-API
Copy a single-data-item from the sourceCtx to the targetCtx.
 
void ccmqmsgque::MqContextC::ProxyItem (const MqContextC &targetCtx)
  C++: sourceCtx.ProxyItem(MqContextC* targetCtx) C-API
Copy a single-data-item from the sourceCtx to the targetCtx.
 

Detailed Description

MqContextC - copy data from the read-data-package of the sourceCtx to the send-data-package of the targetCtx

The proxy-feature is used in a filter-setup to process-and-forward incoming data.

See also
MqDumpC

Example: A typical proxy-setup in pseudo C++ code

void myService () {
MqContextC *ftr = SlaveGetFilter(); // get the "slave" with id "1" (the filter)
...
ftr->SendSTART(); // start the FORWARD
while (ReadItemExists()) { // read ALL data from the ORIGINAL service-call
ProxyItem(ftr); // forward a SINGEL item from "this" to "ftr"
}
...
ftr->SendEND_AND_WAIT("MYTK"); // send the data.package to "ftr"
...
SendSTART(); // start the ANSWER
while (ftr->ReadItemExists()) { // read ALL data from the "MYTK" service-call
ftr->ProxyItem(this); // forward a SINGEL item from "ftr" to "this"
}
SendRETURN(); // answer the ORIGINAL service call
}
MK_BOOL ReadItemExists() const

The proxy-feature is used in a filter-setup to process-and-forward incoming data.

See also
MqDumpC

Example: A typical proxy-setup in pseudo C++ code

void myService () {
MqContextC *ftr = SlaveGetFilter(); // get the "slave" with id "1" (the filter)
...
ftr->SendSTART(); // start the FORWARD
while (ReadItemExists()) { // read ALL data from the ORIGINAL service-call
ProxyItem(ftr); // forward a SINGEL item from "this" to "ftr"
}
...
ftr->SendEND_AND_WAIT("MYTK"); // send the data.package to "ftr"
...
SendSTART(); // start the ANSWER
while (ftr->ReadItemExists()) { // read ALL data from the "MYTK" service-call
ftr->ProxyItem(this); // forward a SINGEL item from "ftr" to "this"
}
SendRETURN(); // answer the ORIGINAL service call
}

Function Documentation

◆ ProxyForward() [1/2]

void ccmqmsgque::MqContextC::ProxyForward ( const MqContextC & targetCtx,
const MqDumpC & dump,
MK_TIME_T timeout = MK_TIMEOUT_DEFAULT )
inline

C++: sourceCtx.ProxyForward(MqContextC* targetCtx, MqDumpC* dump = NULL, MK_TIME_T timeout = MK_TIMEOUT_DEFAULT) C-API
send the entire read-data-package-data to the link-target

Definition at line 1037 of file MqContextC_inline_cc.hh.

1037 {
1038 MK_UNUSED auto sourceCtx = getCTX();
1039 const MQ_CTX targetCtx_hdl = MqContextC::getCTX(targetCtx);
1040 const MQ_DMP dump_hdl = MqDumpC::getDMP(dump);
1041 enum MkErrorE errVal = MqProxyForward(sourceCtx, targetCtx_hdl, dump_hdl, timeout);
1042 MkErrorC_Check(sourceCtx, errVal);
1043 }
#define MK_UNUSED
MQ_CTX getCTX() const
return the LibMsgqueObject from current MqContextC instance
struct MqContextS * MQ_CTX
class-shortcut for struct MqContextS *, all shortcut using the XX_YYY syntax (only for public API) …
#define MqProxyForward(...)
MQ_DMP getDMP() const
return the LibMsgqueObject from current MqDumpC instance
Definition MqDumpC_cc.hh:82
struct MqDumpS * MQ_DMP
class-shortcut for struct MqDumpS *, all shortcut using the XX_YYY syntax (only for public API) …

◆ ProxyForward() [2/2]

void ccmqmsgque::MqContextC::ProxyForward ( MqContextC * targetCtx,
MqDumpC * dump = NULL,
MK_TIME_T timeout = MK_TIMEOUT_DEFAULT )
inline

C++: sourceCtx.ProxyForward(MqContextC* targetCtx, MqDumpC* dump = NULL, MK_TIME_T timeout = MK_TIMEOUT_DEFAULT) C-API
send the entire read-data-package-data to the link-target

Definition at line 1028 of file MqContextC_inline_cc.hh.

1028 {
1029 MK_UNUSED auto sourceCtx = getCTX();
1030 MQ_CTX targetCtx_hdl = MqContextC::getCTX(targetCtx);
1031 MQ_DMP dump_hdl = MqDumpC::getDMP__null_allow(dump);
1032 enum MkErrorE errVal = MqProxyForward(sourceCtx, targetCtx_hdl, dump_hdl, timeout);
1033 MkErrorC_Check(sourceCtx, errVal);
1034 }
MQ_DMP getDMP__null_allow() const
return the LibMsgqueObject from current MqDumpC instance
Definition MqDumpC_cc.hh:89
+ Here is the caller graph for this function:

◆ ProxyItem() [1/2]

void ccmqmsgque::MqContextC::ProxyItem ( const MqContextC & targetCtx)
inline

C++: sourceCtx.ProxyItem(MqContextC* targetCtx) C-API
Copy a single-data-item from the sourceCtx to the targetCtx.

Definition at line 1054 of file MqContextC_inline_cc.hh.

1054 {
1055 MK_UNUSED auto sourceCtx = getCTX();
1056 const MQ_CTX targetCtx_hdl = MqContextC::getCTX(targetCtx);
1057 enum MkErrorE errVal = MqProxyItem(sourceCtx, targetCtx_hdl);
1058 MkErrorC_Check(sourceCtx, errVal);
1059 }
#define MqProxyItem(...)

◆ ProxyItem() [2/2]

void ccmqmsgque::MqContextC::ProxyItem ( MqContextC * targetCtx)
inline

C++: sourceCtx.ProxyItem(MqContextC* targetCtx) C-API
Copy a single-data-item from the sourceCtx to the targetCtx.

Definition at line 1046 of file MqContextC_inline_cc.hh.

1046 {
1047 MK_UNUSED auto sourceCtx = getCTX();
1048 MQ_CTX targetCtx_hdl = MqContextC::getCTX(targetCtx);
1049 enum MkErrorE errVal = MqProxyItem(sourceCtx, targetCtx_hdl);
1050 MkErrorC_Check(sourceCtx, errVal);
1051 }