aboutsummaryrefslogtreecommitdiffstats
path: root/infrastructure/ace/bin/serve
diff options
context:
space:
mode:
authorAlexander Sulfrian <alexander@sulfrian.net>2010-06-08 09:01:43 +0200
committerAlexander Sulfrian <alexander@sulfrian.net>2010-06-08 09:01:43 +0200
commitd1fa08fdc9cb11dccee76d668ff85df30458c295 (patch)
tree1d19df6405103577d872902486792e8c23bce711 /infrastructure/ace/bin/serve
parentd7c5ad7d6263fd1baf9bfdbaa4c50b70ef2fbdb2 (diff)
parent70d1f9d6fcaefe611e778b8dbf3bafea8934aa08 (diff)
downloadetherpad-d1fa08fdc9cb11dccee76d668ff85df30458c295.tar.gz
etherpad-d1fa08fdc9cb11dccee76d668ff85df30458c295.tar.xz
etherpad-d1fa08fdc9cb11dccee76d668ff85df30458c295.zip
Merge remote branch 'upstream/master'
Conflicts: etherpad/src/etherpad/control/pro/admin/pro_admin_control.js etherpad/src/etherpad/control/pro/pro_main_control.js etherpad/src/etherpad/control/pro_help_control.js etherpad/src/etherpad/globals.js etherpad/src/etherpad/legacy_urls.js etherpad/src/etherpad/pne/pne_utils.js etherpad/src/etherpad/pro/pro_utils.js etherpad/src/main.js etherpad/src/plugins/fileUpload/templates/fileUpload.ejs etherpad/src/plugins/testplugin/templates/page.ejs etherpad/src/static/css/pad2_ejs.css etherpad/src/static/css/pro-help.css etherpad/src/static/img/jun09/pad/protop.gif etherpad/src/static/js/store.js etherpad/src/themes/default/templates/framed/framedheader-pro.ejs etherpad/src/themes/default/templates/main/home.ejs etherpad/src/themes/default/templates/pro-help/main.ejs etherpad/src/themes/default/templates/pro-help/pro-help-template.ejs infrastructure/com.etherpad/licensing.scala trunk/etherpad/src/etherpad/collab/ace/contentcollector.js trunk/etherpad/src/etherpad/collab/ace/linestylefilter.js trunk/etherpad/src/static/css/home-opensource.css trunk/etherpad/src/static/js/ace.js trunk/etherpad/src/static/js/linestylefilter_client.js trunk/etherpad/src/templates/email/eepnet_license_info.ejs trunk/etherpad/src/templates/pad/pad_body2.ejs trunk/etherpad/src/templates/pad/pad_content.ejs trunk/etherpad/src/templates/pad/padfull_body.ejs trunk/etherpad/src/templates/pro/admin/pne-license-manager.ejs
Diffstat (limited to 'infrastructure/ace/bin/serve')
-rwxr-xr-xinfrastructure/ace/bin/serve45
1 files changed, 45 insertions, 0 deletions
diff --git a/infrastructure/ace/bin/serve b/infrastructure/ace/bin/serve
new file mode 100755
index 0000000..e02e042
--- /dev/null
+++ b/infrastructure/ace/bin/serve
@@ -0,0 +1,45 @@
+#!/bin/bash
+scala -nocompdaemon -Dlog4j.mortbay.loglevel=WARN -classpath lib/jetty-6.1.7.jar:lib/jetty-util-6.1.7.jar:lib/servlet-api-2.5-6.1.3.jar $0 $@ &
+exit
+!#
+
+import org.mortbay.jetty.Server;
+import org.mortbay.jetty.servlet.Context;
+import org.mortbay.jetty.servlet.ServletHolder;
+import org.mortbay.jetty.servlet.DefaultServlet;
+import javax.servlet.http.{HttpServletRequest, HttpServletResponse};
+
+object NonCachingDefaultServlet extends DefaultServlet() {
+
+ private def setHeaders(response:HttpServletResponse) {
+ response.setHeader("Cache-Control","no-cache"); // for HTTP 1.1
+ response.setHeader("Pragma","no-cache"); //for HTTP 1.0
+ response.setDateHeader ("Expires", 0); //for proxy server
+ response.setHeader("Cache-Control","no-store"); //HTTP 1.1
+ }
+
+ override def doGet(request:HttpServletRequest, response:HttpServletResponse) {
+ setHeaders(response);
+ super.doGet(request, response);
+ }
+
+ override def doHead(request:HttpServletRequest, response:HttpServletResponse) {
+ setHeaders(response);
+ super.doHead(request, response);
+ }
+}
+
+val port = if (args.length >= 1) args(0).toInt else 80;
+val dir = if (args.length >= 2) args(1) else "www";
+
+val server = new Server(port);
+
+val context = new Context(server, "/", Context.SESSIONS);
+context.setResourceBase(dir+"/");
+context.addServlet(new ServletHolder(NonCachingDefaultServlet), "/");
+context.setWelcomeFiles(Array[String]("index.html"));
+
+println("pid: "+java.lang.management.ManagementFactory.getRuntimeMXBean.getName.split("@")(0));
+
+server.start();
+server.join();