Mercurial Hosting > luan
view src/goodjava/webserver/handlers/RegexHandler.java @ 1618:a37ffe2d1b14
fix not_found_handler
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Mon, 14 Jun 2021 18:45:17 -0600 |
parents | f7e3adae4907 |
children |
line wrap: on
line source
package goodjava.webserver.handlers; import java.util.regex.Pattern; import goodjava.webserver.Handler; import goodjava.webserver.Request; import goodjava.webserver.Response; public final class RegexHandler implements Handler { private final Pattern ptn; private final Handler ifMatch; private final Handler ifNotMatch; public RegexHandler(Pattern ptn,Handler ifMatch,Handler ifNotMatch) { this.ptn = ptn; this.ifMatch = ifMatch; this.ifNotMatch = ifNotMatch; } public RegexHandler(String ptn,Handler ifMatch,Handler ifNotMatch) { this(Pattern.compile(ptn),ifMatch,ifNotMatch); } public Response handle(Request request) { return ptn.matcher(request.path).find() ? ifMatch.handle(request) : ifNotMatch.handle(request); } }