# File lib/rhc/servers.rb, line 14 def self.from_yaml_hash(hash) hash.symbolize_keys! Server.new(hash.delete(:hostname), hash) end
# File lib/rhc/servers.rb, line 19 def initialize(hostname, args={}) @hostname = RHC::Servers.to_host(hostname) @nickname = args[:nickname] @login = args[:login] @use_authorization_tokens = RHC::Helpers.to_boolean(args[:use_authorization_tokens], true) @insecure = RHC::Helpers.to_boolean(args[:insecure], true) @timeout = Integer(args[:timeout]) if args[:timeout].present? @ssl_version = args[:ssl_version] @ssl_client_cert_file = args[:ssl_client_cert_file] @ssl_ca_file = args[:ssl_ca_file] @default = args[:default] end
# File lib/rhc/servers.rb, line 61 def <=>(other) designation <=> other.designation end
# File lib/rhc/servers.rb, line 32 def default? !!@default end
# File lib/rhc/servers.rb, line 36 def designation @nickname || @hostname end
# File lib/rhc/servers.rb, line 48 def to_config RHC::Vendor::ParseConfig.new.tap do |config| h = to_yaml_hash h['default_rhlogin'] = h.delete('login') h['libra_server'] = h.delete('hostname') h.each{|k, v| config.add(k, v)} end end
# File lib/rhc/servers.rb, line 57 def to_s @nickname ? "#{@nickname} (#{@hostname})" : @hostname end
# File lib/rhc/servers.rb, line 40 def to_yaml_hash {}.tap do |h| instance_variables.each do |k| h[k.to_s.delete('@')] = instance_variable_get(k) end end.reject{|k, v| v.nil? || k == 'default'}.inject({}){|h, (k, v)| h[k] = v.is_a?(String) ? v.to_s : v; h } end