00001
00002
00003
00004
00005
00006
00007
00008
00014 #include "common.h"
00015
00016
00017
00018
00019
00020 void *gearman_task_context(const gearman_task_st *task)
00021 {
00022 return (void *)task->context;
00023 }
00024
00025 void gearman_task_set_context(gearman_task_st *task, const void *context)
00026 {
00027 task->context= context;
00028 }
00029
00030 const char *gearman_task_function_name(const gearman_task_st *task)
00031 {
00032 return (char *)task->send.arg[0];
00033 }
00034
00035 const char *gearman_task_unique(const gearman_task_st *task)
00036 {
00037 return (char *)task->send.arg[1];
00038 }
00039
00040 const char *gearman_task_job_handle(const gearman_task_st *task)
00041 {
00042 return task->job_handle;
00043 }
00044
00045 bool gearman_task_is_known(const gearman_task_st *task)
00046 {
00047 return task->is_known;
00048 }
00049
00050 bool gearman_task_is_running(const gearman_task_st *task)
00051 {
00052 return task->is_running;
00053 }
00054
00055 uint32_t gearman_task_numerator(const gearman_task_st *task)
00056 {
00057 return task->numerator;
00058 }
00059
00060 uint32_t gearman_task_denominator(const gearman_task_st *task)
00061 {
00062 return task->denominator;
00063 }
00064
00065 void gearman_task_give_workload(gearman_task_st *task, const void *workload,
00066 size_t workload_size)
00067 {
00068 gearman_packet_give_data(&(task->send), workload, workload_size);
00069 }
00070
00071 size_t gearman_task_send_workload(gearman_task_st *task, const void *workload,
00072 size_t workload_size,
00073 gearman_return_t *ret_ptr)
00074 {
00075 return gearman_con_send_data(task->con, workload, workload_size, ret_ptr);
00076 }
00077
00078 const void *gearman_task_data(const gearman_task_st *task)
00079 {
00080 return task->recv->data;
00081 }
00082
00083 size_t gearman_task_data_size(const gearman_task_st *task)
00084 {
00085 return task->recv->data_size;
00086 }
00087
00088 void *gearman_task_take_data(gearman_task_st *task, size_t *data_size)
00089 {
00090 return gearman_packet_take_data(task->recv, data_size);
00091 }
00092
00093 size_t gearman_task_recv_data(gearman_task_st *task, void *data,
00094 size_t data_size,
00095 gearman_return_t *ret_ptr)
00096 {
00097 return gearman_con_recv_data(task->con, data, data_size, ret_ptr);
00098 }