| Module | ServiceManager |
| In: |
lib/service_manager.rb
|
A service must implement at least:
- start_service(uri, *args, &block) - stop_service - server - thread - uri
# File lib/service_manager.rb, line 40 def count_services if defined? @services @services.size else 0 end end
# File lib/service_manager.rb, line 62 def each_services(&block) if defined? @services @services.each { |uri, service| block[uri, service] } end end
# File lib/service_manager.rb, line 56 def join_services if defined? @services @services.each { |uri, service| service.thread.join } end end
# File lib/service_manager.rb, line 48 def list_services if defined? @services @services.values else [] end end
# File lib/service_manager.rb, line 68 def service_server(uri) @services[uri].server if defined? @services end
# File lib/service_manager.rb, line 18 def start_service(service, uri=nil, *args, &block) @services = {} unless defined? @services service.start_service(uri, *args, &block) @services[service.uri] = service end
# File lib/service_manager.rb, line 24 def stop_service(uri) if defined? @services if service = @services.delete(uri) service.stop_service end end end