package org.kevoree.library.javase.webserver.codemirrorEditor.server; import org.kevoree.annotation.ComponentType; import org.kevoree.annotation.RequiredPort; import org.kevoree.annotation.Requires; import org.kevoree.framework.MessagePort; import org.kevoree.library.javase.webserver.FileServiceHelper; import org.kevoree.library.javase.webserver.KevoreeHttpRequest; import org.kevoree.library.javase.webserver.KevoreeHttpResponse; import org.kevoree.library.javase.webserver.ParentAbstractPage; import org.kevoree.library.javase.webserver.servlet.LocalServletRegistry; @ComponentType @Requires({ @RequiredPort(name = "htmlservice", type = org.kevoree.annotation.PortType.MESSAGE,optional=true) }) public class HtmlEditor extends ParentAbstractPage { private LocalServletRegistry servletRepository = null; public void startPage() { servletRepository = new LocalServletRegistry(){ @Override public String getCDefaultPath(){ return "/htmleditor"; } }; super.startPage(); servletRepository.registerServlet("/htmlEditor/htmlService",new HtmlServiceImpl(this)); //servletRepository.unregisterUrl(("/markdown2html/markdown2htmlservice"); } @Override public KevoreeHttpResponse process(final KevoreeHttpRequest request, final KevoreeHttpResponse response) { ClassLoader l = Thread.currentThread().getContextClassLoader(); Thread.currentThread().setContextClassLoader(HtmlEditor.class.getClassLoader() ); boolean res = servletRepository.tryURL(request.getUrl(),request,response); Thread.currentThread().setContextClassLoader(l ); if ( res ){ return response; } if (FileServiceHelper.checkStaticFile(request.getUrl(), this, request, response)) { return response; } if (FileServiceHelper.checkStaticFile("codemirrorEditor.html", this, request, response)) { return response; } response.setContent("Bad request1"); return response; } public void sendHtmlContent(String s) { if (isPortBinded("htmlservice")) { getPortByName("htmlservice", MessagePort.class).process(s); } } }