Class: CarbonCopy::CacheServer
- Inherits:
-
Object
- Object
- CarbonCopy::CacheServer
- Defined in:
- lib/carbon-copy/cache_server.rb
Instance Method Summary collapse
- #handle(session) ⇒ Object
-
#initialize(port, request_cacher) ⇒ CacheServer
constructor
A new instance of CacheServer.
- #run ⇒ Object
Constructor Details
#initialize(port, request_cacher) ⇒ CacheServer
Returns a new instance of CacheServer.
8 9 10 11 |
# File 'lib/carbon-copy/cache_server.rb', line 8 def initialize(port, request_cacher) @port = port @request_cacher = request_cacher end |
Instance Method Details
#handle(session) ⇒ Object
21 22 23 24 25 26 27 28 29 30 |
# File 'lib/carbon-copy/cache_server.rb', line 21 def handle(session) request = Request.new(session) request.parse response = @request_cacher.connect(request) session.write(response) session.close rescue => e p e. p e.backtrace end |
#run ⇒ Object
13 14 15 16 17 18 19 |
# File 'lib/carbon-copy/cache_server.rb', line 13 def run webserver = TCPServer.new("127.0.0.1", @port) puts "Running Carbon Copy on localhost port #{@port}" while (session = webserver.accept) Thread.new(session, &method(:handle)) end end |