summaryrefslogtreecommitdiff
path: root/lib/Net/Presque.pm
blob: 9f72b20360b8fa5549e867611bc1472885986f7f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
package Net::Presque;

use MooseX::Net::API;

net_api_declare presque => (
    api_format      => 'json',
    api_format_mode => 'content-type',
);

net_api_method fetch_job => (
    method   => 'GET',
    path     => '/q/:queue_name',
    params   => [qw/queue_name worker_id/],
    required => [qw/queue_name/],
);

net_api_method fetch_jobs => (
    method   => 'GET',
    path     => '/qb/:queue_name',
    params   => [qw/queue_name worker_id batch_size/],
    required => [qw/queue_name/],
);

net_api_method create_job => (
    method        => 'POST',
    strict        => 0,
    path          => '/q/:queue_name',
    params_in_url => [qw/delayed uniq/],
    params        => [qw/queue_name/],
    required      => [qw/queue_name/],
);

net_api_method create_jobs => (
    method        => 'POST',
    strict        => 0,
    path          => '/qb/:queue_name',
    params_in_url => [qw/delayed/],
    params        => [qw/queue_name jobs/],
    required      => [qw/queue_name jobs/],
);

net_api_method reset_queue => (
    method   => 'DELETE',
    path     => '/q/:queue_name',
    params   => [qw/queue_name/],
    required => [qw/queue_name/],
);

net_api_method failed_job => (
    method   => 'PUT',
    strict   => 0,
    path     => '/q/:queue_name',
    params   => [qw/queue_name/],
    required => [qw/queue_name/],
);

net_api_method queue_info => (
    method   => 'GET',
    path     => '/j/:queue_name',
    params   => [qw/queue_name/],
    required => [qw/queue_name/],
);

net_api_method queue_status => (
    method   => 'GET',
    path     => '/control/:queue_name',
    params   => [qw/queue_name/],
    required => [qw/queue_name/],
);

net_api_method change_queue_status => (
    method   => 'POST',
    path     => '/control/:queue_name',
    params   => [qw/queue_name/],
    required => [qw/queue_name/],
);

net_api_method queue_size => (
    method   => 'GET',
    path     => '/status/:queue_name',
    params   => [qw/queue_name/],
    required => [qw/queue_name/],
);

net_api_method worker_stats => (
    method   => 'GET',
    path     => '/w/:worker_id',
    params   => [qw/worker_id/],
    required => [qw/worker_id/],
);

net_api_method workers_stats => (
    method => 'GET',
    path   => '/w/',
);

net_api_method queue_stats => (
    method   => 'GET',
    path     => '/w/:queue_name',
    params   => [qw/queue_name/],
    required => [qw/queue_name/],
);

net_api_method register_worker => (
    method   => 'POST',
    path     => '/w/:queue_name',
    params   => [qw/queue_name worker_id/],
    required => [qw/queue_name worker_id/],
);

net_api_method unregister_worker => (
    method   => 'DELETE',
    path     => '/w/:queue_name',
    params   => [qw/queue_name worker_id/],
    required => [qw/queue_name worker_id/],
);

1;