Skip to content

Instantly share code, notes, and snippets.

@jeremyheiler
Last active August 29, 2015 14:02
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jeremyheiler/2322d241040c1dc0904e to your computer and use it in GitHub Desktop.
Save jeremyheiler/2322d241040c1dc0904e to your computer and use it in GitHub Desktop.
import clojure.java.api.Clojure;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
public class NreplContextListener implements ServletContextListener {
private Object server;
public NreplContextListener() {
Clojure.var("clojure.core", "require").invoke(Clojure.read("clojure.tools.nrepl.server"));
}
@Override
public void contextInitialized(ServletContextEvent sce) {
server = Clojure.var("clojure.tools.nrepl.server", "start-server").invoke(Clojure.read(":port"), 45454);
}
@Override
public void contextDestroyed(ServletContextEvent sce) {
if (server != null) {
Clojure.var("clojure.tools.nrepl.server", "stop-server").invoke(server);
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment