class DCell::Registry::S3Adapter::NodeRegistry
Public Class Methods
new(bucket)
click to toggle source
# File lib/dcell/registries/s3_adapter.rb, line 41 def initialize(bucket) @bucket = bucket end
Public Instance Methods
clear()
click to toggle source
# File lib/dcell/registries/s3_adapter.rb, line 63 def clear @bucket.objects.with_prefix('nodes/').map(&:delete) end
get(node_id)
click to toggle source
# File lib/dcell/registries/s3_adapter.rb, line 45 def get(node_id) @bucket.objects["nodes/#{node_id}"].read rescue AWS::S3::Errors::NoSuchKey Logger.error "No such node #{node_id}" nil end
nodes()
click to toggle source
# File lib/dcell/registries/s3_adapter.rb, line 56 def nodes @bucket.objects.with_prefix('nodes/').inject([]) do |arr, elt| elt.key =~ /^nodes\/(.+)$/ arr << $1 end end
set(node_id, addr)
click to toggle source
# File lib/dcell/registries/s3_adapter.rb, line 52 def set(node_id, addr) @bucket.objects["nodes/#{node_id}"].write(addr) end