package io.lumify.web.devTools; import io.lumify.miniweb.Handler; import io.lumify.miniweb.handlers.StaticResourceHandler; import io.lumify.web.LumifyCsrfHandler; import io.lumify.web.WebApp; import io.lumify.web.WebAppPlugin; import io.lumify.web.devTools.ontology.SaveOntologyConcept; import io.lumify.web.devTools.user.*; import io.lumify.web.privilegeFilters.AdminPrivilegeFilter; import javax.servlet.ServletContext; public class DevToolsWebAppPlugin implements WebAppPlugin { @Override public void init(WebApp app, ServletContext servletContext, Handler authenticationHandler) { Class<? extends Handler> authenticationHandlerClass = authenticationHandler.getClass(); Class<? extends Handler> csrfHandlerClass = LumifyCsrfHandler.class; app.get("/jsc/io/lumify/web/devTools/less/vertex-editor.less", new StaticResourceHandler(getClass(), "/io/lumify/web/devTools/less/vertex-editor.less", "text/less")); app.get("/jsc/io/lumify/web/devTools/templates/vertex-editor.hbs", new StaticResourceHandler(getClass(), "/io/lumify/web/devTools/templates/vertex-editor.hbs", "text/html")); app.registerJavaScript("/io/lumify/web/devTools/vertex-editor-plugin.js"); app.registerResourceBundle("/io/lumify/web/devTools/messages.properties"); app.get("/jsc/io/lumify/web/devTools/templates/requeue.hbs", new StaticResourceHandler(getClass(), "/io/lumify/web/devTools/templates/requeue.hbs", "text/html")); app.registerJavaScript("/io/lumify/web/devTools/requeue-plugin.js"); app.get("/jsc/io/lumify/web/devTools/templates/ontology-upload.hbs", new StaticResourceHandler(getClass(), "/io/lumify/web/devTools/templates/ontology-upload.hbs", "text/html")); app.registerJavaScript("/io/lumify/web/devTools/ontology-upload-plugin.js"); app.get("/jsc/io/lumify/web/devTools/templates/ontology-edit.hbs", new StaticResourceHandler(getClass(), "/io/lumify/web/devTools/templates/ontology-edit.hbs", "text/html")); app.registerJavaScript("/io/lumify/web/devTools/ontology-edit-plugin.js"); app.get("/jsc/io/lumify/web/devTools/templates/user.hbs", new StaticResourceHandler(getClass(), "/io/lumify/web/devTools/templates/user.hbs", "text/html")); app.get("/jsc/io/lumify/web/devTools/templates/user-details.hbs", new StaticResourceHandler(getClass(), "/io/lumify/web/devTools/templates/user-details.hbs", "text/html")); app.registerJavaScript("/io/lumify/web/devTools/user-plugin.js"); app.post("/user/auth/add", authenticationHandlerClass, csrfHandlerClass, AdminPrivilegeFilter.class, UserAddAuthorization.class); app.post("/user/auth/remove", authenticationHandlerClass, csrfHandlerClass, AdminPrivilegeFilter.class, UserRemoveAuthorization.class); app.post("/user/delete", authenticationHandlerClass, csrfHandlerClass, AdminPrivilegeFilter.class, UserDelete.class); app.post("/user/privileges/update", authenticationHandlerClass, csrfHandlerClass, AdminPrivilegeFilter.class, UserUpdatePrivileges.class); app.post("/workspace/shareWithMe", authenticationHandlerClass, csrfHandlerClass, AdminPrivilegeFilter.class, WorkspaceShareWithMe.class); app.post("/admin/queueVertices", authenticationHandlerClass, csrfHandlerClass, AdminPrivilegeFilter.class, QueueVertices.class); app.post("/admin/queueEdges", authenticationHandlerClass, csrfHandlerClass, AdminPrivilegeFilter.class, QueueEdges.class); app.post("/admin/deleteVertex", authenticationHandlerClass, csrfHandlerClass, AdminPrivilegeFilter.class, DeleteVertex.class); app.post("/admin/saveOntologyConcept", authenticationHandlerClass, csrfHandlerClass, AdminPrivilegeFilter.class, SaveOntologyConcept.class); } }