Mercurial Hosting > luan
comparison src/luan/modules/http/Server.luan @ 1358:1d31c1f3ea30
better not_found_handler
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Fri, 19 Apr 2019 00:47:58 -0600 |
parents | 70a7eb76ee2c |
children | 27efb1fcbcb5 |
comparison
equal
deleted
inserted
replaced
1357:70a7eb76ee2c | 1358:1d31c1f3ea30 |
---|---|
23 local SafeHandler = require "java:luan.lib.webserver.handlers.SafeHandler" | 23 local SafeHandler = require "java:luan.lib.webserver.handlers.SafeHandler" |
24 local LogHandler = require "java:luan.lib.webserver.handlers.LogHandler" | 24 local LogHandler = require "java:luan.lib.webserver.handlers.LogHandler" |
25 local ListHandler = require "java:luan.lib.webserver.handlers.ListHandler" | 25 local ListHandler = require "java:luan.lib.webserver.handlers.ListHandler" |
26 local LuanHandler = require "java:luan.modules.http.LuanHandler" | 26 local LuanHandler = require "java:luan.modules.http.LuanHandler" |
27 local System = require "java:java.lang.System" | 27 local System = require "java:java.lang.System" |
28 local NotFound = require "java:luan.modules.http.NotFound" | |
28 | 29 |
29 | 30 |
30 local Server = {} | 31 local Server = {} |
31 | 32 |
32 function Server.init_dir(dir) | 33 function Server.init_dir(dir) |
65 Server.init_dir(dir) | 66 Server.init_dir(dir) |
66 local dir_path = match(Http.dir,"^file:(.*)$") or error "server dir must be scheme 'file:'" | 67 local dir_path = match(Http.dir,"^file:(.*)$") or error "server dir must be scheme 'file:'" |
67 local file_handler = FileHandler.new(dir_path) | 68 local file_handler = FileHandler.new(dir_path) |
68 local dir_handler = DirHandler.new(file_handler) | 69 local dir_handler = DirHandler.new(file_handler) |
69 local luan_handler = LuanHandler.new() | 70 local luan_handler = LuanHandler.new() |
71 local not_found_hander = NotFound.new(luan_handler) | |
70 local handler = ListHandler.new( file_handler, luan_handler ) | 72 local handler = ListHandler.new( file_handler, luan_handler ) |
71 handler = IndexHandler.new(handler) | 73 handler = IndexHandler.new(handler) |
72 handler = ListHandler.new( handler, dir_handler ) | 74 handler = ListHandler.new( handler, dir_handler, not_found_hander ) |
73 handler = ContentTypeHandler.new(handler) | 75 handler = ContentTypeHandler.new(handler) |
74 handler = SafeHandler.new(handler) | 76 handler = SafeHandler.new(handler) |
75 handler = LogHandler.new(handler) | 77 handler = LogHandler.new(handler) |
76 local server = JavaServer.new(port,handler) | 78 local server = JavaServer.new(port,handler) |
77 Server.start(server) | 79 Server.start(server) |