Method: OpenStack::Volume::Volume#populate

Defined in:
lib/openstack/volume/volume.rb

#populate(volume_info = nil) ⇒ Object



25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'lib/openstack/volume/volume.rb', line 25

def populate(volume_info = nil)
  if not volume_info and @id
    response = @connection.req("GET", "/#{@volume_path}/#{@id}")
    volume_info = JSON.parse(response.body)["volume"]
  end

  @id  = volume_info["id"]
  @display_name  = volume_info["display_name"] || volume_info["displayName"] || volume_info["name"]
  @display_description  = volume_info["display_description"] || volume_info["displayDescription"]
  @size  = volume_info["size"]
  @volume_type  = volume_info["volume_type"] || volume_info["volumeType"]
  @metadata  = volume_info["metadata"]
  @availability_zone  = volume_info["availability_zone"] || volume_info["availabilityZone"]
  @snapshot_id  = volume_info["snapshot_id"] || volume_info["snapshotId"]
  @attachments  = volume_info["attachments"]
  @created_at  = volume_info["created_at"] || volume_info["createdAt"]
  @updated_at  = volume_info["updated_at"]
  @status = volume_info["status"]
end