Sha256: 9894d618876c1a6933771125ed0997417411fd86e17b449627980b1585331100
Contents?: true
Size: 1.36 KB
Versions: 7
Compression:
Stored size: 1.36 KB
Contents
module Fog module Compute class Ecloud class Node < Fog::Ecloud::Model identity :href attribute :name, :aliases => :Name attribute :type, :aliases => :Type attribute :other_links, :aliases => :Links attribute :ip_address, :aliases => :IpAddress attribute :protocol, :aliases => :Protocol attribute :port, :aliases => :Port, :type => :integer attribute :enabled, :aliases => :Enabled, :type => :boolean attribute :description, :aliases => :Description def ready? !self.name.nil? end def tasks @tasks ||= Fog::Compute::Ecloud::Tasks.new(:service => service, :href => "#{service.base_path}/tasks/virtualMachines/#{id}") end def delete data = service.node_service_delete(href).body self.service.tasks.new(data) end def edit(options) options[:uri] = href options[:description] ||= "" options = {:name => name}.merge(options) data = service.node_service_edit(options).body task = Fog::Compute::Ecloud::Tasks.new(:service => service, :href => data[:href])[0] end def id href.scan(/\d+/)[0] end alias_method :destroy, :delete def reload @tasks = nil super end end end end end
Version data entries
7 entries across 5 versions & 2 rubygems