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



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

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

#ready?Boolean

Returns:

  • (Boolean)


27
28
29
# File 'lib/fog/aliyun/models/compute/snapshot.rb', line 27

def ready?
  state == 'accomplished'
end

#save(options = {}) ⇒ Object



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

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



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

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