Class: Aerospike::LargeMap
- Defined in:
- lib/aerospike/ldt/large_map.rb
Instance Method Summary collapse
-
#filter(filter_name, *filter_args) ⇒ Object
Select items from map.
-
#get(name) ⇒ Object
Get value from map given name key.
-
#initialize(client, policy, key, bin_name, user_module = nil) ⇒ LargeMap
constructor
A new instance of LargeMap.
-
#put(name, value) ⇒ Object
Add entry to map.
-
#put_map(the_map) ⇒ Object
Add map values to map.
-
#remove(name) ⇒ Object
Get value from map given name key.
Methods inherited from Large
#capacity, #capacity=, #config, #destroy, #scan, #size
Constructor Details
#initialize(client, policy, key, bin_name, user_module = nil) ⇒ LargeMap
Returns a new instance of LargeMap.
25 26 27 28 29 30 31 |
# File 'lib/aerospike/ldt/large_map.rb', line 25 def initialize(client, policy, key, bin_name, user_module=nil) @PACKAGE_NAME = 'lmap' super(client, policy, key, bin_name, user_module) self end |
Instance Method Details
#filter(filter_name, *filter_args) ⇒ Object
Select items from map.
filter_name Lua function name which applies filter to returned list filter_args arguments to Lua function name return list of items selected
77 78 79 |
# File 'lib/aerospike/ldt/large_map.rb', line 77 def filter(filter_name, *filter_args) @client.execute_udf(@key, @PACKAGE_NAME, 'filter', [@bin_name, @user_module, filter_name, filter_args], @policy) end |
#get(name) ⇒ Object
Get value from map given name key.
name key. return map of items selected
52 53 54 55 56 57 58 59 60 61 62 |
# File 'lib/aerospike/ldt/large_map.rb', line 52 def get(name) begin @client.execute_udf(@key, @PACKAGE_NAME, 'get', [@bin_name, name, @user_module], @policy) rescue Aerospike::Exceptions::Aerospike => e unless e.result_code == Aerospike::ResultCode::UDF_BAD_RESPONSE && e..index("Item Not Found") Aerospike.logger.error(e) raise e end nil end end |
#put(name, value) ⇒ Object
Add entry to map. If the map does not exist, create it using specified user_module configuration.
name entry key value entry value
37 38 39 |
# File 'lib/aerospike/ldt/large_map.rb', line 37 def put(name, value) @client.execute_udf(@key, @PACKAGE_NAME, 'put', [@bin_name, name, value, @user_module], @policy) end |
#put_map(the_map) ⇒ Object
Add map values to map. If the map does not exist, create it using specified user_module configuration.
map map values to push
44 45 46 |
# File 'lib/aerospike/ldt/large_map.rb', line 44 def put_map(the_map) @client.execute_udf(@key, @PACKAGE_NAME, 'put_all', [@bin_name, the_map, @user_module], @policy) end |
#remove(name) ⇒ Object
Get value from map given name key.
name key. return map of items selected
68 69 70 |
# File 'lib/aerospike/ldt/large_map.rb', line 68 def remove(name) @client.execute_udf(@key, @PACKAGE_NAME, 'remove', [@bin_name, name, @user_module], @policy) end |