Class: Fog::Compute::Aliyun::Snapshot

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

Instance Method Summary collapse

Instance Method Details

#destroyObject



19
20
21
22
23
# File 'lib/fog/aliyun/models/compute/snapshot.rb', line 19

def destroy
  requires :id
  service.delete_snapshot(id)
  true
end

#ready?Boolean

Returns:

  • (Boolean)


25
26
27
# File 'lib/fog/aliyun/models/compute/snapshot.rb', line 25

def ready?
  state == 'accomplished'
end

#save(options = {}) ⇒ Object



29
30
31
32
33
34
35
36
37
# File 'lib/fog/aliyun/models/compute/snapshot.rb', line 29

def save(options = {})
  # raise Fog::Errors::Error.new('Resaving an existing object may create a duplicate') if persisted?
  requires :volume_id
  options[:name] = name if name
  options[:description] = description if description
  data = Fog::JSON.decode(service.create_snapshot(volume_id, options).body)
  merge_attributes(data)
  true
end

#volumeObject



39
40
41
42
# File 'lib/fog/aliyun/models/compute/snapshot.rb', line 39

def volume
  requires :volume_id
  Fog::Compute::Aliyun::Volumes.new(service: service).all(diskIds: [volume_id])[0]
end