Job state callbacks

Typedefs

Functions


Typedef Documentation

typedef void(* globus_gram_client_callback_func_t)(void *user_callback_arg, char *job_contact, int state, int errorcode)

GRAM state callback type.

Type of a GRAM Client state callback function. A pointer to a function of this type is passed to the globus_gram_client_callback_allow() function to create a callback contact. This contact can be passed to globus_gram_client_job_request() or globus_gram_client_job_callback_register() to let the job manager know to send information on GRAM job state changes to the user's function.

Parameters:
user_callback_arg A pointer to arbitrary user data.
job_contact A string containing the job contact. This string will contain the same value as the return job_contact parameter from globus_gram_client_job_request().
state The new state (one of the globus_gram_protocol_job_state_t values) of the job.
errorcode The error code if the state parameter is equal to GLOBUS_GRAM_PROTOCOL_JOB_STATE_FAILED.

GRAM operation attribute.

typedef void(* globus_gram_client_nonblocking_func_t)(void *user_callback_arg, globus_gram_protocol_error_t operation_failure_code, const char *job_contact, globus_gram_protocol_job_state_t job_state, globus_gram_protocol_error_t job_failure_code)

GRAM nonblocking operation callback function.

Type of a callback indicating completion of a nonblocking GRAM call.

Parameters:
user_callback_arg The register_callback_arg value passed to the nonblocking function.
operation_failure_code The result of nonblocking call, indicating whether the call was processed by the job manager successfully or not.
job_conatc A string containing the job contact.
job_state The new state (one of the globus_gram_protocol_job_state_t values) of the job.
job_failure_code The error code of the job request if the job_state parameter is GLOBUS_GRAM_PROTOCOL_JOB_STATE_FAILED.

Function Documentation

int globus_gram_client_callback_allow ( globus_gram_client_callback_func_t  callback_func,
void *  user_callback_arg,
char **  callback_contact 
)

Create a callback contact.

Creates a small GRAM server which can handle GRAM state updates from job managers. The contact information for this server is returned and may be used with the globus_gram_client_job_request() or globus_gram_client_callback_register() functions.

Parameters:
callback_func A pointer to the user's callback function to be called when GRAM state changes are received from a Job Manager.
user_callback_arg A pointer to arbitrary data which is passed as the first parameter to the callback_func function when it is called.
callback_contact A pointer to a char *. This pointer will be initialized with a newly allocated string containing the information needed by the Job Manager to contact this GRAM callback server. This string should be freed by the user when it is no longer used.
Returns:
This function returns GLOBUS_SUCCESS if the callback contact create was successful. Otherwise one of the GLOBUS_GRAM_PROTOCOL_ERROR_* values will be returned, indicating why the client could not create the callback contact.
int globus_gram_client_callback_disallow ( char *  callback_contact  ) 

Disable a callback handler.

Disables the GRAM server created by calling globus_gram_client_callback_allow(). This function blocks until all pending job state updates being handled by this server are dispatched.

This function can only be used to disable a callback created in the current process.

Parameters:
callback_contact The callback contact string returned by calling globus_gram_client_callback_allow.
Returns:
This function returns GLOBUS_SUCCESS if the callback contact was disabled successful. Otherwise one of the GLOBUS_GRAM_PROTOCOL_ERROR_* values will be returned, indicating why the client could not disable the callback contact.

about globus | globus toolkit | dev.globus

Comments? webmaster@globus.org