juneau-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jamesbog...@apache.org
Subject [04/14] incubator-juneau git commit: Add convenience property setters to serializers and parsers.
Date Thu, 09 Feb 2017 17:31:26 GMT
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/68dffad1/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerGroup.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerGroup.java b/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerGroup.java
index ec62ae8..63f0400 100644
--- a/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerGroup.java
+++ b/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerGroup.java
@@ -74,7 +74,7 @@ public final class SerializerGroup extends Lockable {
 	/**
 	 * Adds the specified serializer to the beginning of this group.
 	 *
-	 * @param s - The serializer to add to this group.
+	 * @param s The serializer to add to this group.
 	 * @return This object (for method chaining).
 	 */
 	public SerializerGroup append(Serializer s) {
@@ -237,103 +237,892 @@ public final class SerializerGroup extends Lockable {
 		return l;
 	}
 
+
 	//--------------------------------------------------------------------------------
-	// Convenience methods for setting properties on all serializers.
+	// Properties
 	//--------------------------------------------------------------------------------
 
 	/**
-	 * Shortcut for calling {@link Serializer#setProperty(String, Object)} on all serializers in this group.
+	 * Calls {@link Serializer#setMaxDepth(int)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see SerializerContext#SERIALIZER_maxDepth
+	 */
+	public SerializerGroup setMaxDepth(int value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setMaxDepth(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setInitialDepth(int)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see SerializerContext#SERIALIZER_initialDepth
+	 */
+	public SerializerGroup setInitialDepth(int value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setInitialDepth(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setDetectRecursions(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see SerializerContext#SERIALIZER_detectRecursions
+	 */
+	public SerializerGroup setDetectRecursions(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setDetectRecursions(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setIgnoreRecursions(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see SerializerContext#SERIALIZER_ignoreRecursions
+	 */
+	public SerializerGroup setIgnoreRecursions(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setIgnoreRecursions(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setUseIndentation(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see SerializerContext#SERIALIZER_useIndentation
+	 */
+	public SerializerGroup setUseIndentation(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setUseIndentation(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setAddBeanTypeProperties(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see SerializerContext#SERIALIZER_addBeanTypeProperties
+	 */
+	public SerializerGroup setAddBeanTypeProperties(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setAddBeanTypeProperties(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setQuoteChar(char)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see SerializerContext#SERIALIZER_quoteChar
+	 */
+	public SerializerGroup setQuoteChar(char value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setQuoteChar(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setTrimNullProperties(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see SerializerContext#SERIALIZER_trimNullProperties
+	 */
+	public SerializerGroup setTrimNullProperties(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setTrimNullProperties(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setTrimEmptyCollections(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see SerializerContext#SERIALIZER_trimEmptyCollections
+	 */
+	public SerializerGroup setTrimEmptyCollections(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setTrimEmptyCollections(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setTrimEmptyMaps(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see SerializerContext#SERIALIZER_trimEmptyMaps
+	 */
+	public SerializerGroup setTrimEmptyMaps(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setTrimEmptyMaps(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setTrimStrings(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see SerializerContext#SERIALIZER_trimStrings
+	 */
+	public SerializerGroup setTrimStrings(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setTrimStrings(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setRelativeUriBase(String)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see SerializerContext#SERIALIZER_relativeUriBase
+	 */
+	public SerializerGroup setRelativeUriBase(String value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setRelativeUriBase(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setAbsolutePathUriBase(String)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see SerializerContext#SERIALIZER_absolutePathUriBase
+	 */
+	public SerializerGroup setAbsolutePathUriBase(String value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setAbsolutePathUriBase(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setSortCollections(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see SerializerContext#SERIALIZER_sortCollections
+	 */
+	public SerializerGroup setSortCollections(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setSortCollections(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setSortMaps(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see SerializerContext#SERIALIZER_sortMaps
+	 */
+	public SerializerGroup setSortMaps(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setSortMaps(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setBeansRequireDefaultConstructor(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_beansRequireDefaultConstructor
+	 */
+	public SerializerGroup setBeansRequireDefaultConstructor(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setBeansRequireDefaultConstructor(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setBeansRequireSerializable(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_beansRequireSerializable
+	 */
+	public SerializerGroup setBeansRequireSerializable(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setBeansRequireSerializable(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setBeansRequireSettersForGetters(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_beansRequireSettersForGetters
+	 */
+	public SerializerGroup setBeansRequireSettersForGetters(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setBeansRequireSettersForGetters(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setBeansRequireSomeProperties(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_beansRequireSomeProperties
+	 */
+	public SerializerGroup setBeansRequireSomeProperties(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setBeansRequireSomeProperties(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setBeanMapPutReturnsOldValue(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_beanMapPutReturnsOldValue
+	 */
+	public SerializerGroup setBeanMapPutReturnsOldValue(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setBeanMapPutReturnsOldValue(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setBeanConstructorVisibility(Visibility)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_beanConstructorVisibility
+	 */
+	public SerializerGroup setBeanConstructorVisibility(Visibility value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setBeanConstructorVisibility(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setBeanClassVisibility(Visibility)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_beanClassVisibility
+	 */
+	public SerializerGroup setBeanClassVisibility(Visibility value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setBeanClassVisibility(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setBeanFieldVisibility(Visibility)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_beanFieldVisibility
+	 */
+	public SerializerGroup setBeanFieldVisibility(Visibility value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setBeanFieldVisibility(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setMethodVisibility(Visibility)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_methodVisibility
+	 */
+	public SerializerGroup setMethodVisibility(Visibility value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setMethodVisibility(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setUseJavaBeanIntrospector(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_useJavaBeanIntrospector
+	 */
+	public SerializerGroup setUseJavaBeanIntrospector(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setUseJavaBeanIntrospector(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setUseInterfaceProxies(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_useInterfaceProxies
+	 */
+	public SerializerGroup setUseInterfaceProxies(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setUseInterfaceProxies(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setIgnoreUnknownBeanProperties(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_ignoreUnknownBeanProperties
+	 */
+	public SerializerGroup setIgnoreUnknownBeanProperties(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setIgnoreUnknownBeanProperties(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setIgnoreUnknownNullBeanProperties(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_ignoreUnknownNullBeanProperties
+	 */
+	public SerializerGroup setIgnoreUnknownNullBeanProperties(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setIgnoreUnknownNullBeanProperties(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setIgnorePropertiesWithoutSetters(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_ignorePropertiesWithoutSetters
+	 */
+	public SerializerGroup setIgnorePropertiesWithoutSetters(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setIgnorePropertiesWithoutSetters(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setIgnoreInvocationExceptionsOnGetters(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_ignoreInvocationExceptionsOnGetters
+	 */
+	public SerializerGroup setIgnoreInvocationExceptionsOnGetters(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setIgnoreInvocationExceptionsOnGetters(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setIgnoreInvocationExceptionsOnSetters(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_ignoreInvocationExceptionsOnSetters
+	 */
+	public SerializerGroup setIgnoreInvocationExceptionsOnSetters(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setIgnoreInvocationExceptionsOnSetters(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setSortProperties(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_sortProperties
+	 */
+	public SerializerGroup setSortProperties(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setSortProperties(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setNotBeanPackages(String...)} on all serializers in this group.
+	 *
+	 * @param values The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_notBeanPackages
+	 */
+	public SerializerGroup setNotBeanPackages(String...values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setNotBeanPackages(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setNotBeanPackages(Collection)} on all serializers in this group.
+	 *
+	 * @param values The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_notBeanPackages
+	 */
+	public SerializerGroup setNotBeanPackages(Collection<String> values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setNotBeanPackages(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#addNotBeanPackages(String...)} on all serializers in this group.
+	 *
+	 * @param values The values to remove from this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_notBeanPackages
+	 * @see BeanContext#BEAN_notBeanPackages_remove
+	 */
+	public SerializerGroup addNotBeanPackages(String...values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.addNotBeanPackages(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#addNotBeanPackages(Collection)} on all serializers in this group.
+	 *
+	 * @param values The values to remove from this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_notBeanPackages
+	 * @see BeanContext#BEAN_notBeanPackages_remove
+	 */
+	public SerializerGroup addNotBeanPackages(Collection<String> values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.addNotBeanPackages(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#removeNotBeanPackages(String...)} on all serializers in this group.
+	 *
+	 * @param values The values to remove from this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_notBeanPackages
+	 * @see BeanContext#BEAN_notBeanPackages_remove
+	 */
+	public SerializerGroup removeNotBeanPackages(String...values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.removeNotBeanPackages(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#removeNotBeanPackages(Collection)} on all serializers in this group.
+	 *
+	 * @param values The values to remove from this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_notBeanPackages
+	 * @see BeanContext#BEAN_notBeanPackages_remove
+	 */
+	public SerializerGroup removeNotBeanPackages(Collection<String> values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.removeNotBeanPackages(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setNotBeanClasses(Class...)} on all serializers in this group.
+	 *
+	 * @param values The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_notBeanClasses
+	 */
+	public SerializerGroup setNotBeanClasses(Class<?>...values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setNotBeanClasses(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setNotBeanClasses(Collection)} on all serializers in this group.
+	 *
+	 * @param values The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_notBeanPackages
+	 */
+	public SerializerGroup setNotBeanClasses(Collection<Class<?>> values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setNotBeanClasses(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#addNotBeanClasses(Class...)} on all serializers in this group.
+	 *
+	 * @param values The values to add to this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_notBeanClasses
+	 * @see BeanContext#BEAN_notBeanClasses_add
+	 */
+	public SerializerGroup addNotBeanClasses(Class<?>...values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.addNotBeanClasses(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#addNotBeanClasses(Collection)} on all serializers in this group.
+	 *
+	 * @param values The values to add to this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_notBeanClasses
+	 * @see BeanContext#BEAN_notBeanClasses_add
+	 */
+	public SerializerGroup addNotBeanClasses(Collection<Class<?>> values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.addNotBeanClasses(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#removeNotBeanClasses(Class...)} on all serializers in this group.
 	 *
-	 * @param property The property name.
-	 * @param value The property value.
-	 * @throws LockedException If {@link #lock()} was called on this object.
+	 * @param values The values to remove from this property.
 	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_notBeanClasses
+	 * @see BeanContext#BEAN_notBeanClasses_remove
 	 */
-	public SerializerGroup setProperty(String property, Object value) throws LockedException {
+	public SerializerGroup removeNotBeanClasses(Class<?>...values) throws LockedException {
 		checkLock();
 		for (Serializer s : serializers)
-			s.setProperty(property, value);
+			s.removeNotBeanClasses(values);
 		return this;
 	}
 
 	/**
-	 * Shortcut for calling {@link Serializer#setProperties(ObjectMap)} on all serializers in this group.
+	 * Calls {@link Serializer#removeNotBeanClasses(Collection)} on all serializers in this group.
 	 *
-	 * @param properties The properties to set.  Ignored if <jk>null</jk>.
-	 * @throws LockedException If {@link #lock()} was called on this object.
+	 * @param values The values to remove from this property.
 	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_notBeanClasses
+	 * @see BeanContext#BEAN_notBeanClasses_remove
 	 */
-	public SerializerGroup setProperties(ObjectMap properties) {
+	public SerializerGroup removeNotBeanClasses(Collection<Class<?>> values) throws LockedException {
 		checkLock();
 		for (Serializer s : serializers)
-			s.setProperties(properties);
+			s.removeNotBeanClasses(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setBeanFilters(Class...)} on all serializers in this group.
+	 *
+	 * @param values The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_beanFilters
+	 */
+	public SerializerGroup setBeanFilters(Class<?>...values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setBeanFilters(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setBeanFilters(Collection)} on all serializers in this group.
+	 *
+	 * @param values The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_beanFilters
+	 */
+	public SerializerGroup setBeanFilters(Collection<Class<?>> values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setBeanFilters(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#addBeanFilters(Class...)} on all serializers in this group.
+	 *
+	 * @param values The values to add to this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_beanFilters
+	 * @see BeanContext#BEAN_beanFilters_add
+	 */
+	public SerializerGroup addBeanFilters(Class<?>...values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.addBeanFilters(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#addBeanFilters(Collection)} on all serializers in this group.
+	 *
+	 * @param values The values to add to this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_beanFilters
+	 * @see BeanContext#BEAN_beanFilters_add
+	 */
+	public SerializerGroup addBeanFilters(Collection<Class<?>> values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.addBeanFilters(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#removeBeanFilters(Class...)} on all serializers in this group.
+	 *
+	 * @param values The values to remove from this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_beanFilters
+	 * @see BeanContext#BEAN_beanFilters_remove
+	 */
+	public SerializerGroup removeBeanFilters(Class<?>...values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.removeBeanFilters(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#removeBeanFilters(Collection)} on all serializers in this group.
+	 *
+	 * @param values The values to remove from this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_beanFilters
+	 * @see BeanContext#BEAN_beanFilters_remove
+	 */
+	public SerializerGroup removeBeanFilters(Collection<Class<?>> values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.removeBeanFilters(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setPojoSwaps(Class...)} on all serializers in this group.
+	 *
+	 * @param values The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_pojoSwaps
+	 */
+	public SerializerGroup setPojoSwaps(Class<?>...values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setPojoSwaps(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setPojoSwaps(Collection)} on all serializers in this group.
+	 *
+	 * @param values The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_pojoSwaps
+	 */
+	public SerializerGroup setPojoSwaps(Collection<Class<?>> values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setPojoSwaps(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#addPojoSwaps(Class...)} on all serializers in this group.
+	 *
+	 * @param values The values to add to this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_pojoSwaps
+	 * @see BeanContext#BEAN_pojoSwaps_add
+	 */
+	public SerializerGroup addPojoSwaps(Class<?>...values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.addPojoSwaps(values);
 		return this;
 	}
 
 	/**
-	 * Shortcut for calling {@link Serializer#addNotBeanClasses(Class[])} on all serializers in this group.
+	 * Calls {@link Serializer#addPojoSwaps(Collection)} on all serializers in this group.
 	 *
-	 * @param classes The classes to specify as not-beans to the underlying bean context of all serializers in this group.
-	 * @throws LockedException If {@link #lock()} was called on this object.
+	 * @param values The values to add to this property.
 	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_pojoSwaps
+	 * @see BeanContext#BEAN_pojoSwaps_add
 	 */
-	public SerializerGroup addNotBeanClasses(Class<?>...classes) throws LockedException {
+	public SerializerGroup addPojoSwaps(Collection<Class<?>> values) throws LockedException {
 		checkLock();
 		for (Serializer s : serializers)
-			s.addNotBeanClasses(classes);
+			s.addPojoSwaps(values);
 		return this;
 	}
 
 	/**
-	 * Shortcut for calling {@link Serializer#addBeanFilters(Class[])} on all serializers in this group.
+	 * Calls {@link Serializer#removePojoSwaps(Class...)} on all serializers in this group.
 	 *
-	 * @param classes The classes to add bean filters for to the underlying bean context of all serializers in this group.
-	 * @throws LockedException If {@link #lock()} was called on this object.
+	 * @param values The values to remove from this property.
 	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_pojoSwaps
+	 * @see BeanContext#BEAN_pojoSwaps_remove
 	 */
-	public SerializerGroup addBeanFilters(Class<?>...classes) throws LockedException {
+	public SerializerGroup removePojoSwaps(Class<?>...values) throws LockedException {
 		checkLock();
 		for (Serializer s : serializers)
-			s.addBeanFilters(classes);
+			s.removePojoSwaps(values);
 		return this;
 	}
 
 	/**
-	 * Shortcut for calling {@link Serializer#addPojoSwaps(Class[])} on all serializers in this group.
+	 * Calls {@link Serializer#removePojoSwaps(Collection)} on all serializers in this group.
 	 *
-	 * @param classes The classes to add POJO swaps for to the underlying bean context of all serializers in this group.
-	 * @throws LockedException If {@link #lock()} was called on this object.
+	 * @param values The values to remove from this property.
 	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_pojoSwaps
+	 * @see BeanContext#BEAN_pojoSwaps_remove
 	 */
-	public SerializerGroup addPojoSwaps(Class<?>...classes) throws LockedException {
+	public SerializerGroup removePojoSwaps(Collection<Class<?>> values) throws LockedException {
 		checkLock();
 		for (Serializer s : serializers)
-			s.addPojoSwaps(classes);
+			s.removePojoSwaps(values);
 		return this;
 	}
 
 	/**
-	 * Shortcut for calling {@link Serializer#addToDictionary(Class[])} on all serializers in this group.
+	 * Calls {@link Serializer#setImplClasses(Map)} on all serializers in this group.
 	 *
-	 * @param classes The classes to add to the bean dictionary on the underlying bean context of all serializers in this group.
-	 * @throws LockedException If {@link #lock()} was called on this object.
+	 * @param values The new value for this property.
 	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_implClasses
 	 */
-	public SerializerGroup addToDictionary(Class<?>...classes) throws LockedException {
+	public SerializerGroup setImplClasses(Map<Class<?>,Class<?>> values) throws LockedException {
 		checkLock();
 		for (Serializer s : serializers)
-			s.addToDictionary(classes);
+			s.setImplClasses(values);
 		return this;
 	}
 
 	/**
-	 * Shortcut for calling {@link Serializer#addImplClass(Class, Class)} on all serializers in this group.
+	 * Calls {@link Serializer#addImplClass(Class,Class)} on all serializers in this group.
 	 *
-	 * @param <T> The interface or abstract class type.
-	 * @param interfaceClass The interface or abstract class.
+	 * @param interfaceClass The interface class.
 	 * @param implClass The implementation class.
-	 * @throws LockedException If {@link #lock()} was called on this object.
+	 * @param <T> The class type of the interface.
 	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_implClasses
+	 * @see BeanContext#BEAN_implClasses_put
 	 */
 	public <T> SerializerGroup addImplClass(Class<T> interfaceClass, Class<? extends T> implClass) throws LockedException {
 		checkLock();
@@ -342,12 +1131,308 @@ public final class SerializerGroup extends Lockable {
 		return this;
 	}
 
+	/**
+	 * Calls {@link Serializer#setBeanDictionary(Class...)} on all serializers in this group.
+	 *
+	 * @param values The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_beanDictionary
+	 */
+	public SerializerGroup setBeanDictionary(Class<?>...values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setBeanDictionary(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setBeanDictionary(Collection)} on all serializers in this group.
+	 *
+	 * @param values The values to add to this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_beanDictionary
+	 * @see BeanContext#BEAN_beanDictionary_add
+	 */
+	public SerializerGroup setBeanDictionary(Collection<Class<?>> values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setBeanDictionary(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#addToBeanDictionary(Class...)} on all serializers in this group.
+	 *
+	 * @param values The values to add to this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_beanDictionary
+	 * @see BeanContext#BEAN_beanDictionary_add
+	 */
+	public SerializerGroup addToBeanDictionary(Class<?>...values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.addToBeanDictionary(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#addToBeanDictionary(Collection)} on all serializers in this group.
+	 *
+	 * @param values The values to add to this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_beanDictionary
+	 * @see BeanContext#BEAN_beanDictionary_add
+	 */
+	public SerializerGroup addToBeanDictionary(Collection<Class<?>> values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.addToBeanDictionary(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#removeFromBeanDictionary(Class...)} on all serializers in this group.
+	 *
+	 * @param values The values to remove from this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_beanDictionary
+	 * @see BeanContext#BEAN_beanDictionary_remove
+	 */
+	public SerializerGroup removeFromBeanDictionary(Class<?>...values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.removeFromBeanDictionary(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#removeFromBeanDictionary(Collection)} on all serializers in this group.
+	 *
+	 * @param values The values to remove from this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_beanDictionary
+	 * @see BeanContext#BEAN_beanDictionary_remove
+	 */
+	public SerializerGroup removeFromBeanDictionary(Collection<Class<?>> values) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.removeFromBeanDictionary(values);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setBeanTypePropertyName(String)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_beanTypePropertyName
+	 */
+	public SerializerGroup setBeanTypePropertyName(String value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setBeanTypePropertyName(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setDefaultParser(Class)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_defaultParser
+	 */
+	public SerializerGroup setDefaultParser(Class<?> value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setDefaultParser(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setLocale(Locale)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_locale
+	 */
+	public SerializerGroup setLocale(Locale value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setLocale(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setTimeZone(TimeZone)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_timeZone
+	 */
+	public SerializerGroup setTimeZone(TimeZone value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setTimeZone(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setMediaType(MediaType)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_mediaType
+	 */
+	public SerializerGroup setMediaType(MediaType value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setMediaType(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setDebug(boolean)} on all serializers in this group.
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see BeanContext#BEAN_debug
+	 */
+	public SerializerGroup setDebug(boolean value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setDebug(value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setProperty(String,Object)} on all serializers in this group.
+	 *
+	 * @param name The property name.
+	 * @param value The property value.
+	 * @return This class (for method chaining).
+	 * @throws LockedException If {@link #lock()} has been called on this object or {@link ContextFactory} object.
+	 * @see ContextFactory#setProperty(String, Object)
+	 */
+	public SerializerGroup setProperty(String name, Object value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setProperty(name, value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#setProperties(ObjectMap)} on all serializers in this group.
+	 *
+	 * @param properties The properties to set on this class.
+	 * @return This class (for method chaining).
+	 * @throws LockedException If {@link #lock()} has been called on this object.
+	 * @see ContextFactory#setProperties(java.util.Map)
+	 */
+	public SerializerGroup setProperties(ObjectMap properties) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setProperties(properties);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#addToProperty(String,Object)} on all serializers in this group.
+	 *
+	 * @param name The property name.
+	 * @param value The new value to add to the SET property.
+	 * @return This object (for method chaining).
+	 * @throws ConfigException If property is not a SET property.
+	 * @throws LockedException If {@link #lock()} has been called on this object.
+	 */
+	public SerializerGroup addToProperty(String name, Object value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.addToProperty(name, value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#putToProperty(String,Object,Object)} on all serializers in this group.
+	 *
+	 * @param name The property name.
+	 * @param key The property value map key.
+	 * @param value The property value map value.
+	 * @return This object (for method chaining).
+	 * @throws ConfigException If property is not a MAP property.
+	 * @throws LockedException If {@link #lock()} has been called on this object.
+	 */
+	public SerializerGroup putToProperty(String name, Object key, Object value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.putToProperty(name, key, value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#putToProperty(String,Object)} on all serializers in this group.
+	 *
+	 * @param name The property value.
+	 * @param value The property value map value.
+	 * @return This object (for method chaining).
+	 * @throws ConfigException If property is not a MAP property.
+	 * @throws LockedException If {@link #lock()} has been called on this object.
+	 */
+	public SerializerGroup putToProperty(String name, Object value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.putToProperty(name, value);
+		return this;
+	}
+
+	/**
+	 * Calls {@link Serializer#removeFromProperty(String,Object)} on all serializers in this group.
+	 *
+	 * @param name The property name.
+	 * @param value The property value in the SET property.
+	 * @return This object (for method chaining).
+	 * @throws ConfigException If property is not a SET property.
+	 * @throws LockedException If {@link #lock()} has been called on this object.
+	 */
+	public SerializerGroup removeFromProperty(String name, Object value) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.removeFromProperty(name, value);
+		return this;
+	}
+
 
 	//--------------------------------------------------------------------------------
 	// Overridden methods
 	//--------------------------------------------------------------------------------
 
 	/**
+	 * Calls {@link Serializer#setClassLoader(ClassLoader)} on all serializers in this group.
+	 *
+	 * @param classLoader The new classloader.
+	 * @throws LockedException If {@link ContextFactory#lock()} was called on this class or the bean context.
+	 * @return This object (for method chaining).
+	 * @see ContextFactory#setClassLoader(ClassLoader)
+	 */
+	public SerializerGroup setClassLoader(ClassLoader classLoader) throws LockedException {
+		checkLock();
+		for (Serializer s : serializers)
+			s.setClassLoader(classLoader);
+		return this;
+	}
+
+	/**
 	 * Locks this group and all serializers in this group.
 	 */
 	@Override /* Lockable */

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/68dffad1/juneau-core/src/main/java/org/apache/juneau/serializer/WriterSerializer.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/serializer/WriterSerializer.java b/juneau-core/src/main/java/org/apache/juneau/serializer/WriterSerializer.java
index 5f38d4a..27aa39c 100644
--- a/juneau-core/src/main/java/org/apache/juneau/serializer/WriterSerializer.java
+++ b/juneau-core/src/main/java/org/apache/juneau/serializer/WriterSerializer.java
@@ -45,6 +45,7 @@ public abstract class WriterSerializer extends Serializer {
 		return true;
 	}
 
+
 	//--------------------------------------------------------------------------------
 	// Other methods
 	//--------------------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/68dffad1/juneau-core/src/main/java/org/apache/juneau/svl/VarResolver.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/svl/VarResolver.java b/juneau-core/src/main/java/org/apache/juneau/svl/VarResolver.java
index 6ffdaeb..37344b8 100644
--- a/juneau-core/src/main/java/org/apache/juneau/svl/VarResolver.java
+++ b/juneau-core/src/main/java/org/apache/juneau/svl/VarResolver.java
@@ -198,6 +198,7 @@ public class VarResolver extends CoreApi {
 		createSession(null).resolveTo(s, w);
 	}
 
+
 	//--------------------------------------------------------------------------------
 	// Overridden methods
 	//--------------------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/68dffad1/juneau-core/src/main/java/org/apache/juneau/transform/PojoSwap.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/transform/PojoSwap.java b/juneau-core/src/main/java/org/apache/juneau/transform/PojoSwap.java
index efd94d1..910561f 100644
--- a/juneau-core/src/main/java/org/apache/juneau/transform/PojoSwap.java
+++ b/juneau-core/src/main/java/org/apache/juneau/transform/PojoSwap.java
@@ -229,6 +229,7 @@ public abstract class PojoSwap<T,S> {
 		return ClassUtils.isParentClass(swapClass, o.getClass());
 	}
 
+
 	//--------------------------------------------------------------------------------
 	// Overridden methods
 	//--------------------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/68dffad1/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonParser.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonParser.java b/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonParser.java
index 7f803ae..510078a 100644
--- a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonParser.java
+++ b/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonParser.java
@@ -18,7 +18,6 @@ import java.lang.reflect.*;
 import java.util.*;
 
 import org.apache.juneau.*;
-import org.apache.juneau.MediaType;
 import org.apache.juneau.annotation.*;
 import org.apache.juneau.internal.*;
 import org.apache.juneau.parser.*;
@@ -55,7 +54,7 @@ public class UonParser extends ReaderParser {
 	public static final UonParser DEFAULT_DECODING = new Decoding().lock();
 
 	/** Reusable instance of {@link UonParser}, all default settings, whitespace-aware. */
-	public static final UonParser DEFAULT_WS_AWARE = new UonParser().setProperty(UON_whitespaceAware, true).lock();
+	public static final UonParser DEFAULT_WS_AWARE = new UonParser().setWhitespaceAware(true).lock();
 
 	// Characters that need to be preceeded with an escape character.
 	private static final AsciiSet escapedChars = new AsciiSet(",()~=$\u0001\u0002");
@@ -68,7 +67,7 @@ public class UonParser extends ReaderParser {
 	public static class Decoding extends UonParser {
 		/** Constructor */
 		public Decoding() {
-			setProperty(UON_decodeChars, true);
+			setDecodeChars(true);
 		}
 	}
 
@@ -719,8 +718,9 @@ public class UonParser extends ReaderParser {
 		return new UonParserSession(getContext(UonParserContext.class), input);
 	}
 
+
 	//--------------------------------------------------------------------------------
-	// Overridden methods
+	// Entry point methods
 	//--------------------------------------------------------------------------------
 
 	@Override /* Parser */
@@ -766,49 +766,460 @@ public class UonParser extends ReaderParser {
 		return a;
 	}
 
+
+	//--------------------------------------------------------------------------------
+	// Properties
+	//--------------------------------------------------------------------------------
+
+	/**
+	 * <b>Configuration property:</b> Decode <js>"%xx"</js> sequences.
+	 * <p>
+	 * <ul>
+	 * 	<li><b>Name:</b> <js>"UonParser.decodeChars"</js>
+	 * 	<li><b>Data type:</b> <code>Boolean</code>
+	 * 	<li><b>Default:</b> <jk>false</jk> for {@link UonParser}, <jk>true</jk> for {@link UrlEncodingParser}
+	 * 	<li><b>Session-overridable:</b> <jk>true</jk>
+	 * </ul>
+	 * <p>
+	 * 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.
+	 * <p>
+	 * <h5 class='section'>Notes:</h5>
+	 * <ul>
+	 * 	<li>This is equivalent to calling <code>setProperty(<jsf>UON_decodeChars</jsf>, value)</code>.
+	 * </ul>
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see UonParserContext#UON_decodeChars
+	 */
+	public UonParser setDecodeChars(boolean value) throws LockedException {
+		return setProperty(UON_decodeChars, value);
+	}
+
+	/**
+	 * <b>Configuration property:</b> Whitespace aware.
+	 * <p>
+	 * <ul>
+	 * 	<li><b>Name:</b> <js>"UonParser.whitespaceAware"</js>
+	 * 	<li><b>Data type:</b> <code>Boolean</code>
+	 * 	<li><b>Default:</b> <jk>false</jk>
+	 * 	<li><b>Session-overridable:</b> <jk>true</jk>
+	 * </ul>
+	 * <p>
+	 * Expect input to contain readable whitespace characters from using the {@link UonSerializerContext#UON_useWhitespace} setting.
+	 * <p>
+	 * <h5 class='section'>Notes:</h5>
+	 * <ul>
+	 * 	<li>This is equivalent to calling <code>setProperty(<jsf>UON_whitespaceAware</jsf>, value)</code>.
+	 * </ul>
+	 *
+	 * @param value The new value for this property.
+	 * @return This object (for method chaining).
+	 * @throws LockedException If {@link #lock()} was called on this class.
+	 * @see UonParserContext#UON_whitespaceAware
+	 */
+	public UonParser setWhitespaceAware(boolean value) throws LockedException {
+		return setProperty(UON_whitespaceAware, value);
+	}
+
 	@Override /* Parser */
-	public UonParser setProperty(String property, Object value) throws LockedException {
-		super.setProperty(property, value);
+	public UonParser setTrimStrings(boolean value) throws LockedException {
+		super.setTrimStrings(value);
+		return this;
+	}
+
+	@Override /* Parser */
+	public UonParser setStrict(boolean value) throws LockedException {
+		super.setStrict(value);
+		return this;
+	}
+
+	@Override /* Parser */
+	public UonParser setInputStreamCharset(String value) throws LockedException {
+		super.setInputStreamCharset(value);
+		return this;
+	}
+
+	@Override /* Parser */
+	public UonParser setFileCharset(String value) throws LockedException {
+		super.setFileCharset(value);
 		return this;
 	}
 
 	@Override /* CoreApi */
-	public UonParser setProperties(ObjectMap properties) throws LockedException {
-		super.setProperties(properties);
+	public UonParser setBeansRequireDefaultConstructor(boolean value) throws LockedException {
+		super.setBeansRequireDefaultConstructor(value);
 		return this;
 	}
 
 	@Override /* CoreApi */
-	public UonParser addNotBeanClasses(Class<?>...classes) throws LockedException {
-		super.addNotBeanClasses(classes);
+	public UonParser setBeansRequireSerializable(boolean value) throws LockedException {
+		super.setBeansRequireSerializable(value);
 		return this;
 	}
 
 	@Override /* CoreApi */
-	public UonParser addBeanFilters(Class<?>...classes) throws LockedException {
-		super.addBeanFilters(classes);
+	public UonParser setBeansRequireSettersForGetters(boolean value) throws LockedException {
+		super.setBeansRequireSettersForGetters(value);
 		return this;
 	}
 
 	@Override /* CoreApi */
-	public UonParser addPojoSwaps(Class<?>...classes) throws LockedException {
-		super.addPojoSwaps(classes);
+	public UonParser setBeansRequireSomeProperties(boolean value) throws LockedException {
+		super.setBeansRequireSomeProperties(value);
 		return this;
 	}
 
 	@Override /* CoreApi */
-	public UonParser addToDictionary(Class<?>...classes) throws LockedException {
-		super.addToDictionary(classes);
+	public UonParser setBeanMapPutReturnsOldValue(boolean value) throws LockedException {
+		super.setBeanMapPutReturnsOldValue(value);
 		return this;
 	}
 
 	@Override /* CoreApi */
-	public <T> UonParser addImplClass(Class<T> interfaceClass, Class<? extends T> implClass) throws LockedException {
+	public UonParser setBeanConstructorVisibility(Visibility value) throws LockedException {
+		super.setBeanConstructorVisibility(value);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setBeanClassVisibility(Visibility value) throws LockedException {
+		super.setBeanClassVisibility(value);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setBeanFieldVisibility(Visibility value) throws LockedException {
+		super.setBeanFieldVisibility(value);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setMethodVisibility(Visibility value) throws LockedException {
+		super.setMethodVisibility(value);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setUseJavaBeanIntrospector(boolean value) throws LockedException {
+		super.setUseJavaBeanIntrospector(value);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setUseInterfaceProxies(boolean value) throws LockedException {
+		super.setUseInterfaceProxies(value);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setIgnoreUnknownBeanProperties(boolean value) throws LockedException {
+		super.setIgnoreUnknownBeanProperties(value);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setIgnoreUnknownNullBeanProperties(boolean value) throws LockedException {
+		super.setIgnoreUnknownNullBeanProperties(value);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setIgnorePropertiesWithoutSetters(boolean value) throws LockedException {
+		super.setIgnorePropertiesWithoutSetters(value);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setIgnoreInvocationExceptionsOnGetters(boolean value) throws LockedException {
+		super.setIgnoreInvocationExceptionsOnGetters(value);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setIgnoreInvocationExceptionsOnSetters(boolean value) throws LockedException {
+		super.setIgnoreInvocationExceptionsOnSetters(value);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setSortProperties(boolean value) throws LockedException {
+		super.setSortProperties(value);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setNotBeanPackages(String...values) throws LockedException {
+		super.setNotBeanPackages(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setNotBeanPackages(Collection<String> values) throws LockedException {
+		super.setNotBeanPackages(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser addNotBeanPackages(String...values) throws LockedException {
+		super.addNotBeanPackages(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser addNotBeanPackages(Collection<String> values) throws LockedException {
+		super.addNotBeanPackages(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser removeNotBeanPackages(String...values) throws LockedException {
+		super.removeNotBeanPackages(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser removeNotBeanPackages(Collection<String> values) throws LockedException {
+		super.removeNotBeanPackages(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setNotBeanClasses(Class<?>...values) throws LockedException {
+		super.setNotBeanClasses(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setNotBeanClasses(Collection<Class<?>> values) throws LockedException {
+		super.setNotBeanClasses(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser addNotBeanClasses(Class<?>...values) throws LockedException {
+		super.addNotBeanClasses(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser addNotBeanClasses(Collection<Class<?>> values) throws LockedException {
+		super.addNotBeanClasses(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser removeNotBeanClasses(Class<?>...values) throws LockedException {
+		super.removeNotBeanClasses(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser removeNotBeanClasses(Collection<Class<?>> values) throws LockedException {
+		super.removeNotBeanClasses(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setBeanFilters(Class<?>...values) throws LockedException {
+		super.setBeanFilters(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setBeanFilters(Collection<Class<?>> values) throws LockedException {
+		super.setBeanFilters(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser addBeanFilters(Class<?>...values) throws LockedException {
+		super.addBeanFilters(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser addBeanFilters(Collection<Class<?>> values) throws LockedException {
+		super.addBeanFilters(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser removeBeanFilters(Class<?>...values) throws LockedException {
+		super.removeBeanFilters(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser removeBeanFilters(Collection<Class<?>> values) throws LockedException {
+		super.removeBeanFilters(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setPojoSwaps(Class<?>...values) throws LockedException {
+		super.setPojoSwaps(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setPojoSwaps(Collection<Class<?>> values) throws LockedException {
+		super.setPojoSwaps(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser addPojoSwaps(Class<?>...values) throws LockedException {
+		super.addPojoSwaps(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser addPojoSwaps(Collection<Class<?>> values) throws LockedException {
+		super.addPojoSwaps(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser removePojoSwaps(Class<?>...values) throws LockedException {
+		super.removePojoSwaps(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser removePojoSwaps(Collection<Class<?>> values) throws LockedException {
+		super.removePojoSwaps(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setImplClasses(Map<Class<?>,Class<?>> values) throws LockedException {
+		super.setImplClasses(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public <T> CoreApi addImplClass(Class<T> interfaceClass, Class<? extends T> implClass) throws LockedException {
 		super.addImplClass(interfaceClass, implClass);
 		return this;
 	}
 
 	@Override /* CoreApi */
+	public UonParser setBeanDictionary(Class<?>...values) throws LockedException {
+		super.setBeanDictionary(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setBeanDictionary(Collection<Class<?>> values) throws LockedException {
+		super.setBeanDictionary(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser addToBeanDictionary(Class<?>...values) throws LockedException {
+		super.addToBeanDictionary(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser addToBeanDictionary(Collection<Class<?>> values) throws LockedException {
+		super.addToBeanDictionary(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser removeFromBeanDictionary(Class<?>...values) throws LockedException {
+		super.removeFromBeanDictionary(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser removeFromBeanDictionary(Collection<Class<?>> values) throws LockedException {
+		super.removeFromBeanDictionary(values);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setBeanTypePropertyName(String value) throws LockedException {
+		super.setBeanTypePropertyName(value);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setDefaultParser(Class<?> value) throws LockedException {
+		super.setDefaultParser(value);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setLocale(Locale value) throws LockedException {
+		super.setLocale(value);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setTimeZone(TimeZone value) throws LockedException {
+		super.setTimeZone(value);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setMediaType(MediaType value) throws LockedException {
+		super.setMediaType(value);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setDebug(boolean value) throws LockedException {
+		super.setDebug(value);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setProperty(String name, Object value) throws LockedException {
+		super.setProperty(name, value);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser setProperties(ObjectMap properties) throws LockedException {
+		super.setProperties(properties);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser addToProperty(String name, Object value) throws LockedException {
+		super.addToProperty(name, value);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser putToProperty(String name, Object key, Object value) throws LockedException {
+		super.putToProperty(name, key, value);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser putToProperty(String name, Object value) throws LockedException {
+		super.putToProperty(name, value);
+		return this;
+	}
+
+	@Override /* CoreApi */
+	public UonParser removeFromProperty(String name, Object value) throws LockedException {
+		super.removeFromProperty(name, value);
+		return this;
+	}
+
+
+	//--------------------------------------------------------------------------------
+	// Overridden methods
+	//--------------------------------------------------------------------------------
+
+	@Override /* CoreApi */
 	public UonParser setClassLoader(ClassLoader classLoader) throws LockedException {
 		super.setClassLoader(classLoader);
 		return this;

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/68dffad1/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonParserContext.java
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonParserContext.java b/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonParserContext.java
index 144ade5..f1f65bb 100644
--- a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonParserContext.java
+++ b/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonParserContext.java
@@ -21,38 +21,8 @@ import org.apache.juneau.parser.*;
  * Context properties are set by calling {@link ContextFactory#setProperty(String, Object)} on the context factory
  * returned {@link CoreApi#getContextFactory()}.
  * <p>
- * The following convenience methods are also provided for setting context properties:
- * <ul>
- * 	<li>{@link UonParser#setProperty(String,Object)}
- * 	<li>{@link UonParser#setProperties(ObjectMap)}
- * 	<li>{@link UonParser#addNotBeanClasses(Class[])}
- * 	<li>{@link UonParser#addBeanFilters(Class[])}
- * 	<li>{@link UonParser#addPojoSwaps(Class[])}
- * 	<li>{@link UonParser#addToDictionary(Class[])}
- * 	<li>{@link UonParser#addImplClass(Class,Class)}
- * </ul>
- * <p>
  * See {@link ContextFactory} for more information about context properties.
  *
- * <h6 class='topic' id='ConfigProperties'>Configurable properties on the URL-Encoding and UON parsers</h6>
- * <table class='styled' style='border-collapse: collapse;'>
- * 	<tr><th>Setting name</th><th>Description</th><th>Data type</th><th>Default value</th><th>Session overridable</th></tr>
- * 	<tr>
- * 		<td>{@link #UON_decodeChars}</td>
- * 		<td>Decode <js>"%xx"</js> sequences</td>
- * 		<td><code>Boolean</code></td>
- * 		<td><jk>false</jk> for {@link UonParser}<br><jk>true</jk> for {@link UrlEncodingParser}</td>
- * 		<td><jk>true</jk></td>
- * 	</tr>
- * 	<tr>
- * 		<td>{@link #UON_whitespaceAware}</td>
- * 		<td>Whitespace aware</td>
- * 		<td><code>Boolean</code></td>
- * 		<td><jk>false</jk></td>
- * 		<td><jk>true</jk></td>
- * 	</tr>
- * </table>
- *
  * <h5 class='section'>Inherited configurable properties:</h5>
  * <ul class='javahierarchy'>
  * 	<li class='c'><a class="doclink" href="../BeanContext.html#ConfigProperties">BeanContext</a> - Properties associated with handling beans on serializers and parsers.


Mime
View raw message