module Roma::Client::Plugin::MapCount

MapCount plugin module for ROMA client

Public Instance Methods

mapcount_countup(key, sub_keys, expt = 0) click to toggle source

countup (for JSON value)

key

key to count up data

sub_keys

sub keys to count up. You can set String 'sk', or Array ['sk1','sk2','sk3'], or Hash {'sk1' => 1, 'sk2' => 3} .

expt

expire seconds. This param format is same as RomaClient.set .

return

result values. It is Marshal format string.

   # File lib/roma/client/plugin/mapcount.rb
51 def mapcount_countup(key, sub_keys, expt = 0)
52   sub_keys_str = sub_keys_to_req_str(sub_keys)
53   ret = sender(:value_list_receiver, key, nil,
54                "mapcount_countup %s %d %d\r\n%s\r\n",
55                expt.to_i, sub_keys_str.length, sub_keys_str)
56   convert_ret_to_result(ret, :json)
57 end
mapcount_countup_ms(key, sub_keys, expt = 0) click to toggle source

countup (for Marshal value)

key

key to count up data

sub_keys

sub keys to count up. You can set String 'sk', or Array ['sk1','sk2','sk3'], or Hash {'sk1' => 1, 'sk2' => 3} .

expt

expire seconds. This param format is same as RomaClient.set .

return

result values. It is Marshal format string.

   # File lib/roma/client/plugin/mapcount.rb
68 def mapcount_countup_ms(key, sub_keys, expt = 0)
69   sub_keys_str = sub_keys_to_req_str(sub_keys)
70   ret = sender(:value_list_receiver, key, nil,
71                "mapcount_countup_ms %s %d %d\r\n%s\r\n",
72                expt.to_i, sub_keys_str.length, sub_keys_str)
73   convert_ret_to_result(ret, :marshal)
74 end
mapcount_get(key, sub_keys = nil) click to toggle source

get mapcount (for JSON value)

key

key to get mapcount data

sub_keys

array to get mapcount data subkeys. subkey can't include “,” and “:”

return

result values hash. If data is not set, return empty hash.

   # File lib/roma/client/plugin/mapcount.rb
17 def mapcount_get(key, sub_keys = nil)
18   sub_keys_str = sub_keys_to_req_str(sub_keys)
19 
20   ret = sender(:value_list_receiver, key, nil,
21                "mapcount_get %s 0 %d\r\n%s\r\n",
22                sub_keys_str.length, sub_keys_str)
23   convert_ret_to_result(ret, :json)
24 end
mapcount_get_ms(key, sub_keys = nil) click to toggle source

get mapcount (for Marshal value)

key

key to get mapcount data

sub_keys

array to get mapcount data subkeys. subkey can't include “,” and “:”

return

result values hash. If data is not set, return empty hash.

   # File lib/roma/client/plugin/mapcount.rb
33 def mapcount_get_ms(key, sub_keys = nil)
34   sub_keys_str = sub_keys_to_req_str(sub_keys)
35 
36   ret = sender(:value_list_receiver, key, nil,
37                "mapcount_get_ms %s 0 %d\r\n%s\r\n",
38                sub_keys_str.length, sub_keys_str)
39   convert_ret_to_result(ret, :marshal)
40 end
mapcount_update(key, sub_keys = nil, expt = 0) click to toggle source

update key expire (for JSON value)

   # File lib/roma/client/plugin/mapcount.rb
77 def mapcount_update(key, sub_keys = nil, expt = 0)
78   sub_keys_str = sub_keys_to_req_str(sub_keys)
79   ret = sender(:value_list_receiver, key, nil,
80                "mapcount_update %s %d %d\r\n%s\r\n",
81                expt.to_i, sub_keys_str.length, sub_keys_str)
82   convert_ret_to_result(ret, :json)
83 end
mapcount_update_ms(key, sub_keys = nil, expt = 0) click to toggle source

update key expire (for Marshal value)

   # File lib/roma/client/plugin/mapcount.rb
86 def mapcount_update_ms(key, sub_keys = nil, expt = 0)
87   sub_keys_str = sub_keys_to_req_str(sub_keys)
88   ret = sender(:value_list_receiver, key, nil,
89                "mapcount_update_ms %s %d %d\r\n%s\r\n",
90                expt.to_i, sub_keys_str.length, sub_keys_str)
91   convert_ret_to_result(ret, :marshal)
92 end

Private Instance Methods

convert_ret_to_result(ret, stype) click to toggle source
    # File lib/roma/client/plugin/mapcount.rb
 95 def convert_ret_to_result(ret, stype)
 96   if ret.empty?
 97     return nil
 98   end
 99 
100   if stype == :marshal
101     res = Marshal.load(ret[0])
102   else
103     res = JSON.parse(ret[0])
104   end
105 
106   if res["last_updated_date"]
107     res["last_updated_date"] = Time.parse(res["last_updated_date"])
108   end
109   res
110 end
sub_keys_to_req_str(sub_keys) click to toggle source
    # File lib/roma/client/plugin/mapcount.rb
112 def sub_keys_to_req_str(sub_keys)
113   sub_keys_str = ''
114   if sub_keys.is_a?(String)
115     sub_keys_str = sub_keys
116   elsif sub_keys.is_a?(Array)
117     sub_keys_str = sub_keys.join(',')
118   elsif sub_keys.is_a?(Hash)
119     sub_keys_str = sub_keys.map{|k,v| "#{k}:#{v}"}.join(",")
120   end
121   sub_keys_str
122 end