![]()  | 
  
    Diffusion C API 6.12.0
    
   | 
 
Typedefs | |
| typedef struct DIFFUSION_REMOTE_SERVER_T | DIFFUSION_REMOTE_SERVER_T | 
| Opaque remote server struct.   | |
| typedef int(* | on_remote_server_created_cb) (DIFFUSION_REMOTE_SERVER_T *remote_server, LIST_T *errors, void *context) | 
| Callback when a remote server creation attempt has been made.   | |
| typedef int(* | on_remote_server_removed_cb) (void *context) | 
| Callback when a remote server removal attempt has been made.   | |
| typedef int(* | on_remote_servers_listed_cb) (LIST_T *remote_servers, void *context) | 
| Callback when a response is received from the server, returning a list of remote servers.   | |
| typedef struct DIFFUSION_CHECK_REMOTE_SERVER_RESPONSE_T | DIFFUSION_CHECK_REMOTE_SERVER_RESPONSE_T | 
| Opaque check remote server response struct.  | |
| typedef int(* | on_remote_server_checked_cb) (DIFFUSION_CHECK_REMOTE_SERVER_RESPONSE_T *response, void *context) | 
| Callback when a response is received from the server, returning the details of the remote server state.   | |
Functions | |
| DIFFUSION_REMOTE_SERVER_TYPE_T | diffusion_remote_server_get_type (DIFFUSION_REMOTE_SERVER_T *remote_server) | 
| Returns the remote server type.   | |
| char * | diffusion_remote_server_get_name (DIFFUSION_REMOTE_SERVER_T *remote_server) | 
| Returns the remote server name.   | |
| LIST_T * | diffusion_remote_server_get_urls (DIFFUSION_REMOTE_SERVER_T *remote_server) | 
| Returns the urls for connection to secondary servers.   | |
| char * | diffusion_remote_server_get_connector (DIFFUSION_REMOTE_SERVER_T *remote_server) | 
| Returns the connector that the primary initiator will use to establish a connection between the secondary server and the primary server.   | |
| int | diffusion_remote_server_get_retry_delay (DIFFUSION_REMOTE_SERVER_T *remote_server) | 
| Returns the interval in milliseconds between connection retries.   | |
| char * | diffusion_remote_server_get_url (DIFFUSION_REMOTE_SERVER_T *remote_server) | 
| Returns the url for connection to primary server.   | |
| char * | diffusion_remote_server_get_principal (DIFFUSION_REMOTE_SERVER_T *remote_server) | 
| Returns the principal used for the remote server connection.   | |
| CREDENTIALS_T * | diffusion_remote_server_get_credentials (DIFFUSION_REMOTE_SERVER_T *remote_server) | 
| Returns the credentials to use to authenticate the connection.   | |
| HASH_NUM_T * | diffusion_remote_server_get_connection_options (DIFFUSION_REMOTE_SERVER_T *remote_server) | 
| Returns the remote server connection options.   | |
| char * | diffusion_remote_server_get_missing_topic_notification_filter (DIFFUSION_REMOTE_SERVER_T *remote_server) | 
| Return the missing topic notification filter expression or NULL if one has not been specified.   | |
| char * | diffusion_remote_get_primary_host_name (DIFFUSION_REMOTE_SERVER_T *remote_server) | 
| Returns the primary server host name used in SSL validation.   | |
| void | diffusion_remote_server_free (DIFFUSION_REMOTE_SERVER_T *remote_server) | 
| Free a remote server.   | |
| bool | diffusion_create_remote_server (SESSION_T *session, const DIFFUSION_CREATE_REMOTE_SERVER_PARAMS_T params, DIFFUSION_API_ERROR *api_error) | 
| Create a new remote server instance with default connection options.   | |
| bool | diffusion_remove_remote_server (SESSION_T *session, const DIFFUSION_REMOVE_REMOTE_SERVER_PARAMS_T params, DIFFUSION_API_ERROR *api_error) | 
| Remove a named remote server if it exists.   | |
| bool | diffusion_list_remote_servers (SESSION_T *session, const DIFFUSION_LIST_REMOTE_SERVERS_PARAMS_T params, DIFFUSION_API_ERROR *api_error) | 
| Lists all the remote servers that have been created.   | |
| DIFFUSION_REMOTE_SERVER_CONNECTION_STATE_T | diffusion_check_remote_server_response_get_state (DIFFUSION_CHECK_REMOTE_SERVER_RESPONSE_T *response) | 
| Returns the state of the connection of the remote server.   | |
| char * | diffusion_check_remote_server_response_get_failure_message (DIFFUSION_CHECK_REMOTE_SERVER_RESPONSE_T *response) | 
| Returns a memory allocated copy of the check remote server response failure message.   | |
| bool | diffusion_check_remote_server (SESSION_T *session, const DIFFUSION_CHECK_REMOTE_SERVER_PARAMS_T params, DIFFUSION_API_ERROR *api_error) | 
| Checks the current state of a named remote server.   | |
| typedef struct DIFFUSION_REMOTE_SERVER_T DIFFUSION_REMOTE_SERVER_T | 
Opaque remote server struct.
| typedef int(* on_remote_server_checked_cb) (DIFFUSION_CHECK_REMOTE_SERVER_RESPONSE_T *response, void *context) | 
Callback when a response is received from the server, returning the details of the remote server state.
| response | The response from the server | 
| context | User supplied context. | 
| typedef int(* on_remote_server_created_cb) (DIFFUSION_REMOTE_SERVER_T *remote_server, LIST_T *errors, void *context) | 
Callback when a remote server creation attempt has been made.
If the remote server definition is nil, this could mean an error has occurred. These may include:
| remote_server | The remote server created if no errors are returned | 
| errors | Errors encountered during the attempted creation of the remote server | 
| context | User supplied context. | 
| typedef int(* on_remote_server_removed_cb) (void *context) | 
Callback when a remote server removal attempt has been made.
| context | User supplied context. | 
| typedef int(* on_remote_servers_listed_cb) (LIST_T *remote_servers, void *context) | 
Callback when a response is received from the server, returning a list of remote servers.
| remote_servers | The list of remote servers | 
| context | User supplied context. | 
| bool diffusion_check_remote_server | ( | SESSION_T * | session, | 
| const DIFFUSION_CHECK_REMOTE_SERVER_PARAMS_T | params, | ||
| DIFFUSION_API_ERROR * | api_error ) | 
Checks the current state of a named remote server.
| session | The current session. If NULL, this function returns immediately. | 
| params | Parameters defining the diffusion_check_remote_server request and callbacks. | 
| api_error | Populated on API error. Can be NULL. | 
| char * diffusion_check_remote_server_response_get_failure_message | ( | DIFFUSION_CHECK_REMOTE_SERVER_RESPONSE_T * | response | ) | 
Returns a memory allocated copy of the check remote server response failure message.
free should be called on this pointer when no longer needed.
| response | the check remote server response | 
| DIFFUSION_REMOTE_SERVER_CONNECTION_STATE_T diffusion_check_remote_server_response_get_state | ( | DIFFUSION_CHECK_REMOTE_SERVER_RESPONSE_T * | response | ) | 
Returns the state of the connection of the remote server.
| response | the check remote server response | 
| bool diffusion_create_remote_server | ( | SESSION_T * | session, | 
| const DIFFUSION_CREATE_REMOTE_SERVER_PARAMS_T | params, | ||
| DIFFUSION_API_ERROR * | api_error ) | 
Create a new remote server instance with default connection options.
If a remote server with the same name already exists an error will be returned.
| session | The current session. If NULL, this function returns immediately. | 
| params | Parameters defining the diffusion_create_remote_server request and callbacks. | 
| api_error | Populated on API error. Can be NULL. | 
| bool diffusion_list_remote_servers | ( | SESSION_T * | session, | 
| const DIFFUSION_LIST_REMOTE_SERVERS_PARAMS_T | params, | ||
| DIFFUSION_API_ERROR * | api_error ) | 
Lists all the remote servers that have been created.
| session | The current session. If NULL, this function returns immediately. | 
| params | Parameters defining the diffusion_list_remote_servers request and callbacks. | 
| api_error | Populated on API error. Can be NULL. | 
| char * diffusion_remote_get_primary_host_name | ( | DIFFUSION_REMOTE_SERVER_T * | remote_server | ) | 
Returns the primary server host name used in SSL validation.
This method is only applicable to DIFFUSION_REMOTE_SERVER_TYPE_SECONDARY_ACCEPTOR, and will return NULL otherwise.
free should be called on this pointer when longer needed, if not NULL.
| remote_server | the secondary acceptor remote server. | 
| void diffusion_remote_server_free | ( | DIFFUSION_REMOTE_SERVER_T * | remote_server | ) | 
Free a remote server.
| remote_server | the remote server. | 
| HASH_NUM_T * diffusion_remote_server_get_connection_options | ( | DIFFUSION_REMOTE_SERVER_T * | remote_server | ) | 
Returns the remote server connection options.
This method is only applicable to DIFFUSION_REMOTE_SERVER_TYPE_SECONDARY_INITIATOR or DIFFUSION_REMOTE_SERVER_TYPE_SECONDARY_ACCEPTOR, and will return NULL otherwise.
hash_num_free should be called on this pointer when no longer needed.
| remote_server | the remote server. | 
| char * diffusion_remote_server_get_connector | ( | DIFFUSION_REMOTE_SERVER_T * | remote_server | ) | 
Returns the connector that the primary initiator will use to establish a connection between the secondary server and the primary server.
This method is only applicable to DIFFUSION_REMOTE_SERVER_TYPE_PRIMARY_INITIATOR, and will return NULL otherwise.
free should be called on this pointer when no longer needed, if not NULL.
| remote_server | the primary initiator remote server. | 
| CREDENTIALS_T * diffusion_remote_server_get_credentials | ( | DIFFUSION_REMOTE_SERVER_T * | remote_server | ) | 
Returns the credentials to use to authenticate the connection.
This method is only applicable to DIFFUSION_REMOTE_SERVER_TYPE_SECONDARY_INITIATOR or DIFFUSION_REMOTE_SERVER_TYPE_SECONDARY_ACCEPTOR, and will return NULL otherwise.
credentials_free should be called on this pointer when no longer needed.
| remote_server | the remote server. | 
| char * diffusion_remote_server_get_missing_topic_notification_filter | ( | DIFFUSION_REMOTE_SERVER_T * | remote_server | ) | 
Return the missing topic notification filter expression or NULL if one has not been specified.
This method is only applicable to DIFFUSION_REMOTE_SERVER_TYPE_SECONDARY_INITIATOR or DIFFUSION_REMOTE_SERVER_TYPE_SECONDARY_ACCEPTOR, and will return NULL otherwise.
free should be called on this pointer when no longer needed, if not NULL.
| remote_server | the remote server. | 
| char * diffusion_remote_server_get_name | ( | DIFFUSION_REMOTE_SERVER_T * | remote_server | ) | 
Returns the remote server name.
free should be called on this pointer when no longer needed.
| remote_server | the remote server. | 
| char * diffusion_remote_server_get_principal | ( | DIFFUSION_REMOTE_SERVER_T * | remote_server | ) | 
Returns the principal used for the remote server connection.
This method is only applicable to DIFFUSION_REMOTE_SERVER_TYPE_SECONDARY_INITIATOR or DIFFUSION_REMOTE_SERVER_TYPE_SECONDARY_ACCEPTOR, and will return NULL otherwise.
free should be called on this pointer when no longer needed.
| remote_server | the remote server. | 
| int diffusion_remote_server_get_retry_delay | ( | DIFFUSION_REMOTE_SERVER_T * | remote_server | ) | 
Returns the interval in milliseconds between connection retries.
This method is only applicable to DIFFUSION_REMOTE_SERVER_TYPE_PRIMARY_INITIATOR, and will return -1 otherwise.
If a primary initiator cannot connect to a secondary server, or loses the connection, this is the amount of time before it will try to connect again
| remote_server | the primary initiator remote server. | 
| DIFFUSION_REMOTE_SERVER_TYPE_T diffusion_remote_server_get_type | ( | DIFFUSION_REMOTE_SERVER_T * | remote_server | ) | 
Returns the remote server type.
| remote_server | the remote server. | 
| char * diffusion_remote_server_get_url | ( | DIFFUSION_REMOTE_SERVER_T * | remote_server | ) | 
Returns the url for connection to primary server.
This method is only applicable to DIFFUSION_REMOTE_SERVER_TYPE_SECONDARY_INITIATOR, and will return NULL otherwise.
free should be called on this pointer when no longer needed.
| remote_server | the remote server. | 
| LIST_T * diffusion_remote_server_get_urls | ( | DIFFUSION_REMOTE_SERVER_T * | remote_server | ) | 
Returns the urls for connection to secondary servers.
This method is only applicable to DIFFUSION_REMOTE_SERVER_TYPE_PRIMARY_INITIATOR, and will return NULL otherwise.
list_free(free) should be called on this pointer when no longer needed, if not NULL.
| remote_server | the primary initiator remote server. | 
| bool diffusion_remove_remote_server | ( | SESSION_T * | session, | 
| const DIFFUSION_REMOVE_REMOTE_SERVER_PARAMS_T | params, | ||
| DIFFUSION_API_ERROR * | api_error ) | 
Remove a named remote server if it exists.
If the named remote server does not exist the callback will return without an error
When a named remote server is removed, any components that specify it would be disabled.
| session | The current session. If NULL, this function returns immediately. | 
| params | Parameters defining the diffusion_remove_remote_server request and callbacks. | 
| api_error | Populated on API error. Can be NULL. |