class Rubroxy::Proxy
Main class of the proxy object, includes control methods
Attributes
server[RW]
Public Class Methods
new(host, port, logger_level = 3)
click to toggle source
Creates the proxy object, defines logging levels and host:port
@param host [String] Hostname of the proxy (eg: localhost, 127.0.0.1 etc) @param port [Integer] The expected port number (eg: 8080) @param logger_level [Integer] Sets the detail of the logger included. @return [Proxy]
# File lib/rubroxy/proxy_core.rb, line 12 def initialize(host, port, logger_level = 3) logger = Logger.new($stderr) logger.level = logger_level access_log = [] if logger.level == 3 @server = WEBrick::HTTPProxyServer.new(Port: port, Logger: logger, AccessLog: access_log, BindAddress: host) end
Public Instance Methods
add_rules(handler)
click to toggle source
Adds a Proc object to the Proxy
server
@param handler [Proc] The proc object to be passed into the server config
# File lib/rubroxy/proxy_core.rb, line 25 def add_rules(handler) @server.config[:ProxyContentHandler] = handler end
start_server()
click to toggle source
Starts the server process, including traps for process termination
# File lib/rubroxy/proxy_core.rb, line 30 def start_server Signal.trap('INT') { stop_server } Signal.trap('TERM') { stop_server } @server.start end
stop_server()
click to toggle source
Shuts down the proxy server
# File lib/rubroxy/proxy_core.rb, line 38 def stop_server @server.shutdown end