package foundation.route; import javax.servlet.http.HttpServletRequest; public class NavigatorCreator { private HttpServletRequest request; private RouteNavigator navigator; public NavigatorCreator(HttpServletRequest request) { this.request = request; } public void onResourceTypeMatch(String uri, String path, String suffix, Route route, boolean authorizeSensitive) { navigator = new ResourceNavigator(request, uri, path, route, authorizeSensitive); navigator.setDebugEnabled(false); } public void onResourceURIMatch(String uri, String path, String suffix, Route route, boolean authorizeSensitive) { navigator = new ResourceNavigator(request, uri, path, route, authorizeSensitive); } public void onVirtualPathMatch(String uri, String path, String suffix, Route route, boolean authorizeSensitive) { navigator = new VirtualPathNavigator(request, uri, path, route, authorizeSensitive); } public void onControllerMatch(String uri, String path, Operation operation, Route route, boolean authorizeSensitive) { navigator = new ControllerNavigator(request, uri, path, operation, route, authorizeSensitive); } public void onNoMatch(String uri, String suffix, String path) { Route route = RouteTable.getNotExistsRoute(); navigator = new ResourceNavigator(request, uri, path, route, true); } public RouteNavigator getNavigator() { return navigator; } public void setNavigator(RouteNavigator navigator) { this.navigator = navigator; } }