# HG changeset patch -- Bitbucket.org # Project placebohttp # URL http://bitbucket.org/xitiomet/placebohttp/overview # User xitiomet # Date 1264458397 18000 # Node ID 3144d982a5c1be5a97a3db78514eb6aff56d5109 # Parent fc9e1983c2a030aafc5db6b2a32b818fdb5c6e87 Added JSON support. fixed standalone mode --- a/src/PlaceboBase.java +++ b/src/PlaceboBase.java @@ -11,7 +11,7 @@ public class PlaceboBase System.err.println(" --root [path] Set webroot"); System.err.println(" --port [port] Specify HTTP listening port"); System.err.println(" --help display this menu"); - System.err.println(" --swing Start up in swing control panel"); + System.err.println(" --headless Start up without swing"); System.err.println(""); System.err.println(""); } @@ -21,7 +21,7 @@ public class PlaceboBase int http_port = 80; boolean debug = false; String web_root = "placebohttp.jar/www"; - boolean start_engine = true; + boolean start_engine = false; for (int i = 0; i < args.length; i++) { @@ -55,15 +55,14 @@ public class PlaceboBase debug = true; } - if (arg.equals("--swing")) + if (arg.equals("--headless")) { - ControlPanel cp = new ControlPanel(); - cp.setPort(http_port); - cp.setWebRoot(web_root); - cp.setDebug(debug); + start_engine = true; } } + + if (start_engine) { CoreServer x = new CoreServer(); @@ -71,6 +70,11 @@ public class PlaceboBase x.setWebRoot(web_root); x.setDebug(debug); x.start(); + } else { + ControlPanel cp = new ControlPanel(); + cp.setPort(http_port); + cp.setWebRoot(web_root); + cp.setDebug(debug); } } --- a/Makefile +++ b/Makefile @@ -14,8 +14,10 @@ all: placebohttp # Alternate build using the java vm jvm: mkdir jvm-build - $(JAVAC) src/*.java src/org/openstatic/http/*.java -d jvm-build - $(JAVAC) src/*.java src/org/openstatic/placebo/*.java -d jvm-build + $(JAVAC) src/*.java + $(JAVAC) src/org/json/*.java -d jvm-build + $(JAVAC) src/org/openstatic/http/*.java -d jvm-build + $(JAVAC) src/org/openstatic/placebo/*.java -d jvm-build $(JAR) -cvmf manifest.mf placebohttp.jar -C jvm-build org -C jvm-build PlaceboBase.class www # Executable Rule for GCJ @@ -54,10 +56,37 @@ build/org/openstatic/placebo/CoreServer. build/org/openstatic/util/JTextAreaOutputStream.class: src/org/openstatic/util/JTextAreaOutputStream.java $(JC) $(JC_FLAGS) --classpath=$(CLASS_PATH) -C $< +build/org/openstatic/util/JSONUtil.class: src/org/openstatic/util/JSONUtil.java + $(JC) $(JC_FLAGS) --classpath=$(CLASS_PATH) -C $< + +# Org.JSON + +build/org/json/JSONArray.class: src/org/json/JSONArray.java build/org/json/JSONObject.class + $(JC) $(JC_FLAGS) -w --classpath=$(CLASS_PATH) -C $< + +build/org/json/JSONException.class: src/org/json/JSONException.java + $(JC) $(JC_FLAGS) -w --classpath=$(CLASS_PATH) -C $< + +build/org/json/JSONObject.class: src/org/json/JSONObject.java build/org/json/JSONException.class build/org/json/JSONTokener.class build/org/json/JSONString.class + $(JC) $(JC_FLAGS) -w --classpath=$(CLASS_PATH) -C $< + +build/org/json/JSONString.class: src/org/json/JSONString.java + $(JC) $(JC_FLAGS) -w --classpath=$(CLASS_PATH) -C $< + +build/org/json/JSONStringer.class: src/org/json/JSONStringer.java + $(JC) $(JC_FLAGS) -w --classpath=$(CLASS_PATH) -C $< + +build/org/json/JSONTokener.class: src/org/json/JSONTokener.java build/org/json/JSONException.class + $(JC) $(JC_FLAGS) -w --classpath=$(CLASS_PATH) -C $< + +build/org/json/JSONWriter.class: src/org/json/JSONWriter.java build/org/json/JSONObject.class + $(JC) $(JC_FLAGS) -w --classpath=$(CLASS_PATH) -C $< + + # Main Builds # ------------------------------------------------------------------------------- -placebohttp.jar: build/org/openstatic/http/PlaceboHttpServer.class build/org/openstatic/http/PlaceboSession.class build/org/openstatic/http/HttpRequest.class build/org/openstatic/http/HttpRequestThread.class build/org/openstatic/http/HttpResponse.class build/PlaceboBase.class build/org/openstatic/placebo/ControlPanel.class build/org/openstatic/placebo/CoreServer.class build/org/openstatic/util/JTextAreaOutputStream.class +placebohttp.jar: build/org/openstatic/http/PlaceboHttpServer.class build/org/openstatic/http/PlaceboSession.class build/org/openstatic/http/HttpRequest.class build/org/openstatic/http/HttpRequestThread.class build/org/openstatic/http/HttpResponse.class build/PlaceboBase.class build/org/openstatic/placebo/ControlPanel.class build/org/openstatic/placebo/CoreServer.class build/org/openstatic/util/JSONUtil.class build/org/openstatic/util/JTextAreaOutputStream.class build/org/json/JSONArray.class build/org/json/JSONException.class build/org/json/JSONObject.class build/org/json/JSONString.class build/org/json/JSONStringer.class build/org/json/JSONTokener.class build/org/json/JSONWriter.class $(JAR) -cvmf manifest.mf $@ -C build org -C build PlaceboBase.class www clean: