Sha256: c5c581f1a2d842da904a4faf513f1cee0f78eebcc3ebe151704d0a200405a753

Contents?: true

Size: 897 Bytes

Versions: 9

Compression:

Stored size: 897 Bytes

Contents

require 'fog/vcloud/terremark/ecloud/models/public_ip'

module Fog
  class Vcloud
    module Terremark
      class Ecloud

        class PublicIps < Fog::Vcloud::Collection

          undef_method :create

          attribute :href, :aliases => :Href

          model Fog::Vcloud::Terremark::Ecloud::PublicIp

          #get_request :get_public_ip
          #vcloud_type "application/vnd.tmrk.ecloud.publicIp+xml"
          #all_request lambda { |public_ips| public_ips.connection.get_public_ips(public_ips.href) }

          def all
            if data = connection.get_public_ips(href).body[:PublicIPAddress]
              load(data)
            end
          end

          def get(uri)
            if data = connection.get_public_ip(uri)
              new(data.body)
            end
          rescue Fog::Errors::NotFound
            nil
          end

        end
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
fog-0.3.16 lib/fog/vcloud/terremark/ecloud/models/public_ips.rb
fog-0.3.15 lib/fog/vcloud/terremark/ecloud/models/public_ips.rb
fog-0.3.14 lib/fog/vcloud/terremark/ecloud/models/public_ips.rb
fog-0.3.13 lib/fog/vcloud/terremark/ecloud/models/public_ips.rb
fog-0.3.12 lib/fog/vcloud/terremark/ecloud/models/public_ips.rb
fog-0.3.11 lib/fog/vcloud/terremark/ecloud/models/public_ips.rb
fog-0.3.10 lib/fog/vcloud/terremark/ecloud/models/public_ips.rb
fog-0.3.9 lib/fog/vcloud/terremark/ecloud/models/public_ips.rb
fog-0.3.8 lib/fog/vcloud/terremark/ecloud/models/public_ips.rb