class Egi::Fedcloud::Vmhound::Extractor
Public Class Methods
env_init(options = {})
click to toggle source
@param options [Hash] hash with connector options @return [String] name of the initialized connector
# File lib/egi/fedcloud/vmhound/extractor.rb, line 10 def env_init(options = {}) fail 'Connector type not specified!' unless options[:cmf] return if defined?(@@connector) connector_name = "#{options[:cmf].camelize}Connector" Egi::Fedcloud::Vmhound::Log.debug "[#{self}] Getting #{connector_name} for #{options[:cmf]}" @@connector = Egi::Fedcloud::Vmhound::Connectors.const_get(connector_name).new(options) connector_name end
find_by_appuri(uri, options = {})
click to toggle source
# File lib/egi/fedcloud/vmhound/extractor.rb, line 29 def find_by_appuri(uri, options = {}) env_init options Egi::Fedcloud::Vmhound::Log.debug "[#{self}] Searching for instances by MPURI: #{uri.inspect}" @@connector.instances.select { |instance| instance[:appliance] && instance[:appliance][:identifiers].include?(uri) } end
find_by_ip(ip, options = {})
click to toggle source
# File lib/egi/fedcloud/vmhound/extractor.rb, line 22 def find_by_ip(ip, options = {}) env_init options Egi::Fedcloud::Vmhound::Log.debug "[#{self}] Searching for instances by IP: #{ip.inspect}" @@connector.instances.select { |instance| instance[:ips] && instance[:ips].include?(ip) } end
find_by_user(id, options = {})
click to toggle source
# File lib/egi/fedcloud/vmhound/extractor.rb, line 36 def find_by_user(id, options = {}) env_init options Egi::Fedcloud::Vmhound::Log.debug "[#{self}] Searching for instances by user ID: #{id.inspect}" @@connector.instances.select { |instance| instance[:owner] && instance[:owner][:identities].include?(id) } end