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/10/08 14:44:33 UTC
[2/2] incubator-juneau git commit: Add PREFIX constants to all the
Context classes.
Add PREFIX constants to all the Context classes.
Project: http://git-wip-us.apache.org/repos/asf/incubator-juneau/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-juneau/commit/87f505b3
Tree: http://git-wip-us.apache.org/repos/asf/incubator-juneau/tree/87f505b3
Diff: http://git-wip-us.apache.org/repos/asf/incubator-juneau/diff/87f505b3
Branch: refs/heads/master
Commit: 87f505b38bf5ae115d968603504b077be1faea2e
Parents: 926b7cf
Author: JamesBognar <ja...@apache.org>
Authored: Sun Oct 8 10:44:28 2017 -0400
Committer: JamesBognar <ja...@apache.org>
Committed: Sun Oct 8 10:44:28 2017 -0400
----------------------------------------------------------------------
.../apache/juneau/jena/RdfParserContext.java | 4 +-
.../juneau/jena/RdfSerializerContext.java | 12 +-
.../java/org/apache/juneau/BeanContext.java | 156 ++++++++++---------
.../main/java/org/apache/juneau/ObjectMap.java | 23 +++
.../juneau/html/HtmlDocSerializerContext.java | 37 ++---
.../juneau/html/HtmlSerializerContext.java | 14 +-
.../juneau/json/JsonSerializerContext.java | 8 +-
.../msgpack/MsgPackSerializerContext.java | 4 +-
.../org/apache/juneau/parser/ParserContext.java | 12 +-
.../juneau/serializer/SerializerContext.java | 40 ++---
.../juneau/soap/SoapXmlSerializerContext.java | 4 +-
.../org/apache/juneau/uon/UonParserContext.java | 4 +-
.../apache/juneau/uon/UonSerializerContext.java | 8 +-
.../juneau/urlencoding/UrlEncodingContext.java | 60 -------
.../urlencoding/UrlEncodingParserBuilder.java | 4 +-
.../urlencoding/UrlEncodingParserContext.java | 22 ++-
.../urlencoding/UrlEncodingParserSession.java | 2 +-
.../urlencoding/UrlEncodingSerializer.java | 2 +-
.../UrlEncodingSerializerBuilder.java | 4 +-
.../UrlEncodingSerializerContext.java | 37 ++++-
.../UrlEncodingSerializerSession.java | 2 +-
.../urlencoding/annotation/UrlEncoding.java | 4 +-
.../org/apache/juneau/xml/XmlParserContext.java | 12 +-
.../apache/juneau/xml/XmlSerializerContext.java | 16 +-
.../juneau/yaml/proto/YamlParserContext.java | 2 +-
.../yaml/proto/YamlSerializerContext.java | 8 +-
.../apache/juneau/rest/test/ParamsResource.java | 5 +-
27 files changed, 277 insertions(+), 229 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/87f505b3/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParserContext.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParserContext.java b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParserContext.java
index 42833c4..53039f3 100644
--- a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParserContext.java
+++ b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParserContext.java
@@ -48,6 +48,8 @@ import org.apache.juneau.xml.*;
* </ul>
*/
public final class RdfParserContext extends ParserContext implements RdfCommonContext {
+
+ static final String PREFIX = "RdfParser.";
/**
* <b>Configuration property:</b> Trim whitespace from text elements.
@@ -62,7 +64,7 @@ public final class RdfParserContext extends ParserContext implements RdfCommonCo
* <p>
* If <jk>true</jk>, whitespace in text elements will be automatically trimmed.
*/
- public static final String RDF_trimWhitespace = "RdfParser.trimWhitespace";
+ public static final String RDF_trimWhitespace = PREFIX + "trimWhitespace";
final boolean trimWhitespace, looseCollections;
final String rdfLanguage;
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/87f505b3/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializerContext.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializerContext.java b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializerContext.java
index 2d5d6aa..3b050b5 100644
--- a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializerContext.java
+++ b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializerContext.java
@@ -48,6 +48,8 @@ import org.apache.juneau.xml.*;
* </ul>
*/
public final class RdfSerializerContext extends SerializerContext implements RdfCommonContext {
+
+ static final String PREFIX = "RdfSerializer.";
/**
* <b>Configuration property:</b> Add XSI data types to non-<code>String</code> literals.
@@ -59,7 +61,7 @@ public final class RdfSerializerContext extends SerializerContext implements Rdf
* <li><b>Session-overridable:</b> <jk>true</jk>
* </ul>
*/
- public static final String RDF_addLiteralTypes = "RdfSerializer.addLiteralTypes";
+ public static final String RDF_addLiteralTypes = PREFIX + "addLiteralTypes";
/**
* <b>Configuration property:</b> Add RDF root identifier property to root node.
@@ -80,7 +82,7 @@ public final class RdfSerializerContext extends SerializerContext implements Rdf
* If disabled, the parser has to search through the model to find any resources without incoming predicates to
* identify root notes, which can introduce a considerable performance degradation.
*/
- public static final String RDF_addRootProperty = "RdfSerializer.addRootProperty";
+ public static final String RDF_addRootProperty = PREFIX + "addRootProperty";
/**
* <b>Configuration property:</b> Auto-detect namespace usage.
@@ -99,7 +101,7 @@ public final class RdfSerializerContext extends SerializerContext implements Rdf
* If enabled, then the data structure will first be crawled looking for namespaces that will be encountered before
* the root element is serialized.
*/
- public static final String RDF_autoDetectNamespaces = "RdfSerializer.autoDetectNamespaces";
+ public static final String RDF_autoDetectNamespaces = PREFIX + "autoDetectNamespaces";
/**
* <b>Configuration property:</b> Default namespaces.
@@ -114,7 +116,7 @@ public final class RdfSerializerContext extends SerializerContext implements Rdf
* <p>
* The default list of namespaces associated with this serializer.
*/
- public static final String RDF_namespaces = "RdfSerializer.namespaces.list";
+ public static final String RDF_namespaces = PREFIX + "namespaces.list";
/**
* <b>Configuration property:</b> Add <js>"_type"</js> properties when needed.
@@ -137,7 +139,7 @@ public final class RdfSerializerContext extends SerializerContext implements Rdf
* When present, this value overrides the {@link SerializerContext#SERIALIZER_addBeanTypeProperties} setting and is
* provided to customize the behavior of specific serializers in a {@link SerializerGroup}.
*/
- public static final String RDF_addBeanTypeProperties = "RdfSerializer.addBeanTypeProperties";
+ public static final String RDF_addBeanTypeProperties = PREFIX + "addBeanTypeProperties";
final boolean
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/87f505b3/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContext.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContext.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContext.java
index d73abbf..762cb1b 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContext.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContext.java
@@ -59,7 +59,7 @@ import org.apache.juneau.transform.*;
* <p>
* Each bean context maintains a cache of {@link ClassMeta} objects that describe information about classes encountered.
* These <code>ClassMeta</code> objects are time-consuming to construct.
- * Therefore, instances of {@link BeanContext} that share the same <js>"BeanContext.*"</js> property values share
+ * Therefore, instances of {@link BeanContext} that share the same <js>"Bean.*"</js> property values share
* the same cache. This allows for efficient reuse of <code>ClassMeta</code> objects so that the information about
* classes only needs to be calculated once.
* Because of this, many of the properties defined on the {@link BeanContext} class cannot be overridden on the session.
@@ -230,11 +230,13 @@ import org.apache.juneau.transform.*;
@SuppressWarnings({"unchecked","rawtypes"})
public class BeanContext extends Context {
+ static final String PREFIX = "Bean.";
+
/**
* <b>Configuration property:</b> Beans require no-arg constructors.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.beansRequireDefaultConstructor"</js>
+ * <li><b>Name:</b> <js>"Bean.beansRequireDefaultConstructor"</js>
* <li><b>Data type:</b> <code>Boolean</code>
* <li><b>Default:</b> <jk>false</jk>
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -246,13 +248,13 @@ public class BeanContext extends Context {
* <p>
* The {@link Bean @Bean} annotation can be used on a class to override this setting when <jk>true</jk>.
*/
- public static final String BEAN_beansRequireDefaultConstructor = "BeanContext.beansRequireDefaultConstructor";
+ public static final String BEAN_beansRequireDefaultConstructor = PREFIX + "beansRequireDefaultConstructor";
/**
* <b>Configuration property:</b> Beans require {@link Serializable} interface.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.beansRequireSerializable"</js>
+ * <li><b>Name:</b> <js>"Bean.beansRequireSerializable"</js>
* <li><b>Data type:</b> <code>Boolean</code>
* <li><b>Default:</b> <jk>false</jk>
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -264,13 +266,13 @@ public class BeanContext extends Context {
* <p>
* The {@link Bean @Bean} annotation can be used on a class to override this setting when <jk>true</jk>.
*/
- public static final String BEAN_beansRequireSerializable = "BeanContext.beansRequireSerializable";
+ public static final String BEAN_beansRequireSerializable = PREFIX + "beansRequireSerializable";
/**
* <b>Configuration property:</b> Beans require setters for getters.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.beansRequireSettersForGetters"</js>
+ * <li><b>Name:</b> <js>"Bean.beansRequireSettersForGetters"</js>
* <li><b>Data type:</b> <code>Boolean</code>
* <li><b>Default:</b> <jk>false</jk>
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -280,13 +282,13 @@ public class BeanContext extends Context {
* If <jk>true</jk>, only getters that have equivalent setters will be considered as properties on a bean.
* Otherwise, they will be ignored.
*/
- public static final String BEAN_beansRequireSettersForGetters = "BeanContext.beansRequireSettersForGetters";
+ public static final String BEAN_beansRequireSettersForGetters = PREFIX + "beansRequireSettersForGetters";
/**
* <b>Configuration property:</b> Beans require at least one property.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.beansRequireSomeProperties"</js>
+ * <li><b>Name:</b> <js>"Bean.beansRequireSomeProperties"</js>
* <li><b>Data type:</b> <code>Boolean</code>
* <li><b>Default:</b> <jk>true</jk>
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -298,14 +300,14 @@ public class BeanContext extends Context {
* <p>
* The {@link Bean @Bean} annotation can be used on a class to override this setting when <jk>true</jk>.
*/
- public static final String BEAN_beansRequireSomeProperties = "BeanContext.beansRequireSomeProperties";
+ public static final String BEAN_beansRequireSomeProperties = PREFIX + "beansRequireSomeProperties";
/**
* <b>Configuration property:</b> {@link BeanMap#put(String,Object) BeanMap.put()} method will return old property
* value.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.beanMapPutReturnsOldValue"</js>
+ * <li><b>Name:</b> <js>"Bean.beanMapPutReturnsOldValue"</js>
* <li><b>Data type:</b> <code>Boolean</code>
* <li><b>Default:</b> <jk>false</jk>
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -318,25 +320,25 @@ public class BeanContext extends Context {
* <p>
* Disabled by default because it introduces a slight performance penalty.
*/
- public static final String BEAN_beanMapPutReturnsOldValue = "BeanContext.beanMapPutReturnsOldValue";
+ public static final String BEAN_beanMapPutReturnsOldValue = PREFIX + "beanMapPutReturnsOldValue";
/**
* <b>Configuration property:</b> Look for bean constructors with the specified minimum visibility.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.beanConstructorVisibility"</js>
+ * <li><b>Name:</b> <js>"Bean.beanConstructorVisibility"</js>
* <li><b>Data type:</b> {@link Visibility}
* <li><b>Default:</b> {@link Visibility#PUBLIC}
* <li><b>Session-overridable:</b> <jk>false</jk>
* </ul>
*/
- public static final String BEAN_beanConstructorVisibility = "BeanContext.beanConstructorVisibility";
+ public static final String BEAN_beanConstructorVisibility = PREFIX + "beanConstructorVisibility";
/**
* <b>Configuration property:</b> Look for bean classes with the specified minimum visibility.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.beanClassVisibility"</js>
+ * <li><b>Name:</b> <js>"Bean.beanClassVisibility"</js>
* <li><b>Data type:</b> {@link Visibility}
* <li><b>Default:</b> {@link Visibility#PUBLIC}
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -347,13 +349,13 @@ public class BeanContext extends Context {
* For example, if the visibility is <code>PUBLIC</code> and the bean class is <jk>protected</jk>, then the class
* will not be interpreted as a bean class.
*/
- public static final String BEAN_beanClassVisibility = "BeanContext.beanClassVisibility";
+ public static final String BEAN_beanClassVisibility = PREFIX + "beanClassVisibility";
/**
* <b>Configuration property:</b> Look for bean fields with the specified minimum visibility.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.beanFieldVisibility"</js>
+ * <li><b>Name:</b> <js>"Bean.beanFieldVisibility"</js>
* <li><b>Data type:</b> {@link Visibility}
* <li><b>Default:</b> {@link Visibility#PUBLIC}
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -367,13 +369,13 @@ public class BeanContext extends Context {
* <p>
* Use {@link Visibility#NONE} to prevent bean fields from being interpreted as bean properties altogether.
*/
- public static final String BEAN_beanFieldVisibility = "BeanContext.beanFieldVisibility";
+ public static final String BEAN_beanFieldVisibility = PREFIX + "beanFieldVisibility";
/**
* <b>Configuration property:</b> Look for bean methods with the specified minimum visibility.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.methodVisibility"</js>
+ * <li><b>Name:</b> <js>"Bean.methodVisibility"</js>
* <li><b>Data type:</b> {@link Visibility}
* <li><b>Default:</b> {@link Visibility#PUBLIC}
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -384,13 +386,13 @@ public class BeanContext extends Context {
* For example, if the visibility is <code>PUBLIC</code> and the bean method is <jk>protected</jk>, then the method
* will not be interpreted as a bean getter or setter.
*/
- public static final String BEAN_methodVisibility = "BeanContext.methodVisibility";
+ public static final String BEAN_methodVisibility = PREFIX + "methodVisibility";
/**
* <b>Configuration property:</b> Use Java {@link Introspector} for determining bean properties.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.useJavaBeanIntrospector"</js>
+ * <li><b>Name:</b> <js>"Bean.useJavaBeanIntrospector"</js>
* <li><b>Data type:</b> <code>Boolean</code>
* <li><b>Default:</b> <jk>false</jk>
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -400,13 +402,13 @@ public class BeanContext extends Context {
* Using the built-in Java bean introspector will not pick up fields or non-standard getters/setters.
* Most {@link Bean @Bean} annotations will be ignored.
*/
- public static final String BEAN_useJavaBeanIntrospector = "BeanContext.useJavaBeanIntrospector";
+ public static final String BEAN_useJavaBeanIntrospector = PREFIX + "useJavaBeanIntrospector";
/**
* <b>Configuration property:</b> Use interface proxies.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.useInterfaceProxies"</js>
+ * <li><b>Name:</b> <js>"Bean.useInterfaceProxies"</js>
* <li><b>Data type:</b> <code>Boolean</code>
* <li><b>Default:</b> <jk>true</jk>
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -416,13 +418,13 @@ public class BeanContext extends Context {
* If <jk>true</jk>, then interfaces will be instantiated as proxy classes through the use of an
* {@link InvocationHandler} if there is no other way of instantiating them.
*/
- public static final String BEAN_useInterfaceProxies = "BeanContext.useInterfaceProxies";
+ public static final String BEAN_useInterfaceProxies = PREFIX + "useInterfaceProxies";
/**
* <b>Configuration property:</b> Ignore unknown properties.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.ignoreUnknownBeanProperties"</js>
+ * <li><b>Name:</b> <js>"Bean.ignoreUnknownBeanProperties"</js>
* <li><b>Data type:</b> <code>Boolean</code>
* <li><b>Default:</b> <jk>false</jk>
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -432,13 +434,13 @@ public class BeanContext extends Context {
* If <jk>true</jk>, trying to set a value on a non-existent bean property will silently be ignored.
* Otherwise, a {@code RuntimeException} is thrown.
*/
- public static final String BEAN_ignoreUnknownBeanProperties = "BeanContext.ignoreUnknownBeanProperties";
+ public static final String BEAN_ignoreUnknownBeanProperties = PREFIX + "ignoreUnknownBeanProperties";
/**
* <b>Configuration property:</b> Ignore unknown properties with null values.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.ignoreUnknownNullBeanProperties"</js>
+ * <li><b>Name:</b> <js>"Bean.ignoreUnknownNullBeanProperties"</js>
* <li><b>Data type:</b> <code>Boolean</code>
* <li><b>Default:</b> <jk>true</jk>
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -448,13 +450,13 @@ public class BeanContext extends Context {
* If <jk>true</jk>, trying to set a <jk>null</jk> value on a non-existent bean property will silently be ignored.
* Otherwise, a {@code RuntimeException} is thrown.
*/
- public static final String BEAN_ignoreUnknownNullBeanProperties = "BeanContext.ignoreUnknownNullBeanProperties";
+ public static final String BEAN_ignoreUnknownNullBeanProperties = PREFIX + "ignoreUnknownNullBeanProperties";
/**
* <b>Configuration property:</b> Ignore properties without setters.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.ignorePropertiesWithoutSetters"</js>
+ * <li><b>Name:</b> <js>"Bean.ignorePropertiesWithoutSetters"</js>
* <li><b>Data type:</b> <code>Boolean</code>
* <li><b>Default:</b> <jk>true</jk>
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -464,13 +466,13 @@ public class BeanContext extends Context {
* If <jk>true</jk>, trying to set a value on a bean property without a setter will silently be ignored.
* Otherwise, a {@code RuntimeException} is thrown.
*/
- public static final String BEAN_ignorePropertiesWithoutSetters = "BeanContext.ignorePropertiesWithoutSetters";
+ public static final String BEAN_ignorePropertiesWithoutSetters = PREFIX + "ignorePropertiesWithoutSetters";
/**
* <b>Configuration property:</b> Ignore invocation errors on getters.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.ignoreInvocationExceptionsOnGetters"</js>
+ * <li><b>Name:</b> <js>"Bean.ignoreInvocationExceptionsOnGetters"</js>
* <li><b>Data type:</b> <code>Boolean</code>
* <li><b>Default:</b> <jk>false</jk>
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -480,13 +482,13 @@ public class BeanContext extends Context {
* If <jk>true</jk>, errors thrown when calling bean getter methods will silently be ignored.
* Otherwise, a {@code BeanRuntimeException} is thrown.
*/
- public static final String BEAN_ignoreInvocationExceptionsOnGetters = "BeanContext.ignoreInvocationExceptionsOnGetters";
+ public static final String BEAN_ignoreInvocationExceptionsOnGetters = PREFIX + "ignoreInvocationExceptionsOnGetters";
/**
* <b>Configuration property:</b> Ignore invocation errors on setters.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.ignoreInvocationExceptionsOnSetters"</js>
+ * <li><b>Name:</b> <js>"Bean.ignoreInvocationExceptionsOnSetters"</js>
* <li><b>Data type:</b> <code>Boolean</code>
* <li><b>Default:</b> <jk>false</jk>
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -496,13 +498,13 @@ public class BeanContext extends Context {
* If <jk>true</jk>, errors thrown when calling bean setter methods will silently be ignored.
* Otherwise, a {@code BeanRuntimeException} is thrown.
*/
- public static final String BEAN_ignoreInvocationExceptionsOnSetters = "BeanContext.ignoreInvocationExceptionsOnSetters";
+ public static final String BEAN_ignoreInvocationExceptionsOnSetters = PREFIX + "ignoreInvocationExceptionsOnSetters";
/**
* <b>Configuration property:</b> Sort bean properties in alphabetical order.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.sortProperties"</js>
+ * <li><b>Name:</b> <js>"Bean.sortProperties"</js>
* <li><b>Data type:</b> <code>Boolean</code>
* <li><b>Default:</b> <jk>false</jk>
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -519,13 +521,13 @@ public class BeanContext extends Context {
* to force bean properties to be in a particular order and can just alter the order of the fields/methods
* in the Java file.
*/
- public static final String BEAN_sortProperties = "BeanContext.sortProperties";
+ public static final String BEAN_sortProperties = PREFIX + "sortProperties";
/**
* <b>Configuration property:</b> Packages whose classes should not be considered beans.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.notBeanPackages.set"</js>
+ * <li><b>Name:</b> <js>"Bean.notBeanPackages.set"</js>
* <li><b>Data type:</b> <code>Set<String></code>
* <li><b>Default:</b>
* <ul>
@@ -550,23 +552,23 @@ public class BeanContext extends Context {
* <p>
* Note that you can specify prefix patterns to include all subpackages.
*/
- public static final String BEAN_notBeanPackages = "BeanContext.notBeanPackages.set";
+ public static final String BEAN_notBeanPackages = PREFIX + "notBeanPackages.set";
/**
* <b>Configuration property:</b> Add to packages whose classes should not be considered beans.
*/
- public static final String BEAN_notBeanPackages_add = "BeanContext.notBeanPackages.set.add";
+ public static final String BEAN_notBeanPackages_add = PREFIX + "notBeanPackages.set.add";
/**
* <b>Configuration property:</b> Remove from packages whose classes should not be considered beans.
*/
- public static final String BEAN_notBeanPackages_remove = "BeanContext.notBeanPackages.set.remove";
+ public static final String BEAN_notBeanPackages_remove = PREFIX + "notBeanPackages.set.remove";
/**
* <b>Configuration property:</b> Classes to be excluded from consideration as being beans.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.notBeanClasses.set"</js>
+ * <li><b>Name:</b> <js>"Bean.notBeanClasses.set"</js>
* <li><b>Data type:</b> <code>Set<Class></code>
* <li><b>Default:</b> empty set
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -576,23 +578,23 @@ public class BeanContext extends Context {
* Not-bean classes are typically converted to <code>Strings</code> during serialization even if they appear to be
* bean-like.
*/
- public static final String BEAN_notBeanClasses = "BeanContext.notBeanClasses.set";
+ public static final String BEAN_notBeanClasses = PREFIX + "notBeanClasses.set";
/**
* <b>Configuration property:</b> Add to classes that should not be considered beans.
*/
- public static final String BEAN_notBeanClasses_add = "BeanContext.notBeanClasses.set.add";
+ public static final String BEAN_notBeanClasses_add = PREFIX + "notBeanClasses.set.add";
/**
* <b>Configuration property:</b> Remove from classes that should not be considered beans.
*/
- public static final String BEAN_notBeanClasses_remove = "BeanContext.notBeanClasses.set.remove";
+ public static final String BEAN_notBeanClasses_remove = PREFIX + "notBeanClasses.set.remove";
/**
* <b>Configuration property:</b> Bean filters to apply to beans.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.beanFilters.list"</js>
+ * <li><b>Name:</b> <js>"Bean.beanFilters.list"</js>
* <li><b>Data type:</b> <code>List<Class></code>
* <li><b>Default:</b> empty list
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -616,23 +618,23 @@ public class BeanContext extends Context {
* All other bean properties will be ignored.
* </ul>
*/
- public static final String BEAN_beanFilters = "BeanContext.beanFilters.list";
+ public static final String BEAN_beanFilters = PREFIX + "beanFilters.list";
/**
* <b>Configuration property:</b> Add to bean filters.
*/
- public static final String BEAN_beanFilters_add = "BeanContext.beanFilters.list.add";
+ public static final String BEAN_beanFilters_add = PREFIX + "beanFilters.list.add";
/**
* <b>Configuration property:</b> Remove from bean filters.
*/
- public static final String BEAN_beanFilters_remove = "BeanContext.beanFilters.list.remove";
+ public static final String BEAN_beanFilters_remove = PREFIX + "beanFilters.list.remove";
/**
* <b>Configuration property:</b> POJO swaps to apply to Java objects.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.pojoSwaps.list"</js>
+ * <li><b>Name:</b> <js>"Bean.pojoSwaps.list"</js>
* <li><b>Data type:</b> <code>List<Class></code>
* <li><b>Default:</b> empty list
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -650,23 +652,23 @@ public class BeanContext extends Context {
* When multiple swaps are applicable to the same class, the media type pattern defined by
* {@link PojoSwap#forMediaTypes()} or {@link Swap#mediaTypes()} are used to come up with the best match.
*/
- public static final String BEAN_pojoSwaps = "BeanContext.pojoSwaps.list";
+ public static final String BEAN_pojoSwaps = PREFIX + "pojoSwaps.list";
/**
* <b>Configuration property:</b> Add to POJO swap classes.
*/
- public static final String BEAN_pojoSwaps_add = "BeanContext.pojoSwaps.list.add";
+ public static final String BEAN_pojoSwaps_add = PREFIX + "pojoSwaps.list.add";
/**
* <b>Configuration property:</b> Remove from POJO swap classes.
*/
- public static final String BEAN_pojoSwaps_remove = "BeanContext.pojoSwaps.list.remove";
+ public static final String BEAN_pojoSwaps_remove = PREFIX + "pojoSwaps.list.remove";
/**
* <b>Configuration property:</b> Implementation classes for interfaces and abstract classes.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.implClasses.map"</js>
+ * <li><b>Name:</b> <js>"Bean.implClasses.map"</js>
* <li><b>Data type:</b> <code>Map<Class,Class></code>
* <li><b>Default:</b> empty map
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -677,18 +679,18 @@ public class BeanContext extends Context {
* interface/abstract class so that instances of the implementation class are used when instantiated (e.g. during a
* parse).
*/
- public static final String BEAN_implClasses = "BeanContext.implClasses.map";
+ public static final String BEAN_implClasses = PREFIX + "implClasses.map";
/**
* <b>Configuration property:</b> Add an implementation class.
*/
- public static final String BEAN_implClasses_put = "BeanContext.implClasses.map.put";
+ public static final String BEAN_implClasses_put = PREFIX + "implClasses.map.put";
/**
* <b>Configuration property:</b> Explicitly specify visible bean properties.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.includeProperties"</js>
+ * <li><b>Name:</b> <js>"Bean.includeProperties"</js>
* <li><b>Data type:</b> <code>Map<String,String></code>
* <li><b>Default:</b> <code>{}</code>
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -709,18 +711,18 @@ public class BeanContext extends Context {
* <p>
* Setting applies to specified class and all subclasses.
*/
- public static final String BEAN_includeProperties = "BeanContext.includeProperties.map";
+ public static final String BEAN_includeProperties = PREFIX + "includeProperties.map";
/**
* <b>Configuration property:</b> Explicitly specify visible bean properties.
*/
- public static final String BEAN_includeProperties_put = "BeanContext.includeProperties.map.put";
+ public static final String BEAN_includeProperties_put = PREFIX + "includeProperties.map.put";
/**
* <b>Configuration property:</b> Exclude specified properties from beans.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.excludeProperties"</js>
+ * <li><b>Name:</b> <js>"Bean.excludeProperties"</js>
* <li><b>Data type:</b> <code>Map<String,String></code>
* <li><b>Default:</b> <code>{}</code>
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -741,18 +743,18 @@ public class BeanContext extends Context {
* <p>
* Setting applies to specified class and all subclasses.
*/
- public static final String BEAN_excludeProperties = "BeanContext.excludeProperties.map";
+ public static final String BEAN_excludeProperties = PREFIX + "excludeProperties.map";
/**
* <b>Configuration property:</b> Exclude specified properties from beans.
*/
- public static final String BEAN_excludeProperties_put = "BeanContext.excludeProperties.map.put";
+ public static final String BEAN_excludeProperties_put = PREFIX + "excludeProperties.map.put";
/**
* <b>Configuration property:</b> Bean lookup dictionary.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.beanDictionary.list"</js>
+ * <li><b>Name:</b> <js>"Bean.beanDictionary.list"</js>
* <li><b>Data type:</b> <code>List<Class></code>
* <li><b>Default:</b> empty list
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -768,35 +770,35 @@ public class BeanContext extends Context {
* annotations.
* </ul>
*/
- public static final String BEAN_beanDictionary = "BeanContext.beanDictionary.list";
+ public static final String BEAN_beanDictionary = PREFIX + "beanDictionary.list";
/**
* <b>Configuration property:</b> Add to bean dictionary.
*/
- public static final String BEAN_beanDictionary_add = "BeanContext.beanDictionary.list.add";
+ public static final String BEAN_beanDictionary_add = PREFIX + "beanDictionary.list.add";
/**
* <b>Configuration property:</b> Remove from bean dictionary.
*/
- public static final String BEAN_beanDictionary_remove = "BeanContext.beanDictionary.list.remove";
+ public static final String BEAN_beanDictionary_remove = PREFIX + "beanDictionary.list.remove";
/**
* <b>Configuration property:</b> Name to use for the bean type properties used to represent a bean type.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.beanTypePropertyName"</js>
+ * <li><b>Name:</b> <js>"Bean.beanTypePropertyName"</js>
* <li><b>Data type:</b> <code>String</code>
* <li><b>Default:</b> <js>"_type"</js>
* <li><b>Session-overridable:</b> <jk>false</jk>
* </ul>
*/
- public static final String BEAN_beanTypePropertyName = "BeanContext.beanTypePropertyName";
+ public static final String BEAN_beanTypePropertyName = PREFIX + "beanTypePropertyName";
/**
* <b>Configuration property:</b> Default parser to use when converting <code>Strings</code> to POJOs.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.defaultParser"</js>
+ * <li><b>Name:</b> <js>"Bean.defaultParser"</js>
* <li><b>Data type:</b> <code>Class</code>
* <li><b>Default:</b> {@link JsonSerializer}
* <li><b>Session-overridable:</b> <jk>false</jk>
@@ -805,13 +807,13 @@ public class BeanContext extends Context {
* <p>
* Used in the in the {@link BeanSession#convertToType(Object, Class)} method.
*/
- public static final String BEAN_defaultParser = "BeanContext.defaultParser";
+ public static final String BEAN_defaultParser = PREFIX + "defaultParser";
/**
* <b>Configuration property:</b> Locale.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.locale"</js>
+ * <li><b>Name:</b> <js>"Bean.locale"</js>
* <li><b>Data type:</b> <code>Locale</code>
* <li><b>Default:</b> <code>Locale.getDefault()</code>
* <li><b>Session-overridable:</b> <jk>true</jk>
@@ -820,13 +822,13 @@ public class BeanContext extends Context {
* <p>
* Used in the in the {@link BeanSession#convertToType(Object, Class)} method.
*/
- public static final String BEAN_locale = "BeanContext.locale";
+ public static final String BEAN_locale = PREFIX + "locale";
/**
* <b>Configuration property:</b> TimeZone.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.timeZone"</js>
+ * <li><b>Name:</b> <js>"Bean.timeZone"</js>
* <li><b>Data type:</b> <code>TimeZone</code>
* <li><b>Default:</b> <jk>null</jk>
* <li><b>Session-overridable:</b> <jk>true</jk>
@@ -835,13 +837,13 @@ public class BeanContext extends Context {
* <p>
* Used in the in the {@link BeanSession#convertToType(Object, Class)} method.
*/
- public static final String BEAN_timeZone = "BeanContext.timeZone";
+ public static final String BEAN_timeZone = PREFIX + "timeZone";
/**
* <b>Configuration property:</b> Media type.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.mediaType"</js>
+ * <li><b>Name:</b> <js>"Bean.mediaType"</js>
* <li><b>Data type:</b> <code>MediaType</code>
* <li><b>Default:</b> <jk>null</jk>
* <li><b>Session-overridable:</b> <jk>true</jk>
@@ -850,13 +852,13 @@ public class BeanContext extends Context {
* <p>
* Specifies a default media type value for serializer and parser sessions.
*/
- public static final String BEAN_mediaType = "BeanContext.mediaType";
+ public static final String BEAN_mediaType = PREFIX + "mediaType";
/**
* <b>Configuration property:</b> Debug mode.
*
* <ul>
- * <li><b>Name:</b> <js>"BeanContext.debug"</js>
+ * <li><b>Name:</b> <js>"Bean.debug"</js>
* <li><b>Data type:</b> <code>Boolean</code>
* <li><b>Default:</b> <jk>false</jk>
* <li><b>Session-overridable:</b> <jk>true</jk>
@@ -880,7 +882,7 @@ public class BeanContext extends Context {
* in order to determine how that method was invoked.
* </ul>
*/
- public static final String BEAN_debug = "BeanContext.debug";
+ public static final String BEAN_debug = PREFIX + "debug";
/*
* The default package pattern exclusion list.
@@ -990,7 +992,7 @@ public class BeanContext extends Context {
public BeanContext(PropertyStore ps) {
super(ps);
- PropertyStore.PropertyMap pm = ps.getPropertyMap("BeanContext");
+ PropertyStore.PropertyMap pm = ps.getPropertyMap("Bean");
hashCode = pm.hashCode();
classLoader = ps.classLoader;
defaultParser = ps.defaultParser;
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/87f505b3/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/ObjectMap.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/ObjectMap.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/ObjectMap.java
index e3ab9bc..4c376d2 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/ObjectMap.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/ObjectMap.java
@@ -1180,6 +1180,29 @@ public class ObjectMap extends LinkedHashMap<String,Object> {
}
/**
+ * Returns <jk>true</jk> if this map contains a key with the specified string prefix.
+ *
+ * @param prefix The string prefix.
+ * @return <jk>true</jk> if this map contains a key with the specified string prefix.
+ */
+ public boolean containsKeyPrefix(String prefix) {
+ for (String s : super.keySet())
+ if (s.startsWith(prefix))
+ return true;
+ if (inner != null) {
+ if (inner instanceof ObjectMap) {
+ if (((ObjectMap)inner).containsKeyPrefix(prefix))
+ return true;
+ return false;
+ }
+ for (String s : inner.keySet())
+ if (s.startsWith(prefix))
+ return true;
+ }
+ return false;
+ }
+
+ /**
* Returns <jk>true</jk> if this map contains the specified key, ignoring the inner map if it exists.
*
* @param key The key to look up.
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/87f505b3/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializerContext.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializerContext.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializerContext.java
index 13c022a..6296ff3 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializerContext.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializerContext.java
@@ -77,7 +77,8 @@ import org.apache.juneau.*;
*/
public final class HtmlDocSerializerContext extends HtmlSerializerContext {
- static final String HTMLDOC = "HtmlDocSerializer.";
+ @SuppressWarnings("hiding")
+ static final String PREFIX = "HtmlDocSerializer.";
/**
* <b>Configuration property:</b> Header section contents.
@@ -107,7 +108,7 @@ public final class HtmlDocSerializerContext extends HtmlSerializerContext {
* <p>
* A value of <js>"NONE"</js> can be used to represent no value to differentiate it from an empty string.
*/
- public static final String HTMLDOC_header = HTMLDOC + "header";
+ public static final String HTMLDOC_header = PREFIX + "header";
/**
* <b>Configuration property:</b> Page navigation links.
@@ -172,12 +173,12 @@ public final class HtmlDocSerializerContext extends HtmlSerializerContext {
* <jk>public class</jk> AddressBookResource <jk>extends</jk> RestServletJenaDefault {
* </p>
*/
- public static final String HTMLDOC_navlinks = HTMLDOC + "navlinks.list";
+ public static final String HTMLDOC_navlinks = PREFIX + "navlinks.list";
/**
* <b>Configuration property:</b> Add to the {@link #HTMLDOC_navlinks} property.
*/
- public static final String HTMLDOC_navlinks_add = HTMLDOC + "navlinks.list.add";
+ public static final String HTMLDOC_navlinks_add = PREFIX + "navlinks.list.add";
/**
* <b>Configuration property:</b> Nav section contents.
@@ -210,7 +211,7 @@ public final class HtmlDocSerializerContext extends HtmlSerializerContext {
* <p>
* A value of <js>"NONE"</js> can be used to represent no value to differentiate it from an empty string.
*/
- public static final String HTMLDOC_nav = HTMLDOC + "nav";
+ public static final String HTMLDOC_nav = PREFIX + "nav";
/**
* <b>Configuration property:</b> Aside section contents.
@@ -248,7 +249,7 @@ public final class HtmlDocSerializerContext extends HtmlSerializerContext {
* <p>
* A value of <js>"NONE"</js> can be used to represent no value to differentiate it from an empty string.
*/
- public static final String HTMLDOC_aside = HTMLDOC + "aside";
+ public static final String HTMLDOC_aside = PREFIX + "aside";
/**
* <b>Configuration property:</b> Footer section contents.
@@ -280,7 +281,7 @@ public final class HtmlDocSerializerContext extends HtmlSerializerContext {
* <p>
* A value of <js>"NONE"</js> can be used to represent no value to differentiate it from an empty string.
*/
- public static final String HTMLDOC_footer = HTMLDOC + "footer";
+ public static final String HTMLDOC_footer = PREFIX + "footer";
/**
* <b>Configuration property:</b> No-results message.
@@ -307,7 +308,7 @@ public final class HtmlDocSerializerContext extends HtmlSerializerContext {
* <p>
* A value of <js>"NONE"</js> can be used to represent no value to differentiate it from an empty string.
*/
- public static final String HTMLDOC_noResultsMessage = HTMLDOC + "noResultsMessage";
+ public static final String HTMLDOC_noResultsMessage = PREFIX + "noResultsMessage";
/**
* <b>Configuration property:</b> Prevent word wrap on page.
@@ -322,7 +323,7 @@ public final class HtmlDocSerializerContext extends HtmlSerializerContext {
* <p>
* Adds <js>"* {white-space:nowrap}"</js> to the CSS instructions on the page to prevent word wrapping.
*/
- public static final String HTMLDOC_nowrap = HTMLDOC + "nowrap";
+ public static final String HTMLDOC_nowrap = PREFIX + "nowrap";
/**
* <b>Configuration property:</b> Stylesheet import URLs.
@@ -343,12 +344,12 @@ public final class HtmlDocSerializerContext extends HtmlSerializerContext {
* <p>
* A value of <js>"NONE"</js> can be used to represent no value to differentiate it from an empty string.
*/
- public static final String HTMLDOC_stylesheet = HTMLDOC + "stylesheet";
+ public static final String HTMLDOC_stylesheet = PREFIX + "stylesheet";
/**
* <b>Configuration property:</b> Add to the {@link #HTMLDOC_stylesheet} property.
*/
- public static final String HTMLDOC_stylesheet_add = HTMLDOC + "stylesheet.list.add";
+ public static final String HTMLDOC_stylesheet_add = PREFIX + "stylesheet.list.add";
/**
* <b>Configuration property:</b> CSS style code.
@@ -386,12 +387,12 @@ public final class HtmlDocSerializerContext extends HtmlSerializerContext {
* )
* </p>
*/
- public static final String HTMLDOC_style = HTMLDOC + "style.list";
+ public static final String HTMLDOC_style = PREFIX + "style.list";
/**
* <b>Configuration property:</b> Add to the {@link #HTMLDOC_style} property.
*/
- public static final String HTMLDOC_style_add = HTMLDOC + "style.list.add";
+ public static final String HTMLDOC_style_add = PREFIX + "style.list.add";
/**
* <b>Configuration property:</b> Javascript code.
@@ -428,12 +429,12 @@ public final class HtmlDocSerializerContext extends HtmlSerializerContext {
* )
* </p>
*/
- public static final String HTMLDOC_script = HTMLDOC + "script.list";
+ public static final String HTMLDOC_script = PREFIX + "script.list";
/**
* <b>Configuration property:</b> Add to the {@link #HTMLDOC_script} property.
*/
- public static final String HTMLDOC_script_add = HTMLDOC + "script.list.add";
+ public static final String HTMLDOC_script_add = PREFIX + "script.list.add";
/**
* <b>Configuration property:</b> Additional head section content.
@@ -470,12 +471,12 @@ public final class HtmlDocSerializerContext extends HtmlSerializerContext {
* )
* </p>
*/
- public static final String HTMLDOC_head = HTMLDOC + "head.list";
+ public static final String HTMLDOC_head = PREFIX + "head.list";
/**
* <b>Configuration property:</b> Add to the {@link #HTMLDOC_head} property.
*/
- public static final String HTMLDOC_links_add = HTMLDOC + "head.list.add";
+ public static final String HTMLDOC_links_add = PREFIX + "head.list.add";
/**
* <b>Configuration property:</b> HTML document template.
@@ -503,7 +504,7 @@ public final class HtmlDocSerializerContext extends HtmlSerializerContext {
* )
* </p>
*/
- public static final String HTMLDOC_template = HTMLDOC + "template";
+ public static final String HTMLDOC_template = PREFIX + "template";
final String[] style, stylesheet, script, navlinks, head;
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/87f505b3/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSerializerContext.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSerializerContext.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSerializerContext.java
index a9f34b5..0f3c03d 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSerializerContext.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSerializerContext.java
@@ -41,6 +41,8 @@ import org.apache.juneau.xml.*;
*/
public class HtmlSerializerContext extends XmlSerializerContext {
+ static final String PREFIX = "HtmlSerializer.";
+
/**
* <b>Configuration property:</b> Anchor text source.
*
@@ -72,7 +74,7 @@ public class HtmlSerializerContext extends XmlSerializerContext {
* (e.g. <js>"http://localhost:9080/foobar#anchorTextHere"</js>)
* </ul>
*/
- public static final String HTML_uriAnchorText = "HtmlSerializer.uriAnchorText";
+ public static final String HTML_uriAnchorText = PREFIX + "uriAnchorText";
/** Constant for {@link HtmlSerializerContext#HTML_uriAnchorText} property. */
public static final String PROPERTY_NAME = "PROPERTY_NAME";
@@ -100,7 +102,7 @@ public class HtmlSerializerContext extends XmlSerializerContext {
* If a string looks like a URL (e.g. starts with <js>"http://"</js> or <js>"https://"</js>, then treat it like a URL
* and make it into a hyperlink based on the rules specified by {@link #HTML_uriAnchorText}.
*/
- public static final String HTML_detectLinksInStrings = "HtmlSerializer.detectLinksInStrings";
+ public static final String HTML_detectLinksInStrings = PREFIX + "detectLinksInStrings";
/**
* <b>Configuration property:</b> Look for link labels in the <js>"label"</js> parameter of the URL.
@@ -118,7 +120,7 @@ public class HtmlSerializerContext extends XmlSerializerContext {
* <p>
* The parameter name can be changed via the {@link #HTML_labelParameter} property.
*/
- public static final String HTML_lookForLabelParameters = "HtmlSerializer.lookForLabelParameters";
+ public static final String HTML_lookForLabelParameters = PREFIX + "lookForLabelParameters";
/**
* <b>Configuration property:</b> The parameter name to use when using {@link #HTML_lookForLabelParameters}.
@@ -130,7 +132,7 @@ public class HtmlSerializerContext extends XmlSerializerContext {
* <li><b>Session-overridable:</b> <jk>true</jk>
* </ul>
*/
- public static final String HTML_labelParameter = "HtmlSerializer.labelParameter";
+ public static final String HTML_labelParameter = PREFIX + "labelParameter";
/**
* <b>Configuration property:</b> Add key/value headers on bean/map tables.
@@ -142,7 +144,7 @@ public class HtmlSerializerContext extends XmlSerializerContext {
* <li><b>Session-overridable:</b> <jk>true</jk>
* </ul>
*/
- public static final String HTML_addKeyValueTableHeaders = "HtmlSerializer.addKeyValueTableHeaders";
+ public static final String HTML_addKeyValueTableHeaders = PREFIX + "addKeyValueTableHeaders";
/**
* <b>Configuration property:</b> Add <js>"_type"</js> properties when needed.
@@ -165,7 +167,7 @@ public class HtmlSerializerContext extends XmlSerializerContext {
* When present, this value overrides the {@link SerializerContext#SERIALIZER_addBeanTypeProperties} setting and is
* provided to customize the behavior of specific serializers in a {@link SerializerGroup}.
*/
- public static final String HTML_addBeanTypeProperties = "HtmlSerializer.addBeanTypeProperties";
+ public static final String HTML_addBeanTypeProperties = PREFIX + "addBeanTypeProperties";
final String uriAnchorText;
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/87f505b3/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSerializerContext.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSerializerContext.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSerializerContext.java
index 3e07022..0284aee 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSerializerContext.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSerializerContext.java
@@ -40,6 +40,8 @@ import org.apache.juneau.serializer.*;
*/
public final class JsonSerializerContext extends SerializerContext {
+ static final String PREFIX = "JsonSerializer.";
+
/**
* <b>Configuration property:</b> Simple JSON mode.
*
@@ -54,7 +56,7 @@ public final class JsonSerializerContext extends SerializerContext {
* If <jk>true</jk>, JSON attribute names will only be quoted when necessary.
* Otherwise, they are always quoted.
*/
- public static final String JSON_simpleMode = "JsonSerializer.simpleMode";
+ public static final String JSON_simpleMode = PREFIX + "simpleMode";
/**
* <b>Configuration property:</b> Prefix solidus <js>'/'</js> characters with escapes.
@@ -72,7 +74,7 @@ public final class JsonSerializerContext extends SerializerContext {
* However, if you're embedding JSON in an HTML script tag, this setting prevents confusion when trying to serialize
* <xt><\/script></xt>.
*/
- public static final String JSON_escapeSolidus = "JsonSerializer.escapeSolidus";
+ public static final String JSON_escapeSolidus = PREFIX + "escapeSolidus";
/**
* <b>Configuration property:</b> Add <js>"_type"</js> properties when needed.
@@ -95,7 +97,7 @@ public final class JsonSerializerContext extends SerializerContext {
* When present, this value overrides the {@link SerializerContext#SERIALIZER_addBeanTypeProperties} setting and is
* provided to customize the behavior of specific serializers in a {@link SerializerGroup}.
*/
- public static final String JSON_addBeanTypeProperties = "JsonSerializer.addBeanTypeProperties";
+ public static final String JSON_addBeanTypeProperties = PREFIX + "addBeanTypeProperties";
final boolean
simpleMode,
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/87f505b3/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackSerializerContext.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackSerializerContext.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackSerializerContext.java
index f1365e1..285b564 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackSerializerContext.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackSerializerContext.java
@@ -40,6 +40,8 @@ import org.apache.juneau.serializer.*;
*/
public final class MsgPackSerializerContext extends SerializerContext {
+ static final String PREFIX = "MsgPackSerializer.";
+
/**
* <b>Configuration property:</b> Add <js>"_type"</js> properties when needed.
*
@@ -61,7 +63,7 @@ public final class MsgPackSerializerContext extends SerializerContext {
* When present, this value overrides the {@link SerializerContext#SERIALIZER_addBeanTypeProperties} setting and is
* provided to customize the behavior of specific serializers in a {@link SerializerGroup}.
*/
- public static final String MSGPACK_addBeanTypeProperties = "MsgPackSerializer.addBeanTypeProperties";
+ public static final String MSGPACK_addBeanTypeProperties = PREFIX + "addBeanTypeProperties";
final boolean
addBeanTypeProperties;
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/87f505b3/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserContext.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserContext.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserContext.java
index 583649f..09a5e4c 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserContext.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserContext.java
@@ -20,6 +20,8 @@ import org.apache.juneau.json.*;
*/
public class ParserContext extends BeanContext {
+ static final String PREFIX = "Parser.";
+
/**
* Default context with all default values.
*/
@@ -40,7 +42,7 @@ public class ParserContext extends BeanContext {
* If <jk>true</jk>, string values will be trimmed of whitespace using {@link String#trim()} before being added to
* the POJO.
*/
- public static final String PARSER_trimStrings = "Parser.trimStrings";
+ public static final String PARSER_trimStrings = PREFIX + "trimStrings";
/**
* <b>Configuration property:</b> Strict mode.
@@ -82,7 +84,7 @@ public class ParserContext extends BeanContext {
* </tr>
* </table>
*/
- public static final String PARSER_strict = "Parser.strict";
+ public static final String PARSER_strict = PREFIX + "strict";
/**
* <b>Configuration property:</b> Input stream charset.
@@ -100,7 +102,7 @@ public class ParserContext extends BeanContext {
* <p>
* Used when passing in input streams and byte arrays to {@link Parser#parse(Object, Class)}.
*/
- public static final String PARSER_inputStreamCharset = "Parser.inputStreamCharset";
+ public static final String PARSER_inputStreamCharset = PREFIX + "inputStreamCharset";
/**
* <b>Configuration property:</b> File charset.
@@ -121,7 +123,7 @@ public class ParserContext extends BeanContext {
* <p>
* <js>"default"</js> can be used to indicate the JVM default file system charset.
*/
- public static final String PARSER_fileCharset = "Parser.fileCharset";
+ public static final String PARSER_fileCharset = PREFIX + "fileCharset";
/**
* <b>Configuration property:</b> Parser listener.
@@ -136,7 +138,7 @@ public class ParserContext extends BeanContext {
* <p>
* Class used to listen for errors and warnings that occur during parsing.
*/
- public static final String PARSER_listener = "PARSER.listener";
+ public static final String PARSER_listener = PREFIX + "listener";
final boolean trimStrings, strict;
final String inputStreamCharset, fileCharset;
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/87f505b3/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerContext.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerContext.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerContext.java
index 8d50aa8..a2a01bc 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerContext.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerContext.java
@@ -20,6 +20,8 @@ import org.apache.juneau.annotation.*;
*/
public class SerializerContext extends BeanContext {
+ static final String PREFIX = "Serializer.";
+
/**
* Default context with all default values.
*/
@@ -41,7 +43,7 @@ public class SerializerContext extends BeanContext {
* If this depth is exceeded, an exception is thrown.
* This prevents stack overflows from occurring when trying to serialize models with recursive references.
*/
- public static final String SERIALIZER_maxDepth = "Serializer.maxDepth";
+ public static final String SERIALIZER_maxDepth = PREFIX + "maxDepth";
/**
* <b>Configuration property:</b> Initial depth.
@@ -57,7 +59,7 @@ public class SerializerContext extends BeanContext {
* The initial indentation level at the root.
* Useful when constructing document fragments that need to be indented at a certain level.
*/
- public static final String SERIALIZER_initialDepth = "Serializer.initialDepth";
+ public static final String SERIALIZER_initialDepth = PREFIX + "initialDepth";
/**
* <b>Configuration property:</b> Automatically detect POJO recursions.
@@ -88,7 +90,7 @@ public class SerializerContext extends BeanContext {
* <li>Checking for recursion can cause a small performance penalty.
* </ul>
*/
- public static final String SERIALIZER_detectRecursions = "Serializer.detectRecursions";
+ public static final String SERIALIZER_detectRecursions = PREFIX + "detectRecursions";
/**
* <b>Configuration property:</b> Ignore recursion errors.
@@ -108,7 +110,7 @@ public class SerializerContext extends BeanContext {
* If <jk>true</jk>, when we encounter the same object when serializing a tree, we set the value to <jk>null</jk>.
* Otherwise, an exception is thrown.
*/
- public static final String SERIALIZER_ignoreRecursions = "Serializer.ignoreRecursions";
+ public static final String SERIALIZER_ignoreRecursions = PREFIX + "ignoreRecursions";
/**
* <b>Configuration property:</b> Use whitespace.
@@ -126,7 +128,7 @@ public class SerializerContext extends BeanContext {
* <p>
* This setting does not apply to the MessagePack serializer.
*/
- public static final String SERIALIZER_useWhitespace = "Serializer.useWhitespace";
+ public static final String SERIALIZER_useWhitespace = PREFIX + "useWhitespace";
/**
* <b>Configuration property:</b> Maximum indentation.
@@ -144,7 +146,7 @@ public class SerializerContext extends BeanContext {
* <p>
* This setting does not apply to the MessagePack or RDF serializers.
*/
- public static final String SERIALIZER_maxIndent = "Serializer.maxIndent";
+ public static final String SERIALIZER_maxIndent = PREFIX + "maxIndent";
/**
* <b>Configuration property:</b> Add <js>"_type"</js> properties when needed.
@@ -163,7 +165,7 @@ public class SerializerContext extends BeanContext {
* For example, when serializing a {@code Map<String,Object>} field, where the bean class cannot be determined from
* the value type.
*/
- public static final String SERIALIZER_addBeanTypeProperties = "Serializer.addBeanTypeProperties";
+ public static final String SERIALIZER_addBeanTypeProperties = PREFIX + "addBeanTypeProperties";
/**
* <b>Configuration property:</b> Quote character.
@@ -181,7 +183,7 @@ public class SerializerContext extends BeanContext {
* <p>
* This setting does not apply to the MessagePack or RDF serializers.
*/
- public static final String SERIALIZER_quoteChar = "Serializer.quoteChar";
+ public static final String SERIALIZER_quoteChar = PREFIX + "quoteChar";
/**
* <b>Configuration property:</b> Trim null bean property values.
@@ -203,7 +205,7 @@ public class SerializerContext extends BeanContext {
* Map entries with <jk>null</jk> values will be lost.
* </ul>
*/
- public static final String SERIALIZER_trimNullProperties = "Serializer.trimNullProperties";
+ public static final String SERIALIZER_trimNullProperties = PREFIX + "trimNullProperties";
/**
* <b>Configuration property:</b> Trim empty lists and arrays.
@@ -227,7 +229,7 @@ public class SerializerContext extends BeanContext {
* Bean properties with empty list values will not be set.
* </ul>
*/
- public static final String SERIALIZER_trimEmptyCollections = "Serializer.trimEmptyLists";
+ public static final String SERIALIZER_trimEmptyCollections = PREFIX + "trimEmptyLists";
/**
* <b>Configuration property:</b> Trim empty maps.
@@ -249,7 +251,7 @@ public class SerializerContext extends BeanContext {
* Bean properties with empty map values will not be set.
* </ul>
*/
- public static final String SERIALIZER_trimEmptyMaps = "Serializer.trimEmptyMaps";
+ public static final String SERIALIZER_trimEmptyMaps = PREFIX + "trimEmptyMaps";
/**
* <b>Configuration property:</b> Trim strings.
@@ -264,7 +266,7 @@ public class SerializerContext extends BeanContext {
* <p>
* If <jk>true</jk>, string values will be trimmed of whitespace using {@link String#trim()} before being serialized.
*/
- public static final String SERIALIZER_trimStrings = "Serializer.trimStrings";
+ public static final String SERIALIZER_trimStrings = PREFIX + "trimStrings";
/**
* <b>Configuration property:</b> URI context bean.
@@ -284,7 +286,7 @@ public class SerializerContext extends BeanContext {
* <js>"{authority:'http://localhost:10000',contextRoot:'/myContext',servletPath:'/myServlet',pathInfo:'/foo'}"</js>
* </p>
*/
- public static final String SERIALIZER_uriContext = "Serializer.uriContext";
+ public static final String SERIALIZER_uriContext = PREFIX + "uriContext";
/**
* <b>Configuration property:</b> URI resolution.
@@ -315,7 +317,7 @@ public class SerializerContext extends BeanContext {
* - Don't do any URL resolution.
* </ul>
*/
- public static final String SERIALIZER_uriResolution = "Serializer.uriResolution";
+ public static final String SERIALIZER_uriResolution = PREFIX + "uriResolution";
/**
* <b>Configuration property:</b> URI relativity.
@@ -344,7 +346,7 @@ public class SerializerContext extends BeanContext {
* - Relative URIs should be considered relative to the request URI.
* </ul>
*/
- public static final String SERIALIZER_uriRelativity = "Serializer.uriRelativity";
+ public static final String SERIALIZER_uriRelativity = PREFIX + "uriRelativity";
/**
* <b>Configuration property:</b> Sort arrays and collections alphabetically.
@@ -359,7 +361,7 @@ public class SerializerContext extends BeanContext {
* <p>
* Note that this introduces a performance penalty.
*/
- public static final String SERIALIZER_sortCollections = "Serializer.sortCollections";
+ public static final String SERIALIZER_sortCollections = PREFIX + "sortCollections";
/**
* <b>Configuration property:</b> Sort maps alphabetically.
@@ -374,7 +376,7 @@ public class SerializerContext extends BeanContext {
* <p>
* Note that this introduces a performance penalty.
*/
- public static final String SERIALIZER_sortMaps = "Serializer.sortMaps";
+ public static final String SERIALIZER_sortMaps = PREFIX + "sortMaps";
/**
* <b>Configuration property:</b> Abridged output.
@@ -394,7 +396,7 @@ public class SerializerContext extends BeanContext {
* For example, when serializing a POJO with a {@link Bean#typeName()} value, a <js>"_type"</js> will be added when
* this setting is disabled, but not added when it is enabled.
*/
- public static final String SERIALIZER_abridged = "Serializer.abridged";
+ public static final String SERIALIZER_abridged = PREFIX + "abridged";
/**
* <b>Configuration property:</b> Serializer listener.
@@ -409,7 +411,7 @@ public class SerializerContext extends BeanContext {
* <p>
* Class used to listen for errors and warnings that occur during serialization.
*/
- public static final String SERIALIZER_listener = "Serializer.listener";
+ public static final String SERIALIZER_listener = PREFIX + "listener";
final int maxDepth, initialDepth, maxIndent;
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/87f505b3/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerContext.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerContext.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerContext.java
index 77f64cc..6b2f4a2 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerContext.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerContext.java
@@ -44,6 +44,8 @@ import org.apache.juneau.xml.*;
*/
public final class SoapXmlSerializerContext extends XmlSerializerContext {
+ static final String PREFIX = "SoapXmlSerializer.";
+
/**
* Constructor
*
@@ -65,5 +67,5 @@ public final class SoapXmlSerializerContext extends XmlSerializerContext {
* <li><b>Default:</b> <js>"http://www.w3.org/2003/05/soap-envelope"</js>
* </ul>
*/
- public static final String SOAPXML_SOAPAction = "SoapXmlSerializer.SOAPAction";
+ public static final String SOAPXML_SOAPAction = PREFIX + "SOAPAction";
}
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/87f505b3/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserContext.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserContext.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserContext.java
index aa5a02a..bbc5509 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserContext.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserContext.java
@@ -41,6 +41,8 @@ import org.apache.juneau.urlencoding.*;
*/
public class UonParserContext extends ParserContext {
+ static final String PREFIX = "UonParser.";
+
/**
* <b>Configuration property:</b> Decode <js>"%xx"</js> sequences.
*
@@ -55,7 +57,7 @@ public class UonParserContext extends ParserContext {
* Specify <jk>true</jk> if URI encoded characters should be decoded, <jk>false</jk> if they've already been decoded
* before being passed to this parser.
*/
- public static final String UON_decodeChars = "UonParser.decodeChars";
+ public static final String UON_decodeChars = PREFIX + "decodeChars";
final boolean
decodeChars;
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/87f505b3/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializerContext.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializerContext.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializerContext.java
index f20dba1..952259b 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializerContext.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializerContext.java
@@ -41,6 +41,8 @@ import org.apache.juneau.urlencoding.*;
*/
public class UonSerializerContext extends SerializerContext {
+ static final String PREFIX = "UonSerializer.";
+
/**
* <b>Configuration property:</b> Encode non-valid URI characters.
*
@@ -59,7 +61,7 @@ public class UonSerializerContext extends SerializerContext {
* Set to <jk>false</jk> if parameter value is being passed to some other code that will already perform
* URL-encoding of non-valid URI characters.
*/
- public static final String UON_encodeChars = "UonSerializer.encodeChars";
+ public static final String UON_encodeChars = PREFIX + "encodeChars";
/**
* <b>Configuration property:</b> Add <js>"_type"</js> properties when needed.
@@ -82,7 +84,7 @@ public class UonSerializerContext extends SerializerContext {
* When present, this value overrides the {@link SerializerContext#SERIALIZER_addBeanTypeProperties} setting and is
* provided to customize the behavior of specific serializers in a {@link SerializerGroup}.
*/
- public static final String UON_addBeanTypeProperties = "UonSerializer.addBeanTypeProperties";
+ public static final String UON_addBeanTypeProperties = PREFIX + "addBeanTypeProperties";
/**
* <b>Configuration property:</b> Format to use for query/form-data/header values.
@@ -114,7 +116,7 @@ public class UonSerializerContext extends SerializerContext {
* interfaces.
* </ul>
*/
- public static final String UON_paramFormat = "UonSerializer.paramFormat";
+ public static final String UON_paramFormat = PREFIX + "paramFormat";
final boolean
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/87f505b3/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingContext.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingContext.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingContext.java
deleted file mode 100644
index 3c71a4a..0000000
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingContext.java
+++ /dev/null
@@ -1,60 +0,0 @@
-// ***************************************************************************************************************************
-// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file *
-// * distributed with this work for additional information regarding copyright ownership. The ASF licenses this file *
-// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance *
-// * with the License. You may obtain a copy of the License at *
-// * *
-// * http://www.apache.org/licenses/LICENSE-2.0 *
-// * *
-// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an *
-// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the *
-// * specific language governing permissions and limitations under the License. *
-// ***************************************************************************************************************************
-package org.apache.juneau.urlencoding;
-
-/**
- * Configurable properties on the {@link UrlEncodingSerializer} and {@link UrlEncodingParser} classes.
- *
- * <p>
- * Use the {@link UrlEncodingSerializerBuilder#property(String, Object)} and
- * {@link UrlEncodingParserBuilder#property(String, Object)} methods to set property values.
- */
-public final class UrlEncodingContext implements Cloneable {
-
- /**
- * Serialize bean property collections/arrays as separate key/value pairs ({@link Boolean}, default=<jk>false</jk>).
- *
- * <p>
- * If <jk>false</jk>, serializing the array <code>[1,2,3]</code> results in <code>?key=$a(1,2,3)</code>.
- * If <jk>true</jk>, serializing the same array results in <code>?key=1&key=2&key=3</code>.
- *
- * <p>
- * Example:
- * <p class='bcode'>
- * <jk>public class</jk> A {
- * <jk>public</jk> String[] f1 = {<js>"a"</js>,<js>"b"</js>};
- * <jk>public</jk> List<String> f2 = <jk>new</jk> LinkedList<String>(Arrays.<jsm>asList</jsm>(<jk>new</jk> String[]{<js>"c"</js>,<js>"d"</js>}));
- * }
- *
- * UrlEncodingSerializer s1 = UrlEncodingSerializer.<jsf>DEFAULT</jsf>;
- * UrlEncodingSerializer s2 = <jk>new</jk> UrlEncodingSerializerBuilder().expandedParams(<jk>true</jk>).build();
- *
- * String ss1 = s1.serialize(<jk>new</jk> A()); <jc>// Produces "f1=(a,b)&f2=(c,d)"</jc>
- * String ss2 = s2.serialize(<jk>new</jk> A()); <jc>// Produces "f1=a&f1=b&f2=c&f2=d"</jc>
- * </p>
- *
- * <p>
- * This option only applies to beans.
- *
- * <h5 class='section'>Notes:</h5>
- * <ul>
- * <li>If parsing multi-part parameters, it's highly recommended to use <code>Collections</code> or <code>Lists</code>
- * as bean property types instead of arrays since arrays have to be recreated from scratch every time a value
- * is added to it.
- * </ul>
- */
- public static final String URLENC_expandedParams = "UrlEncoding.expandedParams";
-
- boolean
- expandedParams = false;
-}
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/87f505b3/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserBuilder.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserBuilder.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserBuilder.java
index 71b6383..72abc1e 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserBuilder.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserBuilder.java
@@ -97,10 +97,10 @@ public class UrlEncodingParserBuilder extends UonParserBuilder {
*
* @param value The new value for this property.
* @return This object (for method chaining).
- * @see UrlEncodingContext#URLENC_expandedParams
+ * @see UrlEncodingParserContext#URLENC_expandedParams
*/
public UrlEncodingParserBuilder expandedParams(boolean value) {
- return property(UrlEncodingContext.URLENC_expandedParams, value);
+ return property(UrlEncodingParserContext.URLENC_expandedParams, value);
}
@Override /* UonParser */
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/87f505b3/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserContext.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserContext.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserContext.java
index fbcb41b..426dbc0 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserContext.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserContext.java
@@ -27,6 +27,26 @@ import org.apache.juneau.uon.*;
*/
public class UrlEncodingParserContext extends UonParserContext {
+ static final String PREFIX = "UrlEncodingParser.";
+
+ /**
+ * Parser bean property collections/arrays as separate key/value pairs ({@link Boolean}, default=<jk>false</jk>).
+ *
+ * <p>
+ * This is the parser-side equivalent of the {@link UrlEncodingSerializerContext#URLENC_expandedParams} setting.
+ *
+ * <p>
+ * This option only applies to beans.
+ *
+ * <h5 class='section'>Notes:</h5>
+ * <ul>
+ * <li>If parsing multi-part parameters, it's highly recommended to use <code>Collections</code> or <code>Lists</code>
+ * as bean property types instead of arrays since arrays have to be recreated from scratch every time a value
+ * is added to it.
+ * </ul>
+ */
+ public static final String URLENC_expandedParams = PREFIX + "expandedParams";
+
final boolean
expandedParams;
@@ -40,7 +60,7 @@ public class UrlEncodingParserContext extends UonParserContext {
*/
public UrlEncodingParserContext(PropertyStore ps) {
super(ps);
- this.expandedParams = ps.getProperty(UrlEncodingContext.URLENC_expandedParams, boolean.class, false);
+ this.expandedParams = ps.getProperty(URLENC_expandedParams, boolean.class, false);
}
@Override /* Context */
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/87f505b3/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserSession.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserSession.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserSession.java
index a3ebea4..4f7409a 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserSession.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserSession.java
@@ -48,7 +48,7 @@ public class UrlEncodingParserSession extends UonParserSession {
if (p.isEmpty()) {
expandedParams = ctx.expandedParams;
} else {
- expandedParams = p.getBoolean(UrlEncodingContext.URLENC_expandedParams, false);
+ expandedParams = p.getBoolean(UrlEncodingParserContext.URLENC_expandedParams, false);
}
}
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/87f505b3/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializer.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializer.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializer.java
index 9170cc2..65c800c 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializer.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializer.java
@@ -14,7 +14,7 @@ package org.apache.juneau.urlencoding;
import static org.apache.juneau.serializer.SerializerContext.*;
import static org.apache.juneau.uon.UonSerializerContext.*;
-import static org.apache.juneau.urlencoding.UrlEncodingContext.*;
+import static org.apache.juneau.urlencoding.UrlEncodingSerializerContext.*;
import static org.apache.juneau.internal.StringUtils.*;
import java.io.*;
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/87f505b3/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializerBuilder.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializerBuilder.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializerBuilder.java
index 16e8f51..89532e0 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializerBuilder.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializerBuilder.java
@@ -96,10 +96,10 @@ public class UrlEncodingSerializerBuilder extends UonSerializerBuilder {
*
* @param value The new value for this property.
* @return This object (for method chaining).
- * @see UrlEncodingContext#URLENC_expandedParams
+ * @see UrlEncodingSerializerContext#URLENC_expandedParams
*/
public UrlEncodingSerializerBuilder expandedParams(boolean value) {
- return property(UrlEncodingContext.URLENC_expandedParams, value);
+ return property(UrlEncodingSerializerContext.URLENC_expandedParams, value);
}
/**
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/87f505b3/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializerContext.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializerContext.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializerContext.java
index 87531c4..04166a1 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializerContext.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializerContext.java
@@ -27,6 +27,41 @@ import org.apache.juneau.uon.*;
*/
public class UrlEncodingSerializerContext extends UonSerializerContext {
+ static final String PREFIX = "UrlEncodingSerializer.";
+
+ /**
+ * Serialize bean property collections/arrays as separate key/value pairs ({@link Boolean}, default=<jk>false</jk>).
+ *
+ * <p>
+ * If <jk>false</jk>, serializing the array <code>[1,2,3]</code> results in <code>?key=$a(1,2,3)</code>.
+ * If <jk>true</jk>, serializing the same array results in <code>?key=1&key=2&key=3</code>.
+ *
+ * <p>
+ * Example:
+ * <p class='bcode'>
+ * <jk>public class</jk> A {
+ * <jk>public</jk> String[] f1 = {<js>"a"</js>,<js>"b"</js>};
+ * <jk>public</jk> List<String> f2 = <jk>new</jk> LinkedList<String>(Arrays.<jsm>asList</jsm>(<jk>new</jk> String[]{<js>"c"</js>,<js>"d"</js>}));
+ * }
+ *
+ * UrlEncodingSerializer s1 = UrlEncodingSerializer.<jsf>DEFAULT</jsf>;
+ * UrlEncodingSerializer s2 = <jk>new</jk> UrlEncodingSerializerBuilder().expandedParams(<jk>true</jk>).build();
+ *
+ * String ss1 = s1.serialize(<jk>new</jk> A()); <jc>// Produces "f1=(a,b)&f2=(c,d)"</jc>
+ * String ss2 = s2.serialize(<jk>new</jk> A()); <jc>// Produces "f1=a&f1=b&f2=c&f2=d"</jc>
+ * </p>
+ *
+ * <p>
+ * This option only applies to beans.
+ *
+ * <h5 class='section'>Notes:</h5>
+ * <ul>
+ * <li>If parsing multi-part parameters, it's highly recommended to use <code>Collections</code> or <code>Lists</code>
+ * as bean property types instead of arrays since arrays have to be recreated from scratch every time a value
+ * is added to it.
+ * </ul>
+ */
+ public static final String URLENC_expandedParams = PREFIX + "expandedParams";
final boolean
expandedParams;
@@ -41,7 +76,7 @@ public class UrlEncodingSerializerContext extends UonSerializerContext {
*/
public UrlEncodingSerializerContext(PropertyStore ps) {
super(ps);
- this.expandedParams = ps.getProperty(UrlEncodingContext.URLENC_expandedParams, boolean.class, false);
+ this.expandedParams = ps.getProperty(URLENC_expandedParams, boolean.class, false);
}
@Override /* Context */
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/87f505b3/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializerSession.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializerSession.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializerSession.java
index 90e6b09..a800ad6 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializerSession.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializerSession.java
@@ -54,7 +54,7 @@ public class UrlEncodingSerializerSession extends UonSerializerSession {
if (p.isEmpty()) {
expandedParams = ctx.expandedParams;
} else {
- expandedParams = p.getBoolean(UrlEncodingContext.URLENC_expandedParams, false);
+ expandedParams = p.getBoolean(UrlEncodingSerializerContext.URLENC_expandedParams, false);
}
}
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/87f505b3/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/annotation/UrlEncoding.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/annotation/UrlEncoding.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/annotation/UrlEncoding.java
index 2576e58..1326589 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/annotation/UrlEncoding.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/annotation/UrlEncoding.java
@@ -33,8 +33,8 @@ public @interface UrlEncoding {
* When true, bean properties of type array or Collection will be expanded into multiple key/value pairings.
*
* <p>
- * This annotation is identical in behavior to using the {@link UrlEncodingContext#URLENC_expandedParams}
- * property, but applies to only instances of this bean.
+ * This annotation is identical in behavior to using the {@link UrlEncodingSerializerContext#URLENC_expandedParams}
+ * and {@link UrlEncodingParserContext#URLENC_expandedParams} properties, but applies to only instances of this bean.
*/
boolean expandedParams() default false;
}
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/87f505b3/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParserContext.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParserContext.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParserContext.java
index bc8496e..55cf882 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParserContext.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParserContext.java
@@ -43,6 +43,8 @@ import org.apache.juneau.parser.*;
*/
public class XmlParserContext extends ParserContext {
+ static final String PREFIX = "XmlParser.";
+
/**
* <b>Configuration property:</b> Enable validation.
*
@@ -57,7 +59,7 @@ public class XmlParserContext extends ParserContext {
* If <jk>true</jk>, XML document will be validated.
* See {@link XMLInputFactory#IS_VALIDATING} for more info.
*/
- public static final String XML_validating = "XmlParser.validating";
+ public static final String XML_validating = PREFIX + "validating";
/**
* <b>Configuration property:</b> XML reporter.
@@ -77,7 +79,7 @@ public class XmlParserContext extends ParserContext {
* <li>Reporters are not copied to new parsers during a clone.
* </ul>
*/
- public static final String XML_reporter = "XmlParser.reporter";
+ public static final String XML_reporter = PREFIX + "reporter";
/**
* <b>Configuration property:</b> XML resolver.
@@ -92,7 +94,7 @@ public class XmlParserContext extends ParserContext {
* <p>
* Associates an {@link XMLResolver} with this parser.
*/
- public static final String XML_resolver = "XmlParser.resolver";
+ public static final String XML_resolver = PREFIX + "resolver";
/**
* <b>Configuration property:</b> XML event allocator.
@@ -107,7 +109,7 @@ public class XmlParserContext extends ParserContext {
* <p>
* Associates an {@link XMLEventAllocator} with this parser.
*/
- public static final String XML_eventAllocator = "XmlParser.eventAllocator";
+ public static final String XML_eventAllocator = PREFIX + "eventAllocator";
/**
* <b>Configuration property:</b> Preserve root element during generalized parsing.
@@ -138,7 +140,7 @@ public class XmlParserContext extends ParserContext {
* </tr>
* </table>
*/
- public static final String XML_preserveRootElement = "XmlParser.preserveRootElement";
+ public static final String XML_preserveRootElement = PREFIX + "preserveRootElement";
final boolean
validating,