redi2casa 0.0.5 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 6d5b3420d36a8292cb6d06c1a4e0233731ad4446
4
- data.tar.gz: 415d1260880d010fbd378cdc5d33d8c024b9719a
3
+ metadata.gz: 94582be2ed9b191df64599de325516127180bd1c
4
+ data.tar.gz: eecdde4e35aa8b31f748250ff7d11d03f22c5803
5
5
  SHA512:
6
- metadata.gz: b1c2e4898460665dda13bc1c6ceeb97e21089a9d19445eb3bd8244c7e9d8ef874db846cba4323795c325588d69bb4dd66119f3090872e1adaa96f73e575a6067
7
- data.tar.gz: 8163288c905fa1845881c8b359c576d0a5a7c6fdf0164910faf6142b230ff4221232607899277c52b3588548d8346cf7ac7ee386aa15d13f5e888c84b000320c
6
+ metadata.gz: 830677f8f3c2ad6f7a1bb8ef7453008f22736ad5609ff3d65c93469ed9878c1b6a0429f9fbf9944916395ca9b489fbf656c94e04c9a1fbf309ad09ed37525749
7
+ data.tar.gz: 94e4ed8e98d767ce3b907dd1dc3a2b23ef00e5e295568e1359dedefec44353bdf4720b97a2ccf3b6105a3bfc176054c3d8feb1ed53db5422d841add74537d0c7
data/Changes.md CHANGED
@@ -1,3 +1,19 @@
1
+ 0.0.6
2
+ ------
3
+
4
+ - Support bitwise operations
5
+ [ get_bit, set_bit ] (alias getbit, setbit)
6
+ - counter operations incrby
7
+
8
+ 0.0.5
9
+ ------
10
+
11
+ - Hash rewrite and adding support for more operations
12
+ [ hlen, hkeys, hdel ]
13
+ - Support for more set operations
14
+ [ scard, sismember]
15
+
16
+
1
17
  0.0.4
2
18
  -------
3
19
 
data/Gemfile.lock CHANGED
@@ -2,13 +2,11 @@ PATH
2
2
  remote: .
3
3
  specs:
4
4
  redi2casa (0.0.4)
5
- bitwise
6
5
  cql-rb
7
6
 
8
7
  GEM
9
8
  remote: https://rubygems.org/
10
9
  specs:
11
- bitwise (0.6.0)
12
10
  cql-rb (1.1.1)
13
11
  rake (10.1.0)
14
12
 
data/lib/redi2casa/get.rb CHANGED
@@ -1,6 +1,12 @@
1
1
  class Redi2casa
2
- def get key
3
- resp = @db_conn.execute("select * from keyvalue where key = '#{key}'")
4
- parse_response(resp, "value")
2
+ def get key, type = 'keyvalue'
3
+ if type == 'keyvalue'
4
+ resp = @db_conn.execute("select * from keyvalue where key = '#{key}'")
5
+ parse_response(resp, "value")
6
+ elsif type == 'counter'
7
+ # @ is a special column in counter used by incrby
8
+ resp = @db_conn.execute("select value from counters where KEY='#{key}' and column1 = '@'")
9
+ parse_response(resp, "value").to_i
10
+ end
5
11
  end
6
12
  end
@@ -0,0 +1,6 @@
1
+ class Redi2casa
2
+ def get_bit key, offset
3
+ get("#{key}:#{offset}").to_i
4
+ end
5
+ alias :getbit :get_bit
6
+ end
@@ -0,0 +1,6 @@
1
+ class Redi2casa
2
+ def incrby key, value = 1
3
+ hincrby key, '@', value
4
+ end
5
+ end
6
+
@@ -0,0 +1,10 @@
1
+ class Redi2casa
2
+ # FIXME:This could potentially lead to read write problem.
3
+ def set_bit key, offset, bit
4
+ if bit != 0 || bit != 1
5
+ raise RuntimeError.new("Invalid bit")
6
+ end
7
+ set("#{key}:#{offset}", bit)
8
+ end
9
+ alias :setbit :set_bit
10
+ end
@@ -1,3 +1,3 @@
1
1
  class Redi2casa
2
- VERSION = "0.0.5"
2
+ VERSION = "0.0.6"
3
3
  end
data/redi2casa.gemspec CHANGED
@@ -19,7 +19,6 @@ Gem::Specification.new do |spec|
19
19
  spec.require_paths = ["lib"]
20
20
 
21
21
  spec.add_runtime_dependency "cql-rb"
22
- spec.add_runtime_dependency "bitwise"
23
22
 
24
23
  spec.add_development_dependency "cql-rb"
25
24
  spec.add_development_dependency "bundler"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redi2casa
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - vireshas
@@ -25,20 +25,6 @@ dependencies:
25
25
  - - '>='
26
26
  - !ruby/object:Gem::Version
27
27
  version: '0'
28
- - !ruby/object:Gem::Dependency
29
- name: bitwise
30
- requirement: !ruby/object:Gem::Requirement
31
- requirements:
32
- - - '>='
33
- - !ruby/object:Gem::Version
34
- version: '0'
35
- type: :runtime
36
- prerelease: false
37
- version_requirements: !ruby/object:Gem::Requirement
38
- requirements:
39
- - - '>='
40
- - !ruby/object:Gem::Version
41
- version: '0'
42
28
  - !ruby/object:Gem::Dependency
43
29
  name: cql-rb
44
30
  requirement: !ruby/object:Gem::Requirement
@@ -101,6 +87,7 @@ files:
101
87
  - lib/redi2casa.rb
102
88
  - lib/redi2casa/del.rb
103
89
  - lib/redi2casa/get.rb
90
+ - lib/redi2casa/get_bit.rb
104
91
  - lib/redi2casa/hdel.rb
105
92
  - lib/redi2casa/hget.rb
106
93
  - lib/redi2casa/hgetall.rb
@@ -108,6 +95,7 @@ files:
108
95
  - lib/redi2casa/hkeys.rb
109
96
  - lib/redi2casa/hlen.rb
110
97
  - lib/redi2casa/hset.rb
98
+ - lib/redi2casa/incrby.rb
111
99
  - lib/redi2casa/lpop.rb
112
100
  - lib/redi2casa/lpush.rb
113
101
  - lib/redi2casa/lrange.rb
@@ -118,6 +106,7 @@ files:
118
106
  - lib/redi2casa/sadd_with_expire.rb
119
107
  - lib/redi2casa/scard.rb
120
108
  - lib/redi2casa/set.rb
109
+ - lib/redi2casa/set_bit.rb
121
110
  - lib/redi2casa/setex.rb
122
111
  - lib/redi2casa/sismember.rb
123
112
  - lib/redi2casa/smembers.rb