Modeler Extensions Framework

Functions

CLEMEXTStatus clemext_host_getHostInformation (CLEMEXTHostHandle host, char *buffer, size_t buffer_size, size_t *data_size, CLEMEXTErrorCode *errorCode)
 
CLEMEXTStatus clemext_node_getNodeInformation (CLEMEXTNodeHandle node, char *buffer, size_t buffer_size, size_t *data_size, CLEMEXTErrorCode *errorCode)
 
CLEMEXTStatus clemext_node_getParameters (CLEMEXTNodeHandle node, char *buffer, size_t buffer_size, size_t *data_size, CLEMEXTErrorCode *errorCode)
 
CLEMEXTStatus clemext_node_getDataModel (CLEMEXTNodeHandle node, char *buffer, size_t buffer_size, size_t *data_size, CLEMEXTErrorCode *errorCode)
 
CLEMEXTStatus clemext_node_getOutputDataModel (CLEMEXTNodeHandle node, char *buffer, size_t buffer_size, size_t *data_size, CLEMEXTErrorCode *errorCode)
 
CLEMEXTStatus clemext_node_getSQLGeneration (CLEMEXTNodeHandle node, char *buffer, size_t buffer_size, size_t *data_size, CLEMEXTErrorCode *errorCode)
 
CLEMEXTStatus clemext_node_getPassword (CLEMEXTNodeHandle node, const char *passwordId, char *buffer, size_t buffer_size, size_t *data_size, CLEMEXTErrorCode *errorCode)
 
CLEMEXTStatus clemext_node_getFilePath (CLEMEXTNodeHandle node, const char *fileId, char *buffer, size_t buffer_size, size_t *data_size, CLEMEXTErrorCode *errorCode)
 
CLEMEXTStatus clemext_node_expandFilePath (CLEMEXTNodeHandle node, const char *path, char *buffer, size_t buffer_size, size_t *data_size, CLEMEXTErrorCode *errorCode)
 
CLEMEXTStatus clemext_node_expandFilePathExt (CLEMEXTNodeHandle node, const char *path, unsigned int path_type, char *buffer, size_t buffer_size, size_t *data_size, CLEMEXTErrorCode *errorCode)
 
CLEMEXTStatus clemext_iterator_nextRecord (CLEMEXTIteratorHandle iterator, CLEMEXTErrorCode *errorCode)
 
CLEMEXTStatus clemext_iterator_getRecordValue (CLEMEXTIteratorHandle iterator, size_t index, void **value, size_t *value_length, CLEMEXTErrorCode *errorCode)
 
CLEMEXTStatus clemext_iterator_rewind (CLEMEXTIteratorHandle iterator, CLEMEXTErrorCode *errorCode)
 
CLEMEXTStatus clemext_progress_report (CLEMEXTProgressHandle progress, const char *report, size_t report_size, CLEMEXTErrorCode *errorCode)
 
CLEMEXTStatus clemext_channel_send (CLEMEXTChannelHandle channel, const char *message, size_t message_size, CLEMEXTErrorCode *errorCode)
 
CLEMEXTStatus clemext_node_getPsmMergeInformation (CLEMEXTNodeHandle node, char *buffer, size_t buffer_size, size_t *data_size, CLEMEXTErrorCode *errorCode)
 

Detailed Description

Function Documentation

CLEMEXTStatus clemext_channel_send ( CLEMEXTChannelHandle  channel,
const char *  message,
size_t  message_size,
CLEMEXTErrorCode errorCode 
)
inline

Called by an interactive peer to send an asynchronous message to the client node. The message is sent on the channel associated with the interaction. Access to the channel is synchronized, so this function is safe for multi-threaded use.

Parameters
channelthe channel handle supplied to the peer by clemext_peer_beginInteraction
messagethe message string
message_sizethe length of the message, in bytes
errorCodea CLEMEXT error code providing more detail if a problem is encountered
Returns
CLEMEXT status code

Definition at line 858 of file clemext.h.

CLEMEXTStatus clemext_host_getHostInformation ( CLEMEXTHostHandle  host,
char *  buffer,
size_t  buffer_size,
size_t *  data_size,
CLEMEXTErrorCode errorCode 
)
inline

Called by the module to get information on the host.

the parameters passed back in XML form (see example)

Parameters
hosta CLEMEXTHostHandle (as passed to the module by call clemext_initialise)
bufferbuffer to receive the result
buffer_sizethe current size of the buffer in bytes
data_sizepointer to a value set to the number of bytes required to store the result in a buffer
errorCodea CLEMEXT error code providing more detail if a problem is encountered during this call
Returns
CLEMEXT status code

Definition at line 556 of file clemext.h.

CLEMEXTStatus clemext_iterator_getRecordValue ( CLEMEXTIteratorHandle  iterator,
size_t  index,
void **  value,
size_t *  value_length,
CLEMEXTErrorCode errorCode 
)
inline

Called by the module to get a field value from the current record of the iterator

The value is returned in a pointer which is valid until the next call to clemext_iterator_nextRecord or clemext_iterator_rewind

Parameters
iteratora CLEMEXTIteratorHandle (as passed to the module by call clemext_peer_beginExecution)
indexthe position of the field in the input data model
valueaddress of pointer to set to the result value (or NULL)
value_lengththe number of bytes in the returned value
errorCodea CLEMEXT error code providing more detail if a problem is encountered
Returns
CLEMEXT status code

Definition at line 800 of file clemext.h.

CLEMEXTStatus clemext_iterator_nextRecord ( CLEMEXTIteratorHandle  iterator,
CLEMEXTErrorCode errorCode 
)
inline

Called by the module to move the iterator to the next record in the input data set

Parameters
iteratora CLEMEXTIteratorHandle (as passed to the module by call clemext_peer_beginExecution)
errorCodea CLEMEXT error code providing more detail if a problem is encountered
Returns
CLEMEXT status code

Definition at line 780 of file clemext.h.

CLEMEXTStatus clemext_iterator_rewind ( CLEMEXTIteratorHandle  iterator,
CLEMEXTErrorCode errorCode 
)
inline

Called by the module to reposition iterator at beginning of input data set

Parameters
iteratora CLEMEXTIteratorHandle (as passed to the module by a call clemext_peer_beginExecution)
errorCodea CLEMEXT error code providing more detail if a problem is encountered
Returns
CLEMEXT status code

Definition at line 818 of file clemext.h.

CLEMEXTStatus clemext_node_expandFilePath ( CLEMEXTNodeHandle  node,
const char *  path,
char *  buffer,
size_t  buffer_size,
size_t *  data_size,
CLEMEXTErrorCode errorCode 
)
inline

Called by the module to expand file paths using the notation used by the host application. For example, the application may expand environment variables. The returned path can then be used by the component to access the local filesystem.

Parameters
nodea CLEMEXTNodeHandle (as passed to the module by call clemext_create_peer)
paththe input file path
bufferbuffer to receive the expanded file path
buffer_sizethe length of the buffer, in bytes
data_sizereceives the length of the returned file path, in bytes
errorCodea CLEMEXT error code providing more detail if a problem is encountered
Returns
CLEMEXT status code

Definition at line 731 of file clemext.h.

CLEMEXTStatus clemext_node_expandFilePathExt ( CLEMEXTNodeHandle  node,
const char *  path,
unsigned int  path_type,
char *  buffer,
size_t  buffer_size,
size_t *  data_size,
CLEMEXTErrorCode errorCode 
)
inline

Called by the module to expand file paths using the notation used by the host application. For example, the application may expand environment variables. The returned path can then be used by the component to access the local filesystem. This extended version of the call is also passed the type of the file (data or program) and the application checks that the peer has permission to access this type of file.

Parameters
nodea CLEMEXTNodeHandle (as passed to the module by call clemext_create_peer)
paththe input file path
path_typethe path of the type, in (FILEPATH_TYPE_DATA,FILEPATH_TYPE_PROGRAM)
bufferbuffer to receive the expanded file path
buffer_sizethe length of the buffer, in bytes
data_sizereceives the length of the returned file path, in bytes
errorCodea CLEMEXT error code providing more detail if a problem is encountered
Returns
CLEMEXT status code, will be CLEMEXT_ERR_FILE_ACCESS_RESTRICTED if access is restricted by the application

Definition at line 759 of file clemext.h.

CLEMEXTStatus clemext_node_getDataModel ( CLEMEXTNodeHandle  node,
char *  buffer,
size_t  buffer_size,
size_t *  data_size,
CLEMEXTErrorCode errorCode 
)
inline

Called by the module to retrieve the input data model from the node the data model is passed back in XML form (see example)

Parameters
nodea CLEMEXTNodeHandle (as passed to the module by call clemext_create_peer)
bufferbuffer to receive the result
buffer_sizethe current size of the buffer in bytes
data_sizepointer to a value set to the number of bytes required to store the result in a buffer
errorCodea CLEMEXT error code providing more detail if a problem is encountered

Definition at line 618 of file clemext.h.

CLEMEXTStatus clemext_node_getFilePath ( CLEMEXTNodeHandle  node,
const char *  fileId,
char *  buffer,
size_t  buffer_size,
size_t *  data_size,
CLEMEXTErrorCode errorCode 
)
inline

Called by the module to retrieve a input or output file's path

Parameters
nodea CLEMEXTNodeHandle (as passed to the module by call clemext_create_peer)
fileIda string providing the file identifier
bufferbuffer to receive the resulting file path
buffer_sizethe current size of the buffer in bytes
data_sizepointer to a value set to the number of bytes required to store the result in a buffer
errorCodea CLEMEXT error code providing more detail if a problem is encountered
Returns
CLEMEXT status code

Definition at line 706 of file clemext.h.

CLEMEXTStatus clemext_node_getNodeInformation ( CLEMEXTNodeHandle  node,
char *  buffer,
size_t  buffer_size,
size_t *  data_size,
CLEMEXTErrorCode errorCode 
)
inline

Called by the module to get information on the node associated with the peer

the parameters passed back in XML form (see example)

Parameters
nodea CLEMEXTNodeHandle (as passed to the module by call clemext_create_peer)
bufferbuffer to receive the result
buffer_sizethe current size of the buffer in bytes
data_sizepointer to a value set to the number of bytes required to store the result in a buffer
errorCodea CLEMEXT error code providing more detail if a problem is encountered

Definition at line 578 of file clemext.h.

CLEMEXTStatus clemext_node_getOutputDataModel ( CLEMEXTNodeHandle  node,
char *  buffer,
size_t  buffer_size,
size_t *  data_size,
CLEMEXTErrorCode errorCode 
)
inline

Called by the module to retrieve the output data model from the node the data model is passed back in XML form (see example)

Parameters
nodea CLEMEXTNodeHandle (as passed to the module by call clemext_create_peer)
bufferbuffer to receive the result
buffer_sizethe current size of the buffer in bytes
data_sizepointer to a value set to the number of bytes required to store the result in a buffer
errorCodea CLEMEXT error code providing more detail if a problem is encountered

Definition at line 638 of file clemext.h.

CLEMEXTStatus clemext_node_getParameters ( CLEMEXTNodeHandle  node,
char *  buffer,
size_t  buffer_size,
size_t *  data_size,
CLEMEXTErrorCode errorCode 
)
inline

Called by the module to retrieve the parameters from the node the parameters passed back in XML form (see example)

Parameters
nodea CLEMEXTNodeHandle (as passed to the module by call clemext_create_peer)
bufferbuffer to receive the result
buffer_sizethe current size of the buffer in bytes
data_sizepointer to a value set to the number of bytes required to store the result in a buffer
errorCodea CLEMEXT error code providing more detail if a problem is encountered

Definition at line 598 of file clemext.h.

CLEMEXTStatus clemext_node_getPassword ( CLEMEXTNodeHandle  node,
const char *  passwordId,
char *  buffer,
size_t  buffer_size,
size_t *  data_size,
CLEMEXTErrorCode errorCode 
)
inline

Called by the module to retrieve a password in plaintext corresponding to a given password identifier

Parameters
nodea CLEMEXTNodeHandle (as passed to the module by call clemext_create_peer)
passwordIda string providing the password identifier
bufferbuffer to receive the result
buffer_sizethe current size of the buffer in bytes
data_sizepointer to a value set to the number of bytes required to store the result in a buffer
errorCodea CLEMEXT error code providing more detail if a problem is encountered
Returns
CLEMEXT status code

Definition at line 683 of file clemext.h.

CLEMEXTStatus clemext_node_getPsmMergeInformation ( CLEMEXTNodeHandle  node,
char *  buffer,
size_t  buffer_size,
size_t *  data_size,
CLEMEXTErrorCode errorCode 
)
inline

Called by the interactive peer (a PSM manager) to retrieve a PsmMergeInformation document from the host. This document will inform the manager where to locate files for the merge phase of the PSM protocol.

Parameters
nodeindicates which node this call should be directed to
bufferbuffer to recieve the returned document
buffer_sizethe length of the buffer, in bytes
data_sizereceives the length of the document, in bytes
errorCodea CLEMEXT error code providing more detail if a problem is encountered
Returns
CLEMEXT status code

Definition at line 880 of file clemext.h.

CLEMEXTStatus clemext_node_getSQLGeneration ( CLEMEXTNodeHandle  node,
char *  buffer,
size_t  buffer_size,
size_t *  data_size,
CLEMEXTErrorCode errorCode 
)
inline

Called by the module to retrieve a generated SQL statement from the host which will provide the input data the SQL statement is passed back in XML form (see example)

Parameters
nodea CLEMEXTNodeHandle (as passed to the module by call clemext_create_peer)
bufferbuffer to receive the result
buffer_sizethe current size of the buffer in bytes
data_sizepointer to a value set to the number of bytes required to store the result in a buffer
errorCodea CLEMEXT error code providing more detail if a problem is encountered
Returns
CLEMEXT status code

Definition at line 660 of file clemext.h.

CLEMEXTStatus clemext_progress_report ( CLEMEXTProgressHandle  progress,
const char *  report,
size_t  report_size,
CLEMEXTErrorCode errorCode 
)
inline

Called by the module to report progress on execution from the module back to the host Progress is reported in an XML document (example)

Parameters
progressa CLEMEXTProgressHandle (as passed to the module by a call clemext_peer_beginExecution)
reportXML contents string containing progress information
report_sizethe size of the XML contents string in bytes
errorCodea CLEMEXT error code providing more detail if a problem is encountered
Returns
CLEMEXT status code

Definition at line 836 of file clemext.h.