class VagrantPlugins::DigitalOcean::Helpers::Result
Public Class Methods
new(body)
click to toggle source
# File lib/vagrant-digitalocean/helpers/result.rb, line 5 def initialize(body) @result = body end
Public Instance Methods
[](key)
click to toggle source
# File lib/vagrant-digitalocean/helpers/result.rb, line 9 def [](key) @result[key.to_s] end
error(sub_obj, key, value)
click to toggle source
# File lib/vagrant-digitalocean/helpers/result.rb, line 29 def error(sub_obj, key, value) raise(Errors::ResultMatchError, { :key => key, :value => value, :collection_name => sub_obj.to_s, :sub_obj => @result[sub_obj.to_s] }) end
find(sub_obj, search)
click to toggle source
# File lib/vagrant-digitalocean/helpers/result.rb, line 17 def find(sub_obj, search) key = search.keys.first #:slug value = search[key].to_s #sfo1 key = key.to_s #slug result = @result[sub_obj.to_s].inject(nil) do |result, obj| obj[key] == value ? obj : result end result || error(sub_obj, key, value) end
find_id(sub_obj, search)
click to toggle source
# File lib/vagrant-digitalocean/helpers/result.rb, line 13 def find_id(sub_obj, search) #:ssh_keys, {:name => 'ijin (vagrant)'} find(sub_obj, search)["id"] end