couchbase 1.2.0.z.beta4 → 1.2.0.z.beta5

Sign up to get free protection for your applications and to get access to all the features.
@@ -18,20 +18,20 @@
18
18
  #include "couchbase_ext.h"
19
19
 
20
20
  void
21
- delete_callback(lcb_t handle, const void *cookie, lcb_error_t error, const lcb_remove_resp_t *resp)
21
+ cb_delete_callback(lcb_t handle, const void *cookie, lcb_error_t error, const lcb_remove_resp_t *resp)
22
22
  {
23
- struct context_st *ctx = (struct context_st *)cookie;
24
- struct bucket_st *bucket = ctx->bucket;
23
+ struct cb_context_st *ctx = (struct cb_context_st *)cookie;
24
+ struct cb_bucket_st *bucket = ctx->bucket;
25
25
  VALUE key, *rv = ctx->rv, exc = Qnil, res;
26
26
 
27
27
  ctx->nqueries--;
28
28
  key = STR_NEW((const char*)resp->v.v0.key, resp->v.v0.nkey);
29
- strip_key_prefix(bucket, key);
29
+ cb_strip_key_prefix(bucket, key);
30
30
 
31
31
  if (error != LCB_KEY_ENOENT || !ctx->quiet) {
32
32
  exc = cb_check_error(error, "failed to remove value", key);
33
33
  if (exc != Qnil) {
34
- rb_ivar_set(exc, id_iv_operation, sym_delete);
34
+ rb_ivar_set(exc, cb_id_iv_operation, cb_sym_delete);
35
35
  if (NIL_P(ctx->exception)) {
36
36
  ctx->exception = cb_gc_protect(bucket, exc);
37
37
  }
@@ -39,10 +39,10 @@ delete_callback(lcb_t handle, const void *cookie, lcb_error_t error, const lcb_r
39
39
  }
40
40
  if (bucket->async) { /* asynchronous */
41
41
  if (ctx->proc != Qnil) {
42
- res = rb_class_new_instance(0, NULL, cResult);
43
- rb_ivar_set(res, id_iv_error, exc);
44
- rb_ivar_set(res, id_iv_operation, sym_delete);
45
- rb_ivar_set(res, id_iv_key, key);
42
+ res = rb_class_new_instance(0, NULL, cb_cResult);
43
+ rb_ivar_set(res, cb_id_iv_error, exc);
44
+ rb_ivar_set(res, cb_id_iv_operation, cb_sym_delete);
45
+ rb_ivar_set(res, cb_id_iv_key, key);
46
46
  cb_proc_call(ctx->proc, 1, res);
47
47
  }
48
48
  } else { /* synchronous */
@@ -50,6 +50,9 @@ delete_callback(lcb_t handle, const void *cookie, lcb_error_t error, const lcb_r
50
50
  }
51
51
  if (ctx->nqueries == 0) {
52
52
  cb_gc_unprotect(bucket, ctx->proc);
53
+ if (bucket->async) {
54
+ xfree(ctx);
55
+ }
53
56
  }
54
57
  (void)handle;
55
58
  }
@@ -99,29 +102,29 @@ delete_callback(lcb_t handle, const void *cookie, lcb_error_t error, const lcb_r
99
102
  VALUE
100
103
  cb_bucket_delete(int argc, VALUE *argv, VALUE self)
101
104
  {
102
- struct bucket_st *bucket = DATA_PTR(self);
103
- struct context_st *ctx;
105
+ struct cb_bucket_st *bucket = DATA_PTR(self);
106
+ struct cb_context_st *ctx;
104
107
  VALUE rv, exc;
105
108
  VALUE args, proc;
106
109
  lcb_error_t err;
107
- struct params_st params;
110
+ struct cb_params_st params;
108
111
 
109
112
  if (bucket->handle == NULL) {
110
- rb_raise(eConnectError, "closed connection");
113
+ rb_raise(cb_eConnectError, "closed connection");
111
114
  }
112
115
  rb_scan_args(argc, argv, "0*&", &args, &proc);
113
116
  if (!bucket->async && proc != Qnil) {
114
117
  rb_raise(rb_eArgError, "synchronous mode doesn't support callbacks");
115
118
  }
116
- rb_funcall(args, id_flatten_bang, 0);
117
- memset(&params, 0, sizeof(struct params_st));
118
- params.type = cmd_remove;
119
+ rb_funcall(args, cb_id_flatten_bang, 0);
120
+ memset(&params, 0, sizeof(struct cb_params_st));
121
+ params.type = cb_cmd_remove;
119
122
  params.bucket = bucket;
120
123
  cb_params_build(&params, RARRAY_LEN(args), args);
121
124
 
122
- ctx = xcalloc(1, sizeof(struct context_st));
125
+ ctx = xcalloc(1, sizeof(struct cb_context_st));
123
126
  if (ctx == NULL) {
124
- rb_raise(eClientNoMemoryError, "failed to allocate memory for context");
127
+ rb_raise(cb_eClientNoMemoryError, "failed to allocate memory for context");
125
128
  }
126
129
  ctx->quiet = params.cmd.remove.quiet;
127
130
  ctx->proc = cb_gc_protect(bucket, proc);
@@ -140,7 +143,7 @@ cb_bucket_delete(int argc, VALUE *argv, VALUE self)
140
143
  }
141
144
  bucket->nbytes += params.npayload;
142
145
  if (bucket->async) {
143
- maybe_do_loop(bucket);
146
+ cb_maybe_do_loop(bucket);
144
147
  return Qnil;
145
148
  } else {
146
149
  if (ctx->nqueries > 0) {
@@ -119,9 +119,16 @@ if try_compile(<<-SRC)
119
119
  define("HAVE_STDARG_PROTOTYPES")
120
120
  end
121
121
 
122
- have_library("couchbase", "lcb_verify_compiler_setup", "libcouchbase/couchbase.h") or abort "You should install libcouchbase >= 2.0.0beta3. See http://www.couchbase.com/develop/ for more details"
122
+ def die(message)
123
+ STDERR.puts "\n#{"*" * 70}"
124
+ STDERR.puts "#{message}"
125
+ STDERR.puts "#{"*" * 70}\n\n"
126
+ abort
127
+ end
128
+
129
+ have_library("couchbase", "lcb_verify_compiler_setup", "libcouchbase/couchbase.h") or die("You must install libcouchbase >= 2.0.0beta3. See http://www.couchbase.com/develop/ for more details")
123
130
  have_header("mach/mach_time.h")
124
- have_header("stdint.h") or abort "Failed to locate stdint.h"
131
+ have_header("stdint.h") or die("Failed to locate stdint.h")
125
132
  have_header("sys/time.h")
126
133
  have_func("clock_gettime")
127
134
  have_func("gettimeofday")
@@ -18,20 +18,20 @@
18
18
  #include "couchbase_ext.h"
19
19
 
20
20
  void
21
- get_callback(lcb_t handle, const void *cookie, lcb_error_t error, const lcb_get_resp_t *resp)
21
+ cb_get_callback(lcb_t handle, const void *cookie, lcb_error_t error, const lcb_get_resp_t *resp)
22
22
  {
23
- struct context_st *ctx = (struct context_st *)cookie;
24
- struct bucket_st *bucket = ctx->bucket;
23
+ struct cb_context_st *ctx = (struct cb_context_st *)cookie;
24
+ struct cb_bucket_st *bucket = ctx->bucket;
25
25
  VALUE key, val, flags, cas, *rv = ctx->rv, exc = Qnil, res;
26
26
 
27
27
  ctx->nqueries--;
28
28
  key = STR_NEW((const char*)resp->v.v0.key, resp->v.v0.nkey);
29
- strip_key_prefix(bucket, key);
29
+ cb_strip_key_prefix(bucket, key);
30
30
 
31
31
  if (error != LCB_KEY_ENOENT || !ctx->quiet) {
32
32
  exc = cb_check_error(error, "failed to get value", key);
33
33
  if (exc != Qnil) {
34
- rb_ivar_set(exc, id_iv_operation, sym_get);
34
+ rb_ivar_set(exc, cb_id_iv_operation, cb_sym_get);
35
35
  if (NIL_P(ctx->exception)) {
36
36
  ctx->exception = cb_gc_protect(bucket, exc);
37
37
  }
@@ -43,33 +43,33 @@ get_callback(lcb_t handle, const void *cookie, lcb_error_t error, const lcb_get_
43
43
  val = Qnil;
44
44
  if (resp->v.v0.nbytes != 0) {
45
45
  VALUE raw = STR_NEW((const char*)resp->v.v0.bytes, resp->v.v0.nbytes);
46
- val = decode_value(raw, resp->v.v0.flags, ctx->force_format);
46
+ val = cb_decode_value(raw, resp->v.v0.flags, ctx->force_format);
47
47
  if (rb_obj_is_kind_of(val, rb_eStandardError)) {
48
- VALUE exc_str = rb_funcall(val, id_to_s, 0);
49
- VALUE msg = rb_funcall(rb_mKernel, id_sprintf, 3,
48
+ VALUE exc_str = rb_funcall(val, cb_id_to_s, 0);
49
+ VALUE msg = rb_funcall(rb_mKernel, cb_id_sprintf, 3,
50
50
  rb_str_new2("unable to convert value for key '%s': %s"), key, exc_str);
51
51
  if (ctx->exception != Qnil) {
52
52
  cb_gc_unprotect(bucket, ctx->exception);
53
53
  }
54
- ctx->exception = rb_exc_new3(eValueFormatError, msg);
55
- rb_ivar_set(ctx->exception, id_iv_operation, sym_get);
56
- rb_ivar_set(ctx->exception, id_iv_key, key);
57
- rb_ivar_set(ctx->exception, id_iv_inner_exception, val);
54
+ ctx->exception = rb_exc_new3(cb_eValueFormatError, msg);
55
+ rb_ivar_set(ctx->exception, cb_id_iv_operation, cb_sym_get);
56
+ rb_ivar_set(ctx->exception, cb_id_iv_key, key);
57
+ rb_ivar_set(ctx->exception, cb_id_iv_inner_exception, val);
58
58
  cb_gc_protect(bucket, ctx->exception);
59
59
  val = raw;
60
60
  }
61
- } else if (flags_get_format(resp->v.v0.flags) == sym_plain) {
61
+ } else if (cb_flags_get_format(resp->v.v0.flags) == cb_sym_plain) {
62
62
  val = STR_NEW_CSTR("");
63
63
  }
64
64
  if (bucket->async) { /* asynchronous */
65
65
  if (ctx->proc != Qnil) {
66
- res = rb_class_new_instance(0, NULL, cResult);
67
- rb_ivar_set(res, id_iv_error, exc);
68
- rb_ivar_set(res, id_iv_operation, sym_get);
69
- rb_ivar_set(res, id_iv_key, key);
70
- rb_ivar_set(res, id_iv_value, val);
71
- rb_ivar_set(res, id_iv_flags, flags);
72
- rb_ivar_set(res, id_iv_cas, cas);
66
+ res = rb_class_new_instance(0, NULL, cb_cResult);
67
+ rb_ivar_set(res, cb_id_iv_error, exc);
68
+ rb_ivar_set(res, cb_id_iv_operation, cb_sym_get);
69
+ rb_ivar_set(res, cb_id_iv_key, key);
70
+ rb_ivar_set(res, cb_id_iv_value, val);
71
+ rb_ivar_set(res, cb_id_iv_flags, flags);
72
+ rb_ivar_set(res, cb_id_iv_cas, cas);
73
73
  cb_proc_call(ctx->proc, 1, res);
74
74
  }
75
75
  } else { /* synchronous */
@@ -84,6 +84,9 @@ get_callback(lcb_t handle, const void *cookie, lcb_error_t error, const lcb_get_
84
84
 
85
85
  if (ctx->nqueries == 0) {
86
86
  cb_gc_unprotect(bucket, ctx->proc);
87
+ if (bucket->async) {
88
+ xfree(ctx);
89
+ }
87
90
  }
88
91
  (void)handle;
89
92
  }
@@ -219,28 +222,28 @@ get_callback(lcb_t handle, const void *cookie, lcb_error_t error, const lcb_get_
219
222
  VALUE
220
223
  cb_bucket_get(int argc, VALUE *argv, VALUE self)
221
224
  {
222
- struct bucket_st *bucket = DATA_PTR(self);
223
- struct context_st *ctx;
225
+ struct cb_bucket_st *bucket = DATA_PTR(self);
226
+ struct cb_context_st *ctx;
224
227
  VALUE args, rv, proc, exc;
225
228
  size_t ii;
226
229
  lcb_error_t err = LCB_SUCCESS;
227
- struct params_st params;
230
+ struct cb_params_st params;
228
231
 
229
232
  if (bucket->handle == NULL) {
230
- rb_raise(eConnectError, "closed connection");
233
+ rb_raise(cb_eConnectError, "closed connection");
231
234
  }
232
235
  rb_scan_args(argc, argv, "0*&", &args, &proc);
233
236
  if (!bucket->async && proc != Qnil) {
234
237
  rb_raise(rb_eArgError, "synchronous mode doesn't support callbacks");
235
238
  }
236
- memset(&params, 0, sizeof(struct params_st));
237
- params.type = cmd_get;
239
+ memset(&params, 0, sizeof(struct cb_params_st));
240
+ params.type = cb_cmd_get;
238
241
  params.bucket = bucket;
239
242
  params.cmd.get.keys_ary = cb_gc_protect(bucket, rb_ary_new());
240
243
  cb_params_build(&params, RARRAY_LEN(args), args);
241
- ctx = xcalloc(1, sizeof(struct context_st));
244
+ ctx = xcalloc(1, sizeof(struct cb_context_st));
242
245
  if (ctx == NULL) {
243
- rb_raise(eClientNoMemoryError, "failed to allocate memory for context");
246
+ rb_raise(cb_eClientNoMemoryError, "failed to allocate memory for context");
244
247
  }
245
248
  ctx->extended = params.cmd.get.extended;
246
249
  ctx->quiet = params.cmd.get.quiet;
@@ -267,7 +270,7 @@ cb_bucket_get(int argc, VALUE *argv, VALUE self)
267
270
  }
268
271
  bucket->nbytes += params.npayload;
269
272
  if (bucket->async) {
270
- maybe_do_loop(bucket);
273
+ cb_maybe_do_loop(bucket);
271
274
  return Qnil;
272
275
  } else {
273
276
  if (ctx->nqueries > 0) {
@@ -18,35 +18,39 @@
18
18
  #include "couchbase_ext.h"
19
19
 
20
20
  void
21
- http_complete_callback(lcb_http_request_t request, lcb_t handle, const void *cookie, lcb_error_t error, const lcb_http_resp_t *resp)
21
+ cb_http_complete_callback(lcb_http_request_t request, lcb_t handle, const void *cookie, lcb_error_t error, const lcb_http_resp_t *resp)
22
22
  {
23
- struct context_st *ctx = (struct context_st *)cookie;
24
- struct bucket_st *bucket = ctx->bucket;
23
+ struct cb_context_st *ctx = (struct cb_context_st *)cookie;
24
+ struct cb_bucket_st *bucket = ctx->bucket;
25
25
  VALUE *rv = ctx->rv, key, val, res;
26
26
  lcb_http_status_t status;
27
27
 
28
28
  ctx->request->completed = 1;
29
29
  key = STR_NEW((const char*)resp->v.v0.path, resp->v.v0.npath);
30
+ val = resp->v.v0.nbytes ? STR_NEW((const char*)resp->v.v0.bytes, resp->v.v0.nbytes) : Qnil;
30
31
  ctx->exception = cb_check_error_with_status(error,
31
32
  "failed to execute HTTP request", key, resp->v.v0.status);
32
33
  if (ctx->exception != Qnil) {
34
+ if (val != Qnil) {
35
+ rb_ivar_set(ctx->exception, cb_id_iv_body, val);
36
+ }
37
+ rb_funcall(ctx->exception, cb_id_parse_body_bang, 0);
33
38
  cb_gc_protect(bucket, ctx->exception);
34
39
  }
35
- val = resp->v.v0.nbytes ? STR_NEW((const char*)resp->v.v0.bytes, resp->v.v0.nbytes) : Qnil;
36
40
  status = resp->v.v0.status;
37
41
  if (resp->v.v0.headers) {
38
42
  cb_build_headers(ctx, resp->v.v0.headers);
39
43
  cb_gc_unprotect(bucket, ctx->headers_val);
40
44
  }
41
45
  if (ctx->extended) {
42
- res = rb_class_new_instance(0, NULL, cResult);
43
- rb_ivar_set(res, id_iv_error, ctx->exception);
44
- rb_ivar_set(res, id_iv_status, status ? INT2FIX(status) : Qnil);
45
- rb_ivar_set(res, id_iv_operation, sym_http_request);
46
- rb_ivar_set(res, id_iv_key, key);
47
- rb_ivar_set(res, id_iv_value, val);
48
- rb_ivar_set(res, id_iv_completed, Qtrue);
49
- rb_ivar_set(res, id_iv_headers, ctx->headers_val);
46
+ res = rb_class_new_instance(0, NULL, cb_cResult);
47
+ rb_ivar_set(res, cb_id_iv_error, ctx->exception);
48
+ rb_ivar_set(res, cb_id_iv_status, status ? INT2FIX(status) : Qnil);
49
+ rb_ivar_set(res, cb_id_iv_operation, cb_sym_http_request);
50
+ rb_ivar_set(res, cb_id_iv_key, key);
51
+ rb_ivar_set(res, cb_id_iv_value, val);
52
+ rb_ivar_set(res, cb_id_iv_completed, Qtrue);
53
+ rb_ivar_set(res, cb_id_iv_headers, ctx->headers_val);
50
54
  } else {
51
55
  res = val;
52
56
  }
@@ -61,35 +65,45 @@ http_complete_callback(lcb_http_request_t request, lcb_t handle, const void *coo
61
65
  }
62
66
 
63
67
  void
64
- http_data_callback(lcb_http_request_t request, lcb_t handle, const void *cookie, lcb_error_t error, const lcb_http_resp_t *resp)
68
+ cb_http_data_callback(lcb_http_request_t request, lcb_t handle, const void *cookie, lcb_error_t error, const lcb_http_resp_t *resp)
65
69
  {
66
- struct context_st *ctx = (struct context_st *)cookie;
67
- struct bucket_st *bucket = ctx->bucket;
70
+ struct cb_context_st *ctx = (struct cb_context_st *)cookie;
71
+ struct cb_bucket_st *bucket = ctx->bucket;
68
72
  VALUE key, val, res;
69
73
  lcb_http_status_t status;
70
74
 
71
75
  key = STR_NEW((const char*)resp->v.v0.path, resp->v.v0.npath);
72
- ctx->exception = cb_check_error_with_status(error,
73
- "failed to execute HTTP request", key, resp->v.v0.status);
74
76
  val = resp->v.v0.nbytes ? STR_NEW((const char*)resp->v.v0.bytes, resp->v.v0.nbytes) : Qnil;
75
77
  status = resp->v.v0.status;
76
- if (ctx->exception != Qnil) {
77
- cb_gc_protect(bucket, ctx->exception);
78
- lcb_cancel_http_request(bucket->handle, request);
78
+ if (NIL_P(ctx->exception)) {
79
+ ctx->exception = cb_check_error_with_status(error,
80
+ "failed to execute HTTP request", key, resp->v.v0.status);
81
+ if (ctx->exception != Qnil) {
82
+ VALUE body_str = rb_ivar_get(ctx->exception, cb_id_iv_body);
83
+ if (NIL_P(body_str)) {
84
+ cb_gc_protect(bucket, ctx->exception);
85
+ rb_ivar_set(ctx->exception, cb_id_iv_body, val);
86
+ } else {
87
+ rb_str_concat(body_str, val);
88
+ }
89
+ if (ctx->http_cancel_on_error) {
90
+ lcb_cancel_http_request(bucket->handle, request);
91
+ }
92
+ }
79
93
  }
80
94
  if (resp->v.v0.headers) {
81
95
  cb_build_headers(ctx, resp->v.v0.headers);
82
96
  }
83
97
  if (ctx->proc != Qnil) {
84
98
  if (ctx->extended) {
85
- res = rb_class_new_instance(0, NULL, cResult);
86
- rb_ivar_set(res, id_iv_error, ctx->exception);
87
- rb_ivar_set(res, id_iv_status, status ? INT2FIX(status) : Qnil);
88
- rb_ivar_set(res, id_iv_operation, sym_http_request);
89
- rb_ivar_set(res, id_iv_key, key);
90
- rb_ivar_set(res, id_iv_value, val);
91
- rb_ivar_set(res, id_iv_completed, Qfalse);
92
- rb_ivar_set(res, id_iv_headers, ctx->headers_val);
99
+ res = rb_class_new_instance(0, NULL, cb_cResult);
100
+ rb_ivar_set(res, cb_id_iv_error, ctx->exception);
101
+ rb_ivar_set(res, cb_id_iv_status, status ? INT2FIX(status) : Qnil);
102
+ rb_ivar_set(res, cb_id_iv_operation, cb_sym_http_request);
103
+ rb_ivar_set(res, cb_id_iv_key, key);
104
+ rb_ivar_set(res, cb_id_iv_value, val);
105
+ rb_ivar_set(res, cb_id_iv_completed, Qfalse);
106
+ rb_ivar_set(res, cb_id_iv_headers, ctx->headers_val);
93
107
  } else {
94
108
  res = val;
95
109
  }
@@ -101,7 +115,7 @@ http_data_callback(lcb_http_request_t request, lcb_t handle, const void *cookie,
101
115
  void
102
116
  cb_http_request_free(void *ptr)
103
117
  {
104
- struct http_request_st *request = ptr;
118
+ struct cb_http_request_st *request = ptr;
105
119
  if (request) {
106
120
  request->running = 0;
107
121
  if (TYPE(request->bucket_obj) == T_DATA
@@ -119,7 +133,7 @@ cb_http_request_free(void *ptr)
119
133
  void
120
134
  cb_http_request_mark(void *ptr)
121
135
  {
122
- struct http_request_st *request = ptr;
136
+ struct cb_http_request_st *request = ptr;
123
137
  if (request) {
124
138
  rb_gc_mark(request->on_body_callback);
125
139
  }
@@ -129,10 +143,10 @@ cb_http_request_mark(void *ptr)
129
143
  cb_http_request_alloc(VALUE klass)
130
144
  {
131
145
  VALUE obj;
132
- struct http_request_st *request;
146
+ struct cb_http_request_st *request;
133
147
 
134
148
  /* allocate new bucket struct and set it to zero */
135
- obj = Data_Make_Struct(klass, struct http_request_st, cb_http_request_mark,
149
+ obj = Data_Make_Struct(klass, struct cb_http_request_st, cb_http_request_mark,
136
150
  cb_http_request_free, request);
137
151
  return obj;
138
152
  }
@@ -149,7 +163,7 @@ cb_http_request_alloc(VALUE klass)
149
163
  cb_http_request_inspect(VALUE self)
150
164
  {
151
165
  VALUE str;
152
- struct http_request_st *req = DATA_PTR(self);
166
+ struct cb_http_request_st *req = DATA_PTR(self);
153
167
  char buf[200];
154
168
 
155
169
  str = rb_str_buf_new2("#<");
@@ -173,14 +187,14 @@ cb_http_request_inspect(VALUE self)
173
187
  VALUE
174
188
  cb_http_request_init(int argc, VALUE *argv, VALUE self)
175
189
  {
176
- struct http_request_st *request = DATA_PTR(self);
190
+ struct cb_http_request_st *request = DATA_PTR(self);
177
191
  VALUE bucket, path, opts, on_body, pp, arg;
178
192
  rb_scan_args(argc, argv, "22", &bucket, &pp, &opts, &on_body);
179
193
 
180
194
  if (NIL_P(on_body) && rb_block_given_p()) {
181
195
  on_body = rb_block_proc();
182
196
  }
183
- if (CLASS_OF(bucket) != cBucket) {
197
+ if (CLASS_OF(bucket) != cb_cBucket) {
184
198
  rb_raise(rb_eTypeError, "wrong argument type (expected Couchbase::Bucket)");
185
199
  }
186
200
  memset(&request->cmd, 0, sizeof(lcb_http_cmd_t));
@@ -197,36 +211,36 @@ cb_http_request_init(int argc, VALUE *argv, VALUE self)
197
211
 
198
212
  if (opts != Qnil) {
199
213
  Check_Type(opts, T_HASH);
200
- request->extended = RTEST(rb_hash_aref(opts, sym_extended));
201
- request->cmd.v.v0.chunked = RTEST(rb_hash_aref(opts, sym_chunked));
202
- if ((arg = rb_hash_aref(opts, sym_type)) != Qnil) {
203
- if (arg == sym_view) {
214
+ request->extended = RTEST(rb_hash_aref(opts, cb_sym_extended));
215
+ request->cmd.v.v0.chunked = RTEST(rb_hash_aref(opts, cb_sym_chunked));
216
+ if ((arg = rb_hash_aref(opts, cb_sym_type)) != Qnil) {
217
+ if (arg == cb_sym_view) {
204
218
  request->type = LCB_HTTP_TYPE_VIEW;
205
- } else if (arg == sym_management) {
219
+ } else if (arg == cb_sym_management) {
206
220
  request->type = LCB_HTTP_TYPE_MANAGEMENT;
207
221
  } else {
208
222
  rb_raise(rb_eArgError, "unsupported request type");
209
223
  }
210
224
  }
211
- if ((arg = rb_hash_aref(opts, sym_method)) != Qnil) {
212
- if (arg == sym_get) {
225
+ if ((arg = rb_hash_aref(opts, cb_sym_method)) != Qnil) {
226
+ if (arg == cb_sym_get) {
213
227
  request->cmd.v.v0.method = LCB_HTTP_METHOD_GET;
214
- } else if (arg == sym_post) {
228
+ } else if (arg == cb_sym_post) {
215
229
  request->cmd.v.v0.method = LCB_HTTP_METHOD_POST;
216
- } else if (arg == sym_put) {
230
+ } else if (arg == cb_sym_put) {
217
231
  request->cmd.v.v0.method = LCB_HTTP_METHOD_PUT;
218
- } else if (arg == sym_delete) {
232
+ } else if (arg == cb_sym_delete) {
219
233
  request->cmd.v.v0.method = LCB_HTTP_METHOD_DELETE;
220
234
  } else {
221
235
  rb_raise(rb_eArgError, "unsupported HTTP method");
222
236
  }
223
237
  }
224
- if ((arg = rb_hash_aref(opts, sym_body)) != Qnil) {
238
+ if ((arg = rb_hash_aref(opts, cb_sym_body)) != Qnil) {
225
239
  Check_Type(arg, T_STRING);
226
240
  request->cmd.v.v0.body = strdup(RSTRING_PTR(arg));
227
241
  request->cmd.v.v0.nbody = RSTRING_LEN(arg);
228
242
  }
229
- if ((arg = rb_hash_aref(opts, sym_content_type)) != Qnil) {
243
+ if ((arg = rb_hash_aref(opts, cb_sym_content_type)) != Qnil) {
230
244
  Check_Type(arg, T_STRING);
231
245
  xfree((char *)request->cmd.v.v0.content_type);
232
246
  request->cmd.v.v0.content_type = strdup(RSTRING_PTR(arg));
@@ -244,7 +258,7 @@ cb_http_request_init(int argc, VALUE *argv, VALUE self)
244
258
  VALUE
245
259
  cb_http_request_on_body(VALUE self)
246
260
  {
247
- struct http_request_st *request = DATA_PTR(self);
261
+ struct cb_http_request_st *request = DATA_PTR(self);
248
262
  VALUE old = request->on_body_callback;
249
263
  if (rb_block_given_p()) {
250
264
  request->on_body_callback = rb_block_proc();
@@ -260,15 +274,15 @@ cb_http_request_on_body(VALUE self)
260
274
  VALUE
261
275
  cb_http_request_perform(VALUE self)
262
276
  {
263
- struct http_request_st *req = DATA_PTR(self);
264
- struct context_st *ctx;
277
+ struct cb_http_request_st *req = DATA_PTR(self);
278
+ struct cb_context_st *ctx;
265
279
  VALUE rv, exc;
266
280
  lcb_error_t err;
267
- struct bucket_st *bucket;
281
+ struct cb_bucket_st *bucket;
268
282
 
269
- ctx = xcalloc(1, sizeof(struct context_st));
283
+ ctx = xcalloc(1, sizeof(struct cb_context_st));
270
284
  if (ctx == NULL) {
271
- rb_raise(eClientNoMemoryError, "failed to allocate memory");
285
+ rb_raise(cb_eClientNoMemoryError, "failed to allocate memory");
272
286
  }
273
287
  rv = Qnil;
274
288
  ctx->rv = &rv;
@@ -310,7 +324,7 @@ cb_http_request_perform(VALUE self)
310
324
  VALUE
311
325
  cb_http_request_pause(VALUE self)
312
326
  {
313
- struct http_request_st *req = DATA_PTR(self);
327
+ struct cb_http_request_st *req = DATA_PTR(self);
314
328
  lcb_breakout(req->bucket->handle);
315
329
  return Qnil;
316
330
  }
@@ -319,7 +333,7 @@ cb_http_request_pause(VALUE self)
319
333
  cb_http_request_continue(VALUE self)
320
334
  {
321
335
  VALUE exc, *rv;
322
- struct http_request_st *req = DATA_PTR(self);
336
+ struct cb_http_request_st *req = DATA_PTR(self);
323
337
 
324
338
  if (req->running) {
325
339
  lcb_wait(req->bucket->handle);
@@ -348,7 +362,7 @@ cb_http_request_continue(VALUE self)
348
362
  VALUE
349
363
  cb_http_request_path_get(VALUE self)
350
364
  {
351
- struct http_request_st *req = DATA_PTR(self);
365
+ struct cb_http_request_st *req = DATA_PTR(self);
352
366
  return STR_NEW_CSTR(req->cmd.v.v0.path);
353
367
  }
354
368
 
@@ -362,7 +376,7 @@ cb_http_request_path_get(VALUE self)
362
376
  VALUE
363
377
  cb_http_request_chunked_get(VALUE self)
364
378
  {
365
- struct http_request_st *req = DATA_PTR(self);
379
+ struct cb_http_request_st *req = DATA_PTR(self);
366
380
  return req->cmd.v.v0.chunked ? Qtrue : Qfalse;
367
381
  }
368
382
 
@@ -376,7 +390,7 @@ cb_http_request_chunked_get(VALUE self)
376
390
  VALUE
377
391
  cb_http_request_extended_get(VALUE self)
378
392
  {
379
- struct http_request_st *req = DATA_PTR(self);
393
+ struct cb_http_request_st *req = DATA_PTR(self);
380
394
  return req->extended ? Qtrue : Qfalse;
381
395
  }
382
396
 
@@ -402,7 +416,7 @@ cb_bucket_make_http_request(int argc, VALUE *argv, VALUE self)
402
416
  args[0] = self;
403
417
  rb_scan_args(argc, argv, "11&", &args[1], &args[2], &args[3]);
404
418
 
405
- return rb_class_new_instance(4, args, cCouchRequest);
419
+ return rb_class_new_instance(4, args, cb_cCouchRequest);
406
420
  }
407
421
 
408
422