Class: Bosh::Director::DeploymentPlan::DiskType::DiskTypesParser
Instance Method Summary
collapse
#invalid_type, #safe_property
Instance Method Details
#parse(dp_spec) ⇒ Object
37
38
39
40
41
42
43
44
45
46
47
48
|
# File 'lib/bosh/director/deployment_plan/disk_type.rb', line 37
def parse(dp_spec)
name = safe_property(dp_spec, 'name', class: String)
disk_size = safe_property(dp_spec, 'disk_size', class: Integer)
if disk_size < 0
raise DiskTypeInvalidDiskSize,
"Disk types `#{name}' references an invalid persistent disk size `#{disk_size}'"
end
cloud_properties = safe_property(dp_spec, 'cloud_properties', class: Hash, default: {})
DiskType.new(name, disk_size, cloud_properties)
end
|