Sha256: 60ae9cad7af0240f210da44a1715a31fb1f6c3216a74ac32d2f91f719653b00c

Contents?: true

Size: 822 Bytes

Versions: 1

Compression:

Stored size: 822 Bytes

Contents

module Fog
  module Rackspace
    class Servers

      def servers
        Fog::Rackspace::Servers::Servers.new(:connection => self)
      end

      class Servers < Fog::Collection

        model Fog::Rackspace::Servers::Server

        def all
          data = connection.list_servers_detail.body
          servers = Fog::Rackspace::Servers::Servers.new({
            :connection => connection
          })
          for server in data['servers']
            servers << Fog::Rackspace::Servers::Server.new({
              :collection => servers,
              :connection => connection
            }.merge!(server))
          end
          servers
        end

        def get(id)
          connection.get_server_details(id)
        rescue Excon::Errors::NotFound
          nil
        end

      end

    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
fog-0.0.30 lib/fog/rackspace/models/servers/servers.rb