From: Mathieu Baudier Date: Wed, 16 Sep 2009 07:52:37 +0000 (+0000) Subject: Introduce Server JSON X-Git-Tag: argeo-commons-2.1.30~1808 X-Git-Url: https://git.argeo.org/?p=lgpl%2Fargeo-commons.git;a=commitdiff_plain;h=3c6f90576a923f66322b6364df6244abb6a0b57c Introduce Server JSON git-svn-id: https://svn.argeo.org/commons/trunk@2931 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc --- diff --git a/server/runtime/org.argeo.server.json/.classpath b/server/runtime/org.argeo.server.json/.classpath new file mode 100644 index 000000000..16f01e2ee --- /dev/null +++ b/server/runtime/org.argeo.server.json/.classpath @@ -0,0 +1,7 @@ + + + + + + + diff --git a/server/runtime/org.argeo.server.json/.project b/server/runtime/org.argeo.server.json/.project new file mode 100644 index 000000000..8150301f3 --- /dev/null +++ b/server/runtime/org.argeo.server.json/.project @@ -0,0 +1,23 @@ + + + org.argeo.server.json + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.maven.ide.eclipse.maven2Builder + + + + + + org.maven.ide.eclipse.maven2Nature + org.eclipse.jdt.core.javanature + + diff --git a/server/runtime/org.argeo.server.json/.settings/org.eclipse.jdt.core.prefs b/server/runtime/org.argeo.server.json/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 000000000..57c9743bc --- /dev/null +++ b/server/runtime/org.argeo.server.json/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,5 @@ +#Wed Sep 16 09:48:59 CEST 2009 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5 +org.eclipse.jdt.core.compiler.compliance=1.5 +org.eclipse.jdt.core.compiler.source=1.5 diff --git a/server/runtime/org.argeo.server.json/.settings/org.maven.ide.eclipse.prefs b/server/runtime/org.argeo.server.json/.settings/org.maven.ide.eclipse.prefs new file mode 100644 index 000000000..cb4dc85ab --- /dev/null +++ b/server/runtime/org.argeo.server.json/.settings/org.maven.ide.eclipse.prefs @@ -0,0 +1,9 @@ +#Wed Sep 16 09:47:45 CEST 2009 +activeProfiles= +eclipse.preferences.version=1 +fullBuildGoals=process-test-resources +includeModules=false +resolveWorkspaceProjects=true +resourceFilterGoals=process-resources resources\:testResources +skipCompilerPlugin=true +version=1 diff --git a/server/runtime/org.argeo.server.json/pom.xml b/server/runtime/org.argeo.server.json/pom.xml new file mode 100644 index 000000000..5b7991ba7 --- /dev/null +++ b/server/runtime/org.argeo.server.json/pom.xml @@ -0,0 +1,61 @@ + + 4.0.0 + + org.argeo.commons.server + runtime + 0.1.1-SNAPSHOT + .. + + org.argeo.server.json + Commons Server JSON + + + + org.apache.maven.plugins + maven-compiler-plugin + + + org.apache.maven.plugins + maven-source-plugin + + + org.apache.maven.plugins + maven-jar-plugin + + + org.apache.felix + maven-bundle-plugin + ${version.maven-bundle-plugin} + + + + org.argeo.* + + + + + + + + + + org.codehaus.jackson + com.springsource.org.codehaus.jackson.mapper + 1.0.0 + + + + + org.springframework + org.springframework.web.servlet + + + + + javax.servlet + com.springsource.javax.servlet + + + + diff --git a/server/runtime/org.argeo.server.json/src/main/java/org/argeo/server/json/mvc/JsonView.java b/server/runtime/org.argeo.server.json/src/main/java/org/argeo/server/json/mvc/JsonView.java new file mode 100644 index 000000000..fcd070a4a --- /dev/null +++ b/server/runtime/org.argeo.server.json/src/main/java/org/argeo/server/json/mvc/JsonView.java @@ -0,0 +1,47 @@ +package org.argeo.slc.web.mvc; + +import java.util.Map; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.springframework.web.servlet.view.AbstractView; + +/** Marshal one of the object of the map to the output. */ +public class JsonView extends AbstractView { + private String modelKey = null; + + public JsonView() { + } + + @Override + @SuppressWarnings(value = { "unchecked" }) + protected void renderMergedOutputModel(Map model, + HttpServletRequest request, HttpServletResponse response) + throws Exception { + final Object answer; + if (modelKey != null) { + if (!model.containsKey(modelKey)) + throw new SlcException("Key " + modelKey + + " not found in model."); + answer = model.get(modelKey); + } else { + if (model.size() != 1) + throw new SlcException( + "Model has a size different from 1. Specify a modelKey."); + answer = model.values().iterator().next(); + } + + if (answer instanceof JSONObject) { + ((JSONObject) answer).write(response.getWriter()); + } else { + JSONObject jsonObject = new JSONObject(answer); + jsonObject.write(response.getWriter()); + } + } + + public void setModelKey(String modelKey) { + this.modelKey = modelKey; + } + +} diff --git a/server/runtime/org.argeo.slc.server.json/.classpath b/server/runtime/org.argeo.slc.server.json/.classpath deleted file mode 100644 index 16f01e2ee..000000000 --- a/server/runtime/org.argeo.slc.server.json/.classpath +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/server/runtime/org.argeo.slc.server.json/.project b/server/runtime/org.argeo.slc.server.json/.project deleted file mode 100644 index 8150301f3..000000000 --- a/server/runtime/org.argeo.slc.server.json/.project +++ /dev/null @@ -1,23 +0,0 @@ - - - org.argeo.server.json - - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.maven.ide.eclipse.maven2Builder - - - - - - org.maven.ide.eclipse.maven2Nature - org.eclipse.jdt.core.javanature - - diff --git a/server/runtime/org.argeo.slc.server.json/.settings/org.eclipse.jdt.core.prefs b/server/runtime/org.argeo.slc.server.json/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 57c9743bc..000000000 --- a/server/runtime/org.argeo.slc.server.json/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,5 +0,0 @@ -#Wed Sep 16 09:48:59 CEST 2009 -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5 -org.eclipse.jdt.core.compiler.compliance=1.5 -org.eclipse.jdt.core.compiler.source=1.5 diff --git a/server/runtime/org.argeo.slc.server.json/.settings/org.maven.ide.eclipse.prefs b/server/runtime/org.argeo.slc.server.json/.settings/org.maven.ide.eclipse.prefs deleted file mode 100644 index cb4dc85ab..000000000 --- a/server/runtime/org.argeo.slc.server.json/.settings/org.maven.ide.eclipse.prefs +++ /dev/null @@ -1,9 +0,0 @@ -#Wed Sep 16 09:47:45 CEST 2009 -activeProfiles= -eclipse.preferences.version=1 -fullBuildGoals=process-test-resources -includeModules=false -resolveWorkspaceProjects=true -resourceFilterGoals=process-resources resources\:testResources -skipCompilerPlugin=true -version=1 diff --git a/server/runtime/org.argeo.slc.server.json/pom.xml b/server/runtime/org.argeo.slc.server.json/pom.xml deleted file mode 100644 index 5b7991ba7..000000000 --- a/server/runtime/org.argeo.slc.server.json/pom.xml +++ /dev/null @@ -1,61 +0,0 @@ - - 4.0.0 - - org.argeo.commons.server - runtime - 0.1.1-SNAPSHOT - .. - - org.argeo.server.json - Commons Server JSON - - - - org.apache.maven.plugins - maven-compiler-plugin - - - org.apache.maven.plugins - maven-source-plugin - - - org.apache.maven.plugins - maven-jar-plugin - - - org.apache.felix - maven-bundle-plugin - ${version.maven-bundle-plugin} - - - - org.argeo.* - - - - - - - - - - org.codehaus.jackson - com.springsource.org.codehaus.jackson.mapper - 1.0.0 - - - - - org.springframework - org.springframework.web.servlet - - - - - javax.servlet - com.springsource.javax.servlet - - - - diff --git a/server/runtime/org.argeo.slc.server.json/src/main/java/org/argeo/server/json/mvc/JsonView.java b/server/runtime/org.argeo.slc.server.json/src/main/java/org/argeo/server/json/mvc/JsonView.java deleted file mode 100644 index fcd070a4a..000000000 --- a/server/runtime/org.argeo.slc.server.json/src/main/java/org/argeo/server/json/mvc/JsonView.java +++ /dev/null @@ -1,47 +0,0 @@ -package org.argeo.slc.web.mvc; - -import java.util.Map; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.springframework.web.servlet.view.AbstractView; - -/** Marshal one of the object of the map to the output. */ -public class JsonView extends AbstractView { - private String modelKey = null; - - public JsonView() { - } - - @Override - @SuppressWarnings(value = { "unchecked" }) - protected void renderMergedOutputModel(Map model, - HttpServletRequest request, HttpServletResponse response) - throws Exception { - final Object answer; - if (modelKey != null) { - if (!model.containsKey(modelKey)) - throw new SlcException("Key " + modelKey - + " not found in model."); - answer = model.get(modelKey); - } else { - if (model.size() != 1) - throw new SlcException( - "Model has a size different from 1. Specify a modelKey."); - answer = model.values().iterator().next(); - } - - if (answer instanceof JSONObject) { - ((JSONObject) answer).write(response.getWriter()); - } else { - JSONObject jsonObject = new JSONObject(answer); - jsonObject.write(response.getWriter()); - } - } - - public void setModelKey(String modelKey) { - this.modelKey = modelKey; - } - -} diff --git a/server/runtime/pom.xml b/server/runtime/pom.xml new file mode 100644 index 000000000..73717be9d --- /dev/null +++ b/server/runtime/pom.xml @@ -0,0 +1,18 @@ + + + 4.0.0 + + org.argeo.commons + 0.1.1-SNAPSHOT + server + .. + + org.argeo.commons.server + runtime + Commons Security Runtime + pom + + org.argeo.server.json + + \ No newline at end of file