Sha256: 3cb9d5771535163aba32c0a9229ac62867a3683054d12e7ae324bed31845f20d
Contents?: true
Size: 1.36 KB
Versions: 35
Compression:
Stored size: 1.36 KB
Contents
# # Author:: Matt Eldridge (<matt.eldridge@us.ibm.com>) # © Copyright IBM Corporation 2014. # # LICENSE: MIT (http://opensource.org/licenses/MIT) # require 'fog/core/model' module Fog module Network class Softlayer class Tag < Fog::Model identity :id attribute :name attribute :referenceCount, :type => :integer attribute :resource_id attribute :internal, :type => :boolean def initialize(attributes = {}) super end def destroy requires :name, :resource_id service.delete_network_tags(self.resource_id, [self.name]) #load_network #@network.delete_tags([self.name]) true end def references @networks ||= service.request(:tag, "#{id}", :query => "objectMask=references;references.tagType").body['references'].map do |ref| service.networks.get(ref['resourceTableId']) if ref['tagType']['keyName'] == 'NETWORK_VLAN' end.compact end def save requires :name, :resource_id load_network service.create_network_tags(self.resource_id, @network.tags << self.name) true end private def load_network requires :resource_id @network ||= service.networks.get(self.resource_id) end end end end end
Version data entries
35 entries across 35 versions & 1 rubygems