Sha256: ae46e0de734a174b660a120435fc7569fc740a8d8da48ba037be68189074bd6a
Contents?: true
Size: 1.32 KB
Versions: 1
Compression:
Stored size: 1.32 KB
Contents
require 'rackspace-fog/core/model' module Fog module Compute class AWS class Snapshot < Fog::Model identity :id, :aliases => 'snapshotId' attribute :description attribute :progress attribute :created_at, :aliases => 'startTime' attribute :owner_id, :aliases => 'ownerId' attribute :state, :aliases => 'status' attribute :tags, :aliases => 'tagSet' attribute :volume_id, :aliases => 'volumeId' attribute :volume_size, :aliases => 'volumeSize' def destroy requires :id connection.delete_snapshot(id) true end def ready? state == 'completed' end def save raise Fog::Errors::Error.new('Resaving an existing object may create a duplicate') if identity requires :volume_id data = connection.create_snapshot(volume_id, description).body new_attributes = data.reject {|key,value| key == 'requestId'} merge_attributes(new_attributes) true end def volume requires :id connection.describe_volumes(volume_id) end private def volume=(new_volume) self.volume_id = new_volume.volume_id end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rackspace-fog-1.4.2 | lib/rackspace-fog/aws/models/compute/snapshot.rb |