Sha256: 055cca38d410824f41548e6aeb813d6750571fb1ab89796cbe666513e4167f52

Contents?: true

Size: 675 Bytes

Versions: 8

Compression:

Stored size: 675 Bytes

Contents

require 'fog/collection'
require 'fog/rackspace/models/compute/image'

module Fog
  module Rackspace
    class Compute

      class Images < Fog::Collection

        model Fog::Rackspace::Compute::Image

        attribute :server

        def all
          data = connection.list_images_detail.body['images']
          load(data)
          if server
            self.replace(self.select {|image| image.server_id == server.id})
          end
        end

        def get(image_id)
          data = connection.get_image_details(image_id).body['image']
          new(data)
        rescue Fog::Rackspace::Compute::NotFound
          nil
        end

      end

    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
fog-0.3.7 lib/fog/rackspace/models/compute/images.rb
fog-0.3.6 lib/fog/rackspace/models/compute/images.rb
fog-0.3.5 lib/fog/rackspace/models/compute/images.rb
fog-0.3.4 lib/fog/rackspace/models/compute/images.rb
fog-0.3.3 lib/fog/rackspace/models/compute/images.rb
fog-0.3.2 lib/fog/rackspace/models/compute/images.rb
fog-0.3.1 lib/fog/rackspace/models/compute/images.rb
fog-0.3.0 lib/fog/rackspace/models/compute/images.rb