Author: sseifert
Date: Sat Nov 26 07:41:24 2016
New Revision: 1771434
URL: http://svn.apache.org/viewvc?rev=1771434&view=rev
Log:
SLING-6115 add select box for choosing predefined config names
Modified:
sling/trunk/contrib/extensions/contextaware-config/impl/src/main/java/org/apache/sling/caconfig/management/impl/console/ConfigurationWebConsolePlugin.java
Modified:
sling/trunk/contrib/extensions/contextaware-config/impl/src/main/java/org/apache/sling/caconfig/management/impl/console/ConfigurationWebConsolePlugin.java
URL:
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/contextaware-config/impl/src/main/java/org/apache/sling/caconfig/management/impl/console/ConfigurationWebConsolePlugin.java?rev=1771434&r1=1771433&r2=1771434&view=diff
==============================================================================
---
sling/trunk/contrib/extensions/contextaware-config/impl/src/main/java/org/apache/sling/caconfig/management/impl/console/ConfigurationWebConsolePlugin.java
(original)
+++
sling/trunk/contrib/extensions/contextaware-config/impl/src/main/java/org/apache/sling/caconfig/management/impl/console/ConfigurationWebConsolePlugin.java
Sat Nov 26 07:41:24 2016
@@ -107,7 +107,14 @@ public class ConfigurationWebConsolePlug
private void printResolutionTestTool(HttpServletRequest request,
PrintWriter pw) {
final String path = this.getParameter(request, "path", null);
- final String configName = this.getParameter(request, "configName",
null);
+ String configNameOther = this.getParameter(request, "configNameOther",
null);
+ String configName = this.getParameter(request, "configName", null);
+ if (configName == null) {
+ configName = configNameOther;
+ }
+ else {
+ configNameOther = null;
+ }
final boolean resourceCollection =
BooleanUtils.toBoolean(this.getParameter(request, "resourceCollection",
"false"));
ResourceResolver resolver = null;
@@ -136,7 +143,10 @@ public class ConfigurationWebConsolePlug
textField(pw, "Content Path", "path", path, alertMessage);
tableRows(pw);
- textField(pw, "Config Name", "configName", configName);
+ selectField(pw, "Config Name", "configName", configName,
configurationManager.getConfigurationNames());
+
+ tableRows(pw);
+ textField(pw, "Other Config Name", "configNameOther",
configNameOther);
tableRows(pw);
checkboxField(pw, "Resource collection", "resourceCollection",
resourceCollection);
@@ -268,6 +278,27 @@ public class ConfigurationWebConsolePlug
pw.println("</td>");
}
+ private void selectField(PrintWriter pw, String label, String fieldName,
String value, Collection<String> options) {
+ pw.print("<td style='width:20%'>");
+ pw.print(xss.encodeForHTMLAttr(label));
+ pw.println("</td>");
+ pw.print("<td><select name='");
+ pw.print(xss.encodeForHTMLAttr(fieldName));
+ pw.print("' style='width:100%'>");
+ pw.print("<option value=''>(please select)</option>");
+ for (String option : options) {
+ pw.print("<option");
+ if (StringUtils.equals(option, value)) {
+ pw.print(" selected");
+ }
+ pw.print(">");
+ pw.print(xss.encodeForHTMLAttr(option));
+ pw.print("</option>");
+ }
+ pw.print("</select>");
+ pw.println("</td>");
+ }
+
private void checkboxField(PrintWriter pw, String label, String fieldName,
boolean checked) {
pw.print("<td style='width:20%'>");
pw.print(xss.encodeForHTMLAttr(label));