Sha256: 1e86b5e9bef7cab1b243f9a24279e7f70649d036c45977e61a110730f3bd4ecc

Contents?: true

Size: 1.17 KB

Versions: 11

Compression:

Stored size: 1.17 KB

Contents

require 'fog/core/model'

module Fog
  module Terremark
    module Shared

      class NodeService < Fog::Model

        identity :Id
        attribute :Name
        attribute :Href
        attribute :Port
        attribute :Description
        attribute :IpAddress
        attribute :Enabled
        attribute :InternetServiceId

        def destroy
          connection.delete_node_service(self.Id)
        end

        def save
         requires :Name, :Port, :InternetServiceId
            data = connection.add_node_service(
                service_id = self.InternetServiceId,
                ip = self.IpAddress,
                name = self.Name,
                port = self.Port,
                options = {"Enabled" => 'true',
                           "Description" => self.Name,
                }
            
            )
            merge_attributes(data.body)
            true
        end

        private

        def href=(new_href)
          self.id = new_href.split('/').last.to_i
        end

        def type=(new_type); @type = new_type; end
        def size=(new_size); @size = new_size; end
        def Links=(new_links); @Links = new_links; end

      end

    end
  end
end

Version data entries

11 entries across 11 versions & 7 rubygems

Version Path
fog-nirvanix-1.8.2 lib/fog/terremark/models/shared/nodeservice.rb
fog-nirvanix-1.8.1 lib/fog/terremark/models/shared/nodeservice.rb
fog-parser-fix-1.6.1 lib/fog/terremark/models/shared/nodeservice.rb
fog-test-again-1.6.0 lib/fog/terremark/models/shared/nodeservice.rb
fog-parser-fix-1.6.0 lib/fog/terremark/models/shared/nodeservice.rb
ey-vendored-backup-3.0.27 vendor/gems/fog/lib/fog/terremark/models/shared/nodeservice.rb
fog-sgonyea-1.8.1 lib/fog/terremark/models/shared/nodeservice.rb
fog-1.8.0 lib/fog/terremark/models/shared/nodeservice.rb
fog-maestrodev-1.7.0.20121114190951 lib/fog/terremark/models/shared/nodeservice.rb
fog-1.7.0 lib/fog/terremark/models/shared/nodeservice.rb
fog-1.6.0 lib/fog/terremark/models/shared/nodeservice.rb