Class: Fog::XenServer::Compute::Models::Collection

Inherits:
Collection
  • Object
show all
Defined in:
lib/fog/xenserver/compute/models/collection.rb

Instance Method Summary collapse

Instance Method Details

#all(_options = {}) ⇒ Object



6
7
8
9
# File 'lib/fog/xenserver/compute/models/collection.rb', line 6

def all(_options = {})
  data = service.get_records model.provider_class
  load(data)
end

#get(ref) ⇒ Object



11
12
13
14
15
16
# File 'lib/fog/xenserver/compute/models/collection.rb', line 11

def get(ref)
  data = service.get_record(ref, model.provider_class)
  new(data)
rescue Fog::XenServer::NotFound, Fog::XenServer::RequestFailed
  nil
end

#get_by_name(name) ⇒ Object Also known as: find_by_name



18
19
20
21
22
23
24
# File 'lib/fog/xenserver/compute/models/collection.rb', line 18

def get_by_name(name)
  ref = service.get_by_name(name, model.provider_class)
  return nil if ref.nil?
  get(ref)
rescue Fog::XenServer::NotFound, Fog::XenServer::RequestFailed
  nil
end

#get_by_reference_or_name_or_uuid(query) ⇒ Object



38
39
40
# File 'lib/fog/xenserver/compute/models/collection.rb', line 38

def get_by_reference_or_name_or_uuid(query)
  get(query) || get_by_name(query) || get_by_uuid(query)
end

#get_by_uuid(uuid) ⇒ Object Also known as: find_by_uuid



28
29
30
31
32
33
34
# File 'lib/fog/xenserver/compute/models/collection.rb', line 28

def get_by_uuid(uuid)
  ref = service.get_by_uuid(uuid, model.provider_class)
  return nil if ref.nil?
  get(ref)
rescue Fog::XenServer::NotFound, Fog::XenServer::RequestFailed
  nil
end