You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@juneau.apache.org by ja...@apache.org on 2017/02/25 17:03:07 UTC
incubator-juneau git commit: Add form post example to
SystemPropertiesResource
Repository: incubator-juneau
Updated Branches:
refs/heads/master 58a40e676 -> 300240033
Add form post example to SystemPropertiesResource
Project: http://git-wip-us.apache.org/repos/asf/incubator-juneau/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-juneau/commit/30024003
Tree: http://git-wip-us.apache.org/repos/asf/incubator-juneau/tree/30024003
Diff: http://git-wip-us.apache.org/repos/asf/incubator-juneau/diff/30024003
Branch: refs/heads/master
Commit: 300240033f7860ab488317a62bf1dc6cf9f72b1b
Parents: 58a40e6
Author: JamesBognar <ja...@apache.org>
Authored: Sat Feb 25 12:03:04 2017 -0500
Committer: JamesBognar <ja...@apache.org>
Committed: Sat Feb 25 12:03:04 2017 -0500
----------------------------------------------------------------------
.../examples/rest/SystemPropertiesResource.java | 33 ++++++++++++++++++--
1 file changed, 31 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30024003/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/SystemPropertiesResource.java
----------------------------------------------------------------------
diff --git a/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/SystemPropertiesResource.java b/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/SystemPropertiesResource.java
index 93748c9..2703f92 100644
--- a/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/SystemPropertiesResource.java
+++ b/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/SystemPropertiesResource.java
@@ -13,14 +13,18 @@
package org.apache.juneau.examples.rest;
import static org.apache.juneau.html.HtmlDocSerializerContext.*;
+import static org.apache.juneau.dto.html5.HtmlBuilder.*;
import java.util.*;
+import java.util.Map;
+import org.apache.juneau.dto.html5.*;
import org.apache.juneau.dto.swagger.*;
import org.apache.juneau.encoders.*;
import org.apache.juneau.microservice.*;
import org.apache.juneau.rest.*;
import org.apache.juneau.rest.annotation.*;
+import org.apache.juneau.rest.annotation.Body;
@RestResource(
path="/systemProperties",
@@ -28,7 +32,7 @@ import org.apache.juneau.rest.annotation.*;
description="REST interface for performing CRUD operations on system properties.",
properties={
@Property(name=SERIALIZER_quoteChar, value="'"),
- @Property(name=HTMLDOC_links, value="{up:'$R{requestParentURI}',options:'$R{servletURI}?method=OPTIONS',source:'$C{Source/gitHub}/org/apache/juneau/examples/rest/SystemPropertiesResource.java'}"),
+ @Property(name=HTMLDOC_links, value="{up:'$R{requestParentURI}',options:'$R{servletURI}?method=OPTIONS',form:'formPage',source:'$C{Source/gitHub}/org/apache/juneau/examples/rest/SystemPropertiesResource.java'}"),
},
stylesheet="styles/devops.css",
encoders=GzipEncoder.class,
@@ -74,7 +78,7 @@ public class SystemPropertiesResource extends Resource {
public String getSystemProperty(@Path String propertyName) throws Throwable {
return System.getProperty(propertyName);
}
-
+
@RestMethod(
name="PUT", path="/{propertyName}",
summary="Replace system property",
@@ -151,4 +155,29 @@ public class SystemPropertiesResource extends Resource {
public Swagger getOptions(RestRequest req) {
return req.getSwagger();
}
+
+ @RestMethod(
+ name="GET", path="/formPage",
+ summary="Form entry page",
+ description="A form post page for setting a single system property value",
+ guards=AdminGuard.class
+ )
+ public Form getFormPage() {
+ return form().method("POST").action("formPagePost").children(
+ h4("Set system property"),
+ "Name: ", input("text").name("name"), br(),
+ "Value: ", input("text").name("value"), br(), br(),
+ button("submit","Click me!").style("float:right")
+ );
+ }
+
+ @RestMethod(
+ name="POST", path="/formPagePost",
+ description="Accepts a simple form post of a system property name/value pair.",
+ guards=AdminGuard.class
+ )
+ public Redirect formPagePost(@FormData("name") String name, @FormData("value") String value) {
+ System.setProperty(name, value);
+ return new Redirect();
+ }
}
\ No newline at end of file