~clint-fewbar/ubuntu/precise/gearmand/drop-unneeded-patches

« back to all changes in this revision

Viewing changes to libgearman/server_job.h

  • Committer: Bazaar Package Importer
  • Author(s): Monty Taylor
  • Date: 2009-09-28 21:43:31 UTC
  • mto: (1.2.3 upstream) (6.1.1 sid)
  • mto: This revision was merged to the branch mainline in revision 5.
  • Revision ID: james.westby@ubuntu.com-20090928214331-9bku0d3v1b1ypgp4
ImportĀ upstreamĀ versionĀ 0.10

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* Gearman server and library
2
 
 * Copyright (C) 2008 Brian Aker, Eric Day
3
 
 * All rights reserved.
4
 
 *
5
 
 * Use and distribution licensed under the BSD license.  See
6
 
 * the COPYING file in the parent directory for full text.
7
 
 */
8
 
 
9
 
/**
10
 
 * @file
11
 
 * @brief Server job declarations
12
 
 */
13
 
 
14
 
#ifndef __GEARMAN_SERVER_JOB_H__
15
 
#define __GEARMAN_SERVER_JOB_H__
16
 
 
17
 
#ifdef __cplusplus
18
 
extern "C" {
19
 
#endif
20
 
 
21
 
/**
22
 
 * @addtogroup gearman_server_job Server Job Handling
23
 
 * @ingroup gearman_server
24
 
 * This is a low level interface for gearman server jobs. This is used
25
 
 * internally by the server interface, so you probably want to look there first.
26
 
 * @{
27
 
 */
28
 
 
29
 
/**
30
 
 * Add a new job to a server instance.
31
 
 */
32
 
GEARMAN_API
33
 
gearman_server_job_st *
34
 
gearman_server_job_add(gearman_server_st *server, const char *function_name,
35
 
                       size_t function_name_size, const char *unique,
36
 
                       size_t unique_size, const void *data, size_t data_size,
37
 
                       gearman_job_priority_t priority,
38
 
                       gearman_server_client_st *server_client,
39
 
                       gearman_return_t *ret_ptr);
40
 
 
41
 
/**
42
 
 * Initialize a server job structure.
43
 
 */
44
 
GEARMAN_API
45
 
gearman_server_job_st *
46
 
gearman_server_job_create(gearman_server_st *server,
47
 
                          gearman_server_job_st *server_job);
48
 
 
49
 
/**
50
 
 * Free a server job structure.
51
 
 */
52
 
GEARMAN_API
53
 
void gearman_server_job_free(gearman_server_job_st *server_job);
54
 
 
55
 
/**
56
 
 * Get a server job structure from the job handle.
57
 
 */
58
 
GEARMAN_API
59
 
gearman_server_job_st *gearman_server_job_get(gearman_server_st *server,
60
 
                                              const char *job_handle);
61
 
 
62
 
/**
63
 
 * See if there are any jobs to be run for the server worker connection.
64
 
 */
65
 
GEARMAN_API
66
 
gearman_server_job_st *
67
 
gearman_server_job_peek(gearman_server_con_st *server_con);
68
 
 
69
 
/**
70
 
 * Start running a job for the server worker connection.
71
 
 */
72
 
GEARMAN_API
73
 
gearman_server_job_st *
74
 
gearman_server_job_take(gearman_server_con_st *server_con);
75
 
 
76
 
/**
77
 
 * Queue a job to be run.
78
 
 */
79
 
GEARMAN_API
80
 
gearman_return_t gearman_server_job_queue(gearman_server_job_st *server_job);
81
 
 
82
 
/** @} */
83
 
 
84
 
#ifdef __cplusplus
85
 
}
86
 
#endif
87
 
 
88
 
#endif /* __GEARMAN_SERVER_JOB_H__ */