1
0
Fork 0
mirror of https://github.com/fog/fog.git synced 2022-11-09 13:51:43 -05:00
fog--fog/lib/fog/ecloud/models/compute/rows.rb
Todd Willey 4ffab4b18f [ecloud|compute] Replace /cloudapi/ecloud with a configurable path.
This is so the Live Specification can be accessed, which is expecially
helpful in learning the ins and outs of Verizon's Enterprise Cloud. The
Live Specification is available at /cloudapi/spec, and the hardcoded
paths were hindering using it.
2013-10-29 01:09:04 -04:00

40 lines
854 B
Ruby

require 'fog/ecloud/models/compute/row'
module Fog
module Compute
class Ecloud
class Rows < Fog::Ecloud::Collection
identity :href
model Fog::Compute::Ecloud::Row
def all
data = service.get_layout(href).body[:Rows][:Row]
load(data)
end
def get(uri)
data = service.get_row(uri).body
if data == ""
nil
else
new(data)
end
rescue Excon::Errors::NotFound
nil
end
def create(options = {})
options[:uri] = "#{service.base_path}/layoutRows/environments/#{environment_id}/action/createLayoutRow"
data = service.rows_create(options).body
new(data)
end
def environment_id
href.scan(/\d+/)[0]
end
end
end
end
end