lib/sanford/host.rb in sanford-0.8.0 vs lib/sanford/host.rb in sanford-0.9.0
- old
+ new
@@ -16,20 +16,20 @@
# still function as a mixin). Also, since it is making the `Host`
# a `Singleton`, mixing that with `NsOptions::Proxy` could have strange
# effects (messing up someone's `initialize`). Thus, the `Configuration`
# is a separate class and not on the `Host` directly.
- option :name, String
- option :ip, String, :default => '0.0.0.0'
- option :port, Integer
- option :pid_file, Pathname
- option :logger, :default => proc{ Sanford.config.logger }
- option :verbose_logging, :default => true
- option :receives_keep_alive, :default => false
- option :runner, :default => proc{ Sanford.config.runner }
- option :error_procs, Array, :default => []
- option :init_proc, Proc, :default => proc{ }
+ option :name, String
+ option :ip, String, :default => '0.0.0.0'
+ option :port, Integer
+ option :pid_file, Pathname
+ option :logger, :default => proc{ Sanford.config.logger }
+ option :verbose_logging, :default => true
+ option :receives_keep_alive, :default => false
+ option :runner, :default => proc{ Sanford.config.runner }
+ option :error_procs, Array, :default => []
+ option :init_procs, Array, :default => []
def initialize(host)
self.name = host.class.to_s
end
@@ -86,11 +86,11 @@
def error(&block)
self.configuration.error_procs << block
end
def init(&block)
- self.configuration.init_proc = block
+ self.configuration.init_procs << block
end
def service_handler_ns(value = nil)
@service_handler_ns = value if value
@service_handler_ns
@@ -98,19 +98,17 @@
def service(service_name, handler_class_name)
if @service_handler_ns && !(handler_class_name =~ /^::/)
handler_class_name = "#{@service_handler_ns}::#{handler_class_name}"
end
- @services[service_name] = handler_class_name
+ @services[service_name.to_s] = handler_class_name
end
def inspect
reference = '0x0%x' % (self.object_id << 1)
"#<#{self.class}:#{reference} ip=#{self.configuration.ip.inspect} " \
"port=#{self.configuration.port.inspect}>"
end
-
- protected
module ClassMethods
# the class level of a `Host` should just proxy it's methods down to it's
# instance (it's a `Singleton`)