Module: Distribunaut::Utils::Rinda
- Defined in:
- lib/distribunaut/utils/rinda.rb
Class Method Summary collapse
- .read(values = {}) ⇒ Object
- .register(values = {}) ⇒ Object
- .register_or_renew(values = {}) ⇒ Object
- .ring_server ⇒ Object
Class Method Details
.read(values = {}) ⇒ Object
30 31 32 33 34 35 |
# File 'lib/distribunaut/utils/rinda.rb', line 30 def self.read(values = {}) tuple = build_tuple(values) results = ring_server.read(tuple.to_array, tuple.timeout) tuple = Distribunaut::Tuple.from_array(results) tuple.object end |
.register(values = {}) ⇒ Object
15 16 17 18 |
# File 'lib/distribunaut/utils/rinda.rb', line 15 def self.register(values = {}) tuple = build_tuple(values) ring_server.write(tuple.to_array, ::Rinda::SimpleRenewer.new) end |
.register_or_renew(values = {}) ⇒ Object
5 6 7 8 9 10 11 12 13 |
# File 'lib/distribunaut/utils/rinda.rb', line 5 def self.register_or_renew(values = {}) tuple = build_tuple(values) begin ring_server.take(tuple.to_search_array, tuple.timeout) rescue ::Rinda::RequestExpiredError => e # it's ok that it expired. It could be that it was never registered. end register(values) end |