Mercurial Hosting > luan
comparison web/src/luan/modules/web/Web_server.luan @ 181:5d2cb8c1f844
add web logging
git-svn-id: https://luan-java.googlecode.com/svn/trunk@182 21e917c8-12df-6dd8-5cb6-c86387c605b9
author | fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9> |
---|---|
date | Tue, 24 Jun 2014 07:16:53 +0000 |
parents | bdbd4740121f |
children | e6d6596a8bcc |
comparison
equal
deleted
inserted
replaced
180:5351374efb6d | 181:5d2cb8c1f844 |
---|---|
1 import "Java" | 1 import "Java" |
2 | 2 |
3 import "org.eclipse.jetty.server.Server" | 3 import "org.eclipse.jetty.server.Server" |
4 import "org.eclipse.jetty.server.NCSARequestLog" | |
4 import "org.eclipse.jetty.server.handler.DefaultHandler" | 5 import "org.eclipse.jetty.server.handler.DefaultHandler" |
5 import "org.eclipse.jetty.server.handler.HandlerList" | 6 import "org.eclipse.jetty.server.handler.HandlerList" |
7 import "org.eclipse.jetty.server.handler.HandlerCollection" | |
6 import "org.eclipse.jetty.server.handler.ResourceHandler" | 8 import "org.eclipse.jetty.server.handler.ResourceHandler" |
9 import "org.eclipse.jetty.server.handler.RequestLogHandler" | |
7 import "org.eclipse.jetty.server.session.SessionHandler" | 10 import "org.eclipse.jetty.server.session.SessionHandler" |
8 import "web/Http" | 11 import "web/Http" |
9 | 12 |
10 | 13 |
11 port = 8080 | 14 port = 8080 |
12 | 15 |
13 | 16 |
14 resource_handler = ResourceHandler.new() | |
15 | |
16 session_handler = SessionHandler.new() | 17 session_handler = SessionHandler.new() |
17 | 18 |
18 luan_handler = Http.new_luan_handler() | 19 luan_handler = Http.new_luan_handler() |
19 | 20 |
21 resource_handler = ResourceHandler.new() | |
22 | |
20 handlers = HandlerList.new() | 23 handlers = HandlerList.new() |
21 handlers.setHandlers { resource_handler, session_handler, luan_handler, DefaultHandler.new() } | 24 handlers.setHandlers { session_handler, luan_handler, resource_handler, DefaultHandler.new(), log_handler } |
25 | |
26 log = NCSARequestLog.new() | |
27 log.setExtended(false) | |
28 log_handler = RequestLogHandler.new() | |
29 log_handler.setRequestLog(log) | |
30 | |
31 local hc = HandlerCollection.new() | |
32 hc.setHandlers { handlers, log_handler } | |
22 | 33 |
23 | 34 |
24 function serve(dir) | 35 function serve(dir) |
25 dir = dir.gsub("/$","") -- remove trailing '/' if any | 36 dir = dir.gsub("/$","") -- remove trailing '/' if any |
26 Package.path = dir.."?.luan;java:luan/modules/?.luan" | 37 Package.path = dir.."?.luan;java:luan/modules/?.luan" |
27 resource_handler.setResourceBase(dir) | 38 resource_handler.setResourceBase(dir) |
28 local server = Server.new(port) | 39 local server = Server.new(port) |
29 server.setHandler(handlers); | 40 server.setHandler(hc); |
30 server.start() | 41 server.start() |
31 end | 42 end |