def save
requires :datacenter_id, :size, :type
options = {}
options[:name] = name if name
options[:size] = size
options[:bus] = bus if bus
options[:image] = image if image
options[:imageAlias] = image_alias if image_alias
options[:type] = type
options[:licenceType] = licence_type if licence_type
options[:imagePassword] = image_password if image_password
options[:sshKeys] = ssh_keys if ssh_keys
options[:availabilityZone] = availability_zone if availability_zone
data = service.create_volume(datacenter_id, options)
merge_attributes(flatten(data.body))
true
end