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 2018/01/14 16:02:40 UTC
[12/32] juneau git commit: Javadoc updates.
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializerSession.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializerSession.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializerSession.java
index a9cab63..da68cfc 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializerSession.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializerSession.java
@@ -16,16 +16,17 @@ import java.io.*;
/**
* Subclass of {@link SerializerSession} for character-based serializers.
- *
- * <h5 class='section'>Description:</h5>
- *
+ *
+ *
+ * <h5 class='topic'>Description</h5>
+ *
* This class is typically the parent class of all character-based serializers.
* <br>It has 1 abstract method to implement...
* <ul class='spaced-list'>
* <li>
* {@link #doSerialize(SerializerPipe, Object)}
* </ul>
- *
+ *
* <p>
* This class is NOT thread safe.
* It is typically discarded after one-time use although it can be reused within the same thread.
@@ -34,7 +35,7 @@ public abstract class WriterSerializerSession extends SerializerSession {
/**
* Create a new session using properties specified in the context.
- *
+ *
* @param ctx
* The context creating this session object.
* The context contains all the configuration settings for this object.
@@ -50,7 +51,7 @@ public abstract class WriterSerializerSession extends SerializerSession {
/**
* Constructor for sessions that don't require context.
- *
+ *
* @param args
* Runtime session arguments.
*/
@@ -65,7 +66,7 @@ public abstract class WriterSerializerSession extends SerializerSession {
/**
* Convenience method for serializing an object to a <code>String</code>.
- *
+ *
* @param o The object to serialize.
* @return The output serialized to a string.
* @throws SerializeException If a problem occurred trying to convert the output.
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializer.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializer.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializer.java
index e910294..289d8de 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializer.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializer.java
@@ -18,16 +18,17 @@ import org.apache.juneau.xml.*;
/**
* Serializes POJOs to HTTP responses as XML+SOAP.
- *
- * <h5 class='section'>Media types:</h5>
- *
- * Handles <code>Accept</code> types: <code>text/xml+soap</code>
- *
+ *
+ *
+ * <h5 class='topic'>Media types</h5>
+ *
+ * Handles <code>Accept</code> types: <code><b>text/xml+soap</b></code>
* <p>
- * Produces <code>Content-Type</code> types: <code>text/xml+soap</code>
- *
- * <h5 class='section'>Description:</h5>
- *
+ * Produces <code>Content-Type</code> types: <code><b>text/xml+soap</b></code>
+ *
+ *
+ * <h5 class='topic'>Description</h5>
+ *
* Essentially the same output as {@link XmlDocSerializer}, except wrapped in a standard SOAP envelope.
*/
public final class SoapXmlSerializer extends XmlSerializer {
@@ -40,7 +41,7 @@ public final class SoapXmlSerializer extends XmlSerializer {
/**
* Configuration property: The <code>SOAPAction</code> HTTP header value to set on responses.
- *
+ *
* <h5 class='section'>Property:</h5>
* <ul>
* <li><b>Name:</b> <js>"SoapXmlSerializer.SOAPAction.s"</js>
@@ -63,7 +64,7 @@ public final class SoapXmlSerializer extends XmlSerializer {
/**
* Constructor.
- *
+ *
* @param ps The property store containing all the settings for this object.
*/
public SoapXmlSerializer(PropertyStore ps) {
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerBuilder.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerBuilder.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerBuilder.java
index bb27c48..dd63769 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerBuilder.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerBuilder.java
@@ -35,7 +35,7 @@ public class SoapXmlSerializerBuilder extends XmlSerializerBuilder {
/**
* Constructor.
- *
+ *
* @param ps The initial configuration settings for this builder.
*/
public SoapXmlSerializerBuilder(PropertyStore ps) {
@@ -54,7 +54,7 @@ public class SoapXmlSerializerBuilder extends XmlSerializerBuilder {
/**
* Configuration property: The <code>SOAPAction</code> HTTP header value to set on responses.
- *
+ *
* <h5 class='section'>See Also:</h5>
* <ul>
* <li class='jf'>{@link SoapXmlSerializer#SOAPXML_SOAPAction}
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerSession.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerSession.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerSession.java
index 2f469e3..1a1353b 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerSession.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerSession.java
@@ -22,7 +22,7 @@ import org.apache.juneau.xml.*;
/**
* Session object that lives for the duration of a single use of {@link SoapXmlSerializer}.
- *
+ *
* <p>
* This class is NOT thread safe.
* It is typically discarded after one-time use although it can be reused within the same thread.
@@ -33,7 +33,7 @@ public class SoapXmlSerializerSession extends XmlSerializerSession {
/**
* Create a new session using properties specified in the context.
- *
+ *
* @param ctx
* The context creating this session object.
* The context contains all the configuration settings for this object.
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/AnnotationBeanFilterBuilder.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/AnnotationBeanFilterBuilder.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/AnnotationBeanFilterBuilder.java
index b583756..920cae7 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/AnnotationBeanFilterBuilder.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/AnnotationBeanFilterBuilder.java
@@ -21,7 +21,7 @@ import org.apache.juneau.annotation.*;
/**
* Bean filter builder initialized from the contents of a {@link Bean @Bean} annotation found on a class.
- *
+ *
* <p>
* <b>*** Internal class - Not intended for external use ***</b>
*
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/BeanFilter.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/BeanFilter.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/BeanFilter.java
index 6225581..7ee7bf8 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/BeanFilter.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/BeanFilter.java
@@ -20,18 +20,19 @@ import org.apache.juneau.internal.*;
/**
* Parent class for all bean filters.
- *
+ *
* <p>
* Bean filters are used to control aspects of how beans are handled during serialization and parsing.
- *
+ *
* <p>
* Bean filters are created by {@link BeanFilterBuilder} which is the programmatic equivalent to the {@link Bean @Bean}
* annotation.
*
- * <h6 class='topic'>Documentation</h6>
- * <ul>
- * <li><a class="doclink" href="../../../../overview-summary.html#juneau-marshall.BeanFilters">Overview > BeanFilters</a>
- * </ul>
+ *
+ * <h5 class='topic'>Documentation</h5>
+ * <ul>
+ * <li><a class="doclink" href="../../../../overview-summary.html#juneau-marshall.BeanFilters">Overview > BeanFilters</a>
+ * </ul>
*/
public final class BeanFilter {
@@ -68,7 +69,7 @@ public final class BeanFilter {
/**
* Returns the bean class that this filter applies to.
- *
+ *
* @return The bean class that this filter applies to.
*/
public Class<?> getBeanClass() {
@@ -77,7 +78,7 @@ public final class BeanFilter {
/**
* Returns the dictionary name associated with this bean.
- *
+ *
* @return The dictionary name associated with this bean, or <jk>null</jk> if no name is defined.
*/
public String getTypeName() {
@@ -86,7 +87,7 @@ public final class BeanFilter {
/**
* Returns the set and order of names of properties associated with a bean class.
- *
+ *
* @return
* The name of the properties associated with a bean class, or <jk>null</jk> if all bean properties should
* be used.
@@ -97,7 +98,7 @@ public final class BeanFilter {
/**
* Returns the bean dictionary defined on this bean.
- *
+ *
* @return The bean dictionary defined on this bean, or <jk>null</jk> if no bean dictionary is defined.
*/
public Class<?>[] getBeanDictionary() {
@@ -106,11 +107,11 @@ public final class BeanFilter {
/**
* Returns <jk>true</jk> if the properties defined on this bean class should be ordered alphabetically.
- *
+ *
* <p>
* This method is only used when the {@link #getProperties()} method returns <jk>null</jk>.
* Otherwise, the ordering of the properties in the returned value is used.
- *
+ *
* @return <jk>true</jk> if bean properties should be sorted.
*/
public boolean isSortProperties() {
@@ -119,7 +120,7 @@ public final class BeanFilter {
/**
* Returns the list of properties to ignore on a bean.
- *
+ *
* @return The name of the properties to ignore on a bean, or <jk>null</jk> to not ignore any properties.
*/
public String[] getExcludeProperties() {
@@ -128,7 +129,7 @@ public final class BeanFilter {
/**
* Returns the {@link PropertyNamer} associated with the bean to tailor the names of bean properties.
- *
+ *
* @return The property namer class, or <jk>null</jk> if no property namer is associated with this bean property.
*/
public PropertyNamer getPropertyNamer() {
@@ -137,7 +138,7 @@ public final class BeanFilter {
/**
* Returns the interface class associated with this class.
- *
+ *
* @return The interface class associated with this class, or <jk>null</jk> if no interface class is associated.
*/
public Class<?> getInterfaceClass() {
@@ -146,7 +147,7 @@ public final class BeanFilter {
/**
* Returns the stop class associated with this class.
- *
+ *
* @return The stop class associated with this class, or <jk>null</jk> if no stop class is associated.
*/
public Class<?> getStopClass() {
@@ -155,7 +156,7 @@ public final class BeanFilter {
/**
* Calls the {@link PropertyFilter#readProperty(Object, String, Object)} method on the registered property filters.
- *
+ *
* @param bean The bean from which the property was read.
* @param name The property name.
* @param value The value just extracted from calling the bean getter.
@@ -167,7 +168,7 @@ public final class BeanFilter {
/**
* Calls the {@link PropertyFilter#writeProperty(Object, String, Object)} method on the registered property filters.
- *
+ *
* @param bean The bean from which the property was read.
* @param name The property name.
* @param value The value just parsed.
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/BeanFilterBuilder.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/BeanFilterBuilder.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/BeanFilterBuilder.java
index 54288a6..941cd26 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/BeanFilterBuilder.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/BeanFilterBuilder.java
@@ -48,12 +48,13 @@ import org.apache.juneau.annotation.*;
* .beanFilters(MyFilter.<jk>class</jk>)
* .build();
* </p>
- *
- * <h6 class='topic'>Documentation</h6>
+ *
+ *
+ * <h5 class='topic'>Documentation</h5>
* <ul>
*. <li><a class="doclink" href="../../../../overview-summary.html#juneau-marshall.BeanFilters">Overview > BeanFilters</a>
*.</ul>
- *
+ *
* @param <T> The bean type that this filter applies to.
*/
public class BeanFilterBuilder<T> {
@@ -79,7 +80,7 @@ public class BeanFilterBuilder<T> {
/**
* Constructor.
- *
+ *
* @param beanClass The bean class that this filter applies to.
*/
protected BeanFilterBuilder(Class<?> beanClass) {
@@ -91,7 +92,7 @@ public class BeanFilterBuilder<T> {
*
* <p>
* Specifies the dictionary type name for this bean.
- *
+ *
* <h5 class='section'>Example:</h5>
* <p class='bcode'>
* <jc>// Define our filter.</jc>
@@ -167,7 +168,7 @@ public class BeanFilterBuilder<T> {
/**
* Configuration property: Bean property excludes.
- *
+ *
* <p>
* Specifies properties to exclude from the bean class.
*
@@ -208,31 +209,31 @@ public class BeanFilterBuilder<T> {
/**
* Configuration property: Bean interface class.
- *
+ *
* Identifies a class to be used as the interface class for this and all subclasses.
- *
+ *
* <p>
* When specified, only the list of properties defined on the interface class will be used during serialization.
* <br>Additional properties on subclasses will be ignored.
- *
+ *
* <p class='bcode'>
* <jc>// Parent class</jc>
* <jk>public abstract class</jk> A {
* <jk>public</jk> String <jf>f0</jf> = <js>"f0"</js>;
* }
- *
+ *
* <jc>// Sub class</jc>
* <jk>public class</jk> A1 <jk>extends</jk> A {
* <jk>public</jk> String <jf>f1</jf> = <js>"f1"</js>;
* }
- *
+ *
* <jc>// Define our filter.</jc>
* <jk>public class</jk> AFilter <jk>extends</jk> BeanFilterBuilder<A> {
* <jk>public</jk> AFilter() {
* interfaceClass(A.<jk>class</jk>);
* }
* }
- *
+ *
* <jc>// Register it with a serializer.</jc>
* WriterSerializer s = JsonSerializer
* .<jsm>create</jsm>()
@@ -244,11 +245,11 @@ public class BeanFilterBuilder<T> {
* String r = s.serialize(a1);
* <jsm>assertEquals</jsm>(<js>"{f0:'f0'}"</js>, r); <jc>// Note f1 is not serialized</jc>
* </p>
- *
+ *
* <p>
* Note that this filter can be used on the parent class so that it filters to all child classes, or can be set
* individually on the child classes.
- *
+ *
* <h5 class='section'>See Also:</h5>
* <ul>
* <li class='ja'>{@link Bean#interfaceClass()}
@@ -268,25 +269,25 @@ public class BeanFilterBuilder<T> {
*
* <p>
* Identifies a stop class for this class and all subclasses.
- *
+ *
* <p>
* Identical in purpose to the stop class specified by {@link Introspector#getBeanInfo(Class, Class)}.
* <br>Any properties in the stop class or in its base classes will be ignored during analysis.
- *
+ *
* <p>
* For example, in the following class hierarchy, instances of <code>C3</code> will include property <code>p3</code>,
* but not <code>p1</code> or <code>p2</code>.
- *
+ *
* <h5 class='section'>Example:</h5>
* <p class='bcode'>
* <jk>public class</jk> C1 {
* <jk>public int</jk> getP1();
* }
- *
+ *
* <jk>public class</jk> C2 <jk>extends</jk> C1 {
* <jk>public int</jk> getP2();
* }
- *
+ *
* <jk>public class</jk> C3 <jk>extends</jk> C2 {
* <jk>public int</jk> getP3();
* }
@@ -307,7 +308,7 @@ public class BeanFilterBuilder<T> {
* <jc>// Serializes property 'p3', but NOT 'p1' or 'p2'.</jc>
* String json = s.serialize(<jk>new</jk> C3());
* </p>
- *
+ *
* <h5 class='section'>See Also:</h5>
* <ul>
* <li class='ja'>{@link Bean#stopClass()}
@@ -323,11 +324,11 @@ public class BeanFilterBuilder<T> {
/**
* Configuration property: Sort bean properties.
- *
+ *
* <p>
* When <jk>true</jk>, all bean properties will be serialized and access in alphabetical order.
* <br>Otherwise, the natural order of the bean properties is used which is dependent on the JVM vendor.
- *
+ *
* <h5 class='section'>Example:</h5>
* <p class='bcode'>
* <jc>// Define our filter.</jc>
@@ -365,10 +366,10 @@ public class BeanFilterBuilder<T> {
/**
* Configuration property: Sort bean properties.
- *
+ *
* <p>
* Shortcut for calling <code>sortProperties(<jk>true</jk>)</code>.
- *
+ *
* <h5 class='section'>See Also:</h5>
* <ul>
* <li class='ja'>{@link Bean#sort()}
@@ -384,7 +385,7 @@ public class BeanFilterBuilder<T> {
/**
* Configuration property: Bean property namer
- *
+ *
* <p>
* The class to use for calculating bean property names.
*
@@ -428,7 +429,7 @@ public class BeanFilterBuilder<T> {
/**
* Configuration property: Bean dictionary.
- *
+ *
* <p>
* Adds to the list of classes that make up the bean dictionary for this bean.
*
@@ -475,7 +476,7 @@ public class BeanFilterBuilder<T> {
*
* <p>
* The property filter to use for intercepting and altering getter and setter calls.
- *
+ *
* <h5 class='section'>Example:</h5>
* <p class='bcode'>
* <jc>// Define our filter.</jc>
@@ -485,14 +486,14 @@ public class BeanFilterBuilder<T> {
* propertyFilter(AddressPropertyFilter.<jk>class</jk>);
* }
* }
- *
+ *
* <jc>// Register it with a serializer or parser.</jc>
* WriterSerializer s = JsonSerializer
* .<jsm>create</jsm>()
* .beanFilters(MyFilter.<jk>class</jk>)
* .build();
* </p>
- *
+ *
* <h5 class='section'>See Also:</h5>
* <ul>
* <li class='ja'>{@link Bean#propertyFilter()}
@@ -511,7 +512,7 @@ public class BeanFilterBuilder<T> {
/**
* Creates a {@link BeanFilter} with settings in this builder class.
- *
+ *
* @return A new {@link BeanFilter} instance.
*/
public BeanFilter build() {
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/InterfaceBeanFilterBuilder.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/InterfaceBeanFilterBuilder.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/InterfaceBeanFilterBuilder.java
index 6faff41..83d8431 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/InterfaceBeanFilterBuilder.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/InterfaceBeanFilterBuilder.java
@@ -22,7 +22,7 @@ import org.apache.juneau.internal.*;
/**
* Simple bean filter that simply identifies a class to be used as an interface class for all child classes.
- *
+ *
* <p>
* These objects are created when you pass in non-<code>BeanFilterBuilder</code> classes to
* {@link BeanContextBuilder#beanFilters(Class...)}, and are equivalent to adding a
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/MapSwap.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/MapSwap.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/MapSwap.java
index a2f1904..bd58e20 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/MapSwap.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/MapSwap.java
@@ -16,8 +16,8 @@ import org.apache.juneau.*;
/**
* Abstract subclass for POJO swaps that swap objects for object maps.
- *
- * <h6 class='topic'>Example</h6>
+ *
+ * <h5 class='section'>Example:</h5>
* <p class='bcode'>
* <jc>// A swap that converts beans into generic maps.</jc>
* <jk>public class</jk> MyBeanSwap <jk>extends</jk> MapSwap<<jk>byte</jk>[]> {
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/PojoSwap.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/PojoSwap.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/PojoSwap.java
index 4f46c6c..f90e89b 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/PojoSwap.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/PojoSwap.java
@@ -25,9 +25,10 @@ import org.apache.juneau.serializer.*;
/**
* Used to swap out non-serializable objects with serializable replacements during serialization, and vis-versa during
* parsing.
- *
+ *
+ *
* <h5 class='topic'>Description</h5>
- *
+ *
* <p>
* <code>PojoSwaps</code> are used to extend the functionality of the serializers and parsers to be able to handle
* POJOs that aren't automatically handled by the serializers or parsers.
@@ -35,10 +36,10 @@ import org.apache.juneau.serializer.*;
* By defining a special {@code Date} swap and associating it with a serializer and parser, you can convert a
* {@code Date} object to a {@code String} during serialization, and convert that {@code String} object back into a
* {@code Date} object during parsing.
- *
+ *
* <p>
* Swaps MUST declare a public no-arg constructor so that the bean context can instantiate them.
- *
+ *
* <p>
* <code>PojoSwaps</code> are associated with serializers and parsers through the following:
* <ul>
@@ -49,7 +50,7 @@ import org.apache.juneau.serializer.*;
* <li class='jm'>{@link BeanContextBuilder#pojoSwaps(boolean, Object...)}
* <li class='jm'>{@link BeanContextBuilder#pojoSwapsRemove(Object...)}
* </ul>
- *
+ *
* <p>
* <code>PojoSwaps</code> have two parameters:
* <ol>
@@ -60,10 +61,10 @@ import org.apache.juneau.serializer.*;
* {@link BeanMap#get(Object)}.
* <br>{@link Parser Parsers} use swaps to convert objects of type S into objects of type T, and on calls to
* {@link BeanMap#put(String,Object)}.
- *
- *
+ *
+ *
* <h6 class='topic'>Swap Class Type {@code <S>}</h6>
- *
+ *
* <p>
* The swapped object representation of an object must be an object type that the serializers can natively convert to
* JSON (or language-specific equivalent).
@@ -84,20 +85,20 @@ import org.apache.juneau.serializer.*;
* <li>
* An array of anything on this list.
* </ul>
- *
- *
+ *
+ *
* <h6 class='topic'>Normal Class Type {@code <T>}</h6>
- *
+ *
* <p>
* The normal object representation of an object.
- *
- *
- * <h6 class='topic'>Documentation</h6>
- * <ul>
- * <li><a class="doclink" href="../../../../overview-summary.html#juneau-marshall.PojoSwaps">Overview > PojoSwaps</a>
- * <li><a class="doclink" href="../../../../overview-summary.html#juneau-marshall.SwapAnnotation">Overview > @Swap Annotation</a>
- * </ul>
- *
+ *
+ *
+ * <h5 class='topic'>Documentation</h5>
+ * <ul>
+ * <li><a class="doclink" href="../../../../overview-summary.html#juneau-marshall.PojoSwaps">Overview > PojoSwaps</a>
+ * <li><a class="doclink" href="../../../../overview-summary.html#juneau-marshall.SwapAnnotation">Overview > @Swap Annotation</a>
+ * </ul>
+ *
* @param <T> The normal form of the class.
* @param <S> The swapped form of the class.
*/
@@ -131,7 +132,7 @@ public abstract class PojoSwap<T,S> {
/**
* Constructor for when the normal and transformed classes are already known.
- *
+ *
* @param normalClass The normal class (cannot be serialized).
* @param swapClass The transformed class (serializable).
*/
@@ -144,13 +145,13 @@ public abstract class PojoSwap<T,S> {
/**
* Returns the media types that this swap is applicable to.
- *
+ *
* <p>
* This method can be overridden to programmatically specify what media types it applies to.
- *
+ *
* <p>
* This method is the programmatic equivalent to the {@link Swap#mediaTypes() @Swap.mediaTypes()} annotation.
- *
+ *
* <h6 class='topic'>Documentation</h6>
* <ul>
* <li><a class="doclink" href="../../../../overview-summary.html#juneau-marshall.PerMediaTypePojoSwaps">Overview > Per-media-type PojoSwaps</a>
@@ -163,21 +164,21 @@ public abstract class PojoSwap<T,S> {
/**
* Returns additional context information for this swap.
- *
+ *
* <p>
* Typically this is going to be used to specify a template name, such as a FreeMarker template file name.
- *
+ *
* <p>
* This method can be overridden to programmatically specify a template value.
- *
+ *
* <p>
* This method is the programmatic equivalent to the {@link Swap#template() @Swap.template()} annotation.
- *
+ *
* <h5 class='section'>Documentation:</h5>
* <ul>
* <li><a class="doclink" href="../../../../overview-summary.html#juneau-marshall.TemplatedSwaps">Overview > Templated Swaps</a>
* </ul>
- *
+ *
* @return Additional context information, or <jk>null</jk> if not specified.
*/
public String withTemplate() {
@@ -186,12 +187,12 @@ public abstract class PojoSwap<T,S> {
/**
* Sets the media types that this swap is associated with.
- *
+ *
* <h6 class='topic'>Documentation</h6>
* <ul>
* <li><a class="doclink" href="../../../../overview-summary.html#juneau-marshall.PerMediaTypePojoSwaps">Overview > Per-media-type PojoSwaps</a>
* </ul>
- *
+ *
* @param mediaTypes The media types that this swap is associated with.
* @return This object (for method chaining).
*/
@@ -202,12 +203,12 @@ public abstract class PojoSwap<T,S> {
/**
* Sets the template string on this swap.
- *
+ *
* <h5 class='section'>Documentation:</h5>
* <ul>
* <li><a class="doclink" href="../../../../overview-summary.html#juneau-marshall.TemplatedSwaps">Overview > Templated Swaps</a>
* </ul>
- *
+ *
* @param template The template string on this swap.
* @return This object (for method chaining).
*/
@@ -218,15 +219,15 @@ public abstract class PojoSwap<T,S> {
/**
* Returns a number indicating how well this swap matches the specified session.
- *
+ *
* <p>
* Uses the {@link MediaType#match(MediaType, boolean)} method algorithm to produce a number whereby a
* larger value indicates a "better match".
* The idea being that if multiple swaps are associated with a given POJO, we want to pick the best one.
- *
+ *
* <p>
* For example, if the session media type is <js>"text/json"</js>, then the match values are shown below:
- *
+ *
* <ul>
* <li><js>"text/json"</js> = <code>100,000</code>
* <li><js>"*/json"</js> = <code>5,100</code>
@@ -234,7 +235,7 @@ public abstract class PojoSwap<T,S> {
* <li>No media types specified on swap = <code>1</code>
* <li><js>"text/xml"</js> = <code>0</code>
* </ul>
- *
+ *
* @param session The bean session.
* @return Zero if swap doesn't match the session, or a positive number if it does.
*/
@@ -251,7 +252,7 @@ public abstract class PojoSwap<T,S> {
/**
* If this transform is to be used to serialize non-serializable POJOs, it must implement this method.
- *
+ *
* <p>
* The object must be converted into one of the following serializable types:
* <ul class='spaced-list'>
@@ -270,7 +271,7 @@ public abstract class PojoSwap<T,S> {
* <li>
* An array of anything on this list.
* </ul>
- *
+ *
* @param session
* The bean session to use to get the class meta.
* This is always going to be the same bean context that created this swap.
@@ -284,7 +285,7 @@ public abstract class PojoSwap<T,S> {
/**
* Same as {@link #swap(BeanSession, Object)}, but can be used if your swap has a template associated with it.
- *
+ *
* @param session
* The bean session to use to get the class meta.
* This is always going to be the same bean context that created this swap.
@@ -300,7 +301,7 @@ public abstract class PojoSwap<T,S> {
/**
* If this transform is to be used to reconstitute POJOs that aren't true Java beans, it must implement this method.
- *
+ *
* @param session
* The bean session to use to get the class meta.
* This is always going to be the same bean context that created this swap.
@@ -319,7 +320,7 @@ public abstract class PojoSwap<T,S> {
/**
* Same as {@link #unswap(BeanSession, Object, ClassMeta)}, but can be used if your swap has a template associated with it.
- *
+ *
* @param session
* The bean session to use to get the class meta.
* This is always going to be the same bean context that created this swap.
@@ -340,7 +341,7 @@ public abstract class PojoSwap<T,S> {
/**
* Returns the T class, the normalized form of the class.
- *
+ *
* @return The normal form of this class.
*/
public Class<T> getNormalClass() {
@@ -349,11 +350,11 @@ public abstract class PojoSwap<T,S> {
/**
* Returns the G class, the generalized form of the class.
- *
+ *
* <p>
* Subclasses must override this method if the generalized class is {@code Object}, meaning it can produce multiple
* generalized forms.
- *
+ *
* @return The transformed form of this class.
*/
public Class<?> getSwapClass() {
@@ -362,10 +363,10 @@ public abstract class PojoSwap<T,S> {
/**
* Returns the {@link ClassMeta} of the transformed class type.
- *
+ *
* <p>
* This value is cached for quick lookup.
- *
+ *
* @param session
* The bean context to use to get the class meta.
* This is always going to be the same bean context that created this swap.
@@ -379,7 +380,7 @@ public abstract class PojoSwap<T,S> {
/**
* Checks if the specified object is an instance of the normal class defined on this swap.
- *
+ *
* @param o The object to check.
* @return
* <jk>true</jk> if the specified object is a subclass of the normal class defined on this transform.
@@ -393,7 +394,7 @@ public abstract class PojoSwap<T,S> {
/**
* Checks if the specified object is an instance of the swap class defined on this swap.
- *
+ *
* @param o The object to check.
* @return
* <jk>true</jk> if the specified object is a subclass of the transformed class defined on this transform.
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/PropertyFilter.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/PropertyFilter.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/PropertyFilter.java
index 16c641b..722f4e4 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/PropertyFilter.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/PropertyFilter.java
@@ -21,58 +21,58 @@ package org.apache.juneau.transform;
* <p>
* Property filters can be used to intercept calls to getters and setters and alter their values in transit.
*
- * <h5 class='section'>Example:</h5>
- * <p class='bcode'>
- * <jc>// Property filter that strips out sensitive information on Address beans.</jc>
- * <jk>public class</jk> AddressPropertyFilter <jk>extends</jk> PropertyFilter {
- *
- * <ja>@Override</ja>
- * <jk>public</jk> Object readProperty(Object bean, String name, Object value) {
- * <jk>if</jk> (<js>"taxInfo"</js>.equals(name))
- * <jk>return</jk> <js>"redacted"</js>;
- * <jk>return</jk> value;
- * }
- *
- * <ja>@Override</ja>
- * <jk>public</jk> Object writeProperty(Object bean, String name, Object value) {
- * AddressBook a = (Address)bean;
- * <jk>if</jk> (<js>"taxInfo"</js>.equals(name) && <js>"redacted"</js>.equals(value))
- * <jk>return</jk> TaxInfoUtils.<jsm>lookup</jsm>(a.getStreet(), a.getCity(), a.getState());
- * <jk>return</jk> value;
- * }
- * }
- * </p>
- *
- * <p>
- * Property filters are registered in the following ways:
- * <ul>
- * <li class='ja'>{@link org.apache.juneau.annotation.Bean#propertyFilter() @Bean.propertyFilter()}
- * <li class='jm'>{@link org.apache.juneau.transform.BeanFilterBuilder#propertyFilter(Class)}
- * </ul>
+ * <h5 class='section'>Example:</h5>
+ * <p class='bcode'>
+ * <jc>// Property filter that strips out sensitive information on Address beans.</jc>
+ * <jk>public class</jk> AddressPropertyFilter <jk>extends</jk> PropertyFilter {
*
- * <h5 class='section'>Example:</h5>
- * <p class='bcode'>
- * <jc>// Register filter on bean class.</jc>
- * <ja>@Bean</ja>(propertyFilter=AddressPropertyFilter.<jk>class</jk>)
- * <jk>public class</jk> Address {
- * <jk>public</jk> String getTaxInfo() {...}
- * <jk>public void</jk> setTaxInfo(String s) {...}
- * }
- *
- * <jc>// Or define a bean filter.</jc>
- * <jk>public class</jk> MyFilter <jk>extends</jk> BeanFilterBuilder<Address> {
- * <jk>public</jk> MyFilter() {
- * <jc>// Our bean contains generic collections of Foo and Bar objects.</jc>
- * propertyFilter(AddressPropertyFilter.<jk>class</jk>);
- * }
- * }
- *
- * <jc>// Register filter on serializer or parser.</jc>
- * WriterSerializer s = JsonSerializer
- * .<jsm>create</jsm>()
- * .beanFilters(MyFilter.<jk>class</jk>)
- * .build();
- * </p>
+ * <ja>@Override</ja>
+ * <jk>public</jk> Object readProperty(Object bean, String name, Object value) {
+ * <jk>if</jk> (<js>"taxInfo"</js>.equals(name))
+ * <jk>return</jk> <js>"redacted"</js>;
+ * <jk>return</jk> value;
+ * }
+ *
+ * <ja>@Override</ja>
+ * <jk>public</jk> Object writeProperty(Object bean, String name, Object value) {
+ * AddressBook a = (Address)bean;
+ * <jk>if</jk> (<js>"taxInfo"</js>.equals(name) && <js>"redacted"</js>.equals(value))
+ * <jk>return</jk> TaxInfoUtils.<jsm>lookup</jsm>(a.getStreet(), a.getCity(), a.getState());
+ * <jk>return</jk> value;
+ * }
+ * }
+ * </p>
+ *
+ * <p>
+ * Property filters are registered in the following ways:
+ * <ul>
+ * <li class='ja'>{@link org.apache.juneau.annotation.Bean#propertyFilter() @Bean.propertyFilter()}
+ * <li class='jm'>{@link org.apache.juneau.transform.BeanFilterBuilder#propertyFilter(Class)}
+ * </ul>
+ *
+ * <h5 class='section'>Example:</h5>
+ * <p class='bcode'>
+ * <jc>// Register filter on bean class.</jc>
+ * <ja>@Bean</ja>(propertyFilter=AddressPropertyFilter.<jk>class</jk>)
+ * <jk>public class</jk> Address {
+ * <jk>public</jk> String getTaxInfo() {...}
+ * <jk>public void</jk> setTaxInfo(String s) {...}
+ * }
+ *
+ * <jc>// Or define a bean filter.</jc>
+ * <jk>public class</jk> MyFilter <jk>extends</jk> BeanFilterBuilder<Address> {
+ * <jk>public</jk> MyFilter() {
+ * <jc>// Our bean contains generic collections of Foo and Bar objects.</jc>
+ * propertyFilter(AddressPropertyFilter.<jk>class</jk>);
+ * }
+ * }
+ *
+ * <jc>// Register filter on serializer or parser.</jc>
+ * WriterSerializer s = JsonSerializer
+ * .<jsm>create</jsm>()
+ * .beanFilters(MyFilter.<jk>class</jk>)
+ * .build();
+ * </p>
*/
public class PropertyFilter {
@@ -91,7 +91,7 @@ public class PropertyFilter {
* <p class='bcode'>
* <jc>// Address filter that strips out sensitive information.</jc>
* <jk>public class</jk> AddressPropertyFilter <jk>extends</jk> PropertyFilter {
- *
+ *
* <jk>public</jk> Object readProperty(Object bean, String name, Object value) {
* <jk>if</jk> (<js>"taxInfo"</js>.equals(name))
* <jk>return</jk> <js>"redacted"</js>;
@@ -99,7 +99,7 @@ public class PropertyFilter {
* }
* }
* </p>
- *
+ *
* @param bean The bean from which the property was read.
* @param name The property name.
* @param value The value just extracted from calling the bean getter.
@@ -115,12 +115,12 @@ public class PropertyFilter {
* <p>
* Subclasses can override this property to convert property values to some other object just before calling the
* bean setter.
- *
+ *
* <h5 class='section'>Example:</h5>
* <p class='bcode'>
* <jc>// Address filter that strips out sensitive information.</jc>
* <jk>public class</jk> AddressPropertyFilter <jk>extends</jk> PropertyFilter {
- *
+ *
* <jk>public</jk> Object writeProperty(Object bean, String name, Object value) {
* AddressBook a = (Address)bean;
* <jk>if</jk> (<js>"taxInfo"</js>.equals(name) && <js>"redacted"</js>.equals(value))
@@ -129,7 +129,7 @@ public class PropertyFilter {
* }
* }
* </p>
- *
+ *
* @param bean The bean from which the property was read.
* @param name The property name.
* @param value The value just parsed.
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/StringSwap.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/StringSwap.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/StringSwap.java
index 4980a00..a677844 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/StringSwap.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/StringSwap.java
@@ -16,8 +16,8 @@ import org.apache.juneau.*;
/**
* Abstract subclass for POJO swaps that swap objects for strings.
- *
- * <h6 class='topic'>Example</h6>
+ *
+ * <h5 class='section'>Example:</h5>
* <p class='bcode'>
* <jc>// A swap that converts byte arrays to BASE64-encoded strings.</jc>
* <jk>public class</jk> ByteArrayBase64Swap <jk>extends</jk> StringSwap<<jk>byte</jk>[]> {
@@ -37,7 +37,7 @@ import org.apache.juneau.*;
* WriterSerializer s = JsonSerializer.<jsm>create</jsm>().simple().pojoSwaps(ByteArrayBase64Swap.<jk>class</jk>).build();
* String json = s.serialize(<jk>new byte</jk>[] {1,2,3}); <jc>// Produces "'AQID'"</jc>
* </p>
- *
+ *
* @param <T> The normal form of the class.
*/
public abstract class StringSwap<T> extends PojoSwap<T,String> {
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/Surrogate.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/Surrogate.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/Surrogate.java
index aaf7e40..cda9667 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/Surrogate.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/Surrogate.java
@@ -16,27 +16,27 @@ import org.apache.juneau.*;
/**
* Identifies a class as being a surrogate class.
- *
+ *
* <p>
* Surrogate classes are used in place of other classes during serialization.
* For example, you may want to use a surrogate class to change the names or order of bean properties on a bean.
- *
+ *
* <p>
* This interface has no methods to implement.
* It's simply used by the framework to identify the class as a surrogate class when specified as a swap.
- *
+ *
* <p>
* The following is an example of a surrogate class change changes a property name:
* <p class='bcode'>
* <jk>public class</jk> MySurrogate <jk>implements</jk> Surrogate {
* <jk>public</jk> String surrogateField; <jc>// New bean property</jc>
- *
+ *
* <jk>public</jk> MySurrogate(NormalClass normalClass) {
* <jk>this</jk>.surrogateField = normalClass.normalField;
* }
* }
* </p>
- *
+ *
* <p>
* Optionally, a public static method can be used to un-transform a class during parsing:
* <p class='bcode'>
@@ -47,7 +47,7 @@ import org.apache.juneau.*;
* }
* }
* </p>
- *
+ *
* <p>
* Surrogate classes must conform to the following:
* <ul class='spaced-list'>
@@ -65,7 +65,7 @@ import org.apache.juneau.*;
* transformed class can be instantiated by the parser before being converted into the normal class by the
* un-transform method).
* </ul>
- *
+ *
* <p>
* Surrogate classes are associated with serializers and parsers using the {@link BeanContextBuilder#pojoSwaps(Class...)}
* method.
@@ -76,37 +76,37 @@ import org.apache.juneau.*;
* JsonParser p = JsonParser.<jsm>create</jsm>().pojoSwaps(MySurrogate.<jk>class</jk>).build();
* String r;
* Normal n = Normal.<jsm>create</jsm>();
- *
+ *
* r = s.serialize(n);
* assertEquals(<js>"{f2:'f1'}"</js>, r);
- *
+ *
* n = p.parse(r, Normal.<jk>class</jk>);
* assertEquals(<js>"f1"</js>, n.f1);
* }
- *
+ *
* <jc>// The normal class</jc>
* <jk>public class</jk> Normal {
* <jk>public</jk> String f1;
- *
+ *
* <jk>public static</jk> Normal <jsm>create</jsm>() {
* Normal n = <jk>new</jk> Normal();
* n.f1 = <js>"f1"</js>;
* <jk>return</jk> n;
* }
* }
- *
+ *
* <jc>// The surrogate class</jc>
* <jk>public class</jk> MySurrogate <jk>implements</jk> Surrogate {
* <jk>public</jk> String f2;
- *
+ *
* <jc>// Surrogate constructor</jc>
* <jk>public</jk> MySurrogate(Normal n) {
* f2 = n.f1;
* }
- *
+ *
* <jc>// Constructor used during parsing (only needed if un-transform method specified)</jc>
* <jk>public</jk> MySurrogate() {}
- *
+ *
* <jc>// Un-transform method (optional)</jc>
* <jk>public static</jk> Normal <jsm>toNormal</jsm>(Surrogate f) {
* Normal n = <jk>new</jk> Normal();
@@ -115,7 +115,7 @@ import org.apache.juneau.*;
* }
* }
* </p>
- *
+ *
* <p>
* It should be noted that a surrogate class is functionally equivalent to the following {@link PojoSwap}
* implementation:
@@ -129,6 +129,6 @@ import org.apache.juneau.*;
* }
* }
* </p>
- *
+ *
*/
public interface Surrogate {}
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/SurrogateSwap.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/SurrogateSwap.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/SurrogateSwap.java
index b3d2b56..5a0785e 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/SurrogateSwap.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transform/SurrogateSwap.java
@@ -22,7 +22,7 @@ import org.apache.juneau.serializer.*;
/**
* Specialized {@link PojoSwap} for {@link Surrogate} classes.
- *
+ *
* @param <T> The class type that this transform applies to.
* @param <F> The transformed class type.
*/
@@ -33,7 +33,7 @@ public class SurrogateSwap<T,F> extends PojoSwap<T,F> {
/**
* Constructor.
- *
+ *
* @param forClass The normal class.
* @param constructor The constructor on the surrogate class that takes the normal class as a parameter.
* @param untransformMethod The static method that converts surrogate objects into normal objects.
@@ -46,11 +46,11 @@ public class SurrogateSwap<T,F> extends PojoSwap<T,F> {
/**
* Given the specified surrogate class, return the list of POJO swaps.
- *
+ *
* <p>
* A transform is returned for each public 1-arg constructor found.
* Returns an empty list if no public 1-arg constructors are found.
- *
+ *
* @param c The surrogate class.
* @return The list of POJO swaps that apply to this class.
*/
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/BeanStringSwap.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/BeanStringSwap.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/BeanStringSwap.java
index 9f49c73..907ff75 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/BeanStringSwap.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/BeanStringSwap.java
@@ -17,17 +17,17 @@ import org.apache.juneau.transform.*;
/**
* Transforms beans into {@link String Strings} by simply calling the {@link Object#toString()} method.
- *
+ *
* <p>
* Allows you to specify classes that should just be converted to {@code Strings} instead of potentially
* being turned into Maps by the {@link BeanContext} (or worse, throwing
* {@link BeanRuntimeException BeanRuntimeExceptions}).
- *
+ *
* <p>
* This is usually a one-way transform.
* Beans serialized as strings cannot be reconstituted using a parser unless it is a
* <a class="doclink" href="../../../../overview-summary.html#juneau-marshall.PojoCategories">Type 5 POJO</a>.
- *
+ *
* @param <T> The class type of the bean.
*/
public class BeanStringSwap<T> extends StringSwap<T> {
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/CalendarSwap.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/CalendarSwap.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/CalendarSwap.java
index 24585ba..e679581 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/CalendarSwap.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/CalendarSwap.java
@@ -24,9 +24,9 @@ import org.apache.juneau.utils.*;
/**
* Transforms {@link Calendar Calendars} to {@link String Strings}.
- *
+ *
* <h6 class='topic'>Behavior-specific subclasses</h6>
- *
+ *
* The following direct subclasses are provided for convenience to the following formats:
* <ul>
* <li>{@link ToString} - To {@link String Strings} using the {@code Date.toString()} method.
@@ -58,7 +58,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Transforms {@link Calendar Calendars} to {@link String Strings} using the {@code Date.toString()} method.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"Wed Jul 04 15:30:45 EST 2001"</js>
@@ -79,13 +79,13 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Transforms {@link Calendar Calendars} to ISO8601 date-time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"2001-07-04T15:30:45-05:00"</js>
* <li><js>"2001-07-04T15:30:45Z"</js>
* </ul>
- *
+ *
* <h6 class='topic'>Example input:</h6>
* <ul>
* <li><js>"2001-07-04T15:30:45-05:00"</js>
@@ -112,12 +112,12 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Transforms {@link Calendar Calendars} to ISO8601 date-time-local strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"2001-07-04T15:30:45"</js>
* </ul>
- *
+ *
* <h6 class='topic'>Example input:</h6>
* <ul>
* <li><js>"2001-07-04T15:30:45"</js>
@@ -143,7 +143,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Same as {@link ISO8601DT}, except always serializes in GMT.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <js>"2001-07-04T15:30:45Z"</js>
*/
@@ -162,7 +162,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Same as {@link ISO8601DT} except serializes to millisecond precision.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <js>"2001-07-04T15:30:45.123Z"</js>
*/
@@ -176,7 +176,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Same as {@link ISO8601DTZ} except serializes to millisecond precision.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <js>"2001-07-04T15:30:45.123"</js>
*/
@@ -190,7 +190,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* ISO8601 date only.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <js>"2001-07-04"</js>
*/
@@ -209,7 +209,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Transforms {@link Calendar Calendars} to RFC2822 date-time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"Sat, 03 Mar 2001 10:11:12 +0000"</js> <jc>// en_US</jc>
@@ -232,7 +232,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Same as {@link RFC2822DT}, except always serializes in GMT.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"Sat, 03 Mar 2001 10:11:12 GMT"</js> <jc>// en_US</jc>
@@ -255,7 +255,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Transforms {@link Calendar Calendars} to RFC2822 date strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"03 Mar 2001"</js> <jc>// en_US</jc>
@@ -278,7 +278,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Transforms {@link Calendar Calendars} to simple <js>"yyyy/MM/dd HH:mm:ss"</js> date-time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"2001/03/03 10:11:12"</js>
@@ -299,7 +299,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Transforms {@link Calendar Calendars} to simple <js>"yyyy/MM/dd"</js> date strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"2001/03/03"</js>
@@ -320,7 +320,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Transforms {@link Calendar Calendars} to simple <js>"HH:mm:ss"</js> time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"10:11:12"</js>
@@ -341,7 +341,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Transforms {@link Calendar Calendars} to {@link DateFormat#FULL} date strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"Saturday, March 3, 2001"</js> <jc>// en_US</jc>
@@ -364,7 +364,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Transforms {@link Calendar Calendars} to {@link DateFormat#LONG} date strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"March 3, 2001"</js> <jc>// en_US</jc>
@@ -387,7 +387,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Transforms {@link Calendar Calendars} to {@link DateFormat#MEDIUM} date strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"Mar 3, 2001"</js> <jc>// en_US</jc>
@@ -410,7 +410,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Transforms {@link Calendar Calendars} to {@link DateFormat#SHORT} date strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"3/3/01"</js> <jc>// en_US</jc>
@@ -433,7 +433,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Transforms {@link Calendar Calendars} to {@link DateFormat#FULL} time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"10:11:12 AM GMT"</js> <jc>// en_US</jc>
@@ -456,7 +456,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Transforms {@link Calendar Calendars} to {@link DateFormat#LONG} time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"10:11:12 AM GMT"</js> <jc>// en_US</jc>
@@ -479,7 +479,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Transforms {@link Calendar Calendars} to {@link DateFormat#MEDIUM} time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"10:11:12 AM"</js> <jc>// en_US</jc>
@@ -502,7 +502,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Transforms {@link Calendar Calendars} to {@link DateFormat#SHORT} time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"10:11 AM"</js> <jc>// en_US</jc>
@@ -525,7 +525,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Transforms {@link Calendar Calendars} to {@link DateFormat#FULL} date-time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"Saturday, March 3, 2001 10:11:12 AM GMT"</js> <jc>// en_US</jc>
@@ -548,7 +548,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Transforms {@link Calendar Calendars} to {@link DateFormat#LONG} date-time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"March 3, 2001 10:11:12 AM GMT"</js> <jc>// en_US</jc>
@@ -571,7 +571,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Transforms {@link Calendar Calendars} to {@link DateFormat#MEDIUM} date-time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"Mar 3, 2001 10:11:12 AM"</js> <jc>// en_US</jc>
@@ -594,7 +594,7 @@ public class CalendarSwap extends StringSwap<Calendar> {
/**
* Transforms {@link Calendar Calendars} to {@link DateFormat#SHORT} date-time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"3/3/01 10:11 AM"</js> <jc>// en_US</jc>
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/DateSwap.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/DateSwap.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/DateSwap.java
index 0b9aea0..28022da 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/DateSwap.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/DateSwap.java
@@ -24,9 +24,9 @@ import org.apache.juneau.utils.*;
/**
* Transforms {@link Date Dates} to {@link String Strings}.
- *
+ *
* <h6 class='topic'>Behavior-specific subclasses</h6>
- *
+ *
* The following direct subclasses are provided for convenience to the following formats:
* <ul>
* <li>{@link ToString} - To {@link String Strings} using the {@code Date.toString()} method.
@@ -58,7 +58,7 @@ public class DateSwap extends StringSwap<Date> {
/**
* Transforms {@link Date Dates} to {@link String Strings} using the {@code Date.toString()} method.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"Wed Jul 04 15:30:45 EST 2001"</js>
@@ -79,13 +79,13 @@ public class DateSwap extends StringSwap<Date> {
/**
* Transforms {@link Calendar Calendars} to ISO8601 date-time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"2001-07-04T15:30:45-05:00"</js>
* <li><js>"2001-07-04T15:30:45Z"</js>
* </ul>
- *
+ *
* <h6 class='topic'>Example input:</h6>
* <ul>
* <li><js>"2001-07-04T15:30:45-05:00"</js>
@@ -112,12 +112,12 @@ public class DateSwap extends StringSwap<Date> {
/**
* Transforms {@link Date Dates} to ISO8601 date-time-local strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"2001-07-04T15:30:45"</js>
* </ul>
- *
+ *
* <h6 class='topic'>Example input:</h6>
* <ul>
* <li><js>"2001-07-04T15:30:45"</js>
@@ -143,7 +143,7 @@ public class DateSwap extends StringSwap<Date> {
/**
* Same as {@link ISO8601DT}, except always serializes in GMT.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <js>"2001-07-04T15:30:45Z"</js>
*/
@@ -162,7 +162,7 @@ public class DateSwap extends StringSwap<Date> {
/**
* Same as {@link CalendarSwap.ISO8601DT} except serializes to millisecond precision.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <js>"2001-07-04T15:30:45.123Z"</js>
*/
@@ -176,7 +176,7 @@ public class DateSwap extends StringSwap<Date> {
/**
* Same as {@link CalendarSwap.ISO8601DTZ} except serializes to millisecond precision.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <js>"2001-07-04T15:30:45.123"</js>
*/
@@ -190,7 +190,7 @@ public class DateSwap extends StringSwap<Date> {
/**
* ISO8601 date only.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <js>"2001-07-04"</js>
*/
@@ -209,7 +209,7 @@ public class DateSwap extends StringSwap<Date> {
/**
* Transforms {@link Date Dates} to RFC2822 date-time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"Sat, 03 Mar 2001 10:11:12 +0000"</js> <jc>// en_US</jc>
@@ -232,7 +232,7 @@ public class DateSwap extends StringSwap<Date> {
/**
* Same as {@link DateSwap.RFC2822DT}, except always serializes in GMT.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"Sat, 03 Mar 2001 10:11:12 GMT"</js> <jc>// en_US</jc>
@@ -255,7 +255,7 @@ public class DateSwap extends StringSwap<Date> {
/**
* Transforms {@link Date Dates} to RFC2822 date strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"03 Mar 2001"</js> <jc>// en_US</jc>
@@ -278,7 +278,7 @@ public class DateSwap extends StringSwap<Date> {
/**
* Transforms {@link Date Dates} to simple <js>"yyyy/MM/dd HH:mm:ss"</js> date-time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"2001/03/03 10:11:12"</js>
@@ -299,7 +299,7 @@ public class DateSwap extends StringSwap<Date> {
/**
* Transforms {@link Date Dates} to simple <js>"yyyy/MM/dd"</js> date strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"2001/03/03"</js>
@@ -320,7 +320,7 @@ public class DateSwap extends StringSwap<Date> {
/**
* Transforms {@link Date Dates} to simple <js>"HH:mm:ss"</js> time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"10:11:12"</js>
@@ -341,7 +341,7 @@ public class DateSwap extends StringSwap<Date> {
/**
* Transforms {@link Date Dates} to {@link DateFormat#FULL} date strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"Saturday, March 3, 2001"</js> <jc>// en_US</jc>
@@ -364,7 +364,7 @@ public class DateSwap extends StringSwap<Date> {
/**
* Transforms {@link Date Dates} to {@link DateFormat#LONG} date strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"March 3, 2001"</js> <jc>// en_US</jc>
@@ -387,7 +387,7 @@ public class DateSwap extends StringSwap<Date> {
/**
* Transforms {@link Date Dates} to {@link DateFormat#MEDIUM} date strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"Mar 3, 2001"</js> <jc>// en_US</jc>
@@ -410,7 +410,7 @@ public class DateSwap extends StringSwap<Date> {
/**
* Transforms {@link Date Dates} to {@link DateFormat#SHORT} date strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"3/3/01"</js> <jc>// en_US</jc>
@@ -433,7 +433,7 @@ public class DateSwap extends StringSwap<Date> {
/**
* Transforms {@link Date Dates} to {@link DateFormat#FULL} time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"10:11:12 AM GMT"</js> <jc>// en_US</jc>
@@ -456,7 +456,7 @@ public class DateSwap extends StringSwap<Date> {
/**
* Transforms {@link Date Dates} to {@link DateFormat#LONG} time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"10:11:12 AM GMT"</js> <jc>// en_US</jc>
@@ -479,7 +479,7 @@ public class DateSwap extends StringSwap<Date> {
/**
* Transforms {@link Date Dates} to {@link DateFormat#MEDIUM} time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"10:11:12 AM"</js> <jc>// en_US</jc>
@@ -502,7 +502,7 @@ public class DateSwap extends StringSwap<Date> {
/**
* Transforms {@link Date Dates} to {@link DateFormat#SHORT} time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"10:11 AM"</js> <jc>// en_US</jc>
@@ -525,7 +525,7 @@ public class DateSwap extends StringSwap<Date> {
/**
* Transforms {@link Date Dates} to {@link DateFormat#FULL} date-time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"Saturday, March 3, 2001 10:11:12 AM GMT"</js> <jc>// en_US</jc>
@@ -548,7 +548,7 @@ public class DateSwap extends StringSwap<Date> {
/**
* Transforms {@link Date Dates} to {@link DateFormat#LONG} date-time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"March 3, 2001 10:11:12 AM GMT"</js> <jc>// en_US</jc>
@@ -571,7 +571,7 @@ public class DateSwap extends StringSwap<Date> {
/**
* Transforms {@link Date Dates} to {@link DateFormat#MEDIUM} date-time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"Mar 3, 2001 10:11:12 AM"</js> <jc>// en_US</jc>
@@ -594,7 +594,7 @@ public class DateSwap extends StringSwap<Date> {
/**
* Transforms {@link Date Dates} to {@link DateFormat#SHORT} date-time strings.
- *
+ *
* <h5 class='section'>Example output:</h5>
* <ul>
* <li><js>"3/3/01 10:11 AM"</js> <jc>// en_US</jc>
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/IteratorSwap.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/IteratorSwap.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/IteratorSwap.java
index 219baec..74fa31c 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/IteratorSwap.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/IteratorSwap.java
@@ -19,7 +19,7 @@ import org.apache.juneau.transform.*;
/**
* Transforms {@link Iterator Iterators} to {@code List<Object>} objects.
- *
+ *
* <p>
* This is a one-way transform, since {@code Iterators} cannot be reconstituted.
*/
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/ReaderSwap.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/ReaderSwap.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/ReaderSwap.java
index c2b3199..31b8955 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/ReaderSwap.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/ReaderSwap.java
@@ -27,20 +27,21 @@ import org.apache.juneau.xml.*;
/**
* Transforms the contents of a {@link Reader} into an {@code Object}.
- *
- * <h5 class='section'>Description:</h5>
- *
+ *
+ *
+ * <h5 class='topic'>Description</h5>
+ *
* The {@code Reader} must contain JSON, Juneau-generated XML (output from {@link XmlSerializer}), or Juneau-generated
* HTML (output from {@link JsonSerializer}) in order to be parsed correctly.
- *
+ *
* <p>
* Useful for serializing models that contain {@code Readers} created by {@code RestCall} instances.
- *
+ *
* <p>
* This is a one-way transform, since {@code Readers} cannot be reconstituted.
- *
+ *
* <h6 class='topic'>Behavior-specific subclasses</h6>
- *
+ *
* The following direct subclasses are provided for convenience:
* <ul>
* <li>{@link Json} - Parses JSON text.
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/StringFormatSwap.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/StringFormatSwap.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/StringFormatSwap.java
index 24c0ab0..291064a 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/StringFormatSwap.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/StringFormatSwap.java
@@ -25,7 +25,7 @@ public class StringFormatSwap extends StringSwap<Object> {
/**
* Constructor.
- *
+ *
* @param format The string format string.
*/
public StringFormatSwap(String format) {
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/XMLGregorianCalendarSwap.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/XMLGregorianCalendarSwap.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/XMLGregorianCalendarSwap.java
index 446e150..e887753 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/XMLGregorianCalendarSwap.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/transforms/XMLGregorianCalendarSwap.java
@@ -21,10 +21,10 @@ import org.apache.juneau.transform.*;
/**
* Transforms {@link XMLGregorianCalendar XMLGregorianCalendars} to ISO8601 date-time {@link String Strings}.
- *
+ *
* <p>
* Objects are converted to strings using {@link XMLGregorianCalendar#toXMLFormat()}.
- *
+ *
* <p>
* Strings are converted to objects using {@link DatatypeFactory#newXMLGregorianCalendar(String)}.
*/
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/ParamFormat.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/ParamFormat.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/ParamFormat.java
index 9b3d642..592831f 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/ParamFormat.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/ParamFormat.java
@@ -19,10 +19,10 @@ public enum ParamFormat {
/**
* Use UON notation for values.
- *
+ *
* <p>
* String values such as <js>"(foo='bar')"</js> will end up being quoted and escaped to <js>"'(foo=bar~'baz~')'"</js>.
- *
+ *
* <p>
* Boolean strings (<js>"true"</js>/<js>"false"</js>) and numeric values (<js>"123"</js>) will also end up quoted
* (<js>"'true'"</js>, <js>"'false'"</js>, <js>"'123'"</js>.
@@ -31,11 +31,11 @@ public enum ParamFormat {
/**
* Serialize as plain text.
- *
+ *
* <p>
* Strings will never be quoted or escaped.
* <br>Maps and array constructs (<js>"(...)"</js>, <js>"@(...)"</js>) will never be used.
- *
+ *
* <p>
* Note that this can cause errors during parsing if you're using the URL-encoding parser to parse the results since
* UON constructs won't be differentiable.
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParser.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParser.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParser.java
index 7bd3fc9..b378faf 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParser.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParser.java
@@ -18,13 +18,15 @@ import org.apache.juneau.urlencoding.*;
/**
* Parses UON (a notation for URL-encoded query parameter values) text into POJO models.
- *
- * <h5 class='section'>Media types:</h5>
- *
- * Handles <code>Content-Type</code> types: <code>text/uon</code>
- *
- * <h5 class='section'>Description:</h5>
- *
+ *
+ *
+ * <h5 class='topic'>Media types</h5>
+ *
+ * Handles <code>Content-Type</code> types: <code><b>text/uon</b></code>
+ *
+ *
+ * <h5 class='topic'>Description</h5>
+ *
* This parser uses a state machine, which makes it very fast and efficient.
*/
public class UonParser extends ReaderParser {
@@ -37,7 +39,7 @@ public class UonParser extends ReaderParser {
/**
* Configuration property: Decode <js>"%xx"</js> sequences.
- *
+ *
* <h5 class='section'>Property:</h5>
* <ul>
* <li><b>Name:</b> <js>"UonParser.decoding.b"</js>
@@ -50,7 +52,7 @@ public class UonParser extends ReaderParser {
* <li class='jm'>{@link UonParserBuilder#decoding()}
* </ul>
* </ul>
- *
+ *
* <h5 class='section'>Description:</h5>
* <p>
* Specify <jk>true</jk> if URI encoded characters should be decoded, <jk>false</jk> if they've already been decoded
@@ -70,7 +72,7 @@ public class UonParser extends ReaderParser {
* .set(<jsf>UON_decoding</jsf>, <jk>true</jk>)
* .build();
*
- * <jc>// Produces: ["foo bar", "baz quz"].</jc>
+ * <jc>// Produces: ["foo bar", "baz quz"].</jc>
* String[] foo = p.parse(<js>"@(foo%20bar,baz%20qux)"</js>, String[].<jk>class</jk>);
* </p>
*/
@@ -97,7 +99,7 @@ public class UonParser extends ReaderParser {
/**
* Constructor.
- *
+ *
* @param ps The property store containing all the settings for this object.
*/
public Decoding(PropertyStore ps) {
@@ -115,7 +117,7 @@ public class UonParser extends ReaderParser {
/**
* Constructor.
- *
+ *
* @param ps
* The property store containing all the settings for this object.
*/
@@ -125,7 +127,7 @@ public class UonParser extends ReaderParser {
/**
* Constructor.
- *
+ *
* @param ps
* The property store containing all the settings for this object.
* @param consumes
@@ -159,7 +161,7 @@ public class UonParser extends ReaderParser {
/**
* Create a UON parser session for parsing parameter values.
- *
+ *
* @return A new parser session.
*/
protected final UonParserSession createParameterSession() {
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserBuilder.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserBuilder.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserBuilder.java
index ccb6cab..9dd292a 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserBuilder.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserBuilder.java
@@ -35,7 +35,7 @@ public class UonParserBuilder extends ParserBuilder {
/**
* Constructor.
- *
+ *
* @param ps The initial configuration settings for this builder.
*/
public UonParserBuilder(PropertyStore ps) {
@@ -54,11 +54,11 @@ public class UonParserBuilder extends ParserBuilder {
/**
* Configuration property: Decode <js>"%xx"</js> sequences.
- *
+ *
* <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.
- *
+ *
* <h5 class='section'>See Also:</h5>
* <ul>
* <li class='jf'>{@link UonParser#UON_decoding}
@@ -78,7 +78,7 @@ public class UonParserBuilder extends ParserBuilder {
*
* <p>
* Shortcut for calling <code>decodeChars(<jk>true</jk>)</code>.
- *
+ *
* <h5 class='section'>See Also:</h5>
* <ul>
* <li class='jf'>{@link UonParser#UON_decoding}
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserSession.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserSession.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserSession.java
index 029197b..95ebad8 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserSession.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserSession.java
@@ -26,7 +26,7 @@ import org.apache.juneau.transform.*;
/**
* Session object that lives for the duration of a single use of {@link UonParser}.
- *
+ *
* <p>
* This class is NOT thread safe.
* It is typically discarded after one-time use although it can be reused against multiple inputs.
@@ -44,7 +44,7 @@ public class UonParserSession extends ReaderParserSession {
/**
* Create a new session using properties specified in the context.
- *
+ *
* @param ctx
* The context creating this session object.
* The context contains all the configuration settings for this object.
@@ -66,11 +66,11 @@ public class UonParserSession extends ReaderParserSession {
/**
* Create a specialized parser session for parsing URL parameters.
- *
+ *
* <p>
* The main difference is that characters are never decoded, and the {@link UonParser#UON_decoding}
* property is always ignored.
- *
+ *
* @param ctx
* The context creating this session object.
* The context contains all the configuration settings for this object.
@@ -113,7 +113,7 @@ public class UonParserSession extends ReaderParserSession {
/**
* Workhorse method.
- *
+ *
* @param eType The class type being parsed, or <jk>null</jk> if unknown.
* @param r The reader being parsed.
* @param outer The outer object (for constructing nested inner classes).
@@ -547,7 +547,7 @@ public class UonParserSession extends ReaderParserSession {
/**
* Convenience method for parsing an attribute from the specified parser.
- *
+ *
* @param r
* @param encoded
* @return The parsed object
@@ -561,7 +561,7 @@ public class UonParserSession extends ReaderParserSession {
/**
* Parses an attribute name from the specified reader.
- *
+ *
* @param r
* @param encoded
* @return The parsed attribute name.
@@ -631,7 +631,7 @@ public class UonParserSession extends ReaderParserSession {
/**
* Parses a string value from the specified reader.
- *
+ *
* @param r
* @param isUrlParamValue
* @return The parsed string.
@@ -749,7 +749,7 @@ public class UonParserSession extends ReaderParserSession {
/**
* Returns a map identifying the current parse location.
- *
+ *
* @param r The reader being read from.
* @return A map identifying the current parse location.
*/
@@ -759,7 +759,7 @@ public class UonParserSession extends ReaderParserSession {
/**
* Creates a {@link UonReader} from the specified parser pipe.
- *
+ *
* @param pipe The parser input.
* @param decodeChars Whether the reader should automatically decode URL-encoded characters.
* @return A new {@link UonReader} object.
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonReader.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonReader.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonReader.java
index 3037ad3..37819b7 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonReader.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonReader.java
@@ -18,10 +18,10 @@ import org.apache.juneau.parser.*;
/**
* Same functionality as {@link ParserReader} except automatically decoded <code>%xx</code> escape sequences.
- *
+ *
* <p>
* Escape sequences are assumed to be encoded UTF-8. Extended Unicode (>\u10000) is supported.
- *
+ *
* <p>
* If decoding is enabled, the following character replacements occur so that boundaries are not lost:
* <ul>
@@ -40,7 +40,7 @@ public final class UonReader extends ParserReader {
/**
* Constructor.
- *
+ *
* @param pipe The parser input.
* @param decodeChars Whether the input is URL-encoded.
* @throws Exception
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializer.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializer.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializer.java
index 60d6808..bc449f6 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializer.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializer.java
@@ -18,20 +18,21 @@ import org.apache.juneau.urlencoding.*;
/**
* Serializes POJO models to UON (a notation for URL-encoded query parameter values).
- *
- * <h5 class='section'>Media types:</h5>
- *
- * Handles <code>Accept</code> types: <code>text/uon</code>
- *
+ *
+ *
+ * <h5 class='topic'>Media types</h5>
+ *
+ * Handles <code>Accept</code> types: <code><b>text/uon</b></code>
* <p>
- * Produces <code>Content-Type</code> types: <code>text/uon</code>
- *
- * <h5 class='section'>Description:</h5>
- *
+ * Produces <code>Content-Type</code> types: <code><b>text/uon</b></code>
+ *
+ *
+ * <h5 class='topic'>Description</h5>
+ *
* This serializer provides several serialization options.
* Typically, one of the predefined DEFAULT serializers will be sufficient.
* However, custom serializers can be constructed to fine-tune behavior.
- *
+ *
* <p>
* The following shows a sample object defined in Javascript:
* <p class='bcode'>
@@ -56,7 +57,7 @@ import org.apache.juneau.urlencoding.*;
* ]
* }
* </p>
- *
+ *
* <p>
* Using the "strict" syntax defined in this document, the equivalent UON notation would be as follows:
* <p class='bcode'>
@@ -81,16 +82,16 @@ import org.apache.juneau.urlencoding.*;
* )
* )
* </p>
- *
+ *
* <h5 class='section'>Example:</h5>
* <p class='bcode'>
* <jc>// Serialize a Map</jc>
* Map m = <jk>new</jk> ObjectMap(<js>"{a:'b',c:1,d:false,e:['f',1,false],g:{h:'i'}}"</js>);
- *
+ *
* <jc>// Serialize to value equivalent to JSON.</jc>
* <jc>// Produces "(a=b,c=1,d=false,e=@(f,1,false),g=(h=i))"</jc>
* String s = UonSerializer.<jsf>DEFAULT</jsf>.serialize(s);
- *
+ *
* <jc>// Serialize a bean</jc>
* <jk>public class</jk> Person {
* <jk>public</jk> Person(String s);
@@ -99,17 +100,17 @@ import org.apache.juneau.urlencoding.*;
* <jk>public</jk> Address getAddress();
* <jk>public boolean</jk> deceased;
* }
- *
+ *
* <jk>public class</jk> Address {
* <jk>public</jk> String getStreet();
* <jk>public</jk> String getCity();
* <jk>public</jk> String getState();
* <jk>public int</jk> getZip();
* }
- *
+ *
* Person p = <jk>new</jk> Person(<js>"John Doe"</js>, 23, <js>"123 Main St"</js>, <js>"Anywhere"</js>,
* <js>"NY"</js>, 12345, <jk>false</jk>);
- *
+ *
* <jc>// Produces "(name='John Doe',age=23,address=(street='123 Main St',city=Anywhere,state=NY,zip=12345),deceased=false)"</jc>
* String s = UonSerializer.<jsf>DEFAULT</jsf>.serialize(s);
* </p>
@@ -124,7 +125,7 @@ public class UonSerializer extends WriterSerializer {
/**
* Configuration property: Add <js>"_type"</js> properties when needed.
- *
+ *
* <h5 class='section'>Property:</h5>
* <ul>
* <li><b>Name:</b> <js>"UonSerializer.addBeanTypeProperties.b"</js>
@@ -136,12 +137,12 @@ public class UonSerializer extends WriterSerializer {
* <li class='jm'>{@link UonSerializerBuilder#addBeanTypeProperties(boolean)}
* </ul>
* </ul>
- *
+ *
* <h5 class='section'>Description:</h5>
* <p>
* If <jk>true</jk>, then <js>"_type"</js> properties will be added to beans if their type cannot be inferred
* through reflection.
- *
+ *
* <p>
* When present, this value overrides the {@link #SERIALIZER_addBeanTypeProperties} setting and is
* provided to customize the behavior of specific serializers in a {@link SerializerGroup}.
@@ -150,7 +151,7 @@ public class UonSerializer extends WriterSerializer {
/**
* Configuration property: Encode non-valid URI characters.
- *
+ *
* <h5 class='section'>Property:</h5>
* <ul>
* <li><b>Name:</b> <js>"UonSerializer.encoding.b"</js>
@@ -163,11 +164,11 @@ public class UonSerializer extends WriterSerializer {
* <li class='jm'>{@link UonSerializerBuilder#encoding()}
* </ul>
* </ul>
- *
+ *
* <h5 class='section'>Description:</h5>
* <p>
* Encode non-valid URI characters with <js>"%xx"</js> constructs.
- *
+ *
* <p>
* If <jk>true</jk>, non-valid URI characters will be converted to <js>"%xx"</js> sequences.
* <br>Set to <jk>false</jk> if parameter value is being passed to some other code that will already perform
@@ -199,7 +200,7 @@ public class UonSerializer extends WriterSerializer {
/**
* Configuration property: Format to use for query/form-data/header values.
- *
+ *
* <h5 class='section'>Property:</h5>
* <ul>
* <li><b>Name:</b> <js>"UrlEncodingSerializer.paramFormat.s"</js>
@@ -212,7 +213,7 @@ public class UonSerializer extends WriterSerializer {
* <li class='jm'>{@link UonSerializerBuilder#paramFormatPlain()}
* </ul>
* </ul>
- *
+ *
* <h5 class='section'>Description:</h5>
* <p>
* Specifies the format to use for URL GET parameter keys and values.
@@ -276,7 +277,7 @@ public class UonSerializer extends WriterSerializer {
/**
* Constructor.
- *
+ *
* @param ps The property store containing all the settings for this object.
*/
public Readable(PropertyStore ps) {
@@ -291,7 +292,7 @@ public class UonSerializer extends WriterSerializer {
/**
* Constructor.
- *
+ *
* @param ps The property store containing all the settings for this object.
*/
public Encoding(PropertyStore ps) {
@@ -313,7 +314,7 @@ public class UonSerializer extends WriterSerializer {
/**
* Constructor.
- *
+ *
* @param ps
* The property store containing all the settings for this object.
*/
@@ -323,7 +324,7 @@ public class UonSerializer extends WriterSerializer {
/**
* Constructor.
- *
+ *
* @param ps
* The property store containing all the settings for this object.
* @param produces
http://git-wip-us.apache.org/repos/asf/juneau/blob/5686b8d6/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializerBuilder.java
----------------------------------------------------------------------
diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializerBuilder.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializerBuilder.java
index ff4b0d8..b605b7b 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializerBuilder.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializerBuilder.java
@@ -34,7 +34,7 @@ public class UonSerializerBuilder extends SerializerBuilder {
/**
* Constructor.
- *
+ *
* @param ps The initial configuration settings for this builder.
*/
public UonSerializerBuilder(PropertyStore ps) {
@@ -53,10 +53,10 @@ public class UonSerializerBuilder extends SerializerBuilder {
/**
* Configuration property: Encode non-valid URI characters.
- *
+ *
* <p>
* Encode non-valid URI characters with <js>"%xx"</js> constructs.
- *
+ *
* <h5 class='section'>See Also:</h5>
* <ul>
* <li class='jf'>{@link UonSerializer#UON_encoding}
@@ -73,15 +73,15 @@ public class UonSerializerBuilder extends SerializerBuilder {
/**
* Configuration property: Encode non-valid URI characters.
- *
+ *
* <p>
* Shortcut for calling <code>encoding(<jk>true</jk>)</code>.
- *
+ *
* <h5 class='section'>See Also:</h5>
* <ul>
* <li class='jf'>{@link UonSerializer#UON_encoding}
* </ul>
- *
+ *
* @return This object (for method chaining).
*/
public UonSerializerBuilder encoding() {
@@ -90,15 +90,15 @@ public class UonSerializerBuilder extends SerializerBuilder {
/**
* Configuration property: Format to use for query/form-data/header values.
- *
+ *
* <p>
* Specifies the format to use for URL GET parameter keys and values.
- *
+ *
* <h5 class='section'>See Also:</h5>
* <ul>
* <li class='jf'>{@link UonSerializer#UON_paramFormat}
* </ul>
- *
+ *
* @param value
* The new value for this property.
* <br>The default value is {@link ParamFormat#UON}.
@@ -110,15 +110,15 @@ public class UonSerializerBuilder extends SerializerBuilder {
/**
* Configuration property: Format to use for query/form-data/header values.
- *
+ *
* <p>
* Shortcut for calling <code>paramFormat(<jsf>PLAINTEXT</jsf>)</code>.
- *
+ *
* <h5 class='section'>See Also:</h5>
* <ul>
* <li class='jf'>{@link UonSerializer#UON_paramFormat}
* </ul>
- *
+ *
* @return This object (for method chaining).
*/
public UonSerializerBuilder paramFormatPlain() {