Sha256: 3d6ffc4ce9254a5a68d21594398dffe1a41a9b13b8be00ec96f9aa42c0b30868

Contents?: true

Size: 744 Bytes

Versions: 3

Compression:

Stored size: 744 Bytes

Contents

module Fog
  module Compute
    class VcloudDirector
      class Tag < Model
        identity  :id
        attribute :value

        remove_method :value=
        def value=(new_value)
          has_changed = ( value != new_value )
          not_first_set = !value.nil?
          attributes[:value] = new_value
          if not_first_set && has_changed
            response = service.put_vapp_metadata_item_metadata(vm.id, id, value)
            service.process_task(response.body)
          end
        end

        def destroy
          response = service.delete_vapp_metadata_item_metadata(vm.id, id)
          service.process_task(response.body)
        end

        def vm
          attributes[:vm]
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
fog-vcloud-director-0.2.2 lib/fog/vcloud_director/models/compute/tag.rb
fog-vcloud-director-0.2.1 lib/fog/vcloud_director/models/compute/tag.rb
fog-vcloud-director-0.2.0 lib/fog/vcloud_director/models/compute/tag.rb