http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/json/JsonSerializer.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/json/JsonSerializer.java b/juneau-core/src/main/java/org/apache/juneau/json/JsonSerializer.java index 3559590..d5c2b3f 100644 --- a/juneau-core/src/main/java/org/apache/juneau/json/JsonSerializer.java +++ b/juneau-core/src/main/java/org/apache/juneau/json/JsonSerializer.java @@ -25,13 +25,13 @@ import org.apache.juneau.transform.*; /** * Serializes POJO models to JSON. * - * <h6 class='topic'>Media types</h6> + * <h5 class='section'>Media types:</h5> * <p> * Handles <code>Accept</code> types: <code>application/json, text/json</code> * <p> * Produces <code>Content-Type</code> types: <code>application/json</code> * - * <h6 class='topic'>Description</h6> + * <h5 class='section'>Description:</h5> * <p> * The conversion is as follows... * <ul class='spaced-list'> @@ -52,7 +52,7 @@ import org.apache.juneau.transform.*; * 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. * - * <h6 class='topic'>Configurable properties</h6> + * <h5 class='section'>Configurable properties:</h5> * <p> * This class has the following properties associated with it: * <ul> @@ -69,7 +69,7 @@ import org.apache.juneau.transform.*; * <li>{@link SimpleReadable} - Default serializer, single quotes, simple mode, with whitespace. * </ul> * - * <h6 class='topic'>Example:</h6> + * <h5 class='section'>Example:</h5> * <p class='bcode'> * <jc>// Use one of the default serializers to serialize a POJO</jc> * String json = JsonSerializer.<jsf>DEFAULT</jsf>.serialize(someObject);
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/json/JsonSerializerContext.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/json/JsonSerializerContext.java b/juneau-core/src/main/java/org/apache/juneau/json/JsonSerializerContext.java index 8478384..c4a62cd 100644 --- a/juneau-core/src/main/java/org/apache/juneau/json/JsonSerializerContext.java +++ b/juneau-core/src/main/java/org/apache/juneau/json/JsonSerializerContext.java @@ -60,11 +60,11 @@ import org.apache.juneau.serializer.*; * </tr> * </table> * - * <h6 class='topic'>Configurable properties inherited from parent classes</h6> + * <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. + * <li class='c'><a class="doclink" href="../BeanContext.html#ConfigProperties">BeanContext</a> - Properties associated with handling beans on serializers and parsers. * <ul> - * <li class='c'><a class='doclink' href='../serializer/SerializerContext.html#ConfigProperties'>SerializerContext</a> - Configurable properties common to all serializers. + * <li class='c'><a class="doclink" href="../serializer/SerializerContext.html#ConfigProperties">SerializerContext</a> - Configurable properties common to all serializers. * </ul> * </ul> */ http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/json/JsonWriter.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/json/JsonWriter.java b/juneau-core/src/main/java/org/apache/juneau/json/JsonWriter.java index 59e622a..374cf94 100644 --- a/juneau-core/src/main/java/org/apache/juneau/json/JsonWriter.java +++ b/juneau-core/src/main/java/org/apache/juneau/json/JsonWriter.java @@ -20,7 +20,10 @@ import org.apache.juneau.serializer.*; /** * Specialized writer for serializing JSON. * <p> - * <b>Note: This class is not intended for external use.</b> + * <h5 class='section'>Notes:</h5> + * <ul> + * <li>This class is not intended for external use. + * </ul> */ public final class JsonWriter extends SerializerWriter { http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/json/annotation/Json.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/json/annotation/Json.java b/juneau-core/src/main/java/org/apache/juneau/json/annotation/Json.java index 6a32832..f8ee5d0 100644 --- a/juneau-core/src/main/java/org/apache/juneau/json/annotation/Json.java +++ b/juneau-core/src/main/java/org/apache/juneau/json/annotation/Json.java @@ -40,7 +40,7 @@ public @interface Json { * <p> * This annotation can be applied to beans as well as other objects serialized to other types (e.g. strings). * - * <h6 class='topic'>Example:</h6> + * <h5 class='section'>Example:</h5> * <p class='bcode'> * <ja>@Json</ja>(wrapperAttr=<js>"myWrapper"</js>) * <jk>public class</jk> MyBean { http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackInputStream.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackInputStream.java b/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackInputStream.java index 7835858..64fe9d9 100644 --- a/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackInputStream.java +++ b/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackInputStream.java @@ -21,7 +21,10 @@ import org.apache.juneau.internal.*; /** * Specialized input stream for parsing MessagePack streams. * <p> - * <b>Note: This class is not intended for external use.</b> + * <h5 class='section'>Notes:</h5> + * <ul> + * <li>This class is not intended for external use. + * </ul> */ public final class MsgPackInputStream extends InputStream { http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackOutputStream.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackOutputStream.java b/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackOutputStream.java index 94d0c76..73673dd 100644 --- a/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackOutputStream.java +++ b/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackOutputStream.java @@ -21,7 +21,10 @@ import java.util.concurrent.atomic.*; /** * Specialized output stream for serializing MessagePack streams. * <p> - * <b>Note: This class is not intended for external use.</b> + * <h5 class='section'>Notes:</h5> + * <ul> + * <li>This class is not intended for external use. + * </ul> */ public final class MsgPackOutputStream extends OutputStream { http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackParser.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackParser.java b/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackParser.java index 8ea0f4a..9113093 100644 --- a/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackParser.java +++ b/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackParser.java @@ -26,11 +26,11 @@ import org.apache.juneau.transform.*; /** * Parses a MessagePack stream into a POJO model. * - * <h6 class='topic'>Media types</h6> + * <h5 class='section'>Media types:</h5> * <p> * Handles <code>Content-Type</code> types: <code>octal/msgpack</code> * - * <h6 class='topic'>Configurable properties</h6> + * <h5 class='section'>Configurable properties:</h5> * <p> * This class has the following properties associated with it: * <ul> @@ -193,7 +193,6 @@ public final class MsgPackParser extends InputStreamParser { @Override /* Parser */ protected <T> T doParse(ParserSession session, ClassMeta<T> type) throws Exception { MsgPackParserSession s = (MsgPackParserSession)session; - type = s.normalizeClassMeta(type); MsgPackInputStream is = s.getInputStream(); T o = parseAnything(s, type, is, s.getOuter(), null); return o; http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackParserContext.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackParserContext.java b/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackParserContext.java index 0eda758..2e04978 100644 --- a/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackParserContext.java +++ b/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackParserContext.java @@ -38,11 +38,11 @@ import org.apache.juneau.parser.*; * <p> * None. * - * <h6 class='topic'>Configurable properties inherited from parent classes</h6> + * <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. + * <li class='c'><a class="doclink" href="../BeanContext.html#ConfigProperties">BeanContext</a> - Properties associated with handling beans on serializers and parsers. * <ul> - * <li class='c'><a class='doclink' href='../parser/ParserContext.html#ConfigProperties'>ParserContext</a> - Configurable properties common to all parsers. + * <li class='c'><a class="doclink" href="../parser/ParserContext.html#ConfigProperties">ParserContext</a> - Configurable properties common to all parsers. * </ul> * </ul> */ http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackSerializer.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackSerializer.java b/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackSerializer.java index 4e4ed0d..4ab038b 100644 --- a/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackSerializer.java +++ b/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackSerializer.java @@ -23,13 +23,13 @@ import org.apache.juneau.transform.*; /** * Serializes POJO models to MessagePack. * - * <h6 class='topic'>Media types</h6> + * <h5 class='section'>Media types:</h5> * <p> * Handles <code>Accept</code> types: <code>octal/msgpack</code> * <p> * Produces <code>Content-Type</code> types: <code>octal/msgpack</code> * - * <h6 class='topic'>Configurable properties</h6> + * <h5 class='section'>Configurable properties:</h5> * <p> * This class has the following properties associated with it: * <ul> http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackSerializerContext.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackSerializerContext.java b/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackSerializerContext.java index 282d7ac..ced4439 100644 --- a/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackSerializerContext.java +++ b/juneau-core/src/main/java/org/apache/juneau/msgpack/MsgPackSerializerContext.java @@ -38,11 +38,11 @@ import org.apache.juneau.serializer.*; * <p> * None. * - * <h6 class='topic'>Configurable properties inherited from parent classes</h6> + * <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. + * <li class='c'><a class="doclink" href="../BeanContext.html#ConfigProperties">BeanContext</a> - Properties associated with handling beans on serializers and parsers. * <ul> - * <li class='c'><a class='doclink' href='../serializer/SerializerContext.html#ConfigProperties'>SerializerContext</a> - Configurable properties common to all serializers. + * <li class='c'><a class="doclink" href="../serializer/SerializerContext.html#ConfigProperties">SerializerContext</a> - Configurable properties common to all serializers. * </ul> * </ul> */ http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/parser/InputStreamParser.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/parser/InputStreamParser.java b/juneau-core/src/main/java/org/apache/juneau/parser/InputStreamParser.java index 24de153..6abdeb5 100644 --- a/juneau-core/src/main/java/org/apache/juneau/parser/InputStreamParser.java +++ b/juneau-core/src/main/java/org/apache/juneau/parser/InputStreamParser.java @@ -17,7 +17,7 @@ import org.apache.juneau.annotation.*; /** * Subclass of {@link Parser} for byte-based parsers. * - * <h6 class='topic'>Description</h6> + * <h5 class='section'>Description:</h5> * <p> * This class is typically the parent class of all byte-based parsers. * It has 1 abstract method to implement... http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/parser/ParseException.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/parser/ParseException.java b/juneau-core/src/main/java/org/apache/juneau/parser/ParseException.java index f3180a7..6e98c2a 100644 --- a/juneau-core/src/main/java/org/apache/juneau/parser/ParseException.java +++ b/juneau-core/src/main/java/org/apache/juneau/parser/ParseException.java @@ -30,7 +30,7 @@ public final class ParseException extends FormattedException { * * @param session The parser session to extract information from. * @param message The exception message containing {@link MessageFormat}-style arguments. - * @param args Message arguments. + * @param args Optional {@link MessageFormat}-style arguments. */ public ParseException(ParserSession session, String message, Object...args) { super(getMessage(session, message, args)); @@ -40,7 +40,7 @@ public final class ParseException extends FormattedException { * Constructor. * * @param message The exception message containing {@link MessageFormat}-style arguments. - * @param args Message arguments. + * @param args Optional {@link MessageFormat}-style arguments. */ public ParseException(String message, Object...args) { super(getMessage(null, message, args)); http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/parser/Parser.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/parser/Parser.java b/juneau-core/src/main/java/org/apache/juneau/parser/Parser.java index 08fb31f..9ec061a 100644 --- a/juneau-core/src/main/java/org/apache/juneau/parser/Parser.java +++ b/juneau-core/src/main/java/org/apache/juneau/parser/Parser.java @@ -20,7 +20,6 @@ import java.text.*; 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.transform.*; @@ -37,7 +36,7 @@ import org.apache.juneau.utils.*; * However, the media types can also be specified programmatically by overriding the {@link #getMediaTypes()} method. * * <a id='ValidDataConversions'></a><h6 class='topic'>Valid data conversions</h6> - * Parsers can parse any parsable POJO types, as specified in the <a class='doclink' href='../../../../overview-summary.html#Core.PojoCategories'>POJO Categories</a>. + * Parsers can parse any parsable POJO types, as specified in the <a class="doclink" href="../../../../overview-summary.html#Core.PojoCategories">POJO Categories</a>. * <p> * Some examples of conversions are shown below... * </p> @@ -161,7 +160,6 @@ public abstract class Parser extends CoreApi { * @param type The class type of the object to create. * If <jk>null</jk> or <code>Object.<jk>class</jk></code>, object type is based on what's being parsed. * For example, when parsing JSON text, it may return a <code>String</code>, <code>Number</code>, <code>ObjectMap</code>, etc... - * * @param <T> The class type of the object to create. * @return The parsed object. * @throws Exception If thrown from underlying stream, or if the input contains a syntax error or is malformed. @@ -180,17 +178,16 @@ public abstract class Parser extends CoreApi { //-------------------------------------------------------------------------------- /** - * Parses the content of the reader and creates an object of the specified type. + * Entry point for all parsing calls. + * <p> + * Calls the {@link #doParse(ParserSession, ClassMeta)} implementation class and catches/rewraps any exceptions thrown. * @param session The runtime session returned by {@link #createSession(Object, ObjectMap, Method, Object, Locale, TimeZone, MediaType)}. * @param type The class type of the object to create. - * If <jk>null</jk> or <code>Object.<jk>class</jk></code>, object type is based on what's being parsed. - * For example, when parsing JSON text, it may return a <code>String</code>, <code>Number</code>, <code>ObjectMap</code>, etc... - * * @param <T> The class type of the object to create. * @return The parsed object. * @throws ParseException If the input contains a syntax error or is malformed, or is not valid for the specified type. */ - public final <T> T parse(ParserSession session, ClassMeta<T> type) throws ParseException { + public final <T> T parseSession(ParserSession session, ClassMeta<T> type) throws ParseException { try { return doParse(session, type); } catch (ParseException e) { @@ -207,10 +204,41 @@ public abstract class Parser extends CoreApi { } /** - * Parses the content of the reader and creates an object of the specified type. + * Parses input into the specified object type. + * The type can be a simple type (e.g. beans, strings, numbers) or parameterized type (collections/maps). + * + * <h5 class='section'>Examples:</h5> + * <p class='bcode'> + * ReaderParser p = JsonParser.<jsf>DEFAULT</jsf>; + * + * <jc>// Parse into a linked-list of strings.</jc> + * List l = p.parse(json, LinkedList.<jk>class</jk>, String.<jk>class</jk>); + * + * <jc>// Parse into a linked-list of beans.</jc> + * List l = p.parse(json, LinkedList.<jk>class</jk>, MyBean.<jk>class</jk>); + * + * <jc>// Parse into a linked-list of linked-lists of strings.</jc> + * List l = p.parse(json, LinkedList.<jk>class</jk>, LinkedList.<jk>class</jk>, String.<jk>class</jk>); + * + * <jc>// Parse into a map of string keys/values.</jc> + * Map m = p.parse(json, TreeMap.<jk>class</jk>, String.<jk>class</jk>, String.<jk>class</jk>); + * + * <jc>// Parse into a map containing string keys and values of lists containing beans.</jc> + * Map m = p.parse(json, TreeMap.<jk>class</jk>, String.<jk>class</jk>, List.<jk>class</jk>, MyBean.<jk>class</jk>); + * </p> * <p> - * Equivalent to calling <code>parser.parse(in, type, <jk>null</jk>);</code> + * <code>Collection</code> classes are assumed to be followed by zero or one objects indicating the element type. + * <p> + * <code>Map</code> classes are assumed to be followed by zero or two meta objects indicating the key and value types. + * <p> + * The array can be arbitrarily long to indicate arbitrarily complex data structures. + * <p> + * <h5 class='section'>Notes:</h5> + * <ul> + * <li>Use the {@link #parse(Object, Class)} method instead if you don't need a parameterized map/collection. + * </ul> * + * @param <T> The class type of the object to create. * @param input The input. * <br>Character-based parsers can handle the following input class types: * <ul> @@ -228,123 +256,67 @@ public abstract class Parser extends CoreApi { * <li><code><jk>byte</jk>[]</code> * <li>{@link File} * </ul> - * @param type The class type of the object to create. - * If <jk>null</jk> or <code>Object.<jk>class</jk></code>, object type is based on what's being parsed. - * For example, when parsing JSON text, it may return a <code>String</code>, <code>Number</code>, <code>ObjectMap</code>, etc... - * @param <T> The class type of the object to create. + * @param type The object type to create. + * <br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType}, {@link GenericArrayType} + * @param args The type arguments of the class if it's a collection or map. + * <br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType}, {@link GenericArrayType} + * <br>Ignored if the main type is not a map or collection. * @return The parsed object. * @throws ParseException If the input contains a syntax error or is malformed, or is not valid for the specified type. */ - public final <T> T parse(Object input, ClassMeta<T> type) throws ParseException { + @SuppressWarnings("unchecked") + public final <T> T parse(Object input, Type type, Type...args) throws ParseException { ParserSession session = createSession(input); - return parse(session, type); + return (T)parseSession(session, session.getClassMeta(type, args)); } /** - * Parses input into the specified object type. - * - * <h6 class='topic'>Example:</h6> + * Same as {@link #parse(Object, Type, Type...)} except optimized for a non-parameterized class. + * <p> + * This is the preferred parse method for simple types since you don't need to cast the results. + * <h5 class='section'>Examples:</h5> * <p class='bcode'> * ReaderParser p = JsonParser.<jsf>DEFAULT</jsf>; - * MyBean b = p.parse(json, MyBean.<jk>class</jk>); - * </p> - * <p> - * This method equivalent to the following code: - * <p class='bcode'> - * ReaderParser p = JsonParser.<jsf>DEFAULT</jsf>; - * ClassMeta<MyBean> cm = p.getBeanContext().getClassMeta(MyBean.<jk>class</jk>); - * MyBean b = p.parse(json, cm, <jk>null</jk>); - * </p> * - * @param <T> The class type of the object to create. - * @param input The input. See {@link #parse(Object, ClassMeta)} for supported input types. - * @param type The class type of the object to create. - * @return The parsed object. - * @throws ParseException If the input contains a syntax error or is malformed, or is not valid for the specified type. - */ - public final <T> T parse(Object input, Class<T> type) throws ParseException { - ParserSession session = createSession(input); - return parse(session, session.getClassMeta(type)); - } - - /** - * Parses input into a map with specified key and value types. + * <jc>// Parse into a string.</jc> + * MyBean b = p.parse(json, String.<jk>class</jk>); * - * <h6 class='topic'>Example:</h6> - * <p class='bcode'> - * ReaderParser p = JsonParser.<jsf>DEFAULT</jsf>; - * Map<String,MyBean> m = p.parseMap(json, LinkedHashMap.<jk>class</jk>, String.<jk>class</jk>, MyBean.<jk>class</jk>); - * </p> - * <p> - * A simpler approach is often to just extend the map class you want and just use the normal {@link #parse(Object, Class)} method: - * </p> - * <p class='bcode'> - * <jk>public static class</jk> MyMap <jk>extends</jk> LinkedHashMap<String,MyBean> {} + * <jc>// Parse into a bean.</jc> + * MyBean b = p.parse(json, MyBean.<jk>class</jk>); * - * ReaderParser p = JsonParser.<jsf>DEFAULT</jsf>; - * Map<String,MyBean> m = p.parse(json, MyMap.<jk>class</jk>); - * </p> - * <p> - * This method equivalent to the following code: - * </p> - * <p class='bcode'> - * ReaderParser p = JsonParser.<jsf>DEFAULT</jsf>; - * ClassMeta<Map<String,MyBean>> cm = p.getBeanContext().getMapClassMeta(LinkedList.<jk>class</jk>, String.<jk>class</jk>, MyBean.<jk>class</jk>); - * Map<String,MyBean> m = p.parse(json, cm, <jk>null</jk>); + * <jc>// Parse into a linked-list of objects.</jc> + * List l = p.parse(json, LinkedList.<jk>class</jk>); + * + * <jc>// Parse into a map of object keys/values.</jc> + * Map m = p.parse(json, TreeMap.<jk>class</jk>); * </p> * - * @param <T> The class type of the object to create. - * @param input The input. See {@link #parse(Object, ClassMeta)} for supported input types. - * @param mapClass The map class type. - * @param keyClass The key class type. - * @param valueClass The value class type. + * @param <T> The class type of the object being created. + * @param input The input. + * See {@link #parse(Object, Type, Type...)} for details. + * @param type The object type to create. * @return The parsed object. * @throws ParseException If the input contains a syntax error or is malformed, or is not valid for the specified type. */ - public final <K,V,T extends Map<K,V>> T parseMap(Object input, Class<T> mapClass, Class<K> keyClass, Class<V> valueClass) throws ParseException { + public final <T> T parse(Object input, Class<T> type) throws ParseException { ParserSession session = createSession(input); - ClassMeta<T> cm = session.getClassMeta(mapClass, keyClass, valueClass); - return parse(session, cm); + return parseSession(session, session.getClassMeta(type)); } /** - * Parses input into a collection with a specified element type. - * - * <h6 class='topic'>Example:</h6> - * <p class='bcode'> - * ReaderParser p = JsonParser.<jsf>DEFAULT</jsf>; - * List<MyBean> l = p.parseCollection(json, LinkedList.<jk>class</jk>, MyBean.<jk>class</jk>); - * </p> + * Same as {@link #parse(Object, Type, Type...)} except the type has already been converted into a {@link ClassMeta} object. * <p> - * A simpler approach is often to just extend the collection class you want and just use the normal {@link #parse(Object, Class)} method: - * </p> - * <p class='bcode'> - * <jk>public static class</jk> MyBeanCollection <jk>extends</jk> LinkedList<MyBean> {} + * This is mostly an internal method used by the framework. * - * ReaderParser p = JsonParser.<jsf>DEFAULT</jsf>; - * List<MyBean> l = p.parse(json, MyBeanCollection.<jk>class</jk>); - * </p> - * <p> - * This method equivalent to the following code: - * </p> - * <p class='bcode'> - * ReaderParser p = JsonParser.<jsf>DEFAULT</jsf>; - * ClassMeta<List<MyBean>> cm = p.getBeanContext().getCollectionClassMeta(LinkedList.<jk>class</jk>, MyBean.<jk>class</jk>); - * List<MyBean> l = p.parse(json, cm, <jk>null</jk>); - * </p> - * - * @param <T> The class type of the object to create. - * @param input The input. See {@link #parse(Object, ClassMeta)} for supported input types. - * @param collectionClass The collection class type. - * @param entryClass The class type of entries in the collection. + * @param <T> The class type of the object being created. + * @param input The input. + * See {@link #parse(Object, Type, Type...)} for details. + * @param type The object type to create. * @return The parsed object. * @throws ParseException If the input contains a syntax error or is malformed, or is not valid for the specified type. - * @throws IOException If a problem occurred trying to read from the reader. */ - public final <E,T extends Collection<E>> T parseCollection(Object input, Class<T> collectionClass, Class<E> entryClass) throws ParseException, IOException { - ParserSession session = createSession(input); - ClassMeta<T> cm = session.getClassMeta(collectionClass, entryClass); - return parse(session, cm); + public final <T> T parse(Object input, ClassMeta<T> type) throws ParseException { + return parseSession(createSession(input), type); } /** http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/parser/ParserGroup.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/parser/ParserGroup.java b/juneau-core/src/main/java/org/apache/juneau/parser/ParserGroup.java index 33b78fd..800db11 100644 --- a/juneau-core/src/main/java/org/apache/juneau/parser/ParserGroup.java +++ b/juneau-core/src/main/java/org/apache/juneau/parser/ParserGroup.java @@ -22,7 +22,7 @@ import org.apache.juneau.*; /** * Represents a group of {@link Parser Parsers} that can be looked up by media type. * - * <h6 class='topic'>Description</h6> + * <h5 class='section'>Description:</h5> * <p> * Provides the following features: * <ul class='spaced-list'> @@ -42,7 +42,7 @@ import org.apache.juneau.*; * For example, calling <code>g.append(P1.<jk>class</jk>,P2.<jk>class</jk>).append(P3.<jk>class</jk>,P4.<jk>class</jk>)</code> * will result in the order <code>P3, P4, P1, P2</code>. * - * <h6 class='topic'>Example:</h6> + * <h5 class='section'>Example:</h5> * <p class='bcode'> * <jc>// Construct a new parser group</jc> * ParserGroup g = <jk>new</jk> ParserGroup(); http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/parser/ReaderParser.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/parser/ReaderParser.java b/juneau-core/src/main/java/org/apache/juneau/parser/ReaderParser.java index 6473ea4..d0ea5b9 100644 --- a/juneau-core/src/main/java/org/apache/juneau/parser/ReaderParser.java +++ b/juneau-core/src/main/java/org/apache/juneau/parser/ReaderParser.java @@ -17,7 +17,7 @@ import org.apache.juneau.annotation.*; /** * Subclass of {@link Parser} for characters-based parsers. * - * <h6 class='topic'>Description</h6> + * <h5 class='section'>Description:</h5> * <p> * This class is typically the parent class of all character-based parsers. * It has 1 abstract method to implement... http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/plaintext/PlainTextParser.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/plaintext/PlainTextParser.java b/juneau-core/src/main/java/org/apache/juneau/plaintext/PlainTextParser.java index 4a8cc65..68d6a33 100644 --- a/juneau-core/src/main/java/org/apache/juneau/plaintext/PlainTextParser.java +++ b/juneau-core/src/main/java/org/apache/juneau/plaintext/PlainTextParser.java @@ -19,22 +19,22 @@ import org.apache.juneau.parser.*; import org.apache.juneau.transform.*; /** - * Parsers HTTP plain text request bodies into <a href='../../../../overview-summary.html#Core.PojoCategories'>Group 5</a> POJOs. + * Parsers HTTP plain text request bodies into <a class="doclink" href="../../../../overview-summary.html#Core.PojoCategories">Group 5</a> POJOs. * - * <h6 class='topic'>Media types</h6> + * <h5 class='section'>Media types:</h5> * <p> * Handles <code>Accept</code> types: <code>text/plain</code> * <p> * Produces <code>Content-Type</code> types: <code>text/plain</code> * - * <h6 class='topic'>Description</h6> + * <h5 class='section'>Description:</h5> * <p> * Essentially just converts plain text to POJOs via static <code>fromString()</code> or <code>valueOf()</code>, or * through constructors that take a single string argument. * <p> * Also parses objects using a transform if the object class has an {@link PojoSwap PojoSwap<?,String>} transform defined on it. * - * <h6 class='topic'>Configurable properties</h6> + * <h5 class='section'>Configurable properties:</h5> * <p> * This class has the following properties associated with it: * <ul> http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/plaintext/PlainTextSerializer.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/plaintext/PlainTextSerializer.java b/juneau-core/src/main/java/org/apache/juneau/plaintext/PlainTextSerializer.java index 52ae7f8..0d04110 100644 --- a/juneau-core/src/main/java/org/apache/juneau/plaintext/PlainTextSerializer.java +++ b/juneau-core/src/main/java/org/apache/juneau/plaintext/PlainTextSerializer.java @@ -20,19 +20,19 @@ import org.apache.juneau.transform.*; /** * Serializes POJOs to plain text using just the <code>toString()</code> method on the serialized object. * - * <h6 class='topic'>Media types</h6> + * <h5 class='section'>Media types:</h5> * <p> * Handles <code>Accept</code> types: <code>text/plain</code> * <p> * Produces <code>Content-Type</code> types: <code>text/plain</code> * - * <h6 class='topic'>Description</h6> + * <h5 class='section'>Description:</h5> * <p> * Essentially converts POJOs to plain text using the <code>toString()</code> method. * <p> * Also serializes objects using a transform if the object class has an {@link PojoSwap PojoSwap<?,String>} transform defined on it. * - * <h6 class='topic'>Configurable properties</h6> + * <h5 class='section'>Configurable properties:</h5> * <p> * This class has the following properties associated with it: * <ul> http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/serializer/OutputStreamSerializer.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/serializer/OutputStreamSerializer.java b/juneau-core/src/main/java/org/apache/juneau/serializer/OutputStreamSerializer.java index 08edceb..9fddf75 100644 --- a/juneau-core/src/main/java/org/apache/juneau/serializer/OutputStreamSerializer.java +++ b/juneau-core/src/main/java/org/apache/juneau/serializer/OutputStreamSerializer.java @@ -19,7 +19,7 @@ import org.apache.juneau.annotation.*; /** * Subclass of {@link Serializer} for byte-based serializers. * - * <h6 class='topic'>Description</h6> + * <h5 class='section'>Description:</h5> * <p> * This class is typically the parent class of all byte-based serializers. * It has 1 abstract method to implement... http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/serializer/SerializeException.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/serializer/SerializeException.java b/juneau-core/src/main/java/org/apache/juneau/serializer/SerializeException.java index 71b9b9e..5f974dc 100644 --- a/juneau-core/src/main/java/org/apache/juneau/serializer/SerializeException.java +++ b/juneau-core/src/main/java/org/apache/juneau/serializer/SerializeException.java @@ -30,7 +30,7 @@ public final class SerializeException extends FormattedException { * * @param session The serializer session to extract information from. * @param message The exception message containing {@link MessageFormat}-style arguments. - * @param args Message arguments. + * @param args Optional {@link MessageFormat}-style arguments. */ public SerializeException(SerializerSession session, String message, Object...args) { super(getMessage(session, message, args)); @@ -40,7 +40,7 @@ public final class SerializeException extends FormattedException { * Constructor. * * @param message The exception message containing {@link MessageFormat}-style arguments. - * @param args Message arguments. + * @param args Optional {@link MessageFormat}-style arguments. */ public SerializeException(String message, Object...args) { super(getMessage(null, message, args)); http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/serializer/Serializer.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/serializer/Serializer.java b/juneau-core/src/main/java/org/apache/juneau/serializer/Serializer.java index c2264aa..ccd0cc8 100644 --- a/juneau-core/src/main/java/org/apache/juneau/serializer/Serializer.java +++ b/juneau-core/src/main/java/org/apache/juneau/serializer/Serializer.java @@ -25,7 +25,7 @@ import org.apache.juneau.soap.*; /** * Parent class for all Juneau serializers. * - * <h6 class='topic'>Description</h6> + * <h5 class='section'>Description:</h5> * <p> * Base serializer class that serves as the parent class for all serializers. * <p> @@ -38,7 +38,7 @@ import org.apache.juneau.soap.*; * However, the media types can also be specified programmatically by overriding the {@link #getMediaTypes()} * and {@link #getResponseContentType()} methods. * - * <h6 class='topic'>Configurable properties</h6> + * <h5 class='section'>Configurable properties:</h5> * See {@link SerializerContext} for a list of configurable properties that can be set on this class * using the {@link #setProperty(String, Object)} method. */ http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerContext.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerContext.java b/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerContext.java index 3bc0f06..7031b12 100644 --- a/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerContext.java +++ b/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerContext.java @@ -181,7 +181,10 @@ public class SerializerContext extends BeanContext { * the following when <jsf>SERIALIZER_ignoreRecursions</jsf> is <jk>true</jk>... * <code>{A:{B:{C:null}}}</code><br> * <p> - * Note: Checking for recursion can cause a small performance penalty. + * <h5 class='section'>Notes:</h5> + * <ul> + * <li>Checking for recursion can cause a small performance penalty. + * </ul> */ public static final String SERIALIZER_detectRecursions = "Serializer.detectRecursions"; @@ -334,7 +337,7 @@ public class SerializerContext extends BeanContext { * (i.e. URIs not containing a schema and not starting with <js>'/'</js>). * (e.g. <js>"foo/bar"</js>) * - * <h6 class='topic'>Example:</h6> + * <h5 class='section'>Example:</h5> * <table class='styled'> * <tr><th>SERIALIZER_relativeUriBase</th><th>URI</th><th>Serialized URI</th></tr> * <tr> @@ -370,7 +373,7 @@ public class SerializerContext extends BeanContext { * (i.e. URIs starting with <js>'/'</js>). * (e.g. <js>"/foo/bar"</js>) * - * <h6 class='topic'>Examples:</h6> + * <h5 class='section'>Examples:</h5> * <table class='styled'> * <tr><th>SERIALIZER_absolutePathUriBase</th><th>URI</th><th>Serialized URI</th></tr> * <tr> http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/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 4761265..ec62ae8 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 @@ -22,7 +22,7 @@ import org.apache.juneau.*; /** * Represents a group of {@link Serializer Serializers} that can be looked up by media type. * - * <h6 class='topic'>Description</h6> + * <h5 class='section'>Description:</h5> * <p> * Provides the following features: * <ul class='spaced-list'> @@ -42,7 +42,7 @@ import org.apache.juneau.*; * For example, calling <code>g.append(S1.<jk>class</jk>,S2.<jk>class</jk>).append(S3.<jk>class</jk>,S4.<jk>class</jk>)</code> * will result in the order <code>S3, S4, S1, S2</code>. * - * <h6 class='topic'>Example:</h6> + * <h5 class='section'>Example:</h5> * <p class='bcode'> * <jc>// Construct a new serializer group</jc> * SerializerGroup g = <jk>new</jk> SerializerGroup(); http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerWriter.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerWriter.java b/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerWriter.java index 115608b..00f8b8b 100644 --- a/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerWriter.java +++ b/juneau-core/src/main/java/org/apache/juneau/serializer/SerializerWriter.java @@ -23,7 +23,7 @@ import org.apache.juneau.internal.*; * Modeled after the Java ProcessBuilder class so that you can chain commands to reduce * the need for string concatenation for performance reasons. * - * <h6 class='topic'>Example:</h6> + * <h5 class='section'>Example:</h5> * <p class='bcode'> * writer.append(<js>"foo"</js>).nl().i(5).append(<js>"bar"</js>); * </p> http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/serializer/StringObject.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/serializer/StringObject.java b/juneau-core/src/main/java/org/apache/juneau/serializer/StringObject.java index f291639..65166bd 100644 --- a/juneau-core/src/main/java/org/apache/juneau/serializer/StringObject.java +++ b/juneau-core/src/main/java/org/apache/juneau/serializer/StringObject.java @@ -23,7 +23,7 @@ import org.apache.juneau.*; * <p> * Instances of this method are created by the {@link WriterSerializer#toStringObject(Object)} method. * - * <h6 class='topic'>Example:</h6> + * <h5 class='section'>Example:</h5> * <p class='bcode'> * <jc>// The POJO will not be serialized unless DEBUG is enabled.</jc> * logger.log(<jsf>DEBUG</jsf>, <js>"Object contents are: {0}"</js>, JsonSerializer.<jsf>DEFAULT</jsf>.toObjectString(myPojo)); http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/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 a84b9f9..5f38d4a 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 @@ -22,7 +22,7 @@ import org.apache.juneau.annotation.*; /** * Subclass of {@link Serializer} for character-based serializers. * - * <h6 class='topic'>Description</h6> + * <h5 class='section'>Description:</h5> * <p> * This class is typically the parent class of all character-based serializers. * It has 2 abstract methods to implement... http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/soap/SoapXmlSerializer.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/soap/SoapXmlSerializer.java b/juneau-core/src/main/java/org/apache/juneau/soap/SoapXmlSerializer.java index f340ff7..c32dd80 100644 --- a/juneau-core/src/main/java/org/apache/juneau/soap/SoapXmlSerializer.java +++ b/juneau-core/src/main/java/org/apache/juneau/soap/SoapXmlSerializer.java @@ -22,17 +22,17 @@ import org.apache.juneau.xml.*; /** * Serializes POJOs to HTTP responses as XML+SOAP. * - * <h6 class='topic'>Media types</h6> + * <h5 class='section'>Media types:</h5> * <p> * Handles <code>Accept</code> types: <code>text/xml+soap</code> * <p> * Produces <code>Content-Type</code> types: <code>text/xml+soap</code> * - * <h6 class='topic'>Description</h6> + * <h5 class='section'>Description:</h5> * <p> * Essentially the same output as {@link XmlDocSerializer}, except wrapped in a standard SOAP envelope. * - * <h6 class='topic'>Configurable properties</h6> + * <h5 class='section'>Configurable properties:</h5> * <p> * This class has the following properties associated with it: * <ul> http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/soap/SoapXmlSerializerContext.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/soap/SoapXmlSerializerContext.java b/juneau-core/src/main/java/org/apache/juneau/soap/SoapXmlSerializerContext.java index 4f63db4..d85befc 100644 --- a/juneau-core/src/main/java/org/apache/juneau/soap/SoapXmlSerializerContext.java +++ b/juneau-core/src/main/java/org/apache/juneau/soap/SoapXmlSerializerContext.java @@ -27,11 +27,11 @@ package org.apache.juneau.soap; * </tr> * </table> * - * <h6 class='topic'>Configurable properties inherited from parent classes</h6> + * <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. + * <li class='c'><a class="doclink" href="../BeanContext.html#ConfigProperties">BeanContext</a> - Properties associated with handling beans on serializers and parsers. * <ul> - * <li class='c'><a class='doclink' href='../serializer/SerializerContext.html#ConfigProperties'>SerializerContext</a> - Configurable properties common to all serializers. + * <li class='c'><a class="doclink" href="../serializer/SerializerContext.html#ConfigProperties">SerializerContext</a> - Configurable properties common to all serializers. * </ul> * </ul> */ http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/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 1d39c77..6ffdaeb 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 @@ -32,7 +32,7 @@ import org.apache.juneau.svl.vars.*; * <p> * The {@link Var} interface defines how variables are converted to values. * <p> - * <h6 class='topic'>Example:</h6> + * <h5 class='section'>Example:</h5> * <p class='bcode'> * <jk>public class</jk> SystemPropertiesVar <jk>extends</jk> SimpleVar { * @@ -85,7 +85,7 @@ import org.apache.juneau.svl.vars.*; * Var resolvers can be cloned by using the {@link #clone()} method. * Cloning a resolver will copy it's {@link Var} class names and context objects. * <p> - * <h6 class='topic'>Example:</h6> + * <h5 class='section'>Example:</h5> * <p class='bcode'> * <jc>// Create a resolver that copies the default resolver and adds $C and $ARG vars.</jc> * VarResolver myVarResolver = VarResolver.<jsf>DEFAULT</jsf>.clone().addVars(ConfigVar.<jk>class</jk>, ArgsVar.<jk>class</jk>); http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/svl/vars/ArgsVar.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/svl/vars/ArgsVar.java b/juneau-core/src/main/java/org/apache/juneau/svl/vars/ArgsVar.java index 2c2fc4d..b005c1f 100644 --- a/juneau-core/src/main/java/org/apache/juneau/svl/vars/ArgsVar.java +++ b/juneau-core/src/main/java/org/apache/juneau/svl/vars/ArgsVar.java @@ -23,7 +23,7 @@ import org.apache.juneau.utils.*; * This variable resolver requires that an {@link Args} object be set as a context object on the resolver or a * session object on the resolver session. * - * <h6 class='topic'>Example:</h6> + * <h5 class='section'>Example:</h5> * <p class='bcode'> * <jc>// Create an args object from the main(String[]) method.</jc> * Args args = new Args(argv); http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/svl/vars/ConfigFileVar.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/svl/vars/ConfigFileVar.java b/juneau-core/src/main/java/org/apache/juneau/svl/vars/ConfigFileVar.java index 1a84833..ff0d2d3 100644 --- a/juneau-core/src/main/java/org/apache/juneau/svl/vars/ConfigFileVar.java +++ b/juneau-core/src/main/java/org/apache/juneau/svl/vars/ConfigFileVar.java @@ -24,7 +24,7 @@ import org.apache.juneau.svl.*; * This variable resolver requires that a {@link ConfigFile} object be set as a context object on the resolver or a * session object on the resolver session. * - * <h6 class='topic'>Example:</h6> + * <h5 class='section'>Example:</h5> * <p class='bcode'> * <jc>// Create a config file object.</jc> * ConfigFile configFile = ConfigMgr.<jsf>DEFAULT</jsf>.get(<js>"MyConfig.cfg"</js>); http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/svl/vars/EnvVariablesVar.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/svl/vars/EnvVariablesVar.java b/juneau-core/src/main/java/org/apache/juneau/svl/vars/EnvVariablesVar.java index d6f3f12..d58e442 100644 --- a/juneau-core/src/main/java/org/apache/juneau/svl/vars/EnvVariablesVar.java +++ b/juneau-core/src/main/java/org/apache/juneau/svl/vars/EnvVariablesVar.java @@ -19,7 +19,7 @@ import org.apache.juneau.svl.*; * <p> * The format for this var is <js>"$E{envVar}"</js> or <js>"$E{envVar,defaultValue}"</js> * - * <h6 class='topic'>Example:</h6> + * <h5 class='section'>Example:</h5> * <p class='bcode'> * <jc>// Create a variable resolver that resolves environment variables (e.g. "$E{PATH}")</jc> * VarResolver r = <jk>new</jk> VarResolver().addVars(EnvVariablesVar.<js>class</js>); http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/svl/vars/ManifestFileVar.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/svl/vars/ManifestFileVar.java b/juneau-core/src/main/java/org/apache/juneau/svl/vars/ManifestFileVar.java index ac1f250..2e35666 100644 --- a/juneau-core/src/main/java/org/apache/juneau/svl/vars/ManifestFileVar.java +++ b/juneau-core/src/main/java/org/apache/juneau/svl/vars/ManifestFileVar.java @@ -23,7 +23,7 @@ import org.apache.juneau.utils.*; * This variable resolver requires that a {@link ManifestFile} object be set as a context object on the resolver or a * session object on the resolver session. * - * <h6 class='topic'>Example:</h6> + * <h5 class='section'>Example:</h5> * <p class='bcode'> * <jc>// Create a ManifestFile object that contains the manifest of the jar file containing this class.</jc> * ManifestFile mf = <jk>new</jk> ManifestFile(<jk>this</jk>.getClass()); http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/svl/vars/SystemPropertiesVar.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/svl/vars/SystemPropertiesVar.java b/juneau-core/src/main/java/org/apache/juneau/svl/vars/SystemPropertiesVar.java index 1261f0e..937b149 100644 --- a/juneau-core/src/main/java/org/apache/juneau/svl/vars/SystemPropertiesVar.java +++ b/juneau-core/src/main/java/org/apache/juneau/svl/vars/SystemPropertiesVar.java @@ -19,7 +19,7 @@ import org.apache.juneau.svl.*; * <p> * The format for this var is <js>"$S{systemProperty}"</js> or <js>"$S{systemProperty,defaultValue}"</js> * - * <h6 class='topic'>Example:</h6> + * <h5 class='section'>Example:</h5> * <p class='bcode'> * <jc>// Create a variable resolver that resolves system properties (e.g. "$S{java.home}")</jc> * VarResolver r = <jk>new</jk> VarResolver().addVars(SystemPropertiesVar.<js>class</js>); http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/transform/BeanFilterBuilder.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/transform/BeanFilterBuilder.java b/juneau-core/src/main/java/org/apache/juneau/transform/BeanFilterBuilder.java index 46e6ec4..6c2928f 100644 --- a/juneau-core/src/main/java/org/apache/juneau/transform/BeanFilterBuilder.java +++ b/juneau-core/src/main/java/org/apache/juneau/transform/BeanFilterBuilder.java @@ -23,7 +23,7 @@ import org.apache.juneau.*; * Bean filter builders must have a public no-arg constructor. * Builder settings should be set in the constructor using the provided setters on this class. * - * <h6 class='topic'>Example:</h6> + * <h5 class='section'>Example:</h5> * <p class='bcode'> * <jc>// Create our serializer with a bean filter.</jc> * WriterSerializer s = <jk>new</jk> JsonSerializer().addBeanFilters(AddressFilter.<jk>class</jk>); @@ -40,7 +40,7 @@ import org.apache.juneau.*; * } * </p> * - * <h6 class='topic'>Additional information</h6> + * <h5 class='section'>Additional information:</h5> * See {@link org.apache.juneau.transform} for more information. */ public abstract class BeanFilterBuilder { http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/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 5a1d104..efd94d1 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 @@ -22,7 +22,7 @@ import org.apache.juneau.serializer.*; /** * Used to swap out non-serializable objects with serializable replacements during serialization, and vis-versa during parsing. * - * <h6 class='topic'>Description</h6> + * <h5 class='section'>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. For example, JSON does not have a standard @@ -90,7 +90,7 @@ import org.apache.juneau.serializer.*; * in which case it's not possible to reparse it back into a {@code Date}, since there is no way for the {@code Parser} to * know it's a {@code Date} from just the JSON or XML text. * - * <h6 class='topic'>Additional information</h6> + * <h5 class='section'>Additional information:</h5> * See {@link org.apache.juneau.transform} for more information. * * @param <T> The normal form of the class. http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/transforms/BeanStringSwap.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/transforms/BeanStringSwap.java b/juneau-core/src/main/java/org/apache/juneau/transforms/BeanStringSwap.java index f6d38f7..c7d1c67 100644 --- a/juneau-core/src/main/java/org/apache/juneau/transforms/BeanStringSwap.java +++ b/juneau-core/src/main/java/org/apache/juneau/transforms/BeanStringSwap.java @@ -22,7 +22,7 @@ import org.apache.juneau.transform.*; * 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#Core.PojoCategories'>Type 5 POJO</a>. + * Beans serialized as strings cannot be reconstituted using a parser unless it is a <a class="doclink" href="../../../../overview-summary.html#Core.PojoCategories">Type 5 POJO</a>. * * @param <T> The class type of the bean. */ http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/transforms/CalendarSwap.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/transforms/CalendarSwap.java b/juneau-core/src/main/java/org/apache/juneau/transforms/CalendarSwap.java index f6b1f3e..a4bf22c 100644 --- a/juneau-core/src/main/java/org/apache/juneau/transforms/CalendarSwap.java +++ b/juneau-core/src/main/java/org/apache/juneau/transforms/CalendarSwap.java @@ -88,7 +88,7 @@ public class CalendarSwap extends StringSwap<Calendar> { /** * Transforms {@link Calendar Calendars} to {@link String Strings} using the {@code Date.toString()} method. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"Wed Jul 04 15:30:45 EST 2001"</js> * </ul> @@ -103,7 +103,7 @@ public class CalendarSwap extends StringSwap<Calendar> { /** * Transforms {@link Calendar Calendars} to ISO8601 date-time strings. * - * <h6 class='topic'>Example output:</h6> + * <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> @@ -148,7 +148,7 @@ public class CalendarSwap extends StringSwap<Calendar> { /** * Same as {@link ISO8601DT}, except always serializes in GMT. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <js>"2001-07-04T15:30:45Z"</js> */ public static class ISO8601DTZ extends CalendarSwap { @@ -183,7 +183,7 @@ public class CalendarSwap extends StringSwap<Calendar> { /** * Same as {@link CalendarSwap.ISO8601DT} except serializes to millisecond precision. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <js>"2001-07-04T15:30:45.123Z"</js> */ public static class ISO8601DTP extends ISO8601DT { @@ -198,7 +198,7 @@ public class CalendarSwap extends StringSwap<Calendar> { /** * Same as {@link CalendarSwap.ISO8601DTZ} except serializes to millisecond precision. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <js>"2001-07-04T15:30:45.123"</js> */ public static class ISO8601DTPZ extends ISO8601DTZ { @@ -213,7 +213,7 @@ public class CalendarSwap extends StringSwap<Calendar> { /** * Transforms {@link Calendar Calendars} to RFC2822 date-time strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"Sat, 03 Mar 2001 10:11:12 +0000"</js> <jc>// en_US</jc> * <li><js>"å, 03 3 2001 10:11:12 +0000"</js> <jc>// ja_JP</jc> @@ -230,7 +230,7 @@ public class CalendarSwap extends StringSwap<Calendar> { /** * Same as {@link RFC2822DT}, except always serializes in GMT. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"Sat, 03 Mar 2001 10:11:12 GMT"</js> <jc>// en_US</jc> * <li><js>"å, 03 3 2001 10:11:12 GMT"</js> <jc>// ja_JP</jc> @@ -247,7 +247,7 @@ public class CalendarSwap extends StringSwap<Calendar> { /** * Transforms {@link Calendar Calendars} to RFC2822 date strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"03 Mar 2001"</js> <jc>// en_US</jc> * <li><js>"03 3 2001"</js> <jc>// ja_JP</jc> @@ -264,7 +264,7 @@ public class CalendarSwap extends StringSwap<Calendar> { /** * Transforms {@link Calendar Calendars} to simple <js>"yyyy/MM/dd HH:mm:ss"</js> date-time strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"2001/03/03 10:11:12"</js> * </ul> @@ -279,7 +279,7 @@ public class CalendarSwap extends StringSwap<Calendar> { /** * Transforms {@link Calendar Calendars} to simple <js>"yyyy/MM/dd"</js> date strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"2001/03/03"</js> * </ul> @@ -294,7 +294,7 @@ public class CalendarSwap extends StringSwap<Calendar> { /** * Transforms {@link Calendar Calendars} to simple <js>"HH:mm:ss"</js> time strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"10:11:12"</js> * </ul> @@ -309,7 +309,7 @@ public class CalendarSwap extends StringSwap<Calendar> { /** * Transforms {@link Calendar Calendars} to {@link DateFormat#FULL} date strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"Saturday, March 3, 2001"</js> <jc>// en_US</jc> * <li><js>"2001å¹´3æ3æ¥"</js> <jc>// ja_JP</jc> @@ -326,7 +326,7 @@ public class CalendarSwap extends StringSwap<Calendar> { /** * Transforms {@link Calendar Calendars} to {@link DateFormat#LONG} date strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"March 3, 2001"</js> <jc>// en_US</jc> * <li><js>"2001/03/03"</js> <jc>// ja_JP</jc> @@ -343,7 +343,7 @@ public class CalendarSwap extends StringSwap<Calendar> { /** * Transforms {@link Calendar Calendars} to {@link DateFormat#MEDIUM} date strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"Mar 3, 2001"</js> <jc>// en_US</jc> * <li><js>"2001/03/03"</js> <jc>// ja_JP</jc> @@ -360,7 +360,7 @@ public class CalendarSwap extends StringSwap<Calendar> { /** * Transforms {@link Calendar Calendars} to {@link DateFormat#SHORT} date strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"3/3/01"</js> <jc>// en_US</jc> * <li><js>"01/03/03"</js> <jc>// ja_JP</jc> @@ -377,7 +377,7 @@ public class CalendarSwap extends StringSwap<Calendar> { /** * Transforms {@link Calendar Calendars} to {@link DateFormat#FULL} time strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"10:11:12 AM GMT"</js> <jc>// en_US</jc> * <li><js>"10æ11å12ç§ GMT"</js> <jc>// ja_JP</jc> @@ -394,7 +394,7 @@ public class CalendarSwap extends StringSwap<Calendar> { /** * Transforms {@link Calendar Calendars} to {@link DateFormat#LONG} time strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"10:11:12 AM GMT"</js> <jc>// en_US</jc> * <li><js>"10:11:12 GMT"</js> <jc>// ja_JP</jc> @@ -411,7 +411,7 @@ public class CalendarSwap extends StringSwap<Calendar> { /** * Transforms {@link Calendar Calendars} to {@link DateFormat#MEDIUM} time strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"10:11:12 AM"</js> <jc>// en_US</jc> * <li><js>"10:11:12"</js> <jc>// ja_JP</jc> @@ -428,7 +428,7 @@ public class CalendarSwap extends StringSwap<Calendar> { /** * Transforms {@link Calendar Calendars} to {@link DateFormat#SHORT} time strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"10:11 AM"</js> <jc>// en_US</jc> * <li><js>"10:11 AM"</js> <jc>// ja_JP</jc> @@ -445,7 +445,7 @@ public class CalendarSwap extends StringSwap<Calendar> { /** * Transforms {@link Calendar Calendars} to {@link DateFormat#FULL} date-time strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"Saturday, March 3, 2001 10:11:12 AM GMT"</js> <jc>// en_US</jc> * <li><js>"2001å¹´3æ3æ¥ 10æ11å12ç§ GMT"</js> <jc>// ja_JP</jc> @@ -462,7 +462,7 @@ public class CalendarSwap extends StringSwap<Calendar> { /** * Transforms {@link Calendar Calendars} to {@link DateFormat#LONG} date-time strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"March 3, 2001 10:11:12 AM GMT"</js> <jc>// en_US</jc> * <li><js>"2001/03/03 10:11:12 GMT"</js> <jc>// ja_JP</jc> @@ -479,7 +479,7 @@ public class CalendarSwap extends StringSwap<Calendar> { /** * Transforms {@link Calendar Calendars} to {@link DateFormat#MEDIUM} date-time strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"Mar 3, 2001 10:11:12 AM"</js> <jc>// en_US</jc> * <li><js>"2001/03/03 10:11:12"</js> <jc>// ja_JP</jc> @@ -496,7 +496,7 @@ public class CalendarSwap extends StringSwap<Calendar> { /** * Transforms {@link Calendar Calendars} to {@link DateFormat#SHORT} date-time strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"3/3/01 10:11 AM"</js> <jc>// en_US</jc> * <li><js>"01/03/03 10:11"</js> <jc>// ja_JP</jc> http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/transforms/DateSwap.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/transforms/DateSwap.java b/juneau-core/src/main/java/org/apache/juneau/transforms/DateSwap.java index 95673df..8e8b8a7 100644 --- a/juneau-core/src/main/java/org/apache/juneau/transforms/DateSwap.java +++ b/juneau-core/src/main/java/org/apache/juneau/transforms/DateSwap.java @@ -87,7 +87,7 @@ public class DateSwap extends StringSwap<Date> { /** * Transforms {@link Date Dates} to {@link String Strings} using the {@code Date.toString()} method. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"Wed Jul 04 15:30:45 EST 2001"</js> * </ul> @@ -102,7 +102,7 @@ public class DateSwap extends StringSwap<Date> { /** * Transforms {@link Calendar Calendars} to ISO8601 date-time strings. * - * <h6 class='topic'>Example output:</h6> + * <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> @@ -149,7 +149,7 @@ public class DateSwap extends StringSwap<Date> { /** * Same as {@link ISO8601DT}, except always serializes in GMT. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <js>"2001-07-04T15:30:45Z"</js> */ public static class ISO8601DTZ extends DateSwap { @@ -186,7 +186,7 @@ public class DateSwap extends StringSwap<Date> { /** * Same as {@link CalendarSwap.ISO8601DT} except serializes to millisecond precision. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <js>"2001-07-04T15:30:45.123Z"</js> */ public static class ISO8601DTP extends ISO8601DT { @@ -203,7 +203,7 @@ public class DateSwap extends StringSwap<Date> { /** * Same as {@link CalendarSwap.ISO8601DTZ} except serializes to millisecond precision. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <js>"2001-07-04T15:30:45.123"</js> */ public static class ISO8601DTPZ extends ISO8601DTZ { @@ -220,7 +220,7 @@ public class DateSwap extends StringSwap<Date> { /** * Transforms {@link Date Dates} to RFC2822 date-time strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"Sat, 03 Mar 2001 10:11:12 +0000"</js> <jc>// en_US</jc> * <li><js>"å, 03 3 2001 10:11:12 +0000"</js> <jc>// ja_JP</jc> @@ -237,7 +237,7 @@ public class DateSwap extends StringSwap<Date> { /** * Same as {@link DateSwap.RFC2822DT}, except always serializes in GMT. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"Sat, 03 Mar 2001 10:11:12 GMT"</js> <jc>// en_US</jc> * <li><js>"å, 03 3 2001 10:11:12 GMT"</js> <jc>// ja_JP</jc> @@ -254,7 +254,7 @@ public class DateSwap extends StringSwap<Date> { /** * Transforms {@link Date Dates} to RFC2822 date strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"03 Mar 2001"</js> <jc>// en_US</jc> * <li><js>"03 3 2001"</js> <jc>// ja_JP</jc> @@ -271,7 +271,7 @@ public class DateSwap extends StringSwap<Date> { /** * Transforms {@link Date Dates} to simple <js>"yyyy/MM/dd HH:mm:ss"</js> date-time strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"2001/03/03 10:11:12"</js> * </ul> @@ -286,7 +286,7 @@ public class DateSwap extends StringSwap<Date> { /** * Transforms {@link Date Dates} to simple <js>"yyyy/MM/dd"</js> date strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"2001/03/03"</js> * </ul> @@ -301,7 +301,7 @@ public class DateSwap extends StringSwap<Date> { /** * Transforms {@link Date Dates} to simple <js>"HH:mm:ss"</js> time strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"10:11:12"</js> * </ul> @@ -316,7 +316,7 @@ public class DateSwap extends StringSwap<Date> { /** * Transforms {@link Date Dates} to {@link DateFormat#FULL} date strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"Saturday, March 3, 2001"</js> <jc>// en_US</jc> * <li><js>"2001å¹´3æ3æ¥"</js> <jc>// ja_JP</jc> @@ -333,7 +333,7 @@ public class DateSwap extends StringSwap<Date> { /** * Transforms {@link Date Dates} to {@link DateFormat#LONG} date strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"March 3, 2001"</js> <jc>// en_US</jc> * <li><js>"2001/03/03"</js> <jc>// ja_JP</jc> @@ -350,7 +350,7 @@ public class DateSwap extends StringSwap<Date> { /** * Transforms {@link Date Dates} to {@link DateFormat#MEDIUM} date strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"Mar 3, 2001"</js> <jc>// en_US</jc> * <li><js>"2001/03/03"</js> <jc>// ja_JP</jc> @@ -367,7 +367,7 @@ public class DateSwap extends StringSwap<Date> { /** * Transforms {@link Date Dates} to {@link DateFormat#SHORT} date strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"3/3/01"</js> <jc>// en_US</jc> * <li><js>"01/03/03"</js> <jc>// ja_JP</jc> @@ -384,7 +384,7 @@ public class DateSwap extends StringSwap<Date> { /** * Transforms {@link Date Dates} to {@link DateFormat#FULL} time strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"10:11:12 AM GMT"</js> <jc>// en_US</jc> * <li><js>"10æ11å12ç§ GMT"</js> <jc>// ja_JP</jc> @@ -401,7 +401,7 @@ public class DateSwap extends StringSwap<Date> { /** * Transforms {@link Date Dates} to {@link DateFormat#LONG} time strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"10:11:12 AM GMT"</js> <jc>// en_US</jc> * <li><js>"10:11:12 GMT"</js> <jc>// ja_JP</jc> @@ -418,7 +418,7 @@ public class DateSwap extends StringSwap<Date> { /** * Transforms {@link Date Dates} to {@link DateFormat#MEDIUM} time strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"10:11:12 AM"</js> <jc>// en_US</jc> * <li><js>"10:11:12"</js> <jc>// ja_JP</jc> @@ -435,7 +435,7 @@ public class DateSwap extends StringSwap<Date> { /** * Transforms {@link Date Dates} to {@link DateFormat#SHORT} time strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"10:11 AM"</js> <jc>// en_US</jc> * <li><js>"10:11 AM"</js> <jc>// ja_JP</jc> @@ -452,7 +452,7 @@ public class DateSwap extends StringSwap<Date> { /** * Transforms {@link Date Dates} to {@link DateFormat#FULL} date-time strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"Saturday, March 3, 2001 10:11:12 AM GMT"</js> <jc>// en_US</jc> * <li><js>"2001å¹´3æ3æ¥ 10æ11å12ç§ GMT"</js> <jc>// ja_JP</jc> @@ -469,7 +469,7 @@ public class DateSwap extends StringSwap<Date> { /** * Transforms {@link Date Dates} to {@link DateFormat#LONG} date-time strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"March 3, 2001 10:11:12 AM GMT"</js> <jc>// en_US</jc> * <li><js>"2001/03/03 10:11:12 GMT"</js> <jc>// ja_JP</jc> @@ -486,7 +486,7 @@ public class DateSwap extends StringSwap<Date> { /** * Transforms {@link Date Dates} to {@link DateFormat#MEDIUM} date-time strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"Mar 3, 2001 10:11:12 AM"</js> <jc>// en_US</jc> * <li><js>"2001/03/03 10:11:12"</js> <jc>// ja_JP</jc> @@ -503,7 +503,7 @@ public class DateSwap extends StringSwap<Date> { /** * Transforms {@link Date Dates} to {@link DateFormat#SHORT} date-time strings. * - * <h6 class='topic'>Example output:</h6> + * <h5 class='section'>Example output:</h5> * <ul> * <li><js>"3/3/01 10:11 AM"</js> <jc>// en_US</jc> * <li><js>"01/03/03 10:11"</js> <jc>// ja_JP</jc> http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/transforms/ReaderSwap.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/transforms/ReaderSwap.java b/juneau-core/src/main/java/org/apache/juneau/transforms/ReaderSwap.java index d434a73..f8129ac 100644 --- a/juneau-core/src/main/java/org/apache/juneau/transforms/ReaderSwap.java +++ b/juneau-core/src/main/java/org/apache/juneau/transforms/ReaderSwap.java @@ -26,7 +26,7 @@ import org.apache.juneau.xml.*; /** * Transforms the contents of a {@link Reader} into an {@code Object}. * - * <h6 class='topic'>Description</h6> + * <h5 class='section'>Description:</h5> * <p> * 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. @@ -98,7 +98,7 @@ public class ReaderSwap extends PojoSwap<Reader,Object> { try { if (parser == null) return IOUtils.read(o); - return parser.parse(o, session.object()); + return parser.parse(o, Object.class); } catch (IOException e) { return e.getLocalizedMessage(); } catch (Exception e) { http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/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 0b78561..7f803ae 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 @@ -27,15 +27,15 @@ import org.apache.juneau.transform.*; /** * Parses UON (a notation for URL-encoded query parameter values) text into POJO models. * - * <h6 class='topic'>Media types</h6> + * <h5 class='section'>Media types:</h5> * <p> * Handles <code>Content-Type</code> types: <code>text/uon</code> * - * <h6 class='topic'>Description</h6> + * <h5 class='section'>Description:</h5> * <p> * This parser uses a state machine, which makes it very fast and efficient. * - * <h6 class='topic'>Configurable properties</h6> + * <h5 class='section'>Configurable properties:</h5> * <p> * This class has the following properties associated with it: * <ul> @@ -731,7 +731,6 @@ public class UonParser extends ReaderParser { @Override /* Parser */ protected <T> T doParse(ParserSession session, ClassMeta<T> type) throws Exception { UonParserSession s = (UonParserSession)session; - type = session.normalizeClassMeta(type); UonReader r = s.getReader(); T o = parseAnything(s, type, r, s.getOuter(), true, null); validateEnd(s, r); @@ -743,7 +742,7 @@ public class UonParser extends ReaderParser { UonParserSession s = (UonParserSession)session; UonReader r = s.getReader(); readFlag(s, r, 'o'); - m = parseIntoMap(s, r, m, session.getClassMeta(keyType), session.getClassMeta(valueType), null); + m = parseIntoMap(s, r, m, (ClassMeta<K>)session.getClassMeta(keyType), (ClassMeta<V>)session.getClassMeta(valueType), null); validateEnd(s, r); return m; } @@ -753,7 +752,7 @@ public class UonParser extends ReaderParser { UonParserSession s = (UonParserSession)session; UonReader r = s.getReader(); readFlag(s, r, 'a'); - c = parseIntoCollection(s, r, c, session.getClassMeta(elementType), false, null); + c = parseIntoCollection(s, r, c, (ClassMeta<E>)session.getClassMeta(elementType), false, null); validateEnd(s, r); return c; } http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/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 6f40db5..144ade5 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 @@ -53,11 +53,11 @@ import org.apache.juneau.parser.*; * </tr> * </table> * - * <h6 class='topic'>Configurable properties inherited from parent classes</h6> + * <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. + * <li class='c'><a class="doclink" href="../BeanContext.html#ConfigProperties">BeanContext</a> - Properties associated with handling beans on serializers and parsers. * <ul> - * <li class='c'><a class='doclink' href='../parser/ParserContext.html#ConfigProperties'>ParserContext</a> - Configurable properties common to all parsers. + * <li class='c'><a class="doclink" href="../parser/ParserContext.html#ConfigProperties">ParserContext</a> - Configurable properties common to all parsers. * </ul> * </ul> */ http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonSerializer.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonSerializer.java b/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonSerializer.java index 9c752f2..4a227ed 100644 --- a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonSerializer.java +++ b/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonSerializer.java @@ -26,18 +26,18 @@ import org.apache.juneau.transform.*; /** * Serializes POJO models to UON (a notation for URL-encoded query parameter values). * - * <h6 class='topic'>Media types</h6> + * <h5 class='section'>Media types:</h5> * <p> * Handles <code>Accept</code> types: <code>text/uon</code> * <p> * Produces <code>Content-Type</code> types: <code>text/uon</code> * - * <h6 class='topic'>Description</h6> + * <h5 class='section'>Description:</h5> * <p> * 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. * - * <h6 class='topic'>Configurable properties</h6> + * <h5 class='section'>Configurable properties:</h5> * <p> * This class has the following properties associated with it: * <ul> @@ -122,7 +122,7 @@ import org.apache.juneau.transform.*; * ) * </p> * - * <h6 class='topic'>Example:</h6> + * <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>); http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonSerializerContext.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonSerializerContext.java b/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonSerializerContext.java index b7be793..5c7e30e 100644 --- a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonSerializerContext.java +++ b/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonSerializerContext.java @@ -60,11 +60,11 @@ import org.apache.juneau.serializer.*; * </tr> * </table> * - * <h6 class='topic'>Configurable properties inherited from parent classes</h6> + * <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. + * <li class='c'><a class="doclink" href="../BeanContext.html#ConfigProperties">BeanContext</a> - Properties associated with handling beans on serializers and parsers. * <ul> - * <li class='c'><a class='doclink' href='../serializer/SerializerContext.html#ConfigProperties'>SerializerContext</a> - Configurable properties common to all serializers. + * <li class='c'><a class="doclink" href="../serializer/SerializerContext.html#ConfigProperties">SerializerContext</a> - Configurable properties common to all serializers. * </ul> * </ul> */ http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonWriter.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonWriter.java b/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonWriter.java index f2b4c79..118b5e8 100644 --- a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonWriter.java +++ b/juneau-core/src/main/java/org/apache/juneau/urlencoding/UonWriter.java @@ -20,7 +20,10 @@ import org.apache.juneau.serializer.*; /** * Specialized writer for serializing UON-encoded text. * <p> - * <b>Note: This class is not intended for external use.</b> + * <h5 class='section'>Notes:</h5> + * <ul> + * <li>This class is not intended for external use. + * </ul> */ public final class UonWriter extends SerializerWriter { http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/30dd3b93/juneau-core/src/main/java/org/apache/juneau/urlencoding/UrlEncodingContext.java ---------------------------------------------------------------------- diff --git a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UrlEncodingContext.java b/juneau-core/src/main/java/org/apache/juneau/urlencoding/UrlEncodingContext.java index 6e6a8d4..95fe474 100644 --- a/juneau-core/src/main/java/org/apache/juneau/urlencoding/UrlEncodingContext.java +++ b/juneau-core/src/main/java/org/apache/juneau/urlencoding/UrlEncodingContext.java @@ -40,11 +40,14 @@ public final class UrlEncodingContext implements Cloneable { * String s2 = p2.serialize(<jk>new</jk> A()); <jc>// Produces "f1=a&f1=b&f2=c&f2=d"</jc> * </p> * <p> - * <b>Important note:</b> If parsing multi-part parameters, it's highly recommended to use Collections or Lists - * as bean property types instead of arrays since arrays have to be recreated from scratch every time a value - * is added to it. + * This option only applies to beans. * <p> - * This option only applies to beans. + * <h5 class='section'>Notes:</h5> + * <ul> + * <li>If parsing multi-part parameters, it's highly recommended to use <code>Collections</code> or <code>Lists</code> + * as bean property types instead of arrays since arrays have to be recreated from scratch every time a value + * is added to it. + * </ul> */ public static final String URLENC_expandedParams = "UrlEncoding.expandedParams";
