Class: Fog::Compute::Softlayer::Tag

Inherits:
Model
  • Object
show all
Defined in:
lib/fog/softlayer/models/compute/tag.rb

Instance Method Summary collapse

Constructor Details

#initialize(attributes = {}) ⇒ Tag

Returns a new instance of Tag.



21
22
23
# File 'lib/fog/softlayer/models/compute/tag.rb', line 21

def initialize(attributes = {})
  super
end

Instance Method Details

#destroyObject



25
26
27
28
29
30
# File 'lib/fog/softlayer/models/compute/tag.rb', line 25

def destroy
  requires :name, :resource_id
  load_server
  @server.bare_metal? ? destroy_bare_metal_tag : destroy_vm_tag
  true
end

#referencesObject



32
33
34
35
36
37
# File 'lib/fog/softlayer/models/compute/tag.rb', line 32

def references
  @servers ||= service.request(:tag, "#{id}", :query => "objectMask=references;references.tagType").body['references'].map do |ref|
    type = ref['tagType']['keyName']
    service.servers.get(ref['resourceTableId']) if type == 'GUEST' || type == 'HARDWARE'
  end.compact
end

#saveObject



39
40
41
42
43
44
# File 'lib/fog/softlayer/models/compute/tag.rb', line 39

def save
  requires :name, :resource_id
  load_server
  @server.bare_metal? ? add_bare_metal_tag : add_vm_tag
  true
end