OnRoute route = route(setup.on(verb, path), method); setup.deregister(verb, path); route(setup.get(path), method).json(method, bean); } else { setup.deregister(Constants.GET, path); route(setup.post(path), method).json(method, bean); } else { setup.deregister(Constants.POST, path); route(setup.put(path), method).json(method, bean); } else { setup.deregister(Constants.PUT, path); route(setup.delete(path), method).json(method, bean); } else { setup.deregister(Constants.DELETE, path); route(setup.patch(path), method).json(method, bean); } else { setup.deregister(Constants.PATCH, path); route(setup.options(path), method).json(method, bean); } else { setup.deregister(Constants.OPTIONS, path); route(setup.head(path), method).json(method, bean);
Value<String> clientSecret = providerConfig.entry("clientSecret").str(); setup.get(loginUri) .internal(true) .html(new OAuthLoginHandler(provider, DOMAIN)); setup.get(callbackUri) .internal(true) .html(new OAuthTokenHandler(provider, setup.custom(), DOMAIN, stateCheck, clientId, clientSecret, callbackUri)); final String loginPage = loginHtml.toString(); setup.get(Msc.specialUri("oauth")) .internal(true) .mvc((ReqHandler) x -> GUI.hardcoded(loginPage));
public static HttpRoutes routes() { return On.setup().routes(); }
setup.get(uri) .internal(internal) .roles(roles) .json(X.index(entityType)); setup.get(uri + "/{id}") .internal(internal) .roles(roles) .json(X.read(entityType)); setup.post(uri) .internal(internal) .transaction() setup.put(uri + "/{id}") .internal(internal) .transaction() setup.delete(uri + "/{id}") .internal(internal) .transaction() setup.page(uri + "/manage") .internal(internal) .roles(roles) .mvc(X.manage(entityType, uri)); setup.page(uri + "/add") .internal(internal)
private synchronized void listen() { if (!listening && !reloaded) { App.inferCallers(); listening = true; HttpProcessor proc = processor != null ? processor : http(); if (Env.dev() && !On.changes().isIgnored() && MscOpts.hasRapidoidWatch()) { proc = new AppRestartProcessor(this, proc); On.changes().byDefaultRestart(); } if (delegateAdminToApp()) { server = on().server(); } else if (delegateAppToAdmin()) { server = admin().server(); } if (server == null) { int targetPort; if (isAppOrAdminOnSameServer()) { targetPort = on().port(); server = proc.listen(on().address(), targetPort); } else { targetPort = port(); server = proc.listen(address(), targetPort); } Log.info("!Server has started", "setup", name(), "!home", "http://localhost:" + targetPort); Log.info("!Static resources will be served from the following locations", "setup", name(), "!locations", custom().staticFilesPath()); } } }
public Booter metrics() { Metrics.bootstrap(); setup.page(uri("metrics")) .internal(true) .roles(Role.ADMINISTRATOR) .zone(CENTER) .menu(40, "Metrics") .mvc(new GraphsHandler()); setup.get(uri("graphs/{id:.*}")) .internal(true) .roles(Role.ADMINISTRATOR) .json(new GraphDataHandler()); return this; }
public static synchronized OnRoute get(String path) { return setup().get(path); }
static void register(Setup setup, String verb, String path, RouteOptions options, Callable<?> handler) { FastHttp http = setup.http(); HttpRoutes routes = setup.routes(); routes.on(verb, path, new CallableHttpHandler(http, routes, options, handler)); setup.autoActivate(); }
public Booter entities() { setup.page(uri("entities")) .internal(true) .roles(Role.ADMINISTRATOR) .zone(CENTER) .menu(50, "Application", 30, "Entities") .mvc(new EntitiesHandler()); if (MscOpts.hasJPA()) { for (Class<?> type : JPA.getEntityJavaTypes()) { String uri = GUI.typeUri(type); BasicConfig zone = HttpUtils.zone(setup.custom(), setup.zone()); String contextPath = zone.entry("home").or(uri("")); X.scaffold(type) .internal(true) .baseUri(Msc.uri(contextPath, uri)) .roles(Role.ADMINISTRATOR) .on(setup); } } return this; }
public static synchronized OnRoute page(String path) { return setup().page(path); }
static void register(Setup setup, String verb, String path, RouteOptions options, NParamLambda lambda) { HttpHandler handler = HttpHandlers.from(setup, lambda, options); setup.routes().on(verb, path, handler); setup.autoActivate(); }
public void reload() { reloaded = true; bootstrappedBeans.reset(); ioCContext.reset(); http().resetConfig(); defaults = new RouteOptions(); defaults.zone(zone); attributes().clear(); ViewResolver viewResolver = custom().viewResolver(); if (viewResolver instanceof AbstractViewResolver) { ((AbstractViewResolver) viewResolver).reset(); } }
public static Customization custom() { return On.setup().custom(); }
public static synchronized OnRoute put(String path) { return setup().put(path); }
public static synchronized OnRoute delete(String path) { return setup().delete(path); }
public static synchronized OnRoute post(String path) { return setup().post(path); }
public static synchronized OnRoute any(String path) { return setup().any(path); }