Sha256: 8532258e62cb0de86b0fd77a2f5dfb6d7e58bd15c0bbeae9db294abb6a5e6ff8

Contents?: true

Size: 1002 Bytes

Versions: 5

Compression:

Stored size: 1002 Bytes

Contents

require 'fog/core/model'

module Fog
  module Compute
    class Brightbox

      class CloudIp < Fog::Model

        identity :id

        attribute :url
        attribute :name
        attribute :status
        attribute :resource_type
        attribute :description

        attribute :reverse_dns
        attribute :public_ip

        attribute :account_id, :aliases => "account", :squash => "id"
        attribute :interface_id, :aliases => "interface", :squash => "id"
        attribute :server_id, :aliases => "server", :squash => "id"

        def map(interface_to_map)
          requires :identity
          connection.map_cloud_ip(identity, :interface => interface_to_map)
        end

        def mapped?
          status == "mapped"
        end

        def unmap
          requires :identity
          connection.unmap_cloud_ip(identity)
        end

        def destroy
          requires :identity
          connection.destroy_cloud_ip(identity)
        end

      end

    end
  end
end

Version data entries

5 entries across 5 versions & 2 rubygems

Version Path
fog-0.11.0 lib/fog/compute/models/brightbox/cloud_ip.rb
fog-0.10.0 lib/fog/compute/models/brightbox/cloud_ip.rb
fog4encbs-0.9.0.1 lib/fog/compute/models/brightbox/cloud_ip.rb
fog4encbs-0.9.0 lib/fog/compute/models/brightbox/cloud_ip.rb
fog-0.9.0 lib/fog/compute/models/brightbox/cloud_ip.rb