xbad 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/ext/xbad/xbad.c +9 -0
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3b040f5e82df3f21ac0c18bc8cfb6fbd8d21ce3e
|
4
|
+
data.tar.gz: 496906d81a204a7a1493a8e65bf4eb1cd9c7a4de
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 155170d26a537e7431b9e023e3f239c7fc681045282f35a291883f9470f039f5ff915c3b59c16a691700df4ebf58b3182591328d2554edeeca4ab0b987f35aff
|
7
|
+
data.tar.gz: e80f0b09863a03719ff46086aa7349045a4b88f239453c69eecef64e3af3f3fafae5e341ec6b6b4f3a8680363b0fdf49427ea5d906dd0845a0bd0e85ec875dcf
|
data/ext/xbad/xbad.c
CHANGED
@@ -19,7 +19,14 @@ inline struct shared_pool *shared_pool(VALUE obj) {
|
|
19
19
|
return sp;
|
20
20
|
}
|
21
21
|
|
22
|
+
static inline void die_unless_string(VALUE x) {
|
23
|
+
if (TYPE(x) != T_STRING)
|
24
|
+
rb_raise(rb_eTypeError, "invalid type for input %s",rb_obj_classname(x));
|
25
|
+
}
|
26
|
+
|
22
27
|
static VALUE XBAD_store(VALUE self, VALUE key, VALUE value, VALUE _expire_after) {
|
28
|
+
die_unless_string(key);
|
29
|
+
die_unless_string(value);
|
23
30
|
struct shared_pool *sp = shared_pool(self);
|
24
31
|
int expire_after = NUM2INT(_expire_after);
|
25
32
|
if (t_add(sp,RSTRING_PTR(key),RSTRING_LEN(key),RSTRING_PTR(value),RSTRING_LEN(value),expire_after) != 0)
|
@@ -28,6 +35,8 @@ static VALUE XBAD_store(VALUE self, VALUE key, VALUE value, VALUE _expire_after)
|
|
28
35
|
}
|
29
36
|
|
30
37
|
static VALUE XBAD_store_and_broadcast(VALUE self, VALUE key, VALUE value, VALUE _expire_after,VALUE _port) {
|
38
|
+
die_unless_string(key);
|
39
|
+
die_unless_string(value);
|
31
40
|
struct shared_pool *sp = shared_pool(self);
|
32
41
|
int expire_after = NUM2INT(_expire_after);
|
33
42
|
unsigned short port = NUM2INT(_port);
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: xbad
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Borislav Nikolov
|
@@ -24,7 +24,8 @@ dependencies:
|
|
24
24
|
- - '>='
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '0'
|
27
|
-
description: xbad - shared memory key/value cache
|
27
|
+
description: xbad - shared memory key/value cache using shared memory and udp broadcasts
|
28
|
+
for distribution
|
28
29
|
email: jack@sofialondonmoskva.com
|
29
30
|
executables: []
|
30
31
|
extensions:
|
@@ -56,5 +57,5 @@ rubyforge_project:
|
|
56
57
|
rubygems_version: 2.0.3
|
57
58
|
signing_key:
|
58
59
|
specification_version: 4
|
59
|
-
summary: xbad - shared memory key/value
|
60
|
+
summary: xbad - shared memory key/value cache
|
60
61
|
test_files: []
|