Sha256: 90c864e7d234e59158bb1d5f8864c4f20ea0420cc488e637e3223d6ba71ec578

Contents?: true

Size: 1.43 KB

Versions: 14

Compression:

Stored size: 1.43 KB

Contents

module Fog
  module Compute
    class Ecloud
      class Row < Fog::Ecloud::Model
        identity :href

        attribute :name, :aliases => :Name
        attribute :type, :aliases => :Type
        attribute :other_links, :aliases => :Links
        attribute :index, :aliases => :Index

        def groups
          @groups = Fog::Compute::Ecloud::Groups.new(:connection => connection, :href => href)
        end

        def edit(options)
          options[:uri] = href
          connection.rows_edit(options).body
        end

        def move_up(options)
          options[:uri] = href + "/action/moveup"
          connection.rows_moveup(options).body
        end

        def move_down(options)
          options[:uri] = href + "/action/movedown"
          connection.rows_movedown(options).body
        end

        def delete
          connection.rows_delete(href).body
        end

        def create_group(options = {})
          options[:uri] = "/cloudapi/ecloud/layoutGroups/environments/#{environment_id}/action/createLayoutGroup"
          options[:row_name] = name
          options[:href] = href
          data = connection.groups_create(options).body
          group = Fog::Compute::Ecloud::Groups.new(:connection => connection, :href => data[:href])[0]
        end

        def environment_id
          other_links[:Link][:href].scan(/\d+/)[0]
        end

        def id
          href.scan(/\d+/)[0]
        end
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 8 rubygems

Version Path
fog-nirvanix-1.8.2 lib/fog/ecloud/models/compute/row.rb
fog-nirvanix-1.8.1 lib/fog/ecloud/models/compute/row.rb
fog-parser-fix-1.6.1 lib/fog/ecloud/models/compute/row.rb
fog-test-again-1.6.0 lib/fog/ecloud/models/compute/row.rb
fog-parser-fix-1.6.0 lib/fog/ecloud/models/compute/row.rb
ey-vendored-backup-3.0.27 vendor/gems/fog/lib/fog/ecloud/models/compute/row.rb
fog-sgonyea-1.8.1 lib/fog/ecloud/models/compute/row.rb
fog-1.8.0 lib/fog/ecloud/models/compute/row.rb
fog-maestrodev-1.7.0.20121114190951 lib/fog/ecloud/models/compute/row.rb
fog-1.7.0 lib/fog/ecloud/models/compute/row.rb
fog-1.6.0 lib/fog/ecloud/models/compute/row.rb
fog-1.5.0 lib/fog/ecloud/models/compute/row.rb
rackspace-fog-1.4.2 lib/rackspace-fog/ecloud/models/compute/row.rb
fog-1.4.0 lib/fog/ecloud/models/compute/row.rb