annotate src/luan/modules/http/impl/NotFound.java @ 1160:4beabb087be6

add http/impl
author Franklin Schmidt <fschmidt@gmail.com>
date Mon, 05 Feb 2018 22:33:59 -0700
parents src/luan/modules/http/jetty/NotFound.java@d30d400fd43d
children 7e6f28c769a1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1160
4beabb087be6 add http/impl
Franklin Schmidt <fschmidt@gmail.com>
parents: 1136
diff changeset
1 package luan.modules.http.impl;
377
a8d03e6882c6 add web/NotFound.java
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
2
1160
4beabb087be6 add http/impl
Franklin Schmidt <fschmidt@gmail.com>
parents: 1136
diff changeset
3 import luan.webserver.Request;
4beabb087be6 add http/impl
Franklin Schmidt <fschmidt@gmail.com>
parents: 1136
diff changeset
4 import luan.webserver.Response;
4beabb087be6 add http/impl
Franklin Schmidt <fschmidt@gmail.com>
parents: 1136
diff changeset
5 import luan.webserver.Handler;
377
a8d03e6882c6 add web/NotFound.java
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
6
a8d03e6882c6 add web/NotFound.java
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
7
1160
4beabb087be6 add http/impl
Franklin Schmidt <fschmidt@gmail.com>
parents: 1136
diff changeset
8 public class NotFound implements Handler {
4beabb087be6 add http/impl
Franklin Schmidt <fschmidt@gmail.com>
parents: 1136
diff changeset
9 private final Handler handler;
377
a8d03e6882c6 add web/NotFound.java
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
10
1160
4beabb087be6 add http/impl
Franklin Schmidt <fschmidt@gmail.com>
parents: 1136
diff changeset
11 public NotFound(Handler handler) {
4beabb087be6 add http/impl
Franklin Schmidt <fschmidt@gmail.com>
parents: 1136
diff changeset
12 this.handler = handler;
377
a8d03e6882c6 add web/NotFound.java
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
13 }
a8d03e6882c6 add web/NotFound.java
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
14
1160
4beabb087be6 add http/impl
Franklin Schmidt <fschmidt@gmail.com>
parents: 1136
diff changeset
15 @Override public Response handle(Request request) {
4beabb087be6 add http/impl
Franklin Schmidt <fschmidt@gmail.com>
parents: 1136
diff changeset
16 Response response = handler.handle(request);
4beabb087be6 add http/impl
Franklin Schmidt <fschmidt@gmail.com>
parents: 1136
diff changeset
17 if( response == null ) {
4beabb087be6 add http/impl
Franklin Schmidt <fschmidt@gmail.com>
parents: 1136
diff changeset
18 String path = request.path;
4beabb087be6 add http/impl
Franklin Schmidt <fschmidt@gmail.com>
parents: 1136
diff changeset
19 try {
4beabb087be6 add http/impl
Franklin Schmidt <fschmidt@gmail.com>
parents: 1136
diff changeset
20 request.path = "/not_found";
4beabb087be6 add http/impl
Franklin Schmidt <fschmidt@gmail.com>
parents: 1136
diff changeset
21 response = handler.handle(request);
4beabb087be6 add http/impl
Franklin Schmidt <fschmidt@gmail.com>
parents: 1136
diff changeset
22 } finally {
4beabb087be6 add http/impl
Franklin Schmidt <fschmidt@gmail.com>
parents: 1136
diff changeset
23 request.path = path;
4beabb087be6 add http/impl
Franklin Schmidt <fschmidt@gmail.com>
parents: 1136
diff changeset
24 }
4beabb087be6 add http/impl
Franklin Schmidt <fschmidt@gmail.com>
parents: 1136
diff changeset
25 }
4beabb087be6 add http/impl
Franklin Schmidt <fschmidt@gmail.com>
parents: 1136
diff changeset
26 return response;
377
a8d03e6882c6 add web/NotFound.java
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
27 }
a8d03e6882c6 add web/NotFound.java
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
28
a8d03e6882c6 add web/NotFound.java
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff changeset
29 }