Class: ROS::XMLRPCServer

Inherits:
XMLRPC::WEBrickServlet
  • Object
show all
Defined in:
lib/ros/xmlrpcserver.rb

Overview

original XMLRPC Server (remove access log from XMLRPC::Server)

Instance Method Summary (collapse)

Constructor Details

- (XMLRPCServer) initialize(port = 8080, host = "127.0.0.1", maxConnections = 100, stdlog = "#{ENV['HOME']}/.ros/log/rosruby.log")

Initialize server

Parameters:

  • port (Integer) (defaults to: 8080)

    port number.

  • host (String) (defaults to: "127.0.0.1")

    host name.

  • maxConnections (Integer) (defaults to: 100)

    max connection number.

  • stdlog (String) (defaults to: "#{ENV['HOME']}/.ros/log/rosruby.log")

    log file to save.



21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/ros/xmlrpcserver.rb', line 21

def initialize(port=8080,
               host="127.0.0.1",
               maxConnections=100,
               stdlog="#{ENV['HOME']}/.ros/log/rosruby.log")
  super({})
  require 'webrick'
  FileUtils.mkdir_p(File.dirname(stdlog))
  @server = WEBrick::HTTPServer.new(:Port => port,
                                    :BindAddress => host,
                                    :MaxClients => maxConnections,
                                    :Logger => WEBrick::Log.new(stdlog),
                                    :AccessLog => [])
  @server.mount("/", self)
end

Instance Method Details

- (Object) serve

Start serve. This is while loop.



37
38
39
# File 'lib/ros/xmlrpcserver.rb', line 37

def serve
  @server.start
end

- (Object) shutdown

Shutdown server



42
43
44
# File 'lib/ros/xmlrpcserver.rb', line 42

def shutdown
  @server.shutdown
end