You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@juneau.apache.org by ja...@apache.org on 2017/08/27 22:19:34 UTC

[01/51] [partial] incubator-juneau-website git commit: Update javadocs.

Repository: incubator-juneau-website
Updated Branches:
  refs/heads/asf-site fe5928f75 -> 2ead32d5a


http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.html b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.html
index 957e688..1f13575 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.html
@@ -24,235 +24,258 @@
 <span class="sourceLineNo">016</span>import static org.apache.juneau.xml.XmlSerializerContext.*;<a name="line.16"></a>
 <span class="sourceLineNo">017</span><a name="line.17"></a>
 <span class="sourceLineNo">018</span>import org.apache.juneau.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.annotation.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.json.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span>import org.apache.juneau.serializer.*;<a name="line.21"></a>
-<span class="sourceLineNo">022</span><a name="line.22"></a>
-<span class="sourceLineNo">023</span>/**<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * Serializes POJO models to XML.<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * &lt;p&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * See the {@link JsonSerializer} class for details on how Java models map to JSON.<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *<a name="line.36"></a>
-<span class="sourceLineNo">037</span> * &lt;p&gt;<a name="line.37"></a>
-<span class="sourceLineNo">038</span> * For example, the following JSON...<a name="line.38"></a>
-<span class="sourceLineNo">039</span> * &lt;p class='bcode'&gt;<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *    {<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *       name:&lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.41"></a>
-<span class="sourceLineNo">042</span> *       address: {<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *          streetAddress: &lt;js&gt;'21 2nd Street'&lt;/js&gt;,<a name="line.43"></a>
-<span class="sourceLineNo">044</span> *          city: &lt;js&gt;'New York'&lt;/js&gt;,<a name="line.44"></a>
-<span class="sourceLineNo">045</span> *          state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.45"></a>
-<span class="sourceLineNo">046</span> *          postalCode: &lt;js&gt;10021&lt;/js&gt;<a name="line.46"></a>
-<span class="sourceLineNo">047</span> *       },<a name="line.47"></a>
-<span class="sourceLineNo">048</span> *       phoneNumbers: [<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *          &lt;js&gt;'212 555-1111'&lt;/js&gt;,<a name="line.49"></a>
-<span class="sourceLineNo">050</span> *          &lt;js&gt;'212 555-2222'&lt;/js&gt;<a name="line.50"></a>
-<span class="sourceLineNo">051</span> *       ],<a name="line.51"></a>
-<span class="sourceLineNo">052</span> *       additionalInfo: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.52"></a>
-<span class="sourceLineNo">053</span> *       remote: &lt;jk&gt;false&lt;/jk&gt;,<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *       height: &lt;js&gt;62.4&lt;/js&gt;,<a name="line.54"></a>
-<span class="sourceLineNo">055</span> *       &lt;js&gt;'fico score'&lt;/js&gt;:  &lt;js&gt;' &amp;gt; 640'&lt;/js&gt;<a name="line.55"></a>
-<span class="sourceLineNo">056</span> *    }<a name="line.56"></a>
-<span class="sourceLineNo">057</span> * &lt;p&gt;<a name="line.57"></a>
-<span class="sourceLineNo">058</span> *    ...maps to the following XML using the default serializer...<a name="line.58"></a>
-<span class="sourceLineNo">059</span> * &lt;p class='bcode'&gt;<a name="line.59"></a>
-<span class="sourceLineNo">060</span> *    &lt;xt&gt;&amp;lt;object&amp;gt;&lt;/xt&gt;<a name="line.60"></a>
-<span class="sourceLineNo">061</span> *       &lt;xt&gt;&amp;lt;name&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.61"></a>
-<span class="sourceLineNo">062</span> *       &lt;xt&gt;&amp;lt;address&amp;gt;&lt;/xt&gt;<a name="line.62"></a>
-<span class="sourceLineNo">063</span> *          &lt;xt&gt;&amp;lt;streetAddress&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.63"></a>
-<span class="sourceLineNo">064</span> *          &lt;xt&gt;&amp;lt;city&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.64"></a>
-<span class="sourceLineNo">065</span> *          &lt;xt&gt;&amp;lt;state&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.65"></a>
-<span class="sourceLineNo">066</span> *          &lt;xt&gt;&amp;lt;postalCode&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.66"></a>
-<span class="sourceLineNo">067</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.67"></a>
-<span class="sourceLineNo">068</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.68"></a>
-<span class="sourceLineNo">069</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.69"></a>
-<span class="sourceLineNo">070</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.70"></a>
-<span class="sourceLineNo">071</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.71"></a>
-<span class="sourceLineNo">072</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.72"></a>
-<span class="sourceLineNo">073</span> *       &lt;xt&gt;&amp;lt;remote&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.73"></a>
-<span class="sourceLineNo">074</span> *       &lt;xt&gt;&amp;lt;height&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.74"></a>
-<span class="sourceLineNo">075</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.75"></a>
-<span class="sourceLineNo">076</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.76"></a>
-<span class="sourceLineNo">077</span> *<a name="line.77"></a>
-<span class="sourceLineNo">078</span> * &lt;p&gt;<a name="line.78"></a>
-<span class="sourceLineNo">079</span> * An additional "add-json-properties" mode is also provided to prevent loss of JSON data types...<a name="line.79"></a>
-<span class="sourceLineNo">080</span> * &lt;p class='bcode'&gt;<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *       &lt;xt&gt;&amp;lt;name&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *       &lt;xt&gt;&amp;lt;address&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'object'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *          &lt;xt&gt;&amp;lt;streetAddress&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.83"></a>
-<span class="sourceLineNo">084</span> *          &lt;xt&gt;&amp;lt;city&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *          &lt;xt&gt;&amp;lt;state&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.85"></a>
-<span class="sourceLineNo">086</span> *          &lt;xt&gt;&amp;lt;postalCode&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.86"></a>
-<span class="sourceLineNo">087</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'array'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *       &lt;xt&gt;&amp;lt;remote&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'boolean'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.93"></a>
-<span class="sourceLineNo">094</span> *       &lt;xt&gt;&amp;lt;height&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.95"></a>
-<span class="sourceLineNo">096</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.96"></a>
-<span class="sourceLineNo">097</span> * &lt;/p&gt;<a name="line.97"></a>
-<span class="sourceLineNo">098</span> *<a name="line.98"></a>
-<span class="sourceLineNo">099</span> * &lt;p&gt;<a name="line.99"></a>
-<span class="sourceLineNo">100</span> * This serializer provides several serialization options.<a name="line.100"></a>
-<span class="sourceLineNo">101</span> * Typically, one of the predefined &lt;jsf&gt;DEFAULT&lt;/jsf&gt; serializers will be sufficient.<a name="line.101"></a>
-<span class="sourceLineNo">102</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.102"></a>
-<span class="sourceLineNo">103</span> *<a name="line.103"></a>
-<span class="sourceLineNo">104</span> * &lt;p&gt;<a name="line.104"></a>
-<span class="sourceLineNo">105</span> * If an attribute name contains any non-valid XML element characters, they will be escaped using standard<a name="line.105"></a>
-<span class="sourceLineNo">106</span> * {@code _x####_} notation.<a name="line.106"></a>
-<span class="sourceLineNo">107</span> *<a name="line.107"></a>
-<span class="sourceLineNo">108</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.108"></a>
-<span class="sourceLineNo">109</span> *<a name="line.109"></a>
-<span class="sourceLineNo">110</span> * This class has the following properties associated with it:<a name="line.110"></a>
-<span class="sourceLineNo">111</span> * &lt;ul&gt;<a name="line.111"></a>
-<span class="sourceLineNo">112</span> *    &lt;li&gt;{@link XmlSerializerContext}<a name="line.112"></a>
-<span class="sourceLineNo">113</span> *    &lt;li&gt;{@link BeanContext}<a name="line.113"></a>
-<span class="sourceLineNo">114</span> * &lt;/ul&gt;<a name="line.114"></a>
-<span class="sourceLineNo">115</span> *<a name="line.115"></a>
-<span class="sourceLineNo">116</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.116"></a>
-<span class="sourceLineNo">117</span> *<a name="line.117"></a>
-<span class="sourceLineNo">118</span> * The following direct subclasses are provided for convenience:<a name="line.118"></a>
-<span class="sourceLineNo">119</span> * &lt;ul&gt;<a name="line.119"></a>
-<span class="sourceLineNo">120</span> *    &lt;li&gt;{@link Sq} - Default serializer, single quotes.<a name="line.120"></a>
-<span class="sourceLineNo">121</span> *    &lt;li&gt;{@link SqReadable} - Default serializer, single quotes, whitespace added.<a name="line.121"></a>
-<span class="sourceLineNo">122</span> * &lt;/ul&gt;<a name="line.122"></a>
-<span class="sourceLineNo">123</span> */<a name="line.123"></a>
-<span class="sourceLineNo">124</span>@Produces("text/xml")<a name="line.124"></a>
-<span class="sourceLineNo">125</span>public class XmlSerializer extends WriterSerializer {<a name="line.125"></a>
-<span class="sourceLineNo">126</span><a name="line.126"></a>
-<span class="sourceLineNo">127</span>   /** Default serializer without namespaces. */<a name="line.127"></a>
-<span class="sourceLineNo">128</span>   public static final XmlSerializer DEFAULT = new XmlSerializer(PropertyStore.create());<a name="line.128"></a>
-<span class="sourceLineNo">129</span><a name="line.129"></a>
-<span class="sourceLineNo">130</span>   /** Default serializer without namespaces, with single quotes. */<a name="line.130"></a>
-<span class="sourceLineNo">131</span>   public static final XmlSerializer DEFAULT_SQ = new Sq(PropertyStore.create());<a name="line.131"></a>
-<span class="sourceLineNo">132</span><a name="line.132"></a>
-<span class="sourceLineNo">133</span>   /** Default serializer without namespaces, with single quotes, whitespace added. */<a name="line.133"></a>
-<span class="sourceLineNo">134</span>   public static final XmlSerializer DEFAULT_SQ_READABLE = new SqReadable(PropertyStore.create());<a name="line.134"></a>
-<span class="sourceLineNo">135</span><a name="line.135"></a>
-<span class="sourceLineNo">136</span>   /** Default serializer, all default settings. */<a name="line.136"></a>
-<span class="sourceLineNo">137</span>   public static final XmlSerializer DEFAULT_NS = new Ns(PropertyStore.create());<a name="line.137"></a>
-<span class="sourceLineNo">138</span><a name="line.138"></a>
-<span class="sourceLineNo">139</span>   /** Default serializer, single quotes. */<a name="line.139"></a>
-<span class="sourceLineNo">140</span>   public static final XmlSerializer DEFAULT_NS_SQ = new NsSq(PropertyStore.create());<a name="line.140"></a>
-<span class="sourceLineNo">141</span><a name="line.141"></a>
-<span class="sourceLineNo">142</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.142"></a>
-<span class="sourceLineNo">143</span>   public static final XmlSerializer DEFAULT_NS_SQ_READABLE = new NsSqReadable(PropertyStore.create());<a name="line.143"></a>
-<span class="sourceLineNo">144</span><a name="line.144"></a>
-<span class="sourceLineNo">145</span><a name="line.145"></a>
-<span class="sourceLineNo">146</span>   /** Default serializer, single quotes. */<a name="line.146"></a>
-<span class="sourceLineNo">147</span>   public static class Sq extends XmlSerializer {<a name="line.147"></a>
-<span class="sourceLineNo">148</span><a name="line.148"></a>
-<span class="sourceLineNo">149</span>      /**<a name="line.149"></a>
-<span class="sourceLineNo">150</span>       * Constructor.<a name="line.150"></a>
-<span class="sourceLineNo">151</span>       *<a name="line.151"></a>
-<span class="sourceLineNo">152</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.152"></a>
-<span class="sourceLineNo">153</span>       */<a name="line.153"></a>
-<span class="sourceLineNo">154</span>      public Sq(PropertyStore propertyStore) {<a name="line.154"></a>
-<span class="sourceLineNo">155</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\''));<a name="line.155"></a>
-<span class="sourceLineNo">156</span>      }<a name="line.156"></a>
-<span class="sourceLineNo">157</span>   }<a name="line.157"></a>
-<span class="sourceLineNo">158</span><a name="line.158"></a>
-<span class="sourceLineNo">159</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.159"></a>
-<span class="sourceLineNo">160</span>   public static class SqReadable extends XmlSerializer {<a name="line.160"></a>
-<span class="sourceLineNo">161</span><a name="line.161"></a>
-<span class="sourceLineNo">162</span>      /**<a name="line.162"></a>
-<span class="sourceLineNo">163</span>       * Constructor.<a name="line.163"></a>
-<span class="sourceLineNo">164</span>       *<a name="line.164"></a>
-<span class="sourceLineNo">165</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.165"></a>
-<span class="sourceLineNo">166</span>       */<a name="line.166"></a>
-<span class="sourceLineNo">167</span>      public SqReadable(PropertyStore propertyStore) {<a name="line.167"></a>
-<span class="sourceLineNo">168</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\'').append(SERIALIZER_useWhitespace, true));<a name="line.168"></a>
-<span class="sourceLineNo">169</span>      }<a name="line.169"></a>
-<span class="sourceLineNo">170</span>   }<a name="line.170"></a>
-<span class="sourceLineNo">171</span><a name="line.171"></a>
-<span class="sourceLineNo">172</span>   /** Default serializer without namespaces. */<a name="line.172"></a>
-<span class="sourceLineNo">173</span>   @Produces(value="text/xml+simple",contentType="text/xml")<a name="line.173"></a>
-<span class="sourceLineNo">174</span>   public static class Ns extends XmlSerializer {<a name="line.174"></a>
-<span class="sourceLineNo">175</span><a name="line.175"></a>
-<span class="sourceLineNo">176</span>      /**<a name="line.176"></a>
-<span class="sourceLineNo">177</span>       * Constructor.<a name="line.177"></a>
-<span class="sourceLineNo">178</span>       *<a name="line.178"></a>
-<span class="sourceLineNo">179</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.179"></a>
-<span class="sourceLineNo">180</span>       */<a name="line.180"></a>
-<span class="sourceLineNo">181</span>      public Ns(PropertyStore propertyStore) {<a name="line.181"></a>
-<span class="sourceLineNo">182</span>         super(propertyStore.copy().append(XML_enableNamespaces, true));<a name="line.182"></a>
-<span class="sourceLineNo">183</span>      }<a name="line.183"></a>
-<span class="sourceLineNo">184</span>   }<a name="line.184"></a>
+<span class="sourceLineNo">019</span>import org.apache.juneau.json.*;<a name="line.19"></a>
+<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
+<span class="sourceLineNo">021</span><a name="line.21"></a>
+<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * Serializes POJO models to XML.<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;p&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * See the {@link JsonSerializer} class for details on how Java models map to JSON.<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *<a name="line.35"></a>
+<span class="sourceLineNo">036</span> * &lt;p&gt;<a name="line.36"></a>
+<span class="sourceLineNo">037</span> * For example, the following JSON...<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * &lt;p class='bcode'&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *    {<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *       name:&lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.40"></a>
+<span class="sourceLineNo">041</span> *       address: {<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *          streetAddress: &lt;js&gt;'21 2nd Street'&lt;/js&gt;,<a name="line.42"></a>
+<span class="sourceLineNo">043</span> *          city: &lt;js&gt;'New York'&lt;/js&gt;,<a name="line.43"></a>
+<span class="sourceLineNo">044</span> *          state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.44"></a>
+<span class="sourceLineNo">045</span> *          postalCode: &lt;js&gt;10021&lt;/js&gt;<a name="line.45"></a>
+<span class="sourceLineNo">046</span> *       },<a name="line.46"></a>
+<span class="sourceLineNo">047</span> *       phoneNumbers: [<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *          &lt;js&gt;'212 555-1111'&lt;/js&gt;,<a name="line.48"></a>
+<span class="sourceLineNo">049</span> *          &lt;js&gt;'212 555-2222'&lt;/js&gt;<a name="line.49"></a>
+<span class="sourceLineNo">050</span> *       ],<a name="line.50"></a>
+<span class="sourceLineNo">051</span> *       additionalInfo: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.51"></a>
+<span class="sourceLineNo">052</span> *       remote: &lt;jk&gt;false&lt;/jk&gt;,<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *       height: &lt;js&gt;62.4&lt;/js&gt;,<a name="line.53"></a>
+<span class="sourceLineNo">054</span> *       &lt;js&gt;'fico score'&lt;/js&gt;:  &lt;js&gt;' &amp;gt; 640'&lt;/js&gt;<a name="line.54"></a>
+<span class="sourceLineNo">055</span> *    }<a name="line.55"></a>
+<span class="sourceLineNo">056</span> * &lt;p&gt;<a name="line.56"></a>
+<span class="sourceLineNo">057</span> *    ...maps to the following XML using the default serializer...<a name="line.57"></a>
+<span class="sourceLineNo">058</span> * &lt;p class='bcode'&gt;<a name="line.58"></a>
+<span class="sourceLineNo">059</span> *    &lt;xt&gt;&amp;lt;object&amp;gt;&lt;/xt&gt;<a name="line.59"></a>
+<span class="sourceLineNo">060</span> *       &lt;xt&gt;&amp;lt;name&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.60"></a>
+<span class="sourceLineNo">061</span> *       &lt;xt&gt;&amp;lt;address&amp;gt;&lt;/xt&gt;<a name="line.61"></a>
+<span class="sourceLineNo">062</span> *          &lt;xt&gt;&amp;lt;streetAddress&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.62"></a>
+<span class="sourceLineNo">063</span> *          &lt;xt&gt;&amp;lt;city&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.63"></a>
+<span class="sourceLineNo">064</span> *          &lt;xt&gt;&amp;lt;state&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.64"></a>
+<span class="sourceLineNo">065</span> *          &lt;xt&gt;&amp;lt;postalCode&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.65"></a>
+<span class="sourceLineNo">066</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.66"></a>
+<span class="sourceLineNo">067</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.67"></a>
+<span class="sourceLineNo">068</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.68"></a>
+<span class="sourceLineNo">069</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.69"></a>
+<span class="sourceLineNo">070</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.70"></a>
+<span class="sourceLineNo">071</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.71"></a>
+<span class="sourceLineNo">072</span> *       &lt;xt&gt;&amp;lt;remote&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.72"></a>
+<span class="sourceLineNo">073</span> *       &lt;xt&gt;&amp;lt;height&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.73"></a>
+<span class="sourceLineNo">074</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.74"></a>
+<span class="sourceLineNo">075</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.75"></a>
+<span class="sourceLineNo">076</span> *<a name="line.76"></a>
+<span class="sourceLineNo">077</span> * &lt;p&gt;<a name="line.77"></a>
+<span class="sourceLineNo">078</span> * An additional "add-json-properties" mode is also provided to prevent loss of JSON data types...<a name="line.78"></a>
+<span class="sourceLineNo">079</span> * &lt;p class='bcode'&gt;<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *       &lt;xt&gt;&amp;lt;name&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *       &lt;xt&gt;&amp;lt;address&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'object'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *          &lt;xt&gt;&amp;lt;streetAddress&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.82"></a>
+<span class="sourceLineNo">083</span> *          &lt;xt&gt;&amp;lt;city&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *          &lt;xt&gt;&amp;lt;state&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.84"></a>
+<span class="sourceLineNo">085</span> *          &lt;xt&gt;&amp;lt;postalCode&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.85"></a>
+<span class="sourceLineNo">086</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'array'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.87"></a>
+<span class="sourceLineNo">088</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.88"></a>
+<span class="sourceLineNo">089</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.89"></a>
+<span class="sourceLineNo">090</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.91"></a>
+<span class="sourceLineNo">092</span> *       &lt;xt&gt;&amp;lt;remote&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'boolean'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.92"></a>
+<span class="sourceLineNo">093</span> *       &lt;xt&gt;&amp;lt;height&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.93"></a>
+<span class="sourceLineNo">094</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.94"></a>
+<span class="sourceLineNo">095</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.95"></a>
+<span class="sourceLineNo">096</span> * &lt;/p&gt;<a name="line.96"></a>
+<span class="sourceLineNo">097</span> *<a name="line.97"></a>
+<span class="sourceLineNo">098</span> * &lt;p&gt;<a name="line.98"></a>
+<span class="sourceLineNo">099</span> * This serializer provides several serialization options.<a name="line.99"></a>
+<span class="sourceLineNo">100</span> * Typically, one of the predefined &lt;jsf&gt;DEFAULT&lt;/jsf&gt; serializers will be sufficient.<a name="line.100"></a>
+<span class="sourceLineNo">101</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.101"></a>
+<span class="sourceLineNo">102</span> *<a name="line.102"></a>
+<span class="sourceLineNo">103</span> * &lt;p&gt;<a name="line.103"></a>
+<span class="sourceLineNo">104</span> * If an attribute name contains any non-valid XML element characters, they will be escaped using standard<a name="line.104"></a>
+<span class="sourceLineNo">105</span> * {@code _x####_} notation.<a name="line.105"></a>
+<span class="sourceLineNo">106</span> *<a name="line.106"></a>
+<span class="sourceLineNo">107</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.107"></a>
+<span class="sourceLineNo">108</span> *<a name="line.108"></a>
+<span class="sourceLineNo">109</span> * This class has the following properties associated with it:<a name="line.109"></a>
+<span class="sourceLineNo">110</span> * &lt;ul&gt;<a name="line.110"></a>
+<span class="sourceLineNo">111</span> *    &lt;li&gt;{@link XmlSerializerContext}<a name="line.111"></a>
+<span class="sourceLineNo">112</span> *    &lt;li&gt;{@link BeanContext}<a name="line.112"></a>
+<span class="sourceLineNo">113</span> * &lt;/ul&gt;<a name="line.113"></a>
+<span class="sourceLineNo">114</span> *<a name="line.114"></a>
+<span class="sourceLineNo">115</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.115"></a>
+<span class="sourceLineNo">116</span> *<a name="line.116"></a>
+<span class="sourceLineNo">117</span> * The following direct subclasses are provided for convenience:<a name="line.117"></a>
+<span class="sourceLineNo">118</span> * &lt;ul&gt;<a name="line.118"></a>
+<span class="sourceLineNo">119</span> *    &lt;li&gt;{@link Sq} - Default serializer, single quotes.<a name="line.119"></a>
+<span class="sourceLineNo">120</span> *    &lt;li&gt;{@link SqReadable} - Default serializer, single quotes, whitespace added.<a name="line.120"></a>
+<span class="sourceLineNo">121</span> * &lt;/ul&gt;<a name="line.121"></a>
+<span class="sourceLineNo">122</span> */<a name="line.122"></a>
+<span class="sourceLineNo">123</span>public class XmlSerializer extends WriterSerializer {<a name="line.123"></a>
+<span class="sourceLineNo">124</span><a name="line.124"></a>
+<span class="sourceLineNo">125</span>   /** Default serializer without namespaces. */<a name="line.125"></a>
+<span class="sourceLineNo">126</span>   public static final XmlSerializer DEFAULT = new XmlSerializer(PropertyStore.create());<a name="line.126"></a>
+<span class="sourceLineNo">127</span><a name="line.127"></a>
+<span class="sourceLineNo">128</span>   /** Default serializer without namespaces, with single quotes. */<a name="line.128"></a>
+<span class="sourceLineNo">129</span>   public static final XmlSerializer DEFAULT_SQ = new Sq(PropertyStore.create());<a name="line.129"></a>
+<span class="sourceLineNo">130</span><a name="line.130"></a>
+<span class="sourceLineNo">131</span>   /** Default serializer without namespaces, with single quotes, whitespace added. */<a name="line.131"></a>
+<span class="sourceLineNo">132</span>   public static final XmlSerializer DEFAULT_SQ_READABLE = new SqReadable(PropertyStore.create());<a name="line.132"></a>
+<span class="sourceLineNo">133</span><a name="line.133"></a>
+<span class="sourceLineNo">134</span>   /** Default serializer, all default settings. */<a name="line.134"></a>
+<span class="sourceLineNo">135</span>   public static final XmlSerializer DEFAULT_NS = new Ns(PropertyStore.create());<a name="line.135"></a>
+<span class="sourceLineNo">136</span><a name="line.136"></a>
+<span class="sourceLineNo">137</span>   /** Default serializer, single quotes. */<a name="line.137"></a>
+<span class="sourceLineNo">138</span>   public static final XmlSerializer DEFAULT_NS_SQ = new NsSq(PropertyStore.create());<a name="line.138"></a>
+<span class="sourceLineNo">139</span><a name="line.139"></a>
+<span class="sourceLineNo">140</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.140"></a>
+<span class="sourceLineNo">141</span>   public static final XmlSerializer DEFAULT_NS_SQ_READABLE = new NsSqReadable(PropertyStore.create());<a name="line.141"></a>
+<span class="sourceLineNo">142</span><a name="line.142"></a>
+<span class="sourceLineNo">143</span><a name="line.143"></a>
+<span class="sourceLineNo">144</span>   /** Default serializer, single quotes. */<a name="line.144"></a>
+<span class="sourceLineNo">145</span>   public static class Sq extends XmlSerializer {<a name="line.145"></a>
+<span class="sourceLineNo">146</span><a name="line.146"></a>
+<span class="sourceLineNo">147</span>      /**<a name="line.147"></a>
+<span class="sourceLineNo">148</span>       * Constructor.<a name="line.148"></a>
+<span class="sourceLineNo">149</span>       *<a name="line.149"></a>
+<span class="sourceLineNo">150</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.150"></a>
+<span class="sourceLineNo">151</span>       */<a name="line.151"></a>
+<span class="sourceLineNo">152</span>      public Sq(PropertyStore propertyStore) {<a name="line.152"></a>
+<span class="sourceLineNo">153</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\''));<a name="line.153"></a>
+<span class="sourceLineNo">154</span>      }<a name="line.154"></a>
+<span class="sourceLineNo">155</span>   }<a name="line.155"></a>
+<span class="sourceLineNo">156</span><a name="line.156"></a>
+<span class="sourceLineNo">157</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.157"></a>
+<span class="sourceLineNo">158</span>   public static class SqReadable extends XmlSerializer {<a name="line.158"></a>
+<span class="sourceLineNo">159</span><a name="line.159"></a>
+<span class="sourceLineNo">160</span>      /**<a name="line.160"></a>
+<span class="sourceLineNo">161</span>       * Constructor.<a name="line.161"></a>
+<span class="sourceLineNo">162</span>       *<a name="line.162"></a>
+<span class="sourceLineNo">163</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.163"></a>
+<span class="sourceLineNo">164</span>       */<a name="line.164"></a>
+<span class="sourceLineNo">165</span>      public SqReadable(PropertyStore propertyStore) {<a name="line.165"></a>
+<span class="sourceLineNo">166</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\'').append(SERIALIZER_useWhitespace, true));<a name="line.166"></a>
+<span class="sourceLineNo">167</span>      }<a name="line.167"></a>
+<span class="sourceLineNo">168</span>   }<a name="line.168"></a>
+<span class="sourceLineNo">169</span><a name="line.169"></a>
+<span class="sourceLineNo">170</span>   /** Default serializer without namespaces. */<a name="line.170"></a>
+<span class="sourceLineNo">171</span>   public static class Ns extends XmlSerializer {<a name="line.171"></a>
+<span class="sourceLineNo">172</span><a name="line.172"></a>
+<span class="sourceLineNo">173</span>      /**<a name="line.173"></a>
+<span class="sourceLineNo">174</span>       * Constructor.<a name="line.174"></a>
+<span class="sourceLineNo">175</span>       *<a name="line.175"></a>
+<span class="sourceLineNo">176</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.176"></a>
+<span class="sourceLineNo">177</span>       */<a name="line.177"></a>
+<span class="sourceLineNo">178</span>      public Ns(PropertyStore propertyStore) {<a name="line.178"></a>
+<span class="sourceLineNo">179</span>         super(propertyStore.copy().append(XML_enableNamespaces, true), "text/xml", "text/xml+simple");<a name="line.179"></a>
+<span class="sourceLineNo">180</span>      }<a name="line.180"></a>
+<span class="sourceLineNo">181</span>   }<a name="line.181"></a>
+<span class="sourceLineNo">182</span><a name="line.182"></a>
+<span class="sourceLineNo">183</span>   /** Default serializer without namespaces, single quotes. */<a name="line.183"></a>
+<span class="sourceLineNo">184</span>   public static class NsSq extends XmlSerializer {<a name="line.184"></a>
 <span class="sourceLineNo">185</span><a name="line.185"></a>
-<span class="sourceLineNo">186</span>   /** Default serializer without namespaces, single quotes. */<a name="line.186"></a>
-<span class="sourceLineNo">187</span>   public static class NsSq extends XmlSerializer {<a name="line.187"></a>
-<span class="sourceLineNo">188</span><a name="line.188"></a>
-<span class="sourceLineNo">189</span>      /**<a name="line.189"></a>
-<span class="sourceLineNo">190</span>       * Constructor.<a name="line.190"></a>
-<span class="sourceLineNo">191</span>       *<a name="line.191"></a>
-<span class="sourceLineNo">192</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.192"></a>
-<span class="sourceLineNo">193</span>       */<a name="line.193"></a>
-<span class="sourceLineNo">194</span>      public NsSq(PropertyStore propertyStore) {<a name="line.194"></a>
-<span class="sourceLineNo">195</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\''));<a name="line.195"></a>
-<span class="sourceLineNo">196</span>      }<a name="line.196"></a>
-<span class="sourceLineNo">197</span>   }<a name="line.197"></a>
+<span class="sourceLineNo">186</span>      /**<a name="line.186"></a>
+<span class="sourceLineNo">187</span>       * Constructor.<a name="line.187"></a>
+<span class="sourceLineNo">188</span>       *<a name="line.188"></a>
+<span class="sourceLineNo">189</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.189"></a>
+<span class="sourceLineNo">190</span>       */<a name="line.190"></a>
+<span class="sourceLineNo">191</span>      public NsSq(PropertyStore propertyStore) {<a name="line.191"></a>
+<span class="sourceLineNo">192</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\''));<a name="line.192"></a>
+<span class="sourceLineNo">193</span>      }<a name="line.193"></a>
+<span class="sourceLineNo">194</span>   }<a name="line.194"></a>
+<span class="sourceLineNo">195</span><a name="line.195"></a>
+<span class="sourceLineNo">196</span>   /** Default serializer without namespaces, single quotes, with whitespace. */<a name="line.196"></a>
+<span class="sourceLineNo">197</span>   public static class NsSqReadable extends XmlSerializer {<a name="line.197"></a>
 <span class="sourceLineNo">198</span><a name="line.198"></a>
-<span class="sourceLineNo">199</span>   /** Default serializer without namespaces, single quotes, with whitespace. */<a name="line.199"></a>
-<span class="sourceLineNo">200</span>   public static class NsSqReadable extends XmlSerializer {<a name="line.200"></a>
-<span class="sourceLineNo">201</span><a name="line.201"></a>
-<span class="sourceLineNo">202</span>      /**<a name="line.202"></a>
-<span class="sourceLineNo">203</span>       * Constructor.<a name="line.203"></a>
-<span class="sourceLineNo">204</span>       *<a name="line.204"></a>
-<span class="sourceLineNo">205</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.205"></a>
-<span class="sourceLineNo">206</span>       */<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      public NsSqReadable(PropertyStore propertyStore) {<a name="line.207"></a>
-<span class="sourceLineNo">208</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\'')<a name="line.208"></a>
-<span class="sourceLineNo">209</span>            .append(SERIALIZER_useWhitespace, true));<a name="line.209"></a>
-<span class="sourceLineNo">210</span>      }<a name="line.210"></a>
-<span class="sourceLineNo">211</span>   }<a name="line.211"></a>
-<span class="sourceLineNo">212</span><a name="line.212"></a>
+<span class="sourceLineNo">199</span>      /**<a name="line.199"></a>
+<span class="sourceLineNo">200</span>       * Constructor.<a name="line.200"></a>
+<span class="sourceLineNo">201</span>       *<a name="line.201"></a>
+<span class="sourceLineNo">202</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.202"></a>
+<span class="sourceLineNo">203</span>       */<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      public NsSqReadable(PropertyStore propertyStore) {<a name="line.204"></a>
+<span class="sourceLineNo">205</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\'')<a name="line.205"></a>
+<span class="sourceLineNo">206</span>            .append(SERIALIZER_useWhitespace, true));<a name="line.206"></a>
+<span class="sourceLineNo">207</span>      }<a name="line.207"></a>
+<span class="sourceLineNo">208</span>   }<a name="line.208"></a>
+<span class="sourceLineNo">209</span><a name="line.209"></a>
+<span class="sourceLineNo">210</span><a name="line.210"></a>
+<span class="sourceLineNo">211</span>   final XmlSerializerContext ctx;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>   private volatile XmlSchemaSerializer schemaSerializer;<a name="line.212"></a>
 <span class="sourceLineNo">213</span><a name="line.213"></a>
-<span class="sourceLineNo">214</span>   final XmlSerializerContext ctx;<a name="line.214"></a>
-<span class="sourceLineNo">215</span>   private volatile XmlSchemaSerializer schemaSerializer;<a name="line.215"></a>
-<span class="sourceLineNo">216</span><a name="line.216"></a>
-<span class="sourceLineNo">217</span>   /**<a name="line.217"></a>
-<span class="sourceLineNo">218</span>    * Constructor.<a name="line.218"></a>
-<span class="sourceLineNo">219</span>    *<a name="line.219"></a>
-<span class="sourceLineNo">220</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.220"></a>
-<span class="sourceLineNo">221</span>    */<a name="line.221"></a>
-<span class="sourceLineNo">222</span>   public XmlSerializer(PropertyStore propertyStore) {<a name="line.222"></a>
-<span class="sourceLineNo">223</span>      super(propertyStore);<a name="line.223"></a>
-<span class="sourceLineNo">224</span>      this.ctx = createContext(XmlSerializerContext.class);<a name="line.224"></a>
-<span class="sourceLineNo">225</span>   }<a name="line.225"></a>
-<span class="sourceLineNo">226</span><a name="line.226"></a>
-<span class="sourceLineNo">227</span>   @Override /* CoreObject */<a name="line.227"></a>
-<span class="sourceLineNo">228</span>   public XmlSerializerBuilder builder() {<a name="line.228"></a>
-<span class="sourceLineNo">229</span>      return new XmlSerializerBuilder(propertyStore);<a name="line.229"></a>
-<span class="sourceLineNo">230</span>   }<a name="line.230"></a>
-<span class="sourceLineNo">231</span><a name="line.231"></a>
-<span class="sourceLineNo">232</span><a name="line.232"></a>
-<span class="sourceLineNo">233</span>   /**<a name="line.233"></a>
-<span class="sourceLineNo">234</span>    * Returns the schema serializer based on the settings of this serializer.<a name="line.234"></a>
-<span class="sourceLineNo">235</span>    * @return The schema serializer.<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    */<a name="line.236"></a>
-<span class="sourceLineNo">237</span>   public XmlSerializer getSchemaSerializer() {<a name="line.237"></a>
-<span class="sourceLineNo">238</span>      if (schemaSerializer == null)<a name="line.238"></a>
-<span class="sourceLineNo">239</span>         schemaSerializer = new XmlSchemaSerializer(propertyStore);<a name="line.239"></a>
-<span class="sourceLineNo">240</span>      return schemaSerializer;<a name="line.240"></a>
-<span class="sourceLineNo">241</span>   }<a name="line.241"></a>
-<span class="sourceLineNo">242</span><a name="line.242"></a>
-<span class="sourceLineNo">243</span>   @Override /* Serializer */<a name="line.243"></a>
-<span class="sourceLineNo">244</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.244"></a>
-<span class="sourceLineNo">245</span>      return new XmlSerializerSession(ctx, args);<a name="line.245"></a>
-<span class="sourceLineNo">246</span>   }<a name="line.246"></a>
-<span class="sourceLineNo">247</span>}<a name="line.247"></a>
+<span class="sourceLineNo">214</span>   /**<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    * Constructor.<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    *<a name="line.216"></a>
+<span class="sourceLineNo">217</span>    * @param propertyStore<a name="line.217"></a>
+<span class="sourceLineNo">218</span>    *    The property store containing all the settings for this object.<a name="line.218"></a>
+<span class="sourceLineNo">219</span>    */<a name="line.219"></a>
+<span class="sourceLineNo">220</span>   public XmlSerializer(PropertyStore propertyStore) {<a name="line.220"></a>
+<span class="sourceLineNo">221</span>      this(propertyStore, "text/xml");<a name="line.221"></a>
+<span class="sourceLineNo">222</span>   }<a name="line.222"></a>
+<span class="sourceLineNo">223</span><a name="line.223"></a>
+<span class="sourceLineNo">224</span>   /**<a name="line.224"></a>
+<span class="sourceLineNo">225</span>    * Constructor.<a name="line.225"></a>
+<span class="sourceLineNo">226</span>    *<a name="line.226"></a>
+<span class="sourceLineNo">227</span>    * @param propertyStore<a name="line.227"></a>
+<span class="sourceLineNo">228</span>    *    The property store containing all the settings for this object.<a name="line.228"></a>
+<span class="sourceLineNo">229</span>    * @param produces<a name="line.229"></a>
+<span class="sourceLineNo">230</span>    *    The media type that this serializer produces.<a name="line.230"></a>
+<span class="sourceLineNo">231</span>    * @param accept<a name="line.231"></a>
+<span class="sourceLineNo">232</span>    *    The accept media types that the serializer can handle.<a name="line.232"></a>
+<span class="sourceLineNo">233</span>    *    &lt;p&gt;<a name="line.233"></a>
+<span class="sourceLineNo">234</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.235"></a>
+<span class="sourceLineNo">236</span>    *    &lt;p&gt;<a name="line.236"></a>
+<span class="sourceLineNo">237</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.237"></a>
+<span class="sourceLineNo">238</span>    *    &lt;p&gt;<a name="line.238"></a>
+<span class="sourceLineNo">239</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.240"></a>
+<span class="sourceLineNo">241</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    *    &lt;br&gt;...or...<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.243"></a>
+<span class="sourceLineNo">244</span>    */<a name="line.244"></a>
+<span class="sourceLineNo">245</span>   public XmlSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>      super(propertyStore, produces, accept);<a name="line.246"></a>
+<span class="sourceLineNo">247</span>      this.ctx = createContext(XmlSerializerContext.class);<a name="line.247"></a>
+<span class="sourceLineNo">248</span>   }<a name="line.248"></a>
+<span class="sourceLineNo">249</span><a name="line.249"></a>
+<span class="sourceLineNo">250</span>   @Override /* CoreObject */<a name="line.250"></a>
+<span class="sourceLineNo">251</span>   public XmlSerializerBuilder builder() {<a name="line.251"></a>
+<span class="sourceLineNo">252</span>      return new XmlSerializerBuilder(propertyStore);<a name="line.252"></a>
+<span class="sourceLineNo">253</span>   }<a name="line.253"></a>
+<span class="sourceLineNo">254</span><a name="line.254"></a>
+<span class="sourceLineNo">255</span><a name="line.255"></a>
+<span class="sourceLineNo">256</span>   /**<a name="line.256"></a>
+<span class="sourceLineNo">257</span>    * Returns the schema serializer based on the settings of this serializer.<a name="line.257"></a>
+<span class="sourceLineNo">258</span>    * @return The schema serializer.<a name="line.258"></a>
+<span class="sourceLineNo">259</span>    */<a name="line.259"></a>
+<span class="sourceLineNo">260</span>   public XmlSerializer getSchemaSerializer() {<a name="line.260"></a>
+<span class="sourceLineNo">261</span>      if (schemaSerializer == null)<a name="line.261"></a>
+<span class="sourceLineNo">262</span>         schemaSerializer = new XmlSchemaSerializer(propertyStore);<a name="line.262"></a>
+<span class="sourceLineNo">263</span>      return schemaSerializer;<a name="line.263"></a>
+<span class="sourceLineNo">264</span>   }<a name="line.264"></a>
+<span class="sourceLineNo">265</span><a name="line.265"></a>
+<span class="sourceLineNo">266</span>   @Override /* Serializer */<a name="line.266"></a>
+<span class="sourceLineNo">267</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.267"></a>
+<span class="sourceLineNo">268</span>      return new XmlSerializerSession(ctx, args);<a name="line.268"></a>
+<span class="sourceLineNo">269</span>   }<a name="line.269"></a>
+<span class="sourceLineNo">270</span>}<a name="line.270"></a>
 
 
 


[24/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.html b/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.html
index 4484c96..3a31851 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.html
@@ -25,222 +25,247 @@
 <span class="sourceLineNo">017</span>import java.util.*;<a name="line.17"></a>
 <span class="sourceLineNo">018</span><a name="line.18"></a>
 <span class="sourceLineNo">019</span>import org.apache.juneau.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.annotation.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span>import org.apache.juneau.serializer.*;<a name="line.21"></a>
-<span class="sourceLineNo">022</span><a name="line.22"></a>
-<span class="sourceLineNo">023</span>/**<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * Serializes POJO models to JSON.<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;application/json, text/json&lt;/code&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * &lt;p&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/json&lt;/code&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> *<a name="line.31"></a>
-<span class="sourceLineNo">032</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.32"></a>
-<span class="sourceLineNo">033</span> *<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * The conversion is as follows...<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * &lt;ul class='spaced-list'&gt;<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *    &lt;li&gt;<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *       Maps (e.g. {@link HashMap HashMaps}, {@link TreeMap TreeMaps}) are converted to JSON objects.<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *       Collections (e.g. {@link HashSet HashSets}, {@link LinkedList LinkedLists}) and Java arrays are converted to<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *       JSON arrays.<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *    &lt;li&gt;<a name="line.41"></a>
-<span class="sourceLineNo">042</span> *       {@link String Strings} are converted to JSON strings.<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *    &lt;li&gt;<a name="line.43"></a>
-<span class="sourceLineNo">044</span> *       {@link Number Numbers} (e.g. {@link Integer}, {@link Long}, {@link Double}) are converted to JSON numbers.<a name="line.44"></a>
-<span class="sourceLineNo">045</span> *    &lt;li&gt;<a name="line.45"></a>
-<span class="sourceLineNo">046</span> *       {@link Boolean Booleans} are converted to JSON booleans.<a name="line.46"></a>
-<span class="sourceLineNo">047</span> *    &lt;li&gt;<a name="line.47"></a>
-<span class="sourceLineNo">048</span> *       {@code nulls} are converted to JSON nulls.<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *    &lt;li&gt;<a name="line.49"></a>
-<span class="sourceLineNo">050</span> *       {@code arrays} are converted to JSON arrays.<a name="line.50"></a>
-<span class="sourceLineNo">051</span> *    &lt;li&gt;<a name="line.51"></a>
-<span class="sourceLineNo">052</span> *       {@code beans} are converted to JSON objects.<a name="line.52"></a>
-<span class="sourceLineNo">053</span> * &lt;/ul&gt;<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *<a name="line.54"></a>
-<span class="sourceLineNo">055</span> * &lt;p&gt;<a name="line.55"></a>
-<span class="sourceLineNo">056</span> * The types above are considered "JSON-primitive" object types.<a name="line.56"></a>
-<span class="sourceLineNo">057</span> * Any non-JSON-primitive object types are transformed into JSON-primitive object types through<a name="line.57"></a>
-<span class="sourceLineNo">058</span> * {@link org.apache.juneau.transform.PojoSwap PojoSwaps} associated through the<a name="line.58"></a>
-<span class="sourceLineNo">059</span> * {@link CoreObjectBuilder#pojoSwaps(Class...)} method.<a name="line.59"></a>
-<span class="sourceLineNo">060</span> * Several default transforms are provided for transforming Dates, Enums, Iterators, etc...<a name="line.60"></a>
-<span class="sourceLineNo">061</span> *<a name="line.61"></a>
-<span class="sourceLineNo">062</span> * &lt;p&gt;<a name="line.62"></a>
-<span class="sourceLineNo">063</span> * This serializer provides several serialization options.<a name="line.63"></a>
-<span class="sourceLineNo">064</span> * Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.64"></a>
-<span class="sourceLineNo">065</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.65"></a>
-<span class="sourceLineNo">066</span> *<a name="line.66"></a>
-<span class="sourceLineNo">067</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.67"></a>
-<span class="sourceLineNo">068</span> *<a name="line.68"></a>
-<span class="sourceLineNo">069</span> * This class has the following properties associated with it:<a name="line.69"></a>
-<span class="sourceLineNo">070</span> * &lt;ul&gt;<a name="line.70"></a>
-<span class="sourceLineNo">071</span> *    &lt;li&gt;{@link JsonSerializerContext}<a name="line.71"></a>
-<span class="sourceLineNo">072</span> *    &lt;li&gt;{@link SerializerContext}<a name="line.72"></a>
-<span class="sourceLineNo">073</span> *    &lt;li&gt;{@link BeanContext}<a name="line.73"></a>
-<span class="sourceLineNo">074</span> * &lt;/ul&gt;<a name="line.74"></a>
-<span class="sourceLineNo">075</span> *<a name="line.75"></a>
-<span class="sourceLineNo">076</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.76"></a>
-<span class="sourceLineNo">077</span> *<a name="line.77"></a>
-<span class="sourceLineNo">078</span> * The following direct subclasses are provided for convenience:<a name="line.78"></a>
-<span class="sourceLineNo">079</span> * &lt;ul class='spaced-list'&gt;<a name="line.79"></a>
-<span class="sourceLineNo">080</span> *    &lt;li&gt;<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *       {@link Simple} - Default serializer, single quotes, simple mode.<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *    &lt;li&gt;<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *       {@link SimpleReadable} - Default serializer, single quotes, simple mode, with whitespace.<a name="line.83"></a>
-<span class="sourceLineNo">084</span> * &lt;/ul&gt;<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *<a name="line.85"></a>
-<span class="sourceLineNo">086</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.86"></a>
-<span class="sourceLineNo">087</span> * &lt;p class='bcode'&gt;<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *    &lt;jc&gt;// Use one of the default serializers to serialize a POJO&lt;/jc&gt;<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *    String json = JsonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(someObject);<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *    &lt;jc&gt;// Create a custom serializer for lax syntax using single quote characters&lt;/jc&gt;<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *    JsonSerializer serializer = &lt;jk&gt;new&lt;/jk&gt; JsonSerializerBuilder().simple().sq().build();<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *<a name="line.93"></a>
-<span class="sourceLineNo">094</span> *    &lt;jc&gt;// Clone an existing serializer and modify it to use single-quotes&lt;/jc&gt;<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *    JsonSerializer serializer = JsonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.builder().sq().build();<a name="line.95"></a>
-<span class="sourceLineNo">096</span> *<a name="line.96"></a>
-<span class="sourceLineNo">097</span> *    &lt;jc&gt;// Serialize a POJO to JSON&lt;/jc&gt;<a name="line.97"></a>
-<span class="sourceLineNo">098</span> *    String json = serializer.serialize(someObject);<a name="line.98"></a>
-<span class="sourceLineNo">099</span> * &lt;/p&gt;<a name="line.99"></a>
-<span class="sourceLineNo">100</span> */<a name="line.100"></a>
-<span class="sourceLineNo">101</span>@Produces("application/json,text/json")<a name="line.101"></a>
-<span class="sourceLineNo">102</span>public class JsonSerializer extends WriterSerializer {<a name="line.102"></a>
-<span class="sourceLineNo">103</span><a name="line.103"></a>
-<span class="sourceLineNo">104</span>   /** Default serializer, all default settings.*/<a name="line.104"></a>
-<span class="sourceLineNo">105</span>   public static final JsonSerializer DEFAULT = new JsonSerializer(PropertyStore.create());<a name="line.105"></a>
-<span class="sourceLineNo">106</span><a name="line.106"></a>
-<span class="sourceLineNo">107</span>   /** Default serializer, all default settings.*/<a name="line.107"></a>
-<span class="sourceLineNo">108</span>   public static final JsonSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.108"></a>
-<span class="sourceLineNo">109</span><a name="line.109"></a>
-<span class="sourceLineNo">110</span>   /** Default serializer, single quotes, simple mode. */<a name="line.110"></a>
-<span class="sourceLineNo">111</span>   public static final JsonSerializer DEFAULT_LAX = new Simple(PropertyStore.create());<a name="line.111"></a>
-<span class="sourceLineNo">112</span><a name="line.112"></a>
-<span class="sourceLineNo">113</span>   /** Default serializer, single quotes, simple mode, with whitespace. */<a name="line.113"></a>
-<span class="sourceLineNo">114</span>   public static final JsonSerializer DEFAULT_LAX_READABLE = new SimpleReadable(PropertyStore.create());<a name="line.114"></a>
-<span class="sourceLineNo">115</span><a name="line.115"></a>
-<span class="sourceLineNo">116</span>   /**<a name="line.116"></a>
-<span class="sourceLineNo">117</span>    * Default serializer, single quotes, simple mode, with whitespace and recursion detection.<a name="line.117"></a>
-<span class="sourceLineNo">118</span>    * Note that recursion detection introduces a small performance penalty.<a name="line.118"></a>
-<span class="sourceLineNo">119</span>    */<a name="line.119"></a>
-<span class="sourceLineNo">120</span>   public static final JsonSerializer DEFAULT_LAX_READABLE_SAFE = new SimpleReadableSafe(PropertyStore.create());<a name="line.120"></a>
-<span class="sourceLineNo">121</span><a name="line.121"></a>
-<span class="sourceLineNo">122</span><a name="line.122"></a>
-<span class="sourceLineNo">123</span>   /** Default serializer, with whitespace. */<a name="line.123"></a>
-<span class="sourceLineNo">124</span>   public static class Readable extends JsonSerializer {<a name="line.124"></a>
-<span class="sourceLineNo">125</span><a name="line.125"></a>
-<span class="sourceLineNo">126</span>      /**<a name="line.126"></a>
-<span class="sourceLineNo">127</span>       * Constructor.<a name="line.127"></a>
-<span class="sourceLineNo">128</span>       *<a name="line.128"></a>
-<span class="sourceLineNo">129</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.129"></a>
-<span class="sourceLineNo">130</span>       */<a name="line.130"></a>
-<span class="sourceLineNo">131</span>      public Readable(PropertyStore propertyStore) {<a name="line.131"></a>
-<span class="sourceLineNo">132</span>         super(<a name="line.132"></a>
-<span class="sourceLineNo">133</span>            propertyStore.copy()<a name="line.133"></a>
-<span class="sourceLineNo">134</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.134"></a>
-<span class="sourceLineNo">135</span>         );<a name="line.135"></a>
-<span class="sourceLineNo">136</span>      }<a name="line.136"></a>
-<span class="sourceLineNo">137</span>   }<a name="line.137"></a>
-<span class="sourceLineNo">138</span><a name="line.138"></a>
-<span class="sourceLineNo">139</span>   /** Default serializer, single quotes, simple mode. */<a name="line.139"></a>
-<span class="sourceLineNo">140</span>   @Produces(value="application/json+simple,text/json+simple",contentType="application/json")<a name="line.140"></a>
-<span class="sourceLineNo">141</span>   public static class Simple extends JsonSerializer {<a name="line.141"></a>
-<span class="sourceLineNo">142</span><a name="line.142"></a>
-<span class="sourceLineNo">143</span>      /**<a name="line.143"></a>
-<span class="sourceLineNo">144</span>       * Constructor.<a name="line.144"></a>
-<span class="sourceLineNo">145</span>       *<a name="line.145"></a>
-<span class="sourceLineNo">146</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.146"></a>
-<span class="sourceLineNo">147</span>       */<a name="line.147"></a>
-<span class="sourceLineNo">148</span>      public Simple(PropertyStore propertyStore) {<a name="line.148"></a>
-<span class="sourceLineNo">149</span>         super(<a name="line.149"></a>
-<span class="sourceLineNo">150</span>            propertyStore.copy()<a name="line.150"></a>
-<span class="sourceLineNo">151</span>            .append(JSON_simpleMode, true)<a name="line.151"></a>
-<span class="sourceLineNo">152</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.152"></a>
-<span class="sourceLineNo">153</span>         );<a name="line.153"></a>
-<span class="sourceLineNo">154</span>      }<a name="line.154"></a>
-<span class="sourceLineNo">155</span>   }<a name="line.155"></a>
-<span class="sourceLineNo">156</span><a name="line.156"></a>
-<span class="sourceLineNo">157</span>   /** Default serializer, single quotes, simple mode, with whitespace. */<a name="line.157"></a>
-<span class="sourceLineNo">158</span>   public static class SimpleReadable extends JsonSerializer {<a name="line.158"></a>
-<span class="sourceLineNo">159</span><a name="line.159"></a>
-<span class="sourceLineNo">160</span>      /**<a name="line.160"></a>
-<span class="sourceLineNo">161</span>       * Constructor.<a name="line.161"></a>
-<span class="sourceLineNo">162</span>       *<a name="line.162"></a>
-<span class="sourceLineNo">163</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.163"></a>
-<span class="sourceLineNo">164</span>       */<a name="line.164"></a>
-<span class="sourceLineNo">165</span>      public SimpleReadable(PropertyStore propertyStore) {<a name="line.165"></a>
-<span class="sourceLineNo">166</span>         super(<a name="line.166"></a>
-<span class="sourceLineNo">167</span>            propertyStore.copy()<a name="line.167"></a>
-<span class="sourceLineNo">168</span>            .append(JSON_simpleMode, true)<a name="line.168"></a>
-<span class="sourceLineNo">169</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.169"></a>
-<span class="sourceLineNo">170</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.170"></a>
-<span class="sourceLineNo">171</span>         );<a name="line.171"></a>
-<span class="sourceLineNo">172</span>      }<a name="line.172"></a>
-<span class="sourceLineNo">173</span>   }<a name="line.173"></a>
-<span class="sourceLineNo">174</span><a name="line.174"></a>
-<span class="sourceLineNo">175</span>   /**<a name="line.175"></a>
-<span class="sourceLineNo">176</span>    * Default serializer, single quotes, simple mode, with whitespace and recursion detection.<a name="line.176"></a>
-<span class="sourceLineNo">177</span>    * Note that recursion detection introduces a small performance penalty.<a name="line.177"></a>
-<span class="sourceLineNo">178</span>    */<a name="line.178"></a>
-<span class="sourceLineNo">179</span>   public static class SimpleReadableSafe extends JsonSerializer {<a name="line.179"></a>
-<span class="sourceLineNo">180</span><a name="line.180"></a>
-<span class="sourceLineNo">181</span>      /**<a name="line.181"></a>
-<span class="sourceLineNo">182</span>       * Constructor.<a name="line.182"></a>
-<span class="sourceLineNo">183</span>       *<a name="line.183"></a>
-<span class="sourceLineNo">184</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.184"></a>
-<span class="sourceLineNo">185</span>       */<a name="line.185"></a>
-<span class="sourceLineNo">186</span>      public SimpleReadableSafe(PropertyStore propertyStore) {<a name="line.186"></a>
-<span class="sourceLineNo">187</span>         super(<a name="line.187"></a>
-<span class="sourceLineNo">188</span>            propertyStore.copy()<a name="line.188"></a>
-<span class="sourceLineNo">189</span>            .append(JSON_simpleMode, true)<a name="line.189"></a>
-<span class="sourceLineNo">190</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.190"></a>
-<span class="sourceLineNo">191</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.191"></a>
-<span class="sourceLineNo">192</span>            .append(SERIALIZER_detectRecursions, true)<a name="line.192"></a>
-<span class="sourceLineNo">193</span>         );<a name="line.193"></a>
-<span class="sourceLineNo">194</span>      }<a name="line.194"></a>
-<span class="sourceLineNo">195</span>   }<a name="line.195"></a>
+<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
+<span class="sourceLineNo">021</span><a name="line.21"></a>
+<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * Serializes POJO models to JSON.<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;application/json, text/json&lt;/code&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * &lt;p&gt;<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/json&lt;/code&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> *<a name="line.30"></a>
+<span class="sourceLineNo">031</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.31"></a>
+<span class="sourceLineNo">032</span> *<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * The conversion is as follows...<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * &lt;ul class='spaced-list'&gt;<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *    &lt;li&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *       Maps (e.g. {@link HashMap HashMaps}, {@link TreeMap TreeMaps}) are converted to JSON objects.<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;<a name="line.37"></a>
+<span class="sourceLineNo">038</span> *       Collections (e.g. {@link HashSet HashSets}, {@link LinkedList LinkedLists}) and Java arrays are converted to<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *       JSON arrays.<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *    &lt;li&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span> *       {@link String Strings} are converted to JSON strings.<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *    &lt;li&gt;<a name="line.42"></a>
+<span class="sourceLineNo">043</span> *       {@link Number Numbers} (e.g. {@link Integer}, {@link Long}, {@link Double}) are converted to JSON numbers.<a name="line.43"></a>
+<span class="sourceLineNo">044</span> *    &lt;li&gt;<a name="line.44"></a>
+<span class="sourceLineNo">045</span> *       {@link Boolean Booleans} are converted to JSON booleans.<a name="line.45"></a>
+<span class="sourceLineNo">046</span> *    &lt;li&gt;<a name="line.46"></a>
+<span class="sourceLineNo">047</span> *       {@code nulls} are converted to JSON nulls.<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *    &lt;li&gt;<a name="line.48"></a>
+<span class="sourceLineNo">049</span> *       {@code arrays} are converted to JSON arrays.<a name="line.49"></a>
+<span class="sourceLineNo">050</span> *    &lt;li&gt;<a name="line.50"></a>
+<span class="sourceLineNo">051</span> *       {@code beans} are converted to JSON objects.<a name="line.51"></a>
+<span class="sourceLineNo">052</span> * &lt;/ul&gt;<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *<a name="line.53"></a>
+<span class="sourceLineNo">054</span> * &lt;p&gt;<a name="line.54"></a>
+<span class="sourceLineNo">055</span> * The types above are considered "JSON-primitive" object types.<a name="line.55"></a>
+<span class="sourceLineNo">056</span> * Any non-JSON-primitive object types are transformed into JSON-primitive object types through<a name="line.56"></a>
+<span class="sourceLineNo">057</span> * {@link org.apache.juneau.transform.PojoSwap PojoSwaps} associated through the<a name="line.57"></a>
+<span class="sourceLineNo">058</span> * {@link CoreObjectBuilder#pojoSwaps(Class...)} method.<a name="line.58"></a>
+<span class="sourceLineNo">059</span> * Several default transforms are provided for transforming Dates, Enums, Iterators, etc...<a name="line.59"></a>
+<span class="sourceLineNo">060</span> *<a name="line.60"></a>
+<span class="sourceLineNo">061</span> * &lt;p&gt;<a name="line.61"></a>
+<span class="sourceLineNo">062</span> * This serializer provides several serialization options.<a name="line.62"></a>
+<span class="sourceLineNo">063</span> * Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.63"></a>
+<span class="sourceLineNo">064</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.64"></a>
+<span class="sourceLineNo">065</span> *<a name="line.65"></a>
+<span class="sourceLineNo">066</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.66"></a>
+<span class="sourceLineNo">067</span> *<a name="line.67"></a>
+<span class="sourceLineNo">068</span> * This class has the following properties associated with it:<a name="line.68"></a>
+<span class="sourceLineNo">069</span> * &lt;ul&gt;<a name="line.69"></a>
+<span class="sourceLineNo">070</span> *    &lt;li&gt;{@link JsonSerializerContext}<a name="line.70"></a>
+<span class="sourceLineNo">071</span> *    &lt;li&gt;{@link SerializerContext}<a name="line.71"></a>
+<span class="sourceLineNo">072</span> *    &lt;li&gt;{@link BeanContext}<a name="line.72"></a>
+<span class="sourceLineNo">073</span> * &lt;/ul&gt;<a name="line.73"></a>
+<span class="sourceLineNo">074</span> *<a name="line.74"></a>
+<span class="sourceLineNo">075</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.75"></a>
+<span class="sourceLineNo">076</span> *<a name="line.76"></a>
+<span class="sourceLineNo">077</span> * The following direct subclasses are provided for convenience:<a name="line.77"></a>
+<span class="sourceLineNo">078</span> * &lt;ul class='spaced-list'&gt;<a name="line.78"></a>
+<span class="sourceLineNo">079</span> *    &lt;li&gt;<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *       {@link Simple} - Default serializer, single quotes, simple mode.<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *    &lt;li&gt;<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *       {@link SimpleReadable} - Default serializer, single quotes, simple mode, with whitespace.<a name="line.82"></a>
+<span class="sourceLineNo">083</span> * &lt;/ul&gt;<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *<a name="line.84"></a>
+<span class="sourceLineNo">085</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.85"></a>
+<span class="sourceLineNo">086</span> * &lt;p class='bcode'&gt;<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *    &lt;jc&gt;// Use one of the default serializers to serialize a POJO&lt;/jc&gt;<a name="line.87"></a>
+<span class="sourceLineNo">088</span> *    String json = JsonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(someObject);<a name="line.88"></a>
+<span class="sourceLineNo">089</span> *<a name="line.89"></a>
+<span class="sourceLineNo">090</span> *    &lt;jc&gt;// Create a custom serializer for lax syntax using single quote characters&lt;/jc&gt;<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *    JsonSerializer serializer = &lt;jk&gt;new&lt;/jk&gt; JsonSerializerBuilder().simple().sq().build();<a name="line.91"></a>
+<span class="sourceLineNo">092</span> *<a name="line.92"></a>
+<span class="sourceLineNo">093</span> *    &lt;jc&gt;// Clone an existing serializer and modify it to use single-quotes&lt;/jc&gt;<a name="line.93"></a>
+<span class="sourceLineNo">094</span> *    JsonSerializer serializer = JsonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.builder().sq().build();<a name="line.94"></a>
+<span class="sourceLineNo">095</span> *<a name="line.95"></a>
+<span class="sourceLineNo">096</span> *    &lt;jc&gt;// Serialize a POJO to JSON&lt;/jc&gt;<a name="line.96"></a>
+<span class="sourceLineNo">097</span> *    String json = serializer.serialize(someObject);<a name="line.97"></a>
+<span class="sourceLineNo">098</span> * &lt;/p&gt;<a name="line.98"></a>
+<span class="sourceLineNo">099</span> */<a name="line.99"></a>
+<span class="sourceLineNo">100</span>public class JsonSerializer extends WriterSerializer {<a name="line.100"></a>
+<span class="sourceLineNo">101</span><a name="line.101"></a>
+<span class="sourceLineNo">102</span>   /** Default serializer, all default settings.*/<a name="line.102"></a>
+<span class="sourceLineNo">103</span>   public static final JsonSerializer DEFAULT = new JsonSerializer(PropertyStore.create());<a name="line.103"></a>
+<span class="sourceLineNo">104</span><a name="line.104"></a>
+<span class="sourceLineNo">105</span>   /** Default serializer, all default settings.*/<a name="line.105"></a>
+<span class="sourceLineNo">106</span>   public static final JsonSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.106"></a>
+<span class="sourceLineNo">107</span><a name="line.107"></a>
+<span class="sourceLineNo">108</span>   /** Default serializer, single quotes, simple mode. */<a name="line.108"></a>
+<span class="sourceLineNo">109</span>   public static final JsonSerializer DEFAULT_LAX = new Simple(PropertyStore.create());<a name="line.109"></a>
+<span class="sourceLineNo">110</span><a name="line.110"></a>
+<span class="sourceLineNo">111</span>   /** Default serializer, single quotes, simple mode, with whitespace. */<a name="line.111"></a>
+<span class="sourceLineNo">112</span>   public static final JsonSerializer DEFAULT_LAX_READABLE = new SimpleReadable(PropertyStore.create());<a name="line.112"></a>
+<span class="sourceLineNo">113</span><a name="line.113"></a>
+<span class="sourceLineNo">114</span>   /**<a name="line.114"></a>
+<span class="sourceLineNo">115</span>    * Default serializer, single quotes, simple mode, with whitespace and recursion detection.<a name="line.115"></a>
+<span class="sourceLineNo">116</span>    * Note that recursion detection introduces a small performance penalty.<a name="line.116"></a>
+<span class="sourceLineNo">117</span>    */<a name="line.117"></a>
+<span class="sourceLineNo">118</span>   public static final JsonSerializer DEFAULT_LAX_READABLE_SAFE = new SimpleReadableSafe(PropertyStore.create());<a name="line.118"></a>
+<span class="sourceLineNo">119</span><a name="line.119"></a>
+<span class="sourceLineNo">120</span><a name="line.120"></a>
+<span class="sourceLineNo">121</span>   /** Default serializer, with whitespace. */<a name="line.121"></a>
+<span class="sourceLineNo">122</span>   public static class Readable extends JsonSerializer {<a name="line.122"></a>
+<span class="sourceLineNo">123</span><a name="line.123"></a>
+<span class="sourceLineNo">124</span>      /**<a name="line.124"></a>
+<span class="sourceLineNo">125</span>       * Constructor.<a name="line.125"></a>
+<span class="sourceLineNo">126</span>       *<a name="line.126"></a>
+<span class="sourceLineNo">127</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.127"></a>
+<span class="sourceLineNo">128</span>       */<a name="line.128"></a>
+<span class="sourceLineNo">129</span>      public Readable(PropertyStore propertyStore) {<a name="line.129"></a>
+<span class="sourceLineNo">130</span>         super(<a name="line.130"></a>
+<span class="sourceLineNo">131</span>            propertyStore.copy()<a name="line.131"></a>
+<span class="sourceLineNo">132</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.132"></a>
+<span class="sourceLineNo">133</span>         );<a name="line.133"></a>
+<span class="sourceLineNo">134</span>      }<a name="line.134"></a>
+<span class="sourceLineNo">135</span>   }<a name="line.135"></a>
+<span class="sourceLineNo">136</span><a name="line.136"></a>
+<span class="sourceLineNo">137</span>   /** Default serializer, single quotes, simple mode. */<a name="line.137"></a>
+<span class="sourceLineNo">138</span>   public static class Simple extends JsonSerializer {<a name="line.138"></a>
+<span class="sourceLineNo">139</span><a name="line.139"></a>
+<span class="sourceLineNo">140</span>      /**<a name="line.140"></a>
+<span class="sourceLineNo">141</span>       * Constructor.<a name="line.141"></a>
+<span class="sourceLineNo">142</span>       *<a name="line.142"></a>
+<span class="sourceLineNo">143</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.143"></a>
+<span class="sourceLineNo">144</span>       */<a name="line.144"></a>
+<span class="sourceLineNo">145</span>      public Simple(PropertyStore propertyStore) {<a name="line.145"></a>
+<span class="sourceLineNo">146</span>         super(<a name="line.146"></a>
+<span class="sourceLineNo">147</span>            propertyStore.copy()<a name="line.147"></a>
+<span class="sourceLineNo">148</span>               .append(JSON_simpleMode, true)<a name="line.148"></a>
+<span class="sourceLineNo">149</span>               .append(SERIALIZER_quoteChar, '\''),<a name="line.149"></a>
+<span class="sourceLineNo">150</span>            "application/json",<a name="line.150"></a>
+<span class="sourceLineNo">151</span>            "application/json+simple", "text/json+simple"<a name="line.151"></a>
+<span class="sourceLineNo">152</span>         );<a name="line.152"></a>
+<span class="sourceLineNo">153</span>      }<a name="line.153"></a>
+<span class="sourceLineNo">154</span>   }<a name="line.154"></a>
+<span class="sourceLineNo">155</span><a name="line.155"></a>
+<span class="sourceLineNo">156</span>   /** Default serializer, single quotes, simple mode, with whitespace. */<a name="line.156"></a>
+<span class="sourceLineNo">157</span>   public static class SimpleReadable extends JsonSerializer {<a name="line.157"></a>
+<span class="sourceLineNo">158</span><a name="line.158"></a>
+<span class="sourceLineNo">159</span>      /**<a name="line.159"></a>
+<span class="sourceLineNo">160</span>       * Constructor.<a name="line.160"></a>
+<span class="sourceLineNo">161</span>       *<a name="line.161"></a>
+<span class="sourceLineNo">162</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.162"></a>
+<span class="sourceLineNo">163</span>       */<a name="line.163"></a>
+<span class="sourceLineNo">164</span>      public SimpleReadable(PropertyStore propertyStore) {<a name="line.164"></a>
+<span class="sourceLineNo">165</span>         super(<a name="line.165"></a>
+<span class="sourceLineNo">166</span>            propertyStore.copy()<a name="line.166"></a>
+<span class="sourceLineNo">167</span>            .append(JSON_simpleMode, true)<a name="line.167"></a>
+<span class="sourceLineNo">168</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.168"></a>
+<span class="sourceLineNo">169</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.169"></a>
+<span class="sourceLineNo">170</span>         );<a name="line.170"></a>
+<span class="sourceLineNo">171</span>      }<a name="line.171"></a>
+<span class="sourceLineNo">172</span>   }<a name="line.172"></a>
+<span class="sourceLineNo">173</span><a name="line.173"></a>
+<span class="sourceLineNo">174</span>   /**<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    * Default serializer, single quotes, simple mode, with whitespace and recursion detection.<a name="line.175"></a>
+<span class="sourceLineNo">176</span>    * Note that recursion detection introduces a small performance penalty.<a name="line.176"></a>
+<span class="sourceLineNo">177</span>    */<a name="line.177"></a>
+<span class="sourceLineNo">178</span>   public static class SimpleReadableSafe extends JsonSerializer {<a name="line.178"></a>
+<span class="sourceLineNo">179</span><a name="line.179"></a>
+<span class="sourceLineNo">180</span>      /**<a name="line.180"></a>
+<span class="sourceLineNo">181</span>       * Constructor.<a name="line.181"></a>
+<span class="sourceLineNo">182</span>       *<a name="line.182"></a>
+<span class="sourceLineNo">183</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.183"></a>
+<span class="sourceLineNo">184</span>       */<a name="line.184"></a>
+<span class="sourceLineNo">185</span>      public SimpleReadableSafe(PropertyStore propertyStore) {<a name="line.185"></a>
+<span class="sourceLineNo">186</span>         super(<a name="line.186"></a>
+<span class="sourceLineNo">187</span>            propertyStore.copy()<a name="line.187"></a>
+<span class="sourceLineNo">188</span>            .append(JSON_simpleMode, true)<a name="line.188"></a>
+<span class="sourceLineNo">189</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.189"></a>
+<span class="sourceLineNo">190</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.190"></a>
+<span class="sourceLineNo">191</span>            .append(SERIALIZER_detectRecursions, true)<a name="line.191"></a>
+<span class="sourceLineNo">192</span>         );<a name="line.192"></a>
+<span class="sourceLineNo">193</span>      }<a name="line.193"></a>
+<span class="sourceLineNo">194</span>   }<a name="line.194"></a>
+<span class="sourceLineNo">195</span><a name="line.195"></a>
 <span class="sourceLineNo">196</span><a name="line.196"></a>
-<span class="sourceLineNo">197</span><a name="line.197"></a>
-<span class="sourceLineNo">198</span>   final JsonSerializerContext ctx;<a name="line.198"></a>
-<span class="sourceLineNo">199</span>   private volatile JsonSchemaSerializer schemaSerializer;<a name="line.199"></a>
-<span class="sourceLineNo">200</span><a name="line.200"></a>
-<span class="sourceLineNo">201</span>   /**<a name="line.201"></a>
-<span class="sourceLineNo">202</span>    * Constructor.<a name="line.202"></a>
-<span class="sourceLineNo">203</span>    *<a name="line.203"></a>
-<span class="sourceLineNo">204</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.204"></a>
+<span class="sourceLineNo">197</span>   final JsonSerializerContext ctx;<a name="line.197"></a>
+<span class="sourceLineNo">198</span>   private volatile JsonSchemaSerializer schemaSerializer;<a name="line.198"></a>
+<span class="sourceLineNo">199</span><a name="line.199"></a>
+<span class="sourceLineNo">200</span>   /**<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    * Constructor.<a name="line.201"></a>
+<span class="sourceLineNo">202</span>    *<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    * @param propertyStore<a name="line.203"></a>
+<span class="sourceLineNo">204</span>    *    The property store containing all the settings for this object.<a name="line.204"></a>
 <span class="sourceLineNo">205</span>    */<a name="line.205"></a>
 <span class="sourceLineNo">206</span>   public JsonSerializer(PropertyStore propertyStore) {<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      super(propertyStore);<a name="line.207"></a>
-<span class="sourceLineNo">208</span>      this.ctx = createContext(JsonSerializerContext.class);<a name="line.208"></a>
-<span class="sourceLineNo">209</span>   }<a name="line.209"></a>
-<span class="sourceLineNo">210</span><a name="line.210"></a>
-<span class="sourceLineNo">211</span>   @Override /* CoreObject */<a name="line.211"></a>
-<span class="sourceLineNo">212</span>   public JsonSerializerBuilder builder() {<a name="line.212"></a>
-<span class="sourceLineNo">213</span>      return new JsonSerializerBuilder(propertyStore);<a name="line.213"></a>
-<span class="sourceLineNo">214</span>   }<a name="line.214"></a>
-<span class="sourceLineNo">215</span><a name="line.215"></a>
-<span class="sourceLineNo">216</span>   /**<a name="line.216"></a>
-<span class="sourceLineNo">217</span>    * Returns the schema serializer based on the settings of this serializer.<a name="line.217"></a>
-<span class="sourceLineNo">218</span>    *<a name="line.218"></a>
-<span class="sourceLineNo">219</span>    * @return The schema serializer.<a name="line.219"></a>
-<span class="sourceLineNo">220</span>    */<a name="line.220"></a>
-<span class="sourceLineNo">221</span>   public JsonSchemaSerializer getSchemaSerializer() {<a name="line.221"></a>
-<span class="sourceLineNo">222</span>      if (schemaSerializer == null)<a name="line.222"></a>
-<span class="sourceLineNo">223</span>         schemaSerializer = new JsonSchemaSerializer(propertyStore);<a name="line.223"></a>
-<span class="sourceLineNo">224</span>      return schemaSerializer;<a name="line.224"></a>
-<span class="sourceLineNo">225</span>   }<a name="line.225"></a>
-<span class="sourceLineNo">226</span><a name="line.226"></a>
-<span class="sourceLineNo">227</span>   //--------------------------------------------------------------------------------<a name="line.227"></a>
-<span class="sourceLineNo">228</span>   // Entry point methods<a name="line.228"></a>
-<span class="sourceLineNo">229</span>   //--------------------------------------------------------------------------------<a name="line.229"></a>
-<span class="sourceLineNo">230</span><a name="line.230"></a>
-<span class="sourceLineNo">231</span>   @Override /* Serializer */<a name="line.231"></a>
-<span class="sourceLineNo">232</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.232"></a>
-<span class="sourceLineNo">233</span>      return new JsonSerializerSession(ctx, args);<a name="line.233"></a>
+<span class="sourceLineNo">207</span>      this(propertyStore, "application/json", "application/json", "text/json");<a name="line.207"></a>
+<span class="sourceLineNo">208</span>   }<a name="line.208"></a>
+<span class="sourceLineNo">209</span><a name="line.209"></a>
+<span class="sourceLineNo">210</span>   /**<a name="line.210"></a>
+<span class="sourceLineNo">211</span>    * Constructor.<a name="line.211"></a>
+<span class="sourceLineNo">212</span>    *<a name="line.212"></a>
+<span class="sourceLineNo">213</span>    * @param propertyStore<a name="line.213"></a>
+<span class="sourceLineNo">214</span>    *    The property store containing all the settings for this object.<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    * @param produces<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    *    The media type that this serializer produces.<a name="line.216"></a>
+<span class="sourceLineNo">217</span>    * @param accept<a name="line.217"></a>
+<span class="sourceLineNo">218</span>    *    The accept media types that the serializer can handle.<a name="line.218"></a>
+<span class="sourceLineNo">219</span>    *    &lt;p&gt;<a name="line.219"></a>
+<span class="sourceLineNo">220</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.220"></a>
+<span class="sourceLineNo">221</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.221"></a>
+<span class="sourceLineNo">222</span>    *    &lt;p&gt;<a name="line.222"></a>
+<span class="sourceLineNo">223</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.223"></a>
+<span class="sourceLineNo">224</span>    *    &lt;p&gt;<a name="line.224"></a>
+<span class="sourceLineNo">225</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.225"></a>
+<span class="sourceLineNo">226</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.226"></a>
+<span class="sourceLineNo">227</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.227"></a>
+<span class="sourceLineNo">228</span>    *    &lt;br&gt;...or...<a name="line.228"></a>
+<span class="sourceLineNo">229</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.229"></a>
+<span class="sourceLineNo">230</span>    */<a name="line.230"></a>
+<span class="sourceLineNo">231</span>   public JsonSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.231"></a>
+<span class="sourceLineNo">232</span>      super(propertyStore, produces, accept);<a name="line.232"></a>
+<span class="sourceLineNo">233</span>      this.ctx = createContext(JsonSerializerContext.class);<a name="line.233"></a>
 <span class="sourceLineNo">234</span>   }<a name="line.234"></a>
-<span class="sourceLineNo">235</span>}<a name="line.235"></a>
+<span class="sourceLineNo">235</span><a name="line.235"></a>
+<span class="sourceLineNo">236</span>   @Override /* CoreObject */<a name="line.236"></a>
+<span class="sourceLineNo">237</span>   public JsonSerializerBuilder builder() {<a name="line.237"></a>
+<span class="sourceLineNo">238</span>      return new JsonSerializerBuilder(propertyStore);<a name="line.238"></a>
+<span class="sourceLineNo">239</span>   }<a name="line.239"></a>
+<span class="sourceLineNo">240</span><a name="line.240"></a>
+<span class="sourceLineNo">241</span>   /**<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    * Returns the schema serializer based on the settings of this serializer.<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    *<a name="line.243"></a>
+<span class="sourceLineNo">244</span>    * @return The schema serializer.<a name="line.244"></a>
+<span class="sourceLineNo">245</span>    */<a name="line.245"></a>
+<span class="sourceLineNo">246</span>   public JsonSchemaSerializer getSchemaSerializer() {<a name="line.246"></a>
+<span class="sourceLineNo">247</span>      if (schemaSerializer == null)<a name="line.247"></a>
+<span class="sourceLineNo">248</span>         schemaSerializer = new JsonSchemaSerializer(propertyStore);<a name="line.248"></a>
+<span class="sourceLineNo">249</span>      return schemaSerializer;<a name="line.249"></a>
+<span class="sourceLineNo">250</span>   }<a name="line.250"></a>
+<span class="sourceLineNo">251</span><a name="line.251"></a>
+<span class="sourceLineNo">252</span>   //--------------------------------------------------------------------------------<a name="line.252"></a>
+<span class="sourceLineNo">253</span>   // Entry point methods<a name="line.253"></a>
+<span class="sourceLineNo">254</span>   //--------------------------------------------------------------------------------<a name="line.254"></a>
+<span class="sourceLineNo">255</span><a name="line.255"></a>
+<span class="sourceLineNo">256</span>   @Override /* Serializer */<a name="line.256"></a>
+<span class="sourceLineNo">257</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.257"></a>
+<span class="sourceLineNo">258</span>      return new JsonSerializerSession(ctx, args);<a name="line.258"></a>
+<span class="sourceLineNo">259</span>   }<a name="line.259"></a>
+<span class="sourceLineNo">260</span>}<a name="line.260"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializerSession.html b/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializerSession.html
index 9347fc7..d6f6d8a 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializerSession.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializerSession.html
@@ -25,35 +25,35 @@
 <span class="sourceLineNo">017</span>import java.util.*;<a name="line.17"></a>
 <span class="sourceLineNo">018</span><a name="line.18"></a>
 <span class="sourceLineNo">019</span>import org.apache.juneau.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span>import org.apache.juneau.transform.*;<a name="line.21"></a>
-<span class="sourceLineNo">022</span><a name="line.22"></a>
-<span class="sourceLineNo">023</span>/**<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * Session object that lives for the duration of a single use of {@link JsonSerializer}.<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * &lt;p&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> * This class is NOT thread safe.<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * It is typically discarded after one-time use although it can be reused within the same thread.<a name="line.28"></a>
-<span class="sourceLineNo">029</span> */<a name="line.29"></a>
-<span class="sourceLineNo">030</span>public class JsonSerializerSession extends WriterSerializerSession {<a name="line.30"></a>
-<span class="sourceLineNo">031</span><a name="line.31"></a>
-<span class="sourceLineNo">032</span>   private final boolean<a name="line.32"></a>
-<span class="sourceLineNo">033</span>      simpleMode,<a name="line.33"></a>
-<span class="sourceLineNo">034</span>      escapeSolidus,<a name="line.34"></a>
-<span class="sourceLineNo">035</span>      addBeanTypeProperties;<a name="line.35"></a>
-<span class="sourceLineNo">036</span><a name="line.36"></a>
-<span class="sourceLineNo">037</span>   /**<a name="line.37"></a>
-<span class="sourceLineNo">038</span>    * Create a new session using properties specified in the context.<a name="line.38"></a>
-<span class="sourceLineNo">039</span>    *<a name="line.39"></a>
-<span class="sourceLineNo">040</span>    * @param ctx<a name="line.40"></a>
-<span class="sourceLineNo">041</span>    *    The context creating this session object.<a name="line.41"></a>
-<span class="sourceLineNo">042</span>    *    The context contains all the configuration settings for this object.<a name="line.42"></a>
-<span class="sourceLineNo">043</span>    * @param args<a name="line.43"></a>
-<span class="sourceLineNo">044</span>    *    Runtime arguments.<a name="line.44"></a>
-<span class="sourceLineNo">045</span>    *    These specify session-level information such as locale and URI context.<a name="line.45"></a>
-<span class="sourceLineNo">046</span>    *    It also include session-level properties that override the properties defined on the bean and<a name="line.46"></a>
-<span class="sourceLineNo">047</span>    *    serializer contexts.<a name="line.47"></a>
-<span class="sourceLineNo">048</span>    *    &lt;br&gt;If &lt;jk&gt;null&lt;/jk&gt;, defaults to {@link SerializerSessionArgs#DEFAULT}.<a name="line.48"></a>
+<span class="sourceLineNo">020</span>import org.apache.juneau.internal.*;<a name="line.20"></a>
+<span class="sourceLineNo">021</span>import org.apache.juneau.serializer.*;<a name="line.21"></a>
+<span class="sourceLineNo">022</span>import org.apache.juneau.transform.*;<a name="line.22"></a>
+<span class="sourceLineNo">023</span><a name="line.23"></a>
+<span class="sourceLineNo">024</span>/**<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * Session object that lives for the duration of a single use of {@link JsonSerializer}.<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * &lt;p&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * This class is NOT thread safe.<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * It is typically discarded after one-time use although it can be reused within the same thread.<a name="line.29"></a>
+<span class="sourceLineNo">030</span> */<a name="line.30"></a>
+<span class="sourceLineNo">031</span>public class JsonSerializerSession extends WriterSerializerSession {<a name="line.31"></a>
+<span class="sourceLineNo">032</span><a name="line.32"></a>
+<span class="sourceLineNo">033</span>   private final boolean<a name="line.33"></a>
+<span class="sourceLineNo">034</span>      simpleMode,<a name="line.34"></a>
+<span class="sourceLineNo">035</span>      escapeSolidus,<a name="line.35"></a>
+<span class="sourceLineNo">036</span>      addBeanTypeProperties;<a name="line.36"></a>
+<span class="sourceLineNo">037</span><a name="line.37"></a>
+<span class="sourceLineNo">038</span>   /**<a name="line.38"></a>
+<span class="sourceLineNo">039</span>    * Create a new session using properties specified in the context.<a name="line.39"></a>
+<span class="sourceLineNo">040</span>    *<a name="line.40"></a>
+<span class="sourceLineNo">041</span>    * @param ctx<a name="line.41"></a>
+<span class="sourceLineNo">042</span>    *    The context creating this session object.<a name="line.42"></a>
+<span class="sourceLineNo">043</span>    *    The context contains all the configuration settings for this object.<a name="line.43"></a>
+<span class="sourceLineNo">044</span>    * @param args<a name="line.44"></a>
+<span class="sourceLineNo">045</span>    *    Runtime arguments.<a name="line.45"></a>
+<span class="sourceLineNo">046</span>    *    These specify session-level information such as locale and URI context.<a name="line.46"></a>
+<span class="sourceLineNo">047</span>    *    It also include session-level properties that override the properties defined on the bean and<a name="line.47"></a>
+<span class="sourceLineNo">048</span>    *    serializer contexts.<a name="line.48"></a>
 <span class="sourceLineNo">049</span>    */<a name="line.49"></a>
 <span class="sourceLineNo">050</span>   protected JsonSerializerSession(JsonSerializerContext ctx, SerializerSessionArgs args) {<a name="line.50"></a>
 <span class="sourceLineNo">051</span>      super(ctx, args);<a name="line.51"></a>
@@ -143,128 +143,131 @@
 <span class="sourceLineNo">135</span>      else if (sType.isArray()) {<a name="line.135"></a>
 <span class="sourceLineNo">136</span>         serializeCollection(out, toList(sType.getInnerClass(), o), eType);<a name="line.136"></a>
 <span class="sourceLineNo">137</span>      }<a name="line.137"></a>
-<span class="sourceLineNo">138</span>      else<a name="line.138"></a>
-<span class="sourceLineNo">139</span>         out.stringValue(toString(o));<a name="line.139"></a>
-<span class="sourceLineNo">140</span><a name="line.140"></a>
-<span class="sourceLineNo">141</span>      if (wrapperAttr != null) {<a name="line.141"></a>
-<span class="sourceLineNo">142</span>         indent--;<a name="line.142"></a>
-<span class="sourceLineNo">143</span>         out.cre(indent-1).append('}');<a name="line.143"></a>
-<span class="sourceLineNo">144</span>      }<a name="line.144"></a>
-<span class="sourceLineNo">145</span><a name="line.145"></a>
-<span class="sourceLineNo">146</span>      if (! isRecursion)<a name="line.146"></a>
-<span class="sourceLineNo">147</span>         pop();<a name="line.147"></a>
-<span class="sourceLineNo">148</span>      return out;<a name="line.148"></a>
-<span class="sourceLineNo">149</span>   }<a name="line.149"></a>
-<span class="sourceLineNo">150</span><a name="line.150"></a>
-<span class="sourceLineNo">151</span>   @SuppressWarnings({ "rawtypes", "unchecked" })<a name="line.151"></a>
-<span class="sourceLineNo">152</span>   private SerializerWriter serializeMap(JsonWriter out, Map m, ClassMeta&lt;?&gt; type) throws Exception {<a name="line.152"></a>
+<span class="sourceLineNo">138</span>      else if (sType.isReader() || sType.isInputStream()) {<a name="line.138"></a>
+<span class="sourceLineNo">139</span>         IOUtils.pipe(o, out);<a name="line.139"></a>
+<span class="sourceLineNo">140</span>      }<a name="line.140"></a>
+<span class="sourceLineNo">141</span>      else<a name="line.141"></a>
+<span class="sourceLineNo">142</span>         out.stringValue(toString(o));<a name="line.142"></a>
+<span class="sourceLineNo">143</span><a name="line.143"></a>
+<span class="sourceLineNo">144</span>      if (wrapperAttr != null) {<a name="line.144"></a>
+<span class="sourceLineNo">145</span>         indent--;<a name="line.145"></a>
+<span class="sourceLineNo">146</span>         out.cre(indent-1).append('}');<a name="line.146"></a>
+<span class="sourceLineNo">147</span>      }<a name="line.147"></a>
+<span class="sourceLineNo">148</span><a name="line.148"></a>
+<span class="sourceLineNo">149</span>      if (! isRecursion)<a name="line.149"></a>
+<span class="sourceLineNo">150</span>         pop();<a name="line.150"></a>
+<span class="sourceLineNo">151</span>      return out;<a name="line.151"></a>
+<span class="sourceLineNo">152</span>   }<a name="line.152"></a>
 <span class="sourceLineNo">153</span><a name="line.153"></a>
-<span class="sourceLineNo">154</span>      ClassMeta&lt;?&gt; keyType = type.getKeyType(), valueType = type.getValueType();<a name="line.154"></a>
-<span class="sourceLineNo">155</span><a name="line.155"></a>
-<span class="sourceLineNo">156</span>      m = sort(m);<a name="line.156"></a>
-<span class="sourceLineNo">157</span><a name="line.157"></a>
-<span class="sourceLineNo">158</span>      int i = indent;<a name="line.158"></a>
-<span class="sourceLineNo">159</span>      out.append('{');<a name="line.159"></a>
+<span class="sourceLineNo">154</span>   @SuppressWarnings({ "rawtypes", "unchecked" })<a name="line.154"></a>
+<span class="sourceLineNo">155</span>   private SerializerWriter serializeMap(JsonWriter out, Map m, ClassMeta&lt;?&gt; type) throws Exception {<a name="line.155"></a>
+<span class="sourceLineNo">156</span><a name="line.156"></a>
+<span class="sourceLineNo">157</span>      ClassMeta&lt;?&gt; keyType = type.getKeyType(), valueType = type.getValueType();<a name="line.157"></a>
+<span class="sourceLineNo">158</span><a name="line.158"></a>
+<span class="sourceLineNo">159</span>      m = sort(m);<a name="line.159"></a>
 <span class="sourceLineNo">160</span><a name="line.160"></a>
-<span class="sourceLineNo">161</span>      Iterator mapEntries = m.entrySet().iterator();<a name="line.161"></a>
-<span class="sourceLineNo">162</span><a name="line.162"></a>
-<span class="sourceLineNo">163</span>      while (mapEntries.hasNext()) {<a name="line.163"></a>
-<span class="sourceLineNo">164</span>         Map.Entry e = (Map.Entry) mapEntries.next();<a name="line.164"></a>
-<span class="sourceLineNo">165</span>         Object value = e.getValue();<a name="line.165"></a>
-<span class="sourceLineNo">166</span><a name="line.166"></a>
-<span class="sourceLineNo">167</span>         Object key = generalize(e.getKey(), keyType);<a name="line.167"></a>
-<span class="sourceLineNo">168</span><a name="line.168"></a>
-<span class="sourceLineNo">169</span>         out.cr(i).attr(toString(key)).append(':').s(i);<a name="line.169"></a>
-<span class="sourceLineNo">170</span><a name="line.170"></a>
-<span class="sourceLineNo">171</span>         serializeAnything(out, value, valueType, (key == null ? null : toString(key)), null);<a name="line.171"></a>
-<span class="sourceLineNo">172</span><a name="line.172"></a>
-<span class="sourceLineNo">173</span>         if (mapEntries.hasNext())<a name="line.173"></a>
-<span class="sourceLineNo">174</span>            out.append(',').smi(i);<a name="line.174"></a>
-<span class="sourceLineNo">175</span>      }<a name="line.175"></a>
-<span class="sourceLineNo">176</span><a name="line.176"></a>
-<span class="sourceLineNo">177</span>      out.cre(i-1).append('}');<a name="line.177"></a>
-<span class="sourceLineNo">178</span><a name="line.178"></a>
-<span class="sourceLineNo">179</span>      return out;<a name="line.179"></a>
-<span class="sourceLineNo">180</span>   }<a name="line.180"></a>
+<span class="sourceLineNo">161</span>      int i = indent;<a name="line.161"></a>
+<span class="sourceLineNo">162</span>      out.append('{');<a name="line.162"></a>
+<span class="sourceLineNo">163</span><a name="line.163"></a>
+<span class="sourceLineNo">164</span>      Iterator mapEntries = m.entrySet().iterator();<a name="line.164"></a>
+<span class="sourceLineNo">165</span><a name="line.165"></a>
+<span class="sourceLineNo">166</span>      while (mapEntries.hasNext()) {<a name="line.166"></a>
+<span class="sourceLineNo">167</span>         Map.Entry e = (Map.Entry) mapEntries.next();<a name="line.167"></a>
+<span class="sourceLineNo">168</span>         Object value = e.getValue();<a name="line.168"></a>
+<span class="sourceLineNo">169</span><a name="line.169"></a>
+<span class="sourceLineNo">170</span>         Object key = generalize(e.getKey(), keyType);<a name="line.170"></a>
+<span class="sourceLineNo">171</span><a name="line.171"></a>
+<span class="sourceLineNo">172</span>         out.cr(i).attr(toString(key)).append(':').s(i);<a name="line.172"></a>
+<span class="sourceLineNo">173</span><a name="line.173"></a>
+<span class="sourceLineNo">174</span>         serializeAnything(out, value, valueType, (key == null ? null : toString(key)), null);<a name="line.174"></a>
+<span class="sourceLineNo">175</span><a name="line.175"></a>
+<span class="sourceLineNo">176</span>         if (mapEntries.hasNext())<a name="line.176"></a>
+<span class="sourceLineNo">177</span>            out.append(',').smi(i);<a name="line.177"></a>
+<span class="sourceLineNo">178</span>      }<a name="line.178"></a>
+<span class="sourceLineNo">179</span><a name="line.179"></a>
+<span class="sourceLineNo">180</span>      out.cre(i-1).append('}');<a name="line.180"></a>
 <span class="sourceLineNo">181</span><a name="line.181"></a>
-<span class="sourceLineNo">182</span>   private SerializerWriter serializeBeanMap(JsonWriter out, BeanMap&lt;?&gt; m, String typeName) throws Exception {<a name="line.182"></a>
-<span class="sourceLineNo">183</span>      int i = indent;<a name="line.183"></a>
-<span class="sourceLineNo">184</span>      out.append('{');<a name="line.184"></a>
-<span class="sourceLineNo">185</span><a name="line.185"></a>
-<span class="sourceLineNo">186</span>      boolean addComma = false;<a name="line.186"></a>
-<span class="sourceLineNo">187</span>      for (BeanPropertyValue p : m.getValues(isTrimNulls(), typeName != null ? createBeanTypeNameProperty(m, typeName) : null)) {<a name="line.187"></a>
-<span class="sourceLineNo">188</span>         BeanPropertyMeta pMeta = p.getMeta();<a name="line.188"></a>
-<span class="sourceLineNo">189</span>         ClassMeta&lt;?&gt; cMeta = p.getClassMeta();<a name="line.189"></a>
-<span class="sourceLineNo">190</span>         String key = p.getName();<a name="line.190"></a>
-<span class="sourceLineNo">191</span>         Object value = p.getValue();<a name="line.191"></a>
-<span class="sourceLineNo">192</span>         Throwable t = p.getThrown();<a name="line.192"></a>
-<span class="sourceLineNo">193</span>         if (t != null)<a name="line.193"></a>
-<span class="sourceLineNo">194</span>            onBeanGetterException(pMeta, t);<a name="line.194"></a>
-<span class="sourceLineNo">195</span><a name="line.195"></a>
-<span class="sourceLineNo">196</span>         if (canIgnoreValue(cMeta, key, value))<a name="line.196"></a>
-<span class="sourceLineNo">197</span>            continue;<a name="line.197"></a>
+<span class="sourceLineNo">182</span>      return out;<a name="line.182"></a>
+<span class="sourceLineNo">183</span>   }<a name="line.183"></a>
+<span class="sourceLineNo">184</span><a name="line.184"></a>
+<span class="sourceLineNo">185</span>   private SerializerWriter serializeBeanMap(JsonWriter out, BeanMap&lt;?&gt; m, String typeName) throws Exception {<a name="line.185"></a>
+<span class="sourceLineNo">186</span>      int i = indent;<a name="line.186"></a>
+<span class="sourceLineNo">187</span>      out.append('{');<a name="line.187"></a>
+<span class="sourceLineNo">188</span><a name="line.188"></a>
+<span class="sourceLineNo">189</span>      boolean addComma = false;<a name="line.189"></a>
+<span class="sourceLineNo">190</span>      for (BeanPropertyValue p : m.getValues(isTrimNulls(), typeName != null ? createBeanTypeNameProperty(m, typeName) : null)) {<a name="line.190"></a>
+<span class="sourceLineNo">191</span>         BeanPropertyMeta pMeta = p.getMeta();<a name="line.191"></a>
+<span class="sourceLineNo">192</span>         ClassMeta&lt;?&gt; cMeta = p.getClassMeta();<a name="line.192"></a>
+<span class="sourceLineNo">193</span>         String key = p.getName();<a name="line.193"></a>
+<span class="sourceLineNo">194</span>         Object value = p.getValue();<a name="line.194"></a>
+<span class="sourceLineNo">195</span>         Throwable t = p.getThrown();<a name="line.195"></a>
+<span class="sourceLineNo">196</span>         if (t != null)<a name="line.196"></a>
+<span class="sourceLineNo">197</span>            onBeanGetterException(pMeta, t);<a name="line.197"></a>
 <span class="sourceLineNo">198</span><a name="line.198"></a>
-<span class="sourceLineNo">199</span>         if (addComma)<a name="line.199"></a>
-<span class="sourceLineNo">200</span>            out.append(',').smi(i);<a name="line.200"></a>
+<span class="sourceLineNo">199</span>         if (canIgnoreValue(cMeta, key, value))<a name="line.199"></a>
+<span class="sourceLineNo">200</span>            continue;<a name="line.200"></a>
 <span class="sourceLineNo">201</span><a name="line.201"></a>
-<span class="sourceLineNo">202</span>         out.cr(i).attr(key).append(':').s(i);<a name="line.202"></a>
-<span class="sourceLineNo">203</span><a name="line.203"></a>
-<span class="sourceLineNo">204</span>         serializeAnything(out, value, cMeta, key, pMeta);<a name="line.204"></a>
-<span class="sourceLineNo">205</span><a name="line.205"></a>
-<span class="sourceLineNo">206</span>         addComma = true;<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      }<a name="line.207"></a>
-<span class="sourceLineNo">208</span>      out.cre(i-1).append('}');<a name="line.208"></a>
-<span class="sourceLineNo">209</span>      return out;<a name="line.209"></a>
-<span class="sourceLineNo">210</span>   }<a name="line.210"></a>
-<span class="sourceLineNo">211</span><a name="line.211"></a>
-<span class="sourceLineNo">212</span>   @SuppressWarnings({"rawtypes", "unchecked"})<a name="line.212"></a>
-<span class="sourceLineNo">213</span>   private SerializerWriter serializeCollection(JsonWriter out, Collection c, ClassMeta&lt;?&gt; type) throws Exception {<a name="line.213"></a>
+<span class="sourceLineNo">202</span>         if (addComma)<a name="line.202"></a>
+<span class="sourceLineNo">203</span>            out.append(',').smi(i);<a name="line.203"></a>
+<span class="sourceLineNo">204</span><a name="line.204"></a>
+<span class="sourceLineNo">205</span>         out.cr(i).attr(key).append(':').s(i);<a name="line.205"></a>
+<span class="sourceLineNo">206</span><a name="line.206"></a>
+<span class="sourceLineNo">207</span>         serializeAnything(out, value, cMeta, key, pMeta);<a name="line.207"></a>
+<span class="sourceLineNo">208</span><a name="line.208"></a>
+<span class="sourceLineNo">209</span>         addComma = true;<a name="line.209"></a>
+<span class="sourceLineNo">210</span>      }<a name="line.210"></a>
+<span class="sourceLineNo">211</span>      out.cre(i-1).append('}');<a name="line.211"></a>
+<span class="sourceLineNo">212</span>      return out;<a name="line.212"></a>
+<span class="sourceLineNo">213</span>   }<a name="line.213"></a>
 <span class="sourceLineNo">214</span><a name="line.214"></a>
-<span class="sourceLineNo">215</span>      ClassMeta&lt;?&gt; elementType = type.getElementType();<a name="line.215"></a>
-<span class="sourceLineNo">216</span><a name="line.216"></a>
-<span class="sourceLineNo">217</span>      c = sort(c);<a name="line.217"></a>
-<span class="sourceLineNo">218</span><a name="line.218"></a>
-<span class="sourceLineNo">219</span>      out.append('[');<a name="line.219"></a>
-<span class="sourceLineNo">220</span><a name="line.220"></a>
-<span class="sourceLineNo">221</span>      for (Iterator i = c.iterator(); i.hasNext();) {<a name="line.221"></a>
-<span class="sourceLineNo">222</span>         Object value = i.next();<a name="line.222"></a>
-<span class="sourceLineNo">223</span>         out.cr(indent);<a name="line.223"></a>
-<span class="sourceLineNo">224</span>         serializeAnything(out, value, elementType, "&lt;iterator&gt;", null);<a name="line.224"></a>
-<span class="sourceLineNo">225</span>         if (i.hasNext())<a name="line.225"></a>
-<span class="sourceLineNo">226</span>            out.append(',').smi(indent);<a name="line.226"></a>
-<span class="sourceLineNo">227</span>      }<a name="line.227"></a>
-<span class="sourceLineNo">228</span>      out.cre(indent-1).append(']');<a name="line.228"></a>
-<span class="sourceLineNo">229</span>      return out;<a name="line.229"></a>
-<span class="sourceLineNo">230</span>   }<a name="line.230"></a>
-<span class="sourceLineNo">231</span><a name="line.231"></a>
-<span class="sourceLineNo">232</span><a name="line.232"></a>
-<span class="sourceLineNo">233</span>   /**<a name="line.233"></a>
-<span class="sourceLineNo">234</span>    * Returns the {@link JsonSerializerContext#JSON_addBeanTypeProperties} setting value for this session.<a name="line.234"></a>
-<span class="sourceLineNo">235</span>    *<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    * @return The {@link JsonSerializerContext#JSON_addBeanTypeProperties} setting value for this session.<a name="line.236"></a>
-<span class="sourceLineNo">237</span>    */<a name="line.237"></a>
-<span class="sourceLineNo">238</span>   @Override /* SerializerSession */<a name="line.238"></a>
-<span class="sourceLineNo">239</span>   protected final boolean isAddBeanTypeProperties() {<a name="line.239"></a>
-<span class="sourceLineNo">240</span>      return addBeanTypeProperties;<a name="line.240"></a>
-<span class="sourceLineNo">241</span>   }<a name="line.241"></a>
-<span class="sourceLineNo">242</span><a name="line.242"></a>
-<span class="sourceLineNo">243</span>   /**<a name="line.243"></a>
-<span class="sourceLineNo">244</span>    * Converts the specified output target object to an {@link JsonWriter}.<a name="line.244"></a>
-<span class="sourceLineNo">245</span>    *<a name="line.245"></a>
-<span class="sourceLineNo">246</span>    * @param out The output target object.<a name="line.246"></a>
-<span class="sourceLineNo">247</span>    * @return The output target object wrapped in an {@link JsonWriter}.<a name="line.247"></a>
-<span class="sourceLineNo">248</span>    * @throws Exception<a name="line.248"></a>
-<span class="sourceLineNo">249</span>    */<a name="line.249"></a>
-<span class="sourceLineNo">250</span>   protected final JsonWriter getJsonWriter(SerializerPipe out) throws Exception {<a name="line.250"></a>
-<span class="sourceLineNo">251</span>      Object output = out.getRawOutput();<a name="line.251"></a>
-<span class="sourceLineNo">252</span>      if (output instanceof JsonWriter)<a name="line.252"></a>
-<span class="sourceLineNo">253</span>         return (JsonWriter)output;<a name="line.253"></a>
-<span class="sourceLineNo">254</span>      JsonWriter w = new JsonWriter(out.getWriter(), isUseWhitespace(), getMaxIndent(), escapeSolidus, getQuoteChar(),<a name="line.254"></a>
-<span class="sourceLineNo">255</span>         simpleMode, isTrimStrings(), getUriResolver());<a name="line.255"></a>
-<span class="sourceLineNo">256</span>      out.setWriter(w);<a name="line.256"></a>
-<span class="sourceLineNo">257</span>      return w;<a name="line.257"></a>
-<span class="sourceLineNo">258</span>   }<a name="line.258"></a>
-<span class="sourceLineNo">259</span>}<a name="line.259"></a>
+<span class="sourceLineNo">215</span>   @SuppressWarnings({"rawtypes", "unchecked"})<a name="line.215"></a>
+<span class="sourceLineNo">216</span>   private SerializerWriter serializeCollection(JsonWriter out, Collection c, ClassMeta&lt;?&gt; type) throws Exception {<a name="line.216"></a>
+<span class="sourceLineNo">217</span><a name="line.217"></a>
+<span class="sourceLineNo">218</span>      ClassMeta&lt;?&gt; elementType = type.getElementType();<a name="line.218"></a>
+<span class="sourceLineNo">219</span><a name="line.219"></a>
+<span class="sourceLineNo">220</span>      c = sort(c);<a name="line.220"></a>
+<span class="sourceLineNo">221</span><a name="line.221"></a>
+<span class="sourceLineNo">222</span>      out.append('[');<a name="line.222"></a>
+<span class="sourceLineNo">223</span><a name="line.223"></a>
+<span class="sourceLineNo">224</span>      for (Iterator i = c.iterator(); i.hasNext();) {<a name="line.224"></a>
+<span class="sourceLineNo">225</span>         Object value = i.next();<a name="line.225"></a>
+<span class="sourceLineNo">226</span>         out.cr(indent);<a name="line.226"></a>
+<span class="sourceLineNo">227</span>         serializeAnything(out, value, elementType, "&lt;iterator&gt;", null);<a name="line.227"></a>
+<span class="sourceLineNo">228</span>         if (i.hasNext())<a name="line.228"></a>
+<span class="sourceLineNo">229</span>            out.append(',').smi(indent);<a name="line.229"></a>
+<span class="sourceLineNo">230</span>      }<a name="line.230"></a>
+<span class="sourceLineNo">231</span>      out.cre(indent-1).append(']');<a name="line.231"></a>
+<span class="sourceLineNo">232</span>      return out;<a name="line.232"></a>
+<span class="sourceLineNo">233</span>   }<a name="line.233"></a>
+<span class="sourceLineNo">234</span><a name="line.234"></a>
+<span class="sourceLineNo">235</span><a name="line.235"></a>
+<span class="sourceLineNo">236</span>   /**<a name="line.236"></a>
+<span class="sourceLineNo">237</span>    * Returns the {@link JsonSerializerContext#JSON_addBeanTypeProperties} setting value for this session.<a name="line.237"></a>
+<span class="sourceLineNo">238</span>    *<a name="line.238"></a>
+<span class="sourceLineNo">239</span>    * @return The {@link JsonSerializerContext#JSON_addBeanTypeProperties} setting value for this session.<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    */<a name="line.240"></a>
+<span class="sourceLineNo">241</span>   @Override /* SerializerSession */<a name="line.241"></a>
+<span class="sourceLineNo">242</span>   protected final boolean isAddBeanTypeProperties() {<a name="line.242"></a>
+<span class="sourceLineNo">243</span>      return addBeanTypeProperties;<a name="line.243"></a>
+<span class="sourceLineNo">244</span>   }<a name="line.244"></a>
+<span class="sourceLineNo">245</span><a name="line.245"></a>
+<span class="sourceLineNo">246</span>   /**<a name="line.246"></a>
+<span class="sourceLineNo">247</span>    * Converts the specified output target object to an {@link JsonWriter}.<a name="line.247"></a>
+<span class="sourceLineNo">248</span>    *<a name="line.248"></a>
+<span class="sourceLineNo">249</span>    * @param out The output target object.<a name="line.249"></a>
+<span class="sourceLineNo">250</span>    * @return The output target object wrapped in an {@link JsonWriter}.<a name="line.250"></a>
+<span class="sourceLineNo">251</span>    * @throws Exception<a name="line.251"></a>
+<span class="sourceLineNo">252</span>    */<a name="line.252"></a>
+<span class="sourceLineNo">253</span>   protected final JsonWriter getJsonWriter(SerializerPipe out) throws Exception {<a name="line.253"></a>
+<span class="sourceLineNo">254</span>      Object output = out.getRawOutput();<a name="line.254"></a>
+<span class="sourceLineNo">255</span>      if (output instanceof JsonWriter)<a name="line.255"></a>
+<span class="sourceLineNo">256</span>         return (JsonWriter)output;<a name="line.256"></a>
+<span class="sourceLineNo">257</span>      JsonWriter w = new JsonWriter(out.getWriter(), isUseWhitespace(), getMaxIndent(), escapeSolidus, getQuoteChar(),<a name="line.257"></a>
+<span class="sourceLineNo">258</span>         simpleMode, isTrimStrings(), getUriResolver());<a name="line.258"></a>
+<span class="sourceLineNo">259</span>      out.setWriter(w);<a name="line.259"></a>
+<span class="sourceLineNo">260</span>      return w;<a name="line.260"></a>
+<span class="sourceLineNo">261</span>   }<a name="line.261"></a>
+<span class="sourceLineNo">262</span>}<a name="line.262"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/msgpack/MsgPackParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/msgpack/MsgPackParser.html b/content/site/apidocs/src-html/org/apache/juneau/msgpack/MsgPackParser.html
index e0126e8..b3106a5 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/msgpack/MsgPackParser.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/msgpack/MsgPackParser.html
@@ -21,52 +21,50 @@
 <span class="sourceLineNo">013</span>package org.apache.juneau.msgpack;<a name="line.13"></a>
 <span class="sourceLineNo">014</span><a name="line.14"></a>
 <span class="sourceLineNo">015</span>import org.apache.juneau.*;<a name="line.15"></a>
-<span class="sourceLineNo">016</span>import org.apache.juneau.annotation.*;<a name="line.16"></a>
-<span class="sourceLineNo">017</span>import org.apache.juneau.parser.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span><a name="line.18"></a>
-<span class="sourceLineNo">019</span>/**<a name="line.19"></a>
-<span class="sourceLineNo">020</span> * Parses a MessagePack stream into a POJO model.<a name="line.20"></a>
-<span class="sourceLineNo">021</span> *<a name="line.21"></a>
-<span class="sourceLineNo">022</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.22"></a>
-<span class="sourceLineNo">023</span> *<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * Handles &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;octal/msgpack&lt;/code&gt;<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * This class has the following properties associated with it:<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * &lt;ul&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> *    &lt;li&gt;{@link MsgPackParserContext}<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * &lt;/ul&gt;<a name="line.31"></a>
-<span class="sourceLineNo">032</span> */<a name="line.32"></a>
-<span class="sourceLineNo">033</span>@Consumes("octal/msgpack")<a name="line.33"></a>
-<span class="sourceLineNo">034</span>public class MsgPackParser extends InputStreamParser {<a name="line.34"></a>
-<span class="sourceLineNo">035</span><a name="line.35"></a>
-<span class="sourceLineNo">036</span>   /** Default parser, all default settings.*/<a name="line.36"></a>
-<span class="sourceLineNo">037</span>   public static final MsgPackParser DEFAULT = new MsgPackParser(PropertyStore.create());<a name="line.37"></a>
-<span class="sourceLineNo">038</span><a name="line.38"></a>
-<span class="sourceLineNo">039</span>   <a name="line.39"></a>
-<span class="sourceLineNo">040</span>   private final MsgPackParserContext ctx;<a name="line.40"></a>
-<span class="sourceLineNo">041</span><a name="line.41"></a>
-<span class="sourceLineNo">042</span>   /**<a name="line.42"></a>
-<span class="sourceLineNo">043</span>    * Constructor.<a name="line.43"></a>
-<span class="sourceLineNo">044</span>    *<a name="line.44"></a>
-<span class="sourceLineNo">045</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.45"></a>
-<span class="sourceLineNo">046</span>    */<a name="line.46"></a>
-<span class="sourceLineNo">047</span>   public MsgPackParser(PropertyStore propertyStore) {<a name="line.47"></a>
-<span class="sourceLineNo">048</span>      super(propertyStore);<a name="line.48"></a>
-<span class="sourceLineNo">049</span>      this.ctx = createContext(MsgPackParserContext.class);<a name="line.49"></a>
-<span class="sourceLineNo">050</span>   }<a name="line.50"></a>
-<span class="sourceLineNo">051</span><a name="line.51"></a>
-<span class="sourceLineNo">052</span>   @Override /* CoreObject */<a name="line.52"></a>
-<span class="sourceLineNo">053</span>   public MsgPackParserBuilder builder() {<a name="line.53"></a>
-<span class="sourceLineNo">054</span>      return new MsgPackParserBuilder(propertyStore);<a name="line.54"></a>
-<span class="sourceLineNo">055</span>   }<a name="line.55"></a>
-<span class="sourceLineNo">056</span><a name="line.56"></a>
-<span class="sourceLineNo">057</span>   @Override /* Parser */<a name="line.57"></a>
-<span class="sourceLineNo">058</span>   public MsgPackParserSession createSession(ParserSessionArgs args) {<a name="line.58"></a>
-<span class="sourceLineNo">059</span>      return new MsgPackParserSession(ctx, args);<a name="line.59"></a>
-<span class="sourceLineNo">060</span>   }<a name="line.60"></a>
-<span class="sourceLineNo">061</span>}<a name="line.61"></a>
+<span class="sourceLineNo">016</span>import org.apache.juneau.parser.*;<a name="line.16"></a>
+<span class="sourceLineNo">017</span><a name="line.17"></a>
+<span class="sourceLineNo">018</span>/**<a name="line.18"></a>
+<span class="sourceLineNo">019</span> * Parses a MessagePack stream into a POJO model.<a name="line.19"></a>
+<span class="sourceLineNo">020</span> *<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.21"></a>
+<span class="sourceLineNo">022</span> *<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * Handles &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;octal/msgpack&lt;/code&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * This class has the following properties associated with it:<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * &lt;ul&gt;<a name="line.28"></a>
+<span class="sourceLineNo">029</span> *    &lt;li&gt;{@link MsgPackParserContext}<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * &lt;/ul&gt;<a name="line.30"></a>
+<span class="sourceLineNo">031</span> */<a name="line.31"></a>
+<span class="sourceLineNo">032</span>public class MsgPackParser extends InputStreamParser {<a name="line.32"></a>
+<span class="sourceLineNo">033</span><a name="line.33"></a>
+<span class="sourceLineNo">034</span>   /** Default parser, all default settings.*/<a name="line.34"></a>
+<span class="sourceLineNo">035</span>   public static final MsgPackParser DEFAULT = new MsgPackParser(PropertyStore.create());<a name="line.35"></a>
+<span class="sourceLineNo">036</span><a name="line.36"></a>
+<span class="sourceLineNo">037</span><a name="line.37"></a>
+<span class="sourceLineNo">038</span>   private final MsgPackParserContext ctx;<a name="line.38"></a>
+<span class="sourceLineNo">039</span><a name="line.39"></a>
+<span class="sourceLineNo">040</span>   /**<a name="line.40"></a>
+<span class="sourceLineNo">041</span>    * Constructor.<a name="line.41"></a>
+<span class="sourceLineNo">042</span>    *<a name="line.42"></a>
+<span class="sourceLineNo">043</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.43"></a>
+<span class="sourceLineNo">044</span>    */<a name="line.44"></a>
+<span class="sourceLineNo">045</span>   public MsgPackParser(PropertyStore propertyStore) {<a name="line.45"></a>
+<span class="sourceLineNo">046</span>      super(propertyStore, "octal/msgpack");<a name="line.46"></a>
+<span class="sourceLineNo">047</span>      this.ctx = createContext(MsgPackParserContext.class);<a name="line.47"></a>
+<span class="sourceLineNo">048</span>   }<a name="line.48"></a>
+<span class="sourceLineNo">049</span><a name="line.49"></a>
+<span class="sourceLineNo">050</span>   @Override /* CoreObject */<a name="line.50"></a>
+<span class="sourceLineNo">051</span>   public MsgPackParserBuilder builder() {<a name="line.51"></a>
+<span class="sourceLineNo">052</span>      return new MsgPackParserBuilder(propertyStore);<a name="line.52"></a>
+<span class="sourceLineNo">053</span>   }<a name="line.53"></a>
+<span class="sourceLineNo">054</span><a name="line.54"></a>
+<span class="sourceLineNo">055</span>   @Override /* Parser */<a name="line.55"></a>
+<span class="sourceLineNo">056</span>   public MsgPackParserSession createSession(ParserSessionArgs args) {<a name="line.56"></a>
+<span class="sourceLineNo">057</span>      return new MsgPackParserSession(ctx, args);<a name="line.57"></a>
+<span class="sourceLineNo">058</span>   }<a name="line.58"></a>
+<span class="sourceLineNo">059</span>}<a name="line.59"></a>
 
 
 


[33/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.Xml.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.Xml.html b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.Xml.html
index 035f6e1..e3995fc 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.Xml.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.Xml.html
@@ -24,130 +24,125 @@
 <span class="sourceLineNo">016</span>import static org.apache.juneau.jena.RdfCommonContext.*;<a name="line.16"></a>
 <span class="sourceLineNo">017</span><a name="line.17"></a>
 <span class="sourceLineNo">018</span>import org.apache.juneau.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.annotation.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.parser.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span><a name="line.21"></a>
-<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * Parses RDF into POJOs.<a name="line.23"></a>
-<span class="sourceLineNo">024</span> *<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * <a name="line.26"></a>
-<span class="sourceLineNo">027</span> * Refer to &lt;a class="doclink" href="package-summary.html#ParserConfigurableProperties"&gt;Configurable Properties&lt;/a&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * for the entire list of configurable properties.<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * <a name="line.31"></a>
-<span class="sourceLineNo">032</span> * The following direct subclasses are provided for language-specific parsers:<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;ul class='spaced-list'&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *    &lt;li&gt;<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *       {@link RdfParser.Xml} - RDF/XML and RDF/XML-ABBREV.<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *    &lt;li&gt;<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *       {@link RdfParser.NTriple} - N-TRIPLE.<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *       {@link RdfParser.Turtle} - TURTLE.<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *    &lt;li&gt;<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *       {@link RdfParser.N3} - N3.<a name="line.41"></a>
-<span class="sourceLineNo">042</span> * &lt;/ul&gt;<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *<a name="line.43"></a>
-<span class="sourceLineNo">044</span> * &lt;h5 class='section'&gt;Additional information:&lt;/h5&gt;<a name="line.44"></a>
-<span class="sourceLineNo">045</span> * <a name="line.45"></a>
-<span class="sourceLineNo">046</span> * See &lt;a class="doclink" href="package-summary.html#TOC"&gt;RDF Overview&lt;/a&gt; for an overview of RDF support in Juneau.<a name="line.46"></a>
-<span class="sourceLineNo">047</span> */<a name="line.47"></a>
-<span class="sourceLineNo">048</span>@Consumes(value="text/xml+rdf")<a name="line.48"></a>
-<span class="sourceLineNo">049</span>public class RdfParser extends ReaderParser {<a name="line.49"></a>
-<span class="sourceLineNo">050</span><a name="line.50"></a>
-<span class="sourceLineNo">051</span>   /** Default XML parser, all default settings.*/<a name="line.51"></a>
-<span class="sourceLineNo">052</span>   public static final RdfParser DEFAULT_XML = new RdfParser(PropertyStore.create());<a name="line.52"></a>
-<span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>   /** Default Turtle parser, all default settings.*/<a name="line.54"></a>
-<span class="sourceLineNo">055</span>   public static final RdfParser DEFAULT_TURTLE = new Turtle(PropertyStore.create());<a name="line.55"></a>
-<span class="sourceLineNo">056</span><a name="line.56"></a>
-<span class="sourceLineNo">057</span>   /** Default N-Triple parser, all default settings.*/<a name="line.57"></a>
-<span class="sourceLineNo">058</span>   public static final RdfParser DEFAULT_NTRIPLE = new NTriple(PropertyStore.create());<a name="line.58"></a>
-<span class="sourceLineNo">059</span><a name="line.59"></a>
-<span class="sourceLineNo">060</span>   /** Default N3 parser, all default settings.*/<a name="line.60"></a>
-<span class="sourceLineNo">061</span>   public static final RdfParser DEFAULT_N3 = new N3(PropertyStore.create());<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span><a name="line.63"></a>
-<span class="sourceLineNo">064</span>   /** Consumes RDF/XML input */<a name="line.64"></a>
-<span class="sourceLineNo">065</span>   @Consumes("text/xml+rdf")<a name="line.65"></a>
-<span class="sourceLineNo">066</span>   public static class Xml extends RdfParser {<a name="line.66"></a>
-<span class="sourceLineNo">067</span><a name="line.67"></a>
-<span class="sourceLineNo">068</span>      /**<a name="line.68"></a>
-<span class="sourceLineNo">069</span>       * Constructor.<a name="line.69"></a>
-<span class="sourceLineNo">070</span>       * <a name="line.70"></a>
-<span class="sourceLineNo">071</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.71"></a>
-<span class="sourceLineNo">072</span>       */<a name="line.72"></a>
-<span class="sourceLineNo">073</span>      public Xml(PropertyStore propertyStore) {<a name="line.73"></a>
-<span class="sourceLineNo">074</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML));<a name="line.74"></a>
-<span class="sourceLineNo">075</span>      }<a name="line.75"></a>
-<span class="sourceLineNo">076</span>   }<a name="line.76"></a>
+<span class="sourceLineNo">019</span>import org.apache.juneau.parser.*;<a name="line.19"></a>
+<span class="sourceLineNo">020</span><a name="line.20"></a>
+<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
+<span class="sourceLineNo">022</span> * Parses RDF into POJOs.<a name="line.22"></a>
+<span class="sourceLineNo">023</span> *<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * <a name="line.25"></a>
+<span class="sourceLineNo">026</span> * Refer to &lt;a class="doclink" href="package-summary.html#ParserConfigurableProperties"&gt;Configurable Properties&lt;/a&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * for the entire list of configurable properties.<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * <a name="line.30"></a>
+<span class="sourceLineNo">031</span> * The following direct subclasses are provided for language-specific parsers:<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;ul class='spaced-list'&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *    &lt;li&gt;<a name="line.33"></a>
+<span class="sourceLineNo">034</span> *       {@link RdfParser.Xml} - RDF/XML and RDF/XML-ABBREV.<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *    &lt;li&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *       {@link RdfParser.NTriple} - N-TRIPLE.<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;<a name="line.37"></a>
+<span class="sourceLineNo">038</span> *       {@link RdfParser.Turtle} - TURTLE.<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *    &lt;li&gt;<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *       {@link RdfParser.N3} - N3.<a name="line.40"></a>
+<span class="sourceLineNo">041</span> * &lt;/ul&gt;<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *<a name="line.42"></a>
+<span class="sourceLineNo">043</span> * &lt;h5 class='section'&gt;Additional information:&lt;/h5&gt;<a name="line.43"></a>
+<span class="sourceLineNo">044</span> * <a name="line.44"></a>
+<span class="sourceLineNo">045</span> * See &lt;a class="doclink" href="package-summary.html#TOC"&gt;RDF Overview&lt;/a&gt; for an overview of RDF support in Juneau.<a name="line.45"></a>
+<span class="sourceLineNo">046</span> */<a name="line.46"></a>
+<span class="sourceLineNo">047</span>public class RdfParser extends ReaderParser {<a name="line.47"></a>
+<span class="sourceLineNo">048</span><a name="line.48"></a>
+<span class="sourceLineNo">049</span>   /** Default XML parser, all default settings.*/<a name="line.49"></a>
+<span class="sourceLineNo">050</span>   public static final RdfParser DEFAULT_XML = new Xml(PropertyStore.create());<a name="line.50"></a>
+<span class="sourceLineNo">051</span><a name="line.51"></a>
+<span class="sourceLineNo">052</span>   /** Default Turtle parser, all default settings.*/<a name="line.52"></a>
+<span class="sourceLineNo">053</span>   public static final RdfParser DEFAULT_TURTLE = new Turtle(PropertyStore.create());<a name="line.53"></a>
+<span class="sourceLineNo">054</span><a name="line.54"></a>
+<span class="sourceLineNo">055</span>   /** Default N-Triple parser, all default settings.*/<a name="line.55"></a>
+<span class="sourceLineNo">056</span>   public static final RdfParser DEFAULT_NTRIPLE = new NTriple(PropertyStore.create());<a name="line.56"></a>
+<span class="sourceLineNo">057</span><a name="line.57"></a>
+<span class="sourceLineNo">058</span>   /** Default N3 parser, all default settings.*/<a name="line.58"></a>
+<span class="sourceLineNo">059</span>   public static final RdfParser DEFAULT_N3 = new N3(PropertyStore.create());<a name="line.59"></a>
+<span class="sourceLineNo">060</span><a name="line.60"></a>
+<span class="sourceLineNo">061</span><a name="line.61"></a>
+<span class="sourceLineNo">062</span>   /** Consumes RDF/XML input */<a name="line.62"></a>
+<span class="sourceLineNo">063</span>   public static class Xml extends RdfParser {<a name="line.63"></a>
+<span class="sourceLineNo">064</span><a name="line.64"></a>
+<span class="sourceLineNo">065</span>      /**<a name="line.65"></a>
+<span class="sourceLineNo">066</span>       * Constructor.<a name="line.66"></a>
+<span class="sourceLineNo">067</span>       * <a name="line.67"></a>
+<span class="sourceLineNo">068</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.68"></a>
+<span class="sourceLineNo">069</span>       */<a name="line.69"></a>
+<span class="sourceLineNo">070</span>      public Xml(PropertyStore propertyStore) {<a name="line.70"></a>
+<span class="sourceLineNo">071</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML), "text/xml+rdf");<a name="line.71"></a>
+<span class="sourceLineNo">072</span>      }<a name="line.72"></a>
+<span class="sourceLineNo">073</span>   }<a name="line.73"></a>
+<span class="sourceLineNo">074</span><a name="line.74"></a>
+<span class="sourceLineNo">075</span>   /** Consumes N-Triple input */<a name="line.75"></a>
+<span class="sourceLineNo">076</span>   public static class NTriple extends RdfParser {<a name="line.76"></a>
 <span class="sourceLineNo">077</span><a name="line.77"></a>
-<span class="sourceLineNo">078</span>   /** Consumes N-Triple input */<a name="line.78"></a>
-<span class="sourceLineNo">079</span>   @Consumes(value="text/n-triple")<a name="line.79"></a>
-<span class="sourceLineNo">080</span>   public static class NTriple extends RdfParser {<a name="line.80"></a>
-<span class="sourceLineNo">081</span><a name="line.81"></a>
-<span class="sourceLineNo">082</span>      /**<a name="line.82"></a>
-<span class="sourceLineNo">083</span>       * Constructor.<a name="line.83"></a>
-<span class="sourceLineNo">084</span>       * <a name="line.84"></a>
-<span class="sourceLineNo">085</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.85"></a>
-<span class="sourceLineNo">086</span>       */<a name="line.86"></a>
-<span class="sourceLineNo">087</span>      public NTriple(PropertyStore propertyStore) {<a name="line.87"></a>
-<span class="sourceLineNo">088</span>         super(propertyStore.copy().append(RDF_language, LANG_NTRIPLE));<a name="line.88"></a>
-<span class="sourceLineNo">089</span>      }<a name="line.89"></a>
-<span class="sourceLineNo">090</span>   }<a name="line.90"></a>
-<span class="sourceLineNo">091</span><a name="line.91"></a>
-<span class="sourceLineNo">092</span>   /** Consumes Turtle input */<a name="line.92"></a>
-<span class="sourceLineNo">093</span>   @Consumes(value="text/turtle")<a name="line.93"></a>
-<span class="sourceLineNo">094</span>   public static class Turtle extends RdfParser {<a name="line.94"></a>
-<span class="sourceLineNo">095</span><a name="line.95"></a>
-<span class="sourceLineNo">096</span>      /**<a name="line.96"></a>
-<span class="sourceLineNo">097</span>       * Constructor.<a name="line.97"></a>
-<span class="sourceLineNo">098</span>       * <a name="line.98"></a>
-<span class="sourceLineNo">099</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.99"></a>
-<span class="sourceLineNo">100</span>       */<a name="line.100"></a>
-<span class="sourceLineNo">101</span>      public Turtle(PropertyStore propertyStore) {<a name="line.101"></a>
-<span class="sourceLineNo">102</span>         super(propertyStore.copy().append(RDF_language, LANG_TURTLE));<a name="line.102"></a>
-<span class="sourceLineNo">103</span>      }<a name="line.103"></a>
-<span class="sourceLineNo">104</span>   }<a name="line.104"></a>
-<span class="sourceLineNo">105</span><a name="line.105"></a>
-<span class="sourceLineNo">106</span>   /** Consumes N3 input */<a name="line.106"></a>
-<span class="sourceLineNo">107</span>   @Consumes(value="text/n3")<a name="line.107"></a>
-<span class="sourceLineNo">108</span>   public static class N3 extends RdfParser {<a name="line.108"></a>
-<span class="sourceLineNo">109</span><a name="line.109"></a>
-<span class="sourceLineNo">110</span>      /**<a name="line.110"></a>
-<span class="sourceLineNo">111</span>       * Constructor.<a name="line.111"></a>
-<span class="sourceLineNo">112</span>       * <a name="line.112"></a>
-<span class="sourceLineNo">113</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.113"></a>
-<span class="sourceLineNo">114</span>       */<a name="line.114"></a>
-<span class="sourceLineNo">115</span>      public N3(PropertyStore propertyStore) {<a name="line.115"></a>
-<span class="sourceLineNo">116</span>         super(propertyStore.copy().append(RDF_language, LANG_N3));<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      }<a name="line.117"></a>
-<span class="sourceLineNo">118</span>   }<a name="line.118"></a>
-<span class="sourceLineNo">119</span><a name="line.119"></a>
-<span class="sourceLineNo">120</span><a name="line.120"></a>
-<span class="sourceLineNo">121</span>   private final RdfParserContext ctx;<a name="line.121"></a>
-<span class="sourceLineNo">122</span><a name="line.122"></a>
-<span class="sourceLineNo">123</span>   /**<a name="line.123"></a>
-<span class="sourceLineNo">124</span>    * Constructor.<a name="line.124"></a>
-<span class="sourceLineNo">125</span>    * <a name="line.125"></a>
-<span class="sourceLineNo">126</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.126"></a>
-<span class="sourceLineNo">127</span>    */<a name="line.127"></a>
-<span class="sourceLineNo">128</span>   public RdfParser(PropertyStore propertyStore) {<a name="line.128"></a>
-<span class="sourceLineNo">129</span>      super(propertyStore);<a name="line.129"></a>
-<span class="sourceLineNo">130</span>      this.ctx = createContext(RdfParserContext.class);<a name="line.130"></a>
+<span class="sourceLineNo">078</span>      /**<a name="line.78"></a>
+<span class="sourceLineNo">079</span>       * Constructor.<a name="line.79"></a>
+<span class="sourceLineNo">080</span>       * <a name="line.80"></a>
+<span class="sourceLineNo">081</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.81"></a>
+<span class="sourceLineNo">082</span>       */<a name="line.82"></a>
+<span class="sourceLineNo">083</span>      public NTriple(PropertyStore propertyStore) {<a name="line.83"></a>
+<span class="sourceLineNo">084</span>         super(propertyStore.copy().append(RDF_language, LANG_NTRIPLE), "text/n-triple");<a name="line.84"></a>
+<span class="sourceLineNo">085</span>      }<a name="line.85"></a>
+<span class="sourceLineNo">086</span>   }<a name="line.86"></a>
+<span class="sourceLineNo">087</span><a name="line.87"></a>
+<span class="sourceLineNo">088</span>   /** Consumes Turtle input */<a name="line.88"></a>
+<span class="sourceLineNo">089</span>   public static class Turtle extends RdfParser {<a name="line.89"></a>
+<span class="sourceLineNo">090</span><a name="line.90"></a>
+<span class="sourceLineNo">091</span>      /**<a name="line.91"></a>
+<span class="sourceLineNo">092</span>       * Constructor.<a name="line.92"></a>
+<span class="sourceLineNo">093</span>       * <a name="line.93"></a>
+<span class="sourceLineNo">094</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.94"></a>
+<span class="sourceLineNo">095</span>       */<a name="line.95"></a>
+<span class="sourceLineNo">096</span>      public Turtle(PropertyStore propertyStore) {<a name="line.96"></a>
+<span class="sourceLineNo">097</span>         super(propertyStore.copy().append(RDF_language, LANG_TURTLE), "text/turtle");<a name="line.97"></a>
+<span class="sourceLineNo">098</span>      }<a name="line.98"></a>
+<span class="sourceLineNo">099</span>   }<a name="line.99"></a>
+<span class="sourceLineNo">100</span><a name="line.100"></a>
+<span class="sourceLineNo">101</span>   /** Consumes N3 input */<a name="line.101"></a>
+<span class="sourceLineNo">102</span>   public static class N3 extends RdfParser {<a name="line.102"></a>
+<span class="sourceLineNo">103</span><a name="line.103"></a>
+<span class="sourceLineNo">104</span>      /**<a name="line.104"></a>
+<span class="sourceLineNo">105</span>       * Constructor.<a name="line.105"></a>
+<span class="sourceLineNo">106</span>       * <a name="line.106"></a>
+<span class="sourceLineNo">107</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.107"></a>
+<span class="sourceLineNo">108</span>       */<a name="line.108"></a>
+<span class="sourceLineNo">109</span>      public N3(PropertyStore propertyStore) {<a name="line.109"></a>
+<span class="sourceLineNo">110</span>         super(propertyStore.copy().append(RDF_language, LANG_N3), "text/n3");<a name="line.110"></a>
+<span class="sourceLineNo">111</span>      }<a name="line.111"></a>
+<span class="sourceLineNo">112</span>   }<a name="line.112"></a>
+<span class="sourceLineNo">113</span><a name="line.113"></a>
+<span class="sourceLineNo">114</span><a name="line.114"></a>
+<span class="sourceLineNo">115</span>   private final RdfParserContext ctx;<a name="line.115"></a>
+<span class="sourceLineNo">116</span><a name="line.116"></a>
+<span class="sourceLineNo">117</span>   /**<a name="line.117"></a>
+<span class="sourceLineNo">118</span>    * Constructor.<a name="line.118"></a>
+<span class="sourceLineNo">119</span>    * <a name="line.119"></a>
+<span class="sourceLineNo">120</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.120"></a>
+<span class="sourceLineNo">121</span>    * @param consumes The list of media types that this parser consumes (e.g. &lt;js&gt;"application/json"&lt;/js&gt;).<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    */<a name="line.122"></a>
+<span class="sourceLineNo">123</span>   public RdfParser(PropertyStore propertyStore, String...consumes) {<a name="line.123"></a>
+<span class="sourceLineNo">124</span>      super(propertyStore, consumes);<a name="line.124"></a>
+<span class="sourceLineNo">125</span>      this.ctx = createContext(RdfParserContext.class);<a name="line.125"></a>
+<span class="sourceLineNo">126</span>   }<a name="line.126"></a>
+<span class="sourceLineNo">127</span>   <a name="line.127"></a>
+<span class="sourceLineNo">128</span>   @Override /* CoreObject */<a name="line.128"></a>
+<span class="sourceLineNo">129</span>   public RdfParserBuilder builder() {<a name="line.129"></a>
+<span class="sourceLineNo">130</span>      return new RdfParserBuilder(propertyStore);<a name="line.130"></a>
 <span class="sourceLineNo">131</span>   }<a name="line.131"></a>
 <span class="sourceLineNo">132</span><a name="line.132"></a>
-<span class="sourceLineNo">133</span>   @Override /* CoreObject */<a name="line.133"></a>
-<span class="sourceLineNo">134</span>   public RdfParserBuilder builder() {<a name="line.134"></a>
-<span class="sourceLineNo">135</span>      return new RdfParserBuilder(propertyStore);<a name="line.135"></a>
+<span class="sourceLineNo">133</span>   @Override /* Parser */<a name="line.133"></a>
+<span class="sourceLineNo">134</span>   public ReaderParserSession createSession(ParserSessionArgs args) {<a name="line.134"></a>
+<span class="sourceLineNo">135</span>      return new RdfParserSession(ctx, args);<a name="line.135"></a>
 <span class="sourceLineNo">136</span>   }<a name="line.136"></a>
-<span class="sourceLineNo">137</span><a name="line.137"></a>
-<span class="sourceLineNo">138</span>   @Override /* Parser */<a name="line.138"></a>
-<span class="sourceLineNo">139</span>   public ReaderParserSession createSession(ParserSessionArgs args) {<a name="line.139"></a>
-<span class="sourceLineNo">140</span>      return new RdfParserSession(ctx, args);<a name="line.140"></a>
-<span class="sourceLineNo">141</span>   }<a name="line.141"></a>
-<span class="sourceLineNo">142</span>}<a name="line.142"></a>
+<span class="sourceLineNo">137</span>}<a name="line.137"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.html b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.html
index 035f6e1..e3995fc 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.html
@@ -24,130 +24,125 @@
 <span class="sourceLineNo">016</span>import static org.apache.juneau.jena.RdfCommonContext.*;<a name="line.16"></a>
 <span class="sourceLineNo">017</span><a name="line.17"></a>
 <span class="sourceLineNo">018</span>import org.apache.juneau.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.annotation.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.parser.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span><a name="line.21"></a>
-<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * Parses RDF into POJOs.<a name="line.23"></a>
-<span class="sourceLineNo">024</span> *<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * <a name="line.26"></a>
-<span class="sourceLineNo">027</span> * Refer to &lt;a class="doclink" href="package-summary.html#ParserConfigurableProperties"&gt;Configurable Properties&lt;/a&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * for the entire list of configurable properties.<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * <a name="line.31"></a>
-<span class="sourceLineNo">032</span> * The following direct subclasses are provided for language-specific parsers:<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;ul class='spaced-list'&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *    &lt;li&gt;<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *       {@link RdfParser.Xml} - RDF/XML and RDF/XML-ABBREV.<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *    &lt;li&gt;<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *       {@link RdfParser.NTriple} - N-TRIPLE.<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *       {@link RdfParser.Turtle} - TURTLE.<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *    &lt;li&gt;<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *       {@link RdfParser.N3} - N3.<a name="line.41"></a>
-<span class="sourceLineNo">042</span> * &lt;/ul&gt;<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *<a name="line.43"></a>
-<span class="sourceLineNo">044</span> * &lt;h5 class='section'&gt;Additional information:&lt;/h5&gt;<a name="line.44"></a>
-<span class="sourceLineNo">045</span> * <a name="line.45"></a>
-<span class="sourceLineNo">046</span> * See &lt;a class="doclink" href="package-summary.html#TOC"&gt;RDF Overview&lt;/a&gt; for an overview of RDF support in Juneau.<a name="line.46"></a>
-<span class="sourceLineNo">047</span> */<a name="line.47"></a>
-<span class="sourceLineNo">048</span>@Consumes(value="text/xml+rdf")<a name="line.48"></a>
-<span class="sourceLineNo">049</span>public class RdfParser extends ReaderParser {<a name="line.49"></a>
-<span class="sourceLineNo">050</span><a name="line.50"></a>
-<span class="sourceLineNo">051</span>   /** Default XML parser, all default settings.*/<a name="line.51"></a>
-<span class="sourceLineNo">052</span>   public static final RdfParser DEFAULT_XML = new RdfParser(PropertyStore.create());<a name="line.52"></a>
-<span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>   /** Default Turtle parser, all default settings.*/<a name="line.54"></a>
-<span class="sourceLineNo">055</span>   public static final RdfParser DEFAULT_TURTLE = new Turtle(PropertyStore.create());<a name="line.55"></a>
-<span class="sourceLineNo">056</span><a name="line.56"></a>
-<span class="sourceLineNo">057</span>   /** Default N-Triple parser, all default settings.*/<a name="line.57"></a>
-<span class="sourceLineNo">058</span>   public static final RdfParser DEFAULT_NTRIPLE = new NTriple(PropertyStore.create());<a name="line.58"></a>
-<span class="sourceLineNo">059</span><a name="line.59"></a>
-<span class="sourceLineNo">060</span>   /** Default N3 parser, all default settings.*/<a name="line.60"></a>
-<span class="sourceLineNo">061</span>   public static final RdfParser DEFAULT_N3 = new N3(PropertyStore.create());<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span><a name="line.63"></a>
-<span class="sourceLineNo">064</span>   /** Consumes RDF/XML input */<a name="line.64"></a>
-<span class="sourceLineNo">065</span>   @Consumes("text/xml+rdf")<a name="line.65"></a>
-<span class="sourceLineNo">066</span>   public static class Xml extends RdfParser {<a name="line.66"></a>
-<span class="sourceLineNo">067</span><a name="line.67"></a>
-<span class="sourceLineNo">068</span>      /**<a name="line.68"></a>
-<span class="sourceLineNo">069</span>       * Constructor.<a name="line.69"></a>
-<span class="sourceLineNo">070</span>       * <a name="line.70"></a>
-<span class="sourceLineNo">071</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.71"></a>
-<span class="sourceLineNo">072</span>       */<a name="line.72"></a>
-<span class="sourceLineNo">073</span>      public Xml(PropertyStore propertyStore) {<a name="line.73"></a>
-<span class="sourceLineNo">074</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML));<a name="line.74"></a>
-<span class="sourceLineNo">075</span>      }<a name="line.75"></a>
-<span class="sourceLineNo">076</span>   }<a name="line.76"></a>
+<span class="sourceLineNo">019</span>import org.apache.juneau.parser.*;<a name="line.19"></a>
+<span class="sourceLineNo">020</span><a name="line.20"></a>
+<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
+<span class="sourceLineNo">022</span> * Parses RDF into POJOs.<a name="line.22"></a>
+<span class="sourceLineNo">023</span> *<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * <a name="line.25"></a>
+<span class="sourceLineNo">026</span> * Refer to &lt;a class="doclink" href="package-summary.html#ParserConfigurableProperties"&gt;Configurable Properties&lt;/a&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * for the entire list of configurable properties.<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * <a name="line.30"></a>
+<span class="sourceLineNo">031</span> * The following direct subclasses are provided for language-specific parsers:<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;ul class='spaced-list'&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *    &lt;li&gt;<a name="line.33"></a>
+<span class="sourceLineNo">034</span> *       {@link RdfParser.Xml} - RDF/XML and RDF/XML-ABBREV.<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *    &lt;li&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *       {@link RdfParser.NTriple} - N-TRIPLE.<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;<a name="line.37"></a>
+<span class="sourceLineNo">038</span> *       {@link RdfParser.Turtle} - TURTLE.<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *    &lt;li&gt;<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *       {@link RdfParser.N3} - N3.<a name="line.40"></a>
+<span class="sourceLineNo">041</span> * &lt;/ul&gt;<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *<a name="line.42"></a>
+<span class="sourceLineNo">043</span> * &lt;h5 class='section'&gt;Additional information:&lt;/h5&gt;<a name="line.43"></a>
+<span class="sourceLineNo">044</span> * <a name="line.44"></a>
+<span class="sourceLineNo">045</span> * See &lt;a class="doclink" href="package-summary.html#TOC"&gt;RDF Overview&lt;/a&gt; for an overview of RDF support in Juneau.<a name="line.45"></a>
+<span class="sourceLineNo">046</span> */<a name="line.46"></a>
+<span class="sourceLineNo">047</span>public class RdfParser extends ReaderParser {<a name="line.47"></a>
+<span class="sourceLineNo">048</span><a name="line.48"></a>
+<span class="sourceLineNo">049</span>   /** Default XML parser, all default settings.*/<a name="line.49"></a>
+<span class="sourceLineNo">050</span>   public static final RdfParser DEFAULT_XML = new Xml(PropertyStore.create());<a name="line.50"></a>
+<span class="sourceLineNo">051</span><a name="line.51"></a>
+<span class="sourceLineNo">052</span>   /** Default Turtle parser, all default settings.*/<a name="line.52"></a>
+<span class="sourceLineNo">053</span>   public static final RdfParser DEFAULT_TURTLE = new Turtle(PropertyStore.create());<a name="line.53"></a>
+<span class="sourceLineNo">054</span><a name="line.54"></a>
+<span class="sourceLineNo">055</span>   /** Default N-Triple parser, all default settings.*/<a name="line.55"></a>
+<span class="sourceLineNo">056</span>   public static final RdfParser DEFAULT_NTRIPLE = new NTriple(PropertyStore.create());<a name="line.56"></a>
+<span class="sourceLineNo">057</span><a name="line.57"></a>
+<span class="sourceLineNo">058</span>   /** Default N3 parser, all default settings.*/<a name="line.58"></a>
+<span class="sourceLineNo">059</span>   public static final RdfParser DEFAULT_N3 = new N3(PropertyStore.create());<a name="line.59"></a>
+<span class="sourceLineNo">060</span><a name="line.60"></a>
+<span class="sourceLineNo">061</span><a name="line.61"></a>
+<span class="sourceLineNo">062</span>   /** Consumes RDF/XML input */<a name="line.62"></a>
+<span class="sourceLineNo">063</span>   public static class Xml extends RdfParser {<a name="line.63"></a>
+<span class="sourceLineNo">064</span><a name="line.64"></a>
+<span class="sourceLineNo">065</span>      /**<a name="line.65"></a>
+<span class="sourceLineNo">066</span>       * Constructor.<a name="line.66"></a>
+<span class="sourceLineNo">067</span>       * <a name="line.67"></a>
+<span class="sourceLineNo">068</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.68"></a>
+<span class="sourceLineNo">069</span>       */<a name="line.69"></a>
+<span class="sourceLineNo">070</span>      public Xml(PropertyStore propertyStore) {<a name="line.70"></a>
+<span class="sourceLineNo">071</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML), "text/xml+rdf");<a name="line.71"></a>
+<span class="sourceLineNo">072</span>      }<a name="line.72"></a>
+<span class="sourceLineNo">073</span>   }<a name="line.73"></a>
+<span class="sourceLineNo">074</span><a name="line.74"></a>
+<span class="sourceLineNo">075</span>   /** Consumes N-Triple input */<a name="line.75"></a>
+<span class="sourceLineNo">076</span>   public static class NTriple extends RdfParser {<a name="line.76"></a>
 <span class="sourceLineNo">077</span><a name="line.77"></a>
-<span class="sourceLineNo">078</span>   /** Consumes N-Triple input */<a name="line.78"></a>
-<span class="sourceLineNo">079</span>   @Consumes(value="text/n-triple")<a name="line.79"></a>
-<span class="sourceLineNo">080</span>   public static class NTriple extends RdfParser {<a name="line.80"></a>
-<span class="sourceLineNo">081</span><a name="line.81"></a>
-<span class="sourceLineNo">082</span>      /**<a name="line.82"></a>
-<span class="sourceLineNo">083</span>       * Constructor.<a name="line.83"></a>
-<span class="sourceLineNo">084</span>       * <a name="line.84"></a>
-<span class="sourceLineNo">085</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.85"></a>
-<span class="sourceLineNo">086</span>       */<a name="line.86"></a>
-<span class="sourceLineNo">087</span>      public NTriple(PropertyStore propertyStore) {<a name="line.87"></a>
-<span class="sourceLineNo">088</span>         super(propertyStore.copy().append(RDF_language, LANG_NTRIPLE));<a name="line.88"></a>
-<span class="sourceLineNo">089</span>      }<a name="line.89"></a>
-<span class="sourceLineNo">090</span>   }<a name="line.90"></a>
-<span class="sourceLineNo">091</span><a name="line.91"></a>
-<span class="sourceLineNo">092</span>   /** Consumes Turtle input */<a name="line.92"></a>
-<span class="sourceLineNo">093</span>   @Consumes(value="text/turtle")<a name="line.93"></a>
-<span class="sourceLineNo">094</span>   public static class Turtle extends RdfParser {<a name="line.94"></a>
-<span class="sourceLineNo">095</span><a name="line.95"></a>
-<span class="sourceLineNo">096</span>      /**<a name="line.96"></a>
-<span class="sourceLineNo">097</span>       * Constructor.<a name="line.97"></a>
-<span class="sourceLineNo">098</span>       * <a name="line.98"></a>
-<span class="sourceLineNo">099</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.99"></a>
-<span class="sourceLineNo">100</span>       */<a name="line.100"></a>
-<span class="sourceLineNo">101</span>      public Turtle(PropertyStore propertyStore) {<a name="line.101"></a>
-<span class="sourceLineNo">102</span>         super(propertyStore.copy().append(RDF_language, LANG_TURTLE));<a name="line.102"></a>
-<span class="sourceLineNo">103</span>      }<a name="line.103"></a>
-<span class="sourceLineNo">104</span>   }<a name="line.104"></a>
-<span class="sourceLineNo">105</span><a name="line.105"></a>
-<span class="sourceLineNo">106</span>   /** Consumes N3 input */<a name="line.106"></a>
-<span class="sourceLineNo">107</span>   @Consumes(value="text/n3")<a name="line.107"></a>
-<span class="sourceLineNo">108</span>   public static class N3 extends RdfParser {<a name="line.108"></a>
-<span class="sourceLineNo">109</span><a name="line.109"></a>
-<span class="sourceLineNo">110</span>      /**<a name="line.110"></a>
-<span class="sourceLineNo">111</span>       * Constructor.<a name="line.111"></a>
-<span class="sourceLineNo">112</span>       * <a name="line.112"></a>
-<span class="sourceLineNo">113</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.113"></a>
-<span class="sourceLineNo">114</span>       */<a name="line.114"></a>
-<span class="sourceLineNo">115</span>      public N3(PropertyStore propertyStore) {<a name="line.115"></a>
-<span class="sourceLineNo">116</span>         super(propertyStore.copy().append(RDF_language, LANG_N3));<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      }<a name="line.117"></a>
-<span class="sourceLineNo">118</span>   }<a name="line.118"></a>
-<span class="sourceLineNo">119</span><a name="line.119"></a>
-<span class="sourceLineNo">120</span><a name="line.120"></a>
-<span class="sourceLineNo">121</span>   private final RdfParserContext ctx;<a name="line.121"></a>
-<span class="sourceLineNo">122</span><a name="line.122"></a>
-<span class="sourceLineNo">123</span>   /**<a name="line.123"></a>
-<span class="sourceLineNo">124</span>    * Constructor.<a name="line.124"></a>
-<span class="sourceLineNo">125</span>    * <a name="line.125"></a>
-<span class="sourceLineNo">126</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.126"></a>
-<span class="sourceLineNo">127</span>    */<a name="line.127"></a>
-<span class="sourceLineNo">128</span>   public RdfParser(PropertyStore propertyStore) {<a name="line.128"></a>
-<span class="sourceLineNo">129</span>      super(propertyStore);<a name="line.129"></a>
-<span class="sourceLineNo">130</span>      this.ctx = createContext(RdfParserContext.class);<a name="line.130"></a>
+<span class="sourceLineNo">078</span>      /**<a name="line.78"></a>
+<span class="sourceLineNo">079</span>       * Constructor.<a name="line.79"></a>
+<span class="sourceLineNo">080</span>       * <a name="line.80"></a>
+<span class="sourceLineNo">081</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.81"></a>
+<span class="sourceLineNo">082</span>       */<a name="line.82"></a>
+<span class="sourceLineNo">083</span>      public NTriple(PropertyStore propertyStore) {<a name="line.83"></a>
+<span class="sourceLineNo">084</span>         super(propertyStore.copy().append(RDF_language, LANG_NTRIPLE), "text/n-triple");<a name="line.84"></a>
+<span class="sourceLineNo">085</span>      }<a name="line.85"></a>
+<span class="sourceLineNo">086</span>   }<a name="line.86"></a>
+<span class="sourceLineNo">087</span><a name="line.87"></a>
+<span class="sourceLineNo">088</span>   /** Consumes Turtle input */<a name="line.88"></a>
+<span class="sourceLineNo">089</span>   public static class Turtle extends RdfParser {<a name="line.89"></a>
+<span class="sourceLineNo">090</span><a name="line.90"></a>
+<span class="sourceLineNo">091</span>      /**<a name="line.91"></a>
+<span class="sourceLineNo">092</span>       * Constructor.<a name="line.92"></a>
+<span class="sourceLineNo">093</span>       * <a name="line.93"></a>
+<span class="sourceLineNo">094</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.94"></a>
+<span class="sourceLineNo">095</span>       */<a name="line.95"></a>
+<span class="sourceLineNo">096</span>      public Turtle(PropertyStore propertyStore) {<a name="line.96"></a>
+<span class="sourceLineNo">097</span>         super(propertyStore.copy().append(RDF_language, LANG_TURTLE), "text/turtle");<a name="line.97"></a>
+<span class="sourceLineNo">098</span>      }<a name="line.98"></a>
+<span class="sourceLineNo">099</span>   }<a name="line.99"></a>
+<span class="sourceLineNo">100</span><a name="line.100"></a>
+<span class="sourceLineNo">101</span>   /** Consumes N3 input */<a name="line.101"></a>
+<span class="sourceLineNo">102</span>   public static class N3 extends RdfParser {<a name="line.102"></a>
+<span class="sourceLineNo">103</span><a name="line.103"></a>
+<span class="sourceLineNo">104</span>      /**<a name="line.104"></a>
+<span class="sourceLineNo">105</span>       * Constructor.<a name="line.105"></a>
+<span class="sourceLineNo">106</span>       * <a name="line.106"></a>
+<span class="sourceLineNo">107</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.107"></a>
+<span class="sourceLineNo">108</span>       */<a name="line.108"></a>
+<span class="sourceLineNo">109</span>      public N3(PropertyStore propertyStore) {<a name="line.109"></a>
+<span class="sourceLineNo">110</span>         super(propertyStore.copy().append(RDF_language, LANG_N3), "text/n3");<a name="line.110"></a>
+<span class="sourceLineNo">111</span>      }<a name="line.111"></a>
+<span class="sourceLineNo">112</span>   }<a name="line.112"></a>
+<span class="sourceLineNo">113</span><a name="line.113"></a>
+<span class="sourceLineNo">114</span><a name="line.114"></a>
+<span class="sourceLineNo">115</span>   private final RdfParserContext ctx;<a name="line.115"></a>
+<span class="sourceLineNo">116</span><a name="line.116"></a>
+<span class="sourceLineNo">117</span>   /**<a name="line.117"></a>
+<span class="sourceLineNo">118</span>    * Constructor.<a name="line.118"></a>
+<span class="sourceLineNo">119</span>    * <a name="line.119"></a>
+<span class="sourceLineNo">120</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.120"></a>
+<span class="sourceLineNo">121</span>    * @param consumes The list of media types that this parser consumes (e.g. &lt;js&gt;"application/json"&lt;/js&gt;).<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    */<a name="line.122"></a>
+<span class="sourceLineNo">123</span>   public RdfParser(PropertyStore propertyStore, String...consumes) {<a name="line.123"></a>
+<span class="sourceLineNo">124</span>      super(propertyStore, consumes);<a name="line.124"></a>
+<span class="sourceLineNo">125</span>      this.ctx = createContext(RdfParserContext.class);<a name="line.125"></a>
+<span class="sourceLineNo">126</span>   }<a name="line.126"></a>
+<span class="sourceLineNo">127</span>   <a name="line.127"></a>
+<span class="sourceLineNo">128</span>   @Override /* CoreObject */<a name="line.128"></a>
+<span class="sourceLineNo">129</span>   public RdfParserBuilder builder() {<a name="line.129"></a>
+<span class="sourceLineNo">130</span>      return new RdfParserBuilder(propertyStore);<a name="line.130"></a>
 <span class="sourceLineNo">131</span>   }<a name="line.131"></a>
 <span class="sourceLineNo">132</span><a name="line.132"></a>
-<span class="sourceLineNo">133</span>   @Override /* CoreObject */<a name="line.133"></a>
-<span class="sourceLineNo">134</span>   public RdfParserBuilder builder() {<a name="line.134"></a>
-<span class="sourceLineNo">135</span>      return new RdfParserBuilder(propertyStore);<a name="line.135"></a>
+<span class="sourceLineNo">133</span>   @Override /* Parser */<a name="line.133"></a>
+<span class="sourceLineNo">134</span>   public ReaderParserSession createSession(ParserSessionArgs args) {<a name="line.134"></a>
+<span class="sourceLineNo">135</span>      return new RdfParserSession(ctx, args);<a name="line.135"></a>
 <span class="sourceLineNo">136</span>   }<a name="line.136"></a>
-<span class="sourceLineNo">137</span><a name="line.137"></a>
-<span class="sourceLineNo">138</span>   @Override /* Parser */<a name="line.138"></a>
-<span class="sourceLineNo">139</span>   public ReaderParserSession createSession(ParserSessionArgs args) {<a name="line.139"></a>
-<span class="sourceLineNo">140</span>      return new RdfParserSession(ctx, args);<a name="line.140"></a>
-<span class="sourceLineNo">141</span>   }<a name="line.141"></a>
-<span class="sourceLineNo">142</span>}<a name="line.142"></a>
+<span class="sourceLineNo">137</span>}<a name="line.137"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParserBuilder.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParserBuilder.html b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParserBuilder.html
index 7f030f4..3244e7d 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParserBuilder.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParserBuilder.html
@@ -55,7 +55,7 @@
 <span class="sourceLineNo">047</span><a name="line.47"></a>
 <span class="sourceLineNo">048</span>   @Override /* CoreObjectBuilder */<a name="line.48"></a>
 <span class="sourceLineNo">049</span>   public RdfParser build() {<a name="line.49"></a>
-<span class="sourceLineNo">050</span>      return new RdfParser(propertyStore);<a name="line.50"></a>
+<span class="sourceLineNo">050</span>      return new RdfParser(propertyStore, "text/xml+rdf");<a name="line.50"></a>
 <span class="sourceLineNo">051</span>   }<a name="line.51"></a>
 <span class="sourceLineNo">052</span><a name="line.52"></a>
 <span class="sourceLineNo">053</span><a name="line.53"></a>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.N3.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.N3.html b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.N3.html
index d03eb62..e3f2a96 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.N3.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.N3.html
@@ -24,144 +24,153 @@
 <span class="sourceLineNo">016</span>import static org.apache.juneau.jena.RdfCommonContext.*;<a name="line.16"></a>
 <span class="sourceLineNo">017</span><a name="line.17"></a>
 <span class="sourceLineNo">018</span>import org.apache.juneau.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.annotation.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span><a name="line.21"></a>
-<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * Serializes POJOs to RDF.<a name="line.23"></a>
-<span class="sourceLineNo">024</span> *<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * <a name="line.26"></a>
-<span class="sourceLineNo">027</span> * Refer to &lt;a class="doclink" href="package-summary.html#SerializerConfigurableProperties"&gt;Configurable Properties&lt;/a&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> *    for the entire list of configurable properties.<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * <a name="line.31"></a>
-<span class="sourceLineNo">032</span> * The following direct subclasses are provided for language-specific serializers:<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;ul&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *    &lt;li&gt;{@link RdfSerializer.Xml} - RDF/XML.<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *    &lt;li&gt;{@link RdfSerializer.XmlAbbrev} - RDF/XML-ABBREV.<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *    &lt;li&gt;{@link RdfSerializer.NTriple} - N-TRIPLE.<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *    &lt;li&gt;{@link RdfSerializer.Turtle} - TURTLE.<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;{@link RdfSerializer.N3} - N3.<a name="line.38"></a>
-<span class="sourceLineNo">039</span> * &lt;/ul&gt;<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *<a name="line.40"></a>
-<span class="sourceLineNo">041</span> * &lt;h5 class='section'&gt;Additional information:&lt;/h5&gt;<a name="line.41"></a>
-<span class="sourceLineNo">042</span> * <a name="line.42"></a>
-<span class="sourceLineNo">043</span> * See &lt;a class="doclink" href="package-summary.html#TOC"&gt;RDF Overview&lt;/a&gt; for an overview of RDF support in Juneau.<a name="line.43"></a>
-<span class="sourceLineNo">044</span> */<a name="line.44"></a>
-<span class="sourceLineNo">045</span>@Produces(value="text/xml+rdf+abbrev", contentType="text/xml+rdf")<a name="line.45"></a>
-<span class="sourceLineNo">046</span>public class RdfSerializer extends WriterSerializer {<a name="line.46"></a>
-<span class="sourceLineNo">047</span><a name="line.47"></a>
-<span class="sourceLineNo">048</span>   /** Default RDF/XML serializer, all default settings.*/<a name="line.48"></a>
-<span class="sourceLineNo">049</span>   public static final RdfSerializer DEFAULT_XML = new Xml(PropertyStore.create());<a name="line.49"></a>
-<span class="sourceLineNo">050</span><a name="line.50"></a>
-<span class="sourceLineNo">051</span>   /** Default Abbreviated RDF/XML serializer, all default settings.*/<a name="line.51"></a>
-<span class="sourceLineNo">052</span>   public static final RdfSerializer DEFAULT_XMLABBREV = new XmlAbbrev(PropertyStore.create());<a name="line.52"></a>
-<span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>   /** Default Turtle serializer, all default settings.*/<a name="line.54"></a>
-<span class="sourceLineNo">055</span>   public static final RdfSerializer DEFAULT_TURTLE = new Turtle(PropertyStore.create());<a name="line.55"></a>
-<span class="sourceLineNo">056</span><a name="line.56"></a>
-<span class="sourceLineNo">057</span>   /** Default N-Triple serializer, all default settings.*/<a name="line.57"></a>
-<span class="sourceLineNo">058</span>   public static final RdfSerializer DEFAULT_NTRIPLE = new NTriple(PropertyStore.create());<a name="line.58"></a>
-<span class="sourceLineNo">059</span><a name="line.59"></a>
-<span class="sourceLineNo">060</span>   /** Default N3 serializer, all default settings.*/<a name="line.60"></a>
-<span class="sourceLineNo">061</span>   public static final RdfSerializer DEFAULT_N3 = new N3(PropertyStore.create());<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span><a name="line.63"></a>
-<span class="sourceLineNo">064</span>   /** Produces RDF/XML output */<a name="line.64"></a>
-<span class="sourceLineNo">065</span>   @Produces("text/xml+rdf")<a name="line.65"></a>
-<span class="sourceLineNo">066</span>   public static class Xml extends RdfSerializer {<a name="line.66"></a>
-<span class="sourceLineNo">067</span><a name="line.67"></a>
-<span class="sourceLineNo">068</span>      /**<a name="line.68"></a>
-<span class="sourceLineNo">069</span>       * Constructor.<a name="line.69"></a>
-<span class="sourceLineNo">070</span>       * <a name="line.70"></a>
-<span class="sourceLineNo">071</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.71"></a>
-<span class="sourceLineNo">072</span>       */<a name="line.72"></a>
-<span class="sourceLineNo">073</span>      public Xml(PropertyStore propertyStore) {<a name="line.73"></a>
-<span class="sourceLineNo">074</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML));<a name="line.74"></a>
-<span class="sourceLineNo">075</span>      }<a name="line.75"></a>
-<span class="sourceLineNo">076</span>   }<a name="line.76"></a>
+<span class="sourceLineNo">019</span>import org.apache.juneau.serializer.*;<a name="line.19"></a>
+<span class="sourceLineNo">020</span><a name="line.20"></a>
+<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
+<span class="sourceLineNo">022</span> * Serializes POJOs to RDF.<a name="line.22"></a>
+<span class="sourceLineNo">023</span> *<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * <a name="line.25"></a>
+<span class="sourceLineNo">026</span> * Refer to &lt;a class="doclink" href="package-summary.html#SerializerConfigurableProperties"&gt;Configurable Properties&lt;/a&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> *    for the entire list of configurable properties.<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * <a name="line.30"></a>
+<span class="sourceLineNo">031</span> * The following direct subclasses are provided for language-specific serializers:<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;ul&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *    &lt;li&gt;{@link RdfSerializer.Xml} - RDF/XML.<a name="line.33"></a>
+<span class="sourceLineNo">034</span> *    &lt;li&gt;{@link RdfSerializer.XmlAbbrev} - RDF/XML-ABBREV.<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *    &lt;li&gt;{@link RdfSerializer.NTriple} - N-TRIPLE.<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *    &lt;li&gt;{@link RdfSerializer.Turtle} - TURTLE.<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;{@link RdfSerializer.N3} - N3.<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * &lt;/ul&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *<a name="line.39"></a>
+<span class="sourceLineNo">040</span> * &lt;h5 class='section'&gt;Additional information:&lt;/h5&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span> * <a name="line.41"></a>
+<span class="sourceLineNo">042</span> * See &lt;a class="doclink" href="package-summary.html#TOC"&gt;RDF Overview&lt;/a&gt; for an overview of RDF support in Juneau.<a name="line.42"></a>
+<span class="sourceLineNo">043</span> */<a name="line.43"></a>
+<span class="sourceLineNo">044</span>public class RdfSerializer extends WriterSerializer {<a name="line.44"></a>
+<span class="sourceLineNo">045</span><a name="line.45"></a>
+<span class="sourceLineNo">046</span>   /** Default RDF/XML serializer, all default settings.*/<a name="line.46"></a>
+<span class="sourceLineNo">047</span>   public static final RdfSerializer DEFAULT_XML = new Xml(PropertyStore.create());<a name="line.47"></a>
+<span class="sourceLineNo">048</span><a name="line.48"></a>
+<span class="sourceLineNo">049</span>   /** Default Abbreviated RDF/XML serializer, all default settings.*/<a name="line.49"></a>
+<span class="sourceLineNo">050</span>   public static final RdfSerializer DEFAULT_XMLABBREV = new XmlAbbrev(PropertyStore.create());<a name="line.50"></a>
+<span class="sourceLineNo">051</span><a name="line.51"></a>
+<span class="sourceLineNo">052</span>   /** Default Turtle serializer, all default settings.*/<a name="line.52"></a>
+<span class="sourceLineNo">053</span>   public static final RdfSerializer DEFAULT_TURTLE = new Turtle(PropertyStore.create());<a name="line.53"></a>
+<span class="sourceLineNo">054</span><a name="line.54"></a>
+<span class="sourceLineNo">055</span>   /** Default N-Triple serializer, all default settings.*/<a name="line.55"></a>
+<span class="sourceLineNo">056</span>   public static final RdfSerializer DEFAULT_NTRIPLE = new NTriple(PropertyStore.create());<a name="line.56"></a>
+<span class="sourceLineNo">057</span><a name="line.57"></a>
+<span class="sourceLineNo">058</span>   /** Default N3 serializer, all default settings.*/<a name="line.58"></a>
+<span class="sourceLineNo">059</span>   public static final RdfSerializer DEFAULT_N3 = new N3(PropertyStore.create());<a name="line.59"></a>
+<span class="sourceLineNo">060</span><a name="line.60"></a>
+<span class="sourceLineNo">061</span><a name="line.61"></a>
+<span class="sourceLineNo">062</span>   /** Produces RDF/XML output */<a name="line.62"></a>
+<span class="sourceLineNo">063</span>   public static class Xml extends RdfSerializer {<a name="line.63"></a>
+<span class="sourceLineNo">064</span><a name="line.64"></a>
+<span class="sourceLineNo">065</span>      /**<a name="line.65"></a>
+<span class="sourceLineNo">066</span>       * Constructor.<a name="line.66"></a>
+<span class="sourceLineNo">067</span>       * <a name="line.67"></a>
+<span class="sourceLineNo">068</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.68"></a>
+<span class="sourceLineNo">069</span>       */<a name="line.69"></a>
+<span class="sourceLineNo">070</span>      public Xml(PropertyStore propertyStore) {<a name="line.70"></a>
+<span class="sourceLineNo">071</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML), "text/xml+rdf");<a name="line.71"></a>
+<span class="sourceLineNo">072</span>      }<a name="line.72"></a>
+<span class="sourceLineNo">073</span>   }<a name="line.73"></a>
+<span class="sourceLineNo">074</span><a name="line.74"></a>
+<span class="sourceLineNo">075</span>   /** Produces Abbreviated RDF/XML output */<a name="line.75"></a>
+<span class="sourceLineNo">076</span>   public static class XmlAbbrev extends RdfSerializer {<a name="line.76"></a>
 <span class="sourceLineNo">077</span><a name="line.77"></a>
-<span class="sourceLineNo">078</span>   /** Produces Abbreviated RDF/XML output */<a name="line.78"></a>
-<span class="sourceLineNo">079</span>   @Produces(value="text/xml+rdf+abbrev", contentType="text/xml+rdf")<a name="line.79"></a>
-<span class="sourceLineNo">080</span>   public static class XmlAbbrev extends RdfSerializer {<a name="line.80"></a>
-<span class="sourceLineNo">081</span><a name="line.81"></a>
-<span class="sourceLineNo">082</span>      /**<a name="line.82"></a>
-<span class="sourceLineNo">083</span>       * Constructor.<a name="line.83"></a>
-<span class="sourceLineNo">084</span>       * <a name="line.84"></a>
-<span class="sourceLineNo">085</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.85"></a>
-<span class="sourceLineNo">086</span>       */<a name="line.86"></a>
-<span class="sourceLineNo">087</span>      public XmlAbbrev(PropertyStore propertyStore) {<a name="line.87"></a>
-<span class="sourceLineNo">088</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML_ABBREV));<a name="line.88"></a>
-<span class="sourceLineNo">089</span>      }<a name="line.89"></a>
-<span class="sourceLineNo">090</span>   }<a name="line.90"></a>
-<span class="sourceLineNo">091</span><a name="line.91"></a>
-<span class="sourceLineNo">092</span>   /** Produces N-Triple output */<a name="line.92"></a>
-<span class="sourceLineNo">093</span>   @Produces("text/n-triple")<a name="line.93"></a>
-<span class="sourceLineNo">094</span>   public static class NTriple extends RdfSerializer {<a name="line.94"></a>
-<span class="sourceLineNo">095</span><a name="line.95"></a>
-<span class="sourceLineNo">096</span>      /**<a name="line.96"></a>
-<span class="sourceLineNo">097</span>       * Constructor.<a name="line.97"></a>
-<span class="sourceLineNo">098</span>       * <a name="line.98"></a>
-<span class="sourceLineNo">099</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.99"></a>
-<span class="sourceLineNo">100</span>       */<a name="line.100"></a>
-<span class="sourceLineNo">101</span>      public NTriple(PropertyStore propertyStore) {<a name="line.101"></a>
-<span class="sourceLineNo">102</span>         super(propertyStore.copy().append(RDF_language, LANG_NTRIPLE));<a name="line.102"></a>
-<span class="sourceLineNo">103</span>      }<a name="line.103"></a>
-<span class="sourceLineNo">104</span>   }<a name="line.104"></a>
-<span class="sourceLineNo">105</span><a name="line.105"></a>
-<span class="sourceLineNo">106</span>   /** Produces Turtle output */<a name="line.106"></a>
-<span class="sourceLineNo">107</span>   @Produces("text/turtle")<a name="line.107"></a>
-<span class="sourceLineNo">108</span>   public static class Turtle extends RdfSerializer {<a name="line.108"></a>
-<span class="sourceLineNo">109</span><a name="line.109"></a>
-<span class="sourceLineNo">110</span>      /**<a name="line.110"></a>
-<span class="sourceLineNo">111</span>       * Constructor.<a name="line.111"></a>
-<span class="sourceLineNo">112</span>       * <a name="line.112"></a>
-<span class="sourceLineNo">113</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.113"></a>
-<span class="sourceLineNo">114</span>       */<a name="line.114"></a>
-<span class="sourceLineNo">115</span>      public Turtle(PropertyStore propertyStore) {<a name="line.115"></a>
-<span class="sourceLineNo">116</span>         super(propertyStore.copy().append(RDF_language, LANG_TURTLE));<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      }<a name="line.117"></a>
-<span class="sourceLineNo">118</span>   }<a name="line.118"></a>
-<span class="sourceLineNo">119</span><a name="line.119"></a>
-<span class="sourceLineNo">120</span>   /** Produces N3 output */<a name="line.120"></a>
-<span class="sourceLineNo">121</span>   @Produces("text/n3")<a name="line.121"></a>
-<span class="sourceLineNo">122</span>   public static class N3 extends RdfSerializer {<a name="line.122"></a>
-<span class="sourceLineNo">123</span><a name="line.123"></a>
-<span class="sourceLineNo">124</span>      /**<a name="line.124"></a>
-<span class="sourceLineNo">125</span>       * Constructor.<a name="line.125"></a>
-<span class="sourceLineNo">126</span>       * <a name="line.126"></a>
-<span class="sourceLineNo">127</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.127"></a>
-<span class="sourceLineNo">128</span>       */<a name="line.128"></a>
-<span class="sourceLineNo">129</span>      public N3(PropertyStore propertyStore) {<a name="line.129"></a>
-<span class="sourceLineNo">130</span>         super(propertyStore.copy().append(RDF_language, LANG_N3));<a name="line.130"></a>
-<span class="sourceLineNo">131</span>      }<a name="line.131"></a>
-<span class="sourceLineNo">132</span>   }<a name="line.132"></a>
-<span class="sourceLineNo">133</span><a name="line.133"></a>
-<span class="sourceLineNo">134</span><a name="line.134"></a>
-<span class="sourceLineNo">135</span>   private final RdfSerializerContext ctx;<a name="line.135"></a>
-<span class="sourceLineNo">136</span><a name="line.136"></a>
-<span class="sourceLineNo">137</span>   /**<a name="line.137"></a>
-<span class="sourceLineNo">138</span>    * Constructor.<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    * <a name="line.139"></a>
-<span class="sourceLineNo">140</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.140"></a>
-<span class="sourceLineNo">141</span>    */<a name="line.141"></a>
-<span class="sourceLineNo">142</span>   public RdfSerializer(PropertyStore propertyStore) {<a name="line.142"></a>
-<span class="sourceLineNo">143</span>      super(propertyStore);<a name="line.143"></a>
-<span class="sourceLineNo">144</span>      this.ctx = createContext(RdfSerializerContext.class);<a name="line.144"></a>
-<span class="sourceLineNo">145</span>   }<a name="line.145"></a>
-<span class="sourceLineNo">146</span><a name="line.146"></a>
-<span class="sourceLineNo">147</span>   @Override /* CoreObject */<a name="line.147"></a>
-<span class="sourceLineNo">148</span>   public RdfSerializerBuilder builder() {<a name="line.148"></a>
-<span class="sourceLineNo">149</span>      return new RdfSerializerBuilder(propertyStore);<a name="line.149"></a>
-<span class="sourceLineNo">150</span>   }<a name="line.150"></a>
-<span class="sourceLineNo">151</span><a name="line.151"></a>
-<span class="sourceLineNo">152</span>   @Override /* Serializer */<a name="line.152"></a>
-<span class="sourceLineNo">153</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.153"></a>
-<span class="sourceLineNo">154</span>      return new RdfSerializerSession(ctx, args);<a name="line.154"></a>
-<span class="sourceLineNo">155</span>   }<a name="line.155"></a>
-<span class="sourceLineNo">156</span>}<a name="line.156"></a>
+<span class="sourceLineNo">078</span>      /**<a name="line.78"></a>
+<span class="sourceLineNo">079</span>       * Constructor.<a name="line.79"></a>
+<span class="sourceLineNo">080</span>       * <a name="line.80"></a>
+<span class="sourceLineNo">081</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.81"></a>
+<span class="sourceLineNo">082</span>       */<a name="line.82"></a>
+<span class="sourceLineNo">083</span>      public XmlAbbrev(PropertyStore propertyStore) {<a name="line.83"></a>
+<span class="sourceLineNo">084</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML_ABBREV), "text/xml+rdf", "text/xml+rdf+abbrev");<a name="line.84"></a>
+<span class="sourceLineNo">085</span>      }<a name="line.85"></a>
+<span class="sourceLineNo">086</span>   }<a name="line.86"></a>
+<span class="sourceLineNo">087</span><a name="line.87"></a>
+<span class="sourceLineNo">088</span>   /** Produces N-Triple output */<a name="line.88"></a>
+<span class="sourceLineNo">089</span>   public static class NTriple extends RdfSerializer {<a name="line.89"></a>
+<span class="sourceLineNo">090</span><a name="line.90"></a>
+<span class="sourceLineNo">091</span>      /**<a name="line.91"></a>
+<span class="sourceLineNo">092</span>       * Constructor.<a name="line.92"></a>
+<span class="sourceLineNo">093</span>       * <a name="line.93"></a>
+<span class="sourceLineNo">094</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.94"></a>
+<span class="sourceLineNo">095</span>       */<a name="line.95"></a>
+<span class="sourceLineNo">096</span>      public NTriple(PropertyStore propertyStore) {<a name="line.96"></a>
+<span class="sourceLineNo">097</span>         super(propertyStore.copy().append(RDF_language, LANG_NTRIPLE), "text/n-triple");<a name="line.97"></a>
+<span class="sourceLineNo">098</span>      }<a name="line.98"></a>
+<span class="sourceLineNo">099</span>   }<a name="line.99"></a>
+<span class="sourceLineNo">100</span><a name="line.100"></a>
+<span class="sourceLineNo">101</span>   /** Produces Turtle output */<a name="line.101"></a>
+<span class="sourceLineNo">102</span>   public static class Turtle extends RdfSerializer {<a name="line.102"></a>
+<span class="sourceLineNo">103</span><a name="line.103"></a>
+<span class="sourceLineNo">104</span>      /**<a name="line.104"></a>
+<span class="sourceLineNo">105</span>       * Constructor.<a name="line.105"></a>
+<span class="sourceLineNo">106</span>       * <a name="line.106"></a>
+<span class="sourceLineNo">107</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.107"></a>
+<span class="sourceLineNo">108</span>       */<a name="line.108"></a>
+<span class="sourceLineNo">109</span>      public Turtle(PropertyStore propertyStore) {<a name="line.109"></a>
+<span class="sourceLineNo">110</span>         super(propertyStore.copy().append(RDF_language, LANG_TURTLE), "text/turtle");<a name="line.110"></a>
+<span class="sourceLineNo">111</span>      }<a name="line.111"></a>
+<span class="sourceLineNo">112</span>   }<a name="line.112"></a>
+<span class="sourceLineNo">113</span><a name="line.113"></a>
+<span class="sourceLineNo">114</span>   /** Produces N3 output */<a name="line.114"></a>
+<span class="sourceLineNo">115</span>   public static class N3 extends RdfSerializer {<a name="line.115"></a>
+<span class="sourceLineNo">116</span><a name="line.116"></a>
+<span class="sourceLineNo">117</span>      /**<a name="line.117"></a>
+<span class="sourceLineNo">118</span>       * Constructor.<a name="line.118"></a>
+<span class="sourceLineNo">119</span>       * <a name="line.119"></a>
+<span class="sourceLineNo">120</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.120"></a>
+<span class="sourceLineNo">121</span>       */<a name="line.121"></a>
+<span class="sourceLineNo">122</span>      public N3(PropertyStore propertyStore) {<a name="line.122"></a>
+<span class="sourceLineNo">123</span>         super(propertyStore.copy().append(RDF_language, LANG_N3), "text/n3");<a name="line.123"></a>
+<span class="sourceLineNo">124</span>      }<a name="line.124"></a>
+<span class="sourceLineNo">125</span>   }<a name="line.125"></a>
+<span class="sourceLineNo">126</span><a name="line.126"></a>
+<span class="sourceLineNo">127</span><a name="line.127"></a>
+<span class="sourceLineNo">128</span>   private final RdfSerializerContext ctx;<a name="line.128"></a>
+<span class="sourceLineNo">129</span><a name="line.129"></a>
+<span class="sourceLineNo">130</span>   /**<a name="line.130"></a>
+<span class="sourceLineNo">131</span>    * Constructor.<a name="line.131"></a>
+<span class="sourceLineNo">132</span>    *<a name="line.132"></a>
+<span class="sourceLineNo">133</span>    * @param propertyStore<a name="line.133"></a>
+<span class="sourceLineNo">134</span>    *    The property store containing all the settings for this object.<a name="line.134"></a>
+<span class="sourceLineNo">135</span>    * @param produces<a name="line.135"></a>
+<span class="sourceLineNo">136</span>    *    The media type that this serializer produces.<a name="line.136"></a>
+<span class="sourceLineNo">137</span>    * @param accept<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    *    The accept media types that the serializer can handle.<a name="line.138"></a>
+<span class="sourceLineNo">139</span>    *    &lt;p&gt;<a name="line.139"></a>
+<span class="sourceLineNo">140</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.140"></a>
+<span class="sourceLineNo">141</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.141"></a>
+<span class="sourceLineNo">142</span>    *    &lt;p&gt;<a name="line.142"></a>
+<span class="sourceLineNo">143</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.143"></a>
+<span class="sourceLineNo">144</span>    *    &lt;p&gt;<a name="line.144"></a>
+<span class="sourceLineNo">145</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.146"></a>
+<span class="sourceLineNo">147</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.147"></a>
+<span class="sourceLineNo">148</span>    *    &lt;br&gt;...or...<a name="line.148"></a>
+<span class="sourceLineNo">149</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.149"></a>
+<span class="sourceLineNo">150</span>    */<a name="line.150"></a>
+<span class="sourceLineNo">151</span>   public RdfSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.151"></a>
+<span class="sourceLineNo">152</span>      super(propertyStore, produces, accept);<a name="line.152"></a>
+<span class="sourceLineNo">153</span>      this.ctx = createContext(RdfSerializerContext.class);<a name="line.153"></a>
+<span class="sourceLineNo">154</span>   }<a name="line.154"></a>
+<span class="sourceLineNo">155</span><a name="line.155"></a>
+<span class="sourceLineNo">156</span>   @Override /* CoreObject */<a name="line.156"></a>
+<span class="sourceLineNo">157</span>   public RdfSerializerBuilder builder() {<a name="line.157"></a>
+<span class="sourceLineNo">158</span>      return new RdfSerializerBuilder(propertyStore);<a name="line.158"></a>
+<span class="sourceLineNo">159</span>   }<a name="line.159"></a>
+<span class="sourceLineNo">160</span><a name="line.160"></a>
+<span class="sourceLineNo">161</span>   @Override /* Serializer */<a name="line.161"></a>
+<span class="sourceLineNo">162</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.162"></a>
+<span class="sourceLineNo">163</span>      return new RdfSerializerSession(ctx, args);<a name="line.163"></a>
+<span class="sourceLineNo">164</span>   }<a name="line.164"></a>
+<span class="sourceLineNo">165</span>}<a name="line.165"></a>
 
 
 


[19/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/serializer/Serializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/serializer/Serializer.html b/content/site/apidocs/src-html/org/apache/juneau/serializer/Serializer.html
index 4c51b7b..d7380fa 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/serializer/Serializer.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/serializer/Serializer.html
@@ -20,210 +20,194 @@
 <span class="sourceLineNo">012</span>// ***************************************************************************************************************************<a name="line.12"></a>
 <span class="sourceLineNo">013</span>package org.apache.juneau.serializer;<a name="line.13"></a>
 <span class="sourceLineNo">014</span><a name="line.14"></a>
-<span class="sourceLineNo">015</span>import static org.apache.juneau.internal.StringUtils.*;<a name="line.15"></a>
-<span class="sourceLineNo">016</span>import static org.apache.juneau.internal.ReflectionUtils.*;<a name="line.16"></a>
-<span class="sourceLineNo">017</span><a name="line.17"></a>
-<span class="sourceLineNo">018</span>import java.io.*;<a name="line.18"></a>
+<span class="sourceLineNo">015</span>import java.io.*;<a name="line.15"></a>
+<span class="sourceLineNo">016</span><a name="line.16"></a>
+<span class="sourceLineNo">017</span>import org.apache.juneau.*;<a name="line.17"></a>
+<span class="sourceLineNo">018</span>import org.apache.juneau.http.*;<a name="line.18"></a>
 <span class="sourceLineNo">019</span><a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span>import org.apache.juneau.annotation.*;<a name="line.21"></a>
-<span class="sourceLineNo">022</span>import org.apache.juneau.http.*;<a name="line.22"></a>
-<span class="sourceLineNo">023</span><a name="line.23"></a>
-<span class="sourceLineNo">024</span>/**<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * Parent class for all Juneau serializers.<a name="line.25"></a>
+<span class="sourceLineNo">020</span>/**<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * Parent class for all Juneau serializers.<a name="line.21"></a>
+<span class="sourceLineNo">022</span> *<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * Base serializer class that serves as the parent class for all serializers.<a name="line.25"></a>
 <span class="sourceLineNo">026</span> *<a name="line.26"></a>
-<span class="sourceLineNo">027</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> *<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * Base serializer class that serves as the parent class for all serializers.<a name="line.29"></a>
-<span class="sourceLineNo">030</span> *<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * &lt;p&gt;<a name="line.31"></a>
-<span class="sourceLineNo">032</span> * The purpose of this class is:<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;ul&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *    &lt;li&gt;Maintain a read-only configuration state of a serializer (i.e. {@link SerializerContext}).<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *    &lt;li&gt;Create session objects used for serializing POJOs (i.e. {@link SerializerSession}).<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *    &lt;li&gt;Provide convenience methods for serializing POJOs without having to construct session objects.<a name="line.36"></a>
-<span class="sourceLineNo">037</span> * &lt;/ul&gt;<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *<a name="line.38"></a>
-<span class="sourceLineNo">039</span> * &lt;p&gt;<a name="line.39"></a>
-<span class="sourceLineNo">040</span> * Subclasses should extend directly from {@link OutputStreamSerializer} or {@link WriterSerializer} depending on<a name="line.40"></a>
-<span class="sourceLineNo">041</span> * whether it's a stream or character based serializer.<a name="line.41"></a>
-<span class="sourceLineNo">042</span> *<a name="line.42"></a>
-<span class="sourceLineNo">043</span> * &lt;h6 class='topic'&gt;@Produces annotation&lt;/h6&gt;<a name="line.43"></a>
-<span class="sourceLineNo">044</span> *<a name="line.44"></a>
-<span class="sourceLineNo">045</span> * The media types that this serializer can produce is specified through the {@link Produces @Produces} annotation.<a name="line.45"></a>
-<span class="sourceLineNo">046</span> * &lt;br&gt;<a name="line.46"></a>
-<span class="sourceLineNo">047</span> * However, the media types can also be specified programmatically by overriding the {@link #getMediaTypes()}<a name="line.47"></a>
-<span class="sourceLineNo">048</span> * and {@link #getResponseContentType()} methods.<a name="line.48"></a>
-<span class="sourceLineNo">049</span> */<a name="line.49"></a>
-<span class="sourceLineNo">050</span>public abstract class Serializer extends CoreObject {<a name="line.50"></a>
-<span class="sourceLineNo">051</span><a name="line.51"></a>
-<span class="sourceLineNo">052</span>   private final MediaType[] mediaTypes;<a name="line.52"></a>
-<span class="sourceLineNo">053</span>   private final MediaType contentType;<a name="line.53"></a>
-<span class="sourceLineNo">054</span><a name="line.54"></a>
-<span class="sourceLineNo">055</span>   // Hidden constructors to force subclass from OuputStreamSerializer or WriterSerializer.<a name="line.55"></a>
-<span class="sourceLineNo">056</span>   Serializer(PropertyStore propertyStore) {<a name="line.56"></a>
-<span class="sourceLineNo">057</span>      super(propertyStore);<a name="line.57"></a>
+<span class="sourceLineNo">027</span> * &lt;p&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * The purpose of this class is:<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;ul&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> *    &lt;li&gt;Maintain a read-only configuration state of a serializer (i.e. {@link SerializerContext}).<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *    &lt;li&gt;Create session objects used for serializing POJOs (i.e. {@link SerializerSession}).<a name="line.31"></a>
+<span class="sourceLineNo">032</span> *    &lt;li&gt;Provide convenience methods for serializing POJOs without having to construct session objects.<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * &lt;/ul&gt;<a name="line.33"></a>
+<span class="sourceLineNo">034</span> *<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * &lt;p&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span> * Subclasses should extend directly from {@link OutputStreamSerializer} or {@link WriterSerializer} depending on<a name="line.36"></a>
+<span class="sourceLineNo">037</span> * whether it's a stream or character based serializer.<a name="line.37"></a>
+<span class="sourceLineNo">038</span> */<a name="line.38"></a>
+<span class="sourceLineNo">039</span>public abstract class Serializer extends CoreObject {<a name="line.39"></a>
+<span class="sourceLineNo">040</span><a name="line.40"></a>
+<span class="sourceLineNo">041</span>   private final MediaType[] accept;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>   private final MediaType produces;<a name="line.42"></a>
+<span class="sourceLineNo">043</span><a name="line.43"></a>
+<span class="sourceLineNo">044</span>   // Hidden constructors to force subclass from OuputStreamSerializer or WriterSerializer.<a name="line.44"></a>
+<span class="sourceLineNo">045</span>   Serializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.45"></a>
+<span class="sourceLineNo">046</span>      super(propertyStore);<a name="line.46"></a>
+<span class="sourceLineNo">047</span><a name="line.47"></a>
+<span class="sourceLineNo">048</span>      this.produces = MediaType.forString(produces);<a name="line.48"></a>
+<span class="sourceLineNo">049</span>      if (accept.length == 0) {<a name="line.49"></a>
+<span class="sourceLineNo">050</span>         this.accept = new MediaType[]{this.produces};<a name="line.50"></a>
+<span class="sourceLineNo">051</span>      } else {<a name="line.51"></a>
+<span class="sourceLineNo">052</span>         this.accept = new MediaType[accept.length];<a name="line.52"></a>
+<span class="sourceLineNo">053</span>         for (int i = 0; i &lt; accept.length; i++) {<a name="line.53"></a>
+<span class="sourceLineNo">054</span>            this.accept[i] = MediaType.forString(accept[i]);<a name="line.54"></a>
+<span class="sourceLineNo">055</span>         }<a name="line.55"></a>
+<span class="sourceLineNo">056</span>      }<a name="line.56"></a>
+<span class="sourceLineNo">057</span>   }<a name="line.57"></a>
 <span class="sourceLineNo">058</span><a name="line.58"></a>
-<span class="sourceLineNo">059</span>      Produces p = getAnnotation(Produces.class, getClass());<a name="line.59"></a>
-<span class="sourceLineNo">060</span>      if (p == null)<a name="line.60"></a>
-<span class="sourceLineNo">061</span>         throw new FormattedRuntimeException("Class ''{0}'' is missing the @Produces annotation", getClass());<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span>      String[] mt = split(p.value());<a name="line.63"></a>
-<span class="sourceLineNo">064</span>      this.mediaTypes = new MediaType[mt.length];<a name="line.64"></a>
-<span class="sourceLineNo">065</span>      for (int i = 0; i &lt; mt.length; i++) {<a name="line.65"></a>
-<span class="sourceLineNo">066</span>         mediaTypes[i] = MediaType.forString(mt[i]);<a name="line.66"></a>
-<span class="sourceLineNo">067</span>      }<a name="line.67"></a>
-<span class="sourceLineNo">068</span><a name="line.68"></a>
-<span class="sourceLineNo">069</span>      String ct = p.contentType().isEmpty() ? this.mediaTypes[0].toString() : p.contentType();<a name="line.69"></a>
-<span class="sourceLineNo">070</span>      contentType = ct.isEmpty() ? null : MediaType.forString(ct);<a name="line.70"></a>
-<span class="sourceLineNo">071</span>   }<a name="line.71"></a>
-<span class="sourceLineNo">072</span><a name="line.72"></a>
-<span class="sourceLineNo">073</span>   @Override /* CoreObject */<a name="line.73"></a>
-<span class="sourceLineNo">074</span>   public SerializerBuilder builder() {<a name="line.74"></a>
-<span class="sourceLineNo">075</span>      return new SerializerBuilder(propertyStore);<a name="line.75"></a>
-<span class="sourceLineNo">076</span>   }<a name="line.76"></a>
-<span class="sourceLineNo">077</span><a name="line.77"></a>
-<span class="sourceLineNo">078</span>   //--------------------------------------------------------------------------------<a name="line.78"></a>
-<span class="sourceLineNo">079</span>   // Abstract methods<a name="line.79"></a>
-<span class="sourceLineNo">080</span>   //--------------------------------------------------------------------------------<a name="line.80"></a>
-<span class="sourceLineNo">081</span><a name="line.81"></a>
-<span class="sourceLineNo">082</span>   /**<a name="line.82"></a>
-<span class="sourceLineNo">083</span>    * Returns &lt;jk&gt;true&lt;/jk&gt; if this serializer subclasses from {@link WriterSerializer}.<a name="line.83"></a>
-<span class="sourceLineNo">084</span>    *<a name="line.84"></a>
-<span class="sourceLineNo">085</span>    * @return &lt;jk&gt;true&lt;/jk&gt; if this serializer subclasses from {@link WriterSerializer}.<a name="line.85"></a>
-<span class="sourceLineNo">086</span>    */<a name="line.86"></a>
-<span class="sourceLineNo">087</span>   public abstract boolean isWriterSerializer();<a name="line.87"></a>
-<span class="sourceLineNo">088</span><a name="line.88"></a>
-<span class="sourceLineNo">089</span>   /**<a name="line.89"></a>
-<span class="sourceLineNo">090</span>    * Create the session object used for actual serialization of objects.<a name="line.90"></a>
-<span class="sourceLineNo">091</span>    *<a name="line.91"></a>
-<span class="sourceLineNo">092</span>    * @param args<a name="line.92"></a>
-<span class="sourceLineNo">093</span>    *    Runtime arguments.<a name="line.93"></a>
-<span class="sourceLineNo">094</span>    *    These specify session-level information such as locale and URI context.<a name="line.94"></a>
-<span class="sourceLineNo">095</span>    *    It also include session-level properties that override the properties defined on the bean and serializer<a name="line.95"></a>
-<span class="sourceLineNo">096</span>    *    contexts.<a name="line.96"></a>
-<span class="sourceLineNo">097</span>    *    &lt;br&gt;If &lt;jk&gt;null&lt;/jk&gt;, defaults to {@link SerializerSessionArgs#DEFAULT}.<a name="line.97"></a>
+<span class="sourceLineNo">059</span>   @Override /* CoreObject */<a name="line.59"></a>
+<span class="sourceLineNo">060</span>   public SerializerBuilder builder() {<a name="line.60"></a>
+<span class="sourceLineNo">061</span>      return new SerializerBuilder(propertyStore);<a name="line.61"></a>
+<span class="sourceLineNo">062</span>   }<a name="line.62"></a>
+<span class="sourceLineNo">063</span><a name="line.63"></a>
+<span class="sourceLineNo">064</span>   //--------------------------------------------------------------------------------<a name="line.64"></a>
+<span class="sourceLineNo">065</span>   // Abstract methods<a name="line.65"></a>
+<span class="sourceLineNo">066</span>   //--------------------------------------------------------------------------------<a name="line.66"></a>
+<span class="sourceLineNo">067</span><a name="line.67"></a>
+<span class="sourceLineNo">068</span>   /**<a name="line.68"></a>
+<span class="sourceLineNo">069</span>    * Returns &lt;jk&gt;true&lt;/jk&gt; if this serializer subclasses from {@link WriterSerializer}.<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    *<a name="line.70"></a>
+<span class="sourceLineNo">071</span>    * @return &lt;jk&gt;true&lt;/jk&gt; if this serializer subclasses from {@link WriterSerializer}.<a name="line.71"></a>
+<span class="sourceLineNo">072</span>    */<a name="line.72"></a>
+<span class="sourceLineNo">073</span>   public abstract boolean isWriterSerializer();<a name="line.73"></a>
+<span class="sourceLineNo">074</span><a name="line.74"></a>
+<span class="sourceLineNo">075</span>   /**<a name="line.75"></a>
+<span class="sourceLineNo">076</span>    * Create the session object used for actual serialization of objects.<a name="line.76"></a>
+<span class="sourceLineNo">077</span>    *<a name="line.77"></a>
+<span class="sourceLineNo">078</span>    * @param args<a name="line.78"></a>
+<span class="sourceLineNo">079</span>    *    Runtime arguments.<a name="line.79"></a>
+<span class="sourceLineNo">080</span>    *    These specify session-level information such as locale and URI context.<a name="line.80"></a>
+<span class="sourceLineNo">081</span>    *    It also include session-level properties that override the properties defined on the bean and serializer<a name="line.81"></a>
+<span class="sourceLineNo">082</span>    *    contexts.<a name="line.82"></a>
+<span class="sourceLineNo">083</span>    * @return<a name="line.83"></a>
+<span class="sourceLineNo">084</span>    *    The new session object.<a name="line.84"></a>
+<span class="sourceLineNo">085</span>    *    &lt;br&gt;Note that you must call {@link SerializerSession#close()} on this object to perform any necessary<a name="line.85"></a>
+<span class="sourceLineNo">086</span>    *    cleanup.<a name="line.86"></a>
+<span class="sourceLineNo">087</span>    */<a name="line.87"></a>
+<span class="sourceLineNo">088</span>   public abstract SerializerSession createSession(SerializerSessionArgs args);<a name="line.88"></a>
+<span class="sourceLineNo">089</span><a name="line.89"></a>
+<span class="sourceLineNo">090</span><a name="line.90"></a>
+<span class="sourceLineNo">091</span>   //--------------------------------------------------------------------------------<a name="line.91"></a>
+<span class="sourceLineNo">092</span>   // Convenience methods<a name="line.92"></a>
+<span class="sourceLineNo">093</span>   //--------------------------------------------------------------------------------<a name="line.93"></a>
+<span class="sourceLineNo">094</span><a name="line.94"></a>
+<span class="sourceLineNo">095</span>   /**<a name="line.95"></a>
+<span class="sourceLineNo">096</span>    * Shortcut for calling &lt;code&gt;createSession(&lt;jk&gt;null&lt;/jk&gt;)&lt;/code&gt;.<a name="line.96"></a>
+<span class="sourceLineNo">097</span>    *<a name="line.97"></a>
 <span class="sourceLineNo">098</span>    * @return<a name="line.98"></a>
 <span class="sourceLineNo">099</span>    *    The new session object.<a name="line.99"></a>
 <span class="sourceLineNo">100</span>    *    &lt;br&gt;Note that you must call {@link SerializerSession#close()} on this object to perform any necessary<a name="line.100"></a>
 <span class="sourceLineNo">101</span>    *    cleanup.<a name="line.101"></a>
 <span class="sourceLineNo">102</span>    */<a name="line.102"></a>
-<span class="sourceLineNo">103</span>   public abstract SerializerSession createSession(SerializerSessionArgs args);<a name="line.103"></a>
-<span class="sourceLineNo">104</span><a name="line.104"></a>
-<span class="sourceLineNo">105</span><a name="line.105"></a>
-<span class="sourceLineNo">106</span>   //--------------------------------------------------------------------------------<a name="line.106"></a>
-<span class="sourceLineNo">107</span>   // Convenience methods<a name="line.107"></a>
-<span class="sourceLineNo">108</span>   //--------------------------------------------------------------------------------<a name="line.108"></a>
-<span class="sourceLineNo">109</span><a name="line.109"></a>
-<span class="sourceLineNo">110</span>   /**<a name="line.110"></a>
-<span class="sourceLineNo">111</span>    * Shortcut for calling &lt;code&gt;createSession(&lt;jk&gt;null&lt;/jk&gt;)&lt;/code&gt;.<a name="line.111"></a>
-<span class="sourceLineNo">112</span>    *<a name="line.112"></a>
-<span class="sourceLineNo">113</span>    * @return<a name="line.113"></a>
-<span class="sourceLineNo">114</span>    *    The new session object.<a name="line.114"></a>
-<span class="sourceLineNo">115</span>    *    &lt;br&gt;Note that you must call {@link SerializerSession#close()} on this object to perform any necessary<a name="line.115"></a>
-<span class="sourceLineNo">116</span>    *    cleanup.<a name="line.116"></a>
-<span class="sourceLineNo">117</span>    */<a name="line.117"></a>
-<span class="sourceLineNo">118</span>   public final SerializerSession createSession() {<a name="line.118"></a>
-<span class="sourceLineNo">119</span>      return createSession(null);<a name="line.119"></a>
-<span class="sourceLineNo">120</span>   }<a name="line.120"></a>
-<span class="sourceLineNo">121</span><a name="line.121"></a>
-<span class="sourceLineNo">122</span>   /**<a name="line.122"></a>
-<span class="sourceLineNo">123</span>    * Serializes a POJO to the specified output stream or writer.<a name="line.123"></a>
-<span class="sourceLineNo">124</span>    *<a name="line.124"></a>
-<span class="sourceLineNo">125</span>    * &lt;p&gt;<a name="line.125"></a>
-<span class="sourceLineNo">126</span>    * Equivalent to calling &lt;code&gt;serializer.createSession().serialize(o, output);&lt;/code&gt;<a name="line.126"></a>
-<span class="sourceLineNo">127</span>    *<a name="line.127"></a>
-<span class="sourceLineNo">128</span>    * @param o The object to serialize.<a name="line.128"></a>
-<span class="sourceLineNo">129</span>    * @param output<a name="line.129"></a>
-<span class="sourceLineNo">130</span>    *    The output object.<a name="line.130"></a>
-<span class="sourceLineNo">131</span>    *    &lt;br&gt;Character-based serializers can handle the following output class types:<a name="line.131"></a>
-<span class="sourceLineNo">132</span>    *    &lt;ul&gt;<a name="line.132"></a>
-<span class="sourceLineNo">133</span>    *       &lt;li&gt;{@link Writer}<a name="line.133"></a>
-<span class="sourceLineNo">134</span>    *       &lt;li&gt;{@link OutputStream} - Output will be written as UTF-8 encoded stream.<a name="line.134"></a>
-<span class="sourceLineNo">135</span>    *       &lt;li&gt;{@link File} - Output will be written as system-default encoded stream.<a name="line.135"></a>
-<span class="sourceLineNo">136</span>    *       &lt;li&gt;{@link StringBuilder} - Output will be written to the specified string builder.<a name="line.136"></a>
-<span class="sourceLineNo">137</span>    *    &lt;/ul&gt;<a name="line.137"></a>
-<span class="sourceLineNo">138</span>    *    &lt;br&gt;Stream-based serializers can handle the following output class types:<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    *    &lt;ul&gt;<a name="line.139"></a>
-<span class="sourceLineNo">140</span>    *       &lt;li&gt;{@link OutputStream}<a name="line.140"></a>
-<span class="sourceLineNo">141</span>    *       &lt;li&gt;{@link File}<a name="line.141"></a>
-<span class="sourceLineNo">142</span>    *    &lt;/ul&gt;<a name="line.142"></a>
-<span class="sourceLineNo">143</span>    * @throws SerializeException If a problem occurred trying to convert the output.<a name="line.143"></a>
-<span class="sourceLineNo">144</span>    */<a name="line.144"></a>
-<span class="sourceLineNo">145</span>   public final void serialize(Object o, Object output) throws SerializeException {<a name="line.145"></a>
-<span class="sourceLineNo">146</span>      SerializerSession s = createSession();<a name="line.146"></a>
-<span class="sourceLineNo">147</span>      try {<a name="line.147"></a>
-<span class="sourceLineNo">148</span>         s.serialize(o, output);<a name="line.148"></a>
-<span class="sourceLineNo">149</span>      } finally {<a name="line.149"></a>
-<span class="sourceLineNo">150</span>         s.close();<a name="line.150"></a>
-<span class="sourceLineNo">151</span>      }<a name="line.151"></a>
-<span class="sourceLineNo">152</span>   }<a name="line.152"></a>
-<span class="sourceLineNo">153</span><a name="line.153"></a>
-<span class="sourceLineNo">154</span>   /**<a name="line.154"></a>
-<span class="sourceLineNo">155</span>    * Shortcut method for serializing objects directly to either a &lt;code&gt;String&lt;/code&gt; or &lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;[]&lt;/code&gt;<a name="line.155"></a>
-<span class="sourceLineNo">156</span>    * depending on the serializer type.<a name="line.156"></a>
-<span class="sourceLineNo">157</span>    *<a name="line.157"></a>
-<span class="sourceLineNo">158</span>    * @param o The object to serialize.<a name="line.158"></a>
-<span class="sourceLineNo">159</span>    * @return<a name="line.159"></a>
-<span class="sourceLineNo">160</span>    *    The serialized object.<a name="line.160"></a>
-<span class="sourceLineNo">161</span>    *    &lt;br&gt;Character-based serializers will return a &lt;code&gt;String&lt;/code&gt;<a name="line.161"></a>
-<span class="sourceLineNo">162</span>    *    &lt;br&gt;Stream-based serializers will return a &lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;[]&lt;/code&gt;<a name="line.162"></a>
-<span class="sourceLineNo">163</span>    * @throws SerializeException If a problem occurred trying to convert the output.<a name="line.163"></a>
-<span class="sourceLineNo">164</span>    */<a name="line.164"></a>
-<span class="sourceLineNo">165</span>   public Object serialize(Object o) throws SerializeException {<a name="line.165"></a>
-<span class="sourceLineNo">166</span>      SerializerSession s = createSession();<a name="line.166"></a>
-<span class="sourceLineNo">167</span>      try {<a name="line.167"></a>
-<span class="sourceLineNo">168</span>         return s.serialize(o);<a name="line.168"></a>
-<span class="sourceLineNo">169</span>      } finally {<a name="line.169"></a>
-<span class="sourceLineNo">170</span>         s.close();<a name="line.170"></a>
-<span class="sourceLineNo">171</span>      }<a name="line.171"></a>
-<span class="sourceLineNo">172</span>   }<a name="line.172"></a>
+<span class="sourceLineNo">103</span>   public final SerializerSession createSession() {<a name="line.103"></a>
+<span class="sourceLineNo">104</span>      return createSession(createDefaultSessionArgs());<a name="line.104"></a>
+<span class="sourceLineNo">105</span>   }<a name="line.105"></a>
+<span class="sourceLineNo">106</span><a name="line.106"></a>
+<span class="sourceLineNo">107</span>   /**<a name="line.107"></a>
+<span class="sourceLineNo">108</span>    * Creates the session arguments object that gets passed to the {@link #createSession(SerializerSessionArgs)} method.<a name="line.108"></a>
+<span class="sourceLineNo">109</span>    *<a name="line.109"></a>
+<span class="sourceLineNo">110</span>    * @return<a name="line.110"></a>
+<span class="sourceLineNo">111</span>    *    A new default session arguments object.<a name="line.111"></a>
+<span class="sourceLineNo">112</span>    *    &lt;p&gt;The arguments can be modified before passing to the {@link #createSession(SerializerSessionArgs)}.<a name="line.112"></a>
+<span class="sourceLineNo">113</span>    */<a name="line.113"></a>
+<span class="sourceLineNo">114</span>   public final SerializerSessionArgs createDefaultSessionArgs() {<a name="line.114"></a>
+<span class="sourceLineNo">115</span>      return new SerializerSessionArgs(ObjectMap.EMPTY_MAP, null, null, null, getResponseContentType(), null);<a name="line.115"></a>
+<span class="sourceLineNo">116</span>   }<a name="line.116"></a>
+<span class="sourceLineNo">117</span><a name="line.117"></a>
+<span class="sourceLineNo">118</span>   /**<a name="line.118"></a>
+<span class="sourceLineNo">119</span>    * Serializes a POJO to the specified output stream or writer.<a name="line.119"></a>
+<span class="sourceLineNo">120</span>    *<a name="line.120"></a>
+<span class="sourceLineNo">121</span>    * &lt;p&gt;<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    * Equivalent to calling &lt;code&gt;serializer.createSession().serialize(o, output);&lt;/code&gt;<a name="line.122"></a>
+<span class="sourceLineNo">123</span>    *<a name="line.123"></a>
+<span class="sourceLineNo">124</span>    * @param o The object to serialize.<a name="line.124"></a>
+<span class="sourceLineNo">125</span>    * @param output<a name="line.125"></a>
+<span class="sourceLineNo">126</span>    *    The output object.<a name="line.126"></a>
+<span class="sourceLineNo">127</span>    *    &lt;br&gt;Character-based serializers can handle the following output class types:<a name="line.127"></a>
+<span class="sourceLineNo">128</span>    *    &lt;ul&gt;<a name="line.128"></a>
+<span class="sourceLineNo">129</span>    *       &lt;li&gt;{@link Writer}<a name="line.129"></a>
+<span class="sourceLineNo">130</span>    *       &lt;li&gt;{@link OutputStream} - Output will be written as UTF-8 encoded stream.<a name="line.130"></a>
+<span class="sourceLineNo">131</span>    *       &lt;li&gt;{@link File} - Output will be written as system-default encoded stream.<a name="line.131"></a>
+<span class="sourceLineNo">132</span>    *       &lt;li&gt;{@link StringBuilder} - Output will be written to the specified string builder.<a name="line.132"></a>
+<span class="sourceLineNo">133</span>    *    &lt;/ul&gt;<a name="line.133"></a>
+<span class="sourceLineNo">134</span>    *    &lt;br&gt;Stream-based serializers can handle the following output class types:<a name="line.134"></a>
+<span class="sourceLineNo">135</span>    *    &lt;ul&gt;<a name="line.135"></a>
+<span class="sourceLineNo">136</span>    *       &lt;li&gt;{@link OutputStream}<a name="line.136"></a>
+<span class="sourceLineNo">137</span>    *       &lt;li&gt;{@link File}<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    *    &lt;/ul&gt;<a name="line.138"></a>
+<span class="sourceLineNo">139</span>    * @throws SerializeException If a problem occurred trying to convert the output.<a name="line.139"></a>
+<span class="sourceLineNo">140</span>    */<a name="line.140"></a>
+<span class="sourceLineNo">141</span>   public final void serialize(Object o, Object output) throws SerializeException {<a name="line.141"></a>
+<span class="sourceLineNo">142</span>      SerializerSession s = createSession();<a name="line.142"></a>
+<span class="sourceLineNo">143</span>      try {<a name="line.143"></a>
+<span class="sourceLineNo">144</span>         s.serialize(o, output);<a name="line.144"></a>
+<span class="sourceLineNo">145</span>      } finally {<a name="line.145"></a>
+<span class="sourceLineNo">146</span>         s.close();<a name="line.146"></a>
+<span class="sourceLineNo">147</span>      }<a name="line.147"></a>
+<span class="sourceLineNo">148</span>   }<a name="line.148"></a>
+<span class="sourceLineNo">149</span><a name="line.149"></a>
+<span class="sourceLineNo">150</span>   /**<a name="line.150"></a>
+<span class="sourceLineNo">151</span>    * Shortcut method for serializing objects directly to either a &lt;code&gt;String&lt;/code&gt; or &lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;[]&lt;/code&gt;<a name="line.151"></a>
+<span class="sourceLineNo">152</span>    * depending on the serializer type.<a name="line.152"></a>
+<span class="sourceLineNo">153</span>    *<a name="line.153"></a>
+<span class="sourceLineNo">154</span>    * @param o The object to serialize.<a name="line.154"></a>
+<span class="sourceLineNo">155</span>    * @return<a name="line.155"></a>
+<span class="sourceLineNo">156</span>    *    The serialized object.<a name="line.156"></a>
+<span class="sourceLineNo">157</span>    *    &lt;br&gt;Character-based serializers will return a &lt;code&gt;String&lt;/code&gt;<a name="line.157"></a>
+<span class="sourceLineNo">158</span>    *    &lt;br&gt;Stream-based serializers will return a &lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;[]&lt;/code&gt;<a name="line.158"></a>
+<span class="sourceLineNo">159</span>    * @throws SerializeException If a problem occurred trying to convert the output.<a name="line.159"></a>
+<span class="sourceLineNo">160</span>    */<a name="line.160"></a>
+<span class="sourceLineNo">161</span>   public Object serialize(Object o) throws SerializeException {<a name="line.161"></a>
+<span class="sourceLineNo">162</span>      SerializerSession s = createSession();<a name="line.162"></a>
+<span class="sourceLineNo">163</span>      try {<a name="line.163"></a>
+<span class="sourceLineNo">164</span>         return s.serialize(o);<a name="line.164"></a>
+<span class="sourceLineNo">165</span>      } finally {<a name="line.165"></a>
+<span class="sourceLineNo">166</span>         s.close();<a name="line.166"></a>
+<span class="sourceLineNo">167</span>      }<a name="line.167"></a>
+<span class="sourceLineNo">168</span>   }<a name="line.168"></a>
+<span class="sourceLineNo">169</span><a name="line.169"></a>
+<span class="sourceLineNo">170</span>   //--------------------------------------------------------------------------------<a name="line.170"></a>
+<span class="sourceLineNo">171</span>   // Other methods<a name="line.171"></a>
+<span class="sourceLineNo">172</span>   //--------------------------------------------------------------------------------<a name="line.172"></a>
 <span class="sourceLineNo">173</span><a name="line.173"></a>
-<span class="sourceLineNo">174</span>   //--------------------------------------------------------------------------------<a name="line.174"></a>
-<span class="sourceLineNo">175</span>   // Other methods<a name="line.175"></a>
-<span class="sourceLineNo">176</span>   //--------------------------------------------------------------------------------<a name="line.176"></a>
-<span class="sourceLineNo">177</span><a name="line.177"></a>
-<span class="sourceLineNo">178</span>   /**<a name="line.178"></a>
-<span class="sourceLineNo">179</span>    * Returns the media types handled based on the value of the {@link Produces} annotation on the serializer class.<a name="line.179"></a>
-<span class="sourceLineNo">180</span>    *<a name="line.180"></a>
-<span class="sourceLineNo">181</span>    * &lt;p&gt;<a name="line.181"></a>
-<span class="sourceLineNo">182</span>    * This method can be overridden by subclasses to determine the media types programmatically.<a name="line.182"></a>
-<span class="sourceLineNo">183</span>    *<a name="line.183"></a>
-<span class="sourceLineNo">184</span>    * @return The list of media types.  Never &lt;jk&gt;null&lt;/jk&gt;.<a name="line.184"></a>
-<span class="sourceLineNo">185</span>    */<a name="line.185"></a>
-<span class="sourceLineNo">186</span>   public final MediaType[] getMediaTypes() {<a name="line.186"></a>
-<span class="sourceLineNo">187</span>      return mediaTypes;<a name="line.187"></a>
-<span class="sourceLineNo">188</span>   }<a name="line.188"></a>
-<span class="sourceLineNo">189</span><a name="line.189"></a>
-<span class="sourceLineNo">190</span>   /**<a name="line.190"></a>
-<span class="sourceLineNo">191</span>    * Returns the first media type specified on this serializer via the {@link Produces} annotation.<a name="line.191"></a>
+<span class="sourceLineNo">174</span>   /**<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    * Returns the media types handled based on the value of the &lt;code&gt;accept&lt;/code&gt; parameter passed into the constructor.<a name="line.175"></a>
+<span class="sourceLineNo">176</span>    *<a name="line.176"></a>
+<span class="sourceLineNo">177</span>    * @return The list of media types.  Never &lt;jk&gt;null&lt;/jk&gt;.<a name="line.177"></a>
+<span class="sourceLineNo">178</span>    */<a name="line.178"></a>
+<span class="sourceLineNo">179</span>   public final MediaType[] getMediaTypes() {<a name="line.179"></a>
+<span class="sourceLineNo">180</span>      return accept;<a name="line.180"></a>
+<span class="sourceLineNo">181</span>   }<a name="line.181"></a>
+<span class="sourceLineNo">182</span><a name="line.182"></a>
+<span class="sourceLineNo">183</span>   /**<a name="line.183"></a>
+<span class="sourceLineNo">184</span>    * Optional method that returns the response &lt;code&gt;Content-Type&lt;/code&gt; for this serializer if it is different from<a name="line.184"></a>
+<span class="sourceLineNo">185</span>    * the matched media type.<a name="line.185"></a>
+<span class="sourceLineNo">186</span>    *<a name="line.186"></a>
+<span class="sourceLineNo">187</span>    * &lt;p&gt;<a name="line.187"></a>
+<span class="sourceLineNo">188</span>    * This method is specified to override the content type for this serializer.<a name="line.188"></a>
+<span class="sourceLineNo">189</span>    * For example, the {@link org.apache.juneau.json.JsonSerializer.Simple} class returns that it handles media type<a name="line.189"></a>
+<span class="sourceLineNo">190</span>    * &lt;js&gt;"text/json+simple"&lt;/js&gt;, but returns &lt;js&gt;"text/json"&lt;/js&gt; as the actual content type.<a name="line.190"></a>
+<span class="sourceLineNo">191</span>    * This allows clients to request specific 'flavors' of content using specialized &lt;code&gt;Accept&lt;/code&gt; header values.<a name="line.191"></a>
 <span class="sourceLineNo">192</span>    *<a name="line.192"></a>
-<span class="sourceLineNo">193</span>    * @return The media type.<a name="line.193"></a>
-<span class="sourceLineNo">194</span>    */<a name="line.194"></a>
-<span class="sourceLineNo">195</span>   public final MediaType getPrimaryMediaType() {<a name="line.195"></a>
-<span class="sourceLineNo">196</span>      return mediaTypes == null || mediaTypes.length == 0 ? null : mediaTypes[0];<a name="line.196"></a>
-<span class="sourceLineNo">197</span>   }<a name="line.197"></a>
-<span class="sourceLineNo">198</span><a name="line.198"></a>
-<span class="sourceLineNo">199</span>   /**<a name="line.199"></a>
-<span class="sourceLineNo">200</span>    * Optional method that returns the response &lt;code&gt;Content-Type&lt;/code&gt; for this serializer if it is different from<a name="line.200"></a>
-<span class="sourceLineNo">201</span>    * the matched media type.<a name="line.201"></a>
-<span class="sourceLineNo">202</span>    *<a name="line.202"></a>
-<span class="sourceLineNo">203</span>    * &lt;p&gt;<a name="line.203"></a>
-<span class="sourceLineNo">204</span>    * This method is specified to override the content type for this serializer.<a name="line.204"></a>
-<span class="sourceLineNo">205</span>    * For example, the {@link org.apache.juneau.json.JsonSerializer.Simple} class returns that it handles media type<a name="line.205"></a>
-<span class="sourceLineNo">206</span>    * &lt;js&gt;"text/json+simple"&lt;/js&gt;, but returns &lt;js&gt;"text/json"&lt;/js&gt; as the actual content type.<a name="line.206"></a>
-<span class="sourceLineNo">207</span>    * This allows clients to request specific 'flavors' of content using specialized &lt;code&gt;Accept&lt;/code&gt; header values.<a name="line.207"></a>
-<span class="sourceLineNo">208</span>    *<a name="line.208"></a>
-<span class="sourceLineNo">209</span>    * &lt;p&gt;<a name="line.209"></a>
-<span class="sourceLineNo">210</span>    * This method is typically meaningless if the serializer is being used stand-alone (i.e. outside of a REST server<a name="line.210"></a>
-<span class="sourceLineNo">211</span>    * or client).<a name="line.211"></a>
-<span class="sourceLineNo">212</span>    *<a name="line.212"></a>
-<span class="sourceLineNo">213</span>    * @return The response content type.  If &lt;jk&gt;null&lt;/jk&gt;, then the matched media type is used.<a name="line.213"></a>
-<span class="sourceLineNo">214</span>    */<a name="line.214"></a>
-<span class="sourceLineNo">215</span>   public MediaType getResponseContentType() {<a name="line.215"></a>
-<span class="sourceLineNo">216</span>      return contentType;<a name="line.216"></a>
-<span class="sourceLineNo">217</span>   }<a name="line.217"></a>
-<span class="sourceLineNo">218</span>}<a name="line.218"></a>
+<span class="sourceLineNo">193</span>    * &lt;p&gt;<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    * This method is typically meaningless if the serializer is being used stand-alone (i.e. outside of a REST server<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    * or client).<a name="line.195"></a>
+<span class="sourceLineNo">196</span>    *<a name="line.196"></a>
+<span class="sourceLineNo">197</span>    * @return The response content type.  If &lt;jk&gt;null&lt;/jk&gt;, then the matched media type is used.<a name="line.197"></a>
+<span class="sourceLineNo">198</span>    */<a name="line.198"></a>
+<span class="sourceLineNo">199</span>   public final MediaType getResponseContentType() {<a name="line.199"></a>
+<span class="sourceLineNo">200</span>      return produces;<a name="line.200"></a>
+<span class="sourceLineNo">201</span>   }<a name="line.201"></a>
+<span class="sourceLineNo">202</span>}<a name="line.202"></a>
 
 
 



[40/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/html/HtmlDocSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/html/HtmlDocSerializer.html b/content/site/apidocs/src-html/org/apache/juneau/html/HtmlDocSerializer.html
index 5c0f64b..ddf8662 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/html/HtmlDocSerializer.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/html/HtmlDocSerializer.html
@@ -21,56 +21,79 @@
 <span class="sourceLineNo">013</span>package org.apache.juneau.html;<a name="line.13"></a>
 <span class="sourceLineNo">014</span><a name="line.14"></a>
 <span class="sourceLineNo">015</span>import org.apache.juneau.*;<a name="line.15"></a>
-<span class="sourceLineNo">016</span>import org.apache.juneau.annotation.*;<a name="line.16"></a>
-<span class="sourceLineNo">017</span>import org.apache.juneau.serializer.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span><a name="line.18"></a>
-<span class="sourceLineNo">019</span>/**<a name="line.19"></a>
-<span class="sourceLineNo">020</span> * Serializes POJOs to HTTP responses as HTML documents.<a name="line.20"></a>
-<span class="sourceLineNo">021</span> *<a name="line.21"></a>
-<span class="sourceLineNo">022</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.22"></a>
-<span class="sourceLineNo">023</span> *<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/html&lt;/code&gt;<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * &lt;p&gt;<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/html&lt;/code&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * Same as {@link HtmlSerializer}, except wraps the response in &lt;code&gt;&lt;xt&gt;&amp;lt;html&amp;gt;&lt;/code&gt;,<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * &lt;code&gt;&lt;xt&gt;&amp;lt;head&amp;gt;&lt;/code&gt;, and &lt;code&gt;&lt;xt&gt;&amp;lt;body&amp;gt;&lt;/code&gt; tags so that it can be rendered in a browser.<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * This class has the following properties associated with it:<a name="line.35"></a>
-<span class="sourceLineNo">036</span> * &lt;ul&gt;<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *    &lt;li&gt;{@link HtmlDocSerializerContext}<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;{@link BeanContext}<a name="line.38"></a>
-<span class="sourceLineNo">039</span> * &lt;/ul&gt;<a name="line.39"></a>
-<span class="sourceLineNo">040</span> */<a name="line.40"></a>
-<span class="sourceLineNo">041</span>@Produces("text/html")<a name="line.41"></a>
-<span class="sourceLineNo">042</span>@SuppressWarnings("hiding")<a name="line.42"></a>
-<span class="sourceLineNo">043</span>public class HtmlDocSerializer extends HtmlStrippedDocSerializer {<a name="line.43"></a>
-<span class="sourceLineNo">044</span><a name="line.44"></a>
-<span class="sourceLineNo">045</span>   /** Default serializer, all default settings. */<a name="line.45"></a>
-<span class="sourceLineNo">046</span>   public static final HtmlDocSerializer DEFAULT = new HtmlDocSerializer(PropertyStore.create());<a name="line.46"></a>
-<span class="sourceLineNo">047</span><a name="line.47"></a>
+<span class="sourceLineNo">016</span>import org.apache.juneau.serializer.*;<a name="line.16"></a>
+<span class="sourceLineNo">017</span><a name="line.17"></a>
+<span class="sourceLineNo">018</span>/**<a name="line.18"></a>
+<span class="sourceLineNo">019</span> * Serializes POJOs to HTTP responses as HTML documents.<a name="line.19"></a>
+<span class="sourceLineNo">020</span> *<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.21"></a>
+<span class="sourceLineNo">022</span> *<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/html&lt;/code&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * &lt;p&gt;<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/html&lt;/code&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * Same as {@link HtmlSerializer}, except wraps the response in &lt;code&gt;&lt;xt&gt;&amp;lt;html&amp;gt;&lt;/code&gt;,<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * &lt;code&gt;&lt;xt&gt;&amp;lt;head&amp;gt;&lt;/code&gt;, and &lt;code&gt;&lt;xt&gt;&amp;lt;body&amp;gt;&lt;/code&gt; tags so that it can be rendered in a browser.<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * This class has the following properties associated with it:<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * &lt;ul&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *    &lt;li&gt;{@link HtmlDocSerializerContext}<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;{@link BeanContext}<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * &lt;/ul&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span> */<a name="line.39"></a>
+<span class="sourceLineNo">040</span>@SuppressWarnings("hiding")<a name="line.40"></a>
+<span class="sourceLineNo">041</span>public class HtmlDocSerializer extends HtmlStrippedDocSerializer {<a name="line.41"></a>
+<span class="sourceLineNo">042</span><a name="line.42"></a>
+<span class="sourceLineNo">043</span>   /** Default serializer, all default settings. */<a name="line.43"></a>
+<span class="sourceLineNo">044</span>   public static final HtmlDocSerializer DEFAULT = new HtmlDocSerializer(PropertyStore.create());<a name="line.44"></a>
+<span class="sourceLineNo">045</span><a name="line.45"></a>
+<span class="sourceLineNo">046</span><a name="line.46"></a>
+<span class="sourceLineNo">047</span>   final HtmlDocSerializerContext ctx;<a name="line.47"></a>
 <span class="sourceLineNo">048</span><a name="line.48"></a>
-<span class="sourceLineNo">049</span>   final HtmlDocSerializerContext ctx;<a name="line.49"></a>
-<span class="sourceLineNo">050</span><a name="line.50"></a>
-<span class="sourceLineNo">051</span>   /**<a name="line.51"></a>
-<span class="sourceLineNo">052</span>    * Constructor.<a name="line.52"></a>
-<span class="sourceLineNo">053</span>    *<a name="line.53"></a>
-<span class="sourceLineNo">054</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.54"></a>
-<span class="sourceLineNo">055</span>    */<a name="line.55"></a>
-<span class="sourceLineNo">056</span>   public HtmlDocSerializer(PropertyStore propertyStore) {<a name="line.56"></a>
-<span class="sourceLineNo">057</span>      super(propertyStore);<a name="line.57"></a>
-<span class="sourceLineNo">058</span>      this.ctx = createContext(HtmlDocSerializerContext.class);<a name="line.58"></a>
-<span class="sourceLineNo">059</span>   }<a name="line.59"></a>
-<span class="sourceLineNo">060</span><a name="line.60"></a>
-<span class="sourceLineNo">061</span>   @Override /* Serializer */<a name="line.61"></a>
-<span class="sourceLineNo">062</span>   public HtmlDocSerializerSession createSession(SerializerSessionArgs args) {<a name="line.62"></a>
-<span class="sourceLineNo">063</span>      return new HtmlDocSerializerSession(ctx, args);<a name="line.63"></a>
-<span class="sourceLineNo">064</span>   }<a name="line.64"></a>
-<span class="sourceLineNo">065</span>}<a name="line.65"></a>
+<span class="sourceLineNo">049</span>   /**<a name="line.49"></a>
+<span class="sourceLineNo">050</span>    * Constructor.<a name="line.50"></a>
+<span class="sourceLineNo">051</span>    *<a name="line.51"></a>
+<span class="sourceLineNo">052</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.52"></a>
+<span class="sourceLineNo">053</span>    */<a name="line.53"></a>
+<span class="sourceLineNo">054</span>   public HtmlDocSerializer(PropertyStore propertyStore) {<a name="line.54"></a>
+<span class="sourceLineNo">055</span>      this(propertyStore, "text/html");<a name="line.55"></a>
+<span class="sourceLineNo">056</span>   }<a name="line.56"></a>
+<span class="sourceLineNo">057</span><a name="line.57"></a>
+<span class="sourceLineNo">058</span>   /**<a name="line.58"></a>
+<span class="sourceLineNo">059</span>    * Constructor.<a name="line.59"></a>
+<span class="sourceLineNo">060</span>    *<a name="line.60"></a>
+<span class="sourceLineNo">061</span>    * @param propertyStore<a name="line.61"></a>
+<span class="sourceLineNo">062</span>    *    The property store containing all the settings for this object.<a name="line.62"></a>
+<span class="sourceLineNo">063</span>    * @param produces<a name="line.63"></a>
+<span class="sourceLineNo">064</span>    *    The media type that this serializer produces.<a name="line.64"></a>
+<span class="sourceLineNo">065</span>    * @param accept<a name="line.65"></a>
+<span class="sourceLineNo">066</span>    *    The accept media types that the serializer can handle.<a name="line.66"></a>
+<span class="sourceLineNo">067</span>    *    &lt;p&gt;<a name="line.67"></a>
+<span class="sourceLineNo">068</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.68"></a>
+<span class="sourceLineNo">069</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    *    &lt;p&gt;<a name="line.70"></a>
+<span class="sourceLineNo">071</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.71"></a>
+<span class="sourceLineNo">072</span>    *    &lt;p&gt;<a name="line.72"></a>
+<span class="sourceLineNo">073</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.73"></a>
+<span class="sourceLineNo">074</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.74"></a>
+<span class="sourceLineNo">075</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.75"></a>
+<span class="sourceLineNo">076</span>    *    &lt;br&gt;...or...<a name="line.76"></a>
+<span class="sourceLineNo">077</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.77"></a>
+<span class="sourceLineNo">078</span>    */<a name="line.78"></a>
+<span class="sourceLineNo">079</span>   public HtmlDocSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.79"></a>
+<span class="sourceLineNo">080</span>      super(propertyStore, produces, accept);<a name="line.80"></a>
+<span class="sourceLineNo">081</span>      this.ctx = createContext(HtmlDocSerializerContext.class);<a name="line.81"></a>
+<span class="sourceLineNo">082</span>   }<a name="line.82"></a>
+<span class="sourceLineNo">083</span><a name="line.83"></a>
+<span class="sourceLineNo">084</span>   @Override /* Serializer */<a name="line.84"></a>
+<span class="sourceLineNo">085</span>   public HtmlDocSerializerSession createSession(SerializerSessionArgs args) {<a name="line.85"></a>
+<span class="sourceLineNo">086</span>      return new HtmlDocSerializerSession(ctx, args);<a name="line.86"></a>
+<span class="sourceLineNo">087</span>   }<a name="line.87"></a>
+<span class="sourceLineNo">088</span>}<a name="line.88"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/html/HtmlParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/html/HtmlParser.html b/content/site/apidocs/src-html/org/apache/juneau/html/HtmlParser.html
index fdcd9bd..b45d271 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/html/HtmlParser.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/html/HtmlParser.html
@@ -21,60 +21,58 @@
 <span class="sourceLineNo">013</span>package org.apache.juneau.html;<a name="line.13"></a>
 <span class="sourceLineNo">014</span><a name="line.14"></a>
 <span class="sourceLineNo">015</span>import org.apache.juneau.*;<a name="line.15"></a>
-<span class="sourceLineNo">016</span>import org.apache.juneau.annotation.*;<a name="line.16"></a>
-<span class="sourceLineNo">017</span>import org.apache.juneau.parser.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span>import org.apache.juneau.xml.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span><a name="line.19"></a>
-<span class="sourceLineNo">020</span>/**<a name="line.20"></a>
-<span class="sourceLineNo">021</span> * Parses text generated by the {@link HtmlSerializer} class back into a POJO model.<a name="line.21"></a>
-<span class="sourceLineNo">022</span> *<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.23"></a>
-<span class="sourceLineNo">024</span> *<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * Handles &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/html&lt;/code&gt;<a name="line.25"></a>
-<span class="sourceLineNo">026</span> *<a name="line.26"></a>
-<span class="sourceLineNo">027</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> *<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * See the {@link HtmlSerializer} class for a description of the HTML generated.<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * &lt;p&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * This class is used primarily for automated testing of the {@link HtmlSerializer} class.<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * This class has the following properties associated with it:<a name="line.35"></a>
-<span class="sourceLineNo">036</span> * &lt;ul&gt;<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *    &lt;li&gt;{@link HtmlSerializerContext}<a name="line.37"></a>
-<span class="sourceLineNo">038</span> * &lt;/ul&gt;<a name="line.38"></a>
-<span class="sourceLineNo">039</span> */<a name="line.39"></a>
-<span class="sourceLineNo">040</span>@SuppressWarnings({ "hiding" })<a name="line.40"></a>
-<span class="sourceLineNo">041</span>@Consumes("text/html,text/html+stripped")<a name="line.41"></a>
-<span class="sourceLineNo">042</span>public class HtmlParser extends XmlParser {<a name="line.42"></a>
-<span class="sourceLineNo">043</span><a name="line.43"></a>
-<span class="sourceLineNo">044</span>   /** Default parser, all default settings.*/<a name="line.44"></a>
-<span class="sourceLineNo">045</span>   public static final HtmlParser DEFAULT = new HtmlParser(PropertyStore.create());<a name="line.45"></a>
-<span class="sourceLineNo">046</span><a name="line.46"></a>
+<span class="sourceLineNo">016</span>import org.apache.juneau.parser.*;<a name="line.16"></a>
+<span class="sourceLineNo">017</span>import org.apache.juneau.xml.*;<a name="line.17"></a>
+<span class="sourceLineNo">018</span><a name="line.18"></a>
+<span class="sourceLineNo">019</span>/**<a name="line.19"></a>
+<span class="sourceLineNo">020</span> * Parses text generated by the {@link HtmlSerializer} class back into a POJO model.<a name="line.20"></a>
+<span class="sourceLineNo">021</span> *<a name="line.21"></a>
+<span class="sourceLineNo">022</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.22"></a>
+<span class="sourceLineNo">023</span> *<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * Handles &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/html&lt;/code&gt;<a name="line.24"></a>
+<span class="sourceLineNo">025</span> *<a name="line.25"></a>
+<span class="sourceLineNo">026</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> *<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * See the {@link HtmlSerializer} class for a description of the HTML generated.<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;p&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * This class is used primarily for automated testing of the {@link HtmlSerializer} class.<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * This class has the following properties associated with it:<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * &lt;ul&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *    &lt;li&gt;{@link HtmlSerializerContext}<a name="line.36"></a>
+<span class="sourceLineNo">037</span> * &lt;/ul&gt;<a name="line.37"></a>
+<span class="sourceLineNo">038</span> */<a name="line.38"></a>
+<span class="sourceLineNo">039</span>@SuppressWarnings({ "hiding" })<a name="line.39"></a>
+<span class="sourceLineNo">040</span>public class HtmlParser extends XmlParser {<a name="line.40"></a>
+<span class="sourceLineNo">041</span><a name="line.41"></a>
+<span class="sourceLineNo">042</span>   /** Default parser, all default settings.*/<a name="line.42"></a>
+<span class="sourceLineNo">043</span>   public static final HtmlParser DEFAULT = new HtmlParser(PropertyStore.create());<a name="line.43"></a>
+<span class="sourceLineNo">044</span><a name="line.44"></a>
+<span class="sourceLineNo">045</span><a name="line.45"></a>
+<span class="sourceLineNo">046</span>   private final HtmlParserContext ctx;<a name="line.46"></a>
 <span class="sourceLineNo">047</span><a name="line.47"></a>
-<span class="sourceLineNo">048</span>   private final HtmlParserContext ctx;<a name="line.48"></a>
-<span class="sourceLineNo">049</span><a name="line.49"></a>
-<span class="sourceLineNo">050</span>   /**<a name="line.50"></a>
-<span class="sourceLineNo">051</span>    * Constructor.<a name="line.51"></a>
-<span class="sourceLineNo">052</span>    *<a name="line.52"></a>
-<span class="sourceLineNo">053</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.53"></a>
-<span class="sourceLineNo">054</span>    */<a name="line.54"></a>
-<span class="sourceLineNo">055</span>   public HtmlParser(PropertyStore propertyStore) {<a name="line.55"></a>
-<span class="sourceLineNo">056</span>      super(propertyStore);<a name="line.56"></a>
-<span class="sourceLineNo">057</span>      this.ctx = createContext(HtmlParserContext.class);<a name="line.57"></a>
-<span class="sourceLineNo">058</span>   }<a name="line.58"></a>
-<span class="sourceLineNo">059</span><a name="line.59"></a>
-<span class="sourceLineNo">060</span>   @Override /* CoreObject */<a name="line.60"></a>
-<span class="sourceLineNo">061</span>   public HtmlParserBuilder builder() {<a name="line.61"></a>
-<span class="sourceLineNo">062</span>      return new HtmlParserBuilder(propertyStore);<a name="line.62"></a>
-<span class="sourceLineNo">063</span>   }<a name="line.63"></a>
-<span class="sourceLineNo">064</span><a name="line.64"></a>
-<span class="sourceLineNo">065</span>   @Override /* Parser */<a name="line.65"></a>
-<span class="sourceLineNo">066</span>   public HtmlParserSession createSession(ParserSessionArgs args) {<a name="line.66"></a>
-<span class="sourceLineNo">067</span>      return new HtmlParserSession(ctx, args);<a name="line.67"></a>
-<span class="sourceLineNo">068</span>   }<a name="line.68"></a>
-<span class="sourceLineNo">069</span>}<a name="line.69"></a>
+<span class="sourceLineNo">048</span>   /**<a name="line.48"></a>
+<span class="sourceLineNo">049</span>    * Constructor.<a name="line.49"></a>
+<span class="sourceLineNo">050</span>    *<a name="line.50"></a>
+<span class="sourceLineNo">051</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.51"></a>
+<span class="sourceLineNo">052</span>    */<a name="line.52"></a>
+<span class="sourceLineNo">053</span>   public HtmlParser(PropertyStore propertyStore) {<a name="line.53"></a>
+<span class="sourceLineNo">054</span>      super(propertyStore, "text/html", "text/html+stripped");<a name="line.54"></a>
+<span class="sourceLineNo">055</span>      this.ctx = createContext(HtmlParserContext.class);<a name="line.55"></a>
+<span class="sourceLineNo">056</span>   }<a name="line.56"></a>
+<span class="sourceLineNo">057</span><a name="line.57"></a>
+<span class="sourceLineNo">058</span>   @Override /* CoreObject */<a name="line.58"></a>
+<span class="sourceLineNo">059</span>   public HtmlParserBuilder builder() {<a name="line.59"></a>
+<span class="sourceLineNo">060</span>      return new HtmlParserBuilder(propertyStore);<a name="line.60"></a>
+<span class="sourceLineNo">061</span>   }<a name="line.61"></a>
+<span class="sourceLineNo">062</span><a name="line.62"></a>
+<span class="sourceLineNo">063</span>   @Override /* Parser */<a name="line.63"></a>
+<span class="sourceLineNo">064</span>   public HtmlParserSession createSession(ParserSessionArgs args) {<a name="line.64"></a>
+<span class="sourceLineNo">065</span>      return new HtmlParserSession(ctx, args);<a name="line.65"></a>
+<span class="sourceLineNo">066</span>   }<a name="line.66"></a>
+<span class="sourceLineNo">067</span>}<a name="line.67"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSchemaDocSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSchemaDocSerializer.html b/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSchemaDocSerializer.html
index 28ca5ea..7deeeb2 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSchemaDocSerializer.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSchemaDocSerializer.html
@@ -23,51 +23,75 @@
 <span class="sourceLineNo">015</span>import static org.apache.juneau.serializer.SerializerContext.*;<a name="line.15"></a>
 <span class="sourceLineNo">016</span><a name="line.16"></a>
 <span class="sourceLineNo">017</span>import org.apache.juneau.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span>import org.apache.juneau.annotation.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.serializer.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span><a name="line.20"></a>
-<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
-<span class="sourceLineNo">022</span> * Serializes POJO metamodels to HTML.<a name="line.22"></a>
-<span class="sourceLineNo">023</span> *<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/html+schema&lt;/code&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * &lt;p&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/html&lt;/code&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> *<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * Essentially the same as {@link HtmlSerializer}, except serializes the POJO metamodel instead of the model itself.<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * &lt;p&gt;<a name="line.35"></a>
-<span class="sourceLineNo">036</span> * Produces output that describes the POJO metamodel similar to an XML schema document.<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *<a name="line.37"></a>
-<span class="sourceLineNo">038</span> * &lt;p&gt;<a name="line.38"></a>
-<span class="sourceLineNo">039</span> * The easiest way to create instances of this class is through the {@link HtmlSerializer#getSchemaSerializer()},<a name="line.39"></a>
-<span class="sourceLineNo">040</span> * which will create a schema serializer with the same settings as the originating serializer.<a name="line.40"></a>
-<span class="sourceLineNo">041</span> */<a name="line.41"></a>
-<span class="sourceLineNo">042</span>@Produces(value="text/html+schema", contentType="text/html")<a name="line.42"></a>
-<span class="sourceLineNo">043</span>public final class HtmlSchemaDocSerializer extends HtmlDocSerializer {<a name="line.43"></a>
-<span class="sourceLineNo">044</span><a name="line.44"></a>
-<span class="sourceLineNo">045</span>   @SuppressWarnings("hiding")<a name="line.45"></a>
-<span class="sourceLineNo">046</span>   final HtmlDocSerializerContext ctx;<a name="line.46"></a>
-<span class="sourceLineNo">047</span><a name="line.47"></a>
-<span class="sourceLineNo">048</span>   /**<a name="line.48"></a>
-<span class="sourceLineNo">049</span>    * Constructor.<a name="line.49"></a>
-<span class="sourceLineNo">050</span>    *<a name="line.50"></a>
-<span class="sourceLineNo">051</span>    * @param propertyStore The property store to use for creating the context for this serializer.<a name="line.51"></a>
-<span class="sourceLineNo">052</span>    */<a name="line.52"></a>
-<span class="sourceLineNo">053</span>   public HtmlSchemaDocSerializer(PropertyStore propertyStore) {<a name="line.53"></a>
-<span class="sourceLineNo">054</span>      super(propertyStore.copy().append(SERIALIZER_detectRecursions, true).append(SERIALIZER_ignoreRecursions, true));<a name="line.54"></a>
-<span class="sourceLineNo">055</span>      this.ctx = createContext(HtmlDocSerializerContext.class);<a name="line.55"></a>
-<span class="sourceLineNo">056</span>   }<a name="line.56"></a>
-<span class="sourceLineNo">057</span><a name="line.57"></a>
-<span class="sourceLineNo">058</span>   @Override /* Serializer */<a name="line.58"></a>
-<span class="sourceLineNo">059</span>   public HtmlDocSerializerSession createSession(SerializerSessionArgs args) {<a name="line.59"></a>
-<span class="sourceLineNo">060</span>      return new HtmlDocSerializerSession(ctx, args);<a name="line.60"></a>
-<span class="sourceLineNo">061</span>   }<a name="line.61"></a>
-<span class="sourceLineNo">062</span>}<a name="line.62"></a>
+<span class="sourceLineNo">018</span>import org.apache.juneau.serializer.*;<a name="line.18"></a>
+<span class="sourceLineNo">019</span><a name="line.19"></a>
+<span class="sourceLineNo">020</span>/**<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * Serializes POJO metamodels to HTML.<a name="line.21"></a>
+<span class="sourceLineNo">022</span> *<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/html+schema&lt;/code&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * &lt;p&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/html&lt;/code&gt;<a name="line.28"></a>
+<span class="sourceLineNo">029</span> *<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * Essentially the same as {@link HtmlSerializer}, except serializes the POJO metamodel instead of the model itself.<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * &lt;p&gt;<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * Produces output that describes the POJO metamodel similar to an XML schema document.<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *<a name="line.36"></a>
+<span class="sourceLineNo">037</span> * &lt;p&gt;<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * The easiest way to create instances of this class is through the {@link HtmlSerializer#getSchemaSerializer()},<a name="line.38"></a>
+<span class="sourceLineNo">039</span> * which will create a schema serializer with the same settings as the originating serializer.<a name="line.39"></a>
+<span class="sourceLineNo">040</span> */<a name="line.40"></a>
+<span class="sourceLineNo">041</span>public final class HtmlSchemaDocSerializer extends HtmlDocSerializer {<a name="line.41"></a>
+<span class="sourceLineNo">042</span><a name="line.42"></a>
+<span class="sourceLineNo">043</span>   @SuppressWarnings("hiding")<a name="line.43"></a>
+<span class="sourceLineNo">044</span>   final HtmlDocSerializerContext ctx;<a name="line.44"></a>
+<span class="sourceLineNo">045</span><a name="line.45"></a>
+<span class="sourceLineNo">046</span>   /**<a name="line.46"></a>
+<span class="sourceLineNo">047</span>    * Constructor.<a name="line.47"></a>
+<span class="sourceLineNo">048</span>    *<a name="line.48"></a>
+<span class="sourceLineNo">049</span>    * @param propertyStore<a name="line.49"></a>
+<span class="sourceLineNo">050</span>    *    The property store to use for creating the context for this serializer.<a name="line.50"></a>
+<span class="sourceLineNo">051</span>    */<a name="line.51"></a>
+<span class="sourceLineNo">052</span>   public HtmlSchemaDocSerializer(PropertyStore propertyStore) {<a name="line.52"></a>
+<span class="sourceLineNo">053</span>      this(propertyStore, "text/html", "text/html+schema");<a name="line.53"></a>
+<span class="sourceLineNo">054</span>   }<a name="line.54"></a>
+<span class="sourceLineNo">055</span><a name="line.55"></a>
+<span class="sourceLineNo">056</span>   /**<a name="line.56"></a>
+<span class="sourceLineNo">057</span>    * Constructor.<a name="line.57"></a>
+<span class="sourceLineNo">058</span>    *<a name="line.58"></a>
+<span class="sourceLineNo">059</span>    * @param propertyStore<a name="line.59"></a>
+<span class="sourceLineNo">060</span>    *    The property store containing all the settings for this object.<a name="line.60"></a>
+<span class="sourceLineNo">061</span>    * @param produces<a name="line.61"></a>
+<span class="sourceLineNo">062</span>    *    The media type that this serializer produces.<a name="line.62"></a>
+<span class="sourceLineNo">063</span>    * @param accept<a name="line.63"></a>
+<span class="sourceLineNo">064</span>    *    The accept media types that the serializer can handle.<a name="line.64"></a>
+<span class="sourceLineNo">065</span>    *    &lt;p&gt;<a name="line.65"></a>
+<span class="sourceLineNo">066</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.66"></a>
+<span class="sourceLineNo">067</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.67"></a>
+<span class="sourceLineNo">068</span>    *    &lt;p&gt;<a name="line.68"></a>
+<span class="sourceLineNo">069</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    *    &lt;p&gt;<a name="line.70"></a>
+<span class="sourceLineNo">071</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.71"></a>
+<span class="sourceLineNo">072</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.72"></a>
+<span class="sourceLineNo">073</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.73"></a>
+<span class="sourceLineNo">074</span>    *    &lt;br&gt;...or...<a name="line.74"></a>
+<span class="sourceLineNo">075</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.75"></a>
+<span class="sourceLineNo">076</span>    */<a name="line.76"></a>
+<span class="sourceLineNo">077</span>   public HtmlSchemaDocSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.77"></a>
+<span class="sourceLineNo">078</span>      super(propertyStore.copy().append(SERIALIZER_detectRecursions, true).append(SERIALIZER_ignoreRecursions, true), produces, accept);<a name="line.78"></a>
+<span class="sourceLineNo">079</span>      this.ctx = createContext(HtmlDocSerializerContext.class);<a name="line.79"></a>
+<span class="sourceLineNo">080</span>   }<a name="line.80"></a>
+<span class="sourceLineNo">081</span><a name="line.81"></a>
+<span class="sourceLineNo">082</span>   @Override /* Serializer */<a name="line.82"></a>
+<span class="sourceLineNo">083</span>   public HtmlDocSerializerSession createSession(SerializerSessionArgs args) {<a name="line.83"></a>
+<span class="sourceLineNo">084</span>      return new HtmlDocSerializerSession(ctx, args);<a name="line.84"></a>
+<span class="sourceLineNo">085</span>   }<a name="line.85"></a>
+<span class="sourceLineNo">086</span>}<a name="line.86"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSerializer.Sq.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSerializer.Sq.html b/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSerializer.Sq.html
index 6e7a7d3..9c1add4 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSerializer.Sq.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSerializer.Sq.html
@@ -25,193 +25,217 @@
 <span class="sourceLineNo">017</span>import java.util.*;<a name="line.17"></a>
 <span class="sourceLineNo">018</span><a name="line.18"></a>
 <span class="sourceLineNo">019</span>import org.apache.juneau.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.annotation.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span>import org.apache.juneau.serializer.*;<a name="line.21"></a>
-<span class="sourceLineNo">022</span>import org.apache.juneau.xml.*;<a name="line.22"></a>
-<span class="sourceLineNo">023</span><a name="line.23"></a>
-<span class="sourceLineNo">024</span>/**<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * Serializes POJO models to HTML.<a name="line.25"></a>
-<span class="sourceLineNo">026</span> *<a name="line.26"></a>
-<span class="sourceLineNo">027</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> *<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/html&lt;/code&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> *<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * &lt;p&gt;<a name="line.31"></a>
-<span class="sourceLineNo">032</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/html&lt;/code&gt;<a name="line.32"></a>
-<span class="sourceLineNo">033</span> *<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *<a name="line.35"></a>
-<span class="sourceLineNo">036</span> * The conversion is as follows...<a name="line.36"></a>
-<span class="sourceLineNo">037</span> * &lt;ul class='spaced-list'&gt;<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *       {@link Map Maps} (e.g. {@link HashMap}, {@link TreeMap}) and beans are converted to HTML tables with<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *       'key' and 'value' columns.<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *    &lt;li&gt;<a name="line.41"></a>
-<span class="sourceLineNo">042</span> *       {@link Collection Collections} (e.g. {@link HashSet}, {@link LinkedList}) and Java arrays are converted<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *       to HTML ordered lists.<a name="line.43"></a>
-<span class="sourceLineNo">044</span> *    &lt;li&gt;<a name="line.44"></a>
-<span class="sourceLineNo">045</span> *       {@code Collections} of {@code Maps} and beans are converted to HTML tables with keys as headers.<a name="line.45"></a>
-<span class="sourceLineNo">046</span> *    &lt;li&gt;<a name="line.46"></a>
-<span class="sourceLineNo">047</span> *       Everything else is converted to text.<a name="line.47"></a>
-<span class="sourceLineNo">048</span> * &lt;/ul&gt;<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *<a name="line.49"></a>
-<span class="sourceLineNo">050</span> * &lt;p&gt;<a name="line.50"></a>
-<span class="sourceLineNo">051</span> * This serializer provides several serialization options.  Typically, one of the predefined &lt;jsf&gt;DEFAULT&lt;/jsf&gt;<a name="line.51"></a>
-<span class="sourceLineNo">052</span> * serializers will be sufficient.<a name="line.52"></a>
-<span class="sourceLineNo">053</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *<a name="line.54"></a>
-<span class="sourceLineNo">055</span> * &lt;p&gt;<a name="line.55"></a>
-<span class="sourceLineNo">056</span> * The {@link HtmlLink} annotation can be used on beans to add hyperlinks to the output.<a name="line.56"></a>
-<span class="sourceLineNo">057</span> *<a name="line.57"></a>
-<span class="sourceLineNo">058</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.58"></a>
-<span class="sourceLineNo">059</span> *<a name="line.59"></a>
-<span class="sourceLineNo">060</span> * This class has the following properties associated with it:<a name="line.60"></a>
-<span class="sourceLineNo">061</span> * &lt;ul class='spaced-list'&gt;<a name="line.61"></a>
-<span class="sourceLineNo">062</span> *    &lt;li&gt;<a name="line.62"></a>
-<span class="sourceLineNo">063</span> *       {@link HtmlSerializerContext}<a name="line.63"></a>
-<span class="sourceLineNo">064</span> * &lt;/ul&gt;<a name="line.64"></a>
-<span class="sourceLineNo">065</span> *<a name="line.65"></a>
-<span class="sourceLineNo">066</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.66"></a>
-<span class="sourceLineNo">067</span> *<a name="line.67"></a>
-<span class="sourceLineNo">068</span> * The following direct subclasses are provided for convenience:<a name="line.68"></a>
-<span class="sourceLineNo">069</span> * &lt;ul class='spaced-list'&gt;<a name="line.69"></a>
-<span class="sourceLineNo">070</span> *    &lt;li&gt;<a name="line.70"></a>
-<span class="sourceLineNo">071</span> *       {@link Sq} - Default serializer, single quotes.<a name="line.71"></a>
-<span class="sourceLineNo">072</span> *    &lt;li&gt;<a name="line.72"></a>
-<span class="sourceLineNo">073</span> *       {@link SqReadable} - Default serializer, single quotes, whitespace added.<a name="line.73"></a>
-<span class="sourceLineNo">074</span> * &lt;/ul&gt;<a name="line.74"></a>
-<span class="sourceLineNo">075</span> *<a name="line.75"></a>
-<span class="sourceLineNo">076</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.76"></a>
-<span class="sourceLineNo">077</span> * &lt;p class='bcode'&gt;<a name="line.77"></a>
-<span class="sourceLineNo">078</span> *    &lt;jc&gt;// Use one of the default serializers to serialize a POJO&lt;/jc&gt;<a name="line.78"></a>
-<span class="sourceLineNo">079</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(someObject);<a name="line.79"></a>
-<span class="sourceLineNo">080</span> *<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *       &lt;jc&gt;// Create a custom serializer that doesn't use whitespace and newlines&lt;/jc&gt;<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *       HtmlSerializer serializer = &lt;jk&gt;new&lt;/jk&gt; HtmlSerializerBuider().ws().build();<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *<a name="line.83"></a>
-<span class="sourceLineNo">084</span> *       &lt;jc&gt;// Same as above, except uses cloning&lt;/jc&gt;<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *       HtmlSerializer serializer = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.builder().ws().build();<a name="line.85"></a>
-<span class="sourceLineNo">086</span> *<a name="line.86"></a>
-<span class="sourceLineNo">087</span> *       &lt;jc&gt;// Serialize POJOs to HTML&lt;/jc&gt;<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *       &lt;jc&gt;// &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;1&amp;lt;li&amp;gt;2&amp;lt;li&amp;gt;3&amp;lt;/ul&amp;gt;&lt;/jc&gt;<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *       List l = new ObjectList(1, 2, 3);<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(l);<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *<a name="line.93"></a>
-<span class="sourceLineNo">094</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *       &lt;jc&gt;//    &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.95"></a>
-<span class="sourceLineNo">096</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;firstName&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;lastName&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.96"></a>
-<span class="sourceLineNo">097</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Bob&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Costas&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.97"></a>
-<span class="sourceLineNo">098</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Billy&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;TheKid&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.98"></a>
-<span class="sourceLineNo">099</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Barney&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Miller&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.99"></a>
-<span class="sourceLineNo">100</span> *       &lt;jc&gt;//    &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.100"></a>
-<span class="sourceLineNo">101</span> *       l = &lt;jk&gt;new&lt;/jk&gt; ObjectList();<a name="line.101"></a>
-<span class="sourceLineNo">102</span> *       l.add(&lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{firstName:'Bob',lastName:'Costas'}"&lt;/js&gt;));<a name="line.102"></a>
-<span class="sourceLineNo">103</span> *       l.add(&lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{firstName:'Billy',lastName:'TheKid'}"&lt;/js&gt;));<a name="line.103"></a>
-<span class="sourceLineNo">104</span> *       l.add(&lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{firstName:'Barney',lastName:'Miller'}"&lt;/js&gt;));<a name="line.104"></a>
-<span class="sourceLineNo">105</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(l);<a name="line.105"></a>
-<span class="sourceLineNo">106</span> *<a name="line.106"></a>
-<span class="sourceLineNo">107</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.107"></a>
-<span class="sourceLineNo">108</span> *       &lt;jc&gt;//    &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.108"></a>
-<span class="sourceLineNo">109</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;key&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;value&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.109"></a>
-<span class="sourceLineNo">110</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;foo&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;bar&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.110"></a>
-<span class="sourceLineNo">111</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;baz&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;123&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.111"></a>
-<span class="sourceLineNo">112</span> *       &lt;jc&gt;//    &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.112"></a>
-<span class="sourceLineNo">113</span> *       Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{foo:'bar',baz:123}"&lt;/js&gt;);<a name="line.113"></a>
-<span class="sourceLineNo">114</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(m);<a name="line.114"></a>
-<span class="sourceLineNo">115</span> *<a name="line.115"></a>
-<span class="sourceLineNo">116</span> *       &lt;jc&gt;// HTML elements can be nested arbitrarily deep&lt;/jc&gt;<a name="line.116"></a>
-<span class="sourceLineNo">117</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.117"></a>
-<span class="sourceLineNo">118</span> *       &lt;jc&gt;//   &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.118"></a>
-<span class="sourceLineNo">119</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;key&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;value&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.119"></a>
-<span class="sourceLineNo">120</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;foo&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;bar&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.120"></a>
-<span class="sourceLineNo">121</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;baz&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;123&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.121"></a>
-<span class="sourceLineNo">122</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;someNumbers&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;1&amp;lt;li&amp;gt;2&amp;lt;li&amp;gt;3&amp;lt;/ul&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.122"></a>
-<span class="sourceLineNo">123</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;someSubMap&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; &lt;/jc&gt;<a name="line.123"></a>
-<span class="sourceLineNo">124</span> *       &lt;jc&gt;//         &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.124"></a>
-<span class="sourceLineNo">125</span> *       &lt;jc&gt;//            &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;key&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;value&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.125"></a>
-<span class="sourceLineNo">126</span> *       &lt;jc&gt;//            &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;a&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;b&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.126"></a>
-<span class="sourceLineNo">127</span> *       &lt;jc&gt;//         &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.127"></a>
-<span class="sourceLineNo">128</span> *       &lt;jc&gt;//      &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.128"></a>
-<span class="sourceLineNo">129</span> *       &lt;jc&gt;//   &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.129"></a>
-<span class="sourceLineNo">130</span> *       Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{foo:'bar',baz:123}"&lt;/js&gt;);<a name="line.130"></a>
-<span class="sourceLineNo">131</span> *       m.put("someNumbers", new ObjectList(1, 2, 3));<a name="line.131"></a>
-<span class="sourceLineNo">132</span> *       m.put(&lt;js&gt;"someSubMap"&lt;/js&gt;, new ObjectMap(&lt;js&gt;"{a:'b'}"&lt;/js&gt;));<a name="line.132"></a>
-<span class="sourceLineNo">133</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(m);<a name="line.133"></a>
-<span class="sourceLineNo">134</span> * &lt;/p&gt;<a name="line.134"></a>
-<span class="sourceLineNo">135</span> */<a name="line.135"></a>
-<span class="sourceLineNo">136</span>@Produces("text/html")<a name="line.136"></a>
-<span class="sourceLineNo">137</span>@SuppressWarnings("hiding")<a name="line.137"></a>
-<span class="sourceLineNo">138</span>public class HtmlSerializer extends XmlSerializer {<a name="line.138"></a>
-<span class="sourceLineNo">139</span><a name="line.139"></a>
-<span class="sourceLineNo">140</span>   /** Default serializer, all default settings. */<a name="line.140"></a>
-<span class="sourceLineNo">141</span>   public static final HtmlSerializer DEFAULT = new HtmlSerializer(PropertyStore.create());<a name="line.141"></a>
-<span class="sourceLineNo">142</span><a name="line.142"></a>
-<span class="sourceLineNo">143</span>   /** Default serializer, single quotes. */<a name="line.143"></a>
-<span class="sourceLineNo">144</span>   public static final HtmlSerializer DEFAULT_SQ = new HtmlSerializer.Sq(PropertyStore.create());<a name="line.144"></a>
-<span class="sourceLineNo">145</span><a name="line.145"></a>
-<span class="sourceLineNo">146</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.146"></a>
-<span class="sourceLineNo">147</span>   public static final HtmlSerializer DEFAULT_SQ_READABLE = new HtmlSerializer.SqReadable(PropertyStore.create());<a name="line.147"></a>
-<span class="sourceLineNo">148</span><a name="line.148"></a>
-<span class="sourceLineNo">149</span><a name="line.149"></a>
-<span class="sourceLineNo">150</span>   /** Default serializer, single quotes. */<a name="line.150"></a>
-<span class="sourceLineNo">151</span>   public static class Sq extends HtmlSerializer {<a name="line.151"></a>
-<span class="sourceLineNo">152</span><a name="line.152"></a>
-<span class="sourceLineNo">153</span>      /**<a name="line.153"></a>
-<span class="sourceLineNo">154</span>       * Constructor.<a name="line.154"></a>
-<span class="sourceLineNo">155</span>       *<a name="line.155"></a>
-<span class="sourceLineNo">156</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.156"></a>
-<span class="sourceLineNo">157</span>       */<a name="line.157"></a>
-<span class="sourceLineNo">158</span>      public Sq(PropertyStore propertyStore) {<a name="line.158"></a>
-<span class="sourceLineNo">159</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\''));<a name="line.159"></a>
-<span class="sourceLineNo">160</span>      }<a name="line.160"></a>
-<span class="sourceLineNo">161</span>   }<a name="line.161"></a>
-<span class="sourceLineNo">162</span><a name="line.162"></a>
-<span class="sourceLineNo">163</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.163"></a>
-<span class="sourceLineNo">164</span>   public static class SqReadable extends HtmlSerializer {<a name="line.164"></a>
-<span class="sourceLineNo">165</span><a name="line.165"></a>
-<span class="sourceLineNo">166</span>      /**<a name="line.166"></a>
-<span class="sourceLineNo">167</span>       * Constructor.<a name="line.167"></a>
-<span class="sourceLineNo">168</span>       *<a name="line.168"></a>
-<span class="sourceLineNo">169</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.169"></a>
-<span class="sourceLineNo">170</span>       */<a name="line.170"></a>
-<span class="sourceLineNo">171</span>      public SqReadable(PropertyStore propertyStore) {<a name="line.171"></a>
-<span class="sourceLineNo">172</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\'').append(SERIALIZER_useWhitespace, true));<a name="line.172"></a>
-<span class="sourceLineNo">173</span>      }<a name="line.173"></a>
-<span class="sourceLineNo">174</span>   }<a name="line.174"></a>
-<span class="sourceLineNo">175</span><a name="line.175"></a>
-<span class="sourceLineNo">176</span><a name="line.176"></a>
-<span class="sourceLineNo">177</span>   final HtmlSerializerContext ctx;<a name="line.177"></a>
-<span class="sourceLineNo">178</span>   private volatile HtmlSchemaDocSerializer schemaSerializer;<a name="line.178"></a>
-<span class="sourceLineNo">179</span><a name="line.179"></a>
-<span class="sourceLineNo">180</span>   /**<a name="line.180"></a>
-<span class="sourceLineNo">181</span>    * Constructor.<a name="line.181"></a>
-<span class="sourceLineNo">182</span>    *<a name="line.182"></a>
-<span class="sourceLineNo">183</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.183"></a>
-<span class="sourceLineNo">184</span>    */<a name="line.184"></a>
-<span class="sourceLineNo">185</span>   public HtmlSerializer(PropertyStore propertyStore) {<a name="line.185"></a>
-<span class="sourceLineNo">186</span>      super(propertyStore);<a name="line.186"></a>
-<span class="sourceLineNo">187</span>      this.ctx = createContext(HtmlSerializerContext.class);<a name="line.187"></a>
-<span class="sourceLineNo">188</span>   }<a name="line.188"></a>
-<span class="sourceLineNo">189</span><a name="line.189"></a>
-<span class="sourceLineNo">190</span>   @Override /* CoreObject */<a name="line.190"></a>
-<span class="sourceLineNo">191</span>   public HtmlSerializerBuilder builder() {<a name="line.191"></a>
-<span class="sourceLineNo">192</span>      return new HtmlSerializerBuilder(propertyStore);<a name="line.192"></a>
-<span class="sourceLineNo">193</span>   }<a name="line.193"></a>
-<span class="sourceLineNo">194</span><a name="line.194"></a>
-<span class="sourceLineNo">195</span>   @Override /* XmlSerializer */<a name="line.195"></a>
-<span class="sourceLineNo">196</span>   public HtmlSerializer getSchemaSerializer() {<a name="line.196"></a>
-<span class="sourceLineNo">197</span>      if (schemaSerializer == null)<a name="line.197"></a>
-<span class="sourceLineNo">198</span>         schemaSerializer = new HtmlSchemaDocSerializer(propertyStore);<a name="line.198"></a>
-<span class="sourceLineNo">199</span>      return schemaSerializer;<a name="line.199"></a>
-<span class="sourceLineNo">200</span>   }<a name="line.200"></a>
-<span class="sourceLineNo">201</span><a name="line.201"></a>
-<span class="sourceLineNo">202</span>   @Override /* Serializer */<a name="line.202"></a>
-<span class="sourceLineNo">203</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.203"></a>
-<span class="sourceLineNo">204</span>      return new HtmlSerializerSession(ctx, args);<a name="line.204"></a>
-<span class="sourceLineNo">205</span>   }<a name="line.205"></a>
-<span class="sourceLineNo">206</span>}<a name="line.206"></a>
+<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
+<span class="sourceLineNo">021</span>import org.apache.juneau.xml.*;<a name="line.21"></a>
+<span class="sourceLineNo">022</span><a name="line.22"></a>
+<span class="sourceLineNo">023</span>/**<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * Serializes POJO models to HTML.<a name="line.24"></a>
+<span class="sourceLineNo">025</span> *<a name="line.25"></a>
+<span class="sourceLineNo">026</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> *<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/html&lt;/code&gt;<a name="line.28"></a>
+<span class="sourceLineNo">029</span> *<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * &lt;p&gt;<a name="line.30"></a>
+<span class="sourceLineNo">031</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/html&lt;/code&gt;<a name="line.31"></a>
+<span class="sourceLineNo">032</span> *<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.33"></a>
+<span class="sourceLineNo">034</span> *<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * The conversion is as follows...<a name="line.35"></a>
+<span class="sourceLineNo">036</span> * &lt;ul class='spaced-list'&gt;<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;<a name="line.37"></a>
+<span class="sourceLineNo">038</span> *       {@link Map Maps} (e.g. {@link HashMap}, {@link TreeMap}) and beans are converted to HTML tables with<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *       'key' and 'value' columns.<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *    &lt;li&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span> *       {@link Collection Collections} (e.g. {@link HashSet}, {@link LinkedList}) and Java arrays are converted<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *       to HTML ordered lists.<a name="line.42"></a>
+<span class="sourceLineNo">043</span> *    &lt;li&gt;<a name="line.43"></a>
+<span class="sourceLineNo">044</span> *       {@code Collections} of {@code Maps} and beans are converted to HTML tables with keys as headers.<a name="line.44"></a>
+<span class="sourceLineNo">045</span> *    &lt;li&gt;<a name="line.45"></a>
+<span class="sourceLineNo">046</span> *       Everything else is converted to text.<a name="line.46"></a>
+<span class="sourceLineNo">047</span> * &lt;/ul&gt;<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *<a name="line.48"></a>
+<span class="sourceLineNo">049</span> * &lt;p&gt;<a name="line.49"></a>
+<span class="sourceLineNo">050</span> * This serializer provides several serialization options.  Typically, one of the predefined &lt;jsf&gt;DEFAULT&lt;/jsf&gt;<a name="line.50"></a>
+<span class="sourceLineNo">051</span> * serializers will be sufficient.<a name="line.51"></a>
+<span class="sourceLineNo">052</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *<a name="line.53"></a>
+<span class="sourceLineNo">054</span> * &lt;p&gt;<a name="line.54"></a>
+<span class="sourceLineNo">055</span> * The {@link HtmlLink} annotation can be used on beans to add hyperlinks to the output.<a name="line.55"></a>
+<span class="sourceLineNo">056</span> *<a name="line.56"></a>
+<span class="sourceLineNo">057</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.57"></a>
+<span class="sourceLineNo">058</span> *<a name="line.58"></a>
+<span class="sourceLineNo">059</span> * This class has the following properties associated with it:<a name="line.59"></a>
+<span class="sourceLineNo">060</span> * &lt;ul class='spaced-list'&gt;<a name="line.60"></a>
+<span class="sourceLineNo">061</span> *    &lt;li&gt;<a name="line.61"></a>
+<span class="sourceLineNo">062</span> *       {@link HtmlSerializerContext}<a name="line.62"></a>
+<span class="sourceLineNo">063</span> * &lt;/ul&gt;<a name="line.63"></a>
+<span class="sourceLineNo">064</span> *<a name="line.64"></a>
+<span class="sourceLineNo">065</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.65"></a>
+<span class="sourceLineNo">066</span> *<a name="line.66"></a>
+<span class="sourceLineNo">067</span> * The following direct subclasses are provided for convenience:<a name="line.67"></a>
+<span class="sourceLineNo">068</span> * &lt;ul class='spaced-list'&gt;<a name="line.68"></a>
+<span class="sourceLineNo">069</span> *    &lt;li&gt;<a name="line.69"></a>
+<span class="sourceLineNo">070</span> *       {@link Sq} - Default serializer, single quotes.<a name="line.70"></a>
+<span class="sourceLineNo">071</span> *    &lt;li&gt;<a name="line.71"></a>
+<span class="sourceLineNo">072</span> *       {@link SqReadable} - Default serializer, single quotes, whitespace added.<a name="line.72"></a>
+<span class="sourceLineNo">073</span> * &lt;/ul&gt;<a name="line.73"></a>
+<span class="sourceLineNo">074</span> *<a name="line.74"></a>
+<span class="sourceLineNo">075</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.75"></a>
+<span class="sourceLineNo">076</span> * &lt;p class='bcode'&gt;<a name="line.76"></a>
+<span class="sourceLineNo">077</span> *    &lt;jc&gt;// Use one of the default serializers to serialize a POJO&lt;/jc&gt;<a name="line.77"></a>
+<span class="sourceLineNo">078</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(someObject);<a name="line.78"></a>
+<span class="sourceLineNo">079</span> *<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *       &lt;jc&gt;// Create a custom serializer that doesn't use whitespace and newlines&lt;/jc&gt;<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *       HtmlSerializer serializer = &lt;jk&gt;new&lt;/jk&gt; HtmlSerializerBuider().ws().build();<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *<a name="line.82"></a>
+<span class="sourceLineNo">083</span> *       &lt;jc&gt;// Same as above, except uses cloning&lt;/jc&gt;<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *       HtmlSerializer serializer = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.builder().ws().build();<a name="line.84"></a>
+<span class="sourceLineNo">085</span> *<a name="line.85"></a>
+<span class="sourceLineNo">086</span> *       &lt;jc&gt;// Serialize POJOs to HTML&lt;/jc&gt;<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *<a name="line.87"></a>
+<span class="sourceLineNo">088</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.88"></a>
+<span class="sourceLineNo">089</span> *       &lt;jc&gt;// &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;1&amp;lt;li&amp;gt;2&amp;lt;li&amp;gt;3&amp;lt;/ul&amp;gt;&lt;/jc&gt;<a name="line.89"></a>
+<span class="sourceLineNo">090</span> *       List l = new ObjectList(1, 2, 3);<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(l);<a name="line.91"></a>
+<span class="sourceLineNo">092</span> *<a name="line.92"></a>
+<span class="sourceLineNo">093</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.93"></a>
+<span class="sourceLineNo">094</span> *       &lt;jc&gt;//    &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.94"></a>
+<span class="sourceLineNo">095</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;firstName&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;lastName&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.95"></a>
+<span class="sourceLineNo">096</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Bob&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Costas&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.96"></a>
+<span class="sourceLineNo">097</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Billy&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;TheKid&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.97"></a>
+<span class="sourceLineNo">098</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Barney&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Miller&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.98"></a>
+<span class="sourceLineNo">099</span> *       &lt;jc&gt;//    &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.99"></a>
+<span class="sourceLineNo">100</span> *       l = &lt;jk&gt;new&lt;/jk&gt; ObjectList();<a name="line.100"></a>
+<span class="sourceLineNo">101</span> *       l.add(&lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{firstName:'Bob',lastName:'Costas'}"&lt;/js&gt;));<a name="line.101"></a>
+<span class="sourceLineNo">102</span> *       l.add(&lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{firstName:'Billy',lastName:'TheKid'}"&lt;/js&gt;));<a name="line.102"></a>
+<span class="sourceLineNo">103</span> *       l.add(&lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{firstName:'Barney',lastName:'Miller'}"&lt;/js&gt;));<a name="line.103"></a>
+<span class="sourceLineNo">104</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(l);<a name="line.104"></a>
+<span class="sourceLineNo">105</span> *<a name="line.105"></a>
+<span class="sourceLineNo">106</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.106"></a>
+<span class="sourceLineNo">107</span> *       &lt;jc&gt;//    &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.107"></a>
+<span class="sourceLineNo">108</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;key&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;value&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.108"></a>
+<span class="sourceLineNo">109</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;foo&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;bar&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.109"></a>
+<span class="sourceLineNo">110</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;baz&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;123&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.110"></a>
+<span class="sourceLineNo">111</span> *       &lt;jc&gt;//    &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.111"></a>
+<span class="sourceLineNo">112</span> *       Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{foo:'bar',baz:123}"&lt;/js&gt;);<a name="line.112"></a>
+<span class="sourceLineNo">113</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(m);<a name="line.113"></a>
+<span class="sourceLineNo">114</span> *<a name="line.114"></a>
+<span class="sourceLineNo">115</span> *       &lt;jc&gt;// HTML elements can be nested arbitrarily deep&lt;/jc&gt;<a name="line.115"></a>
+<span class="sourceLineNo">116</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.116"></a>
+<span class="sourceLineNo">117</span> *       &lt;jc&gt;//   &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.117"></a>
+<span class="sourceLineNo">118</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;key&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;value&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.118"></a>
+<span class="sourceLineNo">119</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;foo&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;bar&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.119"></a>
+<span class="sourceLineNo">120</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;baz&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;123&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.120"></a>
+<span class="sourceLineNo">121</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;someNumbers&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;1&amp;lt;li&amp;gt;2&amp;lt;li&amp;gt;3&amp;lt;/ul&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.121"></a>
+<span class="sourceLineNo">122</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;someSubMap&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; &lt;/jc&gt;<a name="line.122"></a>
+<span class="sourceLineNo">123</span> *       &lt;jc&gt;//         &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.123"></a>
+<span class="sourceLineNo">124</span> *       &lt;jc&gt;//            &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;key&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;value&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.124"></a>
+<span class="sourceLineNo">125</span> *       &lt;jc&gt;//            &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;a&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;b&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.125"></a>
+<span class="sourceLineNo">126</span> *       &lt;jc&gt;//         &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.126"></a>
+<span class="sourceLineNo">127</span> *       &lt;jc&gt;//      &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.127"></a>
+<span class="sourceLineNo">128</span> *       &lt;jc&gt;//   &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.128"></a>
+<span class="sourceLineNo">129</span> *       Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{foo:'bar',baz:123}"&lt;/js&gt;);<a name="line.129"></a>
+<span class="sourceLineNo">130</span> *       m.put("someNumbers", new ObjectList(1, 2, 3));<a name="line.130"></a>
+<span class="sourceLineNo">131</span> *       m.put(&lt;js&gt;"someSubMap"&lt;/js&gt;, new ObjectMap(&lt;js&gt;"{a:'b'}"&lt;/js&gt;));<a name="line.131"></a>
+<span class="sourceLineNo">132</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(m);<a name="line.132"></a>
+<span class="sourceLineNo">133</span> * &lt;/p&gt;<a name="line.133"></a>
+<span class="sourceLineNo">134</span> */<a name="line.134"></a>
+<span class="sourceLineNo">135</span>@SuppressWarnings("hiding")<a name="line.135"></a>
+<span class="sourceLineNo">136</span>public class HtmlSerializer extends XmlSerializer {<a name="line.136"></a>
+<span class="sourceLineNo">137</span><a name="line.137"></a>
+<span class="sourceLineNo">138</span>   /** Default serializer, all default settings. */<a name="line.138"></a>
+<span class="sourceLineNo">139</span>   public static final HtmlSerializer DEFAULT = new HtmlSerializer(PropertyStore.create());<a name="line.139"></a>
+<span class="sourceLineNo">140</span><a name="line.140"></a>
+<span class="sourceLineNo">141</span>   /** Default serializer, single quotes. */<a name="line.141"></a>
+<span class="sourceLineNo">142</span>   public static final HtmlSerializer DEFAULT_SQ = new HtmlSerializer.Sq(PropertyStore.create());<a name="line.142"></a>
+<span class="sourceLineNo">143</span><a name="line.143"></a>
+<span class="sourceLineNo">144</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.144"></a>
+<span class="sourceLineNo">145</span>   public static final HtmlSerializer DEFAULT_SQ_READABLE = new HtmlSerializer.SqReadable(PropertyStore.create());<a name="line.145"></a>
+<span class="sourceLineNo">146</span><a name="line.146"></a>
+<span class="sourceLineNo">147</span><a name="line.147"></a>
+<span class="sourceLineNo">148</span>   /** Default serializer, single quotes. */<a name="line.148"></a>
+<span class="sourceLineNo">149</span>   public static class Sq extends HtmlSerializer {<a name="line.149"></a>
+<span class="sourceLineNo">150</span><a name="line.150"></a>
+<span class="sourceLineNo">151</span>      /**<a name="line.151"></a>
+<span class="sourceLineNo">152</span>       * Constructor.<a name="line.152"></a>
+<span class="sourceLineNo">153</span>       *<a name="line.153"></a>
+<span class="sourceLineNo">154</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.154"></a>
+<span class="sourceLineNo">155</span>       */<a name="line.155"></a>
+<span class="sourceLineNo">156</span>      public Sq(PropertyStore propertyStore) {<a name="line.156"></a>
+<span class="sourceLineNo">157</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\''));<a name="line.157"></a>
+<span class="sourceLineNo">158</span>      }<a name="line.158"></a>
+<span class="sourceLineNo">159</span>   }<a name="line.159"></a>
+<span class="sourceLineNo">160</span><a name="line.160"></a>
+<span class="sourceLineNo">161</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.161"></a>
+<span class="sourceLineNo">162</span>   public static class SqReadable extends HtmlSerializer {<a name="line.162"></a>
+<span class="sourceLineNo">163</span><a name="line.163"></a>
+<span class="sourceLineNo">164</span>      /**<a name="line.164"></a>
+<span class="sourceLineNo">165</span>       * Constructor.<a name="line.165"></a>
+<span class="sourceLineNo">166</span>       *<a name="line.166"></a>
+<span class="sourceLineNo">167</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.167"></a>
+<span class="sourceLineNo">168</span>       */<a name="line.168"></a>
+<span class="sourceLineNo">169</span>      public SqReadable(PropertyStore propertyStore) {<a name="line.169"></a>
+<span class="sourceLineNo">170</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\'').append(SERIALIZER_useWhitespace, true));<a name="line.170"></a>
+<span class="sourceLineNo">171</span>      }<a name="line.171"></a>
+<span class="sourceLineNo">172</span>   }<a name="line.172"></a>
+<span class="sourceLineNo">173</span><a name="line.173"></a>
+<span class="sourceLineNo">174</span><a name="line.174"></a>
+<span class="sourceLineNo">175</span>   final HtmlSerializerContext ctx;<a name="line.175"></a>
+<span class="sourceLineNo">176</span>   private volatile HtmlSchemaDocSerializer schemaSerializer;<a name="line.176"></a>
+<span class="sourceLineNo">177</span><a name="line.177"></a>
+<span class="sourceLineNo">178</span>   /**<a name="line.178"></a>
+<span class="sourceLineNo">179</span>    * Constructor.<a name="line.179"></a>
+<span class="sourceLineNo">180</span>    *<a name="line.180"></a>
+<span class="sourceLineNo">181</span>    * @param propertyStore<a name="line.181"></a>
+<span class="sourceLineNo">182</span>    *    The property store containing all the settings for this object.<a name="line.182"></a>
+<span class="sourceLineNo">183</span>    */<a name="line.183"></a>
+<span class="sourceLineNo">184</span>   public HtmlSerializer(PropertyStore propertyStore) {<a name="line.184"></a>
+<span class="sourceLineNo">185</span>      this(propertyStore, "text/html");<a name="line.185"></a>
+<span class="sourceLineNo">186</span>   }<a name="line.186"></a>
+<span class="sourceLineNo">187</span><a name="line.187"></a>
+<span class="sourceLineNo">188</span>   /**<a name="line.188"></a>
+<span class="sourceLineNo">189</span>    * Constructor.<a name="line.189"></a>
+<span class="sourceLineNo">190</span>    *<a name="line.190"></a>
+<span class="sourceLineNo">191</span>    * @param propertyStore<a name="line.191"></a>
+<span class="sourceLineNo">192</span>    *    The property store containing all the settings for this object.<a name="line.192"></a>
+<span class="sourceLineNo">193</span>    * @param produces<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    *    The media type that this serializer produces.<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    * @param accept<a name="line.195"></a>
+<span class="sourceLineNo">196</span>    *    The accept media types that the serializer can handle.<a name="line.196"></a>
+<span class="sourceLineNo">197</span>    *    &lt;p&gt;<a name="line.197"></a>
+<span class="sourceLineNo">198</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.198"></a>
+<span class="sourceLineNo">199</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.199"></a>
+<span class="sourceLineNo">200</span>    *    &lt;p&gt;<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.201"></a>
+<span class="sourceLineNo">202</span>    *    &lt;p&gt;<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.203"></a>
+<span class="sourceLineNo">204</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.204"></a>
+<span class="sourceLineNo">205</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.205"></a>
+<span class="sourceLineNo">206</span>    *    &lt;br&gt;...or...<a name="line.206"></a>
+<span class="sourceLineNo">207</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.207"></a>
+<span class="sourceLineNo">208</span>    */<a name="line.208"></a>
+<span class="sourceLineNo">209</span>   public HtmlSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.209"></a>
+<span class="sourceLineNo">210</span>      super(propertyStore, produces, accept);<a name="line.210"></a>
+<span class="sourceLineNo">211</span>      this.ctx = createContext(HtmlSerializerContext.class);<a name="line.211"></a>
+<span class="sourceLineNo">212</span>   }<a name="line.212"></a>
+<span class="sourceLineNo">213</span><a name="line.213"></a>
+<span class="sourceLineNo">214</span>   @Override /* CoreObject */<a name="line.214"></a>
+<span class="sourceLineNo">215</span>   public HtmlSerializerBuilder builder() {<a name="line.215"></a>
+<span class="sourceLineNo">216</span>      return new HtmlSerializerBuilder(propertyStore);<a name="line.216"></a>
+<span class="sourceLineNo">217</span>   }<a name="line.217"></a>
+<span class="sourceLineNo">218</span><a name="line.218"></a>
+<span class="sourceLineNo">219</span>   @Override /* XmlSerializer */<a name="line.219"></a>
+<span class="sourceLineNo">220</span>   public HtmlSerializer getSchemaSerializer() {<a name="line.220"></a>
+<span class="sourceLineNo">221</span>      if (schemaSerializer == null)<a name="line.221"></a>
+<span class="sourceLineNo">222</span>         schemaSerializer = new HtmlSchemaDocSerializer(propertyStore);<a name="line.222"></a>
+<span class="sourceLineNo">223</span>      return schemaSerializer;<a name="line.223"></a>
+<span class="sourceLineNo">224</span>   }<a name="line.224"></a>
+<span class="sourceLineNo">225</span><a name="line.225"></a>
+<span class="sourceLineNo">226</span>   @Override /* Serializer */<a name="line.226"></a>
+<span class="sourceLineNo">227</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.227"></a>
+<span class="sourceLineNo">228</span>      return new HtmlSerializerSession(ctx, args);<a name="line.228"></a>
+<span class="sourceLineNo">229</span>   }<a name="line.229"></a>
+<span class="sourceLineNo">230</span>}<a name="line.230"></a>
 
 
 


[28/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.Readable.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.Readable.html b/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.Readable.html
index 4484c96..3a31851 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.Readable.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.Readable.html
@@ -25,222 +25,247 @@
 <span class="sourceLineNo">017</span>import java.util.*;<a name="line.17"></a>
 <span class="sourceLineNo">018</span><a name="line.18"></a>
 <span class="sourceLineNo">019</span>import org.apache.juneau.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.annotation.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span>import org.apache.juneau.serializer.*;<a name="line.21"></a>
-<span class="sourceLineNo">022</span><a name="line.22"></a>
-<span class="sourceLineNo">023</span>/**<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * Serializes POJO models to JSON.<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;application/json, text/json&lt;/code&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * &lt;p&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/json&lt;/code&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> *<a name="line.31"></a>
-<span class="sourceLineNo">032</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.32"></a>
-<span class="sourceLineNo">033</span> *<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * The conversion is as follows...<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * &lt;ul class='spaced-list'&gt;<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *    &lt;li&gt;<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *       Maps (e.g. {@link HashMap HashMaps}, {@link TreeMap TreeMaps}) are converted to JSON objects.<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *       Collections (e.g. {@link HashSet HashSets}, {@link LinkedList LinkedLists}) and Java arrays are converted to<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *       JSON arrays.<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *    &lt;li&gt;<a name="line.41"></a>
-<span class="sourceLineNo">042</span> *       {@link String Strings} are converted to JSON strings.<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *    &lt;li&gt;<a name="line.43"></a>
-<span class="sourceLineNo">044</span> *       {@link Number Numbers} (e.g. {@link Integer}, {@link Long}, {@link Double}) are converted to JSON numbers.<a name="line.44"></a>
-<span class="sourceLineNo">045</span> *    &lt;li&gt;<a name="line.45"></a>
-<span class="sourceLineNo">046</span> *       {@link Boolean Booleans} are converted to JSON booleans.<a name="line.46"></a>
-<span class="sourceLineNo">047</span> *    &lt;li&gt;<a name="line.47"></a>
-<span class="sourceLineNo">048</span> *       {@code nulls} are converted to JSON nulls.<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *    &lt;li&gt;<a name="line.49"></a>
-<span class="sourceLineNo">050</span> *       {@code arrays} are converted to JSON arrays.<a name="line.50"></a>
-<span class="sourceLineNo">051</span> *    &lt;li&gt;<a name="line.51"></a>
-<span class="sourceLineNo">052</span> *       {@code beans} are converted to JSON objects.<a name="line.52"></a>
-<span class="sourceLineNo">053</span> * &lt;/ul&gt;<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *<a name="line.54"></a>
-<span class="sourceLineNo">055</span> * &lt;p&gt;<a name="line.55"></a>
-<span class="sourceLineNo">056</span> * The types above are considered "JSON-primitive" object types.<a name="line.56"></a>
-<span class="sourceLineNo">057</span> * Any non-JSON-primitive object types are transformed into JSON-primitive object types through<a name="line.57"></a>
-<span class="sourceLineNo">058</span> * {@link org.apache.juneau.transform.PojoSwap PojoSwaps} associated through the<a name="line.58"></a>
-<span class="sourceLineNo">059</span> * {@link CoreObjectBuilder#pojoSwaps(Class...)} method.<a name="line.59"></a>
-<span class="sourceLineNo">060</span> * Several default transforms are provided for transforming Dates, Enums, Iterators, etc...<a name="line.60"></a>
-<span class="sourceLineNo">061</span> *<a name="line.61"></a>
-<span class="sourceLineNo">062</span> * &lt;p&gt;<a name="line.62"></a>
-<span class="sourceLineNo">063</span> * This serializer provides several serialization options.<a name="line.63"></a>
-<span class="sourceLineNo">064</span> * Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.64"></a>
-<span class="sourceLineNo">065</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.65"></a>
-<span class="sourceLineNo">066</span> *<a name="line.66"></a>
-<span class="sourceLineNo">067</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.67"></a>
-<span class="sourceLineNo">068</span> *<a name="line.68"></a>
-<span class="sourceLineNo">069</span> * This class has the following properties associated with it:<a name="line.69"></a>
-<span class="sourceLineNo">070</span> * &lt;ul&gt;<a name="line.70"></a>
-<span class="sourceLineNo">071</span> *    &lt;li&gt;{@link JsonSerializerContext}<a name="line.71"></a>
-<span class="sourceLineNo">072</span> *    &lt;li&gt;{@link SerializerContext}<a name="line.72"></a>
-<span class="sourceLineNo">073</span> *    &lt;li&gt;{@link BeanContext}<a name="line.73"></a>
-<span class="sourceLineNo">074</span> * &lt;/ul&gt;<a name="line.74"></a>
-<span class="sourceLineNo">075</span> *<a name="line.75"></a>
-<span class="sourceLineNo">076</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.76"></a>
-<span class="sourceLineNo">077</span> *<a name="line.77"></a>
-<span class="sourceLineNo">078</span> * The following direct subclasses are provided for convenience:<a name="line.78"></a>
-<span class="sourceLineNo">079</span> * &lt;ul class='spaced-list'&gt;<a name="line.79"></a>
-<span class="sourceLineNo">080</span> *    &lt;li&gt;<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *       {@link Simple} - Default serializer, single quotes, simple mode.<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *    &lt;li&gt;<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *       {@link SimpleReadable} - Default serializer, single quotes, simple mode, with whitespace.<a name="line.83"></a>
-<span class="sourceLineNo">084</span> * &lt;/ul&gt;<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *<a name="line.85"></a>
-<span class="sourceLineNo">086</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.86"></a>
-<span class="sourceLineNo">087</span> * &lt;p class='bcode'&gt;<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *    &lt;jc&gt;// Use one of the default serializers to serialize a POJO&lt;/jc&gt;<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *    String json = JsonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(someObject);<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *    &lt;jc&gt;// Create a custom serializer for lax syntax using single quote characters&lt;/jc&gt;<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *    JsonSerializer serializer = &lt;jk&gt;new&lt;/jk&gt; JsonSerializerBuilder().simple().sq().build();<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *<a name="line.93"></a>
-<span class="sourceLineNo">094</span> *    &lt;jc&gt;// Clone an existing serializer and modify it to use single-quotes&lt;/jc&gt;<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *    JsonSerializer serializer = JsonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.builder().sq().build();<a name="line.95"></a>
-<span class="sourceLineNo">096</span> *<a name="line.96"></a>
-<span class="sourceLineNo">097</span> *    &lt;jc&gt;// Serialize a POJO to JSON&lt;/jc&gt;<a name="line.97"></a>
-<span class="sourceLineNo">098</span> *    String json = serializer.serialize(someObject);<a name="line.98"></a>
-<span class="sourceLineNo">099</span> * &lt;/p&gt;<a name="line.99"></a>
-<span class="sourceLineNo">100</span> */<a name="line.100"></a>
-<span class="sourceLineNo">101</span>@Produces("application/json,text/json")<a name="line.101"></a>
-<span class="sourceLineNo">102</span>public class JsonSerializer extends WriterSerializer {<a name="line.102"></a>
-<span class="sourceLineNo">103</span><a name="line.103"></a>
-<span class="sourceLineNo">104</span>   /** Default serializer, all default settings.*/<a name="line.104"></a>
-<span class="sourceLineNo">105</span>   public static final JsonSerializer DEFAULT = new JsonSerializer(PropertyStore.create());<a name="line.105"></a>
-<span class="sourceLineNo">106</span><a name="line.106"></a>
-<span class="sourceLineNo">107</span>   /** Default serializer, all default settings.*/<a name="line.107"></a>
-<span class="sourceLineNo">108</span>   public static final JsonSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.108"></a>
-<span class="sourceLineNo">109</span><a name="line.109"></a>
-<span class="sourceLineNo">110</span>   /** Default serializer, single quotes, simple mode. */<a name="line.110"></a>
-<span class="sourceLineNo">111</span>   public static final JsonSerializer DEFAULT_LAX = new Simple(PropertyStore.create());<a name="line.111"></a>
-<span class="sourceLineNo">112</span><a name="line.112"></a>
-<span class="sourceLineNo">113</span>   /** Default serializer, single quotes, simple mode, with whitespace. */<a name="line.113"></a>
-<span class="sourceLineNo">114</span>   public static final JsonSerializer DEFAULT_LAX_READABLE = new SimpleReadable(PropertyStore.create());<a name="line.114"></a>
-<span class="sourceLineNo">115</span><a name="line.115"></a>
-<span class="sourceLineNo">116</span>   /**<a name="line.116"></a>
-<span class="sourceLineNo">117</span>    * Default serializer, single quotes, simple mode, with whitespace and recursion detection.<a name="line.117"></a>
-<span class="sourceLineNo">118</span>    * Note that recursion detection introduces a small performance penalty.<a name="line.118"></a>
-<span class="sourceLineNo">119</span>    */<a name="line.119"></a>
-<span class="sourceLineNo">120</span>   public static final JsonSerializer DEFAULT_LAX_READABLE_SAFE = new SimpleReadableSafe(PropertyStore.create());<a name="line.120"></a>
-<span class="sourceLineNo">121</span><a name="line.121"></a>
-<span class="sourceLineNo">122</span><a name="line.122"></a>
-<span class="sourceLineNo">123</span>   /** Default serializer, with whitespace. */<a name="line.123"></a>
-<span class="sourceLineNo">124</span>   public static class Readable extends JsonSerializer {<a name="line.124"></a>
-<span class="sourceLineNo">125</span><a name="line.125"></a>
-<span class="sourceLineNo">126</span>      /**<a name="line.126"></a>
-<span class="sourceLineNo">127</span>       * Constructor.<a name="line.127"></a>
-<span class="sourceLineNo">128</span>       *<a name="line.128"></a>
-<span class="sourceLineNo">129</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.129"></a>
-<span class="sourceLineNo">130</span>       */<a name="line.130"></a>
-<span class="sourceLineNo">131</span>      public Readable(PropertyStore propertyStore) {<a name="line.131"></a>
-<span class="sourceLineNo">132</span>         super(<a name="line.132"></a>
-<span class="sourceLineNo">133</span>            propertyStore.copy()<a name="line.133"></a>
-<span class="sourceLineNo">134</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.134"></a>
-<span class="sourceLineNo">135</span>         );<a name="line.135"></a>
-<span class="sourceLineNo">136</span>      }<a name="line.136"></a>
-<span class="sourceLineNo">137</span>   }<a name="line.137"></a>
-<span class="sourceLineNo">138</span><a name="line.138"></a>
-<span class="sourceLineNo">139</span>   /** Default serializer, single quotes, simple mode. */<a name="line.139"></a>
-<span class="sourceLineNo">140</span>   @Produces(value="application/json+simple,text/json+simple",contentType="application/json")<a name="line.140"></a>
-<span class="sourceLineNo">141</span>   public static class Simple extends JsonSerializer {<a name="line.141"></a>
-<span class="sourceLineNo">142</span><a name="line.142"></a>
-<span class="sourceLineNo">143</span>      /**<a name="line.143"></a>
-<span class="sourceLineNo">144</span>       * Constructor.<a name="line.144"></a>
-<span class="sourceLineNo">145</span>       *<a name="line.145"></a>
-<span class="sourceLineNo">146</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.146"></a>
-<span class="sourceLineNo">147</span>       */<a name="line.147"></a>
-<span class="sourceLineNo">148</span>      public Simple(PropertyStore propertyStore) {<a name="line.148"></a>
-<span class="sourceLineNo">149</span>         super(<a name="line.149"></a>
-<span class="sourceLineNo">150</span>            propertyStore.copy()<a name="line.150"></a>
-<span class="sourceLineNo">151</span>            .append(JSON_simpleMode, true)<a name="line.151"></a>
-<span class="sourceLineNo">152</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.152"></a>
-<span class="sourceLineNo">153</span>         );<a name="line.153"></a>
-<span class="sourceLineNo">154</span>      }<a name="line.154"></a>
-<span class="sourceLineNo">155</span>   }<a name="line.155"></a>
-<span class="sourceLineNo">156</span><a name="line.156"></a>
-<span class="sourceLineNo">157</span>   /** Default serializer, single quotes, simple mode, with whitespace. */<a name="line.157"></a>
-<span class="sourceLineNo">158</span>   public static class SimpleReadable extends JsonSerializer {<a name="line.158"></a>
-<span class="sourceLineNo">159</span><a name="line.159"></a>
-<span class="sourceLineNo">160</span>      /**<a name="line.160"></a>
-<span class="sourceLineNo">161</span>       * Constructor.<a name="line.161"></a>
-<span class="sourceLineNo">162</span>       *<a name="line.162"></a>
-<span class="sourceLineNo">163</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.163"></a>
-<span class="sourceLineNo">164</span>       */<a name="line.164"></a>
-<span class="sourceLineNo">165</span>      public SimpleReadable(PropertyStore propertyStore) {<a name="line.165"></a>
-<span class="sourceLineNo">166</span>         super(<a name="line.166"></a>
-<span class="sourceLineNo">167</span>            propertyStore.copy()<a name="line.167"></a>
-<span class="sourceLineNo">168</span>            .append(JSON_simpleMode, true)<a name="line.168"></a>
-<span class="sourceLineNo">169</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.169"></a>
-<span class="sourceLineNo">170</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.170"></a>
-<span class="sourceLineNo">171</span>         );<a name="line.171"></a>
-<span class="sourceLineNo">172</span>      }<a name="line.172"></a>
-<span class="sourceLineNo">173</span>   }<a name="line.173"></a>
-<span class="sourceLineNo">174</span><a name="line.174"></a>
-<span class="sourceLineNo">175</span>   /**<a name="line.175"></a>
-<span class="sourceLineNo">176</span>    * Default serializer, single quotes, simple mode, with whitespace and recursion detection.<a name="line.176"></a>
-<span class="sourceLineNo">177</span>    * Note that recursion detection introduces a small performance penalty.<a name="line.177"></a>
-<span class="sourceLineNo">178</span>    */<a name="line.178"></a>
-<span class="sourceLineNo">179</span>   public static class SimpleReadableSafe extends JsonSerializer {<a name="line.179"></a>
-<span class="sourceLineNo">180</span><a name="line.180"></a>
-<span class="sourceLineNo">181</span>      /**<a name="line.181"></a>
-<span class="sourceLineNo">182</span>       * Constructor.<a name="line.182"></a>
-<span class="sourceLineNo">183</span>       *<a name="line.183"></a>
-<span class="sourceLineNo">184</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.184"></a>
-<span class="sourceLineNo">185</span>       */<a name="line.185"></a>
-<span class="sourceLineNo">186</span>      public SimpleReadableSafe(PropertyStore propertyStore) {<a name="line.186"></a>
-<span class="sourceLineNo">187</span>         super(<a name="line.187"></a>
-<span class="sourceLineNo">188</span>            propertyStore.copy()<a name="line.188"></a>
-<span class="sourceLineNo">189</span>            .append(JSON_simpleMode, true)<a name="line.189"></a>
-<span class="sourceLineNo">190</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.190"></a>
-<span class="sourceLineNo">191</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.191"></a>
-<span class="sourceLineNo">192</span>            .append(SERIALIZER_detectRecursions, true)<a name="line.192"></a>
-<span class="sourceLineNo">193</span>         );<a name="line.193"></a>
-<span class="sourceLineNo">194</span>      }<a name="line.194"></a>
-<span class="sourceLineNo">195</span>   }<a name="line.195"></a>
+<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
+<span class="sourceLineNo">021</span><a name="line.21"></a>
+<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * Serializes POJO models to JSON.<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;application/json, text/json&lt;/code&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * &lt;p&gt;<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/json&lt;/code&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> *<a name="line.30"></a>
+<span class="sourceLineNo">031</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.31"></a>
+<span class="sourceLineNo">032</span> *<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * The conversion is as follows...<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * &lt;ul class='spaced-list'&gt;<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *    &lt;li&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *       Maps (e.g. {@link HashMap HashMaps}, {@link TreeMap TreeMaps}) are converted to JSON objects.<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;<a name="line.37"></a>
+<span class="sourceLineNo">038</span> *       Collections (e.g. {@link HashSet HashSets}, {@link LinkedList LinkedLists}) and Java arrays are converted to<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *       JSON arrays.<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *    &lt;li&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span> *       {@link String Strings} are converted to JSON strings.<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *    &lt;li&gt;<a name="line.42"></a>
+<span class="sourceLineNo">043</span> *       {@link Number Numbers} (e.g. {@link Integer}, {@link Long}, {@link Double}) are converted to JSON numbers.<a name="line.43"></a>
+<span class="sourceLineNo">044</span> *    &lt;li&gt;<a name="line.44"></a>
+<span class="sourceLineNo">045</span> *       {@link Boolean Booleans} are converted to JSON booleans.<a name="line.45"></a>
+<span class="sourceLineNo">046</span> *    &lt;li&gt;<a name="line.46"></a>
+<span class="sourceLineNo">047</span> *       {@code nulls} are converted to JSON nulls.<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *    &lt;li&gt;<a name="line.48"></a>
+<span class="sourceLineNo">049</span> *       {@code arrays} are converted to JSON arrays.<a name="line.49"></a>
+<span class="sourceLineNo">050</span> *    &lt;li&gt;<a name="line.50"></a>
+<span class="sourceLineNo">051</span> *       {@code beans} are converted to JSON objects.<a name="line.51"></a>
+<span class="sourceLineNo">052</span> * &lt;/ul&gt;<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *<a name="line.53"></a>
+<span class="sourceLineNo">054</span> * &lt;p&gt;<a name="line.54"></a>
+<span class="sourceLineNo">055</span> * The types above are considered "JSON-primitive" object types.<a name="line.55"></a>
+<span class="sourceLineNo">056</span> * Any non-JSON-primitive object types are transformed into JSON-primitive object types through<a name="line.56"></a>
+<span class="sourceLineNo">057</span> * {@link org.apache.juneau.transform.PojoSwap PojoSwaps} associated through the<a name="line.57"></a>
+<span class="sourceLineNo">058</span> * {@link CoreObjectBuilder#pojoSwaps(Class...)} method.<a name="line.58"></a>
+<span class="sourceLineNo">059</span> * Several default transforms are provided for transforming Dates, Enums, Iterators, etc...<a name="line.59"></a>
+<span class="sourceLineNo">060</span> *<a name="line.60"></a>
+<span class="sourceLineNo">061</span> * &lt;p&gt;<a name="line.61"></a>
+<span class="sourceLineNo">062</span> * This serializer provides several serialization options.<a name="line.62"></a>
+<span class="sourceLineNo">063</span> * Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.63"></a>
+<span class="sourceLineNo">064</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.64"></a>
+<span class="sourceLineNo">065</span> *<a name="line.65"></a>
+<span class="sourceLineNo">066</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.66"></a>
+<span class="sourceLineNo">067</span> *<a name="line.67"></a>
+<span class="sourceLineNo">068</span> * This class has the following properties associated with it:<a name="line.68"></a>
+<span class="sourceLineNo">069</span> * &lt;ul&gt;<a name="line.69"></a>
+<span class="sourceLineNo">070</span> *    &lt;li&gt;{@link JsonSerializerContext}<a name="line.70"></a>
+<span class="sourceLineNo">071</span> *    &lt;li&gt;{@link SerializerContext}<a name="line.71"></a>
+<span class="sourceLineNo">072</span> *    &lt;li&gt;{@link BeanContext}<a name="line.72"></a>
+<span class="sourceLineNo">073</span> * &lt;/ul&gt;<a name="line.73"></a>
+<span class="sourceLineNo">074</span> *<a name="line.74"></a>
+<span class="sourceLineNo">075</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.75"></a>
+<span class="sourceLineNo">076</span> *<a name="line.76"></a>
+<span class="sourceLineNo">077</span> * The following direct subclasses are provided for convenience:<a name="line.77"></a>
+<span class="sourceLineNo">078</span> * &lt;ul class='spaced-list'&gt;<a name="line.78"></a>
+<span class="sourceLineNo">079</span> *    &lt;li&gt;<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *       {@link Simple} - Default serializer, single quotes, simple mode.<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *    &lt;li&gt;<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *       {@link SimpleReadable} - Default serializer, single quotes, simple mode, with whitespace.<a name="line.82"></a>
+<span class="sourceLineNo">083</span> * &lt;/ul&gt;<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *<a name="line.84"></a>
+<span class="sourceLineNo">085</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.85"></a>
+<span class="sourceLineNo">086</span> * &lt;p class='bcode'&gt;<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *    &lt;jc&gt;// Use one of the default serializers to serialize a POJO&lt;/jc&gt;<a name="line.87"></a>
+<span class="sourceLineNo">088</span> *    String json = JsonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(someObject);<a name="line.88"></a>
+<span class="sourceLineNo">089</span> *<a name="line.89"></a>
+<span class="sourceLineNo">090</span> *    &lt;jc&gt;// Create a custom serializer for lax syntax using single quote characters&lt;/jc&gt;<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *    JsonSerializer serializer = &lt;jk&gt;new&lt;/jk&gt; JsonSerializerBuilder().simple().sq().build();<a name="line.91"></a>
+<span class="sourceLineNo">092</span> *<a name="line.92"></a>
+<span class="sourceLineNo">093</span> *    &lt;jc&gt;// Clone an existing serializer and modify it to use single-quotes&lt;/jc&gt;<a name="line.93"></a>
+<span class="sourceLineNo">094</span> *    JsonSerializer serializer = JsonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.builder().sq().build();<a name="line.94"></a>
+<span class="sourceLineNo">095</span> *<a name="line.95"></a>
+<span class="sourceLineNo">096</span> *    &lt;jc&gt;// Serialize a POJO to JSON&lt;/jc&gt;<a name="line.96"></a>
+<span class="sourceLineNo">097</span> *    String json = serializer.serialize(someObject);<a name="line.97"></a>
+<span class="sourceLineNo">098</span> * &lt;/p&gt;<a name="line.98"></a>
+<span class="sourceLineNo">099</span> */<a name="line.99"></a>
+<span class="sourceLineNo">100</span>public class JsonSerializer extends WriterSerializer {<a name="line.100"></a>
+<span class="sourceLineNo">101</span><a name="line.101"></a>
+<span class="sourceLineNo">102</span>   /** Default serializer, all default settings.*/<a name="line.102"></a>
+<span class="sourceLineNo">103</span>   public static final JsonSerializer DEFAULT = new JsonSerializer(PropertyStore.create());<a name="line.103"></a>
+<span class="sourceLineNo">104</span><a name="line.104"></a>
+<span class="sourceLineNo">105</span>   /** Default serializer, all default settings.*/<a name="line.105"></a>
+<span class="sourceLineNo">106</span>   public static final JsonSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.106"></a>
+<span class="sourceLineNo">107</span><a name="line.107"></a>
+<span class="sourceLineNo">108</span>   /** Default serializer, single quotes, simple mode. */<a name="line.108"></a>
+<span class="sourceLineNo">109</span>   public static final JsonSerializer DEFAULT_LAX = new Simple(PropertyStore.create());<a name="line.109"></a>
+<span class="sourceLineNo">110</span><a name="line.110"></a>
+<span class="sourceLineNo">111</span>   /** Default serializer, single quotes, simple mode, with whitespace. */<a name="line.111"></a>
+<span class="sourceLineNo">112</span>   public static final JsonSerializer DEFAULT_LAX_READABLE = new SimpleReadable(PropertyStore.create());<a name="line.112"></a>
+<span class="sourceLineNo">113</span><a name="line.113"></a>
+<span class="sourceLineNo">114</span>   /**<a name="line.114"></a>
+<span class="sourceLineNo">115</span>    * Default serializer, single quotes, simple mode, with whitespace and recursion detection.<a name="line.115"></a>
+<span class="sourceLineNo">116</span>    * Note that recursion detection introduces a small performance penalty.<a name="line.116"></a>
+<span class="sourceLineNo">117</span>    */<a name="line.117"></a>
+<span class="sourceLineNo">118</span>   public static final JsonSerializer DEFAULT_LAX_READABLE_SAFE = new SimpleReadableSafe(PropertyStore.create());<a name="line.118"></a>
+<span class="sourceLineNo">119</span><a name="line.119"></a>
+<span class="sourceLineNo">120</span><a name="line.120"></a>
+<span class="sourceLineNo">121</span>   /** Default serializer, with whitespace. */<a name="line.121"></a>
+<span class="sourceLineNo">122</span>   public static class Readable extends JsonSerializer {<a name="line.122"></a>
+<span class="sourceLineNo">123</span><a name="line.123"></a>
+<span class="sourceLineNo">124</span>      /**<a name="line.124"></a>
+<span class="sourceLineNo">125</span>       * Constructor.<a name="line.125"></a>
+<span class="sourceLineNo">126</span>       *<a name="line.126"></a>
+<span class="sourceLineNo">127</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.127"></a>
+<span class="sourceLineNo">128</span>       */<a name="line.128"></a>
+<span class="sourceLineNo">129</span>      public Readable(PropertyStore propertyStore) {<a name="line.129"></a>
+<span class="sourceLineNo">130</span>         super(<a name="line.130"></a>
+<span class="sourceLineNo">131</span>            propertyStore.copy()<a name="line.131"></a>
+<span class="sourceLineNo">132</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.132"></a>
+<span class="sourceLineNo">133</span>         );<a name="line.133"></a>
+<span class="sourceLineNo">134</span>      }<a name="line.134"></a>
+<span class="sourceLineNo">135</span>   }<a name="line.135"></a>
+<span class="sourceLineNo">136</span><a name="line.136"></a>
+<span class="sourceLineNo">137</span>   /** Default serializer, single quotes, simple mode. */<a name="line.137"></a>
+<span class="sourceLineNo">138</span>   public static class Simple extends JsonSerializer {<a name="line.138"></a>
+<span class="sourceLineNo">139</span><a name="line.139"></a>
+<span class="sourceLineNo">140</span>      /**<a name="line.140"></a>
+<span class="sourceLineNo">141</span>       * Constructor.<a name="line.141"></a>
+<span class="sourceLineNo">142</span>       *<a name="line.142"></a>
+<span class="sourceLineNo">143</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.143"></a>
+<span class="sourceLineNo">144</span>       */<a name="line.144"></a>
+<span class="sourceLineNo">145</span>      public Simple(PropertyStore propertyStore) {<a name="line.145"></a>
+<span class="sourceLineNo">146</span>         super(<a name="line.146"></a>
+<span class="sourceLineNo">147</span>            propertyStore.copy()<a name="line.147"></a>
+<span class="sourceLineNo">148</span>               .append(JSON_simpleMode, true)<a name="line.148"></a>
+<span class="sourceLineNo">149</span>               .append(SERIALIZER_quoteChar, '\''),<a name="line.149"></a>
+<span class="sourceLineNo">150</span>            "application/json",<a name="line.150"></a>
+<span class="sourceLineNo">151</span>            "application/json+simple", "text/json+simple"<a name="line.151"></a>
+<span class="sourceLineNo">152</span>         );<a name="line.152"></a>
+<span class="sourceLineNo">153</span>      }<a name="line.153"></a>
+<span class="sourceLineNo">154</span>   }<a name="line.154"></a>
+<span class="sourceLineNo">155</span><a name="line.155"></a>
+<span class="sourceLineNo">156</span>   /** Default serializer, single quotes, simple mode, with whitespace. */<a name="line.156"></a>
+<span class="sourceLineNo">157</span>   public static class SimpleReadable extends JsonSerializer {<a name="line.157"></a>
+<span class="sourceLineNo">158</span><a name="line.158"></a>
+<span class="sourceLineNo">159</span>      /**<a name="line.159"></a>
+<span class="sourceLineNo">160</span>       * Constructor.<a name="line.160"></a>
+<span class="sourceLineNo">161</span>       *<a name="line.161"></a>
+<span class="sourceLineNo">162</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.162"></a>
+<span class="sourceLineNo">163</span>       */<a name="line.163"></a>
+<span class="sourceLineNo">164</span>      public SimpleReadable(PropertyStore propertyStore) {<a name="line.164"></a>
+<span class="sourceLineNo">165</span>         super(<a name="line.165"></a>
+<span class="sourceLineNo">166</span>            propertyStore.copy()<a name="line.166"></a>
+<span class="sourceLineNo">167</span>            .append(JSON_simpleMode, true)<a name="line.167"></a>
+<span class="sourceLineNo">168</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.168"></a>
+<span class="sourceLineNo">169</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.169"></a>
+<span class="sourceLineNo">170</span>         );<a name="line.170"></a>
+<span class="sourceLineNo">171</span>      }<a name="line.171"></a>
+<span class="sourceLineNo">172</span>   }<a name="line.172"></a>
+<span class="sourceLineNo">173</span><a name="line.173"></a>
+<span class="sourceLineNo">174</span>   /**<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    * Default serializer, single quotes, simple mode, with whitespace and recursion detection.<a name="line.175"></a>
+<span class="sourceLineNo">176</span>    * Note that recursion detection introduces a small performance penalty.<a name="line.176"></a>
+<span class="sourceLineNo">177</span>    */<a name="line.177"></a>
+<span class="sourceLineNo">178</span>   public static class SimpleReadableSafe extends JsonSerializer {<a name="line.178"></a>
+<span class="sourceLineNo">179</span><a name="line.179"></a>
+<span class="sourceLineNo">180</span>      /**<a name="line.180"></a>
+<span class="sourceLineNo">181</span>       * Constructor.<a name="line.181"></a>
+<span class="sourceLineNo">182</span>       *<a name="line.182"></a>
+<span class="sourceLineNo">183</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.183"></a>
+<span class="sourceLineNo">184</span>       */<a name="line.184"></a>
+<span class="sourceLineNo">185</span>      public SimpleReadableSafe(PropertyStore propertyStore) {<a name="line.185"></a>
+<span class="sourceLineNo">186</span>         super(<a name="line.186"></a>
+<span class="sourceLineNo">187</span>            propertyStore.copy()<a name="line.187"></a>
+<span class="sourceLineNo">188</span>            .append(JSON_simpleMode, true)<a name="line.188"></a>
+<span class="sourceLineNo">189</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.189"></a>
+<span class="sourceLineNo">190</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.190"></a>
+<span class="sourceLineNo">191</span>            .append(SERIALIZER_detectRecursions, true)<a name="line.191"></a>
+<span class="sourceLineNo">192</span>         );<a name="line.192"></a>
+<span class="sourceLineNo">193</span>      }<a name="line.193"></a>
+<span class="sourceLineNo">194</span>   }<a name="line.194"></a>
+<span class="sourceLineNo">195</span><a name="line.195"></a>
 <span class="sourceLineNo">196</span><a name="line.196"></a>
-<span class="sourceLineNo">197</span><a name="line.197"></a>
-<span class="sourceLineNo">198</span>   final JsonSerializerContext ctx;<a name="line.198"></a>
-<span class="sourceLineNo">199</span>   private volatile JsonSchemaSerializer schemaSerializer;<a name="line.199"></a>
-<span class="sourceLineNo">200</span><a name="line.200"></a>
-<span class="sourceLineNo">201</span>   /**<a name="line.201"></a>
-<span class="sourceLineNo">202</span>    * Constructor.<a name="line.202"></a>
-<span class="sourceLineNo">203</span>    *<a name="line.203"></a>
-<span class="sourceLineNo">204</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.204"></a>
+<span class="sourceLineNo">197</span>   final JsonSerializerContext ctx;<a name="line.197"></a>
+<span class="sourceLineNo">198</span>   private volatile JsonSchemaSerializer schemaSerializer;<a name="line.198"></a>
+<span class="sourceLineNo">199</span><a name="line.199"></a>
+<span class="sourceLineNo">200</span>   /**<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    * Constructor.<a name="line.201"></a>
+<span class="sourceLineNo">202</span>    *<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    * @param propertyStore<a name="line.203"></a>
+<span class="sourceLineNo">204</span>    *    The property store containing all the settings for this object.<a name="line.204"></a>
 <span class="sourceLineNo">205</span>    */<a name="line.205"></a>
 <span class="sourceLineNo">206</span>   public JsonSerializer(PropertyStore propertyStore) {<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      super(propertyStore);<a name="line.207"></a>
-<span class="sourceLineNo">208</span>      this.ctx = createContext(JsonSerializerContext.class);<a name="line.208"></a>
-<span class="sourceLineNo">209</span>   }<a name="line.209"></a>
-<span class="sourceLineNo">210</span><a name="line.210"></a>
-<span class="sourceLineNo">211</span>   @Override /* CoreObject */<a name="line.211"></a>
-<span class="sourceLineNo">212</span>   public JsonSerializerBuilder builder() {<a name="line.212"></a>
-<span class="sourceLineNo">213</span>      return new JsonSerializerBuilder(propertyStore);<a name="line.213"></a>
-<span class="sourceLineNo">214</span>   }<a name="line.214"></a>
-<span class="sourceLineNo">215</span><a name="line.215"></a>
-<span class="sourceLineNo">216</span>   /**<a name="line.216"></a>
-<span class="sourceLineNo">217</span>    * Returns the schema serializer based on the settings of this serializer.<a name="line.217"></a>
-<span class="sourceLineNo">218</span>    *<a name="line.218"></a>
-<span class="sourceLineNo">219</span>    * @return The schema serializer.<a name="line.219"></a>
-<span class="sourceLineNo">220</span>    */<a name="line.220"></a>
-<span class="sourceLineNo">221</span>   public JsonSchemaSerializer getSchemaSerializer() {<a name="line.221"></a>
-<span class="sourceLineNo">222</span>      if (schemaSerializer == null)<a name="line.222"></a>
-<span class="sourceLineNo">223</span>         schemaSerializer = new JsonSchemaSerializer(propertyStore);<a name="line.223"></a>
-<span class="sourceLineNo">224</span>      return schemaSerializer;<a name="line.224"></a>
-<span class="sourceLineNo">225</span>   }<a name="line.225"></a>
-<span class="sourceLineNo">226</span><a name="line.226"></a>
-<span class="sourceLineNo">227</span>   //--------------------------------------------------------------------------------<a name="line.227"></a>
-<span class="sourceLineNo">228</span>   // Entry point methods<a name="line.228"></a>
-<span class="sourceLineNo">229</span>   //--------------------------------------------------------------------------------<a name="line.229"></a>
-<span class="sourceLineNo">230</span><a name="line.230"></a>
-<span class="sourceLineNo">231</span>   @Override /* Serializer */<a name="line.231"></a>
-<span class="sourceLineNo">232</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.232"></a>
-<span class="sourceLineNo">233</span>      return new JsonSerializerSession(ctx, args);<a name="line.233"></a>
+<span class="sourceLineNo">207</span>      this(propertyStore, "application/json", "application/json", "text/json");<a name="line.207"></a>
+<span class="sourceLineNo">208</span>   }<a name="line.208"></a>
+<span class="sourceLineNo">209</span><a name="line.209"></a>
+<span class="sourceLineNo">210</span>   /**<a name="line.210"></a>
+<span class="sourceLineNo">211</span>    * Constructor.<a name="line.211"></a>
+<span class="sourceLineNo">212</span>    *<a name="line.212"></a>
+<span class="sourceLineNo">213</span>    * @param propertyStore<a name="line.213"></a>
+<span class="sourceLineNo">214</span>    *    The property store containing all the settings for this object.<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    * @param produces<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    *    The media type that this serializer produces.<a name="line.216"></a>
+<span class="sourceLineNo">217</span>    * @param accept<a name="line.217"></a>
+<span class="sourceLineNo">218</span>    *    The accept media types that the serializer can handle.<a name="line.218"></a>
+<span class="sourceLineNo">219</span>    *    &lt;p&gt;<a name="line.219"></a>
+<span class="sourceLineNo">220</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.220"></a>
+<span class="sourceLineNo">221</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.221"></a>
+<span class="sourceLineNo">222</span>    *    &lt;p&gt;<a name="line.222"></a>
+<span class="sourceLineNo">223</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.223"></a>
+<span class="sourceLineNo">224</span>    *    &lt;p&gt;<a name="line.224"></a>
+<span class="sourceLineNo">225</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.225"></a>
+<span class="sourceLineNo">226</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.226"></a>
+<span class="sourceLineNo">227</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.227"></a>
+<span class="sourceLineNo">228</span>    *    &lt;br&gt;...or...<a name="line.228"></a>
+<span class="sourceLineNo">229</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.229"></a>
+<span class="sourceLineNo">230</span>    */<a name="line.230"></a>
+<span class="sourceLineNo">231</span>   public JsonSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.231"></a>
+<span class="sourceLineNo">232</span>      super(propertyStore, produces, accept);<a name="line.232"></a>
+<span class="sourceLineNo">233</span>      this.ctx = createContext(JsonSerializerContext.class);<a name="line.233"></a>
 <span class="sourceLineNo">234</span>   }<a name="line.234"></a>
-<span class="sourceLineNo">235</span>}<a name="line.235"></a>
+<span class="sourceLineNo">235</span><a name="line.235"></a>
+<span class="sourceLineNo">236</span>   @Override /* CoreObject */<a name="line.236"></a>
+<span class="sourceLineNo">237</span>   public JsonSerializerBuilder builder() {<a name="line.237"></a>
+<span class="sourceLineNo">238</span>      return new JsonSerializerBuilder(propertyStore);<a name="line.238"></a>
+<span class="sourceLineNo">239</span>   }<a name="line.239"></a>
+<span class="sourceLineNo">240</span><a name="line.240"></a>
+<span class="sourceLineNo">241</span>   /**<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    * Returns the schema serializer based on the settings of this serializer.<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    *<a name="line.243"></a>
+<span class="sourceLineNo">244</span>    * @return The schema serializer.<a name="line.244"></a>
+<span class="sourceLineNo">245</span>    */<a name="line.245"></a>
+<span class="sourceLineNo">246</span>   public JsonSchemaSerializer getSchemaSerializer() {<a name="line.246"></a>
+<span class="sourceLineNo">247</span>      if (schemaSerializer == null)<a name="line.247"></a>
+<span class="sourceLineNo">248</span>         schemaSerializer = new JsonSchemaSerializer(propertyStore);<a name="line.248"></a>
+<span class="sourceLineNo">249</span>      return schemaSerializer;<a name="line.249"></a>
+<span class="sourceLineNo">250</span>   }<a name="line.250"></a>
+<span class="sourceLineNo">251</span><a name="line.251"></a>
+<span class="sourceLineNo">252</span>   //--------------------------------------------------------------------------------<a name="line.252"></a>
+<span class="sourceLineNo">253</span>   // Entry point methods<a name="line.253"></a>
+<span class="sourceLineNo">254</span>   //--------------------------------------------------------------------------------<a name="line.254"></a>
+<span class="sourceLineNo">255</span><a name="line.255"></a>
+<span class="sourceLineNo">256</span>   @Override /* Serializer */<a name="line.256"></a>
+<span class="sourceLineNo">257</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.257"></a>
+<span class="sourceLineNo">258</span>      return new JsonSerializerSession(ctx, args);<a name="line.258"></a>
+<span class="sourceLineNo">259</span>   }<a name="line.259"></a>
+<span class="sourceLineNo">260</span>}<a name="line.260"></a>
 
 
 



[20/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/parser/ParserSessionArgs.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/parser/ParserSessionArgs.html b/content/site/apidocs/src-html/org/apache/juneau/parser/ParserSessionArgs.html
index 0ea6e1b..28016b1 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/parser/ParserSessionArgs.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/parser/ParserSessionArgs.html
@@ -31,42 +31,37 @@
 <span class="sourceLineNo">023</span> */<a name="line.23"></a>
 <span class="sourceLineNo">024</span>public final class ParserSessionArgs extends BeanSessionArgs {<a name="line.24"></a>
 <span class="sourceLineNo">025</span><a name="line.25"></a>
-<span class="sourceLineNo">026</span>   /**<a name="line.26"></a>
-<span class="sourceLineNo">027</span>    * Default session arguments.<a name="line.27"></a>
-<span class="sourceLineNo">028</span>    */<a name="line.28"></a>
-<span class="sourceLineNo">029</span>   protected static final ParserSessionArgs DEFAULT = new ParserSessionArgs(ObjectMap.EMPTY_MAP, null, null, null, null, null);<a name="line.29"></a>
-<span class="sourceLineNo">030</span><a name="line.30"></a>
-<span class="sourceLineNo">031</span>   final Method javaMethod;<a name="line.31"></a>
-<span class="sourceLineNo">032</span>   final Object outer;<a name="line.32"></a>
-<span class="sourceLineNo">033</span><a name="line.33"></a>
-<span class="sourceLineNo">034</span>   /**<a name="line.34"></a>
-<span class="sourceLineNo">035</span>    * Constructor.<a name="line.35"></a>
-<span class="sourceLineNo">036</span>    *<a name="line.36"></a>
-<span class="sourceLineNo">037</span>    * @param properties<a name="line.37"></a>
-<span class="sourceLineNo">038</span>    *    Session-level properties.<a name="line.38"></a>
-<span class="sourceLineNo">039</span>    *    These override context-level properties.<a name="line.39"></a>
-<span class="sourceLineNo">040</span>    *    Can be &lt;jk&gt;null&lt;/jk&gt;.<a name="line.40"></a>
-<span class="sourceLineNo">041</span>    * @param javaMethod<a name="line.41"></a>
-<span class="sourceLineNo">042</span>    *    The java method that called this serializer, usually the method in a REST servlet.<a name="line.42"></a>
-<span class="sourceLineNo">043</span>    *    Can be &lt;jk&gt;null&lt;/jk&gt;.<a name="line.43"></a>
-<span class="sourceLineNo">044</span>    * @param locale<a name="line.44"></a>
-<span class="sourceLineNo">045</span>    *    The session locale.<a name="line.45"></a>
-<span class="sourceLineNo">046</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then the locale defined on the context is used.<a name="line.46"></a>
-<span class="sourceLineNo">047</span>    * @param timeZone<a name="line.47"></a>
-<span class="sourceLineNo">048</span>    *    The session timezone.<a name="line.48"></a>
-<span class="sourceLineNo">049</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then the timezone defined on the context is used.<a name="line.49"></a>
-<span class="sourceLineNo">050</span>    * @param mediaType<a name="line.50"></a>
-<span class="sourceLineNo">051</span>    *    The session media type (e.g. &lt;js&gt;"application/json"&lt;/js&gt;).<a name="line.51"></a>
-<span class="sourceLineNo">052</span>    *    Can be &lt;jk&gt;null&lt;/jk&gt;.<a name="line.52"></a>
-<span class="sourceLineNo">053</span>    * @param outer<a name="line.53"></a>
-<span class="sourceLineNo">054</span>    *    The outer object for instantiating top-level non-static inner classes.<a name="line.54"></a>
-<span class="sourceLineNo">055</span>    */<a name="line.55"></a>
-<span class="sourceLineNo">056</span>   public ParserSessionArgs(ObjectMap properties, Method javaMethod, Locale locale, TimeZone timeZone, MediaType mediaType, Object outer) {<a name="line.56"></a>
-<span class="sourceLineNo">057</span>      super(properties, locale, timeZone, mediaType);<a name="line.57"></a>
-<span class="sourceLineNo">058</span>      this.javaMethod = javaMethod;<a name="line.58"></a>
-<span class="sourceLineNo">059</span>      this.outer = outer;<a name="line.59"></a>
-<span class="sourceLineNo">060</span>   }<a name="line.60"></a>
-<span class="sourceLineNo">061</span>}<a name="line.61"></a>
+<span class="sourceLineNo">026</span>   final Method javaMethod;<a name="line.26"></a>
+<span class="sourceLineNo">027</span>   final Object outer;<a name="line.27"></a>
+<span class="sourceLineNo">028</span><a name="line.28"></a>
+<span class="sourceLineNo">029</span>   /**<a name="line.29"></a>
+<span class="sourceLineNo">030</span>    * Constructor.<a name="line.30"></a>
+<span class="sourceLineNo">031</span>    *<a name="line.31"></a>
+<span class="sourceLineNo">032</span>    * @param properties<a name="line.32"></a>
+<span class="sourceLineNo">033</span>    *    Session-level properties.<a name="line.33"></a>
+<span class="sourceLineNo">034</span>    *    These override context-level properties.<a name="line.34"></a>
+<span class="sourceLineNo">035</span>    *    Can be &lt;jk&gt;null&lt;/jk&gt;.<a name="line.35"></a>
+<span class="sourceLineNo">036</span>    * @param javaMethod<a name="line.36"></a>
+<span class="sourceLineNo">037</span>    *    The java method that called this serializer, usually the method in a REST servlet.<a name="line.37"></a>
+<span class="sourceLineNo">038</span>    *    Can be &lt;jk&gt;null&lt;/jk&gt;.<a name="line.38"></a>
+<span class="sourceLineNo">039</span>    * @param locale<a name="line.39"></a>
+<span class="sourceLineNo">040</span>    *    The session locale.<a name="line.40"></a>
+<span class="sourceLineNo">041</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then the locale defined on the context is used.<a name="line.41"></a>
+<span class="sourceLineNo">042</span>    * @param timeZone<a name="line.42"></a>
+<span class="sourceLineNo">043</span>    *    The session timezone.<a name="line.43"></a>
+<span class="sourceLineNo">044</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then the timezone defined on the context is used.<a name="line.44"></a>
+<span class="sourceLineNo">045</span>    * @param mediaType<a name="line.45"></a>
+<span class="sourceLineNo">046</span>    *    The session media type (e.g. &lt;js&gt;"application/json"&lt;/js&gt;).<a name="line.46"></a>
+<span class="sourceLineNo">047</span>    *    Can be &lt;jk&gt;null&lt;/jk&gt;.<a name="line.47"></a>
+<span class="sourceLineNo">048</span>    * @param outer<a name="line.48"></a>
+<span class="sourceLineNo">049</span>    *    The outer object for instantiating top-level non-static inner classes.<a name="line.49"></a>
+<span class="sourceLineNo">050</span>    */<a name="line.50"></a>
+<span class="sourceLineNo">051</span>   public ParserSessionArgs(ObjectMap properties, Method javaMethod, Locale locale, TimeZone timeZone, MediaType mediaType, Object outer) {<a name="line.51"></a>
+<span class="sourceLineNo">052</span>      super(properties, locale, timeZone, mediaType);<a name="line.52"></a>
+<span class="sourceLineNo">053</span>      this.javaMethod = javaMethod;<a name="line.53"></a>
+<span class="sourceLineNo">054</span>      this.outer = outer;<a name="line.54"></a>
+<span class="sourceLineNo">055</span>   }<a name="line.55"></a>
+<span class="sourceLineNo">056</span>}<a name="line.56"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/parser/ReaderParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/parser/ReaderParser.html b/content/site/apidocs/src-html/org/apache/juneau/parser/ReaderParser.html
index 3f27d40..4172b59 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/parser/ReaderParser.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/parser/ReaderParser.html
@@ -21,42 +21,35 @@
 <span class="sourceLineNo">013</span>package org.apache.juneau.parser;<a name="line.13"></a>
 <span class="sourceLineNo">014</span><a name="line.14"></a>
 <span class="sourceLineNo">015</span>import org.apache.juneau.*;<a name="line.15"></a>
-<span class="sourceLineNo">016</span>import org.apache.juneau.annotation.*;<a name="line.16"></a>
-<span class="sourceLineNo">017</span><a name="line.17"></a>
-<span class="sourceLineNo">018</span>/**<a name="line.18"></a>
-<span class="sourceLineNo">019</span> * Subclass of {@link Parser} for characters-based parsers.<a name="line.19"></a>
-<span class="sourceLineNo">020</span> *<a name="line.20"></a>
-<span class="sourceLineNo">021</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.21"></a>
-<span class="sourceLineNo">022</span> *<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * This class is typically the parent class of all character-based parsers.<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * It has 1 abstract method to implement...<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * &lt;ul&gt;<a name="line.25"></a>
-<span class="sourceLineNo">026</span> *    &lt;li&gt;&lt;code&gt;parse(ParserSession, ClassMeta)&lt;/code&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> * &lt;/ul&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> *<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * &lt;h6 class='topic'&gt;@Consumes annotation&lt;/h6&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> *<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * The media types that this parser can handle is specified through the {@link Consumes @Consumes} annotation.<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;p&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * However, the media types can also be specified programmatically by overriding the {@link #getMediaTypes()} method.<a name="line.34"></a>
-<span class="sourceLineNo">035</span> */<a name="line.35"></a>
-<span class="sourceLineNo">036</span>public abstract class ReaderParser extends Parser {<a name="line.36"></a>
-<span class="sourceLineNo">037</span><a name="line.37"></a>
-<span class="sourceLineNo">038</span>   /**<a name="line.38"></a>
-<span class="sourceLineNo">039</span>    * Constructor.<a name="line.39"></a>
-<span class="sourceLineNo">040</span>    *<a name="line.40"></a>
-<span class="sourceLineNo">041</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.41"></a>
-<span class="sourceLineNo">042</span>    */<a name="line.42"></a>
-<span class="sourceLineNo">043</span>   protected ReaderParser(PropertyStore propertyStore) {<a name="line.43"></a>
-<span class="sourceLineNo">044</span>      super(propertyStore);<a name="line.44"></a>
-<span class="sourceLineNo">045</span>   }<a name="line.45"></a>
-<span class="sourceLineNo">046</span><a name="line.46"></a>
-<span class="sourceLineNo">047</span>   @Override /* Parser */<a name="line.47"></a>
-<span class="sourceLineNo">048</span>   public final boolean isReaderParser() {<a name="line.48"></a>
-<span class="sourceLineNo">049</span>      return true;<a name="line.49"></a>
-<span class="sourceLineNo">050</span>   }<a name="line.50"></a>
-<span class="sourceLineNo">051</span>}<a name="line.51"></a>
+<span class="sourceLineNo">016</span><a name="line.16"></a>
+<span class="sourceLineNo">017</span>/**<a name="line.17"></a>
+<span class="sourceLineNo">018</span> * Subclass of {@link Parser} for characters-based parsers.<a name="line.18"></a>
+<span class="sourceLineNo">019</span> *<a name="line.19"></a>
+<span class="sourceLineNo">020</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.20"></a>
+<span class="sourceLineNo">021</span> *<a name="line.21"></a>
+<span class="sourceLineNo">022</span> * This class is typically the parent class of all character-based parsers.<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * It has 1 abstract method to implement...<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * &lt;ul&gt;<a name="line.24"></a>
+<span class="sourceLineNo">025</span> *    &lt;li&gt;&lt;code&gt;parse(ParserSession, ClassMeta)&lt;/code&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> * &lt;/ul&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> */<a name="line.27"></a>
+<span class="sourceLineNo">028</span>public abstract class ReaderParser extends Parser {<a name="line.28"></a>
+<span class="sourceLineNo">029</span><a name="line.29"></a>
+<span class="sourceLineNo">030</span>   /**<a name="line.30"></a>
+<span class="sourceLineNo">031</span>    * Constructor.<a name="line.31"></a>
+<span class="sourceLineNo">032</span>    *<a name="line.32"></a>
+<span class="sourceLineNo">033</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.33"></a>
+<span class="sourceLineNo">034</span>    * @param consumes The list of media types that this parser consumes (e.g. &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;).<a name="line.34"></a>
+<span class="sourceLineNo">035</span>    */<a name="line.35"></a>
+<span class="sourceLineNo">036</span>   protected ReaderParser(PropertyStore propertyStore, String...consumes) {<a name="line.36"></a>
+<span class="sourceLineNo">037</span>      super(propertyStore, consumes);<a name="line.37"></a>
+<span class="sourceLineNo">038</span>   }<a name="line.38"></a>
+<span class="sourceLineNo">039</span><a name="line.39"></a>
+<span class="sourceLineNo">040</span>   @Override /* Parser */<a name="line.40"></a>
+<span class="sourceLineNo">041</span>   public final boolean isReaderParser() {<a name="line.41"></a>
+<span class="sourceLineNo">042</span>      return true;<a name="line.42"></a>
+<span class="sourceLineNo">043</span>   }<a name="line.43"></a>
+<span class="sourceLineNo">044</span>}<a name="line.44"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/plaintext/PlainTextParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/plaintext/PlainTextParser.html b/content/site/apidocs/src-html/org/apache/juneau/plaintext/PlainTextParser.html
index 87ad773..fe72f3b 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/plaintext/PlainTextParser.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/plaintext/PlainTextParser.html
@@ -21,63 +21,74 @@
 <span class="sourceLineNo">013</span>package org.apache.juneau.plaintext;<a name="line.13"></a>
 <span class="sourceLineNo">014</span><a name="line.14"></a>
 <span class="sourceLineNo">015</span>import org.apache.juneau.*;<a name="line.15"></a>
-<span class="sourceLineNo">016</span>import org.apache.juneau.annotation.*;<a name="line.16"></a>
-<span class="sourceLineNo">017</span>import org.apache.juneau.parser.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span>import org.apache.juneau.transform.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span><a name="line.19"></a>
-<span class="sourceLineNo">020</span>/**<a name="line.20"></a>
-<span class="sourceLineNo">021</span> * Parsers HTTP plain text request bodies into &lt;a class="doclink" href="../../../../overview-summary.html#Core.PojoCategories"&gt;Group 5&lt;/a&gt;<a name="line.21"></a>
-<span class="sourceLineNo">022</span> * POJOs.<a name="line.22"></a>
-<span class="sourceLineNo">023</span> *<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/plain&lt;/code&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * &lt;p&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/plain&lt;/code&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> *<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * Essentially just converts plain text to POJOs via static &lt;code&gt;fromString()&lt;/code&gt; or &lt;code&gt;valueOf()&lt;/code&gt;, or<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * through constructors that take a single string argument.<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *<a name="line.35"></a>
-<span class="sourceLineNo">036</span> * &lt;p&gt;<a name="line.36"></a>
-<span class="sourceLineNo">037</span> * Also parses objects using a transform if the object class has an {@link PojoSwap PojoSwap&amp;lt;?,String&amp;gt;} transform<a name="line.37"></a>
-<span class="sourceLineNo">038</span> * defined on it.<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *<a name="line.39"></a>
-<span class="sourceLineNo">040</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *<a name="line.41"></a>
-<span class="sourceLineNo">042</span> * This class has the following properties associated with it:<a name="line.42"></a>
-<span class="sourceLineNo">043</span> * &lt;ul&gt;<a name="line.43"></a>
-<span class="sourceLineNo">044</span> *    &lt;li&gt;{@link ParserContext}<a name="line.44"></a>
-<span class="sourceLineNo">045</span> * &lt;/ul&gt;<a name="line.45"></a>
-<span class="sourceLineNo">046</span> */<a name="line.46"></a>
-<span class="sourceLineNo">047</span>@Consumes("text/plain")<a name="line.47"></a>
-<span class="sourceLineNo">048</span>public class PlainTextParser extends ReaderParser {<a name="line.48"></a>
-<span class="sourceLineNo">049</span><a name="line.49"></a>
-<span class="sourceLineNo">050</span>   /** Default parser, all default settings.*/<a name="line.50"></a>
-<span class="sourceLineNo">051</span>   public static final PlainTextParser DEFAULT = new PlainTextParser(PropertyStore.create());<a name="line.51"></a>
-<span class="sourceLineNo">052</span><a name="line.52"></a>
-<span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>   /**<a name="line.54"></a>
-<span class="sourceLineNo">055</span>    * Constructor.<a name="line.55"></a>
-<span class="sourceLineNo">056</span>    *<a name="line.56"></a>
-<span class="sourceLineNo">057</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.57"></a>
-<span class="sourceLineNo">058</span>    */<a name="line.58"></a>
-<span class="sourceLineNo">059</span>   public PlainTextParser(PropertyStore propertyStore) {<a name="line.59"></a>
-<span class="sourceLineNo">060</span>      super(propertyStore);<a name="line.60"></a>
-<span class="sourceLineNo">061</span>   }<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span>   @Override /* CoreObject */<a name="line.63"></a>
-<span class="sourceLineNo">064</span>   public PlainTextParserBuilder builder() {<a name="line.64"></a>
-<span class="sourceLineNo">065</span>      return new PlainTextParserBuilder(propertyStore);<a name="line.65"></a>
-<span class="sourceLineNo">066</span>   }<a name="line.66"></a>
-<span class="sourceLineNo">067</span><a name="line.67"></a>
-<span class="sourceLineNo">068</span>   @Override /* Parser */<a name="line.68"></a>
-<span class="sourceLineNo">069</span>   public ReaderParserSession createSession(ParserSessionArgs args) {<a name="line.69"></a>
-<span class="sourceLineNo">070</span>      return new PlainTextParserSession(args);<a name="line.70"></a>
-<span class="sourceLineNo">071</span>   }<a name="line.71"></a>
-<span class="sourceLineNo">072</span>}<a name="line.72"></a>
+<span class="sourceLineNo">016</span>import org.apache.juneau.parser.*;<a name="line.16"></a>
+<span class="sourceLineNo">017</span>import org.apache.juneau.transform.*;<a name="line.17"></a>
+<span class="sourceLineNo">018</span><a name="line.18"></a>
+<span class="sourceLineNo">019</span>/**<a name="line.19"></a>
+<span class="sourceLineNo">020</span> * Parsers HTTP plain text request bodies into &lt;a class="doclink" href="../../../../overview-summary.html#Core.PojoCategories"&gt;Group 5&lt;/a&gt;<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * POJOs.<a name="line.21"></a>
+<span class="sourceLineNo">022</span> *<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/plain&lt;/code&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * &lt;p&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/plain&lt;/code&gt;<a name="line.28"></a>
+<span class="sourceLineNo">029</span> *<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * Essentially just converts plain text to POJOs via static &lt;code&gt;fromString()&lt;/code&gt; or &lt;code&gt;valueOf()&lt;/code&gt;, or<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * through constructors that take a single string argument.<a name="line.33"></a>
+<span class="sourceLineNo">034</span> *<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * &lt;p&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span> * Also parses objects using a transform if the object class has an {@link PojoSwap PojoSwap&amp;lt;?,String&amp;gt;} transform<a name="line.36"></a>
+<span class="sourceLineNo">037</span> * defined on it.<a name="line.37"></a>
+<span class="sourceLineNo">038</span> *<a name="line.38"></a>
+<span class="sourceLineNo">039</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *<a name="line.40"></a>
+<span class="sourceLineNo">041</span> * This class has the following properties associated with it:<a name="line.41"></a>
+<span class="sourceLineNo">042</span> * &lt;ul&gt;<a name="line.42"></a>
+<span class="sourceLineNo">043</span> *    &lt;li&gt;{@link ParserContext}<a name="line.43"></a>
+<span class="sourceLineNo">044</span> * &lt;/ul&gt;<a name="line.44"></a>
+<span class="sourceLineNo">045</span> */<a name="line.45"></a>
+<span class="sourceLineNo">046</span>public class PlainTextParser extends ReaderParser {<a name="line.46"></a>
+<span class="sourceLineNo">047</span><a name="line.47"></a>
+<span class="sourceLineNo">048</span>   /** Default parser, all default settings.*/<a name="line.48"></a>
+<span class="sourceLineNo">049</span>   public static final PlainTextParser DEFAULT = new PlainTextParser(PropertyStore.create());<a name="line.49"></a>
+<span class="sourceLineNo">050</span><a name="line.50"></a>
+<span class="sourceLineNo">051</span><a name="line.51"></a>
+<span class="sourceLineNo">052</span>   /**<a name="line.52"></a>
+<span class="sourceLineNo">053</span>    * Constructor.<a name="line.53"></a>
+<span class="sourceLineNo">054</span>    *<a name="line.54"></a>
+<span class="sourceLineNo">055</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.55"></a>
+<span class="sourceLineNo">056</span>    */<a name="line.56"></a>
+<span class="sourceLineNo">057</span>   public PlainTextParser(PropertyStore propertyStore) {<a name="line.57"></a>
+<span class="sourceLineNo">058</span>      this(propertyStore, "text/plain");<a name="line.58"></a>
+<span class="sourceLineNo">059</span>   }<a name="line.59"></a>
+<span class="sourceLineNo">060</span><a name="line.60"></a>
+<span class="sourceLineNo">061</span>   /**<a name="line.61"></a>
+<span class="sourceLineNo">062</span>    * Constructor.<a name="line.62"></a>
+<span class="sourceLineNo">063</span>    *<a name="line.63"></a>
+<span class="sourceLineNo">064</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.64"></a>
+<span class="sourceLineNo">065</span>    * @param consumes The media types that this parser consumes.<a name="line.65"></a>
+<span class="sourceLineNo">066</span>    *    &lt;p&gt;<a name="line.66"></a>
+<span class="sourceLineNo">067</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.67"></a>
+<span class="sourceLineNo">068</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.68"></a>
+<span class="sourceLineNo">069</span>    */<a name="line.69"></a>
+<span class="sourceLineNo">070</span>   public PlainTextParser(PropertyStore propertyStore, String...consumes) {<a name="line.70"></a>
+<span class="sourceLineNo">071</span>      super(propertyStore, consumes);<a name="line.71"></a>
+<span class="sourceLineNo">072</span>   }<a name="line.72"></a>
+<span class="sourceLineNo">073</span><a name="line.73"></a>
+<span class="sourceLineNo">074</span>   @Override /* CoreObject */<a name="line.74"></a>
+<span class="sourceLineNo">075</span>   public PlainTextParserBuilder builder() {<a name="line.75"></a>
+<span class="sourceLineNo">076</span>      return new PlainTextParserBuilder(propertyStore);<a name="line.76"></a>
+<span class="sourceLineNo">077</span>   }<a name="line.77"></a>
+<span class="sourceLineNo">078</span><a name="line.78"></a>
+<span class="sourceLineNo">079</span>   @Override /* Parser */<a name="line.79"></a>
+<span class="sourceLineNo">080</span>   public ReaderParserSession createSession(ParserSessionArgs args) {<a name="line.80"></a>
+<span class="sourceLineNo">081</span>      return new PlainTextParserSession(args);<a name="line.81"></a>
+<span class="sourceLineNo">082</span>   }<a name="line.82"></a>
+<span class="sourceLineNo">083</span>}<a name="line.83"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/plaintext/PlainTextSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/plaintext/PlainTextSerializer.html b/content/site/apidocs/src-html/org/apache/juneau/plaintext/PlainTextSerializer.html
index 1a4f062..e3bb9c8 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/plaintext/PlainTextSerializer.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/plaintext/PlainTextSerializer.html
@@ -21,64 +21,89 @@
 <span class="sourceLineNo">013</span>package org.apache.juneau.plaintext;<a name="line.13"></a>
 <span class="sourceLineNo">014</span><a name="line.14"></a>
 <span class="sourceLineNo">015</span>import org.apache.juneau.*;<a name="line.15"></a>
-<span class="sourceLineNo">016</span>import org.apache.juneau.annotation.*;<a name="line.16"></a>
-<span class="sourceLineNo">017</span>import org.apache.juneau.serializer.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span>import org.apache.juneau.transform.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span><a name="line.19"></a>
-<span class="sourceLineNo">020</span>/**<a name="line.20"></a>
-<span class="sourceLineNo">021</span> * Serializes POJOs to plain text using just the &lt;code&gt;toString()&lt;/code&gt; method on the serialized object.<a name="line.21"></a>
-<span class="sourceLineNo">022</span> *<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.23"></a>
-<span class="sourceLineNo">024</span> *<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/plain&lt;/code&gt;<a name="line.25"></a>
-<span class="sourceLineNo">026</span> *<a name="line.26"></a>
-<span class="sourceLineNo">027</span> * &lt;p&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/plain&lt;/code&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> *<a name="line.31"></a>
-<span class="sourceLineNo">032</span> * Essentially converts POJOs to plain text using the &lt;code&gt;toString()&lt;/code&gt; method.<a name="line.32"></a>
-<span class="sourceLineNo">033</span> *<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * &lt;p&gt;<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * Also serializes objects using a transform if the object class has an {@link PojoSwap PojoSwap&amp;lt;?,String&amp;gt;}<a name="line.35"></a>
-<span class="sourceLineNo">036</span> * transform defined on it.<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *<a name="line.37"></a>
-<span class="sourceLineNo">038</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *<a name="line.39"></a>
-<span class="sourceLineNo">040</span> * This class has the following properties associated with it:<a name="line.40"></a>
-<span class="sourceLineNo">041</span> * &lt;ul&gt;<a name="line.41"></a>
-<span class="sourceLineNo">042</span> *    &lt;li&gt;{@link SerializerContext}<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *    &lt;li&gt;{@link BeanContext}<a name="line.43"></a>
-<span class="sourceLineNo">044</span> * &lt;/ul&gt;<a name="line.44"></a>
-<span class="sourceLineNo">045</span> */<a name="line.45"></a>
-<span class="sourceLineNo">046</span>@Produces("text/plain")<a name="line.46"></a>
-<span class="sourceLineNo">047</span>public class PlainTextSerializer extends WriterSerializer {<a name="line.47"></a>
-<span class="sourceLineNo">048</span><a name="line.48"></a>
-<span class="sourceLineNo">049</span>   /** Default serializer, all default settings.*/<a name="line.49"></a>
-<span class="sourceLineNo">050</span>   public static final PlainTextSerializer DEFAULT = new PlainTextSerializer(PropertyStore.create());<a name="line.50"></a>
+<span class="sourceLineNo">016</span>import org.apache.juneau.serializer.*;<a name="line.16"></a>
+<span class="sourceLineNo">017</span>import org.apache.juneau.transform.*;<a name="line.17"></a>
+<span class="sourceLineNo">018</span><a name="line.18"></a>
+<span class="sourceLineNo">019</span>/**<a name="line.19"></a>
+<span class="sourceLineNo">020</span> * Serializes POJOs to plain text using just the &lt;code&gt;toString()&lt;/code&gt; method on the serialized object.<a name="line.20"></a>
+<span class="sourceLineNo">021</span> *<a name="line.21"></a>
+<span class="sourceLineNo">022</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.22"></a>
+<span class="sourceLineNo">023</span> *<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/plain&lt;/code&gt;<a name="line.24"></a>
+<span class="sourceLineNo">025</span> *<a name="line.25"></a>
+<span class="sourceLineNo">026</span> * &lt;p&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/plain&lt;/code&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> *<a name="line.30"></a>
+<span class="sourceLineNo">031</span> * Essentially converts POJOs to plain text using the &lt;code&gt;toString()&lt;/code&gt; method.<a name="line.31"></a>
+<span class="sourceLineNo">032</span> *<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * &lt;p&gt;<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * Also serializes objects using a transform if the object class has an {@link PojoSwap PojoSwap&amp;lt;?,String&amp;gt;}<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * transform defined on it.<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *<a name="line.36"></a>
+<span class="sourceLineNo">037</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.37"></a>
+<span class="sourceLineNo">038</span> *<a name="line.38"></a>
+<span class="sourceLineNo">039</span> * This class has the following properties associated with it:<a name="line.39"></a>
+<span class="sourceLineNo">040</span> * &lt;ul&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span> *    &lt;li&gt;{@link SerializerContext}<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *    &lt;li&gt;{@link BeanContext}<a name="line.42"></a>
+<span class="sourceLineNo">043</span> * &lt;/ul&gt;<a name="line.43"></a>
+<span class="sourceLineNo">044</span> */<a name="line.44"></a>
+<span class="sourceLineNo">045</span>public class PlainTextSerializer extends WriterSerializer {<a name="line.45"></a>
+<span class="sourceLineNo">046</span><a name="line.46"></a>
+<span class="sourceLineNo">047</span>   /** Default serializer, all default settings.*/<a name="line.47"></a>
+<span class="sourceLineNo">048</span>   public static final PlainTextSerializer DEFAULT = new PlainTextSerializer(PropertyStore.create());<a name="line.48"></a>
+<span class="sourceLineNo">049</span><a name="line.49"></a>
+<span class="sourceLineNo">050</span>   private final SerializerContext ctx;<a name="line.50"></a>
 <span class="sourceLineNo">051</span><a name="line.51"></a>
-<span class="sourceLineNo">052</span>   private final SerializerContext ctx;<a name="line.52"></a>
-<span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>   /**<a name="line.54"></a>
-<span class="sourceLineNo">055</span>    * Constructor.<a name="line.55"></a>
-<span class="sourceLineNo">056</span>    *<a name="line.56"></a>
-<span class="sourceLineNo">057</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.57"></a>
-<span class="sourceLineNo">058</span>    */<a name="line.58"></a>
-<span class="sourceLineNo">059</span>   public PlainTextSerializer(PropertyStore propertyStore) {<a name="line.59"></a>
-<span class="sourceLineNo">060</span>      super(propertyStore);<a name="line.60"></a>
-<span class="sourceLineNo">061</span>      this.ctx = createContext(SerializerContext.class);<a name="line.61"></a>
-<span class="sourceLineNo">062</span>   }<a name="line.62"></a>
-<span class="sourceLineNo">063</span><a name="line.63"></a>
-<span class="sourceLineNo">064</span>   @Override /* CoreObject */<a name="line.64"></a>
-<span class="sourceLineNo">065</span>   public PlainTextSerializerBuilder builder() {<a name="line.65"></a>
-<span class="sourceLineNo">066</span>      return new PlainTextSerializerBuilder(propertyStore);<a name="line.66"></a>
-<span class="sourceLineNo">067</span>   }<a name="line.67"></a>
-<span class="sourceLineNo">068</span><a name="line.68"></a>
-<span class="sourceLineNo">069</span>   @Override /* Serializer */<a name="line.69"></a>
-<span class="sourceLineNo">070</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.70"></a>
-<span class="sourceLineNo">071</span>      return new PlainTextSerializerSession(ctx, args);<a name="line.71"></a>
-<span class="sourceLineNo">072</span>   }<a name="line.72"></a>
-<span class="sourceLineNo">073</span>}<a name="line.73"></a>
+<span class="sourceLineNo">052</span>   /**<a name="line.52"></a>
+<span class="sourceLineNo">053</span>    * Constructor.<a name="line.53"></a>
+<span class="sourceLineNo">054</span>    *<a name="line.54"></a>
+<span class="sourceLineNo">055</span>    * @param propertyStore<a name="line.55"></a>
+<span class="sourceLineNo">056</span>    *    The property store containing all the settings for this object.<a name="line.56"></a>
+<span class="sourceLineNo">057</span>    */<a name="line.57"></a>
+<span class="sourceLineNo">058</span>   public PlainTextSerializer(PropertyStore propertyStore) {<a name="line.58"></a>
+<span class="sourceLineNo">059</span>      this(propertyStore, "text/plain");<a name="line.59"></a>
+<span class="sourceLineNo">060</span>   }<a name="line.60"></a>
+<span class="sourceLineNo">061</span><a name="line.61"></a>
+<span class="sourceLineNo">062</span>   /**<a name="line.62"></a>
+<span class="sourceLineNo">063</span>    * Constructor.<a name="line.63"></a>
+<span class="sourceLineNo">064</span>    *<a name="line.64"></a>
+<span class="sourceLineNo">065</span>    * @param propertyStore<a name="line.65"></a>
+<span class="sourceLineNo">066</span>    *    The property store containing all the settings for this object.<a name="line.66"></a>
+<span class="sourceLineNo">067</span>    * @param produces<a name="line.67"></a>
+<span class="sourceLineNo">068</span>    *    The media type that this serializer produces.<a name="line.68"></a>
+<span class="sourceLineNo">069</span>    * @param accept<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    *    The accept media types that the serializer can handle.<a name="line.70"></a>
+<span class="sourceLineNo">071</span>    *    &lt;p&gt;<a name="line.71"></a>
+<span class="sourceLineNo">072</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.72"></a>
+<span class="sourceLineNo">073</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.73"></a>
+<span class="sourceLineNo">074</span>    *    &lt;p&gt;<a name="line.74"></a>
+<span class="sourceLineNo">075</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.75"></a>
+<span class="sourceLineNo">076</span>    *    &lt;p&gt;<a name="line.76"></a>
+<span class="sourceLineNo">077</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.77"></a>
+<span class="sourceLineNo">078</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.78"></a>
+<span class="sourceLineNo">079</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.79"></a>
+<span class="sourceLineNo">080</span>    *    &lt;br&gt;...or...<a name="line.80"></a>
+<span class="sourceLineNo">081</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.81"></a>
+<span class="sourceLineNo">082</span>    */<a name="line.82"></a>
+<span class="sourceLineNo">083</span>   public PlainTextSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.83"></a>
+<span class="sourceLineNo">084</span>      super(propertyStore, produces, accept);<a name="line.84"></a>
+<span class="sourceLineNo">085</span>      this.ctx = createContext(SerializerContext.class);<a name="line.85"></a>
+<span class="sourceLineNo">086</span>   }<a name="line.86"></a>
+<span class="sourceLineNo">087</span><a name="line.87"></a>
+<span class="sourceLineNo">088</span><a name="line.88"></a>
+<span class="sourceLineNo">089</span>   @Override /* CoreObject */<a name="line.89"></a>
+<span class="sourceLineNo">090</span>   public PlainTextSerializerBuilder builder() {<a name="line.90"></a>
+<span class="sourceLineNo">091</span>      return new PlainTextSerializerBuilder(propertyStore);<a name="line.91"></a>
+<span class="sourceLineNo">092</span>   }<a name="line.92"></a>
+<span class="sourceLineNo">093</span><a name="line.93"></a>
+<span class="sourceLineNo">094</span>   @Override /* Serializer */<a name="line.94"></a>
+<span class="sourceLineNo">095</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.95"></a>
+<span class="sourceLineNo">096</span>      return new PlainTextSerializerSession(ctx, args);<a name="line.96"></a>
+<span class="sourceLineNo">097</span>   }<a name="line.97"></a>
+<span class="sourceLineNo">098</span>}<a name="line.98"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/plaintext/PlainTextSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/plaintext/PlainTextSerializerSession.html b/content/site/apidocs/src-html/org/apache/juneau/plaintext/PlainTextSerializerSession.html
index c963851..d64696e 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/plaintext/PlainTextSerializerSession.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/plaintext/PlainTextSerializerSession.html
@@ -42,17 +42,16 @@
 <span class="sourceLineNo">034</span>    *    These specify session-level information such as locale and URI context.<a name="line.34"></a>
 <span class="sourceLineNo">035</span>    *    It also include session-level properties that override the properties defined on the bean and<a name="line.35"></a>
 <span class="sourceLineNo">036</span>    *    serializer contexts.<a name="line.36"></a>
-<span class="sourceLineNo">037</span>    *    &lt;br&gt;If &lt;jk&gt;null&lt;/jk&gt;, defaults to {@link SerializerSessionArgs#DEFAULT}.<a name="line.37"></a>
-<span class="sourceLineNo">038</span>    */<a name="line.38"></a>
-<span class="sourceLineNo">039</span>   protected PlainTextSerializerSession(SerializerContext ctx, SerializerSessionArgs args) {<a name="line.39"></a>
-<span class="sourceLineNo">040</span>      super(ctx, args);<a name="line.40"></a>
-<span class="sourceLineNo">041</span>   }<a name="line.41"></a>
-<span class="sourceLineNo">042</span><a name="line.42"></a>
-<span class="sourceLineNo">043</span>   @Override /* SerializerSession */<a name="line.43"></a>
-<span class="sourceLineNo">044</span>   protected void doSerialize(SerializerPipe out, Object o) throws Exception {<a name="line.44"></a>
-<span class="sourceLineNo">045</span>      out.getWriter().write(o == null ? "null" : convertToType(o, String.class));<a name="line.45"></a>
-<span class="sourceLineNo">046</span>   }<a name="line.46"></a>
-<span class="sourceLineNo">047</span>}<a name="line.47"></a>
+<span class="sourceLineNo">037</span>    */<a name="line.37"></a>
+<span class="sourceLineNo">038</span>   protected PlainTextSerializerSession(SerializerContext ctx, SerializerSessionArgs args) {<a name="line.38"></a>
+<span class="sourceLineNo">039</span>      super(ctx, args);<a name="line.39"></a>
+<span class="sourceLineNo">040</span>   }<a name="line.40"></a>
+<span class="sourceLineNo">041</span><a name="line.41"></a>
+<span class="sourceLineNo">042</span>   @Override /* SerializerSession */<a name="line.42"></a>
+<span class="sourceLineNo">043</span>   protected void doSerialize(SerializerPipe out, Object o) throws Exception {<a name="line.43"></a>
+<span class="sourceLineNo">044</span>      out.getWriter().write(o == null ? "null" : convertToType(o, String.class));<a name="line.44"></a>
+<span class="sourceLineNo">045</span>   }<a name="line.45"></a>
+<span class="sourceLineNo">046</span>}<a name="line.46"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/rest/response/DefaultHandler.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/rest/response/DefaultHandler.html b/content/site/apidocs/src-html/org/apache/juneau/rest/response/DefaultHandler.html
index 30fcb9a..225fa81 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/rest/response/DefaultHandler.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/rest/response/DefaultHandler.html
@@ -26,80 +26,79 @@
 <span class="sourceLineNo">018</span>import java.util.*;<a name="line.18"></a>
 <span class="sourceLineNo">019</span><a name="line.19"></a>
 <span class="sourceLineNo">020</span>import org.apache.juneau.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span>import org.apache.juneau.annotation.*;<a name="line.21"></a>
-<span class="sourceLineNo">022</span>import org.apache.juneau.http.*;<a name="line.22"></a>
-<span class="sourceLineNo">023</span>import org.apache.juneau.internal.*;<a name="line.23"></a>
-<span class="sourceLineNo">024</span>import org.apache.juneau.rest.*;<a name="line.24"></a>
-<span class="sourceLineNo">025</span>import org.apache.juneau.serializer.*;<a name="line.25"></a>
-<span class="sourceLineNo">026</span><a name="line.26"></a>
-<span class="sourceLineNo">027</span>/**<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * Response handler for POJOs not handled by other handlers.<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * &lt;p&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * This uses the serializers defined on the response to serialize the POJO.<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;p&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * The {@link Serializer} used is based on the &lt;code&gt;Accept&lt;/code&gt; header on the request.<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *<a name="line.35"></a>
-<span class="sourceLineNo">036</span> * &lt;p&gt;<a name="line.36"></a>
-<span class="sourceLineNo">037</span> * The &lt;code&gt;Content-Type&lt;/code&gt; header is set to the mime-type defined on the selected serializer based on the<a name="line.37"></a>
-<span class="sourceLineNo">038</span> * {@link Produces#contentType() @Produces.contentType} annotation.<a name="line.38"></a>
-<span class="sourceLineNo">039</span> */<a name="line.39"></a>
-<span class="sourceLineNo">040</span>public class DefaultHandler implements ResponseHandler {<a name="line.40"></a>
-<span class="sourceLineNo">041</span><a name="line.41"></a>
-<span class="sourceLineNo">042</span>   @Override /* ResponseHandler */<a name="line.42"></a>
-<span class="sourceLineNo">043</span>   public boolean handle(RestRequest req, RestResponse res, Object output) throws IOException, RestException {<a name="line.43"></a>
-<span class="sourceLineNo">044</span>      SerializerGroup g = res.getSerializerGroup();<a name="line.44"></a>
-<span class="sourceLineNo">045</span>      String accept = req.getHeaders().getString("Accept", "");<a name="line.45"></a>
-<span class="sourceLineNo">046</span>      SerializerMatch sm = g.getSerializerMatch(accept);<a name="line.46"></a>
-<span class="sourceLineNo">047</span>      if (sm != null) {<a name="line.47"></a>
-<span class="sourceLineNo">048</span>         Serializer s = sm.getSerializer();<a name="line.48"></a>
-<span class="sourceLineNo">049</span>         MediaType mediaType = res.getMediaType();<a name="line.49"></a>
-<span class="sourceLineNo">050</span>         if (mediaType == null)<a name="line.50"></a>
-<span class="sourceLineNo">051</span>            mediaType = sm.getMediaType();<a name="line.51"></a>
-<span class="sourceLineNo">052</span>         res.setContentType(mediaType.toString());<a name="line.52"></a>
-<span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>         try {<a name="line.54"></a>
-<span class="sourceLineNo">055</span>            ObjectMap p = res.getProperties();<a name="line.55"></a>
-<span class="sourceLineNo">056</span>            if (req.isPlainText()) {<a name="line.56"></a>
-<span class="sourceLineNo">057</span>               res.setContentType("text/plain");<a name="line.57"></a>
-<span class="sourceLineNo">058</span>            }<a name="line.58"></a>
-<span class="sourceLineNo">059</span>            p.append("mediaType", mediaType).append("characterEncoding", res.getCharacterEncoding());<a name="line.59"></a>
-<span class="sourceLineNo">060</span><a name="line.60"></a>
-<span class="sourceLineNo">061</span>            SerializerSession session = s.createSession(new SerializerSessionArgs(p, req.getJavaMethod(), req.getLocale(), req.getHeaders().getTimeZone(), mediaType, req.getUriContext()));<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span>            for (Map.Entry&lt;String,String&gt; h : session.getResponseHeaders().entrySet())<a name="line.63"></a>
-<span class="sourceLineNo">064</span>               res.setHeader(h.getKey(), h.getValue());<a name="line.64"></a>
-<span class="sourceLineNo">065</span><a name="line.65"></a>
-<span class="sourceLineNo">066</span>            if (! session.isWriterSerializer()) {<a name="line.66"></a>
-<span class="sourceLineNo">067</span>               if (req.isPlainText()) {<a name="line.67"></a>
-<span class="sourceLineNo">068</span>                  Writer w = res.getNegotiatedWriter();<a name="line.68"></a>
-<span class="sourceLineNo">069</span>                  ByteArrayOutputStream baos = new ByteArrayOutputStream();<a name="line.69"></a>
-<span class="sourceLineNo">070</span>                  session.serialize(baos, output);<a name="line.70"></a>
-<span class="sourceLineNo">071</span>                  w.write(StringUtils.toHex(baos.toByteArray()));<a name="line.71"></a>
-<span class="sourceLineNo">072</span>                  w.close();  // Leave open if exception occurs.<a name="line.72"></a>
-<span class="sourceLineNo">073</span>               } else {<a name="line.73"></a>
-<span class="sourceLineNo">074</span>                  OutputStream os = res.getNegotiatedOutputStream();<a name="line.74"></a>
-<span class="sourceLineNo">075</span>                  session.serialize(os, output);<a name="line.75"></a>
-<span class="sourceLineNo">076</span>                  os.close();  // Leave open if exception occurs.<a name="line.76"></a>
-<span class="sourceLineNo">077</span>               }<a name="line.77"></a>
-<span class="sourceLineNo">078</span>            } else {<a name="line.78"></a>
-<span class="sourceLineNo">079</span>               Writer w = res.getNegotiatedWriter();<a name="line.79"></a>
-<span class="sourceLineNo">080</span>               session.serialize(w, output);<a name="line.80"></a>
-<span class="sourceLineNo">081</span>               w.close();  // Leave open if exception occurs.<a name="line.81"></a>
-<span class="sourceLineNo">082</span>            }<a name="line.82"></a>
-<span class="sourceLineNo">083</span>         } catch (SerializeException e) {<a name="line.83"></a>
-<span class="sourceLineNo">084</span>            throw new RestException(SC_INTERNAL_SERVER_ERROR, e);<a name="line.84"></a>
-<span class="sourceLineNo">085</span>         }<a name="line.85"></a>
-<span class="sourceLineNo">086</span>      } else {<a name="line.86"></a>
-<span class="sourceLineNo">087</span>         throw new RestException(SC_NOT_ACCEPTABLE,<a name="line.87"></a>
-<span class="sourceLineNo">088</span>            "Unsupported media-type in request header ''Accept'': ''{0}''\n\tSupported media-types: {1}",<a name="line.88"></a>
-<span class="sourceLineNo">089</span>            req.getHeaders().getString("Accept", ""), g.getSupportedMediaTypes()<a name="line.89"></a>
-<span class="sourceLineNo">090</span>         );<a name="line.90"></a>
-<span class="sourceLineNo">091</span>      }<a name="line.91"></a>
-<span class="sourceLineNo">092</span>      return true;<a name="line.92"></a>
-<span class="sourceLineNo">093</span>   }<a name="line.93"></a>
-<span class="sourceLineNo">094</span>}<a name="line.94"></a>
+<span class="sourceLineNo">021</span>import org.apache.juneau.http.*;<a name="line.21"></a>
+<span class="sourceLineNo">022</span>import org.apache.juneau.internal.*;<a name="line.22"></a>
+<span class="sourceLineNo">023</span>import org.apache.juneau.rest.*;<a name="line.23"></a>
+<span class="sourceLineNo">024</span>import org.apache.juneau.serializer.*;<a name="line.24"></a>
+<span class="sourceLineNo">025</span><a name="line.25"></a>
+<span class="sourceLineNo">026</span>/**<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * Response handler for POJOs not handled by other handlers.<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;p&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * This uses the serializers defined on the response to serialize the POJO.<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;p&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * The {@link Serializer} used is based on the &lt;code&gt;Accept&lt;/code&gt; header on the request.<a name="line.33"></a>
+<span class="sourceLineNo">034</span> *<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * &lt;p&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span> * The &lt;code&gt;Content-Type&lt;/code&gt; header is set to the mime-type defined on the selected serializer based on the<a name="line.36"></a>
+<span class="sourceLineNo">037</span> * &lt;code&gt;produces&lt;/code&gt; value passed in through the constructor.<a name="line.37"></a>
+<span class="sourceLineNo">038</span> */<a name="line.38"></a>
+<span class="sourceLineNo">039</span>public class DefaultHandler implements ResponseHandler {<a name="line.39"></a>
+<span class="sourceLineNo">040</span><a name="line.40"></a>
+<span class="sourceLineNo">041</span>   @Override /* ResponseHandler */<a name="line.41"></a>
+<span class="sourceLineNo">042</span>   public boolean handle(RestRequest req, RestResponse res, Object output) throws IOException, RestException {<a name="line.42"></a>
+<span class="sourceLineNo">043</span>      SerializerGroup g = res.getSerializerGroup();<a name="line.43"></a>
+<span class="sourceLineNo">044</span>      String accept = req.getHeaders().getString("Accept", "");<a name="line.44"></a>
+<span class="sourceLineNo">045</span>      SerializerMatch sm = g.getSerializerMatch(accept);<a name="line.45"></a>
+<span class="sourceLineNo">046</span>      if (sm != null) {<a name="line.46"></a>
+<span class="sourceLineNo">047</span>         Serializer s = sm.getSerializer();<a name="line.47"></a>
+<span class="sourceLineNo">048</span>         MediaType mediaType = res.getMediaType();<a name="line.48"></a>
+<span class="sourceLineNo">049</span>         if (mediaType == null)<a name="line.49"></a>
+<span class="sourceLineNo">050</span>            mediaType = sm.getMediaType();<a name="line.50"></a>
+<span class="sourceLineNo">051</span>         res.setContentType(mediaType.toString());<a name="line.51"></a>
+<span class="sourceLineNo">052</span><a name="line.52"></a>
+<span class="sourceLineNo">053</span>         try {<a name="line.53"></a>
+<span class="sourceLineNo">054</span>            ObjectMap p = res.getProperties();<a name="line.54"></a>
+<span class="sourceLineNo">055</span>            if (req.isPlainText()) {<a name="line.55"></a>
+<span class="sourceLineNo">056</span>               res.setContentType("text/plain");<a name="line.56"></a>
+<span class="sourceLineNo">057</span>            }<a name="line.57"></a>
+<span class="sourceLineNo">058</span>            p.append("mediaType", mediaType).append("characterEncoding", res.getCharacterEncoding());<a name="line.58"></a>
+<span class="sourceLineNo">059</span><a name="line.59"></a>
+<span class="sourceLineNo">060</span>            SerializerSession session = s.createSession(new SerializerSessionArgs(p, req.getJavaMethod(), req.getLocale(), req.getHeaders().getTimeZone(), mediaType, req.getUriContext()));<a name="line.60"></a>
+<span class="sourceLineNo">061</span><a name="line.61"></a>
+<span class="sourceLineNo">062</span>            for (Map.Entry&lt;String,String&gt; h : session.getResponseHeaders().entrySet())<a name="line.62"></a>
+<span class="sourceLineNo">063</span>               res.setHeader(h.getKey(), h.getValue());<a name="line.63"></a>
+<span class="sourceLineNo">064</span><a name="line.64"></a>
+<span class="sourceLineNo">065</span>            if (! session.isWriterSerializer()) {<a name="line.65"></a>
+<span class="sourceLineNo">066</span>               if (req.isPlainText()) {<a name="line.66"></a>
+<span class="sourceLineNo">067</span>                  Writer w = res.getNegotiatedWriter();<a name="line.67"></a>
+<span class="sourceLineNo">068</span>                  ByteArrayOutputStream baos = new ByteArrayOutputStream();<a name="line.68"></a>
+<span class="sourceLineNo">069</span>                  session.serialize(baos, output);<a name="line.69"></a>
+<span class="sourceLineNo">070</span>                  w.write(StringUtils.toHex(baos.toByteArray()));<a name="line.70"></a>
+<span class="sourceLineNo">071</span>                  w.close();  // Leave open if exception occurs.<a name="line.71"></a>
+<span class="sourceLineNo">072</span>               } else {<a name="line.72"></a>
+<span class="sourceLineNo">073</span>                  OutputStream os = res.getNegotiatedOutputStream();<a name="line.73"></a>
+<span class="sourceLineNo">074</span>                  session.serialize(os, output);<a name="line.74"></a>
+<span class="sourceLineNo">075</span>                  os.close();  // Leave open if exception occurs.<a name="line.75"></a>
+<span class="sourceLineNo">076</span>               }<a name="line.76"></a>
+<span class="sourceLineNo">077</span>            } else {<a name="line.77"></a>
+<span class="sourceLineNo">078</span>               Writer w = res.getNegotiatedWriter();<a name="line.78"></a>
+<span class="sourceLineNo">079</span>               session.serialize(w, output);<a name="line.79"></a>
+<span class="sourceLineNo">080</span>               w.close();  // Leave open if exception occurs.<a name="line.80"></a>
+<span class="sourceLineNo">081</span>            }<a name="line.81"></a>
+<span class="sourceLineNo">082</span>         } catch (SerializeException e) {<a name="line.82"></a>
+<span class="sourceLineNo">083</span>            throw new RestException(SC_INTERNAL_SERVER_ERROR, e);<a name="line.83"></a>
+<span class="sourceLineNo">084</span>         }<a name="line.84"></a>
+<span class="sourceLineNo">085</span>      } else {<a name="line.85"></a>
+<span class="sourceLineNo">086</span>         throw new RestException(SC_NOT_ACCEPTABLE,<a name="line.86"></a>
+<span class="sourceLineNo">087</span>            "Unsupported media-type in request header ''Accept'': ''{0}''\n\tSupported media-types: {1}",<a name="line.87"></a>
+<span class="sourceLineNo">088</span>            req.getHeaders().getString("Accept", ""), g.getSupportedMediaTypes()<a name="line.88"></a>
+<span class="sourceLineNo">089</span>         );<a name="line.89"></a>
+<span class="sourceLineNo">090</span>      }<a name="line.90"></a>
+<span class="sourceLineNo">091</span>      return true;<a name="line.91"></a>
+<span class="sourceLineNo">092</span>   }<a name="line.92"></a>
+<span class="sourceLineNo">093</span>}<a name="line.93"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/serializer/OutputStreamSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/serializer/OutputStreamSerializer.html b/content/site/apidocs/src-html/org/apache/juneau/serializer/OutputStreamSerializer.html
index 2f8419f..8e28edd 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/serializer/OutputStreamSerializer.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/serializer/OutputStreamSerializer.html
@@ -23,71 +23,78 @@
 <span class="sourceLineNo">015</span>import static org.apache.juneau.internal.StringUtils.*;<a name="line.15"></a>
 <span class="sourceLineNo">016</span><a name="line.16"></a>
 <span class="sourceLineNo">017</span>import org.apache.juneau.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span>import org.apache.juneau.annotation.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span><a name="line.19"></a>
-<span class="sourceLineNo">020</span>/**<a name="line.20"></a>
-<span class="sourceLineNo">021</span> * Subclass of {@link Serializer} for byte-based serializers.<a name="line.21"></a>
-<span class="sourceLineNo">022</span> *<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * &lt;h6 class='topic'&gt;@Produces annotation&lt;/h6&gt;<a name="line.23"></a>
-<span class="sourceLineNo">024</span> *<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * The media types that this serializer can produce is specified through the {@link Produces @Produces} annotation.<a name="line.25"></a>
-<span class="sourceLineNo">026</span> *<a name="line.26"></a>
-<span class="sourceLineNo">027</span> * &lt;p&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * However, the media types can also be specified programmatically by overriding the {@link #getMediaTypes()}<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * and {@link #getResponseContentType()} methods.<a name="line.29"></a>
-<span class="sourceLineNo">030</span> */<a name="line.30"></a>
-<span class="sourceLineNo">031</span>public abstract class OutputStreamSerializer extends Serializer {<a name="line.31"></a>
-<span class="sourceLineNo">032</span><a name="line.32"></a>
-<span class="sourceLineNo">033</span>   /**<a name="line.33"></a>
-<span class="sourceLineNo">034</span>    * Constructor.<a name="line.34"></a>
-<span class="sourceLineNo">035</span>    *<a name="line.35"></a>
-<span class="sourceLineNo">036</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.36"></a>
-<span class="sourceLineNo">037</span>    */<a name="line.37"></a>
-<span class="sourceLineNo">038</span>   protected OutputStreamSerializer(PropertyStore propertyStore) {<a name="line.38"></a>
-<span class="sourceLineNo">039</span>      super(propertyStore);<a name="line.39"></a>
-<span class="sourceLineNo">040</span>   }<a name="line.40"></a>
-<span class="sourceLineNo">041</span><a name="line.41"></a>
-<span class="sourceLineNo">042</span><a name="line.42"></a>
-<span class="sourceLineNo">043</span>   //--------------------------------------------------------------------------------<a name="line.43"></a>
-<span class="sourceLineNo">044</span>   // Abstract methods<a name="line.44"></a>
-<span class="sourceLineNo">045</span>   //--------------------------------------------------------------------------------<a name="line.45"></a>
-<span class="sourceLineNo">046</span><a name="line.46"></a>
-<span class="sourceLineNo">047</span>   @Override /* SerializerSession */<a name="line.47"></a>
-<span class="sourceLineNo">048</span>   public abstract OutputStreamSerializerSession createSession(SerializerSessionArgs args);<a name="line.48"></a>
+<span class="sourceLineNo">018</span><a name="line.18"></a>
+<span class="sourceLineNo">019</span>/**<a name="line.19"></a>
+<span class="sourceLineNo">020</span> * Subclass of {@link Serializer} for byte-based serializers.<a name="line.20"></a>
+<span class="sourceLineNo">021</span> */<a name="line.21"></a>
+<span class="sourceLineNo">022</span>public abstract class OutputStreamSerializer extends Serializer {<a name="line.22"></a>
+<span class="sourceLineNo">023</span><a name="line.23"></a>
+<span class="sourceLineNo">024</span>   /**<a name="line.24"></a>
+<span class="sourceLineNo">025</span>    * Constructor.<a name="line.25"></a>
+<span class="sourceLineNo">026</span>    *<a name="line.26"></a>
+<span class="sourceLineNo">027</span>    * @param propertyStore<a name="line.27"></a>
+<span class="sourceLineNo">028</span>    *    The property store containing all the settings for this object.<a name="line.28"></a>
+<span class="sourceLineNo">029</span>    * @param produces<a name="line.29"></a>
+<span class="sourceLineNo">030</span>    *    The media type that this serializer produces.<a name="line.30"></a>
+<span class="sourceLineNo">031</span>    * @param accept<a name="line.31"></a>
+<span class="sourceLineNo">032</span>    *    The accept media types that the serializer can handle.<a name="line.32"></a>
+<span class="sourceLineNo">033</span>    *    &lt;p&gt;<a name="line.33"></a>
+<span class="sourceLineNo">034</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.34"></a>
+<span class="sourceLineNo">035</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span>    *    &lt;p&gt;<a name="line.36"></a>
+<span class="sourceLineNo">037</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.37"></a>
+<span class="sourceLineNo">038</span>    *    &lt;p&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.39"></a>
+<span class="sourceLineNo">040</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.40"></a>
+<span class="sourceLineNo">041</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.41"></a>
+<span class="sourceLineNo">042</span>    *    &lt;br&gt;...or...<a name="line.42"></a>
+<span class="sourceLineNo">043</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.43"></a>
+<span class="sourceLineNo">044</span>    */<a name="line.44"></a>
+<span class="sourceLineNo">045</span>   protected OutputStreamSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.45"></a>
+<span class="sourceLineNo">046</span>      super(propertyStore, produces, accept);<a name="line.46"></a>
+<span class="sourceLineNo">047</span>   }<a name="line.47"></a>
+<span class="sourceLineNo">048</span><a name="line.48"></a>
 <span class="sourceLineNo">049</span><a name="line.49"></a>
-<span class="sourceLineNo">050</span><a name="line.50"></a>
-<span class="sourceLineNo">051</span>   //--------------------------------------------------------------------------------<a name="line.51"></a>
-<span class="sourceLineNo">052</span>   // Other methods<a name="line.52"></a>
-<span class="sourceLineNo">053</span>   //--------------------------------------------------------------------------------<a name="line.53"></a>
-<span class="sourceLineNo">054</span><a name="line.54"></a>
-<span class="sourceLineNo">055</span>   @Override /* Serializer */<a name="line.55"></a>
-<span class="sourceLineNo">056</span>   public final boolean isWriterSerializer() {<a name="line.56"></a>
-<span class="sourceLineNo">057</span>      return false;<a name="line.57"></a>
-<span class="sourceLineNo">058</span>   }<a name="line.58"></a>
-<span class="sourceLineNo">059</span><a name="line.59"></a>
-<span class="sourceLineNo">060</span>   /**<a name="line.60"></a>
-<span class="sourceLineNo">061</span>    * Convenience method for serializing an object to a &lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;&lt;/code&gt;.<a name="line.61"></a>
-<span class="sourceLineNo">062</span>    *<a name="line.62"></a>
-<span class="sourceLineNo">063</span>    * @param o The object to serialize.<a name="line.63"></a>
-<span class="sourceLineNo">064</span>    * @return The output serialized to a byte array.<a name="line.64"></a>
-<span class="sourceLineNo">065</span>    * @throws SerializeException If a problem occurred trying to convert the output.<a name="line.65"></a>
-<span class="sourceLineNo">066</span>    */<a name="line.66"></a>
-<span class="sourceLineNo">067</span>   @Override<a name="line.67"></a>
-<span class="sourceLineNo">068</span>   public final byte[] serialize(Object o) throws SerializeException {<a name="line.68"></a>
-<span class="sourceLineNo">069</span>      return createSession(null).serialize(o);<a name="line.69"></a>
-<span class="sourceLineNo">070</span>   }<a name="line.70"></a>
-<span class="sourceLineNo">071</span><a name="line.71"></a>
-<span class="sourceLineNo">072</span>   /**<a name="line.72"></a>
-<span class="sourceLineNo">073</span>    * Convenience method for serializing an object to a hex-encoded String.<a name="line.73"></a>
-<span class="sourceLineNo">074</span>    *<a name="line.74"></a>
-<span class="sourceLineNo">075</span>    * @param o The object to serialize.<a name="line.75"></a>
-<span class="sourceLineNo">076</span>    * @return The output serialized to a hex-encoded string.<a name="line.76"></a>
-<span class="sourceLineNo">077</span>    * @throws SerializeException If a problem occurred trying to convert the output.<a name="line.77"></a>
-<span class="sourceLineNo">078</span>    */<a name="line.78"></a>
-<span class="sourceLineNo">079</span>   public final String serializeToHex(Object o) throws SerializeException {<a name="line.79"></a>
-<span class="sourceLineNo">080</span>      return toHex(serialize(o));<a name="line.80"></a>
-<span class="sourceLineNo">081</span>   }<a name="line.81"></a>
-<span class="sourceLineNo">082</span>}<a name="line.82"></a>
+<span class="sourceLineNo">050</span>   //--------------------------------------------------------------------------------<a name="line.50"></a>
+<span class="sourceLineNo">051</span>   // Abstract methods<a name="line.51"></a>
+<span class="sourceLineNo">052</span>   //--------------------------------------------------------------------------------<a name="line.52"></a>
+<span class="sourceLineNo">053</span><a name="line.53"></a>
+<span class="sourceLineNo">054</span>   @Override /* SerializerSession */<a name="line.54"></a>
+<span class="sourceLineNo">055</span>   public abstract OutputStreamSerializerSession createSession(SerializerSessionArgs args);<a name="line.55"></a>
+<span class="sourceLineNo">056</span><a name="line.56"></a>
+<span class="sourceLineNo">057</span><a name="line.57"></a>
+<span class="sourceLineNo">058</span>   //--------------------------------------------------------------------------------<a name="line.58"></a>
+<span class="sourceLineNo">059</span>   // Other methods<a name="line.59"></a>
+<span class="sourceLineNo">060</span>   //--------------------------------------------------------------------------------<a name="line.60"></a>
+<span class="sourceLineNo">061</span><a name="line.61"></a>
+<span class="sourceLineNo">062</span>   @Override /* Serializer */<a name="line.62"></a>
+<span class="sourceLineNo">063</span>   public final boolean isWriterSerializer() {<a name="line.63"></a>
+<span class="sourceLineNo">064</span>      return false;<a name="line.64"></a>
+<span class="sourceLineNo">065</span>   }<a name="line.65"></a>
+<span class="sourceLineNo">066</span><a name="line.66"></a>
+<span class="sourceLineNo">067</span>   /**<a name="line.67"></a>
+<span class="sourceLineNo">068</span>    * Convenience method for serializing an object to a &lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;&lt;/code&gt;.<a name="line.68"></a>
+<span class="sourceLineNo">069</span>    *<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    * @param o The object to serialize.<a name="line.70"></a>
+<span class="sourceLineNo">071</span>    * @return The output serialized to a byte array.<a name="line.71"></a>
+<span class="sourceLineNo">072</span>    * @throws SerializeException If a problem occurred trying to convert the output.<a name="line.72"></a>
+<span class="sourceLineNo">073</span>    */<a name="line.73"></a>
+<span class="sourceLineNo">074</span>   @Override<a name="line.74"></a>
+<span class="sourceLineNo">075</span>   public final byte[] serialize(Object o) throws SerializeException {<a name="line.75"></a>
+<span class="sourceLineNo">076</span>      return createSession(createDefaultSessionArgs()).serialize(o);<a name="line.76"></a>
+<span class="sourceLineNo">077</span>   }<a name="line.77"></a>
+<span class="sourceLineNo">078</span><a name="line.78"></a>
+<span class="sourceLineNo">079</span>   /**<a name="line.79"></a>
+<span class="sourceLineNo">080</span>    * Convenience method for serializing an object to a hex-encoded String.<a name="line.80"></a>
+<span class="sourceLineNo">081</span>    *<a name="line.81"></a>
+<span class="sourceLineNo">082</span>    * @param o The object to serialize.<a name="line.82"></a>
+<span class="sourceLineNo">083</span>    * @return The output serialized to a hex-encoded string.<a name="line.83"></a>
+<span class="sourceLineNo">084</span>    * @throws SerializeException If a problem occurred trying to convert the output.<a name="line.84"></a>
+<span class="sourceLineNo">085</span>    */<a name="line.85"></a>
+<span class="sourceLineNo">086</span>   public final String serializeToHex(Object o) throws SerializeException {<a name="line.86"></a>
+<span class="sourceLineNo">087</span>      return toHex(serialize(o));<a name="line.87"></a>
+<span class="sourceLineNo">088</span>   }<a name="line.88"></a>
+<span class="sourceLineNo">089</span>}<a name="line.89"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/serializer/OutputStreamSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/serializer/OutputStreamSerializerSession.html b/content/site/apidocs/src-html/org/apache/juneau/serializer/OutputStreamSerializerSession.html
index 75c92c4..4003186 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/serializer/OutputStreamSerializerSession.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/serializer/OutputStreamSerializerSession.html
@@ -46,41 +46,40 @@
 <span class="sourceLineNo">038</span>    *    These specify session-level information such as locale and URI context.<a name="line.38"></a>
 <span class="sourceLineNo">039</span>    *    It also include session-level properties that override the properties defined on the bean and<a name="line.39"></a>
 <span class="sourceLineNo">040</span>    *    serializer contexts.<a name="line.40"></a>
-<span class="sourceLineNo">041</span>    *    &lt;br&gt;If &lt;jk&gt;null&lt;/jk&gt;, defaults to {@link SerializerSessionArgs#DEFAULT}.<a name="line.41"></a>
-<span class="sourceLineNo">042</span>    */<a name="line.42"></a>
-<span class="sourceLineNo">043</span>   protected OutputStreamSerializerSession(SerializerContext ctx, SerializerSessionArgs args) {<a name="line.43"></a>
-<span class="sourceLineNo">044</span>      super(ctx, args);<a name="line.44"></a>
-<span class="sourceLineNo">045</span>   }<a name="line.45"></a>
-<span class="sourceLineNo">046</span><a name="line.46"></a>
-<span class="sourceLineNo">047</span>   /**<a name="line.47"></a>
-<span class="sourceLineNo">048</span>    * Constructor for sessions that don't require context.<a name="line.48"></a>
-<span class="sourceLineNo">049</span>    *<a name="line.49"></a>
-<span class="sourceLineNo">050</span>    * @param args<a name="line.50"></a>
-<span class="sourceLineNo">051</span>    *    Runtime session arguments.<a name="line.51"></a>
-<span class="sourceLineNo">052</span>    */<a name="line.52"></a>
-<span class="sourceLineNo">053</span>   protected OutputStreamSerializerSession(SerializerSessionArgs args) {<a name="line.53"></a>
-<span class="sourceLineNo">054</span>      this(null, args);<a name="line.54"></a>
-<span class="sourceLineNo">055</span>   }<a name="line.55"></a>
-<span class="sourceLineNo">056</span><a name="line.56"></a>
-<span class="sourceLineNo">057</span>   @Override /* SerializerSession */<a name="line.57"></a>
-<span class="sourceLineNo">058</span>   public final boolean isWriterSerializer() {<a name="line.58"></a>
-<span class="sourceLineNo">059</span>      return false;<a name="line.59"></a>
-<span class="sourceLineNo">060</span>   }<a name="line.60"></a>
-<span class="sourceLineNo">061</span><a name="line.61"></a>
-<span class="sourceLineNo">062</span>   /**<a name="line.62"></a>
-<span class="sourceLineNo">063</span>    * Convenience method for serializing an object to a &lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;&lt;/code&gt;.<a name="line.63"></a>
-<span class="sourceLineNo">064</span>    *<a name="line.64"></a>
-<span class="sourceLineNo">065</span>    * @param o The object to serialize.<a name="line.65"></a>
-<span class="sourceLineNo">066</span>    * @return The output serialized to a byte array.<a name="line.66"></a>
-<span class="sourceLineNo">067</span>    * @throws SerializeException If a problem occurred trying to convert the output.<a name="line.67"></a>
-<span class="sourceLineNo">068</span>    */<a name="line.68"></a>
-<span class="sourceLineNo">069</span>   @Override /* SerializerSession */<a name="line.69"></a>
-<span class="sourceLineNo">070</span>   public final byte[] serialize(Object o) throws SerializeException {<a name="line.70"></a>
-<span class="sourceLineNo">071</span>      ByteArrayOutputStream baos = new ByteArrayOutputStream();<a name="line.71"></a>
-<span class="sourceLineNo">072</span>      serialize(baos, o);<a name="line.72"></a>
-<span class="sourceLineNo">073</span>      return baos.toByteArray();<a name="line.73"></a>
-<span class="sourceLineNo">074</span>   }<a name="line.74"></a>
-<span class="sourceLineNo">075</span>}<a name="line.75"></a>
+<span class="sourceLineNo">041</span>    */<a name="line.41"></a>
+<span class="sourceLineNo">042</span>   protected OutputStreamSerializerSession(SerializerContext ctx, SerializerSessionArgs args) {<a name="line.42"></a>
+<span class="sourceLineNo">043</span>      super(ctx, args);<a name="line.43"></a>
+<span class="sourceLineNo">044</span>   }<a name="line.44"></a>
+<span class="sourceLineNo">045</span><a name="line.45"></a>
+<span class="sourceLineNo">046</span>   /**<a name="line.46"></a>
+<span class="sourceLineNo">047</span>    * Constructor for sessions that don't require context.<a name="line.47"></a>
+<span class="sourceLineNo">048</span>    *<a name="line.48"></a>
+<span class="sourceLineNo">049</span>    * @param args<a name="line.49"></a>
+<span class="sourceLineNo">050</span>    *    Runtime session arguments.<a name="line.50"></a>
+<span class="sourceLineNo">051</span>    */<a name="line.51"></a>
+<span class="sourceLineNo">052</span>   protected OutputStreamSerializerSession(SerializerSessionArgs args) {<a name="line.52"></a>
+<span class="sourceLineNo">053</span>      this(null, args);<a name="line.53"></a>
+<span class="sourceLineNo">054</span>   }<a name="line.54"></a>
+<span class="sourceLineNo">055</span><a name="line.55"></a>
+<span class="sourceLineNo">056</span>   @Override /* SerializerSession */<a name="line.56"></a>
+<span class="sourceLineNo">057</span>   public final boolean isWriterSerializer() {<a name="line.57"></a>
+<span class="sourceLineNo">058</span>      return false;<a name="line.58"></a>
+<span class="sourceLineNo">059</span>   }<a name="line.59"></a>
+<span class="sourceLineNo">060</span><a name="line.60"></a>
+<span class="sourceLineNo">061</span>   /**<a name="line.61"></a>
+<span class="sourceLineNo">062</span>    * Convenience method for serializing an object to a &lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;&lt;/code&gt;.<a name="line.62"></a>
+<span class="sourceLineNo">063</span>    *<a name="line.63"></a>
+<span class="sourceLineNo">064</span>    * @param o The object to serialize.<a name="line.64"></a>
+<span class="sourceLineNo">065</span>    * @return The output serialized to a byte array.<a name="line.65"></a>
+<span class="sourceLineNo">066</span>    * @throws SerializeException If a problem occurred trying to convert the output.<a name="line.66"></a>
+<span class="sourceLineNo">067</span>    */<a name="line.67"></a>
+<span class="sourceLineNo">068</span>   @Override /* SerializerSession */<a name="line.68"></a>
+<span class="sourceLineNo">069</span>   public final byte[] serialize(Object o) throws SerializeException {<a name="line.69"></a>
+<span class="sourceLineNo">070</span>      ByteArrayOutputStream baos = new ByteArrayOutputStream();<a name="line.70"></a>
+<span class="sourceLineNo">071</span>      serialize(baos, o);<a name="line.71"></a>
+<span class="sourceLineNo">072</span>      return baos.toByteArray();<a name="line.72"></a>
+<span class="sourceLineNo">073</span>   }<a name="line.73"></a>
+<span class="sourceLineNo">074</span>}<a name="line.74"></a>
 
 
 


[47/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/json/JsonParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/json/JsonParser.html b/content/site/apidocs/org/apache/juneau/json/JsonParser.html
index 807c19d..4572601 100644
--- a/content/site/apidocs/org/apache/juneau/json/JsonParser.html
+++ b/content/site/apidocs/org/apache/juneau/json/JsonParser.html
@@ -127,8 +127,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation">@Consumes</a>(<a href="../../../../org/apache/juneau/annotation/Consumes.html#value--">value</a>="application/json,text/json")
-public class <a href="../../../../src-html/org/apache/juneau/json/JsonParser.html#line.112">JsonParser</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/json/JsonParser.html#line.110">JsonParser</a>
 extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="class in org.apache.juneau.parser">ReaderParser</a></pre>
 <div class="block">Parses any valid JSON text into a POJO model.
 
@@ -294,6 +293,12 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <div class="block">Constructor.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/json/JsonParser.html#JsonParser-org.apache.juneau.PropertyStore-java.lang.String...-">JsonParser</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;consumes)</code>
+<div class="block">Constructor.</div>
+</td>
+</tr>
 </table>
 </li>
 </ul>
@@ -335,7 +340,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.parser.<a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser">Parser</a></h3>
-<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-java.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apac
 he/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
+<code><a href="../../../../org/apache/juneau/parser/Parser.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-j
 ava.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -371,7 +376,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/json/JsonParser.html" title="class in org.apache.juneau.json">JsonParser</a> <a href="../../../../src-html/org/apache/juneau/json/JsonParser.html#line.115">DEFAULT</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/json/JsonParser.html" title="class in org.apache.juneau.json">JsonParser</a> <a href="../../../../src-html/org/apache/juneau/json/JsonParser.html#line.113">DEFAULT</a></pre>
 <div class="block">Default parser, all default settings.</div>
 </li>
 </ul>
@@ -381,7 +386,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DEFAULT_STRICT</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/json/JsonParser.html" title="class in org.apache.juneau.json">JsonParser</a> <a href="../../../../src-html/org/apache/juneau/json/JsonParser.html#line.118">DEFAULT_STRICT</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/json/JsonParser.html" title="class in org.apache.juneau.json">JsonParser</a> <a href="../../../../src-html/org/apache/juneau/json/JsonParser.html#line.116">DEFAULT_STRICT</a></pre>
 <div class="block">Default parser, all default settings.</div>
 </li>
 </ul>
@@ -396,14 +401,30 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <a name="JsonParser-org.apache.juneau.PropertyStore-">
 <!--   -->
 </a>
+<ul class="blockList">
+<li class="blockList">
+<h4>JsonParser</h4>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonParser.html#line.139">JsonParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<div class="block">Constructor.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+</dl>
+</li>
+</ul>
+<a name="JsonParser-org.apache.juneau.PropertyStore-java.lang.String...-">
+<!--   -->
+</a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>JsonParser</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonParser.html#line.141">JsonParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonParser.html#line.149">JsonParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                  <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;consumes)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+<dd><code>consumes</code> - The list of media types that this parser consumes (e.g. <js>"application/json"</js>).</dd>
 </dl>
 </li>
 </ul>
@@ -421,7 +442,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockList">
 <li class="blockList">
 <h4>builder</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/json/JsonParserBuilder.html" title="class in org.apache.juneau.json">JsonParserBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonParser.html#line.147">builder</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/json/JsonParserBuilder.html" title="class in org.apache.juneau.json">JsonParserBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonParser.html#line.155">builder</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/CoreObject.html#builder--">CoreObject</a></code></span></div>
 <div class="block">Creates a new builder class for this object so that a new object can be created that expands upon the current
  object's settings.</div>
@@ -439,7 +460,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/parser/ReaderParserSession.html" title="class in org.apache.juneau.parser">ReaderParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonParser.html#line.152">createSession</a>(<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/parser/ReaderParserSession.html" title="class in org.apache.juneau.parser">ReaderParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonParser.html#line.160">createSession</a>(<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession-org.apache.juneau.parser.ParserSessionArgs-">Parser</a></code></span></div>
 <div class="block">Create the session object that will be passed in to the parse method.
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/json/JsonSchemaSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/json/JsonSchemaSerializer.html b/content/site/apidocs/org/apache/juneau/json/JsonSchemaSerializer.html
index 5b25a8e..ba9e0af 100644
--- a/content/site/apidocs/org/apache/juneau/json/JsonSchemaSerializer.html
+++ b/content/site/apidocs/org/apache/juneau/json/JsonSchemaSerializer.html
@@ -128,9 +128,7 @@ var activeTableTab = "activeTableTab";
 <li class="blockList">
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="application/json+schema,text/json+schema",
-          <a href="../../../../org/apache/juneau/annotation/Produces.html#contentType--">contentType</a>="application/json")
-public final class <a href="../../../../src-html/org/apache/juneau/json/JsonSchemaSerializer.html#line.35">JsonSchemaSerializer</a>
+<pre>public final class <a href="../../../../src-html/org/apache/juneau/json/JsonSchemaSerializer.html#line.33">JsonSchemaSerializer</a>
 extends <a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="class in org.apache.juneau.json">JsonSerializer</a></pre>
 <div class="block">Serializes POJO metadata to HTTP responses as JSON.
 
@@ -243,7 +241,7 @@ extends <a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -279,7 +277,7 @@ extends <a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="
 <ul class="blockListLast">
 <li class="blockList">
 <h4>JsonSchemaSerializer</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSchemaSerializer.html#line.42">JsonSchemaSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSchemaSerializer.html#line.40">JsonSchemaSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -311,8 +309,7 @@ extends <a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and serializer
-   contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   contexts.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The new session object.
    <br>Note that you must call <a href="../../../../org/apache/juneau/BeanSession.html#close--"><code>BeanSession.close()</code></a> on this object to perform any necessary

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/json/JsonSchemaSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/json/JsonSchemaSerializerSession.html b/content/site/apidocs/org/apache/juneau/json/JsonSchemaSerializerSession.html
index edf9156..ecbce52 100644
--- a/content/site/apidocs/org/apache/juneau/json/JsonSchemaSerializerSession.html
+++ b/content/site/apidocs/org/apache/juneau/json/JsonSchemaSerializerSession.html
@@ -265,7 +265,7 @@ extends <a href="../../../../org/apache/juneau/json/JsonSerializerSession.html"
 <ul class="blockListLast">
 <li class="blockList">
 <h4>JsonSchemaSerializerSession</h4>
-<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSchemaSerializerSession.html#line.45">JsonSchemaSerializerSession</a>(<a href="../../../../org/apache/juneau/json/JsonSerializerContext.html" title="class in org.apache.juneau.json">JsonSerializerContext</a>&nbsp;ctx,
+<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSchemaSerializerSession.html#line.44">JsonSchemaSerializerSession</a>(<a href="../../../../org/apache/juneau/json/JsonSerializerContext.html" title="class in org.apache.juneau.json">JsonSerializerContext</a>&nbsp;ctx,
                                       <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block">Create a new session using properties specified in the context.</div>
 <dl>
@@ -275,8 +275,7 @@ extends <a href="../../../../org/apache/juneau/json/JsonSerializerSession.html"
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and
-   serializer contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   serializer contexts.</dd>
 </dl>
 </li>
 </ul>
@@ -294,7 +293,7 @@ extends <a href="../../../../org/apache/juneau/json/JsonSerializerSession.html"
 <ul class="blockListLast">
 <li class="blockList">
 <h4>doSerialize</h4>
-<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSchemaSerializerSession.html#line.50">doSerialize</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out,
+<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSchemaSerializerSession.html#line.49">doSerialize</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out,
                            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
                     throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/SerializerSession.html#doSerialize-org.apache.juneau.serializer.SerializerPipe-java.lang.Object-">SerializerSession</a></code></span></div>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/json/JsonSerializer.Readable.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/json/JsonSerializer.Readable.html b/content/site/apidocs/org/apache/juneau/json/JsonSerializer.Readable.html
index fc7865f..3673c39 100644
--- a/content/site/apidocs/org/apache/juneau/json/JsonSerializer.Readable.html
+++ b/content/site/apidocs/org/apache/juneau/json/JsonSerializer.Readable.html
@@ -126,7 +126,7 @@
 </dl>
 <hr>
 <br>
-<pre>public static class <a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.124">JsonSerializer.Readable</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.122">JsonSerializer.Readable</a>
 extends <a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="class in org.apache.juneau.json">JsonSerializer</a></pre>
 <div class="block">Default serializer, with whitespace.</div>
 </li>
@@ -216,7 +216,7 @@ extends <a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -252,7 +252,7 @@ extends <a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="
 <ul class="blockListLast">
 <li class="blockList">
 <h4>Readable</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.Readable.html#line.131">Readable</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.Readable.html#line.129">Readable</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/json/JsonSerializer.Simple.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/json/JsonSerializer.Simple.html b/content/site/apidocs/org/apache/juneau/json/JsonSerializer.Simple.html
index 83ef9e5..bec0518 100644
--- a/content/site/apidocs/org/apache/juneau/json/JsonSerializer.Simple.html
+++ b/content/site/apidocs/org/apache/juneau/json/JsonSerializer.Simple.html
@@ -126,9 +126,7 @@
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="application/json+simple,text/json+simple",
-          <a href="../../../../org/apache/juneau/annotation/Produces.html#contentType--">contentType</a>="application/json")
-public static class <a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.141">JsonSerializer.Simple</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.138">JsonSerializer.Simple</a>
 extends <a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="class in org.apache.juneau.json">JsonSerializer</a></pre>
 <div class="block">Default serializer, single quotes, simple mode.</div>
 </li>
@@ -218,7 +216,7 @@ extends <a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -254,7 +252,7 @@ extends <a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="
 <ul class="blockListLast">
 <li class="blockList">
 <h4>Simple</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.Simple.html#line.148">Simple</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.Simple.html#line.145">Simple</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/json/JsonSerializer.SimpleReadable.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/json/JsonSerializer.SimpleReadable.html b/content/site/apidocs/org/apache/juneau/json/JsonSerializer.SimpleReadable.html
index d17e526..d53ef41 100644
--- a/content/site/apidocs/org/apache/juneau/json/JsonSerializer.SimpleReadable.html
+++ b/content/site/apidocs/org/apache/juneau/json/JsonSerializer.SimpleReadable.html
@@ -126,7 +126,7 @@
 </dl>
 <hr>
 <br>
-<pre>public static class <a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.158">JsonSerializer.SimpleReadable</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.157">JsonSerializer.SimpleReadable</a>
 extends <a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="class in org.apache.juneau.json">JsonSerializer</a></pre>
 <div class="block">Default serializer, single quotes, simple mode, with whitespace.</div>
 </li>
@@ -216,7 +216,7 @@ extends <a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -252,7 +252,7 @@ extends <a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="
 <ul class="blockListLast">
 <li class="blockList">
 <h4>SimpleReadable</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.SimpleReadable.html#line.165">SimpleReadable</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.SimpleReadable.html#line.164">SimpleReadable</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/json/JsonSerializer.SimpleReadableSafe.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/json/JsonSerializer.SimpleReadableSafe.html b/content/site/apidocs/org/apache/juneau/json/JsonSerializer.SimpleReadableSafe.html
index 798eef9..4e712c6 100644
--- a/content/site/apidocs/org/apache/juneau/json/JsonSerializer.SimpleReadableSafe.html
+++ b/content/site/apidocs/org/apache/juneau/json/JsonSerializer.SimpleReadableSafe.html
@@ -126,7 +126,7 @@
 </dl>
 <hr>
 <br>
-<pre>public static class <a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.179">JsonSerializer.SimpleReadableSafe</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.178">JsonSerializer.SimpleReadableSafe</a>
 extends <a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="class in org.apache.juneau.json">JsonSerializer</a></pre>
 <div class="block">Default serializer, single quotes, simple mode, with whitespace and recursion detection.
  Note that recursion detection introduces a small performance penalty.</div>
@@ -217,7 +217,7 @@ extends <a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -253,7 +253,7 @@ extends <a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="
 <ul class="blockListLast">
 <li class="blockList">
 <h4>SimpleReadableSafe</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.SimpleReadableSafe.html#line.186">SimpleReadableSafe</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.SimpleReadableSafe.html#line.185">SimpleReadableSafe</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/json/JsonSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/json/JsonSerializer.html b/content/site/apidocs/org/apache/juneau/json/JsonSerializer.html
index 590d1c4..5ef393d 100644
--- a/content/site/apidocs/org/apache/juneau/json/JsonSerializer.html
+++ b/content/site/apidocs/org/apache/juneau/json/JsonSerializer.html
@@ -127,8 +127,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="application/json,text/json")
-public class <a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.102">JsonSerializer</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.100">JsonSerializer</a>
 extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html" title="class in org.apache.juneau.serializer">WriterSerializer</a></pre>
 <div class="block">Serializes POJO models to JSON.
 
@@ -319,6 +318,13 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <div class="block">Constructor.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/json/JsonSerializer.html#JsonSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">JsonSerializer</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+              <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+              <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</code>
+<div class="block">Constructor.</div>
+</td>
+</tr>
 </table>
 </li>
 </ul>
@@ -366,7 +372,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -402,7 +408,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="class in org.apache.juneau.json">JsonSerializer</a> <a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.105">DEFAULT</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="class in org.apache.juneau.json">JsonSerializer</a> <a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.103">DEFAULT</a></pre>
 <div class="block">Default serializer, all default settings.</div>
 </li>
 </ul>
@@ -412,7 +418,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_READABLE</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="class in org.apache.juneau.json">JsonSerializer</a> <a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.108">DEFAULT_READABLE</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="class in org.apache.juneau.json">JsonSerializer</a> <a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.106">DEFAULT_READABLE</a></pre>
 <div class="block">Default serializer, all default settings.</div>
 </li>
 </ul>
@@ -422,7 +428,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_LAX</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="class in org.apache.juneau.json">JsonSerializer</a> <a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.111">DEFAULT_LAX</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="class in org.apache.juneau.json">JsonSerializer</a> <a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.109">DEFAULT_LAX</a></pre>
 <div class="block">Default serializer, single quotes, simple mode.</div>
 </li>
 </ul>
@@ -432,7 +438,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_LAX_READABLE</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="class in org.apache.juneau.json">JsonSerializer</a> <a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.114">DEFAULT_LAX_READABLE</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="class in org.apache.juneau.json">JsonSerializer</a> <a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.112">DEFAULT_LAX_READABLE</a></pre>
 <div class="block">Default serializer, single quotes, simple mode, with whitespace.</div>
 </li>
 </ul>
@@ -442,7 +448,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DEFAULT_LAX_READABLE_SAFE</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="class in org.apache.juneau.json">JsonSerializer</a> <a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.120">DEFAULT_LAX_READABLE_SAFE</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="class in org.apache.juneau.json">JsonSerializer</a> <a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.118">DEFAULT_LAX_READABLE_SAFE</a></pre>
 <div class="block">Default serializer, single quotes, simple mode, with whitespace and recursion detection.
  Note that recursion detection introduces a small performance penalty.</div>
 </li>
@@ -458,7 +464,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <a name="JsonSerializer-org.apache.juneau.PropertyStore-">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
 <h4>JsonSerializer</h4>
 <pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.206">JsonSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
@@ -469,6 +475,35 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 </dl>
 </li>
 </ul>
+<a name="JsonSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>JsonSerializer</h4>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.231">JsonSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                      <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+                      <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</pre>
+<div class="block">Constructor.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+<dd><code>produces</code> - The media type that this serializer produces.</dd>
+<dd><code>accept</code> - The accept media types that the serializer can handle.
+   <p>
+   Can contain meta-characters per the <code>media-type</code> specification of
+   <a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1">RFC2616/14.1</a>
+   <p>
+   If empty, then assumes the only media type supported is <code>produces</code>.
+   <p>
+   For example, if this serializer produces <js>"application/json"</js> but should handle media types of
+   <js>"application/json"</js> and <js>"text/json"</js>, then the arguments should be:
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"application/json"</js>, <js>"text/json"</js>);</code>
+   <br>...or...
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"*&#8203;/json"</js>);</code></dd>
+</dl>
+</li>
+</ul>
 </li>
 </ul>
 <!-- ============ METHOD DETAIL ========== -->
@@ -483,7 +518,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>builder</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/json/JsonSerializerBuilder.html" title="class in org.apache.juneau.json">JsonSerializerBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.212">builder</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/json/JsonSerializerBuilder.html" title="class in org.apache.juneau.json">JsonSerializerBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.237">builder</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/CoreObject.html#builder--">CoreObject</a></code></span></div>
 <div class="block">Creates a new builder class for this object so that a new object can be created that expands upon the current
  object's settings.</div>
@@ -501,7 +536,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>getSchemaSerializer</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/json/JsonSchemaSerializer.html" title="class in org.apache.juneau.json">JsonSchemaSerializer</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.221">getSchemaSerializer</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/json/JsonSchemaSerializer.html" title="class in org.apache.juneau.json">JsonSchemaSerializer</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.246">getSchemaSerializer</a>()</pre>
 <div class="block">Returns the schema serializer based on the settings of this serializer.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -515,7 +550,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.232">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSerializer.html#line.257">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession-org.apache.juneau.serializer.SerializerSessionArgs-">Serializer</a></code></span></div>
 <div class="block">Create the session object used for actual serialization of objects.</div>
 <dl>
@@ -525,8 +560,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and serializer
-   contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   contexts.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The new session object.
    <br>Note that you must call <a href="../../../../org/apache/juneau/BeanSession.html#close--"><code>BeanSession.close()</code></a> on this object to perform any necessary

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/json/JsonSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/json/JsonSerializerSession.html b/content/site/apidocs/org/apache/juneau/json/JsonSerializerSession.html
index fdc2e64..36374ce 100644
--- a/content/site/apidocs/org/apache/juneau/json/JsonSerializerSession.html
+++ b/content/site/apidocs/org/apache/juneau/json/JsonSerializerSession.html
@@ -132,7 +132,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre>public class <a href="../../../../src-html/org/apache/juneau/json/JsonSerializerSession.html#line.30">JsonSerializerSession</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/json/JsonSerializerSession.html#line.31">JsonSerializerSession</a>
 extends <a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a></pre>
 <div class="block">Session object that lives for the duration of a single use of <a href="../../../../org/apache/juneau/json/JsonSerializer.html" title="class in org.apache.juneau.json"><code>JsonSerializer</code></a>.
 
@@ -279,8 +279,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializerSessio
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and
-   serializer contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   serializer contexts.</dd>
 </dl>
 </li>
 </ul>
@@ -323,7 +322,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializerSessio
 <ul class="blockList">
 <li class="blockList">
 <h4>isAddBeanTypeProperties</h4>
-<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSerializerSession.html#line.239">isAddBeanTypeProperties</a>()</pre>
+<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSerializerSession.html#line.242">isAddBeanTypeProperties</a>()</pre>
 <div class="block">Returns the <a href="../../../../org/apache/juneau/json/JsonSerializerContext.html#JSON_addBeanTypeProperties"><code>JsonSerializerContext.JSON_addBeanTypeProperties</code></a> setting value for this session.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
@@ -339,7 +338,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializerSessio
 <ul class="blockListLast">
 <li class="blockList">
 <h4>getJsonWriter</h4>
-<pre>protected final&nbsp;<a href="../../../../org/apache/juneau/json/JsonWriter.html" title="class in org.apache.juneau.json">JsonWriter</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSerializerSession.html#line.250">getJsonWriter</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out)
+<pre>protected final&nbsp;<a href="../../../../org/apache/juneau/json/JsonWriter.html" title="class in org.apache.juneau.json">JsonWriter</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonSerializerSession.html#line.253">getJsonWriter</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out)
                                   throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block">Converts the specified output target object to an <a href="../../../../org/apache/juneau/json/JsonWriter.html" title="class in org.apache.juneau.json"><code>JsonWriter</code></a>.</div>
 <dl>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/msgpack/MsgPackParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/msgpack/MsgPackParser.html b/content/site/apidocs/org/apache/juneau/msgpack/MsgPackParser.html
index b5f44a1..471bccd 100644
--- a/content/site/apidocs/org/apache/juneau/msgpack/MsgPackParser.html
+++ b/content/site/apidocs/org/apache/juneau/msgpack/MsgPackParser.html
@@ -123,8 +123,7 @@ var activeTableTab = "activeTableTab";
 <li class="blockList">
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation">@Consumes</a>(<a href="../../../../org/apache/juneau/annotation/Consumes.html#value--">value</a>="octal/msgpack")
-public class <a href="../../../../src-html/org/apache/juneau/msgpack/MsgPackParser.html#line.34">MsgPackParser</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/msgpack/MsgPackParser.html#line.32">MsgPackParser</a>
 extends <a href="../../../../org/apache/juneau/parser/InputStreamParser.html" title="class in org.apache.juneau.parser">InputStreamParser</a></pre>
 <div class="block">Parses a MessagePack stream into a POJO model.
 
@@ -229,7 +228,7 @@ extends <a href="../../../../org/apache/juneau/parser/InputStreamParser.html" ti
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.parser.<a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser">Parser</a></h3>
-<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-java.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apac
 he/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
+<code><a href="../../../../org/apache/juneau/parser/Parser.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-j
 ava.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -265,7 +264,7 @@ extends <a href="../../../../org/apache/juneau/parser/InputStreamParser.html" ti
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DEFAULT</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/msgpack/MsgPackParser.html" title="class in org.apache.juneau.msgpack">MsgPackParser</a> <a href="../../../../src-html/org/apache/juneau/msgpack/MsgPackParser.html#line.37">DEFAULT</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/msgpack/MsgPackParser.html" title="class in org.apache.juneau.msgpack">MsgPackParser</a> <a href="../../../../src-html/org/apache/juneau/msgpack/MsgPackParser.html#line.35">DEFAULT</a></pre>
 <div class="block">Default parser, all default settings.</div>
 </li>
 </ul>
@@ -283,7 +282,7 @@ extends <a href="../../../../org/apache/juneau/parser/InputStreamParser.html" ti
 <ul class="blockListLast">
 <li class="blockList">
 <h4>MsgPackParser</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/msgpack/MsgPackParser.html#line.47">MsgPackParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/msgpack/MsgPackParser.html#line.45">MsgPackParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -305,7 +304,7 @@ extends <a href="../../../../org/apache/juneau/parser/InputStreamParser.html" ti
 <ul class="blockList">
 <li class="blockList">
 <h4>builder</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/msgpack/MsgPackParserBuilder.html" title="class in org.apache.juneau.msgpack">MsgPackParserBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/msgpack/MsgPackParser.html#line.53">builder</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/msgpack/MsgPackParserBuilder.html" title="class in org.apache.juneau.msgpack">MsgPackParserBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/msgpack/MsgPackParser.html#line.51">builder</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/CoreObject.html#builder--">CoreObject</a></code></span></div>
 <div class="block">Creates a new builder class for this object so that a new object can be created that expands upon the current
  object's settings.</div>
@@ -323,7 +322,7 @@ extends <a href="../../../../org/apache/juneau/parser/InputStreamParser.html" ti
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/msgpack/MsgPackParserSession.html" title="class in org.apache.juneau.msgpack">MsgPackParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/msgpack/MsgPackParser.html#line.58">createSession</a>(<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/msgpack/MsgPackParserSession.html" title="class in org.apache.juneau.msgpack">MsgPackParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/msgpack/MsgPackParser.html#line.56">createSession</a>(<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession-org.apache.juneau.parser.ParserSessionArgs-">Parser</a></code></span></div>
 <div class="block">Create the session object that will be passed in to the parse method.
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/msgpack/MsgPackSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/msgpack/MsgPackSerializer.html b/content/site/apidocs/org/apache/juneau/msgpack/MsgPackSerializer.html
index d81f206..2597e9e 100644
--- a/content/site/apidocs/org/apache/juneau/msgpack/MsgPackSerializer.html
+++ b/content/site/apidocs/org/apache/juneau/msgpack/MsgPackSerializer.html
@@ -123,8 +123,7 @@ var activeTableTab = "activeTableTab";
 <li class="blockList">
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="octal/msgpack")
-public class <a href="../../../../src-html/org/apache/juneau/msgpack/MsgPackSerializer.html#line.38">MsgPackSerializer</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/msgpack/MsgPackSerializer.html#line.36">MsgPackSerializer</a>
 extends <a href="../../../../org/apache/juneau/serializer/OutputStreamSerializer.html" title="class in org.apache.juneau.serializer">OutputStreamSerializer</a></pre>
 <div class="block">Serializes POJO models to MessagePack.
 
@@ -233,7 +232,7 @@ extends <a href="../../../../org/apache/juneau/serializer/OutputStreamSerializer
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -269,7 +268,7 @@ extends <a href="../../../../org/apache/juneau/serializer/OutputStreamSerializer
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DEFAULT</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/msgpack/MsgPackSerializer.html" title="class in org.apache.juneau.msgpack">MsgPackSerializer</a> <a href="../../../../src-html/org/apache/juneau/msgpack/MsgPackSerializer.html#line.41">DEFAULT</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/msgpack/MsgPackSerializer.html" title="class in org.apache.juneau.msgpack">MsgPackSerializer</a> <a href="../../../../src-html/org/apache/juneau/msgpack/MsgPackSerializer.html#line.39">DEFAULT</a></pre>
 <div class="block">Default serializer, all default settings.</div>
 </li>
 </ul>
@@ -287,7 +286,7 @@ extends <a href="../../../../org/apache/juneau/serializer/OutputStreamSerializer
 <ul class="blockListLast">
 <li class="blockList">
 <h4>MsgPackSerializer</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/msgpack/MsgPackSerializer.html#line.51">MsgPackSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/msgpack/MsgPackSerializer.html#line.49">MsgPackSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -309,7 +308,7 @@ extends <a href="../../../../org/apache/juneau/serializer/OutputStreamSerializer
 <ul class="blockList">
 <li class="blockList">
 <h4>builder</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/msgpack/MsgPackSerializerBuilder.html" title="class in org.apache.juneau.msgpack">MsgPackSerializerBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/msgpack/MsgPackSerializer.html#line.57">builder</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/msgpack/MsgPackSerializerBuilder.html" title="class in org.apache.juneau.msgpack">MsgPackSerializerBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/msgpack/MsgPackSerializer.html#line.55">builder</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/CoreObject.html#builder--">CoreObject</a></code></span></div>
 <div class="block">Creates a new builder class for this object so that a new object can be created that expands upon the current
  object's settings.</div>
@@ -327,7 +326,7 @@ extends <a href="../../../../org/apache/juneau/serializer/OutputStreamSerializer
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/OutputStreamSerializerSession.html" title="class in org.apache.juneau.serializer">OutputStreamSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/msgpack/MsgPackSerializer.html#line.62">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/OutputStreamSerializerSession.html" title="class in org.apache.juneau.serializer">OutputStreamSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/msgpack/MsgPackSerializer.html#line.60">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession-org.apache.juneau.serializer.SerializerSessionArgs-">Serializer</a></code></span></div>
 <div class="block">Create the session object used for actual serialization of objects.</div>
 <dl>
@@ -337,8 +336,7 @@ extends <a href="../../../../org/apache/juneau/serializer/OutputStreamSerializer
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and serializer
-   contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   contexts.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The new session object.
    <br>Note that you must call <a href="../../../../org/apache/juneau/BeanSession.html#close--"><code>BeanSession.close()</code></a> on this object to perform any necessary

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/msgpack/MsgPackSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/msgpack/MsgPackSerializerSession.html b/content/site/apidocs/org/apache/juneau/msgpack/MsgPackSerializerSession.html
index 84dbf0b..c809b73 100644
--- a/content/site/apidocs/org/apache/juneau/msgpack/MsgPackSerializerSession.html
+++ b/content/site/apidocs/org/apache/juneau/msgpack/MsgPackSerializerSession.html
@@ -128,7 +128,7 @@ var activeTableTab = "activeTableTab";
 <li class="blockList">
 <hr>
 <br>
-<pre>public final class <a href="../../../../src-html/org/apache/juneau/msgpack/MsgPackSerializerSession.html#line.30">MsgPackSerializerSession</a>
+<pre>public final class <a href="../../../../src-html/org/apache/juneau/msgpack/MsgPackSerializerSession.html#line.31">MsgPackSerializerSession</a>
 extends <a href="../../../../org/apache/juneau/serializer/OutputStreamSerializerSession.html" title="class in org.apache.juneau.serializer">OutputStreamSerializerSession</a></pre>
 <div class="block">Session object that lives for the duration of a single use of <a href="../../../../org/apache/juneau/msgpack/MsgPackSerializer.html" title="class in org.apache.juneau.msgpack"><code>MsgPackSerializer</code></a>.
 
@@ -269,8 +269,7 @@ extends <a href="../../../../org/apache/juneau/serializer/OutputStreamSerializer
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and
-   serializer contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   serializer contexts.</dd>
 </dl>
 </li>
 </ul>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/parser/InputStreamParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/parser/InputStreamParser.html b/content/site/apidocs/org/apache/juneau/parser/InputStreamParser.html
index e996492..7709112 100644
--- a/content/site/apidocs/org/apache/juneau/parser/InputStreamParser.html
+++ b/content/site/apidocs/org/apache/juneau/parser/InputStreamParser.html
@@ -122,7 +122,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre>public abstract class <a href="../../../../src-html/org/apache/juneau/parser/InputStreamParser.html#line.36">InputStreamParser</a>
+<pre>public abstract class <a href="../../../../src-html/org/apache/juneau/parser/InputStreamParser.html#line.28">InputStreamParser</a>
 extends <a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser">Parser</a></pre>
 <div class="block">Subclass of <a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser"><code>Parser</code></a> for byte-based parsers.
 
@@ -132,14 +132,7 @@ extends <a href="../../../../org/apache/juneau/parser/Parser.html" title="class
  It has 1 abstract method to implement...
  <ul>
    <li><code>parse(InputStream, ClassMeta, ParserContext)</code>
- </ul>
-
- <h6 class='topic'>@Consumes annotation</h6>
-
- The media types that this parser can handle is specified through the <a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation"><code>@Consumes</code></a> annotation.
-
- <p>
- However, the media types can also be specified programmatically by overriding the <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--"><code>Parser.getMediaTypes()</code></a> method.</div>
+ </ul></div>
 </li>
 </ul>
 </div>
@@ -175,7 +168,8 @@ extends <a href="../../../../org/apache/juneau/parser/Parser.html" title="class
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected </code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/parser/InputStreamParser.html#InputStreamParser-org.apache.juneau.PropertyStore-">InputStreamParser</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</code>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/parser/InputStreamParser.html#InputStreamParser-org.apache.juneau.PropertyStore-java.lang.String...-">InputStreamParser</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                 <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;consumes)</code>
 <div class="block">Constructor.</div>
 </td>
 </tr>
@@ -206,7 +200,7 @@ extends <a href="../../../../org/apache/juneau/parser/Parser.html" title="class
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.parser.<a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser">Parser</a></h3>
-<code><a href="../../../../org/apache/juneau/parser/Parser.html#builder--">builder</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession-org.apache.juneau.parser.ParserSessionArgs-">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.T
 ype:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-java.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
+<code><a href="../../../../org/apache/juneau/parser/Parser.html#builder--">builder</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession-org.apache.juneau.parser.ParserSessionArgs-">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-"
 >parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-java.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -236,17 +230,19 @@ extends <a href="../../../../org/apache/juneau/parser/Parser.html" title="class
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
-<a name="InputStreamParser-org.apache.juneau.PropertyStore-">
+<a name="InputStreamParser-org.apache.juneau.PropertyStore-java.lang.String...-">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>InputStreamParser</h4>
-<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/InputStreamParser.html#line.43">InputStreamParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/InputStreamParser.html#line.36">InputStreamParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;consumes)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+<dd><code>consumes</code> - The list of media types that this parser consumes (e.g. <js>"application/json"</js>).</dd>
 </dl>
 </li>
 </ul>
@@ -264,7 +260,7 @@ extends <a href="../../../../org/apache/juneau/parser/Parser.html" title="class
 <ul class="blockListLast">
 <li class="blockList">
 <h4>isReaderParser</h4>
-<pre>public final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/InputStreamParser.html#line.48">isReaderParser</a>()</pre>
+<pre>public final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/InputStreamParser.html#line.41">isReaderParser</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/parser/Parser.html#isReaderParser--">Parser</a></code></span></div>
 <div class="block">Returns <jk>true</jk> if this parser subclasses from <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="class in org.apache.juneau.parser"><code>ReaderParser</code></a>.</div>
 <dl>


[32/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.NTriple.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.NTriple.html b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.NTriple.html
index d03eb62..e3f2a96 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.NTriple.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.NTriple.html
@@ -24,144 +24,153 @@
 <span class="sourceLineNo">016</span>import static org.apache.juneau.jena.RdfCommonContext.*;<a name="line.16"></a>
 <span class="sourceLineNo">017</span><a name="line.17"></a>
 <span class="sourceLineNo">018</span>import org.apache.juneau.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.annotation.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span><a name="line.21"></a>
-<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * Serializes POJOs to RDF.<a name="line.23"></a>
-<span class="sourceLineNo">024</span> *<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * <a name="line.26"></a>
-<span class="sourceLineNo">027</span> * Refer to &lt;a class="doclink" href="package-summary.html#SerializerConfigurableProperties"&gt;Configurable Properties&lt;/a&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> *    for the entire list of configurable properties.<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * <a name="line.31"></a>
-<span class="sourceLineNo">032</span> * The following direct subclasses are provided for language-specific serializers:<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;ul&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *    &lt;li&gt;{@link RdfSerializer.Xml} - RDF/XML.<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *    &lt;li&gt;{@link RdfSerializer.XmlAbbrev} - RDF/XML-ABBREV.<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *    &lt;li&gt;{@link RdfSerializer.NTriple} - N-TRIPLE.<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *    &lt;li&gt;{@link RdfSerializer.Turtle} - TURTLE.<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;{@link RdfSerializer.N3} - N3.<a name="line.38"></a>
-<span class="sourceLineNo">039</span> * &lt;/ul&gt;<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *<a name="line.40"></a>
-<span class="sourceLineNo">041</span> * &lt;h5 class='section'&gt;Additional information:&lt;/h5&gt;<a name="line.41"></a>
-<span class="sourceLineNo">042</span> * <a name="line.42"></a>
-<span class="sourceLineNo">043</span> * See &lt;a class="doclink" href="package-summary.html#TOC"&gt;RDF Overview&lt;/a&gt; for an overview of RDF support in Juneau.<a name="line.43"></a>
-<span class="sourceLineNo">044</span> */<a name="line.44"></a>
-<span class="sourceLineNo">045</span>@Produces(value="text/xml+rdf+abbrev", contentType="text/xml+rdf")<a name="line.45"></a>
-<span class="sourceLineNo">046</span>public class RdfSerializer extends WriterSerializer {<a name="line.46"></a>
-<span class="sourceLineNo">047</span><a name="line.47"></a>
-<span class="sourceLineNo">048</span>   /** Default RDF/XML serializer, all default settings.*/<a name="line.48"></a>
-<span class="sourceLineNo">049</span>   public static final RdfSerializer DEFAULT_XML = new Xml(PropertyStore.create());<a name="line.49"></a>
-<span class="sourceLineNo">050</span><a name="line.50"></a>
-<span class="sourceLineNo">051</span>   /** Default Abbreviated RDF/XML serializer, all default settings.*/<a name="line.51"></a>
-<span class="sourceLineNo">052</span>   public static final RdfSerializer DEFAULT_XMLABBREV = new XmlAbbrev(PropertyStore.create());<a name="line.52"></a>
-<span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>   /** Default Turtle serializer, all default settings.*/<a name="line.54"></a>
-<span class="sourceLineNo">055</span>   public static final RdfSerializer DEFAULT_TURTLE = new Turtle(PropertyStore.create());<a name="line.55"></a>
-<span class="sourceLineNo">056</span><a name="line.56"></a>
-<span class="sourceLineNo">057</span>   /** Default N-Triple serializer, all default settings.*/<a name="line.57"></a>
-<span class="sourceLineNo">058</span>   public static final RdfSerializer DEFAULT_NTRIPLE = new NTriple(PropertyStore.create());<a name="line.58"></a>
-<span class="sourceLineNo">059</span><a name="line.59"></a>
-<span class="sourceLineNo">060</span>   /** Default N3 serializer, all default settings.*/<a name="line.60"></a>
-<span class="sourceLineNo">061</span>   public static final RdfSerializer DEFAULT_N3 = new N3(PropertyStore.create());<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span><a name="line.63"></a>
-<span class="sourceLineNo">064</span>   /** Produces RDF/XML output */<a name="line.64"></a>
-<span class="sourceLineNo">065</span>   @Produces("text/xml+rdf")<a name="line.65"></a>
-<span class="sourceLineNo">066</span>   public static class Xml extends RdfSerializer {<a name="line.66"></a>
-<span class="sourceLineNo">067</span><a name="line.67"></a>
-<span class="sourceLineNo">068</span>      /**<a name="line.68"></a>
-<span class="sourceLineNo">069</span>       * Constructor.<a name="line.69"></a>
-<span class="sourceLineNo">070</span>       * <a name="line.70"></a>
-<span class="sourceLineNo">071</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.71"></a>
-<span class="sourceLineNo">072</span>       */<a name="line.72"></a>
-<span class="sourceLineNo">073</span>      public Xml(PropertyStore propertyStore) {<a name="line.73"></a>
-<span class="sourceLineNo">074</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML));<a name="line.74"></a>
-<span class="sourceLineNo">075</span>      }<a name="line.75"></a>
-<span class="sourceLineNo">076</span>   }<a name="line.76"></a>
+<span class="sourceLineNo">019</span>import org.apache.juneau.serializer.*;<a name="line.19"></a>
+<span class="sourceLineNo">020</span><a name="line.20"></a>
+<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
+<span class="sourceLineNo">022</span> * Serializes POJOs to RDF.<a name="line.22"></a>
+<span class="sourceLineNo">023</span> *<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * <a name="line.25"></a>
+<span class="sourceLineNo">026</span> * Refer to &lt;a class="doclink" href="package-summary.html#SerializerConfigurableProperties"&gt;Configurable Properties&lt;/a&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> *    for the entire list of configurable properties.<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * <a name="line.30"></a>
+<span class="sourceLineNo">031</span> * The following direct subclasses are provided for language-specific serializers:<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;ul&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *    &lt;li&gt;{@link RdfSerializer.Xml} - RDF/XML.<a name="line.33"></a>
+<span class="sourceLineNo">034</span> *    &lt;li&gt;{@link RdfSerializer.XmlAbbrev} - RDF/XML-ABBREV.<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *    &lt;li&gt;{@link RdfSerializer.NTriple} - N-TRIPLE.<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *    &lt;li&gt;{@link RdfSerializer.Turtle} - TURTLE.<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;{@link RdfSerializer.N3} - N3.<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * &lt;/ul&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *<a name="line.39"></a>
+<span class="sourceLineNo">040</span> * &lt;h5 class='section'&gt;Additional information:&lt;/h5&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span> * <a name="line.41"></a>
+<span class="sourceLineNo">042</span> * See &lt;a class="doclink" href="package-summary.html#TOC"&gt;RDF Overview&lt;/a&gt; for an overview of RDF support in Juneau.<a name="line.42"></a>
+<span class="sourceLineNo">043</span> */<a name="line.43"></a>
+<span class="sourceLineNo">044</span>public class RdfSerializer extends WriterSerializer {<a name="line.44"></a>
+<span class="sourceLineNo">045</span><a name="line.45"></a>
+<span class="sourceLineNo">046</span>   /** Default RDF/XML serializer, all default settings.*/<a name="line.46"></a>
+<span class="sourceLineNo">047</span>   public static final RdfSerializer DEFAULT_XML = new Xml(PropertyStore.create());<a name="line.47"></a>
+<span class="sourceLineNo">048</span><a name="line.48"></a>
+<span class="sourceLineNo">049</span>   /** Default Abbreviated RDF/XML serializer, all default settings.*/<a name="line.49"></a>
+<span class="sourceLineNo">050</span>   public static final RdfSerializer DEFAULT_XMLABBREV = new XmlAbbrev(PropertyStore.create());<a name="line.50"></a>
+<span class="sourceLineNo">051</span><a name="line.51"></a>
+<span class="sourceLineNo">052</span>   /** Default Turtle serializer, all default settings.*/<a name="line.52"></a>
+<span class="sourceLineNo">053</span>   public static final RdfSerializer DEFAULT_TURTLE = new Turtle(PropertyStore.create());<a name="line.53"></a>
+<span class="sourceLineNo">054</span><a name="line.54"></a>
+<span class="sourceLineNo">055</span>   /** Default N-Triple serializer, all default settings.*/<a name="line.55"></a>
+<span class="sourceLineNo">056</span>   public static final RdfSerializer DEFAULT_NTRIPLE = new NTriple(PropertyStore.create());<a name="line.56"></a>
+<span class="sourceLineNo">057</span><a name="line.57"></a>
+<span class="sourceLineNo">058</span>   /** Default N3 serializer, all default settings.*/<a name="line.58"></a>
+<span class="sourceLineNo">059</span>   public static final RdfSerializer DEFAULT_N3 = new N3(PropertyStore.create());<a name="line.59"></a>
+<span class="sourceLineNo">060</span><a name="line.60"></a>
+<span class="sourceLineNo">061</span><a name="line.61"></a>
+<span class="sourceLineNo">062</span>   /** Produces RDF/XML output */<a name="line.62"></a>
+<span class="sourceLineNo">063</span>   public static class Xml extends RdfSerializer {<a name="line.63"></a>
+<span class="sourceLineNo">064</span><a name="line.64"></a>
+<span class="sourceLineNo">065</span>      /**<a name="line.65"></a>
+<span class="sourceLineNo">066</span>       * Constructor.<a name="line.66"></a>
+<span class="sourceLineNo">067</span>       * <a name="line.67"></a>
+<span class="sourceLineNo">068</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.68"></a>
+<span class="sourceLineNo">069</span>       */<a name="line.69"></a>
+<span class="sourceLineNo">070</span>      public Xml(PropertyStore propertyStore) {<a name="line.70"></a>
+<span class="sourceLineNo">071</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML), "text/xml+rdf");<a name="line.71"></a>
+<span class="sourceLineNo">072</span>      }<a name="line.72"></a>
+<span class="sourceLineNo">073</span>   }<a name="line.73"></a>
+<span class="sourceLineNo">074</span><a name="line.74"></a>
+<span class="sourceLineNo">075</span>   /** Produces Abbreviated RDF/XML output */<a name="line.75"></a>
+<span class="sourceLineNo">076</span>   public static class XmlAbbrev extends RdfSerializer {<a name="line.76"></a>
 <span class="sourceLineNo">077</span><a name="line.77"></a>
-<span class="sourceLineNo">078</span>   /** Produces Abbreviated RDF/XML output */<a name="line.78"></a>
-<span class="sourceLineNo">079</span>   @Produces(value="text/xml+rdf+abbrev", contentType="text/xml+rdf")<a name="line.79"></a>
-<span class="sourceLineNo">080</span>   public static class XmlAbbrev extends RdfSerializer {<a name="line.80"></a>
-<span class="sourceLineNo">081</span><a name="line.81"></a>
-<span class="sourceLineNo">082</span>      /**<a name="line.82"></a>
-<span class="sourceLineNo">083</span>       * Constructor.<a name="line.83"></a>
-<span class="sourceLineNo">084</span>       * <a name="line.84"></a>
-<span class="sourceLineNo">085</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.85"></a>
-<span class="sourceLineNo">086</span>       */<a name="line.86"></a>
-<span class="sourceLineNo">087</span>      public XmlAbbrev(PropertyStore propertyStore) {<a name="line.87"></a>
-<span class="sourceLineNo">088</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML_ABBREV));<a name="line.88"></a>
-<span class="sourceLineNo">089</span>      }<a name="line.89"></a>
-<span class="sourceLineNo">090</span>   }<a name="line.90"></a>
-<span class="sourceLineNo">091</span><a name="line.91"></a>
-<span class="sourceLineNo">092</span>   /** Produces N-Triple output */<a name="line.92"></a>
-<span class="sourceLineNo">093</span>   @Produces("text/n-triple")<a name="line.93"></a>
-<span class="sourceLineNo">094</span>   public static class NTriple extends RdfSerializer {<a name="line.94"></a>
-<span class="sourceLineNo">095</span><a name="line.95"></a>
-<span class="sourceLineNo">096</span>      /**<a name="line.96"></a>
-<span class="sourceLineNo">097</span>       * Constructor.<a name="line.97"></a>
-<span class="sourceLineNo">098</span>       * <a name="line.98"></a>
-<span class="sourceLineNo">099</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.99"></a>
-<span class="sourceLineNo">100</span>       */<a name="line.100"></a>
-<span class="sourceLineNo">101</span>      public NTriple(PropertyStore propertyStore) {<a name="line.101"></a>
-<span class="sourceLineNo">102</span>         super(propertyStore.copy().append(RDF_language, LANG_NTRIPLE));<a name="line.102"></a>
-<span class="sourceLineNo">103</span>      }<a name="line.103"></a>
-<span class="sourceLineNo">104</span>   }<a name="line.104"></a>
-<span class="sourceLineNo">105</span><a name="line.105"></a>
-<span class="sourceLineNo">106</span>   /** Produces Turtle output */<a name="line.106"></a>
-<span class="sourceLineNo">107</span>   @Produces("text/turtle")<a name="line.107"></a>
-<span class="sourceLineNo">108</span>   public static class Turtle extends RdfSerializer {<a name="line.108"></a>
-<span class="sourceLineNo">109</span><a name="line.109"></a>
-<span class="sourceLineNo">110</span>      /**<a name="line.110"></a>
-<span class="sourceLineNo">111</span>       * Constructor.<a name="line.111"></a>
-<span class="sourceLineNo">112</span>       * <a name="line.112"></a>
-<span class="sourceLineNo">113</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.113"></a>
-<span class="sourceLineNo">114</span>       */<a name="line.114"></a>
-<span class="sourceLineNo">115</span>      public Turtle(PropertyStore propertyStore) {<a name="line.115"></a>
-<span class="sourceLineNo">116</span>         super(propertyStore.copy().append(RDF_language, LANG_TURTLE));<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      }<a name="line.117"></a>
-<span class="sourceLineNo">118</span>   }<a name="line.118"></a>
-<span class="sourceLineNo">119</span><a name="line.119"></a>
-<span class="sourceLineNo">120</span>   /** Produces N3 output */<a name="line.120"></a>
-<span class="sourceLineNo">121</span>   @Produces("text/n3")<a name="line.121"></a>
-<span class="sourceLineNo">122</span>   public static class N3 extends RdfSerializer {<a name="line.122"></a>
-<span class="sourceLineNo">123</span><a name="line.123"></a>
-<span class="sourceLineNo">124</span>      /**<a name="line.124"></a>
-<span class="sourceLineNo">125</span>       * Constructor.<a name="line.125"></a>
-<span class="sourceLineNo">126</span>       * <a name="line.126"></a>
-<span class="sourceLineNo">127</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.127"></a>
-<span class="sourceLineNo">128</span>       */<a name="line.128"></a>
-<span class="sourceLineNo">129</span>      public N3(PropertyStore propertyStore) {<a name="line.129"></a>
-<span class="sourceLineNo">130</span>         super(propertyStore.copy().append(RDF_language, LANG_N3));<a name="line.130"></a>
-<span class="sourceLineNo">131</span>      }<a name="line.131"></a>
-<span class="sourceLineNo">132</span>   }<a name="line.132"></a>
-<span class="sourceLineNo">133</span><a name="line.133"></a>
-<span class="sourceLineNo">134</span><a name="line.134"></a>
-<span class="sourceLineNo">135</span>   private final RdfSerializerContext ctx;<a name="line.135"></a>
-<span class="sourceLineNo">136</span><a name="line.136"></a>
-<span class="sourceLineNo">137</span>   /**<a name="line.137"></a>
-<span class="sourceLineNo">138</span>    * Constructor.<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    * <a name="line.139"></a>
-<span class="sourceLineNo">140</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.140"></a>
-<span class="sourceLineNo">141</span>    */<a name="line.141"></a>
-<span class="sourceLineNo">142</span>   public RdfSerializer(PropertyStore propertyStore) {<a name="line.142"></a>
-<span class="sourceLineNo">143</span>      super(propertyStore);<a name="line.143"></a>
-<span class="sourceLineNo">144</span>      this.ctx = createContext(RdfSerializerContext.class);<a name="line.144"></a>
-<span class="sourceLineNo">145</span>   }<a name="line.145"></a>
-<span class="sourceLineNo">146</span><a name="line.146"></a>
-<span class="sourceLineNo">147</span>   @Override /* CoreObject */<a name="line.147"></a>
-<span class="sourceLineNo">148</span>   public RdfSerializerBuilder builder() {<a name="line.148"></a>
-<span class="sourceLineNo">149</span>      return new RdfSerializerBuilder(propertyStore);<a name="line.149"></a>
-<span class="sourceLineNo">150</span>   }<a name="line.150"></a>
-<span class="sourceLineNo">151</span><a name="line.151"></a>
-<span class="sourceLineNo">152</span>   @Override /* Serializer */<a name="line.152"></a>
-<span class="sourceLineNo">153</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.153"></a>
-<span class="sourceLineNo">154</span>      return new RdfSerializerSession(ctx, args);<a name="line.154"></a>
-<span class="sourceLineNo">155</span>   }<a name="line.155"></a>
-<span class="sourceLineNo">156</span>}<a name="line.156"></a>
+<span class="sourceLineNo">078</span>      /**<a name="line.78"></a>
+<span class="sourceLineNo">079</span>       * Constructor.<a name="line.79"></a>
+<span class="sourceLineNo">080</span>       * <a name="line.80"></a>
+<span class="sourceLineNo">081</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.81"></a>
+<span class="sourceLineNo">082</span>       */<a name="line.82"></a>
+<span class="sourceLineNo">083</span>      public XmlAbbrev(PropertyStore propertyStore) {<a name="line.83"></a>
+<span class="sourceLineNo">084</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML_ABBREV), "text/xml+rdf", "text/xml+rdf+abbrev");<a name="line.84"></a>
+<span class="sourceLineNo">085</span>      }<a name="line.85"></a>
+<span class="sourceLineNo">086</span>   }<a name="line.86"></a>
+<span class="sourceLineNo">087</span><a name="line.87"></a>
+<span class="sourceLineNo">088</span>   /** Produces N-Triple output */<a name="line.88"></a>
+<span class="sourceLineNo">089</span>   public static class NTriple extends RdfSerializer {<a name="line.89"></a>
+<span class="sourceLineNo">090</span><a name="line.90"></a>
+<span class="sourceLineNo">091</span>      /**<a name="line.91"></a>
+<span class="sourceLineNo">092</span>       * Constructor.<a name="line.92"></a>
+<span class="sourceLineNo">093</span>       * <a name="line.93"></a>
+<span class="sourceLineNo">094</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.94"></a>
+<span class="sourceLineNo">095</span>       */<a name="line.95"></a>
+<span class="sourceLineNo">096</span>      public NTriple(PropertyStore propertyStore) {<a name="line.96"></a>
+<span class="sourceLineNo">097</span>         super(propertyStore.copy().append(RDF_language, LANG_NTRIPLE), "text/n-triple");<a name="line.97"></a>
+<span class="sourceLineNo">098</span>      }<a name="line.98"></a>
+<span class="sourceLineNo">099</span>   }<a name="line.99"></a>
+<span class="sourceLineNo">100</span><a name="line.100"></a>
+<span class="sourceLineNo">101</span>   /** Produces Turtle output */<a name="line.101"></a>
+<span class="sourceLineNo">102</span>   public static class Turtle extends RdfSerializer {<a name="line.102"></a>
+<span class="sourceLineNo">103</span><a name="line.103"></a>
+<span class="sourceLineNo">104</span>      /**<a name="line.104"></a>
+<span class="sourceLineNo">105</span>       * Constructor.<a name="line.105"></a>
+<span class="sourceLineNo">106</span>       * <a name="line.106"></a>
+<span class="sourceLineNo">107</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.107"></a>
+<span class="sourceLineNo">108</span>       */<a name="line.108"></a>
+<span class="sourceLineNo">109</span>      public Turtle(PropertyStore propertyStore) {<a name="line.109"></a>
+<span class="sourceLineNo">110</span>         super(propertyStore.copy().append(RDF_language, LANG_TURTLE), "text/turtle");<a name="line.110"></a>
+<span class="sourceLineNo">111</span>      }<a name="line.111"></a>
+<span class="sourceLineNo">112</span>   }<a name="line.112"></a>
+<span class="sourceLineNo">113</span><a name="line.113"></a>
+<span class="sourceLineNo">114</span>   /** Produces N3 output */<a name="line.114"></a>
+<span class="sourceLineNo">115</span>   public static class N3 extends RdfSerializer {<a name="line.115"></a>
+<span class="sourceLineNo">116</span><a name="line.116"></a>
+<span class="sourceLineNo">117</span>      /**<a name="line.117"></a>
+<span class="sourceLineNo">118</span>       * Constructor.<a name="line.118"></a>
+<span class="sourceLineNo">119</span>       * <a name="line.119"></a>
+<span class="sourceLineNo">120</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.120"></a>
+<span class="sourceLineNo">121</span>       */<a name="line.121"></a>
+<span class="sourceLineNo">122</span>      public N3(PropertyStore propertyStore) {<a name="line.122"></a>
+<span class="sourceLineNo">123</span>         super(propertyStore.copy().append(RDF_language, LANG_N3), "text/n3");<a name="line.123"></a>
+<span class="sourceLineNo">124</span>      }<a name="line.124"></a>
+<span class="sourceLineNo">125</span>   }<a name="line.125"></a>
+<span class="sourceLineNo">126</span><a name="line.126"></a>
+<span class="sourceLineNo">127</span><a name="line.127"></a>
+<span class="sourceLineNo">128</span>   private final RdfSerializerContext ctx;<a name="line.128"></a>
+<span class="sourceLineNo">129</span><a name="line.129"></a>
+<span class="sourceLineNo">130</span>   /**<a name="line.130"></a>
+<span class="sourceLineNo">131</span>    * Constructor.<a name="line.131"></a>
+<span class="sourceLineNo">132</span>    *<a name="line.132"></a>
+<span class="sourceLineNo">133</span>    * @param propertyStore<a name="line.133"></a>
+<span class="sourceLineNo">134</span>    *    The property store containing all the settings for this object.<a name="line.134"></a>
+<span class="sourceLineNo">135</span>    * @param produces<a name="line.135"></a>
+<span class="sourceLineNo">136</span>    *    The media type that this serializer produces.<a name="line.136"></a>
+<span class="sourceLineNo">137</span>    * @param accept<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    *    The accept media types that the serializer can handle.<a name="line.138"></a>
+<span class="sourceLineNo">139</span>    *    &lt;p&gt;<a name="line.139"></a>
+<span class="sourceLineNo">140</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.140"></a>
+<span class="sourceLineNo">141</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.141"></a>
+<span class="sourceLineNo">142</span>    *    &lt;p&gt;<a name="line.142"></a>
+<span class="sourceLineNo">143</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.143"></a>
+<span class="sourceLineNo">144</span>    *    &lt;p&gt;<a name="line.144"></a>
+<span class="sourceLineNo">145</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.146"></a>
+<span class="sourceLineNo">147</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.147"></a>
+<span class="sourceLineNo">148</span>    *    &lt;br&gt;...or...<a name="line.148"></a>
+<span class="sourceLineNo">149</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.149"></a>
+<span class="sourceLineNo">150</span>    */<a name="line.150"></a>
+<span class="sourceLineNo">151</span>   public RdfSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.151"></a>
+<span class="sourceLineNo">152</span>      super(propertyStore, produces, accept);<a name="line.152"></a>
+<span class="sourceLineNo">153</span>      this.ctx = createContext(RdfSerializerContext.class);<a name="line.153"></a>
+<span class="sourceLineNo">154</span>   }<a name="line.154"></a>
+<span class="sourceLineNo">155</span><a name="line.155"></a>
+<span class="sourceLineNo">156</span>   @Override /* CoreObject */<a name="line.156"></a>
+<span class="sourceLineNo">157</span>   public RdfSerializerBuilder builder() {<a name="line.157"></a>
+<span class="sourceLineNo">158</span>      return new RdfSerializerBuilder(propertyStore);<a name="line.158"></a>
+<span class="sourceLineNo">159</span>   }<a name="line.159"></a>
+<span class="sourceLineNo">160</span><a name="line.160"></a>
+<span class="sourceLineNo">161</span>   @Override /* Serializer */<a name="line.161"></a>
+<span class="sourceLineNo">162</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.162"></a>
+<span class="sourceLineNo">163</span>      return new RdfSerializerSession(ctx, args);<a name="line.163"></a>
+<span class="sourceLineNo">164</span>   }<a name="line.164"></a>
+<span class="sourceLineNo">165</span>}<a name="line.165"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.Turtle.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.Turtle.html b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.Turtle.html
index d03eb62..e3f2a96 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.Turtle.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.Turtle.html
@@ -24,144 +24,153 @@
 <span class="sourceLineNo">016</span>import static org.apache.juneau.jena.RdfCommonContext.*;<a name="line.16"></a>
 <span class="sourceLineNo">017</span><a name="line.17"></a>
 <span class="sourceLineNo">018</span>import org.apache.juneau.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.annotation.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span><a name="line.21"></a>
-<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * Serializes POJOs to RDF.<a name="line.23"></a>
-<span class="sourceLineNo">024</span> *<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * <a name="line.26"></a>
-<span class="sourceLineNo">027</span> * Refer to &lt;a class="doclink" href="package-summary.html#SerializerConfigurableProperties"&gt;Configurable Properties&lt;/a&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> *    for the entire list of configurable properties.<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * <a name="line.31"></a>
-<span class="sourceLineNo">032</span> * The following direct subclasses are provided for language-specific serializers:<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;ul&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *    &lt;li&gt;{@link RdfSerializer.Xml} - RDF/XML.<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *    &lt;li&gt;{@link RdfSerializer.XmlAbbrev} - RDF/XML-ABBREV.<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *    &lt;li&gt;{@link RdfSerializer.NTriple} - N-TRIPLE.<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *    &lt;li&gt;{@link RdfSerializer.Turtle} - TURTLE.<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;{@link RdfSerializer.N3} - N3.<a name="line.38"></a>
-<span class="sourceLineNo">039</span> * &lt;/ul&gt;<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *<a name="line.40"></a>
-<span class="sourceLineNo">041</span> * &lt;h5 class='section'&gt;Additional information:&lt;/h5&gt;<a name="line.41"></a>
-<span class="sourceLineNo">042</span> * <a name="line.42"></a>
-<span class="sourceLineNo">043</span> * See &lt;a class="doclink" href="package-summary.html#TOC"&gt;RDF Overview&lt;/a&gt; for an overview of RDF support in Juneau.<a name="line.43"></a>
-<span class="sourceLineNo">044</span> */<a name="line.44"></a>
-<span class="sourceLineNo">045</span>@Produces(value="text/xml+rdf+abbrev", contentType="text/xml+rdf")<a name="line.45"></a>
-<span class="sourceLineNo">046</span>public class RdfSerializer extends WriterSerializer {<a name="line.46"></a>
-<span class="sourceLineNo">047</span><a name="line.47"></a>
-<span class="sourceLineNo">048</span>   /** Default RDF/XML serializer, all default settings.*/<a name="line.48"></a>
-<span class="sourceLineNo">049</span>   public static final RdfSerializer DEFAULT_XML = new Xml(PropertyStore.create());<a name="line.49"></a>
-<span class="sourceLineNo">050</span><a name="line.50"></a>
-<span class="sourceLineNo">051</span>   /** Default Abbreviated RDF/XML serializer, all default settings.*/<a name="line.51"></a>
-<span class="sourceLineNo">052</span>   public static final RdfSerializer DEFAULT_XMLABBREV = new XmlAbbrev(PropertyStore.create());<a name="line.52"></a>
-<span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>   /** Default Turtle serializer, all default settings.*/<a name="line.54"></a>
-<span class="sourceLineNo">055</span>   public static final RdfSerializer DEFAULT_TURTLE = new Turtle(PropertyStore.create());<a name="line.55"></a>
-<span class="sourceLineNo">056</span><a name="line.56"></a>
-<span class="sourceLineNo">057</span>   /** Default N-Triple serializer, all default settings.*/<a name="line.57"></a>
-<span class="sourceLineNo">058</span>   public static final RdfSerializer DEFAULT_NTRIPLE = new NTriple(PropertyStore.create());<a name="line.58"></a>
-<span class="sourceLineNo">059</span><a name="line.59"></a>
-<span class="sourceLineNo">060</span>   /** Default N3 serializer, all default settings.*/<a name="line.60"></a>
-<span class="sourceLineNo">061</span>   public static final RdfSerializer DEFAULT_N3 = new N3(PropertyStore.create());<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span><a name="line.63"></a>
-<span class="sourceLineNo">064</span>   /** Produces RDF/XML output */<a name="line.64"></a>
-<span class="sourceLineNo">065</span>   @Produces("text/xml+rdf")<a name="line.65"></a>
-<span class="sourceLineNo">066</span>   public static class Xml extends RdfSerializer {<a name="line.66"></a>
-<span class="sourceLineNo">067</span><a name="line.67"></a>
-<span class="sourceLineNo">068</span>      /**<a name="line.68"></a>
-<span class="sourceLineNo">069</span>       * Constructor.<a name="line.69"></a>
-<span class="sourceLineNo">070</span>       * <a name="line.70"></a>
-<span class="sourceLineNo">071</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.71"></a>
-<span class="sourceLineNo">072</span>       */<a name="line.72"></a>
-<span class="sourceLineNo">073</span>      public Xml(PropertyStore propertyStore) {<a name="line.73"></a>
-<span class="sourceLineNo">074</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML));<a name="line.74"></a>
-<span class="sourceLineNo">075</span>      }<a name="line.75"></a>
-<span class="sourceLineNo">076</span>   }<a name="line.76"></a>
+<span class="sourceLineNo">019</span>import org.apache.juneau.serializer.*;<a name="line.19"></a>
+<span class="sourceLineNo">020</span><a name="line.20"></a>
+<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
+<span class="sourceLineNo">022</span> * Serializes POJOs to RDF.<a name="line.22"></a>
+<span class="sourceLineNo">023</span> *<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * <a name="line.25"></a>
+<span class="sourceLineNo">026</span> * Refer to &lt;a class="doclink" href="package-summary.html#SerializerConfigurableProperties"&gt;Configurable Properties&lt;/a&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> *    for the entire list of configurable properties.<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * <a name="line.30"></a>
+<span class="sourceLineNo">031</span> * The following direct subclasses are provided for language-specific serializers:<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;ul&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *    &lt;li&gt;{@link RdfSerializer.Xml} - RDF/XML.<a name="line.33"></a>
+<span class="sourceLineNo">034</span> *    &lt;li&gt;{@link RdfSerializer.XmlAbbrev} - RDF/XML-ABBREV.<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *    &lt;li&gt;{@link RdfSerializer.NTriple} - N-TRIPLE.<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *    &lt;li&gt;{@link RdfSerializer.Turtle} - TURTLE.<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;{@link RdfSerializer.N3} - N3.<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * &lt;/ul&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *<a name="line.39"></a>
+<span class="sourceLineNo">040</span> * &lt;h5 class='section'&gt;Additional information:&lt;/h5&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span> * <a name="line.41"></a>
+<span class="sourceLineNo">042</span> * See &lt;a class="doclink" href="package-summary.html#TOC"&gt;RDF Overview&lt;/a&gt; for an overview of RDF support in Juneau.<a name="line.42"></a>
+<span class="sourceLineNo">043</span> */<a name="line.43"></a>
+<span class="sourceLineNo">044</span>public class RdfSerializer extends WriterSerializer {<a name="line.44"></a>
+<span class="sourceLineNo">045</span><a name="line.45"></a>
+<span class="sourceLineNo">046</span>   /** Default RDF/XML serializer, all default settings.*/<a name="line.46"></a>
+<span class="sourceLineNo">047</span>   public static final RdfSerializer DEFAULT_XML = new Xml(PropertyStore.create());<a name="line.47"></a>
+<span class="sourceLineNo">048</span><a name="line.48"></a>
+<span class="sourceLineNo">049</span>   /** Default Abbreviated RDF/XML serializer, all default settings.*/<a name="line.49"></a>
+<span class="sourceLineNo">050</span>   public static final RdfSerializer DEFAULT_XMLABBREV = new XmlAbbrev(PropertyStore.create());<a name="line.50"></a>
+<span class="sourceLineNo">051</span><a name="line.51"></a>
+<span class="sourceLineNo">052</span>   /** Default Turtle serializer, all default settings.*/<a name="line.52"></a>
+<span class="sourceLineNo">053</span>   public static final RdfSerializer DEFAULT_TURTLE = new Turtle(PropertyStore.create());<a name="line.53"></a>
+<span class="sourceLineNo">054</span><a name="line.54"></a>
+<span class="sourceLineNo">055</span>   /** Default N-Triple serializer, all default settings.*/<a name="line.55"></a>
+<span class="sourceLineNo">056</span>   public static final RdfSerializer DEFAULT_NTRIPLE = new NTriple(PropertyStore.create());<a name="line.56"></a>
+<span class="sourceLineNo">057</span><a name="line.57"></a>
+<span class="sourceLineNo">058</span>   /** Default N3 serializer, all default settings.*/<a name="line.58"></a>
+<span class="sourceLineNo">059</span>   public static final RdfSerializer DEFAULT_N3 = new N3(PropertyStore.create());<a name="line.59"></a>
+<span class="sourceLineNo">060</span><a name="line.60"></a>
+<span class="sourceLineNo">061</span><a name="line.61"></a>
+<span class="sourceLineNo">062</span>   /** Produces RDF/XML output */<a name="line.62"></a>
+<span class="sourceLineNo">063</span>   public static class Xml extends RdfSerializer {<a name="line.63"></a>
+<span class="sourceLineNo">064</span><a name="line.64"></a>
+<span class="sourceLineNo">065</span>      /**<a name="line.65"></a>
+<span class="sourceLineNo">066</span>       * Constructor.<a name="line.66"></a>
+<span class="sourceLineNo">067</span>       * <a name="line.67"></a>
+<span class="sourceLineNo">068</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.68"></a>
+<span class="sourceLineNo">069</span>       */<a name="line.69"></a>
+<span class="sourceLineNo">070</span>      public Xml(PropertyStore propertyStore) {<a name="line.70"></a>
+<span class="sourceLineNo">071</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML), "text/xml+rdf");<a name="line.71"></a>
+<span class="sourceLineNo">072</span>      }<a name="line.72"></a>
+<span class="sourceLineNo">073</span>   }<a name="line.73"></a>
+<span class="sourceLineNo">074</span><a name="line.74"></a>
+<span class="sourceLineNo">075</span>   /** Produces Abbreviated RDF/XML output */<a name="line.75"></a>
+<span class="sourceLineNo">076</span>   public static class XmlAbbrev extends RdfSerializer {<a name="line.76"></a>
 <span class="sourceLineNo">077</span><a name="line.77"></a>
-<span class="sourceLineNo">078</span>   /** Produces Abbreviated RDF/XML output */<a name="line.78"></a>
-<span class="sourceLineNo">079</span>   @Produces(value="text/xml+rdf+abbrev", contentType="text/xml+rdf")<a name="line.79"></a>
-<span class="sourceLineNo">080</span>   public static class XmlAbbrev extends RdfSerializer {<a name="line.80"></a>
-<span class="sourceLineNo">081</span><a name="line.81"></a>
-<span class="sourceLineNo">082</span>      /**<a name="line.82"></a>
-<span class="sourceLineNo">083</span>       * Constructor.<a name="line.83"></a>
-<span class="sourceLineNo">084</span>       * <a name="line.84"></a>
-<span class="sourceLineNo">085</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.85"></a>
-<span class="sourceLineNo">086</span>       */<a name="line.86"></a>
-<span class="sourceLineNo">087</span>      public XmlAbbrev(PropertyStore propertyStore) {<a name="line.87"></a>
-<span class="sourceLineNo">088</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML_ABBREV));<a name="line.88"></a>
-<span class="sourceLineNo">089</span>      }<a name="line.89"></a>
-<span class="sourceLineNo">090</span>   }<a name="line.90"></a>
-<span class="sourceLineNo">091</span><a name="line.91"></a>
-<span class="sourceLineNo">092</span>   /** Produces N-Triple output */<a name="line.92"></a>
-<span class="sourceLineNo">093</span>   @Produces("text/n-triple")<a name="line.93"></a>
-<span class="sourceLineNo">094</span>   public static class NTriple extends RdfSerializer {<a name="line.94"></a>
-<span class="sourceLineNo">095</span><a name="line.95"></a>
-<span class="sourceLineNo">096</span>      /**<a name="line.96"></a>
-<span class="sourceLineNo">097</span>       * Constructor.<a name="line.97"></a>
-<span class="sourceLineNo">098</span>       * <a name="line.98"></a>
-<span class="sourceLineNo">099</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.99"></a>
-<span class="sourceLineNo">100</span>       */<a name="line.100"></a>
-<span class="sourceLineNo">101</span>      public NTriple(PropertyStore propertyStore) {<a name="line.101"></a>
-<span class="sourceLineNo">102</span>         super(propertyStore.copy().append(RDF_language, LANG_NTRIPLE));<a name="line.102"></a>
-<span class="sourceLineNo">103</span>      }<a name="line.103"></a>
-<span class="sourceLineNo">104</span>   }<a name="line.104"></a>
-<span class="sourceLineNo">105</span><a name="line.105"></a>
-<span class="sourceLineNo">106</span>   /** Produces Turtle output */<a name="line.106"></a>
-<span class="sourceLineNo">107</span>   @Produces("text/turtle")<a name="line.107"></a>
-<span class="sourceLineNo">108</span>   public static class Turtle extends RdfSerializer {<a name="line.108"></a>
-<span class="sourceLineNo">109</span><a name="line.109"></a>
-<span class="sourceLineNo">110</span>      /**<a name="line.110"></a>
-<span class="sourceLineNo">111</span>       * Constructor.<a name="line.111"></a>
-<span class="sourceLineNo">112</span>       * <a name="line.112"></a>
-<span class="sourceLineNo">113</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.113"></a>
-<span class="sourceLineNo">114</span>       */<a name="line.114"></a>
-<span class="sourceLineNo">115</span>      public Turtle(PropertyStore propertyStore) {<a name="line.115"></a>
-<span class="sourceLineNo">116</span>         super(propertyStore.copy().append(RDF_language, LANG_TURTLE));<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      }<a name="line.117"></a>
-<span class="sourceLineNo">118</span>   }<a name="line.118"></a>
-<span class="sourceLineNo">119</span><a name="line.119"></a>
-<span class="sourceLineNo">120</span>   /** Produces N3 output */<a name="line.120"></a>
-<span class="sourceLineNo">121</span>   @Produces("text/n3")<a name="line.121"></a>
-<span class="sourceLineNo">122</span>   public static class N3 extends RdfSerializer {<a name="line.122"></a>
-<span class="sourceLineNo">123</span><a name="line.123"></a>
-<span class="sourceLineNo">124</span>      /**<a name="line.124"></a>
-<span class="sourceLineNo">125</span>       * Constructor.<a name="line.125"></a>
-<span class="sourceLineNo">126</span>       * <a name="line.126"></a>
-<span class="sourceLineNo">127</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.127"></a>
-<span class="sourceLineNo">128</span>       */<a name="line.128"></a>
-<span class="sourceLineNo">129</span>      public N3(PropertyStore propertyStore) {<a name="line.129"></a>
-<span class="sourceLineNo">130</span>         super(propertyStore.copy().append(RDF_language, LANG_N3));<a name="line.130"></a>
-<span class="sourceLineNo">131</span>      }<a name="line.131"></a>
-<span class="sourceLineNo">132</span>   }<a name="line.132"></a>
-<span class="sourceLineNo">133</span><a name="line.133"></a>
-<span class="sourceLineNo">134</span><a name="line.134"></a>
-<span class="sourceLineNo">135</span>   private final RdfSerializerContext ctx;<a name="line.135"></a>
-<span class="sourceLineNo">136</span><a name="line.136"></a>
-<span class="sourceLineNo">137</span>   /**<a name="line.137"></a>
-<span class="sourceLineNo">138</span>    * Constructor.<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    * <a name="line.139"></a>
-<span class="sourceLineNo">140</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.140"></a>
-<span class="sourceLineNo">141</span>    */<a name="line.141"></a>
-<span class="sourceLineNo">142</span>   public RdfSerializer(PropertyStore propertyStore) {<a name="line.142"></a>
-<span class="sourceLineNo">143</span>      super(propertyStore);<a name="line.143"></a>
-<span class="sourceLineNo">144</span>      this.ctx = createContext(RdfSerializerContext.class);<a name="line.144"></a>
-<span class="sourceLineNo">145</span>   }<a name="line.145"></a>
-<span class="sourceLineNo">146</span><a name="line.146"></a>
-<span class="sourceLineNo">147</span>   @Override /* CoreObject */<a name="line.147"></a>
-<span class="sourceLineNo">148</span>   public RdfSerializerBuilder builder() {<a name="line.148"></a>
-<span class="sourceLineNo">149</span>      return new RdfSerializerBuilder(propertyStore);<a name="line.149"></a>
-<span class="sourceLineNo">150</span>   }<a name="line.150"></a>
-<span class="sourceLineNo">151</span><a name="line.151"></a>
-<span class="sourceLineNo">152</span>   @Override /* Serializer */<a name="line.152"></a>
-<span class="sourceLineNo">153</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.153"></a>
-<span class="sourceLineNo">154</span>      return new RdfSerializerSession(ctx, args);<a name="line.154"></a>
-<span class="sourceLineNo">155</span>   }<a name="line.155"></a>
-<span class="sourceLineNo">156</span>}<a name="line.156"></a>
+<span class="sourceLineNo">078</span>      /**<a name="line.78"></a>
+<span class="sourceLineNo">079</span>       * Constructor.<a name="line.79"></a>
+<span class="sourceLineNo">080</span>       * <a name="line.80"></a>
+<span class="sourceLineNo">081</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.81"></a>
+<span class="sourceLineNo">082</span>       */<a name="line.82"></a>
+<span class="sourceLineNo">083</span>      public XmlAbbrev(PropertyStore propertyStore) {<a name="line.83"></a>
+<span class="sourceLineNo">084</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML_ABBREV), "text/xml+rdf", "text/xml+rdf+abbrev");<a name="line.84"></a>
+<span class="sourceLineNo">085</span>      }<a name="line.85"></a>
+<span class="sourceLineNo">086</span>   }<a name="line.86"></a>
+<span class="sourceLineNo">087</span><a name="line.87"></a>
+<span class="sourceLineNo">088</span>   /** Produces N-Triple output */<a name="line.88"></a>
+<span class="sourceLineNo">089</span>   public static class NTriple extends RdfSerializer {<a name="line.89"></a>
+<span class="sourceLineNo">090</span><a name="line.90"></a>
+<span class="sourceLineNo">091</span>      /**<a name="line.91"></a>
+<span class="sourceLineNo">092</span>       * Constructor.<a name="line.92"></a>
+<span class="sourceLineNo">093</span>       * <a name="line.93"></a>
+<span class="sourceLineNo">094</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.94"></a>
+<span class="sourceLineNo">095</span>       */<a name="line.95"></a>
+<span class="sourceLineNo">096</span>      public NTriple(PropertyStore propertyStore) {<a name="line.96"></a>
+<span class="sourceLineNo">097</span>         super(propertyStore.copy().append(RDF_language, LANG_NTRIPLE), "text/n-triple");<a name="line.97"></a>
+<span class="sourceLineNo">098</span>      }<a name="line.98"></a>
+<span class="sourceLineNo">099</span>   }<a name="line.99"></a>
+<span class="sourceLineNo">100</span><a name="line.100"></a>
+<span class="sourceLineNo">101</span>   /** Produces Turtle output */<a name="line.101"></a>
+<span class="sourceLineNo">102</span>   public static class Turtle extends RdfSerializer {<a name="line.102"></a>
+<span class="sourceLineNo">103</span><a name="line.103"></a>
+<span class="sourceLineNo">104</span>      /**<a name="line.104"></a>
+<span class="sourceLineNo">105</span>       * Constructor.<a name="line.105"></a>
+<span class="sourceLineNo">106</span>       * <a name="line.106"></a>
+<span class="sourceLineNo">107</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.107"></a>
+<span class="sourceLineNo">108</span>       */<a name="line.108"></a>
+<span class="sourceLineNo">109</span>      public Turtle(PropertyStore propertyStore) {<a name="line.109"></a>
+<span class="sourceLineNo">110</span>         super(propertyStore.copy().append(RDF_language, LANG_TURTLE), "text/turtle");<a name="line.110"></a>
+<span class="sourceLineNo">111</span>      }<a name="line.111"></a>
+<span class="sourceLineNo">112</span>   }<a name="line.112"></a>
+<span class="sourceLineNo">113</span><a name="line.113"></a>
+<span class="sourceLineNo">114</span>   /** Produces N3 output */<a name="line.114"></a>
+<span class="sourceLineNo">115</span>   public static class N3 extends RdfSerializer {<a name="line.115"></a>
+<span class="sourceLineNo">116</span><a name="line.116"></a>
+<span class="sourceLineNo">117</span>      /**<a name="line.117"></a>
+<span class="sourceLineNo">118</span>       * Constructor.<a name="line.118"></a>
+<span class="sourceLineNo">119</span>       * <a name="line.119"></a>
+<span class="sourceLineNo">120</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.120"></a>
+<span class="sourceLineNo">121</span>       */<a name="line.121"></a>
+<span class="sourceLineNo">122</span>      public N3(PropertyStore propertyStore) {<a name="line.122"></a>
+<span class="sourceLineNo">123</span>         super(propertyStore.copy().append(RDF_language, LANG_N3), "text/n3");<a name="line.123"></a>
+<span class="sourceLineNo">124</span>      }<a name="line.124"></a>
+<span class="sourceLineNo">125</span>   }<a name="line.125"></a>
+<span class="sourceLineNo">126</span><a name="line.126"></a>
+<span class="sourceLineNo">127</span><a name="line.127"></a>
+<span class="sourceLineNo">128</span>   private final RdfSerializerContext ctx;<a name="line.128"></a>
+<span class="sourceLineNo">129</span><a name="line.129"></a>
+<span class="sourceLineNo">130</span>   /**<a name="line.130"></a>
+<span class="sourceLineNo">131</span>    * Constructor.<a name="line.131"></a>
+<span class="sourceLineNo">132</span>    *<a name="line.132"></a>
+<span class="sourceLineNo">133</span>    * @param propertyStore<a name="line.133"></a>
+<span class="sourceLineNo">134</span>    *    The property store containing all the settings for this object.<a name="line.134"></a>
+<span class="sourceLineNo">135</span>    * @param produces<a name="line.135"></a>
+<span class="sourceLineNo">136</span>    *    The media type that this serializer produces.<a name="line.136"></a>
+<span class="sourceLineNo">137</span>    * @param accept<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    *    The accept media types that the serializer can handle.<a name="line.138"></a>
+<span class="sourceLineNo">139</span>    *    &lt;p&gt;<a name="line.139"></a>
+<span class="sourceLineNo">140</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.140"></a>
+<span class="sourceLineNo">141</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.141"></a>
+<span class="sourceLineNo">142</span>    *    &lt;p&gt;<a name="line.142"></a>
+<span class="sourceLineNo">143</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.143"></a>
+<span class="sourceLineNo">144</span>    *    &lt;p&gt;<a name="line.144"></a>
+<span class="sourceLineNo">145</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.146"></a>
+<span class="sourceLineNo">147</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.147"></a>
+<span class="sourceLineNo">148</span>    *    &lt;br&gt;...or...<a name="line.148"></a>
+<span class="sourceLineNo">149</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.149"></a>
+<span class="sourceLineNo">150</span>    */<a name="line.150"></a>
+<span class="sourceLineNo">151</span>   public RdfSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.151"></a>
+<span class="sourceLineNo">152</span>      super(propertyStore, produces, accept);<a name="line.152"></a>
+<span class="sourceLineNo">153</span>      this.ctx = createContext(RdfSerializerContext.class);<a name="line.153"></a>
+<span class="sourceLineNo">154</span>   }<a name="line.154"></a>
+<span class="sourceLineNo">155</span><a name="line.155"></a>
+<span class="sourceLineNo">156</span>   @Override /* CoreObject */<a name="line.156"></a>
+<span class="sourceLineNo">157</span>   public RdfSerializerBuilder builder() {<a name="line.157"></a>
+<span class="sourceLineNo">158</span>      return new RdfSerializerBuilder(propertyStore);<a name="line.158"></a>
+<span class="sourceLineNo">159</span>   }<a name="line.159"></a>
+<span class="sourceLineNo">160</span><a name="line.160"></a>
+<span class="sourceLineNo">161</span>   @Override /* Serializer */<a name="line.161"></a>
+<span class="sourceLineNo">162</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.162"></a>
+<span class="sourceLineNo">163</span>      return new RdfSerializerSession(ctx, args);<a name="line.163"></a>
+<span class="sourceLineNo">164</span>   }<a name="line.164"></a>
+<span class="sourceLineNo">165</span>}<a name="line.165"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.Xml.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.Xml.html b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.Xml.html
index d03eb62..e3f2a96 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.Xml.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.Xml.html
@@ -24,144 +24,153 @@
 <span class="sourceLineNo">016</span>import static org.apache.juneau.jena.RdfCommonContext.*;<a name="line.16"></a>
 <span class="sourceLineNo">017</span><a name="line.17"></a>
 <span class="sourceLineNo">018</span>import org.apache.juneau.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.annotation.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span><a name="line.21"></a>
-<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * Serializes POJOs to RDF.<a name="line.23"></a>
-<span class="sourceLineNo">024</span> *<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * <a name="line.26"></a>
-<span class="sourceLineNo">027</span> * Refer to &lt;a class="doclink" href="package-summary.html#SerializerConfigurableProperties"&gt;Configurable Properties&lt;/a&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> *    for the entire list of configurable properties.<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * <a name="line.31"></a>
-<span class="sourceLineNo">032</span> * The following direct subclasses are provided for language-specific serializers:<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;ul&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *    &lt;li&gt;{@link RdfSerializer.Xml} - RDF/XML.<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *    &lt;li&gt;{@link RdfSerializer.XmlAbbrev} - RDF/XML-ABBREV.<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *    &lt;li&gt;{@link RdfSerializer.NTriple} - N-TRIPLE.<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *    &lt;li&gt;{@link RdfSerializer.Turtle} - TURTLE.<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;{@link RdfSerializer.N3} - N3.<a name="line.38"></a>
-<span class="sourceLineNo">039</span> * &lt;/ul&gt;<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *<a name="line.40"></a>
-<span class="sourceLineNo">041</span> * &lt;h5 class='section'&gt;Additional information:&lt;/h5&gt;<a name="line.41"></a>
-<span class="sourceLineNo">042</span> * <a name="line.42"></a>
-<span class="sourceLineNo">043</span> * See &lt;a class="doclink" href="package-summary.html#TOC"&gt;RDF Overview&lt;/a&gt; for an overview of RDF support in Juneau.<a name="line.43"></a>
-<span class="sourceLineNo">044</span> */<a name="line.44"></a>
-<span class="sourceLineNo">045</span>@Produces(value="text/xml+rdf+abbrev", contentType="text/xml+rdf")<a name="line.45"></a>
-<span class="sourceLineNo">046</span>public class RdfSerializer extends WriterSerializer {<a name="line.46"></a>
-<span class="sourceLineNo">047</span><a name="line.47"></a>
-<span class="sourceLineNo">048</span>   /** Default RDF/XML serializer, all default settings.*/<a name="line.48"></a>
-<span class="sourceLineNo">049</span>   public static final RdfSerializer DEFAULT_XML = new Xml(PropertyStore.create());<a name="line.49"></a>
-<span class="sourceLineNo">050</span><a name="line.50"></a>
-<span class="sourceLineNo">051</span>   /** Default Abbreviated RDF/XML serializer, all default settings.*/<a name="line.51"></a>
-<span class="sourceLineNo">052</span>   public static final RdfSerializer DEFAULT_XMLABBREV = new XmlAbbrev(PropertyStore.create());<a name="line.52"></a>
-<span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>   /** Default Turtle serializer, all default settings.*/<a name="line.54"></a>
-<span class="sourceLineNo">055</span>   public static final RdfSerializer DEFAULT_TURTLE = new Turtle(PropertyStore.create());<a name="line.55"></a>
-<span class="sourceLineNo">056</span><a name="line.56"></a>
-<span class="sourceLineNo">057</span>   /** Default N-Triple serializer, all default settings.*/<a name="line.57"></a>
-<span class="sourceLineNo">058</span>   public static final RdfSerializer DEFAULT_NTRIPLE = new NTriple(PropertyStore.create());<a name="line.58"></a>
-<span class="sourceLineNo">059</span><a name="line.59"></a>
-<span class="sourceLineNo">060</span>   /** Default N3 serializer, all default settings.*/<a name="line.60"></a>
-<span class="sourceLineNo">061</span>   public static final RdfSerializer DEFAULT_N3 = new N3(PropertyStore.create());<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span><a name="line.63"></a>
-<span class="sourceLineNo">064</span>   /** Produces RDF/XML output */<a name="line.64"></a>
-<span class="sourceLineNo">065</span>   @Produces("text/xml+rdf")<a name="line.65"></a>
-<span class="sourceLineNo">066</span>   public static class Xml extends RdfSerializer {<a name="line.66"></a>
-<span class="sourceLineNo">067</span><a name="line.67"></a>
-<span class="sourceLineNo">068</span>      /**<a name="line.68"></a>
-<span class="sourceLineNo">069</span>       * Constructor.<a name="line.69"></a>
-<span class="sourceLineNo">070</span>       * <a name="line.70"></a>
-<span class="sourceLineNo">071</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.71"></a>
-<span class="sourceLineNo">072</span>       */<a name="line.72"></a>
-<span class="sourceLineNo">073</span>      public Xml(PropertyStore propertyStore) {<a name="line.73"></a>
-<span class="sourceLineNo">074</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML));<a name="line.74"></a>
-<span class="sourceLineNo">075</span>      }<a name="line.75"></a>
-<span class="sourceLineNo">076</span>   }<a name="line.76"></a>
+<span class="sourceLineNo">019</span>import org.apache.juneau.serializer.*;<a name="line.19"></a>
+<span class="sourceLineNo">020</span><a name="line.20"></a>
+<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
+<span class="sourceLineNo">022</span> * Serializes POJOs to RDF.<a name="line.22"></a>
+<span class="sourceLineNo">023</span> *<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * <a name="line.25"></a>
+<span class="sourceLineNo">026</span> * Refer to &lt;a class="doclink" href="package-summary.html#SerializerConfigurableProperties"&gt;Configurable Properties&lt;/a&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> *    for the entire list of configurable properties.<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * <a name="line.30"></a>
+<span class="sourceLineNo">031</span> * The following direct subclasses are provided for language-specific serializers:<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;ul&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *    &lt;li&gt;{@link RdfSerializer.Xml} - RDF/XML.<a name="line.33"></a>
+<span class="sourceLineNo">034</span> *    &lt;li&gt;{@link RdfSerializer.XmlAbbrev} - RDF/XML-ABBREV.<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *    &lt;li&gt;{@link RdfSerializer.NTriple} - N-TRIPLE.<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *    &lt;li&gt;{@link RdfSerializer.Turtle} - TURTLE.<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;{@link RdfSerializer.N3} - N3.<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * &lt;/ul&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *<a name="line.39"></a>
+<span class="sourceLineNo">040</span> * &lt;h5 class='section'&gt;Additional information:&lt;/h5&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span> * <a name="line.41"></a>
+<span class="sourceLineNo">042</span> * See &lt;a class="doclink" href="package-summary.html#TOC"&gt;RDF Overview&lt;/a&gt; for an overview of RDF support in Juneau.<a name="line.42"></a>
+<span class="sourceLineNo">043</span> */<a name="line.43"></a>
+<span class="sourceLineNo">044</span>public class RdfSerializer extends WriterSerializer {<a name="line.44"></a>
+<span class="sourceLineNo">045</span><a name="line.45"></a>
+<span class="sourceLineNo">046</span>   /** Default RDF/XML serializer, all default settings.*/<a name="line.46"></a>
+<span class="sourceLineNo">047</span>   public static final RdfSerializer DEFAULT_XML = new Xml(PropertyStore.create());<a name="line.47"></a>
+<span class="sourceLineNo">048</span><a name="line.48"></a>
+<span class="sourceLineNo">049</span>   /** Default Abbreviated RDF/XML serializer, all default settings.*/<a name="line.49"></a>
+<span class="sourceLineNo">050</span>   public static final RdfSerializer DEFAULT_XMLABBREV = new XmlAbbrev(PropertyStore.create());<a name="line.50"></a>
+<span class="sourceLineNo">051</span><a name="line.51"></a>
+<span class="sourceLineNo">052</span>   /** Default Turtle serializer, all default settings.*/<a name="line.52"></a>
+<span class="sourceLineNo">053</span>   public static final RdfSerializer DEFAULT_TURTLE = new Turtle(PropertyStore.create());<a name="line.53"></a>
+<span class="sourceLineNo">054</span><a name="line.54"></a>
+<span class="sourceLineNo">055</span>   /** Default N-Triple serializer, all default settings.*/<a name="line.55"></a>
+<span class="sourceLineNo">056</span>   public static final RdfSerializer DEFAULT_NTRIPLE = new NTriple(PropertyStore.create());<a name="line.56"></a>
+<span class="sourceLineNo">057</span><a name="line.57"></a>
+<span class="sourceLineNo">058</span>   /** Default N3 serializer, all default settings.*/<a name="line.58"></a>
+<span class="sourceLineNo">059</span>   public static final RdfSerializer DEFAULT_N3 = new N3(PropertyStore.create());<a name="line.59"></a>
+<span class="sourceLineNo">060</span><a name="line.60"></a>
+<span class="sourceLineNo">061</span><a name="line.61"></a>
+<span class="sourceLineNo">062</span>   /** Produces RDF/XML output */<a name="line.62"></a>
+<span class="sourceLineNo">063</span>   public static class Xml extends RdfSerializer {<a name="line.63"></a>
+<span class="sourceLineNo">064</span><a name="line.64"></a>
+<span class="sourceLineNo">065</span>      /**<a name="line.65"></a>
+<span class="sourceLineNo">066</span>       * Constructor.<a name="line.66"></a>
+<span class="sourceLineNo">067</span>       * <a name="line.67"></a>
+<span class="sourceLineNo">068</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.68"></a>
+<span class="sourceLineNo">069</span>       */<a name="line.69"></a>
+<span class="sourceLineNo">070</span>      public Xml(PropertyStore propertyStore) {<a name="line.70"></a>
+<span class="sourceLineNo">071</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML), "text/xml+rdf");<a name="line.71"></a>
+<span class="sourceLineNo">072</span>      }<a name="line.72"></a>
+<span class="sourceLineNo">073</span>   }<a name="line.73"></a>
+<span class="sourceLineNo">074</span><a name="line.74"></a>
+<span class="sourceLineNo">075</span>   /** Produces Abbreviated RDF/XML output */<a name="line.75"></a>
+<span class="sourceLineNo">076</span>   public static class XmlAbbrev extends RdfSerializer {<a name="line.76"></a>
 <span class="sourceLineNo">077</span><a name="line.77"></a>
-<span class="sourceLineNo">078</span>   /** Produces Abbreviated RDF/XML output */<a name="line.78"></a>
-<span class="sourceLineNo">079</span>   @Produces(value="text/xml+rdf+abbrev", contentType="text/xml+rdf")<a name="line.79"></a>
-<span class="sourceLineNo">080</span>   public static class XmlAbbrev extends RdfSerializer {<a name="line.80"></a>
-<span class="sourceLineNo">081</span><a name="line.81"></a>
-<span class="sourceLineNo">082</span>      /**<a name="line.82"></a>
-<span class="sourceLineNo">083</span>       * Constructor.<a name="line.83"></a>
-<span class="sourceLineNo">084</span>       * <a name="line.84"></a>
-<span class="sourceLineNo">085</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.85"></a>
-<span class="sourceLineNo">086</span>       */<a name="line.86"></a>
-<span class="sourceLineNo">087</span>      public XmlAbbrev(PropertyStore propertyStore) {<a name="line.87"></a>
-<span class="sourceLineNo">088</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML_ABBREV));<a name="line.88"></a>
-<span class="sourceLineNo">089</span>      }<a name="line.89"></a>
-<span class="sourceLineNo">090</span>   }<a name="line.90"></a>
-<span class="sourceLineNo">091</span><a name="line.91"></a>
-<span class="sourceLineNo">092</span>   /** Produces N-Triple output */<a name="line.92"></a>
-<span class="sourceLineNo">093</span>   @Produces("text/n-triple")<a name="line.93"></a>
-<span class="sourceLineNo">094</span>   public static class NTriple extends RdfSerializer {<a name="line.94"></a>
-<span class="sourceLineNo">095</span><a name="line.95"></a>
-<span class="sourceLineNo">096</span>      /**<a name="line.96"></a>
-<span class="sourceLineNo">097</span>       * Constructor.<a name="line.97"></a>
-<span class="sourceLineNo">098</span>       * <a name="line.98"></a>
-<span class="sourceLineNo">099</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.99"></a>
-<span class="sourceLineNo">100</span>       */<a name="line.100"></a>
-<span class="sourceLineNo">101</span>      public NTriple(PropertyStore propertyStore) {<a name="line.101"></a>
-<span class="sourceLineNo">102</span>         super(propertyStore.copy().append(RDF_language, LANG_NTRIPLE));<a name="line.102"></a>
-<span class="sourceLineNo">103</span>      }<a name="line.103"></a>
-<span class="sourceLineNo">104</span>   }<a name="line.104"></a>
-<span class="sourceLineNo">105</span><a name="line.105"></a>
-<span class="sourceLineNo">106</span>   /** Produces Turtle output */<a name="line.106"></a>
-<span class="sourceLineNo">107</span>   @Produces("text/turtle")<a name="line.107"></a>
-<span class="sourceLineNo">108</span>   public static class Turtle extends RdfSerializer {<a name="line.108"></a>
-<span class="sourceLineNo">109</span><a name="line.109"></a>
-<span class="sourceLineNo">110</span>      /**<a name="line.110"></a>
-<span class="sourceLineNo">111</span>       * Constructor.<a name="line.111"></a>
-<span class="sourceLineNo">112</span>       * <a name="line.112"></a>
-<span class="sourceLineNo">113</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.113"></a>
-<span class="sourceLineNo">114</span>       */<a name="line.114"></a>
-<span class="sourceLineNo">115</span>      public Turtle(PropertyStore propertyStore) {<a name="line.115"></a>
-<span class="sourceLineNo">116</span>         super(propertyStore.copy().append(RDF_language, LANG_TURTLE));<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      }<a name="line.117"></a>
-<span class="sourceLineNo">118</span>   }<a name="line.118"></a>
-<span class="sourceLineNo">119</span><a name="line.119"></a>
-<span class="sourceLineNo">120</span>   /** Produces N3 output */<a name="line.120"></a>
-<span class="sourceLineNo">121</span>   @Produces("text/n3")<a name="line.121"></a>
-<span class="sourceLineNo">122</span>   public static class N3 extends RdfSerializer {<a name="line.122"></a>
-<span class="sourceLineNo">123</span><a name="line.123"></a>
-<span class="sourceLineNo">124</span>      /**<a name="line.124"></a>
-<span class="sourceLineNo">125</span>       * Constructor.<a name="line.125"></a>
-<span class="sourceLineNo">126</span>       * <a name="line.126"></a>
-<span class="sourceLineNo">127</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.127"></a>
-<span class="sourceLineNo">128</span>       */<a name="line.128"></a>
-<span class="sourceLineNo">129</span>      public N3(PropertyStore propertyStore) {<a name="line.129"></a>
-<span class="sourceLineNo">130</span>         super(propertyStore.copy().append(RDF_language, LANG_N3));<a name="line.130"></a>
-<span class="sourceLineNo">131</span>      }<a name="line.131"></a>
-<span class="sourceLineNo">132</span>   }<a name="line.132"></a>
-<span class="sourceLineNo">133</span><a name="line.133"></a>
-<span class="sourceLineNo">134</span><a name="line.134"></a>
-<span class="sourceLineNo">135</span>   private final RdfSerializerContext ctx;<a name="line.135"></a>
-<span class="sourceLineNo">136</span><a name="line.136"></a>
-<span class="sourceLineNo">137</span>   /**<a name="line.137"></a>
-<span class="sourceLineNo">138</span>    * Constructor.<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    * <a name="line.139"></a>
-<span class="sourceLineNo">140</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.140"></a>
-<span class="sourceLineNo">141</span>    */<a name="line.141"></a>
-<span class="sourceLineNo">142</span>   public RdfSerializer(PropertyStore propertyStore) {<a name="line.142"></a>
-<span class="sourceLineNo">143</span>      super(propertyStore);<a name="line.143"></a>
-<span class="sourceLineNo">144</span>      this.ctx = createContext(RdfSerializerContext.class);<a name="line.144"></a>
-<span class="sourceLineNo">145</span>   }<a name="line.145"></a>
-<span class="sourceLineNo">146</span><a name="line.146"></a>
-<span class="sourceLineNo">147</span>   @Override /* CoreObject */<a name="line.147"></a>
-<span class="sourceLineNo">148</span>   public RdfSerializerBuilder builder() {<a name="line.148"></a>
-<span class="sourceLineNo">149</span>      return new RdfSerializerBuilder(propertyStore);<a name="line.149"></a>
-<span class="sourceLineNo">150</span>   }<a name="line.150"></a>
-<span class="sourceLineNo">151</span><a name="line.151"></a>
-<span class="sourceLineNo">152</span>   @Override /* Serializer */<a name="line.152"></a>
-<span class="sourceLineNo">153</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.153"></a>
-<span class="sourceLineNo">154</span>      return new RdfSerializerSession(ctx, args);<a name="line.154"></a>
-<span class="sourceLineNo">155</span>   }<a name="line.155"></a>
-<span class="sourceLineNo">156</span>}<a name="line.156"></a>
+<span class="sourceLineNo">078</span>      /**<a name="line.78"></a>
+<span class="sourceLineNo">079</span>       * Constructor.<a name="line.79"></a>
+<span class="sourceLineNo">080</span>       * <a name="line.80"></a>
+<span class="sourceLineNo">081</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.81"></a>
+<span class="sourceLineNo">082</span>       */<a name="line.82"></a>
+<span class="sourceLineNo">083</span>      public XmlAbbrev(PropertyStore propertyStore) {<a name="line.83"></a>
+<span class="sourceLineNo">084</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML_ABBREV), "text/xml+rdf", "text/xml+rdf+abbrev");<a name="line.84"></a>
+<span class="sourceLineNo">085</span>      }<a name="line.85"></a>
+<span class="sourceLineNo">086</span>   }<a name="line.86"></a>
+<span class="sourceLineNo">087</span><a name="line.87"></a>
+<span class="sourceLineNo">088</span>   /** Produces N-Triple output */<a name="line.88"></a>
+<span class="sourceLineNo">089</span>   public static class NTriple extends RdfSerializer {<a name="line.89"></a>
+<span class="sourceLineNo">090</span><a name="line.90"></a>
+<span class="sourceLineNo">091</span>      /**<a name="line.91"></a>
+<span class="sourceLineNo">092</span>       * Constructor.<a name="line.92"></a>
+<span class="sourceLineNo">093</span>       * <a name="line.93"></a>
+<span class="sourceLineNo">094</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.94"></a>
+<span class="sourceLineNo">095</span>       */<a name="line.95"></a>
+<span class="sourceLineNo">096</span>      public NTriple(PropertyStore propertyStore) {<a name="line.96"></a>
+<span class="sourceLineNo">097</span>         super(propertyStore.copy().append(RDF_language, LANG_NTRIPLE), "text/n-triple");<a name="line.97"></a>
+<span class="sourceLineNo">098</span>      }<a name="line.98"></a>
+<span class="sourceLineNo">099</span>   }<a name="line.99"></a>
+<span class="sourceLineNo">100</span><a name="line.100"></a>
+<span class="sourceLineNo">101</span>   /** Produces Turtle output */<a name="line.101"></a>
+<span class="sourceLineNo">102</span>   public static class Turtle extends RdfSerializer {<a name="line.102"></a>
+<span class="sourceLineNo">103</span><a name="line.103"></a>
+<span class="sourceLineNo">104</span>      /**<a name="line.104"></a>
+<span class="sourceLineNo">105</span>       * Constructor.<a name="line.105"></a>
+<span class="sourceLineNo">106</span>       * <a name="line.106"></a>
+<span class="sourceLineNo">107</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.107"></a>
+<span class="sourceLineNo">108</span>       */<a name="line.108"></a>
+<span class="sourceLineNo">109</span>      public Turtle(PropertyStore propertyStore) {<a name="line.109"></a>
+<span class="sourceLineNo">110</span>         super(propertyStore.copy().append(RDF_language, LANG_TURTLE), "text/turtle");<a name="line.110"></a>
+<span class="sourceLineNo">111</span>      }<a name="line.111"></a>
+<span class="sourceLineNo">112</span>   }<a name="line.112"></a>
+<span class="sourceLineNo">113</span><a name="line.113"></a>
+<span class="sourceLineNo">114</span>   /** Produces N3 output */<a name="line.114"></a>
+<span class="sourceLineNo">115</span>   public static class N3 extends RdfSerializer {<a name="line.115"></a>
+<span class="sourceLineNo">116</span><a name="line.116"></a>
+<span class="sourceLineNo">117</span>      /**<a name="line.117"></a>
+<span class="sourceLineNo">118</span>       * Constructor.<a name="line.118"></a>
+<span class="sourceLineNo">119</span>       * <a name="line.119"></a>
+<span class="sourceLineNo">120</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.120"></a>
+<span class="sourceLineNo">121</span>       */<a name="line.121"></a>
+<span class="sourceLineNo">122</span>      public N3(PropertyStore propertyStore) {<a name="line.122"></a>
+<span class="sourceLineNo">123</span>         super(propertyStore.copy().append(RDF_language, LANG_N3), "text/n3");<a name="line.123"></a>
+<span class="sourceLineNo">124</span>      }<a name="line.124"></a>
+<span class="sourceLineNo">125</span>   }<a name="line.125"></a>
+<span class="sourceLineNo">126</span><a name="line.126"></a>
+<span class="sourceLineNo">127</span><a name="line.127"></a>
+<span class="sourceLineNo">128</span>   private final RdfSerializerContext ctx;<a name="line.128"></a>
+<span class="sourceLineNo">129</span><a name="line.129"></a>
+<span class="sourceLineNo">130</span>   /**<a name="line.130"></a>
+<span class="sourceLineNo">131</span>    * Constructor.<a name="line.131"></a>
+<span class="sourceLineNo">132</span>    *<a name="line.132"></a>
+<span class="sourceLineNo">133</span>    * @param propertyStore<a name="line.133"></a>
+<span class="sourceLineNo">134</span>    *    The property store containing all the settings for this object.<a name="line.134"></a>
+<span class="sourceLineNo">135</span>    * @param produces<a name="line.135"></a>
+<span class="sourceLineNo">136</span>    *    The media type that this serializer produces.<a name="line.136"></a>
+<span class="sourceLineNo">137</span>    * @param accept<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    *    The accept media types that the serializer can handle.<a name="line.138"></a>
+<span class="sourceLineNo">139</span>    *    &lt;p&gt;<a name="line.139"></a>
+<span class="sourceLineNo">140</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.140"></a>
+<span class="sourceLineNo">141</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.141"></a>
+<span class="sourceLineNo">142</span>    *    &lt;p&gt;<a name="line.142"></a>
+<span class="sourceLineNo">143</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.143"></a>
+<span class="sourceLineNo">144</span>    *    &lt;p&gt;<a name="line.144"></a>
+<span class="sourceLineNo">145</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.146"></a>
+<span class="sourceLineNo">147</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.147"></a>
+<span class="sourceLineNo">148</span>    *    &lt;br&gt;...or...<a name="line.148"></a>
+<span class="sourceLineNo">149</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.149"></a>
+<span class="sourceLineNo">150</span>    */<a name="line.150"></a>
+<span class="sourceLineNo">151</span>   public RdfSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.151"></a>
+<span class="sourceLineNo">152</span>      super(propertyStore, produces, accept);<a name="line.152"></a>
+<span class="sourceLineNo">153</span>      this.ctx = createContext(RdfSerializerContext.class);<a name="line.153"></a>
+<span class="sourceLineNo">154</span>   }<a name="line.154"></a>
+<span class="sourceLineNo">155</span><a name="line.155"></a>
+<span class="sourceLineNo">156</span>   @Override /* CoreObject */<a name="line.156"></a>
+<span class="sourceLineNo">157</span>   public RdfSerializerBuilder builder() {<a name="line.157"></a>
+<span class="sourceLineNo">158</span>      return new RdfSerializerBuilder(propertyStore);<a name="line.158"></a>
+<span class="sourceLineNo">159</span>   }<a name="line.159"></a>
+<span class="sourceLineNo">160</span><a name="line.160"></a>
+<span class="sourceLineNo">161</span>   @Override /* Serializer */<a name="line.161"></a>
+<span class="sourceLineNo">162</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.162"></a>
+<span class="sourceLineNo">163</span>      return new RdfSerializerSession(ctx, args);<a name="line.163"></a>
+<span class="sourceLineNo">164</span>   }<a name="line.164"></a>
+<span class="sourceLineNo">165</span>}<a name="line.165"></a>
 
 
 


[21/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/parser/ParserSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/parser/ParserSession.html b/content/site/apidocs/src-html/org/apache/juneau/parser/ParserSession.html
index f9add00..b724b67 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/parser/ParserSession.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/parser/ParserSession.html
@@ -62,703 +62,701 @@
 <span class="sourceLineNo">054</span>    *    Runtime session arguments.<a name="line.54"></a>
 <span class="sourceLineNo">055</span>    */<a name="line.55"></a>
 <span class="sourceLineNo">056</span>   protected ParserSession(ParserContext ctx, ParserSessionArgs args) {<a name="line.56"></a>
-<span class="sourceLineNo">057</span>      super(ctx != null ? ctx : ParserContext.DEFAULT, args != null ? args : ParserSessionArgs.DEFAULT);<a name="line.57"></a>
+<span class="sourceLineNo">057</span>      super(ctx != null ? ctx : ParserContext.DEFAULT, args);<a name="line.57"></a>
 <span class="sourceLineNo">058</span>      if (ctx == null)<a name="line.58"></a>
 <span class="sourceLineNo">059</span>         ctx = ParserContext.DEFAULT;<a name="line.59"></a>
-<span class="sourceLineNo">060</span>      if (args == null)<a name="line.60"></a>
-<span class="sourceLineNo">061</span>         args = ParserSessionArgs.DEFAULT;<a name="line.61"></a>
-<span class="sourceLineNo">062</span>      Class&lt;?&gt; listenerClass;<a name="line.62"></a>
-<span class="sourceLineNo">063</span>      ObjectMap p = getProperties();<a name="line.63"></a>
-<span class="sourceLineNo">064</span>      if (p.isEmpty()) {<a name="line.64"></a>
-<span class="sourceLineNo">065</span>         trimStrings = ctx.trimStrings;<a name="line.65"></a>
-<span class="sourceLineNo">066</span>         strict = ctx.strict;<a name="line.66"></a>
-<span class="sourceLineNo">067</span>         inputStreamCharset = ctx.inputStreamCharset;<a name="line.67"></a>
-<span class="sourceLineNo">068</span>         fileCharset = ctx.fileCharset;<a name="line.68"></a>
-<span class="sourceLineNo">069</span>         listenerClass = ctx.listener;<a name="line.69"></a>
-<span class="sourceLineNo">070</span>      } else {<a name="line.70"></a>
-<span class="sourceLineNo">071</span>         trimStrings = p.getBoolean(PARSER_trimStrings, ctx.trimStrings);<a name="line.71"></a>
-<span class="sourceLineNo">072</span>         strict = p.getBoolean(PARSER_strict, ctx.strict);<a name="line.72"></a>
-<span class="sourceLineNo">073</span>         inputStreamCharset = p.getString(PARSER_inputStreamCharset, ctx.inputStreamCharset);<a name="line.73"></a>
-<span class="sourceLineNo">074</span>         fileCharset = p.getString(PARSER_fileCharset, ctx.fileCharset);<a name="line.74"></a>
-<span class="sourceLineNo">075</span>         listenerClass = p.getWithDefault(PARSER_listener, ctx.listener, Class.class);<a name="line.75"></a>
-<span class="sourceLineNo">076</span>      }<a name="line.76"></a>
-<span class="sourceLineNo">077</span>      this.javaMethod = args.javaMethod;<a name="line.77"></a>
-<span class="sourceLineNo">078</span>      this.outer = args.outer;<a name="line.78"></a>
-<span class="sourceLineNo">079</span>      this.listener = newInstance(ParserListener.class, listenerClass);<a name="line.79"></a>
-<span class="sourceLineNo">080</span>   }<a name="line.80"></a>
-<span class="sourceLineNo">081</span><a name="line.81"></a>
-<span class="sourceLineNo">082</span><a name="line.82"></a>
+<span class="sourceLineNo">060</span>      Class&lt;?&gt; listenerClass;<a name="line.60"></a>
+<span class="sourceLineNo">061</span>      ObjectMap p = getProperties();<a name="line.61"></a>
+<span class="sourceLineNo">062</span>      if (p.isEmpty()) {<a name="line.62"></a>
+<span class="sourceLineNo">063</span>         trimStrings = ctx.trimStrings;<a name="line.63"></a>
+<span class="sourceLineNo">064</span>         strict = ctx.strict;<a name="line.64"></a>
+<span class="sourceLineNo">065</span>         inputStreamCharset = ctx.inputStreamCharset;<a name="line.65"></a>
+<span class="sourceLineNo">066</span>         fileCharset = ctx.fileCharset;<a name="line.66"></a>
+<span class="sourceLineNo">067</span>         listenerClass = ctx.listener;<a name="line.67"></a>
+<span class="sourceLineNo">068</span>      } else {<a name="line.68"></a>
+<span class="sourceLineNo">069</span>         trimStrings = p.getBoolean(PARSER_trimStrings, ctx.trimStrings);<a name="line.69"></a>
+<span class="sourceLineNo">070</span>         strict = p.getBoolean(PARSER_strict, ctx.strict);<a name="line.70"></a>
+<span class="sourceLineNo">071</span>         inputStreamCharset = p.getString(PARSER_inputStreamCharset, ctx.inputStreamCharset);<a name="line.71"></a>
+<span class="sourceLineNo">072</span>         fileCharset = p.getString(PARSER_fileCharset, ctx.fileCharset);<a name="line.72"></a>
+<span class="sourceLineNo">073</span>         listenerClass = p.getWithDefault(PARSER_listener, ctx.listener, Class.class);<a name="line.73"></a>
+<span class="sourceLineNo">074</span>      }<a name="line.74"></a>
+<span class="sourceLineNo">075</span>      this.javaMethod = args.javaMethod;<a name="line.75"></a>
+<span class="sourceLineNo">076</span>      this.outer = args.outer;<a name="line.76"></a>
+<span class="sourceLineNo">077</span>      this.listener = newInstance(ParserListener.class, listenerClass);<a name="line.77"></a>
+<span class="sourceLineNo">078</span>   }<a name="line.78"></a>
+<span class="sourceLineNo">079</span><a name="line.79"></a>
+<span class="sourceLineNo">080</span><a name="line.80"></a>
+<span class="sourceLineNo">081</span>   //--------------------------------------------------------------------------------<a name="line.81"></a>
+<span class="sourceLineNo">082</span>   // Abstract methods<a name="line.82"></a>
 <span class="sourceLineNo">083</span>   //--------------------------------------------------------------------------------<a name="line.83"></a>
-<span class="sourceLineNo">084</span>   // Abstract methods<a name="line.84"></a>
-<span class="sourceLineNo">085</span>   //--------------------------------------------------------------------------------<a name="line.85"></a>
-<span class="sourceLineNo">086</span><a name="line.86"></a>
-<span class="sourceLineNo">087</span>   /**<a name="line.87"></a>
-<span class="sourceLineNo">088</span>    * Workhorse method.  Subclasses are expected to implement this method.<a name="line.88"></a>
-<span class="sourceLineNo">089</span>    *<a name="line.89"></a>
-<span class="sourceLineNo">090</span>    * @param pipe Where to get the input from.<a name="line.90"></a>
-<span class="sourceLineNo">091</span>    * @param type<a name="line.91"></a>
-<span class="sourceLineNo">092</span>    *    The class type of the object to create.<a name="line.92"></a>
-<span class="sourceLineNo">093</span>    *    If &lt;jk&gt;null&lt;/jk&gt; or &lt;code&gt;Object.&lt;jk&gt;class&lt;/jk&gt;&lt;/code&gt;, object type is based on what's being parsed.<a name="line.93"></a>
-<span class="sourceLineNo">094</span>    *    For example, when parsing JSON text, it may return a &lt;code&gt;String&lt;/code&gt;, &lt;code&gt;Number&lt;/code&gt;,<a name="line.94"></a>
-<span class="sourceLineNo">095</span>    *    &lt;code&gt;ObjectMap&lt;/code&gt;, etc...<a name="line.95"></a>
-<span class="sourceLineNo">096</span>    * @param &lt;T&gt; The class type of the object to create.<a name="line.96"></a>
-<span class="sourceLineNo">097</span>    * @return The parsed object.<a name="line.97"></a>
-<span class="sourceLineNo">098</span>    * @throws Exception If thrown from underlying stream, or if the input contains a syntax error or is malformed.<a name="line.98"></a>
-<span class="sourceLineNo">099</span>    */<a name="line.99"></a>
-<span class="sourceLineNo">100</span>   protected abstract &lt;T&gt; T doParse(ParserPipe pipe, ClassMeta&lt;T&gt; type) throws Exception;<a name="line.100"></a>
-<span class="sourceLineNo">101</span><a name="line.101"></a>
-<span class="sourceLineNo">102</span>   /**<a name="line.102"></a>
-<span class="sourceLineNo">103</span>    * Returns &lt;jk&gt;true&lt;/jk&gt; if this parser subclasses from {@link ReaderParser}.<a name="line.103"></a>
-<span class="sourceLineNo">104</span>    *<a name="line.104"></a>
-<span class="sourceLineNo">105</span>    * @return &lt;jk&gt;true&lt;/jk&gt; if this parser subclasses from {@link ReaderParser}.<a name="line.105"></a>
-<span class="sourceLineNo">106</span>    */<a name="line.106"></a>
-<span class="sourceLineNo">107</span>   public abstract boolean isReaderParser();<a name="line.107"></a>
-<span class="sourceLineNo">108</span><a name="line.108"></a>
-<span class="sourceLineNo">109</span><a name="line.109"></a>
+<span class="sourceLineNo">084</span><a name="line.84"></a>
+<span class="sourceLineNo">085</span>   /**<a name="line.85"></a>
+<span class="sourceLineNo">086</span>    * Workhorse method.  Subclasses are expected to implement this method.<a name="line.86"></a>
+<span class="sourceLineNo">087</span>    *<a name="line.87"></a>
+<span class="sourceLineNo">088</span>    * @param pipe Where to get the input from.<a name="line.88"></a>
+<span class="sourceLineNo">089</span>    * @param type<a name="line.89"></a>
+<span class="sourceLineNo">090</span>    *    The class type of the object to create.<a name="line.90"></a>
+<span class="sourceLineNo">091</span>    *    If &lt;jk&gt;null&lt;/jk&gt; or &lt;code&gt;Object.&lt;jk&gt;class&lt;/jk&gt;&lt;/code&gt;, object type is based on what's being parsed.<a name="line.91"></a>
+<span class="sourceLineNo">092</span>    *    For example, when parsing JSON text, it may return a &lt;code&gt;String&lt;/code&gt;, &lt;code&gt;Number&lt;/code&gt;,<a name="line.92"></a>
+<span class="sourceLineNo">093</span>    *    &lt;code&gt;ObjectMap&lt;/code&gt;, etc...<a name="line.93"></a>
+<span class="sourceLineNo">094</span>    * @param &lt;T&gt; The class type of the object to create.<a name="line.94"></a>
+<span class="sourceLineNo">095</span>    * @return The parsed object.<a name="line.95"></a>
+<span class="sourceLineNo">096</span>    * @throws Exception If thrown from underlying stream, or if the input contains a syntax error or is malformed.<a name="line.96"></a>
+<span class="sourceLineNo">097</span>    */<a name="line.97"></a>
+<span class="sourceLineNo">098</span>   protected abstract &lt;T&gt; T doParse(ParserPipe pipe, ClassMeta&lt;T&gt; type) throws Exception;<a name="line.98"></a>
+<span class="sourceLineNo">099</span><a name="line.99"></a>
+<span class="sourceLineNo">100</span>   /**<a name="line.100"></a>
+<span class="sourceLineNo">101</span>    * Returns &lt;jk&gt;true&lt;/jk&gt; if this parser subclasses from {@link ReaderParser}.<a name="line.101"></a>
+<span class="sourceLineNo">102</span>    *<a name="line.102"></a>
+<span class="sourceLineNo">103</span>    * @return &lt;jk&gt;true&lt;/jk&gt; if this parser subclasses from {@link ReaderParser}.<a name="line.103"></a>
+<span class="sourceLineNo">104</span>    */<a name="line.104"></a>
+<span class="sourceLineNo">105</span>   public abstract boolean isReaderParser();<a name="line.105"></a>
+<span class="sourceLineNo">106</span><a name="line.106"></a>
+<span class="sourceLineNo">107</span><a name="line.107"></a>
+<span class="sourceLineNo">108</span>   //--------------------------------------------------------------------------------<a name="line.108"></a>
+<span class="sourceLineNo">109</span>   // Other methods<a name="line.109"></a>
 <span class="sourceLineNo">110</span>   //--------------------------------------------------------------------------------<a name="line.110"></a>
-<span class="sourceLineNo">111</span>   // Other methods<a name="line.111"></a>
-<span class="sourceLineNo">112</span>   //--------------------------------------------------------------------------------<a name="line.112"></a>
-<span class="sourceLineNo">113</span><a name="line.113"></a>
-<span class="sourceLineNo">114</span>   /**<a name="line.114"></a>
-<span class="sourceLineNo">115</span>    * Wraps the specified input object into a {@link ParserPipe} object so that it can be easily converted into<a name="line.115"></a>
-<span class="sourceLineNo">116</span>    * a stream or reader.<a name="line.116"></a>
-<span class="sourceLineNo">117</span>    *<a name="line.117"></a>
-<span class="sourceLineNo">118</span>    * @param input<a name="line.118"></a>
-<span class="sourceLineNo">119</span>    *    The input.<a name="line.119"></a>
-<span class="sourceLineNo">120</span>    *    &lt;br&gt;For character-based parsers, this can be any of the following types:<a name="line.120"></a>
-<span class="sourceLineNo">121</span>    *    &lt;ul&gt;<a name="line.121"></a>
-<span class="sourceLineNo">122</span>    *       &lt;li&gt;&lt;jk&gt;null&lt;/jk&gt;<a name="line.122"></a>
-<span class="sourceLineNo">123</span>    *       &lt;li&gt;{@link Reader}<a name="line.123"></a>
-<span class="sourceLineNo">124</span>    *       &lt;li&gt;{@link CharSequence}<a name="line.124"></a>
-<span class="sourceLineNo">125</span>    *       &lt;li&gt;{@link InputStream} containing UTF-8 encoded text (or whatever the encoding specified by<a name="line.125"></a>
+<span class="sourceLineNo">111</span><a name="line.111"></a>
+<span class="sourceLineNo">112</span>   /**<a name="line.112"></a>
+<span class="sourceLineNo">113</span>    * Wraps the specified input object into a {@link ParserPipe} object so that it can be easily converted into<a name="line.113"></a>
+<span class="sourceLineNo">114</span>    * a stream or reader.<a name="line.114"></a>
+<span class="sourceLineNo">115</span>    *<a name="line.115"></a>
+<span class="sourceLineNo">116</span>    * @param input<a name="line.116"></a>
+<span class="sourceLineNo">117</span>    *    The input.<a name="line.117"></a>
+<span class="sourceLineNo">118</span>    *    &lt;br&gt;For character-based parsers, this can be any of the following types:<a name="line.118"></a>
+<span class="sourceLineNo">119</span>    *    &lt;ul&gt;<a name="line.119"></a>
+<span class="sourceLineNo">120</span>    *       &lt;li&gt;&lt;jk&gt;null&lt;/jk&gt;<a name="line.120"></a>
+<span class="sourceLineNo">121</span>    *       &lt;li&gt;{@link Reader}<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    *       &lt;li&gt;{@link CharSequence}<a name="line.122"></a>
+<span class="sourceLineNo">123</span>    *       &lt;li&gt;{@link InputStream} containing UTF-8 encoded text (or whatever the encoding specified by<a name="line.123"></a>
+<span class="sourceLineNo">124</span>    *          {@link ParserContext#PARSER_inputStreamCharset}).<a name="line.124"></a>
+<span class="sourceLineNo">125</span>    *       &lt;li&gt;&lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;[]&lt;/code&gt; containing UTF-8 encoded text (or whatever the encoding specified by<a name="line.125"></a>
 <span class="sourceLineNo">126</span>    *          {@link ParserContext#PARSER_inputStreamCharset}).<a name="line.126"></a>
-<span class="sourceLineNo">127</span>    *       &lt;li&gt;&lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;[]&lt;/code&gt; containing UTF-8 encoded text (or whatever the encoding specified by<a name="line.127"></a>
-<span class="sourceLineNo">128</span>    *          {@link ParserContext#PARSER_inputStreamCharset}).<a name="line.128"></a>
-<span class="sourceLineNo">129</span>    *       &lt;li&gt;{@link File} containing system encoded text (or whatever the encoding specified by<a name="line.129"></a>
-<span class="sourceLineNo">130</span>    *          {@link ParserContext#PARSER_fileCharset}).<a name="line.130"></a>
-<span class="sourceLineNo">131</span>    *    &lt;/ul&gt;<a name="line.131"></a>
-<span class="sourceLineNo">132</span>    *    &lt;br&gt;For byte-based parsers, this can be any of the following types:<a name="line.132"></a>
-<span class="sourceLineNo">133</span>    *    &lt;ul&gt;<a name="line.133"></a>
-<span class="sourceLineNo">134</span>    *       &lt;li&gt;&lt;jk&gt;null&lt;/jk&gt;<a name="line.134"></a>
-<span class="sourceLineNo">135</span>    *       &lt;li&gt;{@link InputStream}<a name="line.135"></a>
-<span class="sourceLineNo">136</span>    *       &lt;li&gt;&lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;[]&lt;/code&gt;<a name="line.136"></a>
-<span class="sourceLineNo">137</span>    *       &lt;li&gt;{@link File}<a name="line.137"></a>
-<span class="sourceLineNo">138</span>    *    &lt;/ul&gt;<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    * @return<a name="line.139"></a>
-<span class="sourceLineNo">140</span>    *    A new {@link ParserPipe} wrapper around the specified input object.<a name="line.140"></a>
-<span class="sourceLineNo">141</span>    */<a name="line.141"></a>
-<span class="sourceLineNo">142</span>   public final ParserPipe createPipe(Object input) {<a name="line.142"></a>
-<span class="sourceLineNo">143</span>      return new ParserPipe(input, isDebug(), strict, fileCharset, inputStreamCharset);<a name="line.143"></a>
-<span class="sourceLineNo">144</span>   }<a name="line.144"></a>
-<span class="sourceLineNo">145</span><a name="line.145"></a>
-<span class="sourceLineNo">146</span>   /**<a name="line.146"></a>
-<span class="sourceLineNo">147</span>    * Returns information used to determine at what location in the parse a failure occurred.<a name="line.147"></a>
-<span class="sourceLineNo">148</span>    *<a name="line.148"></a>
-<span class="sourceLineNo">149</span>    * @return A map, typically containing something like &lt;code&gt;{line:123,column:456,currentProperty:"foobar"}&lt;/code&gt;<a name="line.149"></a>
-<span class="sourceLineNo">150</span>    */<a name="line.150"></a>
-<span class="sourceLineNo">151</span>   public final ObjectMap getLastLocation() {<a name="line.151"></a>
-<span class="sourceLineNo">152</span>      ObjectMap m = new ObjectMap();<a name="line.152"></a>
-<span class="sourceLineNo">153</span>      if (currentClass != null)<a name="line.153"></a>
-<span class="sourceLineNo">154</span>         m.put("currentClass", currentClass.toString(true));<a name="line.154"></a>
-<span class="sourceLineNo">155</span>      if (currentProperty != null)<a name="line.155"></a>
-<span class="sourceLineNo">156</span>         m.put("currentProperty", currentProperty);<a name="line.156"></a>
-<span class="sourceLineNo">157</span>      return m;<a name="line.157"></a>
-<span class="sourceLineNo">158</span>   }<a name="line.158"></a>
-<span class="sourceLineNo">159</span><a name="line.159"></a>
-<span class="sourceLineNo">160</span>   /**<a name="line.160"></a>
-<span class="sourceLineNo">161</span>    * Returns the Java method that invoked this parser.<a name="line.161"></a>
-<span class="sourceLineNo">162</span>    *<a name="line.162"></a>
-<span class="sourceLineNo">163</span>    * &lt;p&gt;<a name="line.163"></a>
-<span class="sourceLineNo">164</span>    * When using the REST API, this is the Java method invoked by the REST call.<a name="line.164"></a>
-<span class="sourceLineNo">165</span>    * Can be used to access annotations defined on the method or class.<a name="line.165"></a>
-<span class="sourceLineNo">166</span>    *<a name="line.166"></a>
-<span class="sourceLineNo">167</span>    * @return The Java method that invoked this parser.<a name="line.167"></a>
-<span class="sourceLineNo">168</span>   */<a name="line.168"></a>
-<span class="sourceLineNo">169</span>   protected final Method getJavaMethod() {<a name="line.169"></a>
-<span class="sourceLineNo">170</span>      return javaMethod;<a name="line.170"></a>
-<span class="sourceLineNo">171</span>   }<a name="line.171"></a>
-<span class="sourceLineNo">172</span><a name="line.172"></a>
-<span class="sourceLineNo">173</span>   /**<a name="line.173"></a>
-<span class="sourceLineNo">174</span>    * Returns the outer object used for instantiating top-level non-static member classes.<a name="line.174"></a>
-<span class="sourceLineNo">175</span>    *<a name="line.175"></a>
-<span class="sourceLineNo">176</span>    * &lt;p&gt;<a name="line.176"></a>
-<span class="sourceLineNo">177</span>    * When using the REST API, this is the servlet object.<a name="line.177"></a>
-<span class="sourceLineNo">178</span>    *<a name="line.178"></a>
-<span class="sourceLineNo">179</span>    * @return The outer object.<a name="line.179"></a>
-<span class="sourceLineNo">180</span>   */<a name="line.180"></a>
-<span class="sourceLineNo">181</span>   protected final Object getOuter() {<a name="line.181"></a>
-<span class="sourceLineNo">182</span>      return outer;<a name="line.182"></a>
-<span class="sourceLineNo">183</span>   }<a name="line.183"></a>
-<span class="sourceLineNo">184</span><a name="line.184"></a>
-<span class="sourceLineNo">185</span>   /**<a name="line.185"></a>
-<span class="sourceLineNo">186</span>    * Sets the current bean property being parsed for proper error messages.<a name="line.186"></a>
-<span class="sourceLineNo">187</span>    *<a name="line.187"></a>
-<span class="sourceLineNo">188</span>    * @param currentProperty The current property being parsed.<a name="line.188"></a>
-<span class="sourceLineNo">189</span>    */<a name="line.189"></a>
-<span class="sourceLineNo">190</span>   protected final void setCurrentProperty(BeanPropertyMeta currentProperty) {<a name="line.190"></a>
-<span class="sourceLineNo">191</span>      this.currentProperty = currentProperty;<a name="line.191"></a>
-<span class="sourceLineNo">192</span>   }<a name="line.192"></a>
-<span class="sourceLineNo">193</span><a name="line.193"></a>
-<span class="sourceLineNo">194</span>   /**<a name="line.194"></a>
-<span class="sourceLineNo">195</span>    * Sets the current class being parsed for proper error messages.<a name="line.195"></a>
-<span class="sourceLineNo">196</span>    *<a name="line.196"></a>
-<span class="sourceLineNo">197</span>    * @param currentClass The current class being parsed.<a name="line.197"></a>
-<span class="sourceLineNo">198</span>    */<a name="line.198"></a>
-<span class="sourceLineNo">199</span>   protected final void setCurrentClass(ClassMeta&lt;?&gt; currentClass) {<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      this.currentClass = currentClass;<a name="line.200"></a>
-<span class="sourceLineNo">201</span>   }<a name="line.201"></a>
-<span class="sourceLineNo">202</span><a name="line.202"></a>
-<span class="sourceLineNo">203</span>   /**<a name="line.203"></a>
-<span class="sourceLineNo">204</span>    * Returns the {@link ParserContext#PARSER_trimStrings} setting value for this session.<a name="line.204"></a>
-<span class="sourceLineNo">205</span>    *<a name="line.205"></a>
-<span class="sourceLineNo">206</span>    * @return The {@link ParserContext#PARSER_trimStrings} setting value for this session.<a name="line.206"></a>
-<span class="sourceLineNo">207</span>    */<a name="line.207"></a>
-<span class="sourceLineNo">208</span>   protected final boolean isTrimStrings() {<a name="line.208"></a>
-<span class="sourceLineNo">209</span>      return trimStrings;<a name="line.209"></a>
-<span class="sourceLineNo">210</span>   }<a name="line.210"></a>
-<span class="sourceLineNo">211</span><a name="line.211"></a>
-<span class="sourceLineNo">212</span>   /**<a name="line.212"></a>
-<span class="sourceLineNo">213</span>    * Returns the {@link ParserContext#PARSER_strict} setting value for this session.<a name="line.213"></a>
-<span class="sourceLineNo">214</span>    *<a name="line.214"></a>
-<span class="sourceLineNo">215</span>    * @return The {@link ParserContext#PARSER_strict} setting value for this session.<a name="line.215"></a>
-<span class="sourceLineNo">216</span>    */<a name="line.216"></a>
-<span class="sourceLineNo">217</span>   protected final boolean isStrict() {<a name="line.217"></a>
-<span class="sourceLineNo">218</span>      return strict;<a name="line.218"></a>
-<span class="sourceLineNo">219</span>   }<a name="line.219"></a>
-<span class="sourceLineNo">220</span><a name="line.220"></a>
-<span class="sourceLineNo">221</span>   /**<a name="line.221"></a>
-<span class="sourceLineNo">222</span>    * Trims the specified object if it's a &lt;code&gt;String&lt;/code&gt; and {@link #isTrimStrings()} returns &lt;jk&gt;true&lt;/jk&gt;.<a name="line.222"></a>
-<span class="sourceLineNo">223</span>    *<a name="line.223"></a>
-<span class="sourceLineNo">224</span>    * @param o The object to trim.<a name="line.224"></a>
-<span class="sourceLineNo">225</span>    * @return The trimmed string if it's a string.<a name="line.225"></a>
-<span class="sourceLineNo">226</span>    */<a name="line.226"></a>
-<span class="sourceLineNo">227</span>   @SuppressWarnings("unchecked")<a name="line.227"></a>
-<span class="sourceLineNo">228</span>   protected final &lt;K&gt; K trim(K o) {<a name="line.228"></a>
-<span class="sourceLineNo">229</span>      if (trimStrings &amp;&amp; o instanceof String)<a name="line.229"></a>
-<span class="sourceLineNo">230</span>         return (K)o.toString().trim();<a name="line.230"></a>
-<span class="sourceLineNo">231</span>      return o;<a name="line.231"></a>
+<span class="sourceLineNo">127</span>    *       &lt;li&gt;{@link File} containing system encoded text (or whatever the encoding specified by<a name="line.127"></a>
+<span class="sourceLineNo">128</span>    *          {@link ParserContext#PARSER_fileCharset}).<a name="line.128"></a>
+<span class="sourceLineNo">129</span>    *    &lt;/ul&gt;<a name="line.129"></a>
+<span class="sourceLineNo">130</span>    *    &lt;br&gt;For byte-based parsers, this can be any of the following types:<a name="line.130"></a>
+<span class="sourceLineNo">131</span>    *    &lt;ul&gt;<a name="line.131"></a>
+<span class="sourceLineNo">132</span>    *       &lt;li&gt;&lt;jk&gt;null&lt;/jk&gt;<a name="line.132"></a>
+<span class="sourceLineNo">133</span>    *       &lt;li&gt;{@link InputStream}<a name="line.133"></a>
+<span class="sourceLineNo">134</span>    *       &lt;li&gt;&lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;[]&lt;/code&gt;<a name="line.134"></a>
+<span class="sourceLineNo">135</span>    *       &lt;li&gt;{@link File}<a name="line.135"></a>
+<span class="sourceLineNo">136</span>    *    &lt;/ul&gt;<a name="line.136"></a>
+<span class="sourceLineNo">137</span>    * @return<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    *    A new {@link ParserPipe} wrapper around the specified input object.<a name="line.138"></a>
+<span class="sourceLineNo">139</span>    */<a name="line.139"></a>
+<span class="sourceLineNo">140</span>   public final ParserPipe createPipe(Object input) {<a name="line.140"></a>
+<span class="sourceLineNo">141</span>      return new ParserPipe(input, isDebug(), strict, fileCharset, inputStreamCharset);<a name="line.141"></a>
+<span class="sourceLineNo">142</span>   }<a name="line.142"></a>
+<span class="sourceLineNo">143</span><a name="line.143"></a>
+<span class="sourceLineNo">144</span>   /**<a name="line.144"></a>
+<span class="sourceLineNo">145</span>    * Returns information used to determine at what location in the parse a failure occurred.<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    *<a name="line.146"></a>
+<span class="sourceLineNo">147</span>    * @return A map, typically containing something like &lt;code&gt;{line:123,column:456,currentProperty:"foobar"}&lt;/code&gt;<a name="line.147"></a>
+<span class="sourceLineNo">148</span>    */<a name="line.148"></a>
+<span class="sourceLineNo">149</span>   public final ObjectMap getLastLocation() {<a name="line.149"></a>
+<span class="sourceLineNo">150</span>      ObjectMap m = new ObjectMap();<a name="line.150"></a>
+<span class="sourceLineNo">151</span>      if (currentClass != null)<a name="line.151"></a>
+<span class="sourceLineNo">152</span>         m.put("currentClass", currentClass.toString(true));<a name="line.152"></a>
+<span class="sourceLineNo">153</span>      if (currentProperty != null)<a name="line.153"></a>
+<span class="sourceLineNo">154</span>         m.put("currentProperty", currentProperty);<a name="line.154"></a>
+<span class="sourceLineNo">155</span>      return m;<a name="line.155"></a>
+<span class="sourceLineNo">156</span>   }<a name="line.156"></a>
+<span class="sourceLineNo">157</span><a name="line.157"></a>
+<span class="sourceLineNo">158</span>   /**<a name="line.158"></a>
+<span class="sourceLineNo">159</span>    * Returns the Java method that invoked this parser.<a name="line.159"></a>
+<span class="sourceLineNo">160</span>    *<a name="line.160"></a>
+<span class="sourceLineNo">161</span>    * &lt;p&gt;<a name="line.161"></a>
+<span class="sourceLineNo">162</span>    * When using the REST API, this is the Java method invoked by the REST call.<a name="line.162"></a>
+<span class="sourceLineNo">163</span>    * Can be used to access annotations defined on the method or class.<a name="line.163"></a>
+<span class="sourceLineNo">164</span>    *<a name="line.164"></a>
+<span class="sourceLineNo">165</span>    * @return The Java method that invoked this parser.<a name="line.165"></a>
+<span class="sourceLineNo">166</span>   */<a name="line.166"></a>
+<span class="sourceLineNo">167</span>   protected final Method getJavaMethod() {<a name="line.167"></a>
+<span class="sourceLineNo">168</span>      return javaMethod;<a name="line.168"></a>
+<span class="sourceLineNo">169</span>   }<a name="line.169"></a>
+<span class="sourceLineNo">170</span><a name="line.170"></a>
+<span class="sourceLineNo">171</span>   /**<a name="line.171"></a>
+<span class="sourceLineNo">172</span>    * Returns the outer object used for instantiating top-level non-static member classes.<a name="line.172"></a>
+<span class="sourceLineNo">173</span>    *<a name="line.173"></a>
+<span class="sourceLineNo">174</span>    * &lt;p&gt;<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    * When using the REST API, this is the servlet object.<a name="line.175"></a>
+<span class="sourceLineNo">176</span>    *<a name="line.176"></a>
+<span class="sourceLineNo">177</span>    * @return The outer object.<a name="line.177"></a>
+<span class="sourceLineNo">178</span>   */<a name="line.178"></a>
+<span class="sourceLineNo">179</span>   protected final Object getOuter() {<a name="line.179"></a>
+<span class="sourceLineNo">180</span>      return outer;<a name="line.180"></a>
+<span class="sourceLineNo">181</span>   }<a name="line.181"></a>
+<span class="sourceLineNo">182</span><a name="line.182"></a>
+<span class="sourceLineNo">183</span>   /**<a name="line.183"></a>
+<span class="sourceLineNo">184</span>    * Sets the current bean property being parsed for proper error messages.<a name="line.184"></a>
+<span class="sourceLineNo">185</span>    *<a name="line.185"></a>
+<span class="sourceLineNo">186</span>    * @param currentProperty The current property being parsed.<a name="line.186"></a>
+<span class="sourceLineNo">187</span>    */<a name="line.187"></a>
+<span class="sourceLineNo">188</span>   protected final void setCurrentProperty(BeanPropertyMeta currentProperty) {<a name="line.188"></a>
+<span class="sourceLineNo">189</span>      this.currentProperty = currentProperty;<a name="line.189"></a>
+<span class="sourceLineNo">190</span>   }<a name="line.190"></a>
+<span class="sourceLineNo">191</span><a name="line.191"></a>
+<span class="sourceLineNo">192</span>   /**<a name="line.192"></a>
+<span class="sourceLineNo">193</span>    * Sets the current class being parsed for proper error messages.<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    *<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    * @param currentClass The current class being parsed.<a name="line.195"></a>
+<span class="sourceLineNo">196</span>    */<a name="line.196"></a>
+<span class="sourceLineNo">197</span>   protected final void setCurrentClass(ClassMeta&lt;?&gt; currentClass) {<a name="line.197"></a>
+<span class="sourceLineNo">198</span>      this.currentClass = currentClass;<a name="line.198"></a>
+<span class="sourceLineNo">199</span>   }<a name="line.199"></a>
+<span class="sourceLineNo">200</span><a name="line.200"></a>
+<span class="sourceLineNo">201</span>   /**<a name="line.201"></a>
+<span class="sourceLineNo">202</span>    * Returns the {@link ParserContext#PARSER_trimStrings} setting value for this session.<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    *<a name="line.203"></a>
+<span class="sourceLineNo">204</span>    * @return The {@link ParserContext#PARSER_trimStrings} setting value for this session.<a name="line.204"></a>
+<span class="sourceLineNo">205</span>    */<a name="line.205"></a>
+<span class="sourceLineNo">206</span>   protected final boolean isTrimStrings() {<a name="line.206"></a>
+<span class="sourceLineNo">207</span>      return trimStrings;<a name="line.207"></a>
+<span class="sourceLineNo">208</span>   }<a name="line.208"></a>
+<span class="sourceLineNo">209</span><a name="line.209"></a>
+<span class="sourceLineNo">210</span>   /**<a name="line.210"></a>
+<span class="sourceLineNo">211</span>    * Returns the {@link ParserContext#PARSER_strict} setting value for this session.<a name="line.211"></a>
+<span class="sourceLineNo">212</span>    *<a name="line.212"></a>
+<span class="sourceLineNo">213</span>    * @return The {@link ParserContext#PARSER_strict} setting value for this session.<a name="line.213"></a>
+<span class="sourceLineNo">214</span>    */<a name="line.214"></a>
+<span class="sourceLineNo">215</span>   protected final boolean isStrict() {<a name="line.215"></a>
+<span class="sourceLineNo">216</span>      return strict;<a name="line.216"></a>
+<span class="sourceLineNo">217</span>   }<a name="line.217"></a>
+<span class="sourceLineNo">218</span><a name="line.218"></a>
+<span class="sourceLineNo">219</span>   /**<a name="line.219"></a>
+<span class="sourceLineNo">220</span>    * Trims the specified object if it's a &lt;code&gt;String&lt;/code&gt; and {@link #isTrimStrings()} returns &lt;jk&gt;true&lt;/jk&gt;.<a name="line.220"></a>
+<span class="sourceLineNo">221</span>    *<a name="line.221"></a>
+<span class="sourceLineNo">222</span>    * @param o The object to trim.<a name="line.222"></a>
+<span class="sourceLineNo">223</span>    * @return The trimmed string if it's a string.<a name="line.223"></a>
+<span class="sourceLineNo">224</span>    */<a name="line.224"></a>
+<span class="sourceLineNo">225</span>   @SuppressWarnings("unchecked")<a name="line.225"></a>
+<span class="sourceLineNo">226</span>   protected final &lt;K&gt; K trim(K o) {<a name="line.226"></a>
+<span class="sourceLineNo">227</span>      if (trimStrings &amp;&amp; o instanceof String)<a name="line.227"></a>
+<span class="sourceLineNo">228</span>         return (K)o.toString().trim();<a name="line.228"></a>
+<span class="sourceLineNo">229</span>      return o;<a name="line.229"></a>
+<span class="sourceLineNo">230</span><a name="line.230"></a>
+<span class="sourceLineNo">231</span>   }<a name="line.231"></a>
 <span class="sourceLineNo">232</span><a name="line.232"></a>
-<span class="sourceLineNo">233</span>   }<a name="line.233"></a>
-<span class="sourceLineNo">234</span><a name="line.234"></a>
-<span class="sourceLineNo">235</span>   /**<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    * Trims the specified string if {@link ParserSession#isTrimStrings()} returns &lt;jk&gt;true&lt;/jk&gt;.<a name="line.236"></a>
-<span class="sourceLineNo">237</span>    *<a name="line.237"></a>
-<span class="sourceLineNo">238</span>    * @param s The input string to trim.<a name="line.238"></a>
-<span class="sourceLineNo">239</span>    * @return The trimmed string, or &lt;jk&gt;null&lt;/jk&gt; if the input was &lt;jk&gt;null&lt;/jk&gt;.<a name="line.239"></a>
-<span class="sourceLineNo">240</span>    */<a name="line.240"></a>
-<span class="sourceLineNo">241</span>   protected final String trim(String s) {<a name="line.241"></a>
-<span class="sourceLineNo">242</span>      if (trimStrings &amp;&amp; s != null)<a name="line.242"></a>
-<span class="sourceLineNo">243</span>         return s.trim();<a name="line.243"></a>
-<span class="sourceLineNo">244</span>      return s;<a name="line.244"></a>
-<span class="sourceLineNo">245</span>   }<a name="line.245"></a>
-<span class="sourceLineNo">246</span><a name="line.246"></a>
-<span class="sourceLineNo">247</span>   /**<a name="line.247"></a>
-<span class="sourceLineNo">248</span>    * Converts the specified &lt;code&gt;ObjectMap&lt;/code&gt; into a bean identified by the &lt;js&gt;"_type"&lt;/js&gt; property in the map.<a name="line.248"></a>
-<span class="sourceLineNo">249</span>    *<a name="line.249"></a>
-<span class="sourceLineNo">250</span>    * @param m The map to convert to a bean.<a name="line.250"></a>
-<span class="sourceLineNo">251</span>    * @param pMeta The current bean property being parsed.<a name="line.251"></a>
-<span class="sourceLineNo">252</span>    * @param eType The current expected type being parsed.<a name="line.252"></a>
-<span class="sourceLineNo">253</span>    * @return<a name="line.253"></a>
-<span class="sourceLineNo">254</span>    *    The converted bean, or the same map if the &lt;js&gt;"_type"&lt;/js&gt; entry wasn't found or didn't resolve to a bean.<a name="line.254"></a>
-<span class="sourceLineNo">255</span>    */<a name="line.255"></a>
-<span class="sourceLineNo">256</span>   protected final Object cast(ObjectMap m, BeanPropertyMeta pMeta, ClassMeta&lt;?&gt; eType) {<a name="line.256"></a>
+<span class="sourceLineNo">233</span>   /**<a name="line.233"></a>
+<span class="sourceLineNo">234</span>    * Trims the specified string if {@link ParserSession#isTrimStrings()} returns &lt;jk&gt;true&lt;/jk&gt;.<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    *<a name="line.235"></a>
+<span class="sourceLineNo">236</span>    * @param s The input string to trim.<a name="line.236"></a>
+<span class="sourceLineNo">237</span>    * @return The trimmed string, or &lt;jk&gt;null&lt;/jk&gt; if the input was &lt;jk&gt;null&lt;/jk&gt;.<a name="line.237"></a>
+<span class="sourceLineNo">238</span>    */<a name="line.238"></a>
+<span class="sourceLineNo">239</span>   protected final String trim(String s) {<a name="line.239"></a>
+<span class="sourceLineNo">240</span>      if (trimStrings &amp;&amp; s != null)<a name="line.240"></a>
+<span class="sourceLineNo">241</span>         return s.trim();<a name="line.241"></a>
+<span class="sourceLineNo">242</span>      return s;<a name="line.242"></a>
+<span class="sourceLineNo">243</span>   }<a name="line.243"></a>
+<span class="sourceLineNo">244</span><a name="line.244"></a>
+<span class="sourceLineNo">245</span>   /**<a name="line.245"></a>
+<span class="sourceLineNo">246</span>    * Converts the specified &lt;code&gt;ObjectMap&lt;/code&gt; into a bean identified by the &lt;js&gt;"_type"&lt;/js&gt; property in the map.<a name="line.246"></a>
+<span class="sourceLineNo">247</span>    *<a name="line.247"></a>
+<span class="sourceLineNo">248</span>    * @param m The map to convert to a bean.<a name="line.248"></a>
+<span class="sourceLineNo">249</span>    * @param pMeta The current bean property being parsed.<a name="line.249"></a>
+<span class="sourceLineNo">250</span>    * @param eType The current expected type being parsed.<a name="line.250"></a>
+<span class="sourceLineNo">251</span>    * @return<a name="line.251"></a>
+<span class="sourceLineNo">252</span>    *    The converted bean, or the same map if the &lt;js&gt;"_type"&lt;/js&gt; entry wasn't found or didn't resolve to a bean.<a name="line.252"></a>
+<span class="sourceLineNo">253</span>    */<a name="line.253"></a>
+<span class="sourceLineNo">254</span>   protected final Object cast(ObjectMap m, BeanPropertyMeta pMeta, ClassMeta&lt;?&gt; eType) {<a name="line.254"></a>
+<span class="sourceLineNo">255</span><a name="line.255"></a>
+<span class="sourceLineNo">256</span>      String btpn = getBeanTypePropertyName(eType);<a name="line.256"></a>
 <span class="sourceLineNo">257</span><a name="line.257"></a>
-<span class="sourceLineNo">258</span>      String btpn = getBeanTypePropertyName(eType);<a name="line.258"></a>
-<span class="sourceLineNo">259</span><a name="line.259"></a>
-<span class="sourceLineNo">260</span>      Object o = m.get(btpn);<a name="line.260"></a>
-<span class="sourceLineNo">261</span>      if (o == null)<a name="line.261"></a>
-<span class="sourceLineNo">262</span>         return m;<a name="line.262"></a>
-<span class="sourceLineNo">263</span>      String typeName = o.toString();<a name="line.263"></a>
+<span class="sourceLineNo">258</span>      Object o = m.get(btpn);<a name="line.258"></a>
+<span class="sourceLineNo">259</span>      if (o == null)<a name="line.259"></a>
+<span class="sourceLineNo">260</span>         return m;<a name="line.260"></a>
+<span class="sourceLineNo">261</span>      String typeName = o.toString();<a name="line.261"></a>
+<span class="sourceLineNo">262</span><a name="line.262"></a>
+<span class="sourceLineNo">263</span>      ClassMeta&lt;?&gt; cm = getClassMeta(typeName, pMeta, eType);<a name="line.263"></a>
 <span class="sourceLineNo">264</span><a name="line.264"></a>
-<span class="sourceLineNo">265</span>      ClassMeta&lt;?&gt; cm = getClassMeta(typeName, pMeta, eType);<a name="line.265"></a>
-<span class="sourceLineNo">266</span><a name="line.266"></a>
-<span class="sourceLineNo">267</span>      if (cm != null) {<a name="line.267"></a>
-<span class="sourceLineNo">268</span>         BeanMap&lt;?&gt; bm = m.getBeanSession().newBeanMap(cm.getInnerClass());<a name="line.268"></a>
-<span class="sourceLineNo">269</span><a name="line.269"></a>
-<span class="sourceLineNo">270</span>         // Iterate through all the entries in the map and set the individual field values.<a name="line.270"></a>
-<span class="sourceLineNo">271</span>         for (Map.Entry&lt;String,Object&gt; e : m.entrySet()) {<a name="line.271"></a>
-<span class="sourceLineNo">272</span>            String k = e.getKey();<a name="line.272"></a>
-<span class="sourceLineNo">273</span>            Object v = e.getValue();<a name="line.273"></a>
-<span class="sourceLineNo">274</span>            if (! k.equals(btpn)) {<a name="line.274"></a>
-<span class="sourceLineNo">275</span>               // Attempt to recursively cast child maps.<a name="line.275"></a>
-<span class="sourceLineNo">276</span>               if (v instanceof ObjectMap)<a name="line.276"></a>
-<span class="sourceLineNo">277</span>                  v = cast((ObjectMap)v, pMeta, eType);<a name="line.277"></a>
-<span class="sourceLineNo">278</span>               bm.put(k, v);<a name="line.278"></a>
-<span class="sourceLineNo">279</span>            }<a name="line.279"></a>
-<span class="sourceLineNo">280</span>         }<a name="line.280"></a>
-<span class="sourceLineNo">281</span>         return bm.getBean();<a name="line.281"></a>
-<span class="sourceLineNo">282</span>      }<a name="line.282"></a>
-<span class="sourceLineNo">283</span><a name="line.283"></a>
-<span class="sourceLineNo">284</span>      return m;<a name="line.284"></a>
-<span class="sourceLineNo">285</span>   }<a name="line.285"></a>
-<span class="sourceLineNo">286</span><a name="line.286"></a>
-<span class="sourceLineNo">287</span>   /**<a name="line.287"></a>
-<span class="sourceLineNo">288</span>    * Give the specified dictionary name, resolve it to a class.<a name="line.288"></a>
-<span class="sourceLineNo">289</span>    *<a name="line.289"></a>
-<span class="sourceLineNo">290</span>    * @param typeName The dictionary name to resolve.<a name="line.290"></a>
-<span class="sourceLineNo">291</span>    * @param pMeta The bean property we're currently parsing.<a name="line.291"></a>
-<span class="sourceLineNo">292</span>    * @param eType The expected type we're currently parsing.<a name="line.292"></a>
-<span class="sourceLineNo">293</span>    * @return The resolved class, or &lt;jk&gt;null&lt;/jk&gt; if the type name could not be resolved.<a name="line.293"></a>
-<span class="sourceLineNo">294</span>    */<a name="line.294"></a>
-<span class="sourceLineNo">295</span>   protected final ClassMeta&lt;?&gt; getClassMeta(String typeName, BeanPropertyMeta pMeta, ClassMeta&lt;?&gt; eType) {<a name="line.295"></a>
-<span class="sourceLineNo">296</span>      BeanRegistry br = null;<a name="line.296"></a>
-<span class="sourceLineNo">297</span><a name="line.297"></a>
-<span class="sourceLineNo">298</span>      // Resolve via @BeanProperty(beanDictionary={})<a name="line.298"></a>
-<span class="sourceLineNo">299</span>      if (pMeta != null) {<a name="line.299"></a>
-<span class="sourceLineNo">300</span>         br = pMeta.getBeanRegistry();<a name="line.300"></a>
-<span class="sourceLineNo">301</span>         if (br != null &amp;&amp; br.hasName(typeName))<a name="line.301"></a>
-<span class="sourceLineNo">302</span>            return br.getClassMeta(typeName);<a name="line.302"></a>
-<span class="sourceLineNo">303</span>      }<a name="line.303"></a>
-<span class="sourceLineNo">304</span><a name="line.304"></a>
-<span class="sourceLineNo">305</span>      // Resolve via @Bean(beanDictionary={}) on the expected type where the<a name="line.305"></a>
-<span class="sourceLineNo">306</span>      // expected type is an interface with subclasses.<a name="line.306"></a>
-<span class="sourceLineNo">307</span>      if (eType != null) {<a name="line.307"></a>
-<span class="sourceLineNo">308</span>         br = eType.getBeanRegistry();<a name="line.308"></a>
-<span class="sourceLineNo">309</span>         if (br != null &amp;&amp; br.hasName(typeName))<a name="line.309"></a>
-<span class="sourceLineNo">310</span>            return br.getClassMeta(typeName);<a name="line.310"></a>
-<span class="sourceLineNo">311</span>      }<a name="line.311"></a>
-<span class="sourceLineNo">312</span><a name="line.312"></a>
-<span class="sourceLineNo">313</span>      // Last resort, resolve using the session registry.<a name="line.313"></a>
-<span class="sourceLineNo">314</span>      return getBeanRegistry().getClassMeta(typeName);<a name="line.314"></a>
-<span class="sourceLineNo">315</span>   }<a name="line.315"></a>
-<span class="sourceLineNo">316</span><a name="line.316"></a>
-<span class="sourceLineNo">317</span>   /**<a name="line.317"></a>
-<span class="sourceLineNo">318</span>    * Method that gets called when an unknown bean property name is encountered.<a name="line.318"></a>
-<span class="sourceLineNo">319</span>    *<a name="line.319"></a>
-<span class="sourceLineNo">320</span>    * @param pipe The parser input.<a name="line.320"></a>
-<span class="sourceLineNo">321</span>    * @param propertyName The unknown bean property name.<a name="line.321"></a>
-<span class="sourceLineNo">322</span>    * @param beanMap The bean that doesn't have the expected property.<a name="line.322"></a>
-<span class="sourceLineNo">323</span>    * @param line The line number where the property was found.  &lt;code&gt;-1&lt;/code&gt; if line numbers are not available.<a name="line.323"></a>
-<span class="sourceLineNo">324</span>    * @param col The column number where the property was found.  &lt;code&gt;-1&lt;/code&gt; if column numbers are not available.<a name="line.324"></a>
-<span class="sourceLineNo">325</span>    * @throws ParseException<a name="line.325"></a>
-<span class="sourceLineNo">326</span>    *    Automatically thrown if {@link BeanContext#BEAN_ignoreUnknownBeanProperties} setting on this parser is<a name="line.326"></a>
-<span class="sourceLineNo">327</span>    *    &lt;jk&gt;false&lt;/jk&gt;<a name="line.327"></a>
-<span class="sourceLineNo">328</span>    * @param &lt;T&gt; The class type of the bean map that doesn't have the expected property.<a name="line.328"></a>
-<span class="sourceLineNo">329</span>    */<a name="line.329"></a>
-<span class="sourceLineNo">330</span>   protected final &lt;T&gt; void onUnknownProperty(ParserPipe pipe, String propertyName, BeanMap&lt;T&gt; beanMap, int line, int col) throws ParseException {<a name="line.330"></a>
-<span class="sourceLineNo">331</span>      if (propertyName.equals(getBeanTypePropertyName(beanMap.getClassMeta())))<a name="line.331"></a>
-<span class="sourceLineNo">332</span>         return;<a name="line.332"></a>
-<span class="sourceLineNo">333</span>      if (! isIgnoreUnknownBeanProperties())<a name="line.333"></a>
-<span class="sourceLineNo">334</span>         throw new ParseException(getLastLocation(),<a name="line.334"></a>
-<span class="sourceLineNo">335</span>            "Unknown property ''{0}'' encountered while trying to parse into class ''{1}''", propertyName,<a name="line.335"></a>
-<span class="sourceLineNo">336</span>            beanMap.getClassMeta());<a name="line.336"></a>
-<span class="sourceLineNo">337</span>      if (listener != null)<a name="line.337"></a>
-<span class="sourceLineNo">338</span>         listener.onUnknownBeanProperty(this, pipe, propertyName, beanMap.getClassMeta().getInnerClass(), beanMap.getBean(),<a name="line.338"></a>
-<span class="sourceLineNo">339</span>            line, col);<a name="line.339"></a>
-<span class="sourceLineNo">340</span>   }<a name="line.340"></a>
-<span class="sourceLineNo">341</span><a name="line.341"></a>
-<span class="sourceLineNo">342</span>   /**<a name="line.342"></a>
-<span class="sourceLineNo">343</span>    * Parses input into the specified object type.<a name="line.343"></a>
-<span class="sourceLineNo">344</span>    *<a name="line.344"></a>
-<span class="sourceLineNo">345</span>    * &lt;p&gt;<a name="line.345"></a>
-<span class="sourceLineNo">346</span>    * The type can be a simple type (e.g. beans, strings, numbers) or parameterized type (collections/maps).<a name="line.346"></a>
-<span class="sourceLineNo">347</span>    *<a name="line.347"></a>
-<span class="sourceLineNo">348</span>    * &lt;h5 class='section'&gt;Examples:&lt;/h5&gt;<a name="line.348"></a>
-<span class="sourceLineNo">349</span>    * &lt;p class='bcode'&gt;<a name="line.349"></a>
-<span class="sourceLineNo">350</span>    *    ReaderParser p = JsonParser.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;;<a name="line.350"></a>
-<span class="sourceLineNo">351</span>    *<a name="line.351"></a>
-<span class="sourceLineNo">352</span>    *    &lt;jc&gt;// Parse into a linked-list of strings.&lt;/jc&gt;<a name="line.352"></a>
-<span class="sourceLineNo">353</span>    *    List l = p.parse(json, LinkedList.&lt;jk&gt;class&lt;/jk&gt;, String.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.353"></a>
-<span class="sourceLineNo">354</span>    *<a name="line.354"></a>
-<span class="sourceLineNo">355</span>    *    &lt;jc&gt;// Parse into a linked-list of beans.&lt;/jc&gt;<a name="line.355"></a>
-<span class="sourceLineNo">356</span>    *    List l = p.parse(json, LinkedList.&lt;jk&gt;class&lt;/jk&gt;, MyBean.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.356"></a>
-<span class="sourceLineNo">357</span>    *<a name="line.357"></a>
-<span class="sourceLineNo">358</span>    *    &lt;jc&gt;// Parse into a linked-list of linked-lists of strings.&lt;/jc&gt;<a name="line.358"></a>
-<span class="sourceLineNo">359</span>    *    List l = p.parse(json, LinkedList.&lt;jk&gt;class&lt;/jk&gt;, LinkedList.&lt;jk&gt;class&lt;/jk&gt;, String.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.359"></a>
-<span class="sourceLineNo">360</span>    *<a name="line.360"></a>
-<span class="sourceLineNo">361</span>    *    &lt;jc&gt;// Parse into a map of string keys/values.&lt;/jc&gt;<a name="line.361"></a>
-<span class="sourceLineNo">362</span>    *    Map m = p.parse(json, TreeMap.&lt;jk&gt;class&lt;/jk&gt;, String.&lt;jk&gt;class&lt;/jk&gt;, String.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.362"></a>
-<span class="sourceLineNo">363</span>    *<a name="line.363"></a>
-<span class="sourceLineNo">364</span>    *    &lt;jc&gt;// Parse into a map containing string keys and values of lists containing beans.&lt;/jc&gt;<a name="line.364"></a>
-<span class="sourceLineNo">365</span>    *    Map m = p.parse(json, TreeMap.&lt;jk&gt;class&lt;/jk&gt;, String.&lt;jk&gt;class&lt;/jk&gt;, List.&lt;jk&gt;class&lt;/jk&gt;, MyBean.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.365"></a>
-<span class="sourceLineNo">366</span>    * &lt;/p&gt;<a name="line.366"></a>
-<span class="sourceLineNo">367</span>    *<a name="line.367"></a>
-<span class="sourceLineNo">368</span>    * &lt;p&gt;<a name="line.368"></a>
-<span class="sourceLineNo">369</span>    * &lt;code&gt;Collection&lt;/code&gt; classes are assumed to be followed by zero or one objects indicating the element type.<a name="line.369"></a>
-<span class="sourceLineNo">370</span>    *<a name="line.370"></a>
-<span class="sourceLineNo">371</span>    * &lt;p&gt;<a name="line.371"></a>
-<span class="sourceLineNo">372</span>    * &lt;code&gt;Map&lt;/code&gt; classes are assumed to be followed by zero or two meta objects indicating the key and value types.<a name="line.372"></a>
-<span class="sourceLineNo">373</span>    *<a name="line.373"></a>
-<span class="sourceLineNo">374</span>    * &lt;p&gt;<a name="line.374"></a>
-<span class="sourceLineNo">375</span>    * The array can be arbitrarily long to indicate arbitrarily complex data structures.<a name="line.375"></a>
-<span class="sourceLineNo">376</span>    *<a name="line.376"></a>
-<span class="sourceLineNo">377</span>    * &lt;h5 class='section'&gt;Notes:&lt;/h5&gt;<a name="line.377"></a>
-<span class="sourceLineNo">378</span>    * &lt;ul&gt;<a name="line.378"></a>
-<span class="sourceLineNo">379</span>    *    &lt;li&gt;Use the {@link #parse(Object, Class)} method instead if you don't need a parameterized map/collection.<a name="line.379"></a>
-<span class="sourceLineNo">380</span>    * &lt;/ul&gt;<a name="line.380"></a>
-<span class="sourceLineNo">381</span>    *<a name="line.381"></a>
-<span class="sourceLineNo">382</span>    * @param &lt;T&gt; The class type of the object to create.<a name="line.382"></a>
-<span class="sourceLineNo">383</span>    * @param input<a name="line.383"></a>
-<span class="sourceLineNo">384</span>    *    The input.<a name="line.384"></a>
-<span class="sourceLineNo">385</span>    *    &lt;br&gt;Character-based parsers can handle the following input class types:<a name="line.385"></a>
-<span class="sourceLineNo">386</span>    *    &lt;ul&gt;<a name="line.386"></a>
-<span class="sourceLineNo">387</span>    *       &lt;li&gt;&lt;jk&gt;null&lt;/jk&gt;<a name="line.387"></a>
-<span class="sourceLineNo">388</span>    *       &lt;li&gt;{@link Reader}<a name="line.388"></a>
-<span class="sourceLineNo">389</span>    *       &lt;li&gt;{@link CharSequence}<a name="line.389"></a>
-<span class="sourceLineNo">390</span>    *       &lt;li&gt;{@link InputStream} containing UTF-8 encoded text (or charset defined by<a name="line.390"></a>
+<span class="sourceLineNo">265</span>      if (cm != null) {<a name="line.265"></a>
+<span class="sourceLineNo">266</span>         BeanMap&lt;?&gt; bm = m.getBeanSession().newBeanMap(cm.getInnerClass());<a name="line.266"></a>
+<span class="sourceLineNo">267</span><a name="line.267"></a>
+<span class="sourceLineNo">268</span>         // Iterate through all the entries in the map and set the individual field values.<a name="line.268"></a>
+<span class="sourceLineNo">269</span>         for (Map.Entry&lt;String,Object&gt; e : m.entrySet()) {<a name="line.269"></a>
+<span class="sourceLineNo">270</span>            String k = e.getKey();<a name="line.270"></a>
+<span class="sourceLineNo">271</span>            Object v = e.getValue();<a name="line.271"></a>
+<span class="sourceLineNo">272</span>            if (! k.equals(btpn)) {<a name="line.272"></a>
+<span class="sourceLineNo">273</span>               // Attempt to recursively cast child maps.<a name="line.273"></a>
+<span class="sourceLineNo">274</span>               if (v instanceof ObjectMap)<a name="line.274"></a>
+<span class="sourceLineNo">275</span>                  v = cast((ObjectMap)v, pMeta, eType);<a name="line.275"></a>
+<span class="sourceLineNo">276</span>               bm.put(k, v);<a name="line.276"></a>
+<span class="sourceLineNo">277</span>            }<a name="line.277"></a>
+<span class="sourceLineNo">278</span>         }<a name="line.278"></a>
+<span class="sourceLineNo">279</span>         return bm.getBean();<a name="line.279"></a>
+<span class="sourceLineNo">280</span>      }<a name="line.280"></a>
+<span class="sourceLineNo">281</span><a name="line.281"></a>
+<span class="sourceLineNo">282</span>      return m;<a name="line.282"></a>
+<span class="sourceLineNo">283</span>   }<a name="line.283"></a>
+<span class="sourceLineNo">284</span><a name="line.284"></a>
+<span class="sourceLineNo">285</span>   /**<a name="line.285"></a>
+<span class="sourceLineNo">286</span>    * Give the specified dictionary name, resolve it to a class.<a name="line.286"></a>
+<span class="sourceLineNo">287</span>    *<a name="line.287"></a>
+<span class="sourceLineNo">288</span>    * @param typeName The dictionary name to resolve.<a name="line.288"></a>
+<span class="sourceLineNo">289</span>    * @param pMeta The bean property we're currently parsing.<a name="line.289"></a>
+<span class="sourceLineNo">290</span>    * @param eType The expected type we're currently parsing.<a name="line.290"></a>
+<span class="sourceLineNo">291</span>    * @return The resolved class, or &lt;jk&gt;null&lt;/jk&gt; if the type name could not be resolved.<a name="line.291"></a>
+<span class="sourceLineNo">292</span>    */<a name="line.292"></a>
+<span class="sourceLineNo">293</span>   protected final ClassMeta&lt;?&gt; getClassMeta(String typeName, BeanPropertyMeta pMeta, ClassMeta&lt;?&gt; eType) {<a name="line.293"></a>
+<span class="sourceLineNo">294</span>      BeanRegistry br = null;<a name="line.294"></a>
+<span class="sourceLineNo">295</span><a name="line.295"></a>
+<span class="sourceLineNo">296</span>      // Resolve via @BeanProperty(beanDictionary={})<a name="line.296"></a>
+<span class="sourceLineNo">297</span>      if (pMeta != null) {<a name="line.297"></a>
+<span class="sourceLineNo">298</span>         br = pMeta.getBeanRegistry();<a name="line.298"></a>
+<span class="sourceLineNo">299</span>         if (br != null &amp;&amp; br.hasName(typeName))<a name="line.299"></a>
+<span class="sourceLineNo">300</span>            return br.getClassMeta(typeName);<a name="line.300"></a>
+<span class="sourceLineNo">301</span>      }<a name="line.301"></a>
+<span class="sourceLineNo">302</span><a name="line.302"></a>
+<span class="sourceLineNo">303</span>      // Resolve via @Bean(beanDictionary={}) on the expected type where the<a name="line.303"></a>
+<span class="sourceLineNo">304</span>      // expected type is an interface with subclasses.<a name="line.304"></a>
+<span class="sourceLineNo">305</span>      if (eType != null) {<a name="line.305"></a>
+<span class="sourceLineNo">306</span>         br = eType.getBeanRegistry();<a name="line.306"></a>
+<span class="sourceLineNo">307</span>         if (br != null &amp;&amp; br.hasName(typeName))<a name="line.307"></a>
+<span class="sourceLineNo">308</span>            return br.getClassMeta(typeName);<a name="line.308"></a>
+<span class="sourceLineNo">309</span>      }<a name="line.309"></a>
+<span class="sourceLineNo">310</span><a name="line.310"></a>
+<span class="sourceLineNo">311</span>      // Last resort, resolve using the session registry.<a name="line.311"></a>
+<span class="sourceLineNo">312</span>      return getBeanRegistry().getClassMeta(typeName);<a name="line.312"></a>
+<span class="sourceLineNo">313</span>   }<a name="line.313"></a>
+<span class="sourceLineNo">314</span><a name="line.314"></a>
+<span class="sourceLineNo">315</span>   /**<a name="line.315"></a>
+<span class="sourceLineNo">316</span>    * Method that gets called when an unknown bean property name is encountered.<a name="line.316"></a>
+<span class="sourceLineNo">317</span>    *<a name="line.317"></a>
+<span class="sourceLineNo">318</span>    * @param pipe The parser input.<a name="line.318"></a>
+<span class="sourceLineNo">319</span>    * @param propertyName The unknown bean property name.<a name="line.319"></a>
+<span class="sourceLineNo">320</span>    * @param beanMap The bean that doesn't have the expected property.<a name="line.320"></a>
+<span class="sourceLineNo">321</span>    * @param line The line number where the property was found.  &lt;code&gt;-1&lt;/code&gt; if line numbers are not available.<a name="line.321"></a>
+<span class="sourceLineNo">322</span>    * @param col The column number where the property was found.  &lt;code&gt;-1&lt;/code&gt; if column numbers are not available.<a name="line.322"></a>
+<span class="sourceLineNo">323</span>    * @throws ParseException<a name="line.323"></a>
+<span class="sourceLineNo">324</span>    *    Automatically thrown if {@link BeanContext#BEAN_ignoreUnknownBeanProperties} setting on this parser is<a name="line.324"></a>
+<span class="sourceLineNo">325</span>    *    &lt;jk&gt;false&lt;/jk&gt;<a name="line.325"></a>
+<span class="sourceLineNo">326</span>    * @param &lt;T&gt; The class type of the bean map that doesn't have the expected property.<a name="line.326"></a>
+<span class="sourceLineNo">327</span>    */<a name="line.327"></a>
+<span class="sourceLineNo">328</span>   protected final &lt;T&gt; void onUnknownProperty(ParserPipe pipe, String propertyName, BeanMap&lt;T&gt; beanMap, int line, int col) throws ParseException {<a name="line.328"></a>
+<span class="sourceLineNo">329</span>      if (propertyName.equals(getBeanTypePropertyName(beanMap.getClassMeta())))<a name="line.329"></a>
+<span class="sourceLineNo">330</span>         return;<a name="line.330"></a>
+<span class="sourceLineNo">331</span>      if (! isIgnoreUnknownBeanProperties())<a name="line.331"></a>
+<span class="sourceLineNo">332</span>         throw new ParseException(getLastLocation(),<a name="line.332"></a>
+<span class="sourceLineNo">333</span>            "Unknown property ''{0}'' encountered while trying to parse into class ''{1}''", propertyName,<a name="line.333"></a>
+<span class="sourceLineNo">334</span>            beanMap.getClassMeta());<a name="line.334"></a>
+<span class="sourceLineNo">335</span>      if (listener != null)<a name="line.335"></a>
+<span class="sourceLineNo">336</span>         listener.onUnknownBeanProperty(this, pipe, propertyName, beanMap.getClassMeta().getInnerClass(), beanMap.getBean(),<a name="line.336"></a>
+<span class="sourceLineNo">337</span>            line, col);<a name="line.337"></a>
+<span class="sourceLineNo">338</span>   }<a name="line.338"></a>
+<span class="sourceLineNo">339</span><a name="line.339"></a>
+<span class="sourceLineNo">340</span>   /**<a name="line.340"></a>
+<span class="sourceLineNo">341</span>    * Parses input into the specified object type.<a name="line.341"></a>
+<span class="sourceLineNo">342</span>    *<a name="line.342"></a>
+<span class="sourceLineNo">343</span>    * &lt;p&gt;<a name="line.343"></a>
+<span class="sourceLineNo">344</span>    * The type can be a simple type (e.g. beans, strings, numbers) or parameterized type (collections/maps).<a name="line.344"></a>
+<span class="sourceLineNo">345</span>    *<a name="line.345"></a>
+<span class="sourceLineNo">346</span>    * &lt;h5 class='section'&gt;Examples:&lt;/h5&gt;<a name="line.346"></a>
+<span class="sourceLineNo">347</span>    * &lt;p class='bcode'&gt;<a name="line.347"></a>
+<span class="sourceLineNo">348</span>    *    ReaderParser p = JsonParser.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;;<a name="line.348"></a>
+<span class="sourceLineNo">349</span>    *<a name="line.349"></a>
+<span class="sourceLineNo">350</span>    *    &lt;jc&gt;// Parse into a linked-list of strings.&lt;/jc&gt;<a name="line.350"></a>
+<span class="sourceLineNo">351</span>    *    List l = p.parse(json, LinkedList.&lt;jk&gt;class&lt;/jk&gt;, String.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.351"></a>
+<span class="sourceLineNo">352</span>    *<a name="line.352"></a>
+<span class="sourceLineNo">353</span>    *    &lt;jc&gt;// Parse into a linked-list of beans.&lt;/jc&gt;<a name="line.353"></a>
+<span class="sourceLineNo">354</span>    *    List l = p.parse(json, LinkedList.&lt;jk&gt;class&lt;/jk&gt;, MyBean.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.354"></a>
+<span class="sourceLineNo">355</span>    *<a name="line.355"></a>
+<span class="sourceLineNo">356</span>    *    &lt;jc&gt;// Parse into a linked-list of linked-lists of strings.&lt;/jc&gt;<a name="line.356"></a>
+<span class="sourceLineNo">357</span>    *    List l = p.parse(json, LinkedList.&lt;jk&gt;class&lt;/jk&gt;, LinkedList.&lt;jk&gt;class&lt;/jk&gt;, String.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.357"></a>
+<span class="sourceLineNo">358</span>    *<a name="line.358"></a>
+<span class="sourceLineNo">359</span>    *    &lt;jc&gt;// Parse into a map of string keys/values.&lt;/jc&gt;<a name="line.359"></a>
+<span class="sourceLineNo">360</span>    *    Map m = p.parse(json, TreeMap.&lt;jk&gt;class&lt;/jk&gt;, String.&lt;jk&gt;class&lt;/jk&gt;, String.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.360"></a>
+<span class="sourceLineNo">361</span>    *<a name="line.361"></a>
+<span class="sourceLineNo">362</span>    *    &lt;jc&gt;// Parse into a map containing string keys and values of lists containing beans.&lt;/jc&gt;<a name="line.362"></a>
+<span class="sourceLineNo">363</span>    *    Map m = p.parse(json, TreeMap.&lt;jk&gt;class&lt;/jk&gt;, String.&lt;jk&gt;class&lt;/jk&gt;, List.&lt;jk&gt;class&lt;/jk&gt;, MyBean.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.363"></a>
+<span class="sourceLineNo">364</span>    * &lt;/p&gt;<a name="line.364"></a>
+<span class="sourceLineNo">365</span>    *<a name="line.365"></a>
+<span class="sourceLineNo">366</span>    * &lt;p&gt;<a name="line.366"></a>
+<span class="sourceLineNo">367</span>    * &lt;code&gt;Collection&lt;/code&gt; classes are assumed to be followed by zero or one objects indicating the element type.<a name="line.367"></a>
+<span class="sourceLineNo">368</span>    *<a name="line.368"></a>
+<span class="sourceLineNo">369</span>    * &lt;p&gt;<a name="line.369"></a>
+<span class="sourceLineNo">370</span>    * &lt;code&gt;Map&lt;/code&gt; classes are assumed to be followed by zero or two meta objects indicating the key and value types.<a name="line.370"></a>
+<span class="sourceLineNo">371</span>    *<a name="line.371"></a>
+<span class="sourceLineNo">372</span>    * &lt;p&gt;<a name="line.372"></a>
+<span class="sourceLineNo">373</span>    * The array can be arbitrarily long to indicate arbitrarily complex data structures.<a name="line.373"></a>
+<span class="sourceLineNo">374</span>    *<a name="line.374"></a>
+<span class="sourceLineNo">375</span>    * &lt;h5 class='section'&gt;Notes:&lt;/h5&gt;<a name="line.375"></a>
+<span class="sourceLineNo">376</span>    * &lt;ul&gt;<a name="line.376"></a>
+<span class="sourceLineNo">377</span>    *    &lt;li&gt;Use the {@link #parse(Object, Class)} method instead if you don't need a parameterized map/collection.<a name="line.377"></a>
+<span class="sourceLineNo">378</span>    * &lt;/ul&gt;<a name="line.378"></a>
+<span class="sourceLineNo">379</span>    *<a name="line.379"></a>
+<span class="sourceLineNo">380</span>    * @param &lt;T&gt; The class type of the object to create.<a name="line.380"></a>
+<span class="sourceLineNo">381</span>    * @param input<a name="line.381"></a>
+<span class="sourceLineNo">382</span>    *    The input.<a name="line.382"></a>
+<span class="sourceLineNo">383</span>    *    &lt;br&gt;Character-based parsers can handle the following input class types:<a name="line.383"></a>
+<span class="sourceLineNo">384</span>    *    &lt;ul&gt;<a name="line.384"></a>
+<span class="sourceLineNo">385</span>    *       &lt;li&gt;&lt;jk&gt;null&lt;/jk&gt;<a name="line.385"></a>
+<span class="sourceLineNo">386</span>    *       &lt;li&gt;{@link Reader}<a name="line.386"></a>
+<span class="sourceLineNo">387</span>    *       &lt;li&gt;{@link CharSequence}<a name="line.387"></a>
+<span class="sourceLineNo">388</span>    *       &lt;li&gt;{@link InputStream} containing UTF-8 encoded text (or charset defined by<a name="line.388"></a>
+<span class="sourceLineNo">389</span>    *          {@link ParserContext#PARSER_inputStreamCharset} property value).<a name="line.389"></a>
+<span class="sourceLineNo">390</span>    *       &lt;li&gt;&lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;[]&lt;/code&gt; containing UTF-8 encoded text (or charset defined by<a name="line.390"></a>
 <span class="sourceLineNo">391</span>    *          {@link ParserContext#PARSER_inputStreamCharset} property value).<a name="line.391"></a>
-<span class="sourceLineNo">392</span>    *       &lt;li&gt;&lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;[]&lt;/code&gt; containing UTF-8 encoded text (or charset defined by<a name="line.392"></a>
-<span class="sourceLineNo">393</span>    *          {@link ParserContext#PARSER_inputStreamCharset} property value).<a name="line.393"></a>
-<span class="sourceLineNo">394</span>    *       &lt;li&gt;{@link File} containing system encoded text (or charset defined by<a name="line.394"></a>
-<span class="sourceLineNo">395</span>    *          {@link ParserContext#PARSER_fileCharset} property value).<a name="line.395"></a>
-<span class="sourceLineNo">396</span>    *    &lt;/ul&gt;<a name="line.396"></a>
-<span class="sourceLineNo">397</span>    *    &lt;br&gt;Stream-based parsers can handle the following input class types:<a name="line.397"></a>
-<span class="sourceLineNo">398</span>    *    &lt;ul&gt;<a name="line.398"></a>
-<span class="sourceLineNo">399</span>    *       &lt;li&gt;&lt;jk&gt;null&lt;/jk&gt;<a name="line.399"></a>
-<span class="sourceLineNo">400</span>    *       &lt;li&gt;{@link InputStream}<a name="line.400"></a>
-<span class="sourceLineNo">401</span>    *       &lt;li&gt;&lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;[]&lt;/code&gt;<a name="line.401"></a>
-<span class="sourceLineNo">402</span>    *       &lt;li&gt;{@link File}<a name="line.402"></a>
-<span class="sourceLineNo">403</span>    *    &lt;/ul&gt;<a name="line.403"></a>
-<span class="sourceLineNo">404</span>    * @param type<a name="line.404"></a>
-<span class="sourceLineNo">405</span>    *    The object type to create.<a name="line.405"></a>
-<span class="sourceLineNo">406</span>    *    &lt;br&gt;Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},<a name="line.406"></a>
-<span class="sourceLineNo">407</span>    *    {@link GenericArrayType}<a name="line.407"></a>
-<span class="sourceLineNo">408</span>    * @param args<a name="line.408"></a>
-<span class="sourceLineNo">409</span>    *    The type arguments of the class if it's a collection or map.<a name="line.409"></a>
-<span class="sourceLineNo">410</span>    *    &lt;br&gt;Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},<a name="line.410"></a>
-<span class="sourceLineNo">411</span>    *    {@link GenericArrayType}<a name="line.411"></a>
-<span class="sourceLineNo">412</span>    *    &lt;br&gt;Ignored if the main type is not a map or collection.<a name="line.412"></a>
-<span class="sourceLineNo">413</span>    * @return The parsed object.<a name="line.413"></a>
-<span class="sourceLineNo">414</span>    * @throws ParseException<a name="line.414"></a>
-<span class="sourceLineNo">415</span>    *    If the input contains a syntax error or is malformed, or is not valid for the specified type.<a name="line.415"></a>
-<span class="sourceLineNo">416</span>    * @see BeanSession#getClassMeta(Type,Type...) for argument syntax for maps and collections.<a name="line.416"></a>
-<span class="sourceLineNo">417</span>    */<a name="line.417"></a>
-<span class="sourceLineNo">418</span>   @SuppressWarnings("unchecked")<a name="line.418"></a>
-<span class="sourceLineNo">419</span>   public final &lt;T&gt; T parse(Object input, Type type, Type...args) throws ParseException {<a name="line.419"></a>
-<span class="sourceLineNo">420</span>      ParserPipe pipe = createPipe(input);<a name="line.420"></a>
-<span class="sourceLineNo">421</span>      try {<a name="line.421"></a>
-<span class="sourceLineNo">422</span>         return (T)parseInner(pipe, getClassMeta(type, args));<a name="line.422"></a>
-<span class="sourceLineNo">423</span>      } finally {<a name="line.423"></a>
-<span class="sourceLineNo">424</span>         pipe.close();<a name="line.424"></a>
-<span class="sourceLineNo">425</span>      }<a name="line.425"></a>
-<span class="sourceLineNo">426</span>   }<a name="line.426"></a>
-<span class="sourceLineNo">427</span><a name="line.427"></a>
-<span class="sourceLineNo">428</span>   /**<a name="line.428"></a>
-<span class="sourceLineNo">429</span>    * Same as {@link #parse(Object, Type, Type...)} except optimized for a non-parameterized class.<a name="line.429"></a>
-<span class="sourceLineNo">430</span>    *<a name="line.430"></a>
-<span class="sourceLineNo">431</span>    * &lt;p&gt;<a name="line.431"></a>
-<span class="sourceLineNo">432</span>    * This is the preferred parse method for simple types since you don't need to cast the results.<a name="line.432"></a>
-<span class="sourceLineNo">433</span>    *<a name="line.433"></a>
-<span class="sourceLineNo">434</span>    * &lt;h5 class='section'&gt;Examples:&lt;/h5&gt;<a name="line.434"></a>
-<span class="sourceLineNo">435</span>    * &lt;p class='bcode'&gt;<a name="line.435"></a>
-<span class="sourceLineNo">436</span>    *    ReaderParser p = JsonParser.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;;<a name="line.436"></a>
-<span class="sourceLineNo">437</span>    *<a name="line.437"></a>
-<span class="sourceLineNo">438</span>    *    &lt;jc&gt;// Parse into a string.&lt;/jc&gt;<a name="line.438"></a>
-<span class="sourceLineNo">439</span>    *    String s = p.parse(json, String.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.439"></a>
-<span class="sourceLineNo">440</span>    *<a name="line.440"></a>
-<span class="sourceLineNo">441</span>    *    &lt;jc&gt;// Parse into a bean.&lt;/jc&gt;<a name="line.441"></a>
-<span class="sourceLineNo">442</span>    *    MyBean b = p.parse(json, MyBean.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.442"></a>
-<span class="sourceLineNo">443</span>    *<a name="line.443"></a>
-<span class="sourceLineNo">444</span>    *    &lt;jc&gt;// Parse into a bean array.&lt;/jc&gt;<a name="line.444"></a>
-<span class="sourceLineNo">445</span>    *    MyBean[] ba = p.parse(json, MyBean[].&lt;jk&gt;class&lt;/jk&gt;);<a name="line.445"></a>
-<span class="sourceLineNo">446</span>    *<a name="line.446"></a>
-<span class="sourceLineNo">447</span>    *    &lt;jc&gt;// Parse into a linked-list of objects.&lt;/jc&gt;<a name="line.447"></a>
-<span class="sourceLineNo">448</span>    *    List l = p.parse(json, LinkedList.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.448"></a>
-<span class="sourceLineNo">449</span>    *<a name="line.449"></a>
-<span class="sourceLineNo">450</span>    *    &lt;jc&gt;// Parse into a map of object keys/values.&lt;/jc&gt;<a name="line.450"></a>
-<span class="sourceLineNo">451</span>    *    Map m = p.parse(json, TreeMap.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.451"></a>
-<span class="sourceLineNo">452</span>    * &lt;/p&gt;<a name="line.452"></a>
-<span class="sourceLineNo">453</span>    *<a name="line.453"></a>
-<span class="sourceLineNo">454</span>    * @param &lt;T&gt; The class type of the object being created.<a name="line.454"></a>
-<span class="sourceLineNo">455</span>    * @param input<a name="line.455"></a>
-<span class="sourceLineNo">456</span>    *    The input.<a name="line.456"></a>
-<span class="sourceLineNo">457</span>    *    See {@link #parse(Object, Type, Type...)} for details.<a name="line.457"></a>
-<span class="sourceLineNo">458</span>    * @param type The object type to create.<a name="line.458"></a>
-<span class="sourceLineNo">459</span>    * @return The parsed object.<a name="line.459"></a>
-<span class="sourceLineNo">460</span>    * @throws ParseException<a name="line.460"></a>
-<span class="sourceLineNo">461</span>    *    If the input contains a syntax error or is malformed, or is not valid for the specified type.<a name="line.461"></a>
-<span class="sourceLineNo">462</span>    */<a name="line.462"></a>
-<span class="sourceLineNo">463</span>   public final &lt;T&gt; T parse(Object input, Class&lt;T&gt; type) throws ParseException {<a name="line.463"></a>
-<span class="sourceLineNo">464</span>      ParserPipe pipe = createPipe(input);<a name="line.464"></a>
-<span class="sourceLineNo">465</span>      try {<a name="line.465"></a>
-<span class="sourceLineNo">466</span>         return parseInner(pipe, getClassMeta(type));<a name="line.466"></a>
-<span class="sourceLineNo">467</span>      } finally {<a name="line.467"></a>
-<span class="sourceLineNo">468</span>         pipe.close();<a name="line.468"></a>
-<span class="sourceLineNo">469</span>      }<a name="line.469"></a>
-<span class="sourceLineNo">470</span>   }<a name="line.470"></a>
-<span class="sourceLineNo">471</span><a name="line.471"></a>
-<span class="sourceLineNo">472</span>   /**<a name="line.472"></a>
-<span class="sourceLineNo">473</span>    * Same as {@link #parse(Object, Type, Type...)} except the type has already been converted into a {@link ClassMeta}<a name="line.473"></a>
-<span class="sourceLineNo">474</span>    * object.<a name="line.474"></a>
-<span class="sourceLineNo">475</span>    *<a name="line.475"></a>
-<span class="sourceLineNo">476</span>    * &lt;p&gt;<a name="line.476"></a>
-<span class="sourceLineNo">477</span>    * This is mostly an internal method used by the framework.<a name="line.477"></a>
-<span class="sourceLineNo">478</span>    *<a name="line.478"></a>
-<span class="sourceLineNo">479</span>    * @param &lt;T&gt; The class type of the object being created.<a name="line.479"></a>
-<span class="sourceLineNo">480</span>    * @param input<a name="line.480"></a>
-<span class="sourceLineNo">481</span>    *    The input.<a name="line.481"></a>
-<span class="sourceLineNo">482</span>    *    See {@link #parse(Object, Type, Type...)} for details.<a name="line.482"></a>
-<span class="sourceLineNo">483</span>    * @param type The object type to create.<a name="line.483"></a>
-<span class="sourceLineNo">484</span>    * @return The parsed object.<a name="line.484"></a>
-<span class="sourceLineNo">485</span>    * @throws ParseException<a name="line.485"></a>
-<span class="sourceLineNo">486</span>    *    If the input contains a syntax error or is malformed, or is not valid for the specified type.<a name="line.486"></a>
-<span class="sourceLineNo">487</span>    */<a name="line.487"></a>
-<span class="sourceLineNo">488</span>   public final &lt;T&gt; T parse(Object input, ClassMeta&lt;T&gt; type) throws ParseException {<a name="line.488"></a>
-<span class="sourceLineNo">489</span>      ParserPipe pipe = createPipe(input);<a name="line.489"></a>
-<span class="sourceLineNo">490</span>      try {<a name="line.490"></a>
-<span class="sourceLineNo">491</span>         return parseInner(pipe, type);<a name="line.491"></a>
-<span class="sourceLineNo">492</span>      } finally {<a name="line.492"></a>
-<span class="sourceLineNo">493</span>         pipe.close();<a name="line.493"></a>
-<span class="sourceLineNo">494</span>      }<a name="line.494"></a>
-<span class="sourceLineNo">495</span>   }<a name="line.495"></a>
-<span class="sourceLineNo">496</span><a name="line.496"></a>
-<span class="sourceLineNo">497</span>   /**<a name="line.497"></a>
-<span class="sourceLineNo">498</span>    * Entry point for all parsing calls.<a name="line.498"></a>
-<span class="sourceLineNo">499</span>    *<a name="line.499"></a>
-<span class="sourceLineNo">500</span>    * &lt;p&gt;<a name="line.500"></a>
-<span class="sourceLineNo">501</span>    * Calls the {@link #doParse(ParserPipe, ClassMeta)} implementation class and catches/re-wraps any exceptions<a name="line.501"></a>
-<span class="sourceLineNo">502</span>    * thrown.<a name="line.502"></a>
-<span class="sourceLineNo">503</span>    *<a name="line.503"></a>
-<span class="sourceLineNo">504</span>    * @param pipe The parser input.<a name="line.504"></a>
-<span class="sourceLineNo">505</span>    * @param type The class type of the object to create.<a name="line.505"></a>
-<span class="sourceLineNo">506</span>    * @param &lt;T&gt; The class type of the object to create.<a name="line.506"></a>
-<span class="sourceLineNo">507</span>    * @return The parsed object.<a name="line.507"></a>
-<span class="sourceLineNo">508</span>    * @throws ParseException<a name="line.508"></a>
-<span class="sourceLineNo">509</span>    *    If the input contains a syntax error or is malformed, or is not valid for the specified type.<a name="line.509"></a>
-<span class="sourceLineNo">510</span>    */<a name="line.510"></a>
-<span class="sourceLineNo">511</span>   private &lt;T&gt; T parseInner(ParserPipe pipe, ClassMeta&lt;T&gt; type) throws ParseException {<a name="line.511"></a>
-<span class="sourceLineNo">512</span>      try {<a name="line.512"></a>
-<span class="sourceLineNo">513</span>         if (type.isVoid())<a name="line.513"></a>
-<span class="sourceLineNo">514</span>            return null;<a name="line.514"></a>
-<span class="sourceLineNo">515</span>         return doParse(pipe, type);<a name="line.515"></a>
-<span class="sourceLineNo">516</span>      } catch (ParseException e) {<a name="line.516"></a>
-<span class="sourceLineNo">517</span>         throw e;<a name="line.517"></a>
-<span class="sourceLineNo">518</span>      } catch (StackOverflowError e) {<a name="line.518"></a>
-<span class="sourceLineNo">519</span>         throw new ParseException(getLastLocation(), "Depth too deep.  Stack overflow occurred.");<a name="line.519"></a>
-<span class="sourceLineNo">520</span>      } catch (IOException e) {<a name="line.520"></a>
-<span class="sourceLineNo">521</span>         throw new ParseException(getLastLocation(), "I/O exception occurred.  exception={0}, message={1}.",<a name="line.521"></a>
-<span class="sourceLineNo">522</span>            e.getClass().getSimpleName(), e.getLocalizedMessage()).initCause(e);<a name="line.522"></a>
-<span class="sourceLineNo">523</span>      } catch (Exception e) {<a name="line.523"></a>
-<span class="sourceLineNo">524</span>         throw new ParseException(getLastLocation(), "Exception occurred.  exception={0}, message={1}.",<a name="line.524"></a>
-<span class="sourceLineNo">525</span>            e.getClass().getSimpleName(), e.getLocalizedMessage()).initCause(e);<a name="line.525"></a>
-<span class="sourceLineNo">526</span>      }<a name="line.526"></a>
-<span class="sourceLineNo">527</span>   }<a name="line.527"></a>
-<span class="sourceLineNo">528</span><a name="line.528"></a>
-<span class="sourceLineNo">529</span>   /**<a name="line.529"></a>
-<span class="sourceLineNo">530</span>    * Parses the contents of the specified reader and loads the results into the specified map.<a name="line.530"></a>
-<span class="sourceLineNo">531</span>    *<a name="line.531"></a>
-<span class="sourceLineNo">532</span>    * &lt;p&gt;<a name="line.532"></a>
-<span class="sourceLineNo">533</span>    * Reader must contain something that serializes to a map (such as text containing a JSON object).<a name="line.533"></a>
-<span class="sourceLineNo">534</span>    *<a name="line.534"></a>
-<span class="sourceLineNo">535</span>    * &lt;p&gt;<a name="line.535"></a>
-<span class="sourceLineNo">536</span>    * Used in the following locations:<a name="line.536"></a>
-<span class="sourceLineNo">537</span>    * &lt;ul class='spaced-list'&gt;<a name="line.537"></a>
-<span class="sourceLineNo">538</span>    *    &lt;li&gt;<a name="line.538"></a>
-<span class="sourceLineNo">539</span>    *       The various character-based constructors in {@link ObjectMap} (e.g.<a name="line.539"></a>
-<span class="sourceLineNo">540</span>    *       {@link ObjectMap#ObjectMap(CharSequence,Parser)}).<a name="line.540"></a>
-<span class="sourceLineNo">541</span>    * &lt;/ul&gt;<a name="line.541"></a>
-<span class="sourceLineNo">542</span>    *<a name="line.542"></a>
-<span class="sourceLineNo">543</span>    * @param &lt;K&gt; The key class type.<a name="line.543"></a>
-<span class="sourceLineNo">544</span>    * @param &lt;V&gt; The value class type.<a name="line.544"></a>
-<span class="sourceLineNo">545</span>    * @param input The input.  See {@link #parse(Object, ClassMeta)} for supported input types.<a name="line.545"></a>
-<span class="sourceLineNo">546</span>    * @param m The map being loaded.<a name="line.546"></a>
-<span class="sourceLineNo">547</span>    * @param keyType The class type of the keys, or &lt;jk&gt;null&lt;/jk&gt; to default to &lt;code&gt;String.&lt;jk&gt;class&lt;/jk&gt;&lt;/code&gt;.<a name="line.547"></a>
-<span class="sourceLineNo">548</span>    * @param valueType The class type of the values, or &lt;jk&gt;null&lt;/jk&gt; to default to whatever is being parsed.<a name="line.548"></a>
-<span class="sourceLineNo">549</span>    * @return The same map that was passed in to allow this method to be chained.<a name="line.549"></a>
-<span class="sourceLineNo">550</span>    * @throws ParseException If the input contains a syntax error or is malformed, or is not valid for the specified type.<a name="line.550"></a>
-<span class="sourceLineNo">551</span>    * @throws UnsupportedOperationException If not implemented.<a name="line.551"></a>
-<span class="sourceLineNo">552</span>    */<a name="line.552"></a>
-<span class="sourceLineNo">553</span>   public final &lt;K,V&gt; Map&lt;K,V&gt; parseIntoMap(Object input, Map&lt;K,V&gt; m, Type keyType, Type valueType) throws ParseException {<a name="line.553"></a>
-<span class="sourceLineNo">554</span>      ParserPipe pipe = createPipe(input);<a name="line.554"></a>
-<span class="sourceLineNo">555</span>      try {<a name="line.555"></a>
-<span class="sourceLineNo">556</span>         return doParseIntoMap(pipe, m, keyType, valueType);<a name="line.556"></a>
-<span class="sourceLineNo">557</span>      } catch (ParseException e) {<a name="line.557"></a>
-<span class="sourceLineNo">558</span>         throw e;<a name="line.558"></a>
-<span class="sourceLineNo">559</span>      } catch (Exception e) {<a name="line.559"></a>
-<span class="sourceLineNo">560</span>         throw new ParseException(getLastLocation(), e);<a name="line.560"></a>
-<span class="sourceLineNo">561</span>      } finally {<a name="line.561"></a>
-<span class="sourceLineNo">562</span>         pipe.close();<a name="line.562"></a>
-<span class="sourceLineNo">563</span>      }<a name="line.563"></a>
-<span class="sourceLineNo">564</span>   }<a name="line.564"></a>
-<span class="sourceLineNo">565</span><a name="line.565"></a>
-<span class="sourceLineNo">566</span>   /**<a name="line.566"></a>
-<span class="sourceLineNo">567</span>    * Implementation method.<a name="line.567"></a>
-<span class="sourceLineNo">568</span>    *<a name="line.568"></a>
-<span class="sourceLineNo">569</span>    * &lt;p&gt;<a name="line.569"></a>
-<span class="sourceLineNo">570</span>    * Default implementation throws an {@link UnsupportedOperationException}.<a name="line.570"></a>
-<span class="sourceLineNo">571</span>    *<a name="line.571"></a>
-<span class="sourceLineNo">572</span>    * @param pipe The parser input.<a name="line.572"></a>
-<span class="sourceLineNo">573</span>    * @param m The map being loaded.<a name="line.573"></a>
-<span class="sourceLineNo">574</span>    * @param keyType The class type of the keys, or &lt;jk&gt;null&lt;/jk&gt; to default to &lt;code&gt;String.&lt;jk&gt;class&lt;/jk&gt;&lt;/code&gt;.<a name="line.574"></a>
-<span class="sourceLineNo">575</span>    * @param valueType The class type of the values, or &lt;jk&gt;null&lt;/jk&gt; to default to whatever is being parsed.<a name="line.575"></a>
-<span class="sourceLineNo">576</span>    * @return The same map that was passed in to allow this method to be chained.<a name="line.576"></a>
-<span class="sourceLineNo">577</span>    * @throws Exception If thrown from underlying stream, or if the input contains a syntax error or is malformed.<a name="line.577"></a>
-<span class="sourceLineNo">578</span>    */<a name="line.578"></a>
-<span class="sourceLineNo">579</span>   protected &lt;K,V&gt; Map&lt;K,V&gt; doParseIntoMap(ParserPipe pipe, Map&lt;K,V&gt; m, Type keyType, Type valueType) throws Exception {<a name="line.579"></a>
-<span class="sourceLineNo">580</span>      throw new UnsupportedOperationException("Parser '"+getClass().getName()+"' does not support this method.");<a name="line.580"></a>
-<span class="sourceLineNo">581</span>   }<a name="line.581"></a>
-<span class="sourceLineNo">582</span><a name="line.582"></a>
-<span class="sourceLineNo">583</span>   /**<a name="line.583"></a>
-<span class="sourceLineNo">584</span>    * Parses the contents of the specified reader and loads the results into the specified collection.<a name="line.584"></a>
-<span class="sourceLineNo">585</span>    *<a name="line.585"></a>
-<span class="sourceLineNo">586</span>    * &lt;p&gt;<a name="line.586"></a>
-<span class="sourceLineNo">587</span>    * Used in the following locations:<a name="line.587"></a>
-<span class="sou

<TRUNCATED>


[35/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/internal/IOUtils.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/internal/IOUtils.html b/content/site/apidocs/src-html/org/apache/juneau/internal/IOUtils.html
index ee491f4..97a3081 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/internal/IOUtils.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/internal/IOUtils.html
@@ -25,484 +25,573 @@
 <span class="sourceLineNo">017</span>import java.io.*;<a name="line.17"></a>
 <span class="sourceLineNo">018</span>import java.nio.charset.*;<a name="line.18"></a>
 <span class="sourceLineNo">019</span><a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.utils.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span><a name="line.21"></a>
-<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * Various I/O related utility methods.<a name="line.23"></a>
-<span class="sourceLineNo">024</span> */<a name="line.24"></a>
-<span class="sourceLineNo">025</span>public final class IOUtils {<a name="line.25"></a>
-<span class="sourceLineNo">026</span><a name="line.26"></a>
-<span class="sourceLineNo">027</span>   /** UTF-8 charset */<a name="line.27"></a>
-<span class="sourceLineNo">028</span>   public static final Charset UTF8 = Charset.forName("UTF-8");<a name="line.28"></a>
-<span class="sourceLineNo">029</span><a name="line.29"></a>
-<span class="sourceLineNo">030</span>   /**<a name="line.30"></a>
-<span class="sourceLineNo">031</span>    * Reads the contents of a file into a string.<a name="line.31"></a>
-<span class="sourceLineNo">032</span>    *<a name="line.32"></a>
-<span class="sourceLineNo">033</span>    * @param path The path of the file to read using default character encoding.<a name="line.33"></a>
-<span class="sourceLineNo">034</span>    * @return The contents of the reader as a string, or &lt;jk&gt;null&lt;/jk&gt; if file does not exist.<a name="line.34"></a>
-<span class="sourceLineNo">035</span>    * @throws IOException If a problem occurred trying to read from the reader.<a name="line.35"></a>
-<span class="sourceLineNo">036</span>    */<a name="line.36"></a>
-<span class="sourceLineNo">037</span>   public static String readFile(String path) throws IOException {<a name="line.37"></a>
-<span class="sourceLineNo">038</span>      return read(new File(path));<a name="line.38"></a>
-<span class="sourceLineNo">039</span>   }<a name="line.39"></a>
-<span class="sourceLineNo">040</span><a name="line.40"></a>
-<span class="sourceLineNo">041</span>   /**<a name="line.41"></a>
-<span class="sourceLineNo">042</span>    * Reads the contents of a file into a string.<a name="line.42"></a>
-<span class="sourceLineNo">043</span>    *<a name="line.43"></a>
-<span class="sourceLineNo">044</span>    * @param in The file to read using default character encoding.<a name="line.44"></a>
-<span class="sourceLineNo">045</span>    * @return The contents of the reader as a string, or &lt;jk&gt;null&lt;/jk&gt; if file does not exist.<a name="line.45"></a>
-<span class="sourceLineNo">046</span>    * @throws IOException If a problem occurred trying to read from the reader.<a name="line.46"></a>
-<span class="sourceLineNo">047</span>    */<a name="line.47"></a>
-<span class="sourceLineNo">048</span>   public static String read(File in) throws IOException {<a name="line.48"></a>
-<span class="sourceLineNo">049</span>      if (in == null || ! in.exists())<a name="line.49"></a>
-<span class="sourceLineNo">050</span>         return null;<a name="line.50"></a>
-<span class="sourceLineNo">051</span>      Reader r = new InputStreamReader(new FileInputStream(in), Charset.defaultCharset());<a name="line.51"></a>
-<span class="sourceLineNo">052</span>      return read(r, 0, 1024);<a name="line.52"></a>
-<span class="sourceLineNo">053</span>   }<a name="line.53"></a>
-<span class="sourceLineNo">054</span><a name="line.54"></a>
-<span class="sourceLineNo">055</span>   /**<a name="line.55"></a>
-<span class="sourceLineNo">056</span>    * Reads the specified object to a &lt;code&gt;String&lt;/code&gt;.<a name="line.56"></a>
-<span class="sourceLineNo">057</span>    *<a name="line.57"></a>
-<span class="sourceLineNo">058</span>    * &lt;p&gt;<a name="line.58"></a>
-<span class="sourceLineNo">059</span>    * Can be any of the following object types:<a name="line.59"></a>
-<span class="sourceLineNo">060</span>    * &lt;ul&gt;<a name="line.60"></a>
-<span class="sourceLineNo">061</span>    *    &lt;li&gt;{@link CharSequence}<a name="line.61"></a>
-<span class="sourceLineNo">062</span>    *    &lt;li&gt;{@link File}<a name="line.62"></a>
-<span class="sourceLineNo">063</span>    *    &lt;li&gt;{@link Reader}<a name="line.63"></a>
-<span class="sourceLineNo">064</span>    *    &lt;li&gt;{@link InputStream}<a name="line.64"></a>
-<span class="sourceLineNo">065</span>    *    &lt;li&gt;&lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;[]&lt;/code&gt;<a name="line.65"></a>
-<span class="sourceLineNo">066</span>    * &lt;/ul&gt;<a name="line.66"></a>
-<span class="sourceLineNo">067</span>    *<a name="line.67"></a>
-<span class="sourceLineNo">068</span>    * @param o The object to read.<a name="line.68"></a>
-<span class="sourceLineNo">069</span>    * @return The object serialized to a string, or &lt;jk&gt;null&lt;/jk&gt; if it wasn't a supported type.<a name="line.69"></a>
-<span class="sourceLineNo">070</span>    * @throws IOException<a name="line.70"></a>
-<span class="sourceLineNo">071</span>    */<a name="line.71"></a>
-<span class="sourceLineNo">072</span>   public static String read(Object o) throws IOException {<a name="line.72"></a>
-<span class="sourceLineNo">073</span>      if (o instanceof CharSequence)<a name="line.73"></a>
-<span class="sourceLineNo">074</span>         return o.toString();<a name="line.74"></a>
-<span class="sourceLineNo">075</span>      if (o instanceof File)<a name="line.75"></a>
-<span class="sourceLineNo">076</span>         return read((File)o);<a name="line.76"></a>
-<span class="sourceLineNo">077</span>      if (o instanceof Reader)<a name="line.77"></a>
-<span class="sourceLineNo">078</span>         return read((Reader)o);<a name="line.78"></a>
-<span class="sourceLineNo">079</span>      if (o instanceof InputStream)<a name="line.79"></a>
-<span class="sourceLineNo">080</span>         return read((InputStream)o);<a name="line.80"></a>
-<span class="sourceLineNo">081</span>      if (o instanceof byte[])<a name="line.81"></a>
-<span class="sourceLineNo">082</span>         return read(new ByteArrayInputStream((byte[])o));<a name="line.82"></a>
-<span class="sourceLineNo">083</span>      return null;<a name="line.83"></a>
-<span class="sourceLineNo">084</span>   }<a name="line.84"></a>
-<span class="sourceLineNo">085</span><a name="line.85"></a>
-<span class="sourceLineNo">086</span>   /**<a name="line.86"></a>
-<span class="sourceLineNo">087</span>    * Writes the contents of the specified &lt;code&gt;Reader&lt;/code&gt; to the specified file.<a name="line.87"></a>
-<span class="sourceLineNo">088</span>    *<a name="line.88"></a>
-<span class="sourceLineNo">089</span>    * @param out The file to write the output to.<a name="line.89"></a>
-<span class="sourceLineNo">090</span>    * @param in The reader to pipe from.<a name="line.90"></a>
-<span class="sourceLineNo">091</span>    * @return The number of characters written to the file.<a name="line.91"></a>
-<span class="sourceLineNo">092</span>    * @throws IOException<a name="line.92"></a>
-<span class="sourceLineNo">093</span>    */<a name="line.93"></a>
-<span class="sourceLineNo">094</span>   public static int write(File out, Reader in) throws IOException {<a name="line.94"></a>
-<span class="sourceLineNo">095</span>      assertFieldNotNull(out, "out");<a name="line.95"></a>
-<span class="sourceLineNo">096</span>      assertFieldNotNull(in, "in");<a name="line.96"></a>
-<span class="sourceLineNo">097</span>      Writer w = new OutputStreamWriter(new FileOutputStream(out), Charset.defaultCharset());<a name="line.97"></a>
-<span class="sourceLineNo">098</span>      try {<a name="line.98"></a>
-<span class="sourceLineNo">099</span>         return IOPipe.create(in, w).closeOut().run();<a name="line.99"></a>
-<span class="sourceLineNo">100</span>      } finally {<a name="line.100"></a>
-<span class="sourceLineNo">101</span>         w.close();<a name="line.101"></a>
-<span class="sourceLineNo">102</span>      }<a name="line.102"></a>
-<span class="sourceLineNo">103</span>   }<a name="line.103"></a>
-<span class="sourceLineNo">104</span><a name="line.104"></a>
-<span class="sourceLineNo">105</span>   /**<a name="line.105"></a>
-<span class="sourceLineNo">106</span>    * Writes the contents of the specified &lt;code&gt;InputStream&lt;/code&gt; to the specified file.<a name="line.106"></a>
-<span class="sourceLineNo">107</span>    *<a name="line.107"></a>
-<span class="sourceLineNo">108</span>    * @param out The file to write the output to.<a name="line.108"></a>
-<span class="sourceLineNo">109</span>    * @param in The input stream to pipe from.<a name="line.109"></a>
-<span class="sourceLineNo">110</span>    * @return The number of characters written to the file.<a name="line.110"></a>
-<span class="sourceLineNo">111</span>    * @throws IOException<a name="line.111"></a>
-<span class="sourceLineNo">112</span>    */<a name="line.112"></a>
-<span class="sourceLineNo">113</span>   public static int write(File out, InputStream in) throws IOException {<a name="line.113"></a>
-<span class="sourceLineNo">114</span>      assertFieldNotNull(out, "out");<a name="line.114"></a>
-<span class="sourceLineNo">115</span>      assertFieldNotNull(in, "in");<a name="line.115"></a>
-<span class="sourceLineNo">116</span>      OutputStream os = new FileOutputStream(out);<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      try {<a name="line.117"></a>
-<span class="sourceLineNo">118</span>         return IOPipe.create(in, os).closeOut().run();<a name="line.118"></a>
-<span class="sourceLineNo">119</span>      } finally {<a name="line.119"></a>
-<span class="sourceLineNo">120</span>         os.close();<a name="line.120"></a>
-<span class="sourceLineNo">121</span>      }<a name="line.121"></a>
-<span class="sourceLineNo">122</span>   }<a name="line.122"></a>
-<span class="sourceLineNo">123</span><a name="line.123"></a>
-<span class="sourceLineNo">124</span>   /**<a name="line.124"></a>
-<span class="sourceLineNo">125</span>    * Reads the contents of a reader into a string.<a name="line.125"></a>
-<span class="sourceLineNo">126</span>    *<a name="line.126"></a>
-<span class="sourceLineNo">127</span>    * @param in The input reader.<a name="line.127"></a>
-<span class="sourceLineNo">128</span>    * @return The contents of the reader as a string.<a name="line.128"></a>
-<span class="sourceLineNo">129</span>    * @throws IOException If a problem occurred trying to read from the reader.<a name="line.129"></a>
-<span class="sourceLineNo">130</span>    */<a name="line.130"></a>
-<span class="sourceLineNo">131</span>   public static String read(Reader in) throws IOException {<a name="line.131"></a>
-<span class="sourceLineNo">132</span>      return read(in, 0, 1024);<a name="line.132"></a>
-<span class="sourceLineNo">133</span>   }<a name="line.133"></a>
-<span class="sourceLineNo">134</span><a name="line.134"></a>
-<span class="sourceLineNo">135</span>   /**<a name="line.135"></a>
-<span class="sourceLineNo">136</span>    * Reads the contents of an input stream into a string using the specified charset.<a name="line.136"></a>
-<span class="sourceLineNo">137</span>    *<a name="line.137"></a>
-<span class="sourceLineNo">138</span>    * @param in The input stream.<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    * @param cs The charset of the contents of the input stream.<a name="line.139"></a>
-<span class="sourceLineNo">140</span>    * @return The contents of the reader as a string.  &lt;jk&gt;null&lt;/jk&gt; if input stream was null.<a name="line.140"></a>
-<span class="sourceLineNo">141</span>    * @throws IOException If a problem occurred trying to read from the input stream.<a name="line.141"></a>
-<span class="sourceLineNo">142</span>    */<a name="line.142"></a>
-<span class="sourceLineNo">143</span>   public static String read(InputStream in, Charset cs) throws IOException {<a name="line.143"></a>
-<span class="sourceLineNo">144</span>      if (in == null)<a name="line.144"></a>
-<span class="sourceLineNo">145</span>         return null;<a name="line.145"></a>
-<span class="sourceLineNo">146</span>      return read(new InputStreamReader(in, cs));<a name="line.146"></a>
-<span class="sourceLineNo">147</span>   }<a name="line.147"></a>
-<span class="sourceLineNo">148</span><a name="line.148"></a>
-<span class="sourceLineNo">149</span>   /**<a name="line.149"></a>
-<span class="sourceLineNo">150</span>    * Reads the contents of an input stream into a string using the system default charset.<a name="line.150"></a>
-<span class="sourceLineNo">151</span>    *<a name="line.151"></a>
-<span class="sourceLineNo">152</span>    * @param in The input stream.<a name="line.152"></a>
-<span class="sourceLineNo">153</span>    * @return The contents of the reader as a string, or &lt;jk&gt;null&lt;/jk&gt; if the input stream is null.<a name="line.153"></a>
-<span class="sourceLineNo">154</span>    * @throws IOException If a problem occurred trying to read from the input stream.<a name="line.154"></a>
-<span class="sourceLineNo">155</span>    */<a name="line.155"></a>
-<span class="sourceLineNo">156</span>   public static String read(InputStream in) throws IOException {<a name="line.156"></a>
-<span class="sourceLineNo">157</span>      if (in == null)<a name="line.157"></a>
-<span class="sourceLineNo">158</span>         return null;<a name="line.158"></a>
-<span class="sourceLineNo">159</span>      return read(new InputStreamReader(in, Charset.defaultCharset()));<a name="line.159"></a>
-<span class="sourceLineNo">160</span>   }<a name="line.160"></a>
-<span class="sourceLineNo">161</span><a name="line.161"></a>
-<span class="sourceLineNo">162</span>   /**<a name="line.162"></a>
-<span class="sourceLineNo">163</span>    * Read the specified input stream into a byte array and closes the stream.<a name="line.163"></a>
-<span class="sourceLineNo">164</span>    *<a name="line.164"></a>
-<span class="sourceLineNo">165</span>    * @param in The input stream.<a name="line.165"></a>
-<span class="sourceLineNo">166</span>    * @param bufferSize The expected size of the buffer.<a name="line.166"></a>
-<span class="sourceLineNo">167</span>    * @return The contents of the stream as a byte array.<a name="line.167"></a>
-<span class="sourceLineNo">168</span>    * @throws IOException Thrown by underlying stream.<a name="line.168"></a>
-<span class="sourceLineNo">169</span>    */<a name="line.169"></a>
-<span class="sourceLineNo">170</span>   public static byte[] readBytes(InputStream in, int bufferSize) throws IOException {<a name="line.170"></a>
-<span class="sourceLineNo">171</span>      if (in == null)<a name="line.171"></a>
-<span class="sourceLineNo">172</span>         return null;<a name="line.172"></a>
-<span class="sourceLineNo">173</span>      ByteArrayOutputStream buff = new ByteArrayOutputStream(bufferSize);<a name="line.173"></a>
-<span class="sourceLineNo">174</span>      int nRead;<a name="line.174"></a>
-<span class="sourceLineNo">175</span>      byte[] b = new byte[Math.min(bufferSize, 8192)];<a name="line.175"></a>
-<span class="sourceLineNo">176</span><a name="line.176"></a>
-<span class="sourceLineNo">177</span>      try {<a name="line.177"></a>
-<span class="sourceLineNo">178</span>         while ((nRead = in.read(b, 0, b.length)) != -1)<a name="line.178"></a>
-<span class="sourceLineNo">179</span>            buff.write(b, 0, nRead);<a name="line.179"></a>
-<span class="sourceLineNo">180</span>         buff.flush();<a name="line.180"></a>
-<span class="sourceLineNo">181</span><a name="line.181"></a>
-<span class="sourceLineNo">182</span>         return buff.toByteArray();<a name="line.182"></a>
-<span class="sourceLineNo">183</span>      } finally {<a name="line.183"></a>
-<span class="sourceLineNo">184</span>         in.close();<a name="line.184"></a>
-<span class="sourceLineNo">185</span>      }<a name="line.185"></a>
-<span class="sourceLineNo">186</span>   }<a name="line.186"></a>
-<span class="sourceLineNo">187</span><a name="line.187"></a>
-<span class="sourceLineNo">188</span>   /**<a name="line.188"></a>
-<span class="sourceLineNo">189</span>    * Reads a raw stream of bytes from the specified file.<a name="line.189"></a>
-<span class="sourceLineNo">190</span>    *<a name="line.190"></a>
-<span class="sourceLineNo">191</span>    * @param f The file to read.<a name="line.191"></a>
-<span class="sourceLineNo">192</span>    * @return A byte array containing the contents of the file.<a name="line.192"></a>
-<span class="sourceLineNo">193</span>    * @throws IOException<a name="line.193"></a>
-<span class="sourceLineNo">194</span>    */<a name="line.194"></a>
-<span class="sourceLineNo">195</span>   public static byte[] readBytes(File f) throws IOException {<a name="line.195"></a>
-<span class="sourceLineNo">196</span>      if (f == null || ! (f.exists() &amp;&amp; f.canRead()))<a name="line.196"></a>
-<span class="sourceLineNo">197</span>         return null;<a name="line.197"></a>
-<span class="sourceLineNo">198</span><a name="line.198"></a>
-<span class="sourceLineNo">199</span>      FileInputStream fis = new FileInputStream(f);<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      try {<a name="line.200"></a>
-<span class="sourceLineNo">201</span>         return readBytes(fis, (int)f.length());<a name="line.201"></a>
-<span class="sourceLineNo">202</span>      } finally {<a name="line.202"></a>
-<span class="sourceLineNo">203</span>         fis.close();<a name="line.203"></a>
-<span class="sourceLineNo">204</span>      }<a name="line.204"></a>
-<span class="sourceLineNo">205</span>   }<a name="line.205"></a>
-<span class="sourceLineNo">206</span><a name="line.206"></a>
-<span class="sourceLineNo">207</span>   /**<a name="line.207"></a>
-<span class="sourceLineNo">208</span>    * Reads the specified input into a {@link String} until the end of the input is reached.<a name="line.208"></a>
-<span class="sourceLineNo">209</span>    *<a name="line.209"></a>
-<span class="sourceLineNo">210</span>    * &lt;p&gt;<a name="line.210"></a>
-<span class="sourceLineNo">211</span>    * The {@code Reader} is automatically closed.<a name="line.211"></a>
-<span class="sourceLineNo">212</span>    *<a name="line.212"></a>
-<span class="sourceLineNo">213</span>    * &lt;p&gt;<a name="line.213"></a>
-<span class="sourceLineNo">214</span>    * If the {@code Reader} is not an instance of a {@code BufferedReader}, then it gets wrapped in a<a name="line.214"></a>
-<span class="sourceLineNo">215</span>    * {@code BufferedReader}.<a name="line.215"></a>
-<span class="sourceLineNo">216</span>    *<a name="line.216"></a>
-<span class="sourceLineNo">217</span>    * @param in The input reader.<a name="line.217"></a>
-<span class="sourceLineNo">218</span>    * @param length Specify a positive number if the length of the input is known.<a name="line.218"></a>
-<span class="sourceLineNo">219</span>    * @param bufferSize Specify the buffer size to use.<a name="line.219"></a>
-<span class="sourceLineNo">220</span>    * @return The contents of the reader as a string.  &lt;jk&gt;null&lt;/jk&gt; if reader was null.<a name="line.220"></a>
-<span class="sourceLineNo">221</span>    * @throws IOException If a problem occurred trying to read from the reader.<a name="line.221"></a>
-<span class="sourceLineNo">222</span>    */<a name="line.222"></a>
-<span class="sourceLineNo">223</span>   public static String read(Reader in, int length, int bufferSize) throws IOException {<a name="line.223"></a>
-<span class="sourceLineNo">224</span>      if (in == null)<a name="line.224"></a>
-<span class="sourceLineNo">225</span>         return null;<a name="line.225"></a>
-<span class="sourceLineNo">226</span>      length = (length &lt;= 0 ? bufferSize : length);<a name="line.226"></a>
-<span class="sourceLineNo">227</span>      StringBuilder sb = new StringBuilder(length); // Assume they're ASCII characters.<a name="line.227"></a>
-<span class="sourceLineNo">228</span>      try {<a name="line.228"></a>
-<span class="sourceLineNo">229</span>         char[] buf = new char[Math.min(bufferSize, length)];<a name="line.229"></a>
-<span class="sourceLineNo">230</span>         int i = 0;<a name="line.230"></a>
-<span class="sourceLineNo">231</span>         while ((i = in.read(buf)) != -1)<a name="line.231"></a>
-<span class="sourceLineNo">232</span>            sb.append(buf, 0, i);<a name="line.232"></a>
-<span class="sourceLineNo">233</span>         return sb.toString();<a name="line.233"></a>
-<span class="sourceLineNo">234</span>      } finally {<a name="line.234"></a>
-<span class="sourceLineNo">235</span>         in.close();<a name="line.235"></a>
-<span class="sourceLineNo">236</span>      }<a name="line.236"></a>
-<span class="sourceLineNo">237</span>   }<a name="line.237"></a>
-<span class="sourceLineNo">238</span><a name="line.238"></a>
-<span class="sourceLineNo">239</span>   /**<a name="line.239"></a>
-<span class="sourceLineNo">240</span>    * Pipes the contents of the specified reader into the writer.<a name="line.240"></a>
-<span class="sourceLineNo">241</span>    *<a name="line.241"></a>
-<span class="sourceLineNo">242</span>    * &lt;p&gt;<a name="line.242"></a>
-<span class="sourceLineNo">243</span>    * The reader is closed, the writer is not.<a name="line.243"></a>
-<span class="sourceLineNo">244</span>    *<a name="line.244"></a>
-<span class="sourceLineNo">245</span>    * @param in The reader to pipe from.<a name="line.245"></a>
-<span class="sourceLineNo">246</span>    * @param out The writer to pipe to.<a name="line.246"></a>
-<span class="sourceLineNo">247</span>    * @throws IOException<a name="line.247"></a>
-<span class="sourceLineNo">248</span>    */<a name="line.248"></a>
-<span class="sourceLineNo">249</span>   public static void pipe(Reader in, Writer out) throws IOException {<a name="line.249"></a>
-<span class="sourceLineNo">250</span>      assertFieldNotNull(out, "out");<a name="line.250"></a>
-<span class="sourceLineNo">251</span>      assertFieldNotNull(in, "in");<a name="line.251"></a>
-<span class="sourceLineNo">252</span>      IOPipe.create(in, out).run();<a name="line.252"></a>
-<span class="sourceLineNo">253</span>   }<a name="line.253"></a>
-<span class="sourceLineNo">254</span><a name="line.254"></a>
-<span class="sourceLineNo">255</span>   /**<a name="line.255"></a>
-<span class="sourceLineNo">256</span>    * Wraps the specified reader in a buffered reader.<a name="line.256"></a>
-<span class="sourceLineNo">257</span>    *<a name="line.257"></a>
-<span class="sourceLineNo">258</span>    * @param r The reader being wrapped.<a name="line.258"></a>
-<span class="sourceLineNo">259</span>    * @return<a name="line.259"></a>
-<span class="sourceLineNo">260</span>    *    The reader wrapped in a {@link BufferedReader}, or the original {@link Reader} if it's already a buffered<a name="line.260"></a>
-<span class="sourceLineNo">261</span>    *    reader.<a name="line.261"></a>
-<span class="sourceLineNo">262</span>    */<a name="line.262"></a>
-<span class="sourceLineNo">263</span>   public static Reader getBufferedReader(Reader r) {<a name="line.263"></a>
-<span class="sourceLineNo">264</span>      if (r == null || r instanceof BufferedReader || r instanceof StringReader)<a name="line.264"></a>
-<span class="sourceLineNo">265</span>         return r;<a name="line.265"></a>
-<span class="sourceLineNo">266</span>      return new BufferedReader(r);<a name="line.266"></a>
-<span class="sourceLineNo">267</span>   }<a name="line.267"></a>
-<span class="sourceLineNo">268</span><a name="line.268"></a>
-<span class="sourceLineNo">269</span>   /**<a name="line.269"></a>
-<span class="sourceLineNo">270</span>    * Counts the number of bytes in the input stream and then closes the stream.<a name="line.270"></a>
-<span class="sourceLineNo">271</span>    *<a name="line.271"></a>
-<span class="sourceLineNo">272</span>    * @param is The input stream to read from.<a name="line.272"></a>
-<span class="sourceLineNo">273</span>    * @return The number of bytes read.<a name="line.273"></a>
-<span class="sourceLineNo">274</span>    * @throws IOException<a name="line.274"></a>
-<span class="sourceLineNo">275</span>    */<a name="line.275"></a>
-<span class="sourceLineNo">276</span>   public static long count(InputStream is) throws IOException {<a name="line.276"></a>
-<span class="sourceLineNo">277</span>      assertFieldNotNull(is, "is");<a name="line.277"></a>
-<span class="sourceLineNo">278</span>      long c = 0;<a name="line.278"></a>
-<span class="sourceLineNo">279</span>      long i;<a name="line.279"></a>
-<span class="sourceLineNo">280</span>      try {<a name="line.280"></a>
-<span class="sourceLineNo">281</span>         while ((i = is.skip(1024)) != 0)<a name="line.281"></a>
-<span class="sourceLineNo">282</span>            c += i;<a name="line.282"></a>
-<span class="sourceLineNo">283</span>      } finally {<a name="line.283"></a>
-<span class="sourceLineNo">284</span>         is.close();<a name="line.284"></a>
-<span class="sourceLineNo">285</span>      }<a name="line.285"></a>
-<span class="sourceLineNo">286</span>      return c;<a name="line.286"></a>
-<span class="sourceLineNo">287</span>   }<a name="line.287"></a>
-<span class="sourceLineNo">288</span><a name="line.288"></a>
-<span class="sourceLineNo">289</span>   /**<a name="line.289"></a>
-<span class="sourceLineNo">290</span>    * Counts the number of characters in the reader and then closes the reader.<a name="line.290"></a>
-<span class="sourceLineNo">291</span>    *<a name="line.291"></a>
-<span class="sourceLineNo">292</span>    * @param r The reader to read from.<a name="line.292"></a>
-<span class="sourceLineNo">293</span>    * @return The number of characters read.<a name="line.293"></a>
-<span class="sourceLineNo">294</span>    * @throws IOException<a name="line.294"></a>
-<span class="sourceLineNo">295</span>    */<a name="line.295"></a>
-<span class="sourceLineNo">296</span>   public static long count(Reader r) throws IOException {<a name="line.296"></a>
-<span class="sourceLineNo">297</span>      assertFieldNotNull(r, "r");<a name="line.297"></a>
-<span class="sourceLineNo">298</span>      long c = 0;<a name="line.298"></a>
-<span class="sourceLineNo">299</span>      long i;<a name="line.299"></a>
-<span class="sourceLineNo">300</span>      try {<a name="line.300"></a>
-<span class="sourceLineNo">301</span>         while ((i = r.skip(1024)) != 0)<a name="line.301"></a>
-<span class="sourceLineNo">302</span>            c += i;<a name="line.302"></a>
-<span class="sourceLineNo">303</span>      } finally {<a name="line.303"></a>
-<span class="sourceLineNo">304</span>         r.close();<a name="line.304"></a>
-<span class="sourceLineNo">305</span>      }<a name="line.305"></a>
-<span class="sourceLineNo">306</span>      return c;<a name="line.306"></a>
-<span class="sourceLineNo">307</span>   }<a name="line.307"></a>
-<span class="sourceLineNo">308</span><a name="line.308"></a>
-<span class="sourceLineNo">309</span>   /**<a name="line.309"></a>
-<span class="sourceLineNo">310</span>    * Given the specified &lt;js&gt;"Content-Length"&lt;/js&gt; header value, return an appropriate buffer size.<a name="line.310"></a>
-<span class="sourceLineNo">311</span>    *<a name="line.311"></a>
-<span class="sourceLineNo">312</span>    * &lt;p&gt;<a name="line.312"></a>
-<span class="sourceLineNo">313</span>    * The maximum buffer size is 1MB.<a name="line.313"></a>
-<span class="sourceLineNo">314</span>    *<a name="line.314"></a>
-<span class="sourceLineNo">315</span>    * @param contentLength The value of the &lt;js&gt;"Content-Length"&lt;/js&gt; header.<a name="line.315"></a>
-<span class="sourceLineNo">316</span>    * @return The appropriate buffer size.<a name="line.316"></a>
+<span class="sourceLineNo">020</span>import org.apache.juneau.*;<a name="line.20"></a>
+<span class="sourceLineNo">021</span>import org.apache.juneau.utils.*;<a name="line.21"></a>
+<span class="sourceLineNo">022</span><a name="line.22"></a>
+<span class="sourceLineNo">023</span>/**<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * Various I/O related utility methods.<a name="line.24"></a>
+<span class="sourceLineNo">025</span> */<a name="line.25"></a>
+<span class="sourceLineNo">026</span>public final class IOUtils {<a name="line.26"></a>
+<span class="sourceLineNo">027</span><a name="line.27"></a>
+<span class="sourceLineNo">028</span>   /** UTF-8 charset */<a name="line.28"></a>
+<span class="sourceLineNo">029</span>   public static final Charset UTF8 = Charset.forName("UTF-8");<a name="line.29"></a>
+<span class="sourceLineNo">030</span><a name="line.30"></a>
+<span class="sourceLineNo">031</span>   /**<a name="line.31"></a>
+<span class="sourceLineNo">032</span>    * Reads the contents of a file into a string.<a name="line.32"></a>
+<span class="sourceLineNo">033</span>    *<a name="line.33"></a>
+<span class="sourceLineNo">034</span>    * @param path The path of the file to read using default character encoding.<a name="line.34"></a>
+<span class="sourceLineNo">035</span>    * @return The contents of the reader as a string, or &lt;jk&gt;null&lt;/jk&gt; if file does not exist.<a name="line.35"></a>
+<span class="sourceLineNo">036</span>    * @throws IOException If a problem occurred trying to read from the reader.<a name="line.36"></a>
+<span class="sourceLineNo">037</span>    */<a name="line.37"></a>
+<span class="sourceLineNo">038</span>   public static String readFile(String path) throws IOException {<a name="line.38"></a>
+<span class="sourceLineNo">039</span>      return read(new File(path));<a name="line.39"></a>
+<span class="sourceLineNo">040</span>   }<a name="line.40"></a>
+<span class="sourceLineNo">041</span><a name="line.41"></a>
+<span class="sourceLineNo">042</span>   /**<a name="line.42"></a>
+<span class="sourceLineNo">043</span>    * Reads the contents of a file into a string.<a name="line.43"></a>
+<span class="sourceLineNo">044</span>    *<a name="line.44"></a>
+<span class="sourceLineNo">045</span>    * @param in The file to read using default character encoding.<a name="line.45"></a>
+<span class="sourceLineNo">046</span>    * @return The contents of the reader as a string, or &lt;jk&gt;null&lt;/jk&gt; if file does not exist.<a name="line.46"></a>
+<span class="sourceLineNo">047</span>    * @throws IOException If a problem occurred trying to read from the reader.<a name="line.47"></a>
+<span class="sourceLineNo">048</span>    */<a name="line.48"></a>
+<span class="sourceLineNo">049</span>   public static String read(File in) throws IOException {<a name="line.49"></a>
+<span class="sourceLineNo">050</span>      if (in == null || ! in.exists())<a name="line.50"></a>
+<span class="sourceLineNo">051</span>         return null;<a name="line.51"></a>
+<span class="sourceLineNo">052</span>      Reader r = new InputStreamReader(new FileInputStream(in), Charset.defaultCharset());<a name="line.52"></a>
+<span class="sourceLineNo">053</span>      return read(r, 0, 1024);<a name="line.53"></a>
+<span class="sourceLineNo">054</span>   }<a name="line.54"></a>
+<span class="sourceLineNo">055</span><a name="line.55"></a>
+<span class="sourceLineNo">056</span>   /**<a name="line.56"></a>
+<span class="sourceLineNo">057</span>    * Reads the specified object to a &lt;code&gt;String&lt;/code&gt;.<a name="line.57"></a>
+<span class="sourceLineNo">058</span>    *<a name="line.58"></a>
+<span class="sourceLineNo">059</span>    * &lt;p&gt;<a name="line.59"></a>
+<span class="sourceLineNo">060</span>    * Can be any of the following object types:<a name="line.60"></a>
+<span class="sourceLineNo">061</span>    * &lt;ul&gt;<a name="line.61"></a>
+<span class="sourceLineNo">062</span>    *    &lt;li&gt;{@link CharSequence}<a name="line.62"></a>
+<span class="sourceLineNo">063</span>    *    &lt;li&gt;{@link File}<a name="line.63"></a>
+<span class="sourceLineNo">064</span>    *    &lt;li&gt;{@link Reader}<a name="line.64"></a>
+<span class="sourceLineNo">065</span>    *    &lt;li&gt;{@link InputStream}<a name="line.65"></a>
+<span class="sourceLineNo">066</span>    *    &lt;li&gt;&lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;[]&lt;/code&gt;<a name="line.66"></a>
+<span class="sourceLineNo">067</span>    * &lt;/ul&gt;<a name="line.67"></a>
+<span class="sourceLineNo">068</span>    *<a name="line.68"></a>
+<span class="sourceLineNo">069</span>    * @param o The object to read.<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    * @return The object serialized to a string, or &lt;jk&gt;null&lt;/jk&gt; if it wasn't a supported type.<a name="line.70"></a>
+<span class="sourceLineNo">071</span>    * @throws IOException<a name="line.71"></a>
+<span class="sourceLineNo">072</span>    */<a name="line.72"></a>
+<span class="sourceLineNo">073</span>   public static String read(Object o) throws IOException {<a name="line.73"></a>
+<span class="sourceLineNo">074</span>      if (o instanceof CharSequence)<a name="line.74"></a>
+<span class="sourceLineNo">075</span>         return o.toString();<a name="line.75"></a>
+<span class="sourceLineNo">076</span>      if (o instanceof File)<a name="line.76"></a>
+<span class="sourceLineNo">077</span>         return read((File)o);<a name="line.77"></a>
+<span class="sourceLineNo">078</span>      if (o instanceof Reader)<a name="line.78"></a>
+<span class="sourceLineNo">079</span>         return read((Reader)o);<a name="line.79"></a>
+<span class="sourceLineNo">080</span>      if (o instanceof InputStream)<a name="line.80"></a>
+<span class="sourceLineNo">081</span>         return read((InputStream)o);<a name="line.81"></a>
+<span class="sourceLineNo">082</span>      if (o instanceof byte[])<a name="line.82"></a>
+<span class="sourceLineNo">083</span>         return read(new ByteArrayInputStream((byte[])o));<a name="line.83"></a>
+<span class="sourceLineNo">084</span>      return null;<a name="line.84"></a>
+<span class="sourceLineNo">085</span>   }<a name="line.85"></a>
+<span class="sourceLineNo">086</span><a name="line.86"></a>
+<span class="sourceLineNo">087</span>   /**<a name="line.87"></a>
+<span class="sourceLineNo">088</span>    * Writes the contents of the specified &lt;code&gt;Reader&lt;/code&gt; to the specified file.<a name="line.88"></a>
+<span class="sourceLineNo">089</span>    *<a name="line.89"></a>
+<span class="sourceLineNo">090</span>    * @param out The file to write the output to.<a name="line.90"></a>
+<span class="sourceLineNo">091</span>    * @param in The reader to pipe from.<a name="line.91"></a>
+<span class="sourceLineNo">092</span>    * @return The number of characters written to the file.<a name="line.92"></a>
+<span class="sourceLineNo">093</span>    * @throws IOException<a name="line.93"></a>
+<span class="sourceLineNo">094</span>    */<a name="line.94"></a>
+<span class="sourceLineNo">095</span>   public static int write(File out, Reader in) throws IOException {<a name="line.95"></a>
+<span class="sourceLineNo">096</span>      assertFieldNotNull(out, "out");<a name="line.96"></a>
+<span class="sourceLineNo">097</span>      assertFieldNotNull(in, "in");<a name="line.97"></a>
+<span class="sourceLineNo">098</span>      Writer w = new OutputStreamWriter(new FileOutputStream(out), Charset.defaultCharset());<a name="line.98"></a>
+<span class="sourceLineNo">099</span>      try {<a name="line.99"></a>
+<span class="sourceLineNo">100</span>         return IOPipe.create(in, w).closeOut().run();<a name="line.100"></a>
+<span class="sourceLineNo">101</span>      } finally {<a name="line.101"></a>
+<span class="sourceLineNo">102</span>         w.close();<a name="line.102"></a>
+<span class="sourceLineNo">103</span>      }<a name="line.103"></a>
+<span class="sourceLineNo">104</span>   }<a name="line.104"></a>
+<span class="sourceLineNo">105</span><a name="line.105"></a>
+<span class="sourceLineNo">106</span>   /**<a name="line.106"></a>
+<span class="sourceLineNo">107</span>    * Writes the contents of the specified &lt;code&gt;InputStream&lt;/code&gt; to the specified file.<a name="line.107"></a>
+<span class="sourceLineNo">108</span>    *<a name="line.108"></a>
+<span class="sourceLineNo">109</span>    * @param out The file to write the output to.<a name="line.109"></a>
+<span class="sourceLineNo">110</span>    * @param in The input stream to pipe from.<a name="line.110"></a>
+<span class="sourceLineNo">111</span>    * @return The number of characters written to the file.<a name="line.111"></a>
+<span class="sourceLineNo">112</span>    * @throws IOException<a name="line.112"></a>
+<span class="sourceLineNo">113</span>    */<a name="line.113"></a>
+<span class="sourceLineNo">114</span>   public static int write(File out, InputStream in) throws IOException {<a name="line.114"></a>
+<span class="sourceLineNo">115</span>      assertFieldNotNull(out, "out");<a name="line.115"></a>
+<span class="sourceLineNo">116</span>      assertFieldNotNull(in, "in");<a name="line.116"></a>
+<span class="sourceLineNo">117</span>      OutputStream os = new FileOutputStream(out);<a name="line.117"></a>
+<span class="sourceLineNo">118</span>      try {<a name="line.118"></a>
+<span class="sourceLineNo">119</span>         return IOPipe.create(in, os).closeOut().run();<a name="line.119"></a>
+<span class="sourceLineNo">120</span>      } finally {<a name="line.120"></a>
+<span class="sourceLineNo">121</span>         os.close();<a name="line.121"></a>
+<span class="sourceLineNo">122</span>      }<a name="line.122"></a>
+<span class="sourceLineNo">123</span>   }<a name="line.123"></a>
+<span class="sourceLineNo">124</span><a name="line.124"></a>
+<span class="sourceLineNo">125</span>   /**<a name="line.125"></a>
+<span class="sourceLineNo">126</span>    * Reads the contents of a reader into a string.<a name="line.126"></a>
+<span class="sourceLineNo">127</span>    *<a name="line.127"></a>
+<span class="sourceLineNo">128</span>    * @param in The input reader.<a name="line.128"></a>
+<span class="sourceLineNo">129</span>    * @return The contents of the reader as a string.<a name="line.129"></a>
+<span class="sourceLineNo">130</span>    * @throws IOException If a problem occurred trying to read from the reader.<a name="line.130"></a>
+<span class="sourceLineNo">131</span>    */<a name="line.131"></a>
+<span class="sourceLineNo">132</span>   public static String read(Reader in) throws IOException {<a name="line.132"></a>
+<span class="sourceLineNo">133</span>      return read(in, 0, 1024);<a name="line.133"></a>
+<span class="sourceLineNo">134</span>   }<a name="line.134"></a>
+<span class="sourceLineNo">135</span><a name="line.135"></a>
+<span class="sourceLineNo">136</span>   /**<a name="line.136"></a>
+<span class="sourceLineNo">137</span>    * Reads the contents of an input stream into a string using the specified charset.<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    *<a name="line.138"></a>
+<span class="sourceLineNo">139</span>    * @param in The input stream.<a name="line.139"></a>
+<span class="sourceLineNo">140</span>    * @param cs The charset of the contents of the input stream.<a name="line.140"></a>
+<span class="sourceLineNo">141</span>    * @return The contents of the reader as a string.  &lt;jk&gt;null&lt;/jk&gt; if input stream was null.<a name="line.141"></a>
+<span class="sourceLineNo">142</span>    * @throws IOException If a problem occurred trying to read from the input stream.<a name="line.142"></a>
+<span class="sourceLineNo">143</span>    */<a name="line.143"></a>
+<span class="sourceLineNo">144</span>   public static String read(InputStream in, Charset cs) throws IOException {<a name="line.144"></a>
+<span class="sourceLineNo">145</span>      if (in == null)<a name="line.145"></a>
+<span class="sourceLineNo">146</span>         return null;<a name="line.146"></a>
+<span class="sourceLineNo">147</span>      return read(new InputStreamReader(in, cs));<a name="line.147"></a>
+<span class="sourceLineNo">148</span>   }<a name="line.148"></a>
+<span class="sourceLineNo">149</span><a name="line.149"></a>
+<span class="sourceLineNo">150</span>   /**<a name="line.150"></a>
+<span class="sourceLineNo">151</span>    * Reads the contents of an input stream into a string using the system default charset.<a name="line.151"></a>
+<span class="sourceLineNo">152</span>    *<a name="line.152"></a>
+<span class="sourceLineNo">153</span>    * @param in The input stream.<a name="line.153"></a>
+<span class="sourceLineNo">154</span>    * @return The contents of the reader as a string, or &lt;jk&gt;null&lt;/jk&gt; if the input stream is null.<a name="line.154"></a>
+<span class="sourceLineNo">155</span>    * @throws IOException If a problem occurred trying to read from the input stream.<a name="line.155"></a>
+<span class="sourceLineNo">156</span>    */<a name="line.156"></a>
+<span class="sourceLineNo">157</span>   public static String read(InputStream in) throws IOException {<a name="line.157"></a>
+<span class="sourceLineNo">158</span>      if (in == null)<a name="line.158"></a>
+<span class="sourceLineNo">159</span>         return null;<a name="line.159"></a>
+<span class="sourceLineNo">160</span>      return read(new InputStreamReader(in, Charset.defaultCharset()));<a name="line.160"></a>
+<span class="sourceLineNo">161</span>   }<a name="line.161"></a>
+<span class="sourceLineNo">162</span><a name="line.162"></a>
+<span class="sourceLineNo">163</span>   /**<a name="line.163"></a>
+<span class="sourceLineNo">164</span>    * Read the specified input stream into a byte array and closes the stream.<a name="line.164"></a>
+<span class="sourceLineNo">165</span>    *<a name="line.165"></a>
+<span class="sourceLineNo">166</span>    * @param in The input stream.<a name="line.166"></a>
+<span class="sourceLineNo">167</span>    * @param bufferSize The expected size of the buffer.<a name="line.167"></a>
+<span class="sourceLineNo">168</span>    * @return The contents of the stream as a byte array.<a name="line.168"></a>
+<span class="sourceLineNo">169</span>    * @throws IOException Thrown by underlying stream.<a name="line.169"></a>
+<span class="sourceLineNo">170</span>    */<a name="line.170"></a>
+<span class="sourceLineNo">171</span>   public static byte[] readBytes(InputStream in, int bufferSize) throws IOException {<a name="line.171"></a>
+<span class="sourceLineNo">172</span>      if (in == null)<a name="line.172"></a>
+<span class="sourceLineNo">173</span>         return null;<a name="line.173"></a>
+<span class="sourceLineNo">174</span>      ByteArrayOutputStream buff = new ByteArrayOutputStream(bufferSize);<a name="line.174"></a>
+<span class="sourceLineNo">175</span>      int nRead;<a name="line.175"></a>
+<span class="sourceLineNo">176</span>      byte[] b = new byte[Math.min(bufferSize, 8192)];<a name="line.176"></a>
+<span class="sourceLineNo">177</span><a name="line.177"></a>
+<span class="sourceLineNo">178</span>      try {<a name="line.178"></a>
+<span class="sourceLineNo">179</span>         while ((nRead = in.read(b, 0, b.length)) != -1)<a name="line.179"></a>
+<span class="sourceLineNo">180</span>            buff.write(b, 0, nRead);<a name="line.180"></a>
+<span class="sourceLineNo">181</span>         buff.flush();<a name="line.181"></a>
+<span class="sourceLineNo">182</span><a name="line.182"></a>
+<span class="sourceLineNo">183</span>         return buff.toByteArray();<a name="line.183"></a>
+<span class="sourceLineNo">184</span>      } finally {<a name="line.184"></a>
+<span class="sourceLineNo">185</span>         in.close();<a name="line.185"></a>
+<span class="sourceLineNo">186</span>      }<a name="line.186"></a>
+<span class="sourceLineNo">187</span>   }<a name="line.187"></a>
+<span class="sourceLineNo">188</span><a name="line.188"></a>
+<span class="sourceLineNo">189</span>   /**<a name="line.189"></a>
+<span class="sourceLineNo">190</span>    * Reads a raw stream of bytes from the specified file.<a name="line.190"></a>
+<span class="sourceLineNo">191</span>    *<a name="line.191"></a>
+<span class="sourceLineNo">192</span>    * @param f The file to read.<a name="line.192"></a>
+<span class="sourceLineNo">193</span>    * @return A byte array containing the contents of the file.<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    * @throws IOException<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    */<a name="line.195"></a>
+<span class="sourceLineNo">196</span>   public static byte[] readBytes(File f) throws IOException {<a name="line.196"></a>
+<span class="sourceLineNo">197</span>      if (f == null || ! (f.exists() &amp;&amp; f.canRead()))<a name="line.197"></a>
+<span class="sourceLineNo">198</span>         return null;<a name="line.198"></a>
+<span class="sourceLineNo">199</span><a name="line.199"></a>
+<span class="sourceLineNo">200</span>      FileInputStream fis = new FileInputStream(f);<a name="line.200"></a>
+<span class="sourceLineNo">201</span>      try {<a name="line.201"></a>
+<span class="sourceLineNo">202</span>         return readBytes(fis, (int)f.length());<a name="line.202"></a>
+<span class="sourceLineNo">203</span>      } finally {<a name="line.203"></a>
+<span class="sourceLineNo">204</span>         fis.close();<a name="line.204"></a>
+<span class="sourceLineNo">205</span>      }<a name="line.205"></a>
+<span class="sourceLineNo">206</span>   }<a name="line.206"></a>
+<span class="sourceLineNo">207</span><a name="line.207"></a>
+<span class="sourceLineNo">208</span>   /**<a name="line.208"></a>
+<span class="sourceLineNo">209</span>    * Reads the specified input into a {@link String} until the end of the input is reached.<a name="line.209"></a>
+<span class="sourceLineNo">210</span>    *<a name="line.210"></a>
+<span class="sourceLineNo">211</span>    * &lt;p&gt;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>    * The {@code Reader} is automatically closed.<a name="line.212"></a>
+<span class="sourceLineNo">213</span>    *<a name="line.213"></a>
+<span class="sourceLineNo">214</span>    * &lt;p&gt;<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    * If the {@code Reader} is not an instance of a {@code BufferedReader}, then it gets wrapped in a<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    * {@code BufferedReader}.<a name="line.216"></a>
+<span class="sourceLineNo">217</span>    *<a name="line.217"></a>
+<span class="sourceLineNo">218</span>    * @param in The input reader.<a name="line.218"></a>
+<span class="sourceLineNo">219</span>    * @param length Specify a positive number if the length of the input is known.<a name="line.219"></a>
+<span class="sourceLineNo">220</span>    * @param bufferSize Specify the buffer size to use.<a name="line.220"></a>
+<span class="sourceLineNo">221</span>    * @return The contents of the reader as a string.  &lt;jk&gt;null&lt;/jk&gt; if reader was null.<a name="line.221"></a>
+<span class="sourceLineNo">222</span>    * @throws IOException If a problem occurred trying to read from the reader.<a name="line.222"></a>
+<span class="sourceLineNo">223</span>    */<a name="line.223"></a>
+<span class="sourceLineNo">224</span>   public static String read(Reader in, int length, int bufferSize) throws IOException {<a name="line.224"></a>
+<span class="sourceLineNo">225</span>      if (in == null)<a name="line.225"></a>
+<span class="sourceLineNo">226</span>         return null;<a name="line.226"></a>
+<span class="sourceLineNo">227</span>      length = (length &lt;= 0 ? bufferSize : length);<a name="line.227"></a>
+<span class="sourceLineNo">228</span>      StringBuilder sb = new StringBuilder(length); // Assume they're ASCII characters.<a name="line.228"></a>
+<span class="sourceLineNo">229</span>      try {<a name="line.229"></a>
+<span class="sourceLineNo">230</span>         char[] buf = new char[Math.min(bufferSize, length)];<a name="line.230"></a>
+<span class="sourceLineNo">231</span>         int i = 0;<a name="line.231"></a>
+<span class="sourceLineNo">232</span>         while ((i = in.read(buf)) != -1)<a name="line.232"></a>
+<span class="sourceLineNo">233</span>            sb.append(buf, 0, i);<a name="line.233"></a>
+<span class="sourceLineNo">234</span>         return sb.toString();<a name="line.234"></a>
+<span class="sourceLineNo">235</span>      } finally {<a name="line.235"></a>
+<span class="sourceLineNo">236</span>         in.close();<a name="line.236"></a>
+<span class="sourceLineNo">237</span>      }<a name="line.237"></a>
+<span class="sourceLineNo">238</span>   }<a name="line.238"></a>
+<span class="sourceLineNo">239</span><a name="line.239"></a>
+<span class="sourceLineNo">240</span>   /**<a name="line.240"></a>
+<span class="sourceLineNo">241</span>    * Pipes the contents of the specified reader into the writer.<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    *<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    * &lt;p&gt;<a name="line.243"></a>
+<span class="sourceLineNo">244</span>    * The reader is closed, the writer is not.<a name="line.244"></a>
+<span class="sourceLineNo">245</span>    *<a name="line.245"></a>
+<span class="sourceLineNo">246</span>    * @param in<a name="line.246"></a>
+<span class="sourceLineNo">247</span>    *    The reader to pipe from.<a name="line.247"></a>
+<span class="sourceLineNo">248</span>    * @param out<a name="line.248"></a>
+<span class="sourceLineNo">249</span>    *    The writer to pipe to.<a name="line.249"></a>
+<span class="sourceLineNo">250</span>    * @throws IOException<a name="line.250"></a>
+<span class="sourceLineNo">251</span>    */<a name="line.251"></a>
+<span class="sourceLineNo">252</span>   public static void pipe(Reader in, Writer out) throws IOException {<a name="line.252"></a>
+<span class="sourceLineNo">253</span>      assertFieldNotNull(out, "out");<a name="line.253"></a>
+<span class="sourceLineNo">254</span>      assertFieldNotNull(in, "in");<a name="line.254"></a>
+<span class="sourceLineNo">255</span>      IOPipe.create(in, out).run();<a name="line.255"></a>
+<span class="sourceLineNo">256</span>   }<a name="line.256"></a>
+<span class="sourceLineNo">257</span><a name="line.257"></a>
+<span class="sourceLineNo">258</span>   /**<a name="line.258"></a>
+<span class="sourceLineNo">259</span>    * Pipes the contents of the specified object into the writer.<a name="line.259"></a>
+<span class="sourceLineNo">260</span>    *<a name="line.260"></a>
+<span class="sourceLineNo">261</span>    * &lt;p&gt;<a name="line.261"></a>
+<span class="sourceLineNo">262</span>    * The reader is closed, the writer is not.<a name="line.262"></a>
+<span class="sourceLineNo">263</span>    *<a name="line.263"></a>
+<span class="sourceLineNo">264</span>    * @param in<a name="line.264"></a>
+<span class="sourceLineNo">265</span>    *    The input to pipe from.<a name="line.265"></a>
+<span class="sourceLineNo">266</span>    *    Can be any of the types defined by {@link #toReader(Object)}.<a name="line.266"></a>
+<span class="sourceLineNo">267</span>    * @param out<a name="line.267"></a>
+<span class="sourceLineNo">268</span>    *    The writer to pipe to.<a name="line.268"></a>
+<span class="sourceLineNo">269</span>    * @throws IOException<a name="line.269"></a>
+<span class="sourceLineNo">270</span>    */<a name="line.270"></a>
+<span class="sourceLineNo">271</span>   public static void pipe(Object in, Writer out) throws IOException {<a name="line.271"></a>
+<span class="sourceLineNo">272</span>      pipe(toReader(in), out);<a name="line.272"></a>
+<span class="sourceLineNo">273</span>   }<a name="line.273"></a>
+<span class="sourceLineNo">274</span><a name="line.274"></a>
+<span class="sourceLineNo">275</span>   /**<a name="line.275"></a>
+<span class="sourceLineNo">276</span>    * Pipes the contents of the specified streams.<a name="line.276"></a>
+<span class="sourceLineNo">277</span>    *<a name="line.277"></a>
+<span class="sourceLineNo">278</span>    * &lt;p&gt;<a name="line.278"></a>
+<span class="sourceLineNo">279</span>    * The input stream is closed, the output stream is not.<a name="line.279"></a>
+<span class="sourceLineNo">280</span>    *<a name="line.280"></a>
+<span class="sourceLineNo">281</span>    * @param in<a name="line.281"></a>
+<span class="sourceLineNo">282</span>    *    The reader to pipe from.<a name="line.282"></a>
+<span class="sourceLineNo">283</span>    * @param out<a name="line.283"></a>
+<span class="sourceLineNo">284</span>    *    The writer to pipe to.<a name="line.284"></a>
+<span class="sourceLineNo">285</span>    * @throws IOException<a name="line.285"></a>
+<span class="sourceLineNo">286</span>    */<a name="line.286"></a>
+<span class="sourceLineNo">287</span>   public static void pipe(InputStream in, OutputStream out) throws IOException {<a name="line.287"></a>
+<span class="sourceLineNo">288</span>      assertFieldNotNull(out, "out");<a name="line.288"></a>
+<span class="sourceLineNo">289</span>      assertFieldNotNull(in, "in");<a name="line.289"></a>
+<span class="sourceLineNo">290</span>      IOPipe.create(in, out).run();<a name="line.290"></a>
+<span class="sourceLineNo">291</span>   }<a name="line.291"></a>
+<span class="sourceLineNo">292</span><a name="line.292"></a>
+<span class="sourceLineNo">293</span>   /**<a name="line.293"></a>
+<span class="sourceLineNo">294</span>    * Pipes the contents of the specified object into the output stream.<a name="line.294"></a>
+<span class="sourceLineNo">295</span>    *<a name="line.295"></a>
+<span class="sourceLineNo">296</span>    * &lt;p&gt;<a name="line.296"></a>
+<span class="sourceLineNo">297</span>    * The input stream is closed, the output stream is not.<a name="line.297"></a>
+<span class="sourceLineNo">298</span>    *<a name="line.298"></a>
+<span class="sourceLineNo">299</span>    * @param in<a name="line.299"></a>
+<span class="sourceLineNo">300</span>    *    The input to pipe from.<a name="line.300"></a>
+<span class="sourceLineNo">301</span>    *    Can be any of the types defined by {@link #toInputStream(Object)}.<a name="line.301"></a>
+<span class="sourceLineNo">302</span>    * @param out<a name="line.302"></a>
+<span class="sourceLineNo">303</span>    *    The writer to pipe to.<a name="line.303"></a>
+<span class="sourceLineNo">304</span>    * @throws IOException<a name="line.304"></a>
+<span class="sourceLineNo">305</span>    */<a name="line.305"></a>
+<span class="sourceLineNo">306</span>   public static void pipe(Object in, OutputStream out) throws IOException {<a name="line.306"></a>
+<span class="sourceLineNo">307</span>      pipe(toInputStream(in), out);<a name="line.307"></a>
+<span class="sourceLineNo">308</span>   }<a name="line.308"></a>
+<span class="sourceLineNo">309</span><a name="line.309"></a>
+<span class="sourceLineNo">310</span>   /**<a name="line.310"></a>
+<span class="sourceLineNo">311</span>    * Wraps the specified reader in a buffered reader.<a name="line.311"></a>
+<span class="sourceLineNo">312</span>    *<a name="line.312"></a>
+<span class="sourceLineNo">313</span>    * @param r The reader being wrapped.<a name="line.313"></a>
+<span class="sourceLineNo">314</span>    * @return<a name="line.314"></a>
+<span class="sourceLineNo">315</span>    *    The reader wrapped in a {@link BufferedReader}, or the original {@link Reader} if it's already a buffered<a name="line.315"></a>
+<span class="sourceLineNo">316</span>    *    reader.<a name="line.316"></a>
 <span class="sourceLineNo">317</span>    */<a name="line.317"></a>
-<span class="sourceLineNo">318</span>   public static int getBufferSize(String contentLength) {<a name="line.318"></a>
-<span class="sourceLineNo">319</span>      try {<a name="line.319"></a>
-<span class="sourceLineNo">320</span>         if (! StringUtils.isEmpty(contentLength)) {<a name="line.320"></a>
-<span class="sourceLineNo">321</span>            long l = Long.decode(contentLength);<a name="line.321"></a>
-<span class="sourceLineNo">322</span>            if (l &gt; 1048576)<a name="line.322"></a>
-<span class="sourceLineNo">323</span>               return 1048576;<a name="line.323"></a>
-<span class="sourceLineNo">324</span>            if (l &lt;= 0)<a name="line.324"></a>
-<span class="sourceLineNo">325</span>               return 8192;<a name="line.325"></a>
-<span class="sourceLineNo">326</span>            return (int)l;<a name="line.326"></a>
-<span class="sourceLineNo">327</span>         }<a name="line.327"></a>
-<span class="sourceLineNo">328</span>      } catch (Exception e) {<a name="line.328"></a>
-<span class="sourceLineNo">329</span>         return 8192;<a name="line.329"></a>
-<span class="sourceLineNo">330</span>      }<a name="line.330"></a>
-<span class="sourceLineNo">331</span>      return 8192;<a name="line.331"></a>
-<span class="sourceLineNo">332</span>   }<a name="line.332"></a>
-<span class="sourceLineNo">333</span><a name="line.333"></a>
-<span class="sourceLineNo">334</span>   /**<a name="line.334"></a>
-<span class="sourceLineNo">335</span>    * Close input stream and ignore any exceptions.<a name="line.335"></a>
-<span class="sourceLineNo">336</span>    *<a name="line.336"></a>
-<span class="sourceLineNo">337</span>    * &lt;p&gt;<a name="line.337"></a>
-<span class="sourceLineNo">338</span>    * No-op if input stream is &lt;jk&gt;null&lt;/jk&gt;.<a name="line.338"></a>
-<span class="sourceLineNo">339</span>    *<a name="line.339"></a>
-<span class="sourceLineNo">340</span>    * @param is The input stream to close.<a name="line.340"></a>
-<span class="sourceLineNo">341</span>    */<a name="line.341"></a>
-<span class="sourceLineNo">342</span>   public static void closeQuietly(InputStream is) {<a name="line.342"></a>
-<span class="sourceLineNo">343</span>      try {<a name="line.343"></a>
-<span class="sourceLineNo">344</span>         if (is != null)<a name="line.344"></a>
-<span class="sourceLineNo">345</span>            is.close();<a name="line.345"></a>
-<span class="sourceLineNo">346</span>      } catch (IOException e) {}<a name="line.346"></a>
-<span class="sourceLineNo">347</span>   }<a name="line.347"></a>
-<span class="sourceLineNo">348</span><a name="line.348"></a>
-<span class="sourceLineNo">349</span>   /**<a name="line.349"></a>
-<span class="sourceLineNo">350</span>    * Close output stream and ignore any exceptions.<a name="line.350"></a>
-<span class="sourceLineNo">351</span>    *<a name="line.351"></a>
-<span class="sourceLineNo">352</span>    * &lt;p&gt;<a name="line.352"></a>
-<span class="sourceLineNo">353</span>    * No-op if output stream is &lt;jk&gt;null&lt;/jk&gt;.<a name="line.353"></a>
-<span class="sourceLineNo">354</span>    *<a name="line.354"></a>
-<span class="sourceLineNo">355</span>    * @param os The output stream to close.<a name="line.355"></a>
-<span class="sourceLineNo">356</span>    */<a name="line.356"></a>
-<span class="sourceLineNo">357</span>   public static void closeQuietly(OutputStream os) {<a name="line.357"></a>
-<span class="sourceLineNo">358</span>      try {<a name="line.358"></a>
-<span class="sourceLineNo">359</span>         if (os != null)<a name="line.359"></a>
-<span class="sourceLineNo">360</span>            os.close();<a name="line.360"></a>
-<span class="sourceLineNo">361</span>      } catch (IOException e) {}<a name="line.361"></a>
+<span class="sourceLineNo">318</span>   public static Reader getBufferedReader(Reader r) {<a name="line.318"></a>
+<span class="sourceLineNo">319</span>      if (r == null || r instanceof BufferedReader || r instanceof StringReader)<a name="line.319"></a>
+<span class="sourceLineNo">320</span>         return r;<a name="line.320"></a>
+<span class="sourceLineNo">321</span>      return new BufferedReader(r);<a name="line.321"></a>
+<span class="sourceLineNo">322</span>   }<a name="line.322"></a>
+<span class="sourceLineNo">323</span><a name="line.323"></a>
+<span class="sourceLineNo">324</span>   /**<a name="line.324"></a>
+<span class="sourceLineNo">325</span>    * Counts the number of bytes in the input stream and then closes the stream.<a name="line.325"></a>
+<span class="sourceLineNo">326</span>    *<a name="line.326"></a>
+<span class="sourceLineNo">327</span>    * @param is The input stream to read from.<a name="line.327"></a>
+<span class="sourceLineNo">328</span>    * @return The number of bytes read.<a name="line.328"></a>
+<span class="sourceLineNo">329</span>    * @throws IOException<a name="line.329"></a>
+<span class="sourceLineNo">330</span>    */<a name="line.330"></a>
+<span class="sourceLineNo">331</span>   public static long count(InputStream is) throws IOException {<a name="line.331"></a>
+<span class="sourceLineNo">332</span>      assertFieldNotNull(is, "is");<a name="line.332"></a>
+<span class="sourceLineNo">333</span>      long c = 0;<a name="line.333"></a>
+<span class="sourceLineNo">334</span>      long i;<a name="line.334"></a>
+<span class="sourceLineNo">335</span>      try {<a name="line.335"></a>
+<span class="sourceLineNo">336</span>         while ((i = is.skip(1024)) != 0)<a name="line.336"></a>
+<span class="sourceLineNo">337</span>            c += i;<a name="line.337"></a>
+<span class="sourceLineNo">338</span>      } finally {<a name="line.338"></a>
+<span class="sourceLineNo">339</span>         is.close();<a name="line.339"></a>
+<span class="sourceLineNo">340</span>      }<a name="line.340"></a>
+<span class="sourceLineNo">341</span>      return c;<a name="line.341"></a>
+<span class="sourceLineNo">342</span>   }<a name="line.342"></a>
+<span class="sourceLineNo">343</span><a name="line.343"></a>
+<span class="sourceLineNo">344</span>   /**<a name="line.344"></a>
+<span class="sourceLineNo">345</span>    * Counts the number of characters in the reader and then closes the reader.<a name="line.345"></a>
+<span class="sourceLineNo">346</span>    *<a name="line.346"></a>
+<span class="sourceLineNo">347</span>    * @param r The reader to read from.<a name="line.347"></a>
+<span class="sourceLineNo">348</span>    * @return The number of characters read.<a name="line.348"></a>
+<span class="sourceLineNo">349</span>    * @throws IOException<a name="line.349"></a>
+<span class="sourceLineNo">350</span>    */<a name="line.350"></a>
+<span class="sourceLineNo">351</span>   public static long count(Reader r) throws IOException {<a name="line.351"></a>
+<span class="sourceLineNo">352</span>      assertFieldNotNull(r, "r");<a name="line.352"></a>
+<span class="sourceLineNo">353</span>      long c = 0;<a name="line.353"></a>
+<span class="sourceLineNo">354</span>      long i;<a name="line.354"></a>
+<span class="sourceLineNo">355</span>      try {<a name="line.355"></a>
+<span class="sourceLineNo">356</span>         while ((i = r.skip(1024)) != 0)<a name="line.356"></a>
+<span class="sourceLineNo">357</span>            c += i;<a name="line.357"></a>
+<span class="sourceLineNo">358</span>      } finally {<a name="line.358"></a>
+<span class="sourceLineNo">359</span>         r.close();<a name="line.359"></a>
+<span class="sourceLineNo">360</span>      }<a name="line.360"></a>
+<span class="sourceLineNo">361</span>      return c;<a name="line.361"></a>
 <span class="sourceLineNo">362</span>   }<a name="line.362"></a>
 <span class="sourceLineNo">363</span><a name="line.363"></a>
 <span class="sourceLineNo">364</span>   /**<a name="line.364"></a>
-<span class="sourceLineNo">365</span>    * Close reader and ignore any exceptions.<a name="line.365"></a>
+<span class="sourceLineNo">365</span>    * Given the specified &lt;js&gt;"Content-Length"&lt;/js&gt; header value, return an appropriate buffer size.<a name="line.365"></a>
 <span class="sourceLineNo">366</span>    *<a name="line.366"></a>
 <span class="sourceLineNo">367</span>    * &lt;p&gt;<a name="line.367"></a>
-<span class="sourceLineNo">368</span>    * No-op if reader is &lt;jk&gt;null&lt;/jk&gt;.<a name="line.368"></a>
+<span class="sourceLineNo">368</span>    * The maximum buffer size is 1MB.<a name="line.368"></a>
 <span class="sourceLineNo">369</span>    *<a name="line.369"></a>
-<span class="sourceLineNo">370</span>    * @param r The reader to close.<a name="line.370"></a>
-<span class="sourceLineNo">371</span>    */<a name="line.371"></a>
-<span class="sourceLineNo">372</span>   public static void closeQuietly(Reader r) {<a name="line.372"></a>
-<span class="sourceLineNo">373</span>      try {<a name="line.373"></a>
-<span class="sourceLineNo">374</span>         if (r != null)<a name="line.374"></a>
-<span class="sourceLineNo">375</span>            r.close();<a name="line.375"></a>
-<span class="sourceLineNo">376</span>      } catch (IOException e) {}<a name="line.376"></a>
-<span class="sourceLineNo">377</span>   }<a name="line.377"></a>
-<span class="sourceLineNo">378</span><a name="line.378"></a>
-<span class="sourceLineNo">379</span>   /**<a name="line.379"></a>
-<span class="sourceLineNo">380</span>    * Close writer and ignore any exceptions.<a name="line.380"></a>
-<span class="sourceLineNo">381</span>    *<a name="line.381"></a>
-<span class="sourceLineNo">382</span>    * &lt;p&gt;<a name="line.382"></a>
-<span class="sourceLineNo">383</span>    * No-op if writer is &lt;jk&gt;null&lt;/jk&gt;.<a name="line.383"></a>
-<span class="sourceLineNo">384</span>    *<a name="line.384"></a>
-<span class="sourceLineNo">385</span>    * @param w The writer to close.<a name="line.385"></a>
-<span class="sourceLineNo">386</span>    */<a name="line.386"></a>
-<span class="sourceLineNo">387</span>   public static void closeQuietly(Writer w) {<a name="line.387"></a>
-<span class="sourceLineNo">388</span>      try {<a name="line.388"></a>
-<span class="sourceLineNo">389</span>         if (w != null)<a name="line.389"></a>
-<span class="sourceLineNo">390</span>            w.close();<a name="line.390"></a>
-<span class="sourceLineNo">391</span>      } catch (IOException e) {}<a name="line.391"></a>
-<span class="sourceLineNo">392</span>   }<a name="line.392"></a>
-<span class="sourceLineNo">393</span><a name="line.393"></a>
-<span class="sourceLineNo">394</span>   /**<a name="line.394"></a>
-<span class="sourceLineNo">395</span>    * Quietly close all specified input streams, output streams, readers, and writers.<a name="line.395"></a>
-<span class="sourceLineNo">396</span>    *<a name="line.396"></a>
-<span class="sourceLineNo">397</span>    * @param o The list of all objects to quietly close.<a name="line.397"></a>
-<span class="sourceLineNo">398</span>    */<a name="line.398"></a>
-<span class="sourceLineNo">399</span>   public static void closeQuietly(Object...o) {<a name="line.399"></a>
-<span class="sourceLineNo">400</span>      for (Object o2 : o) {<a name="line.400"></a>
-<span class="sourceLineNo">401</span>         if (o2 instanceof InputStream)<a name="line.401"></a>
-<span class="sourceLineNo">402</span>            closeQuietly((InputStream)o2);<a name="line.402"></a>
-<span class="sourceLineNo">403</span>         if (o2 instanceof OutputStream)<a name="line.403"></a>
-<span class="sourceLineNo">404</span>            closeQuietly((OutputStream)o2);<a name="line.404"></a>
-<span class="sourceLineNo">405</span>         if (o2 instanceof Reader)<a name="line.405"></a>
-<span class="sourceLineNo">406</span>            closeQuietly((Reader)o2);<a name="line.406"></a>
-<span class="sourceLineNo">407</span>         if (o2 instanceof Writer)<a name="line.407"></a>
-<span class="sourceLineNo">408</span>            closeQuietly((Writer)o2);<a name="line.408"></a>
-<span class="sourceLineNo">409</span>      }<a name="line.409"></a>
-<span class="sourceLineNo">410</span>   }<a name="line.410"></a>
-<span class="sourceLineNo">411</span><a name="line.411"></a>
-<span class="sourceLineNo">412</span>   /**<a name="line.412"></a>
-<span class="sourceLineNo">413</span>    * Flushes multiple output streams and writers in a single call.<a name="line.413"></a>
-<span class="sourceLineNo">414</span>    *<a name="line.414"></a>
-<span class="sourceLineNo">415</span>    * @param o<a name="line.415"></a>
-<span class="sourceLineNo">416</span>    *    The objects to flush.<a name="line.416"></a>
-<span class="sourceLineNo">417</span>    *    &lt;jk&gt;null&lt;/jk&gt; entries are ignored.<a name="line.417"></a>
-<span class="sourceLineNo">418</span>    * @throws IOException<a name="line.418"></a>
-<span class="sourceLineNo">419</span>    */<a name="line.419"></a>
-<span class="sourceLineNo">420</span>   public static void flush(Object...o) throws IOException {<a name="line.420"></a>
-<span class="sourceLineNo">421</span>      IOException ex = null;<a name="line.421"></a>
-<span class="sourceLineNo">422</span>      for (Object o2 : o) {<a name="line.422"></a>
-<span class="sourceLineNo">423</span>         try {<a name="line.423"></a>
-<span class="sourceLineNo">424</span>            if (o2 instanceof OutputStream)<a name="line.424"></a>
-<span class="sourceLineNo">425</span>               ((OutputStream)o2).flush();<a name="line.425"></a>
-<span class="sourceLineNo">426</span>            if (o2 instanceof Writer)<a name="line.426"></a>
-<span class="sourceLineNo">427</span>               ((Writer)o2).flush();<a name="line.427"></a>
-<span class="sourceLineNo">428</span>         } catch (IOException e) {<a name="line.428"></a>
-<span class="sourceLineNo">429</span>            ex = e;<a name="line.429"></a>
-<span class="sourceLineNo">430</span>         }<a name="line.430"></a>
-<span class="sourceLineNo">431</span>      }<a name="line.431"></a>
-<span class="sourceLineNo">432</span>      if (ex != null)<a name="line.432"></a>
-<span class="sourceLineNo">433</span>         throw ex;<a name="line.433"></a>
-<span class="sourceLineNo">434</span>   }<a name="line.434"></a>
-<span class="sourceLineNo">435</span><a name="line.435"></a>
-<span class="sourceLineNo">436</span>   /**<a name="line.436"></a>
-<span class="sourceLineNo">437</span>    * Close all specified input streams, output streams, readers, and writers.<a name="line.437"></a>
-<span class="sourceLineNo">438</span>    *<a name="line.438"></a>
-<span class="sourceLineNo">439</span>    * @param o<a name="line.439"></a>
-<span class="sourceLineNo">440</span>    *    The list of all objects to close.<a name="line.440"></a>
-<span class="sourceLineNo">441</span>    *    &lt;jk&gt;null&lt;/jk&gt; entries are ignored.<a name="line.441"></a>
-<span class="sourceLineNo">442</span>    * @throws IOException<a name="line.442"></a>
-<span class="sourceLineNo">443</span>    */<a name="line.443"></a>
-<span class="sourceLineNo">444</span>   public static void close(Object...o) throws IOException {<a name="line.444"></a>
-<span class="sourceLineNo">445</span>      IOException ex = null;<a name="line.445"></a>
-<span class="sourceLineNo">446</span>      for (Object o2 : o) {<a name="line.446"></a>
-<span class="sourceLineNo">447</span>         try {<a name="line.447"></a>
-<span class="sourceLineNo">448</span>            if (o2 instanceof InputStream)<a name="line.448"></a>
-<span class="sourceLineNo">449</span>               ((InputStream)o2).close();<a name="line.449"></a>
-<span class="sourceLineNo">450</span>            if (o2 instanceof OutputStream)<a name="line.450"></a>
-<span class="sourceLineNo">451</span>               ((OutputStream)o2).close();<a name="line.451"></a>
-<span class="sourceLineNo">452</span>            if (o2 instanceof Reader)<a name="line.452"></a>
-<span class="sourceLineNo">453</span>               ((Reader)o2).close();<a name="line.453"></a>
-<span class="sourceLineNo">454</span>            if (o2 instanceof Writer)<a name="line.454"></a>
-<span class="sourceLineNo">455</span>               ((Writer)o2).close();<a name="line.455"></a>
-<span class="sourceLineNo">456</span>         } catch (IOException e) {<a name="line.456"></a>
-<span class="sourceLineNo">457</span>            ex = e;<a name="line.457"></a>
-<span class="sourceLineNo">458</span>         }<a name="line.458"></a>
-<span class="sourceLineNo">459</span>      }<a name="line.459"></a>
-<span class="sourceLineNo">460</span>      if (ex != null)<a name="line.460"></a>
-<span class="sourceLineNo">461</span>         throw ex;<a name="line.461"></a>
-<span class="sourceLineNo">462</span>   }<a name="line.462"></a>
-<span class="sourceLineNo">463</span><a name="line.463"></a>
-<span class="sourceLineNo">464</span><a name="line.464"></a>
-<span class="sourceLineNo">465</span>   /**<a name="line.465"></a>
-<span class="sourceLineNo">466</span>    * Converts an object to an &lt;code&gt;InputStream&lt;/code&gt;.<a name="line.466"></a>
-<span class="sourceLineNo">467</span>    *<a name="line.467"></a>
-<span class="sourceLineNo">468</span>    * @param o<a name="line.468"></a>
-<span class="sourceLineNo">469</span>    *    The object to convert to an input stream.<a name="line.469"></a>
-<span class="sourceLineNo">470</span>    *    Can be any of the following:<a name="line.470"></a>
-<span class="sourceLineNo">471</span>    *    &lt;ul&gt;<a name="line.471"></a>
-<span class="sourceLineNo">472</span>    *       &lt;li&gt;{@link InputStream}<a name="line.472"></a>
-<span class="sourceLineNo">473</span>    *       &lt;li&gt;{@link Reader}<a name="line.473"></a>
-<span class="sourceLineNo">474</span>    *       &lt;li&gt;{@link File}<a name="line.474"></a>
-<span class="sourceLineNo">475</span>    *       &lt;li&gt;{@link CharSequence} - Converted to UTF-8 stream.<a name="line.475"></a>
-<span class="sourceLineNo">476</span>    *       &lt;li&gt;&lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;[]&lt;/code&gt;<a name="line.476"></a>
-<span class="sourceLineNo">477</span>    *       &lt;li&gt;&lt;code&gt;&lt;jk&gt;null&lt;/jk&gt;&lt;/code&gt; - Returns null.<a name="line.477"></a>
-<span class="sourceLineNo">478</span>    *    &lt;/ul&gt;<a name="line.478"></a>
-<span class="sourceLineNo">479</span>    * @return The object converted to an input stream.<a name="line.479"></a>
-<span class="sourceLineNo">480</span>    * @throws IOException If invalid object passed in or file could not be read.<a name="line.480"></a>
-<span class="sourceLineNo">481</span>    */<a name="line.481"></a>
-<span class="sourceLineNo">482</span>   public static InputStream toInputStream(Object o) throws IOException {<a name="line.482"></a>
-<span class="sourceLineNo">483</span>      if (o == null)<a name="line.483"></a>
-<span class="sourceLineNo">484</span>         return null;<a name="line.484"></a>
-<span class="sourceLineNo">485</span>      if (o instanceof InputStream)<a name="line.485"></a>
-<span class="sourceLineNo">486</span>         return (InputStream)o;<a name="line.486"></a>
-<span class="sourceLineNo">487</span>      if (o instanceof File)<a name="line.487"></a>
-<span class="sourceLineNo">488</span>         return new FileInputStream((File)o);<a name="line.488"></a>
-<span class="sourceLineNo">489</span>      if (o instanceof byte[])<a name="line.489"></a>
-<span class="sourceLineNo">490</span>         return new ByteArrayInputStream((byte[])o);<a name="line.490"></a>
-<span class="sourceLineNo">491</span>      if (o instanceof CharSequence)<a name="line.491"></a>
-<span class="sourceLineNo">492</span>         return new ByteArrayInputStream(((CharSequence)o).toString().getBytes(UTF8));<a name="line.492"></a>
-<span class="sourceLineNo">493</span>      if (o instanceof Reader)<a name="line.493"></a>
-<span class="sourceLineNo">494</span>         return new ByteArrayInputStream(IOUtils.read((Reader)o).getBytes(UTF8));<a name="line.494"></a>
-<span class="sourceLineNo">495</span>      throw new IOException("Invalid object type passed to IOUtils.toInputStream(Object): " + o.getClass().getName());<a name="line.495"></a>
-<span class="sourceLineNo">496</span>   }<a name="line.496"></a>
-<span class="sourceLineNo">497</span>}<a name="line.497"></a>
+<span class="sourceLineNo">370</span>    * @param contentLength The value of the &lt;js&gt;"Content-Length"&lt;/js&gt; header.<a name="line.370"></a>
+<span class="sourceLineNo">371</span>    * @return The appropriate buffer size.<a name="line.371"></a>
+<span class="sourceLineNo">372</span>    */<a name="line.372"></a>
+<span class="sourceLineNo">373</span>   public static int getBufferSize(String contentLength) {<a name="line.373"></a>
+<span class="sourceLineNo">374</span>      try {<a name="line.374"></a>
+<span class="sourceLineNo">375</span>         if (! StringUtils.isEmpty(contentLength)) {<a name="line.375"></a>
+<span class="sourceLineNo">376</span>            long l = Long.decode(contentLength);<a name="line.376"></a>
+<span class="sourceLineNo">377</span>            if (l &gt; 1048576)<a name="line.377"></a>
+<span class="sourceLineNo">378</span>               return 1048576;<a name="line.378"></a>
+<span class="sourceLineNo">379</span>            if (l &lt;= 0)<a name="line.379"></a>
+<span class="sourceLineNo">380</span>               return 8192;<a name="line.380"></a>
+<span class="sourceLineNo">381</span>            return (int)l;<a name="line.381"></a>
+<span class="sourceLineNo">382</span>         }<a name="line.382"></a>
+<span class="sourceLineNo">383</span>      } catch (Exception e) {<a name="line.383"></a>
+<span class="sourceLineNo">384</span>         return 8192;<a name="line.384"></a>
+<span class="sourceLineNo">385</span>      }<a name="line.385"></a>
+<span class="sourceLineNo">386</span>      return 8192;<a name="line.386"></a>
+<span class="sourceLineNo">387</span>   }<a name="line.387"></a>
+<span class="sourceLineNo">388</span><a name="line.388"></a>
+<span class="sourceLineNo">389</span>   /**<a name="line.389"></a>
+<span class="sourceLineNo">390</span>    * Close input stream and ignore any exceptions.<a name="line.390"></a>
+<span class="sourceLineNo">391</span>    *<a name="line.391"></a>
+<span class="sourceLineNo">392</span>    * &lt;p&gt;<a name="line.392"></a>
+<span class="sourceLineNo">393</span>    * No-op if input stream is &lt;jk&gt;null&lt;/jk&gt;.<a name="line.393"></a>
+<span class="sourceLineNo">394</span>    *<a name="line.394"></a>
+<span class="sourceLineNo">395</span>    * @param is The input stream to close.<a name="line.395"></a>
+<span class="sourceLineNo">396</span>    */<a name="line.396"></a>
+<span class="sourceLineNo">397</span>   public static void closeQuietly(InputStream is) {<a name="line.397"></a>
+<span class="sourceLineNo">398</span>      try {<a name="line.398"></a>
+<span class="sourceLineNo">399</span>         if (is != null)<a name="line.399"></a>
+<span class="sourceLineNo">400</span>            is.close();<a name="line.400"></a>
+<span class="sourceLineNo">401</span>      } catch (IOException e) {}<a name="line.401"></a>
+<span class="sourceLineNo">402</span>   }<a name="line.402"></a>
+<span class="sourceLineNo">403</span><a name="line.403"></a>
+<span class="sourceLineNo">404</span>   /**<a name="line.404"></a>
+<span class="sourceLineNo">405</span>    * Close output stream and ignore any exceptions.<a name="line.405"></a>
+<span class="sourceLineNo">406</span>    *<a name="line.406"></a>
+<span class="sourceLineNo">407</span>    * &lt;p&gt;<a name="line.407"></a>
+<span class="sourceLineNo">408</span>    * No-op if output stream is &lt;jk&gt;null&lt;/jk&gt;.<a name="line.408"></a>
+<span class="sourceLineNo">409</span>    *<a name="line.409"></a>
+<span class="sourceLineNo">410</span>    * @param os The output stream to close.<a name="line.410"></a>
+<span class="sourceLineNo">411</span>    */<a name="line.411"></a>
+<span class="sourceLineNo">412</span>   public static void closeQuietly(OutputStream os) {<a name="line.412"></a>
+<span class="sourceLineNo">413</span>      try {<a name="line.413"></a>
+<span class="sourceLineNo">414</span>         if (os != null)<a name="line.414"></a>
+<span class="sourceLineNo">415</span>            os.close();<a name="line.415"></a>
+<span class="sourceLineNo">416</span>      } catch (IOException e) {}<a name="line.416"></a>
+<span class="sourceLineNo">417</span>   }<a name="line.417"></a>
+<span class="sourceLineNo">418</span><a name="line.418"></a>
+<span class="sourceLineNo">419</span>   /**<a name="line.419"></a>
+<span class="sourceLineNo">420</span>    * Close reader and ignore any exceptions.<a name="line.420"></a>
+<span class="sourceLineNo">421</span>    *<a name="line.421"></a>
+<span class="sourceLineNo">422</span>    * &lt;p&gt;<a name="line.422"></a>
+<span class="sourceLineNo">423</span>    * No-op if reader is &lt;jk&gt;null&lt;/jk&gt;.<a name="line.423"></a>
+<span class="sourceLineNo">424</span>    *<a name="line.424"></a>
+<span class="sourceLineNo">425</span>    * @param r The reader to close.<a name="line.425"></a>
+<span class="sourceLineNo">426</span>    */<a name="line.426"></a>
+<span class="sourceLineNo">427</span>   public static void closeQuietly(Reader r) {<a name="line.427"></a>
+<span class="sourceLineNo">428</span>      try {<a name="line.428"></a>
+<span class="sourceLineNo">429</span>         if (r != null)<a name="line.429"></a>
+<span class="sourceLineNo">430</span>            r.close();<a name="line.430"></a>
+<span class="sourceLineNo">431</span>      } catch (IOException e) {}<a name="line.431"></a>
+<span class="sourceLineNo">432</span>   }<a name="line.432"></a>
+<span class="sourceLineNo">433</span><a name="line.433"></a>
+<span class="sourceLineNo">434</span>   /**<a name="line.434"></a>
+<span class="sourceLineNo">435</span>    * Close writer and ignore any exceptions.<a name="line.435"></a>
+<span class="sourceLineNo">436</span>    *<a name="line.436"></a>
+<span class="sourceLineNo">437</span>    * &lt;p&gt;<a name="line.437"></a>
+<span class="sourceLineNo">438</span>    * No-op if writer is &lt;jk&gt;null&lt;/jk&gt;.<a name="line.438"></a>
+<span class="sourceLineNo">439</span>    *<a name="line.439"></a>
+<span class="sourceLineNo">440</span>    * @param w The writer to close.<a name="line.440"></a>
+<span class="sourceLineNo">441</span>    */<a name="line.441"></a>
+<span class="sourceLineNo">442</span>   public static void closeQuietly(Writer w) {<a name="line.442"></a>
+<span class="sourceLineNo">443</span>      try {<a name="line.443"></a>
+<span class="sourceLineNo">444</span>         if (w != null)<a name="line.444"></a>
+<span class="sourceLineNo">445</span>            w.close();<a name="line.445"></a>
+<span class="sourceLineNo">446</span>      } catch (IOException e) {}<a name="line.446"></a>
+<span class="sourceLineNo">447</span>   }<a name="line.447"></a>
+<span class="sourceLineNo">448</span><a name="line.448"></a>
+<span class="sourceLineNo">449</span>   /**<a name="line.449"></a>
+<span class="sourceLineNo">450</span>    * Quietly close all specified input streams, output streams, readers, and writers.<a name="line.450"></a>
+<span class="sourceLineNo">451</span>    *<a name="line.451"></a>
+<span class="sourceLineNo">452</span>    * @param o The list of all objects to quietly close.<a name="line.452"></a>
+<span class="sourceLineNo">453</span>    */<a name="line.453"></a>
+<span class="sourceLineNo">454</span>   public static void closeQuietly(Object...o) {<a name="line.454"></a>
+<span class="sourceLineNo">455</span>      for (Object o2 : o) {<a name="line.455"></a>
+<span class="sourceLineNo">456</span>         if (o2 instanceof InputStream)<a name="line.456"></a>
+<span class="sourceLineNo">457</span>            closeQuietly((InputStream)o2);<a name="line.457"></a>
+<span class="sourceLineNo">458</span>         if (o2 instanceof OutputStream)<a name="line.458"></a>
+<span class="sourceLineNo">459</span>            closeQuietly((OutputStream)o2);<a name="line.459"></a>
+<span class="sourceLineNo">460</span>         if (o2 instanceof Reader)<a name="line.460"></a>
+<span class="sourceLineNo">461</span>            closeQuietly((Reader)o2);<a name="line.461"></a>
+<span class="sourceLineNo">462</span>         if (o2 instanceof Writer)<a name="line.462"></a>
+<span class="sourceLineNo">463</span>            closeQuietly((Writer)o2);<a name="line.463"></a>
+<span class="sourceLineNo">464</span>      }<a name="line.464"></a>
+<span class="sourceLineNo">465</span>   }<a name="line.465"></a>
+<span class="sourceLineNo">466</span><a name="line.466"></a>
+<span class="sourceLineNo">467</span>   /**<a name="line.467"></a>
+<span class="sourceLineNo">468</span>    * Flushes multiple output streams and writers in a single call.<a name="line.468"></a>
+<span class="sourceLineNo">469</span>    *<a name="line.469"></a>
+<span class="sourceLineNo">470</span>    * @param o<a name="line.470"></a>
+<span class="sourceLineNo">471</span>    *    The objects to flush.<a name="line.471"></a>
+<span class="sourceLineNo">472</span>    *    &lt;jk&gt;null&lt;/jk&gt; entries are ignored.<a name="line.472"></a>
+<span class="sourceLineNo">473</span>    * @throws IOException<a name="line.473"></a>
+<span class="sourceLineNo">474</span>    */<a name="line.474"></a>
+<span class="sourceLineNo">475</span>   public static void flush(Object...o) throws IOException {<a name="line.475"></a>
+<span class="sourceLineNo">476</span>      IOException ex = null;<a name="line.476"></a>
+<span class="sourceLineNo">477</span>      for (Object o2 : o) {<a name="line.477"></a>
+<span class="sourceLineNo">478</span>         try {<a name="line.478"></a>
+<span class="sourceLineNo">479</span>            if (o2 instanceof OutputStream)<a name="line.479"></a>
+<span class="sourceLineNo">480</span>               ((OutputStream)o2).flush();<a name="line.480"></a>
+<span class="sourceLineNo">481</span>            if (o2 instanceof Writer)<a name="line.481"></a>
+<span class="sourceLineNo">482</span>               ((Writer)o2).flush();<a name="line.482"></a>
+<span class="sourceLineNo">483</span>         } catch (IOException e) {<a name="line.483"></a>
+<span class="sourceLineNo">484</span>            ex = e;<a name="line.484"></a>
+<span class="sourceLineNo">485</span>         }<a name="line.485"></a>
+<span class="sourceLineNo">486</span>      }<a name="line.486"></a>
+<span class="sourceLineNo">487</span>      if (ex != null)<a name="line.487"></a>
+<span class="sourceLineNo">488</span>         throw ex;<a name="line.488"></a>
+<span class="sourceLineNo">489</span>   }<a name="line.489"></a>
+<span class="sourceLineNo">490</span><a name="line.490"></a>
+<span class="sourceLineNo">491</span>   /**<a name="line.491"></a>
+<span class="sourceLineNo">492</span>    * Close all specified input streams, output streams, readers, and writers.<a name="line.492"></a>
+<span class="sourceLineNo">493</span>    *<a name="line.493"></a>
+<span class="sourceLineNo">494</span>    * @param o<a name="line.494"></a>
+<span class="sourceLineNo">495</span>    *    The list of all objects to close.<a name="line.495"></a>
+<span class="sourceLineNo">496</span>    *    &lt;jk&gt;null&lt;/jk&gt; entries are ignored.<a name="line.496"></a>
+<span class="sourceLineNo">497</span>    * @throws IOException<a name="line.497"></a>
+<span class="sourceLineNo">498</span>    */<a name="line.498"></a>
+<span class="sourceLineNo">499</span>   public static void close(Object...o) throws IOException {<a name="line.499"></a>
+<span class="sourceLineNo">500</span>      IOException ex = null;<a name="line.500"></a>
+<span class="sourceLineNo">501</span>      for (Object o2 : o) {<a name="line.501"></a>
+<span class="sourceLineNo">502</span>         try {<a name="line.502"></a>
+<span class="sourceLineNo">503</span>            if (o2 instanceof InputStream)<a name="line.503"></a>
+<span class="sourceLineNo">504</span>               ((InputStream)o2).close();<a name="line.504"></a>
+<span class="sourceLineNo">505</span>            if (o2 instanceof OutputStream)<a name="line.505"></a>
+<span class="sourceLineNo">506</span>               ((OutputStream)o2).close();<a name="line.506"></a>
+<span class="sourceLineNo">507</span>            if (o2 instanceof Reader)<a name="line.507"></a>
+<span class="sourceLineNo">508</span>               ((Reader)o2).close();<a name="line.508"></a>
+<span class="sourceLineNo">509</span>            if (o2 instanceof Writer)<a name="line.509"></a>
+<span class="sourceLineNo">510</span>               ((Writer)o2).close();<a name="line.510"></a>
+<span class="sourceLineNo">511</span>         } catch (IOException e) {<a name="line.511"></a>
+<span class="sourceLineNo">512</span>            ex = e;<a name="line.512"></a>
+<span class="sourceLineNo">513</span>         }<a name="line.513"></a>
+<span class="sourceLineNo">514</span>      }<a name="line.514"></a>
+<span class="sourceLineNo">515</span>      if (ex != null)<a name="line.515"></a>
+<span class="sourceLineNo">516</span>         throw ex;<a name="lin

<TRUNCATED>


[23/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/msgpack/MsgPackSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/msgpack/MsgPackSerializer.html b/content/site/apidocs/src-html/org/apache/juneau/msgpack/MsgPackSerializer.html
index f2b088c..091c996 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/msgpack/MsgPackSerializer.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/msgpack/MsgPackSerializer.html
@@ -21,56 +21,54 @@
 <span class="sourceLineNo">013</span>package org.apache.juneau.msgpack;<a name="line.13"></a>
 <span class="sourceLineNo">014</span><a name="line.14"></a>
 <span class="sourceLineNo">015</span>import org.apache.juneau.*;<a name="line.15"></a>
-<span class="sourceLineNo">016</span>import org.apache.juneau.annotation.*;<a name="line.16"></a>
-<span class="sourceLineNo">017</span>import org.apache.juneau.serializer.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span><a name="line.18"></a>
-<span class="sourceLineNo">019</span>/**<a name="line.19"></a>
-<span class="sourceLineNo">020</span> * Serializes POJO models to MessagePack.<a name="line.20"></a>
-<span class="sourceLineNo">021</span> *<a name="line.21"></a>
-<span class="sourceLineNo">022</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.22"></a>
-<span class="sourceLineNo">023</span> *<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;octal/msgpack&lt;/code&gt;<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * &lt;p&gt;<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;octal/msgpack&lt;/code&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * This class has the following properties associated with it:<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * &lt;ul&gt;<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *    &lt;li&gt;{@link MsgPackSerializerContext}<a name="line.32"></a>
-<span class="sourceLineNo">033</span> *    &lt;li&gt;{@link SerializerContext}<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *    &lt;li&gt;{@link BeanContext}<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * &lt;/ul&gt;<a name="line.35"></a>
-<span class="sourceLineNo">036</span> */<a name="line.36"></a>
-<span class="sourceLineNo">037</span>@Produces("octal/msgpack")<a name="line.37"></a>
-<span class="sourceLineNo">038</span>public class MsgPackSerializer extends OutputStreamSerializer {<a name="line.38"></a>
-<span class="sourceLineNo">039</span><a name="line.39"></a>
-<span class="sourceLineNo">040</span>   /** Default serializer, all default settings.*/<a name="line.40"></a>
-<span class="sourceLineNo">041</span>   public static final MsgPackSerializer DEFAULT = new MsgPackSerializer(PropertyStore.create());<a name="line.41"></a>
-<span class="sourceLineNo">042</span><a name="line.42"></a>
+<span class="sourceLineNo">016</span>import org.apache.juneau.serializer.*;<a name="line.16"></a>
+<span class="sourceLineNo">017</span><a name="line.17"></a>
+<span class="sourceLineNo">018</span>/**<a name="line.18"></a>
+<span class="sourceLineNo">019</span> * Serializes POJO models to MessagePack.<a name="line.19"></a>
+<span class="sourceLineNo">020</span> *<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.21"></a>
+<span class="sourceLineNo">022</span> *<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;octal/msgpack&lt;/code&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * &lt;p&gt;<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;octal/msgpack&lt;/code&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * This class has the following properties associated with it:<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * &lt;ul&gt;<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *    &lt;li&gt;{@link MsgPackSerializerContext}<a name="line.31"></a>
+<span class="sourceLineNo">032</span> *    &lt;li&gt;{@link SerializerContext}<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *    &lt;li&gt;{@link BeanContext}<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * &lt;/ul&gt;<a name="line.34"></a>
+<span class="sourceLineNo">035</span> */<a name="line.35"></a>
+<span class="sourceLineNo">036</span>public class MsgPackSerializer extends OutputStreamSerializer {<a name="line.36"></a>
+<span class="sourceLineNo">037</span><a name="line.37"></a>
+<span class="sourceLineNo">038</span>   /** Default serializer, all default settings.*/<a name="line.38"></a>
+<span class="sourceLineNo">039</span>   public static final MsgPackSerializer DEFAULT = new MsgPackSerializer(PropertyStore.create());<a name="line.39"></a>
+<span class="sourceLineNo">040</span><a name="line.40"></a>
+<span class="sourceLineNo">041</span><a name="line.41"></a>
+<span class="sourceLineNo">042</span>   private final MsgPackSerializerContext ctx;<a name="line.42"></a>
 <span class="sourceLineNo">043</span><a name="line.43"></a>
-<span class="sourceLineNo">044</span>   private final MsgPackSerializerContext ctx;<a name="line.44"></a>
-<span class="sourceLineNo">045</span><a name="line.45"></a>
-<span class="sourceLineNo">046</span>   /**<a name="line.46"></a>
-<span class="sourceLineNo">047</span>    * Constructor.<a name="line.47"></a>
-<span class="sourceLineNo">048</span>    *<a name="line.48"></a>
-<span class="sourceLineNo">049</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.49"></a>
-<span class="sourceLineNo">050</span>    */<a name="line.50"></a>
-<span class="sourceLineNo">051</span>   public MsgPackSerializer(PropertyStore propertyStore) {<a name="line.51"></a>
-<span class="sourceLineNo">052</span>      super(propertyStore);<a name="line.52"></a>
-<span class="sourceLineNo">053</span>      this.ctx = createContext(MsgPackSerializerContext.class);<a name="line.53"></a>
-<span class="sourceLineNo">054</span>   }<a name="line.54"></a>
-<span class="sourceLineNo">055</span><a name="line.55"></a>
-<span class="sourceLineNo">056</span>   @Override /* CoreObject */<a name="line.56"></a>
-<span class="sourceLineNo">057</span>   public MsgPackSerializerBuilder builder() {<a name="line.57"></a>
-<span class="sourceLineNo">058</span>      return new MsgPackSerializerBuilder(propertyStore);<a name="line.58"></a>
-<span class="sourceLineNo">059</span>   }<a name="line.59"></a>
-<span class="sourceLineNo">060</span><a name="line.60"></a>
-<span class="sourceLineNo">061</span>   @Override /* Serializer */<a name="line.61"></a>
-<span class="sourceLineNo">062</span>   public OutputStreamSerializerSession createSession(SerializerSessionArgs args) {<a name="line.62"></a>
-<span class="sourceLineNo">063</span>      return new MsgPackSerializerSession(ctx, args);<a name="line.63"></a>
-<span class="sourceLineNo">064</span>   }<a name="line.64"></a>
-<span class="sourceLineNo">065</span>}<a name="line.65"></a>
+<span class="sourceLineNo">044</span>   /**<a name="line.44"></a>
+<span class="sourceLineNo">045</span>    * Constructor.<a name="line.45"></a>
+<span class="sourceLineNo">046</span>    *<a name="line.46"></a>
+<span class="sourceLineNo">047</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.47"></a>
+<span class="sourceLineNo">048</span>    */<a name="line.48"></a>
+<span class="sourceLineNo">049</span>   public MsgPackSerializer(PropertyStore propertyStore) {<a name="line.49"></a>
+<span class="sourceLineNo">050</span>      super(propertyStore, "octal/msgpack");<a name="line.50"></a>
+<span class="sourceLineNo">051</span>      this.ctx = createContext(MsgPackSerializerContext.class);<a name="line.51"></a>
+<span class="sourceLineNo">052</span>   }<a name="line.52"></a>
+<span class="sourceLineNo">053</span><a name="line.53"></a>
+<span class="sourceLineNo">054</span>   @Override /* CoreObject */<a name="line.54"></a>
+<span class="sourceLineNo">055</span>   public MsgPackSerializerBuilder builder() {<a name="line.55"></a>
+<span class="sourceLineNo">056</span>      return new MsgPackSerializerBuilder(propertyStore);<a name="line.56"></a>
+<span class="sourceLineNo">057</span>   }<a name="line.57"></a>
+<span class="sourceLineNo">058</span><a name="line.58"></a>
+<span class="sourceLineNo">059</span>   @Override /* Serializer */<a name="line.59"></a>
+<span class="sourceLineNo">060</span>   public OutputStreamSerializerSession createSession(SerializerSessionArgs args) {<a name="line.60"></a>
+<span class="sourceLineNo">061</span>      return new MsgPackSerializerSession(ctx, args);<a name="line.61"></a>
+<span class="sourceLineNo">062</span>   }<a name="line.62"></a>
+<span class="sourceLineNo">063</span>}<a name="line.63"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/msgpack/MsgPackSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/msgpack/MsgPackSerializerSession.html b/content/site/apidocs/src-html/org/apache/juneau/msgpack/MsgPackSerializerSession.html
index 551f983..4460297 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/msgpack/MsgPackSerializerSession.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/msgpack/MsgPackSerializerSession.html
@@ -25,33 +25,33 @@
 <span class="sourceLineNo">017</span>import java.util.*;<a name="line.17"></a>
 <span class="sourceLineNo">018</span><a name="line.18"></a>
 <span class="sourceLineNo">019</span>import org.apache.juneau.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span>import org.apache.juneau.transform.*;<a name="line.21"></a>
-<span class="sourceLineNo">022</span><a name="line.22"></a>
-<span class="sourceLineNo">023</span>/**<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * Session object that lives for the duration of a single use of {@link MsgPackSerializer}.<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * &lt;p&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> * This class is NOT thread safe.<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * It is typically discarded after one-time use although it can be reused within the same thread.<a name="line.28"></a>
-<span class="sourceLineNo">029</span> */<a name="line.29"></a>
-<span class="sourceLineNo">030</span>public final class MsgPackSerializerSession extends OutputStreamSerializerSession {<a name="line.30"></a>
-<span class="sourceLineNo">031</span><a name="line.31"></a>
-<span class="sourceLineNo">032</span>   private final boolean<a name="line.32"></a>
-<span class="sourceLineNo">033</span>      addBeanTypeProperties;<a name="line.33"></a>
-<span class="sourceLineNo">034</span><a name="line.34"></a>
-<span class="sourceLineNo">035</span>   /**<a name="line.35"></a>
-<span class="sourceLineNo">036</span>    * Create a new session using properties specified in the context.<a name="line.36"></a>
-<span class="sourceLineNo">037</span>    *<a name="line.37"></a>
-<span class="sourceLineNo">038</span>    * @param ctx<a name="line.38"></a>
-<span class="sourceLineNo">039</span>    *    The context creating this session object.<a name="line.39"></a>
-<span class="sourceLineNo">040</span>    *    The context contains all the configuration settings for this object.<a name="line.40"></a>
-<span class="sourceLineNo">041</span>    * @param args<a name="line.41"></a>
-<span class="sourceLineNo">042</span>    *    Runtime arguments.<a name="line.42"></a>
-<span class="sourceLineNo">043</span>    *    These specify session-level information such as locale and URI context.<a name="line.43"></a>
-<span class="sourceLineNo">044</span>    *    It also include session-level properties that override the properties defined on the bean and<a name="line.44"></a>
-<span class="sourceLineNo">045</span>    *    serializer contexts.<a name="line.45"></a>
-<span class="sourceLineNo">046</span>    *    &lt;br&gt;If &lt;jk&gt;null&lt;/jk&gt;, defaults to {@link SerializerSessionArgs#DEFAULT}.<a name="line.46"></a>
+<span class="sourceLineNo">020</span>import org.apache.juneau.internal.*;<a name="line.20"></a>
+<span class="sourceLineNo">021</span>import org.apache.juneau.serializer.*;<a name="line.21"></a>
+<span class="sourceLineNo">022</span>import org.apache.juneau.transform.*;<a name="line.22"></a>
+<span class="sourceLineNo">023</span><a name="line.23"></a>
+<span class="sourceLineNo">024</span>/**<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * Session object that lives for the duration of a single use of {@link MsgPackSerializer}.<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * &lt;p&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * This class is NOT thread safe.<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * It is typically discarded after one-time use although it can be reused within the same thread.<a name="line.29"></a>
+<span class="sourceLineNo">030</span> */<a name="line.30"></a>
+<span class="sourceLineNo">031</span>public final class MsgPackSerializerSession extends OutputStreamSerializerSession {<a name="line.31"></a>
+<span class="sourceLineNo">032</span><a name="line.32"></a>
+<span class="sourceLineNo">033</span>   private final boolean<a name="line.33"></a>
+<span class="sourceLineNo">034</span>      addBeanTypeProperties;<a name="line.34"></a>
+<span class="sourceLineNo">035</span><a name="line.35"></a>
+<span class="sourceLineNo">036</span>   /**<a name="line.36"></a>
+<span class="sourceLineNo">037</span>    * Create a new session using properties specified in the context.<a name="line.37"></a>
+<span class="sourceLineNo">038</span>    *<a name="line.38"></a>
+<span class="sourceLineNo">039</span>    * @param ctx<a name="line.39"></a>
+<span class="sourceLineNo">040</span>    *    The context creating this session object.<a name="line.40"></a>
+<span class="sourceLineNo">041</span>    *    The context contains all the configuration settings for this object.<a name="line.41"></a>
+<span class="sourceLineNo">042</span>    * @param args<a name="line.42"></a>
+<span class="sourceLineNo">043</span>    *    Runtime arguments.<a name="line.43"></a>
+<span class="sourceLineNo">044</span>    *    These specify session-level information such as locale and URI context.<a name="line.44"></a>
+<span class="sourceLineNo">045</span>    *    It also include session-level properties that override the properties defined on the bean and<a name="line.45"></a>
+<span class="sourceLineNo">046</span>    *    serializer contexts.<a name="line.46"></a>
 <span class="sourceLineNo">047</span>    */<a name="line.47"></a>
 <span class="sourceLineNo">048</span>   protected MsgPackSerializerSession(MsgPackSerializerContext ctx, SerializerSessionArgs args) {<a name="line.48"></a>
 <span class="sourceLineNo">049</span>      super(ctx, args);<a name="line.49"></a>
@@ -151,88 +151,92 @@
 <span class="sourceLineNo">143</span>      }<a name="line.143"></a>
 <span class="sourceLineNo">144</span>      else if (sType.isArray()) {<a name="line.144"></a>
 <span class="sourceLineNo">145</span>         serializeCollection(out, toList(sType.getInnerClass(), o), eType);<a name="line.145"></a>
-<span class="sourceLineNo">146</span>      } else<a name="line.146"></a>
-<span class="sourceLineNo">147</span>         out.appendString(toString(o));<a name="line.147"></a>
-<span class="sourceLineNo">148</span><a name="line.148"></a>
-<span class="sourceLineNo">149</span>      if (! isRecursion)<a name="line.149"></a>
-<span class="sourceLineNo">150</span>         pop();<a name="line.150"></a>
-<span class="sourceLineNo">151</span>      return out;<a name="line.151"></a>
-<span class="sourceLineNo">152</span>   }<a name="line.152"></a>
-<span class="sourceLineNo">153</span><a name="line.153"></a>
-<span class="sourceLineNo">154</span>   @SuppressWarnings({ "rawtypes", "unchecked" })<a name="line.154"></a>
-<span class="sourceLineNo">155</span>   private void serializeMap(MsgPackOutputStream out, Map m, ClassMeta&lt;?&gt; type) throws Exception {<a name="line.155"></a>
-<span class="sourceLineNo">156</span><a name="line.156"></a>
-<span class="sourceLineNo">157</span>      ClassMeta&lt;?&gt; keyType = type.getKeyType(), valueType = type.getValueType();<a name="line.157"></a>
-<span class="sourceLineNo">158</span><a name="line.158"></a>
-<span class="sourceLineNo">159</span>      m = sort(m);<a name="line.159"></a>
+<span class="sourceLineNo">146</span>      }<a name="line.146"></a>
+<span class="sourceLineNo">147</span>      else if (sType.isReader() || sType.isInputStream()) {<a name="line.147"></a>
+<span class="sourceLineNo">148</span>         IOUtils.pipe(o, out);<a name="line.148"></a>
+<span class="sourceLineNo">149</span>      }<a name="line.149"></a>
+<span class="sourceLineNo">150</span>      else<a name="line.150"></a>
+<span class="sourceLineNo">151</span>         out.appendString(toString(o));<a name="line.151"></a>
+<span class="sourceLineNo">152</span><a name="line.152"></a>
+<span class="sourceLineNo">153</span>      if (! isRecursion)<a name="line.153"></a>
+<span class="sourceLineNo">154</span>         pop();<a name="line.154"></a>
+<span class="sourceLineNo">155</span>      return out;<a name="line.155"></a>
+<span class="sourceLineNo">156</span>   }<a name="line.156"></a>
+<span class="sourceLineNo">157</span><a name="line.157"></a>
+<span class="sourceLineNo">158</span>   @SuppressWarnings({ "rawtypes", "unchecked" })<a name="line.158"></a>
+<span class="sourceLineNo">159</span>   private void serializeMap(MsgPackOutputStream out, Map m, ClassMeta&lt;?&gt; type) throws Exception {<a name="line.159"></a>
 <span class="sourceLineNo">160</span><a name="line.160"></a>
-<span class="sourceLineNo">161</span>      // The map size may change as we're iterating over it, so<a name="line.161"></a>
-<span class="sourceLineNo">162</span>      // grab a snapshot of the entries in a separate list.<a name="line.162"></a>
-<span class="sourceLineNo">163</span>      List&lt;SimpleMapEntry&gt; entries = new ArrayList&lt;SimpleMapEntry&gt;(m.size());<a name="line.163"></a>
-<span class="sourceLineNo">164</span>      for (Map.Entry e : (Set&lt;Map.Entry&gt;)m.entrySet())<a name="line.164"></a>
-<span class="sourceLineNo">165</span>         entries.add(new SimpleMapEntry(e.getKey(), e.getValue()));<a name="line.165"></a>
-<span class="sourceLineNo">166</span><a name="line.166"></a>
-<span class="sourceLineNo">167</span>      out.startMap(entries.size());<a name="line.167"></a>
-<span class="sourceLineNo">168</span><a name="line.168"></a>
-<span class="sourceLineNo">169</span>      for (SimpleMapEntry e : entries) {<a name="line.169"></a>
-<span class="sourceLineNo">170</span>         Object value = e.value;<a name="line.170"></a>
-<span class="sourceLineNo">171</span>         Object key = generalize(e.key, keyType);<a name="line.171"></a>
+<span class="sourceLineNo">161</span>      ClassMeta&lt;?&gt; keyType = type.getKeyType(), valueType = type.getValueType();<a name="line.161"></a>
+<span class="sourceLineNo">162</span><a name="line.162"></a>
+<span class="sourceLineNo">163</span>      m = sort(m);<a name="line.163"></a>
+<span class="sourceLineNo">164</span><a name="line.164"></a>
+<span class="sourceLineNo">165</span>      // The map size may change as we're iterating over it, so<a name="line.165"></a>
+<span class="sourceLineNo">166</span>      // grab a snapshot of the entries in a separate list.<a name="line.166"></a>
+<span class="sourceLineNo">167</span>      List&lt;SimpleMapEntry&gt; entries = new ArrayList&lt;SimpleMapEntry&gt;(m.size());<a name="line.167"></a>
+<span class="sourceLineNo">168</span>      for (Map.Entry e : (Set&lt;Map.Entry&gt;)m.entrySet())<a name="line.168"></a>
+<span class="sourceLineNo">169</span>         entries.add(new SimpleMapEntry(e.getKey(), e.getValue()));<a name="line.169"></a>
+<span class="sourceLineNo">170</span><a name="line.170"></a>
+<span class="sourceLineNo">171</span>      out.startMap(entries.size());<a name="line.171"></a>
 <span class="sourceLineNo">172</span><a name="line.172"></a>
-<span class="sourceLineNo">173</span>         serializeAnything(out, key, keyType, null, null);<a name="line.173"></a>
-<span class="sourceLineNo">174</span>         serializeAnything(out, value, valueType, null, null);<a name="line.174"></a>
-<span class="sourceLineNo">175</span>      }<a name="line.175"></a>
-<span class="sourceLineNo">176</span>   }<a name="line.176"></a>
-<span class="sourceLineNo">177</span><a name="line.177"></a>
-<span class="sourceLineNo">178</span>   private void serializeBeanMap(MsgPackOutputStream out, final BeanMap&lt;?&gt; m, String typeName) throws Exception {<a name="line.178"></a>
-<span class="sourceLineNo">179</span><a name="line.179"></a>
-<span class="sourceLineNo">180</span>      List&lt;BeanPropertyValue&gt; values = m.getValues(isTrimNulls(), typeName != null ? createBeanTypeNameProperty(m, typeName) : null);<a name="line.180"></a>
+<span class="sourceLineNo">173</span>      for (SimpleMapEntry e : entries) {<a name="line.173"></a>
+<span class="sourceLineNo">174</span>         Object value = e.value;<a name="line.174"></a>
+<span class="sourceLineNo">175</span>         Object key = generalize(e.key, keyType);<a name="line.175"></a>
+<span class="sourceLineNo">176</span><a name="line.176"></a>
+<span class="sourceLineNo">177</span>         serializeAnything(out, key, keyType, null, null);<a name="line.177"></a>
+<span class="sourceLineNo">178</span>         serializeAnything(out, value, valueType, null, null);<a name="line.178"></a>
+<span class="sourceLineNo">179</span>      }<a name="line.179"></a>
+<span class="sourceLineNo">180</span>   }<a name="line.180"></a>
 <span class="sourceLineNo">181</span><a name="line.181"></a>
-<span class="sourceLineNo">182</span>      int size = values.size();<a name="line.182"></a>
-<span class="sourceLineNo">183</span>      for (BeanPropertyValue p : values)<a name="line.183"></a>
-<span class="sourceLineNo">184</span>         if (p.getThrown() != null)<a name="line.184"></a>
-<span class="sourceLineNo">185</span>            size--;<a name="line.185"></a>
-<span class="sourceLineNo">186</span>      out.startMap(size);<a name="line.186"></a>
-<span class="sourceLineNo">187</span><a name="line.187"></a>
-<span class="sourceLineNo">188</span>      for (BeanPropertyValue p : values) {<a name="line.188"></a>
-<span class="sourceLineNo">189</span>         BeanPropertyMeta pMeta = p.getMeta();<a name="line.189"></a>
-<span class="sourceLineNo">190</span>         ClassMeta&lt;?&gt; cMeta = p.getClassMeta();<a name="line.190"></a>
-<span class="sourceLineNo">191</span>         String key = p.getName();<a name="line.191"></a>
-<span class="sourceLineNo">192</span>         Object value = p.getValue();<a name="line.192"></a>
-<span class="sourceLineNo">193</span>         Throwable t = p.getThrown();<a name="line.193"></a>
-<span class="sourceLineNo">194</span>         if (t != null)<a name="line.194"></a>
-<span class="sourceLineNo">195</span>            onBeanGetterException(pMeta, t);<a name="line.195"></a>
-<span class="sourceLineNo">196</span>         else {<a name="line.196"></a>
-<span class="sourceLineNo">197</span>            serializeAnything(out, key, null, null, null);<a name="line.197"></a>
-<span class="sourceLineNo">198</span>            serializeAnything(out, value, cMeta, key, pMeta);<a name="line.198"></a>
-<span class="sourceLineNo">199</span>         }<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      }<a name="line.200"></a>
-<span class="sourceLineNo">201</span>   }<a name="line.201"></a>
-<span class="sourceLineNo">202</span><a name="line.202"></a>
-<span class="sourceLineNo">203</span>   private static class SimpleMapEntry {<a name="line.203"></a>
-<span class="sourceLineNo">204</span>      final Object key;<a name="line.204"></a>
-<span class="sourceLineNo">205</span>      final Object value;<a name="line.205"></a>
+<span class="sourceLineNo">182</span>   private void serializeBeanMap(MsgPackOutputStream out, final BeanMap&lt;?&gt; m, String typeName) throws Exception {<a name="line.182"></a>
+<span class="sourceLineNo">183</span><a name="line.183"></a>
+<span class="sourceLineNo">184</span>      List&lt;BeanPropertyValue&gt; values = m.getValues(isTrimNulls(), typeName != null ? createBeanTypeNameProperty(m, typeName) : null);<a name="line.184"></a>
+<span class="sourceLineNo">185</span><a name="line.185"></a>
+<span class="sourceLineNo">186</span>      int size = values.size();<a name="line.186"></a>
+<span class="sourceLineNo">187</span>      for (BeanPropertyValue p : values)<a name="line.187"></a>
+<span class="sourceLineNo">188</span>         if (p.getThrown() != null)<a name="line.188"></a>
+<span class="sourceLineNo">189</span>            size--;<a name="line.189"></a>
+<span class="sourceLineNo">190</span>      out.startMap(size);<a name="line.190"></a>
+<span class="sourceLineNo">191</span><a name="line.191"></a>
+<span class="sourceLineNo">192</span>      for (BeanPropertyValue p : values) {<a name="line.192"></a>
+<span class="sourceLineNo">193</span>         BeanPropertyMeta pMeta = p.getMeta();<a name="line.193"></a>
+<span class="sourceLineNo">194</span>         ClassMeta&lt;?&gt; cMeta = p.getClassMeta();<a name="line.194"></a>
+<span class="sourceLineNo">195</span>         String key = p.getName();<a name="line.195"></a>
+<span class="sourceLineNo">196</span>         Object value = p.getValue();<a name="line.196"></a>
+<span class="sourceLineNo">197</span>         Throwable t = p.getThrown();<a name="line.197"></a>
+<span class="sourceLineNo">198</span>         if (t != null)<a name="line.198"></a>
+<span class="sourceLineNo">199</span>            onBeanGetterException(pMeta, t);<a name="line.199"></a>
+<span class="sourceLineNo">200</span>         else {<a name="line.200"></a>
+<span class="sourceLineNo">201</span>            serializeAnything(out, key, null, null, null);<a name="line.201"></a>
+<span class="sourceLineNo">202</span>            serializeAnything(out, value, cMeta, key, pMeta);<a name="line.202"></a>
+<span class="sourceLineNo">203</span>         }<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      }<a name="line.204"></a>
+<span class="sourceLineNo">205</span>   }<a name="line.205"></a>
 <span class="sourceLineNo">206</span><a name="line.206"></a>
-<span class="sourceLineNo">207</span>      private SimpleMapEntry(Object key, Object value) {<a name="line.207"></a>
-<span class="sourceLineNo">208</span>         this.key = key;<a name="line.208"></a>
-<span class="sourceLineNo">209</span>         this.value = value;<a name="line.209"></a>
-<span class="sourceLineNo">210</span>      }<a name="line.210"></a>
-<span class="sourceLineNo">211</span>   }<a name="line.211"></a>
-<span class="sourceLineNo">212</span><a name="line.212"></a>
-<span class="sourceLineNo">213</span>   @SuppressWarnings({"rawtypes", "unchecked"})<a name="line.213"></a>
-<span class="sourceLineNo">214</span>   private void serializeCollection(MsgPackOutputStream out, Collection c, ClassMeta&lt;?&gt; type) throws Exception {<a name="line.214"></a>
-<span class="sourceLineNo">215</span><a name="line.215"></a>
-<span class="sourceLineNo">216</span>      ClassMeta&lt;?&gt; elementType = type.getElementType();<a name="line.216"></a>
-<span class="sourceLineNo">217</span>      List&lt;Object&gt; l = new ArrayList&lt;Object&gt;(c.size());<a name="line.217"></a>
-<span class="sourceLineNo">218</span><a name="line.218"></a>
-<span class="sourceLineNo">219</span>      c = sort(c);<a name="line.219"></a>
-<span class="sourceLineNo">220</span>      l.addAll(c);<a name="line.220"></a>
-<span class="sourceLineNo">221</span><a name="line.221"></a>
-<span class="sourceLineNo">222</span>      out.startArray(l.size());<a name="line.222"></a>
-<span class="sourceLineNo">223</span><a name="line.223"></a>
-<span class="sourceLineNo">224</span>      for (Object o : l)<a name="line.224"></a>
-<span class="sourceLineNo">225</span>         serializeAnything(out, o, elementType, "&lt;iterator&gt;", null);<a name="line.225"></a>
-<span class="sourceLineNo">226</span>   }<a name="line.226"></a>
-<span class="sourceLineNo">227</span>}<a name="line.227"></a>
+<span class="sourceLineNo">207</span>   private static class SimpleMapEntry {<a name="line.207"></a>
+<span class="sourceLineNo">208</span>      final Object key;<a name="line.208"></a>
+<span class="sourceLineNo">209</span>      final Object value;<a name="line.209"></a>
+<span class="sourceLineNo">210</span><a name="line.210"></a>
+<span class="sourceLineNo">211</span>      private SimpleMapEntry(Object key, Object value) {<a name="line.211"></a>
+<span class="sourceLineNo">212</span>         this.key = key;<a name="line.212"></a>
+<span class="sourceLineNo">213</span>         this.value = value;<a name="line.213"></a>
+<span class="sourceLineNo">214</span>      }<a name="line.214"></a>
+<span class="sourceLineNo">215</span>   }<a name="line.215"></a>
+<span class="sourceLineNo">216</span><a name="line.216"></a>
+<span class="sourceLineNo">217</span>   @SuppressWarnings({"rawtypes", "unchecked"})<a name="line.217"></a>
+<span class="sourceLineNo">218</span>   private void serializeCollection(MsgPackOutputStream out, Collection c, ClassMeta&lt;?&gt; type) throws Exception {<a name="line.218"></a>
+<span class="sourceLineNo">219</span><a name="line.219"></a>
+<span class="sourceLineNo">220</span>      ClassMeta&lt;?&gt; elementType = type.getElementType();<a name="line.220"></a>
+<span class="sourceLineNo">221</span>      List&lt;Object&gt; l = new ArrayList&lt;Object&gt;(c.size());<a name="line.221"></a>
+<span class="sourceLineNo">222</span><a name="line.222"></a>
+<span class="sourceLineNo">223</span>      c = sort(c);<a name="line.223"></a>
+<span class="sourceLineNo">224</span>      l.addAll(c);<a name="line.224"></a>
+<span class="sourceLineNo">225</span><a name="line.225"></a>
+<span class="sourceLineNo">226</span>      out.startArray(l.size());<a name="line.226"></a>
+<span class="sourceLineNo">227</span><a name="line.227"></a>
+<span class="sourceLineNo">228</span>      for (Object o : l)<a name="line.228"></a>
+<span class="sourceLineNo">229</span>         serializeAnything(out, o, elementType, "&lt;iterator&gt;", null);<a name="line.229"></a>
+<span class="sourceLineNo">230</span>   }<a name="line.230"></a>
+<span class="sourceLineNo">231</span>}<a name="line.231"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/parser/InputStreamParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/parser/InputStreamParser.html b/content/site/apidocs/src-html/org/apache/juneau/parser/InputStreamParser.html
index 0b3eada..7c6e04b 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/parser/InputStreamParser.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/parser/InputStreamParser.html
@@ -21,42 +21,35 @@
 <span class="sourceLineNo">013</span>package org.apache.juneau.parser;<a name="line.13"></a>
 <span class="sourceLineNo">014</span><a name="line.14"></a>
 <span class="sourceLineNo">015</span>import org.apache.juneau.*;<a name="line.15"></a>
-<span class="sourceLineNo">016</span>import org.apache.juneau.annotation.*;<a name="line.16"></a>
-<span class="sourceLineNo">017</span><a name="line.17"></a>
-<span class="sourceLineNo">018</span>/**<a name="line.18"></a>
-<span class="sourceLineNo">019</span> * Subclass of {@link Parser} for byte-based parsers.<a name="line.19"></a>
-<span class="sourceLineNo">020</span> *<a name="line.20"></a>
-<span class="sourceLineNo">021</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.21"></a>
-<span class="sourceLineNo">022</span> *<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * This class is typically the parent class of all byte-based parsers.<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * It has 1 abstract method to implement...<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * &lt;ul&gt;<a name="line.25"></a>
-<span class="sourceLineNo">026</span> *    &lt;li&gt;&lt;code&gt;parse(InputStream, ClassMeta, ParserContext)&lt;/code&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> * &lt;/ul&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> *<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * &lt;h6 class='topic'&gt;@Consumes annotation&lt;/h6&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> *<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * The media types that this parser can handle is specified through the {@link Consumes @Consumes} annotation.<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;p&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * However, the media types can also be specified programmatically by overriding the {@link #getMediaTypes()} method.<a name="line.34"></a>
-<span class="sourceLineNo">035</span> */<a name="line.35"></a>
-<span class="sourceLineNo">036</span>public abstract class InputStreamParser extends Parser {<a name="line.36"></a>
-<span class="sourceLineNo">037</span><a name="line.37"></a>
-<span class="sourceLineNo">038</span>   /**<a name="line.38"></a>
-<span class="sourceLineNo">039</span>    * Constructor.<a name="line.39"></a>
-<span class="sourceLineNo">040</span>    *<a name="line.40"></a>
-<span class="sourceLineNo">041</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.41"></a>
-<span class="sourceLineNo">042</span>    */<a name="line.42"></a>
-<span class="sourceLineNo">043</span>   protected InputStreamParser(PropertyStore propertyStore) {<a name="line.43"></a>
-<span class="sourceLineNo">044</span>      super(propertyStore);<a name="line.44"></a>
-<span class="sourceLineNo">045</span>   }<a name="line.45"></a>
-<span class="sourceLineNo">046</span><a name="line.46"></a>
-<span class="sourceLineNo">047</span>   @Override /* Parser */<a name="line.47"></a>
-<span class="sourceLineNo">048</span>   public final boolean isReaderParser() {<a name="line.48"></a>
-<span class="sourceLineNo">049</span>      return false;<a name="line.49"></a>
-<span class="sourceLineNo">050</span>   }<a name="line.50"></a>
-<span class="sourceLineNo">051</span>}<a name="line.51"></a>
+<span class="sourceLineNo">016</span><a name="line.16"></a>
+<span class="sourceLineNo">017</span>/**<a name="line.17"></a>
+<span class="sourceLineNo">018</span> * Subclass of {@link Parser} for byte-based parsers.<a name="line.18"></a>
+<span class="sourceLineNo">019</span> *<a name="line.19"></a>
+<span class="sourceLineNo">020</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.20"></a>
+<span class="sourceLineNo">021</span> *<a name="line.21"></a>
+<span class="sourceLineNo">022</span> * This class is typically the parent class of all byte-based parsers.<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * It has 1 abstract method to implement...<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * &lt;ul&gt;<a name="line.24"></a>
+<span class="sourceLineNo">025</span> *    &lt;li&gt;&lt;code&gt;parse(InputStream, ClassMeta, ParserContext)&lt;/code&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> * &lt;/ul&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span>  */<a name="line.27"></a>
+<span class="sourceLineNo">028</span>public abstract class InputStreamParser extends Parser {<a name="line.28"></a>
+<span class="sourceLineNo">029</span><a name="line.29"></a>
+<span class="sourceLineNo">030</span>   /**<a name="line.30"></a>
+<span class="sourceLineNo">031</span>    * Constructor.<a name="line.31"></a>
+<span class="sourceLineNo">032</span>    *<a name="line.32"></a>
+<span class="sourceLineNo">033</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.33"></a>
+<span class="sourceLineNo">034</span>    * @param consumes The list of media types that this parser consumes (e.g. &lt;js&gt;"application/json"&lt;/js&gt;).<a name="line.34"></a>
+<span class="sourceLineNo">035</span>    */<a name="line.35"></a>
+<span class="sourceLineNo">036</span>   protected InputStreamParser(PropertyStore propertyStore, String...consumes) {<a name="line.36"></a>
+<span class="sourceLineNo">037</span>      super(propertyStore, consumes);<a name="line.37"></a>
+<span class="sourceLineNo">038</span>   }<a name="line.38"></a>
+<span class="sourceLineNo">039</span><a name="line.39"></a>
+<span class="sourceLineNo">040</span>   @Override /* Parser */<a name="line.40"></a>
+<span class="sourceLineNo">041</span>   public final boolean isReaderParser() {<a name="line.41"></a>
+<span class="sourceLineNo">042</span>      return false;<a name="line.42"></a>
+<span class="sourceLineNo">043</span>   }<a name="line.43"></a>
+<span class="sourceLineNo">044</span>}<a name="line.44"></a>
 
 
 



[06/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.Ns.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.Ns.html b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.Ns.html
index 957e688..1f13575 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.Ns.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.Ns.html
@@ -24,235 +24,258 @@
 <span class="sourceLineNo">016</span>import static org.apache.juneau.xml.XmlSerializerContext.*;<a name="line.16"></a>
 <span class="sourceLineNo">017</span><a name="line.17"></a>
 <span class="sourceLineNo">018</span>import org.apache.juneau.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.annotation.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.json.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span>import org.apache.juneau.serializer.*;<a name="line.21"></a>
-<span class="sourceLineNo">022</span><a name="line.22"></a>
-<span class="sourceLineNo">023</span>/**<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * Serializes POJO models to XML.<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * &lt;p&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * See the {@link JsonSerializer} class for details on how Java models map to JSON.<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *<a name="line.36"></a>
-<span class="sourceLineNo">037</span> * &lt;p&gt;<a name="line.37"></a>
-<span class="sourceLineNo">038</span> * For example, the following JSON...<a name="line.38"></a>
-<span class="sourceLineNo">039</span> * &lt;p class='bcode'&gt;<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *    {<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *       name:&lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.41"></a>
-<span class="sourceLineNo">042</span> *       address: {<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *          streetAddress: &lt;js&gt;'21 2nd Street'&lt;/js&gt;,<a name="line.43"></a>
-<span class="sourceLineNo">044</span> *          city: &lt;js&gt;'New York'&lt;/js&gt;,<a name="line.44"></a>
-<span class="sourceLineNo">045</span> *          state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.45"></a>
-<span class="sourceLineNo">046</span> *          postalCode: &lt;js&gt;10021&lt;/js&gt;<a name="line.46"></a>
-<span class="sourceLineNo">047</span> *       },<a name="line.47"></a>
-<span class="sourceLineNo">048</span> *       phoneNumbers: [<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *          &lt;js&gt;'212 555-1111'&lt;/js&gt;,<a name="line.49"></a>
-<span class="sourceLineNo">050</span> *          &lt;js&gt;'212 555-2222'&lt;/js&gt;<a name="line.50"></a>
-<span class="sourceLineNo">051</span> *       ],<a name="line.51"></a>
-<span class="sourceLineNo">052</span> *       additionalInfo: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.52"></a>
-<span class="sourceLineNo">053</span> *       remote: &lt;jk&gt;false&lt;/jk&gt;,<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *       height: &lt;js&gt;62.4&lt;/js&gt;,<a name="line.54"></a>
-<span class="sourceLineNo">055</span> *       &lt;js&gt;'fico score'&lt;/js&gt;:  &lt;js&gt;' &amp;gt; 640'&lt;/js&gt;<a name="line.55"></a>
-<span class="sourceLineNo">056</span> *    }<a name="line.56"></a>
-<span class="sourceLineNo">057</span> * &lt;p&gt;<a name="line.57"></a>
-<span class="sourceLineNo">058</span> *    ...maps to the following XML using the default serializer...<a name="line.58"></a>
-<span class="sourceLineNo">059</span> * &lt;p class='bcode'&gt;<a name="line.59"></a>
-<span class="sourceLineNo">060</span> *    &lt;xt&gt;&amp;lt;object&amp;gt;&lt;/xt&gt;<a name="line.60"></a>
-<span class="sourceLineNo">061</span> *       &lt;xt&gt;&amp;lt;name&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.61"></a>
-<span class="sourceLineNo">062</span> *       &lt;xt&gt;&amp;lt;address&amp;gt;&lt;/xt&gt;<a name="line.62"></a>
-<span class="sourceLineNo">063</span> *          &lt;xt&gt;&amp;lt;streetAddress&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.63"></a>
-<span class="sourceLineNo">064</span> *          &lt;xt&gt;&amp;lt;city&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.64"></a>
-<span class="sourceLineNo">065</span> *          &lt;xt&gt;&amp;lt;state&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.65"></a>
-<span class="sourceLineNo">066</span> *          &lt;xt&gt;&amp;lt;postalCode&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.66"></a>
-<span class="sourceLineNo">067</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.67"></a>
-<span class="sourceLineNo">068</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.68"></a>
-<span class="sourceLineNo">069</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.69"></a>
-<span class="sourceLineNo">070</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.70"></a>
-<span class="sourceLineNo">071</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.71"></a>
-<span class="sourceLineNo">072</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.72"></a>
-<span class="sourceLineNo">073</span> *       &lt;xt&gt;&amp;lt;remote&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.73"></a>
-<span class="sourceLineNo">074</span> *       &lt;xt&gt;&amp;lt;height&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.74"></a>
-<span class="sourceLineNo">075</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.75"></a>
-<span class="sourceLineNo">076</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.76"></a>
-<span class="sourceLineNo">077</span> *<a name="line.77"></a>
-<span class="sourceLineNo">078</span> * &lt;p&gt;<a name="line.78"></a>
-<span class="sourceLineNo">079</span> * An additional "add-json-properties" mode is also provided to prevent loss of JSON data types...<a name="line.79"></a>
-<span class="sourceLineNo">080</span> * &lt;p class='bcode'&gt;<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *       &lt;xt&gt;&amp;lt;name&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *       &lt;xt&gt;&amp;lt;address&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'object'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *          &lt;xt&gt;&amp;lt;streetAddress&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.83"></a>
-<span class="sourceLineNo">084</span> *          &lt;xt&gt;&amp;lt;city&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *          &lt;xt&gt;&amp;lt;state&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.85"></a>
-<span class="sourceLineNo">086</span> *          &lt;xt&gt;&amp;lt;postalCode&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.86"></a>
-<span class="sourceLineNo">087</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'array'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *       &lt;xt&gt;&amp;lt;remote&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'boolean'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.93"></a>
-<span class="sourceLineNo">094</span> *       &lt;xt&gt;&amp;lt;height&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.95"></a>
-<span class="sourceLineNo">096</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.96"></a>
-<span class="sourceLineNo">097</span> * &lt;/p&gt;<a name="line.97"></a>
-<span class="sourceLineNo">098</span> *<a name="line.98"></a>
-<span class="sourceLineNo">099</span> * &lt;p&gt;<a name="line.99"></a>
-<span class="sourceLineNo">100</span> * This serializer provides several serialization options.<a name="line.100"></a>
-<span class="sourceLineNo">101</span> * Typically, one of the predefined &lt;jsf&gt;DEFAULT&lt;/jsf&gt; serializers will be sufficient.<a name="line.101"></a>
-<span class="sourceLineNo">102</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.102"></a>
-<span class="sourceLineNo">103</span> *<a name="line.103"></a>
-<span class="sourceLineNo">104</span> * &lt;p&gt;<a name="line.104"></a>
-<span class="sourceLineNo">105</span> * If an attribute name contains any non-valid XML element characters, they will be escaped using standard<a name="line.105"></a>
-<span class="sourceLineNo">106</span> * {@code _x####_} notation.<a name="line.106"></a>
-<span class="sourceLineNo">107</span> *<a name="line.107"></a>
-<span class="sourceLineNo">108</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.108"></a>
-<span class="sourceLineNo">109</span> *<a name="line.109"></a>
-<span class="sourceLineNo">110</span> * This class has the following properties associated with it:<a name="line.110"></a>
-<span class="sourceLineNo">111</span> * &lt;ul&gt;<a name="line.111"></a>
-<span class="sourceLineNo">112</span> *    &lt;li&gt;{@link XmlSerializerContext}<a name="line.112"></a>
-<span class="sourceLineNo">113</span> *    &lt;li&gt;{@link BeanContext}<a name="line.113"></a>
-<span class="sourceLineNo">114</span> * &lt;/ul&gt;<a name="line.114"></a>
-<span class="sourceLineNo">115</span> *<a name="line.115"></a>
-<span class="sourceLineNo">116</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.116"></a>
-<span class="sourceLineNo">117</span> *<a name="line.117"></a>
-<span class="sourceLineNo">118</span> * The following direct subclasses are provided for convenience:<a name="line.118"></a>
-<span class="sourceLineNo">119</span> * &lt;ul&gt;<a name="line.119"></a>
-<span class="sourceLineNo">120</span> *    &lt;li&gt;{@link Sq} - Default serializer, single quotes.<a name="line.120"></a>
-<span class="sourceLineNo">121</span> *    &lt;li&gt;{@link SqReadable} - Default serializer, single quotes, whitespace added.<a name="line.121"></a>
-<span class="sourceLineNo">122</span> * &lt;/ul&gt;<a name="line.122"></a>
-<span class="sourceLineNo">123</span> */<a name="line.123"></a>
-<span class="sourceLineNo">124</span>@Produces("text/xml")<a name="line.124"></a>
-<span class="sourceLineNo">125</span>public class XmlSerializer extends WriterSerializer {<a name="line.125"></a>
-<span class="sourceLineNo">126</span><a name="line.126"></a>
-<span class="sourceLineNo">127</span>   /** Default serializer without namespaces. */<a name="line.127"></a>
-<span class="sourceLineNo">128</span>   public static final XmlSerializer DEFAULT = new XmlSerializer(PropertyStore.create());<a name="line.128"></a>
-<span class="sourceLineNo">129</span><a name="line.129"></a>
-<span class="sourceLineNo">130</span>   /** Default serializer without namespaces, with single quotes. */<a name="line.130"></a>
-<span class="sourceLineNo">131</span>   public static final XmlSerializer DEFAULT_SQ = new Sq(PropertyStore.create());<a name="line.131"></a>
-<span class="sourceLineNo">132</span><a name="line.132"></a>
-<span class="sourceLineNo">133</span>   /** Default serializer without namespaces, with single quotes, whitespace added. */<a name="line.133"></a>
-<span class="sourceLineNo">134</span>   public static final XmlSerializer DEFAULT_SQ_READABLE = new SqReadable(PropertyStore.create());<a name="line.134"></a>
-<span class="sourceLineNo">135</span><a name="line.135"></a>
-<span class="sourceLineNo">136</span>   /** Default serializer, all default settings. */<a name="line.136"></a>
-<span class="sourceLineNo">137</span>   public static final XmlSerializer DEFAULT_NS = new Ns(PropertyStore.create());<a name="line.137"></a>
-<span class="sourceLineNo">138</span><a name="line.138"></a>
-<span class="sourceLineNo">139</span>   /** Default serializer, single quotes. */<a name="line.139"></a>
-<span class="sourceLineNo">140</span>   public static final XmlSerializer DEFAULT_NS_SQ = new NsSq(PropertyStore.create());<a name="line.140"></a>
-<span class="sourceLineNo">141</span><a name="line.141"></a>
-<span class="sourceLineNo">142</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.142"></a>
-<span class="sourceLineNo">143</span>   public static final XmlSerializer DEFAULT_NS_SQ_READABLE = new NsSqReadable(PropertyStore.create());<a name="line.143"></a>
-<span class="sourceLineNo">144</span><a name="line.144"></a>
-<span class="sourceLineNo">145</span><a name="line.145"></a>
-<span class="sourceLineNo">146</span>   /** Default serializer, single quotes. */<a name="line.146"></a>
-<span class="sourceLineNo">147</span>   public static class Sq extends XmlSerializer {<a name="line.147"></a>
-<span class="sourceLineNo">148</span><a name="line.148"></a>
-<span class="sourceLineNo">149</span>      /**<a name="line.149"></a>
-<span class="sourceLineNo">150</span>       * Constructor.<a name="line.150"></a>
-<span class="sourceLineNo">151</span>       *<a name="line.151"></a>
-<span class="sourceLineNo">152</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.152"></a>
-<span class="sourceLineNo">153</span>       */<a name="line.153"></a>
-<span class="sourceLineNo">154</span>      public Sq(PropertyStore propertyStore) {<a name="line.154"></a>
-<span class="sourceLineNo">155</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\''));<a name="line.155"></a>
-<span class="sourceLineNo">156</span>      }<a name="line.156"></a>
-<span class="sourceLineNo">157</span>   }<a name="line.157"></a>
-<span class="sourceLineNo">158</span><a name="line.158"></a>
-<span class="sourceLineNo">159</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.159"></a>
-<span class="sourceLineNo">160</span>   public static class SqReadable extends XmlSerializer {<a name="line.160"></a>
-<span class="sourceLineNo">161</span><a name="line.161"></a>
-<span class="sourceLineNo">162</span>      /**<a name="line.162"></a>
-<span class="sourceLineNo">163</span>       * Constructor.<a name="line.163"></a>
-<span class="sourceLineNo">164</span>       *<a name="line.164"></a>
-<span class="sourceLineNo">165</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.165"></a>
-<span class="sourceLineNo">166</span>       */<a name="line.166"></a>
-<span class="sourceLineNo">167</span>      public SqReadable(PropertyStore propertyStore) {<a name="line.167"></a>
-<span class="sourceLineNo">168</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\'').append(SERIALIZER_useWhitespace, true));<a name="line.168"></a>
-<span class="sourceLineNo">169</span>      }<a name="line.169"></a>
-<span class="sourceLineNo">170</span>   }<a name="line.170"></a>
-<span class="sourceLineNo">171</span><a name="line.171"></a>
-<span class="sourceLineNo">172</span>   /** Default serializer without namespaces. */<a name="line.172"></a>
-<span class="sourceLineNo">173</span>   @Produces(value="text/xml+simple",contentType="text/xml")<a name="line.173"></a>
-<span class="sourceLineNo">174</span>   public static class Ns extends XmlSerializer {<a name="line.174"></a>
-<span class="sourceLineNo">175</span><a name="line.175"></a>
-<span class="sourceLineNo">176</span>      /**<a name="line.176"></a>
-<span class="sourceLineNo">177</span>       * Constructor.<a name="line.177"></a>
-<span class="sourceLineNo">178</span>       *<a name="line.178"></a>
-<span class="sourceLineNo">179</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.179"></a>
-<span class="sourceLineNo">180</span>       */<a name="line.180"></a>
-<span class="sourceLineNo">181</span>      public Ns(PropertyStore propertyStore) {<a name="line.181"></a>
-<span class="sourceLineNo">182</span>         super(propertyStore.copy().append(XML_enableNamespaces, true));<a name="line.182"></a>
-<span class="sourceLineNo">183</span>      }<a name="line.183"></a>
-<span class="sourceLineNo">184</span>   }<a name="line.184"></a>
+<span class="sourceLineNo">019</span>import org.apache.juneau.json.*;<a name="line.19"></a>
+<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
+<span class="sourceLineNo">021</span><a name="line.21"></a>
+<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * Serializes POJO models to XML.<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;p&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * See the {@link JsonSerializer} class for details on how Java models map to JSON.<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *<a name="line.35"></a>
+<span class="sourceLineNo">036</span> * &lt;p&gt;<a name="line.36"></a>
+<span class="sourceLineNo">037</span> * For example, the following JSON...<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * &lt;p class='bcode'&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *    {<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *       name:&lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.40"></a>
+<span class="sourceLineNo">041</span> *       address: {<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *          streetAddress: &lt;js&gt;'21 2nd Street'&lt;/js&gt;,<a name="line.42"></a>
+<span class="sourceLineNo">043</span> *          city: &lt;js&gt;'New York'&lt;/js&gt;,<a name="line.43"></a>
+<span class="sourceLineNo">044</span> *          state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.44"></a>
+<span class="sourceLineNo">045</span> *          postalCode: &lt;js&gt;10021&lt;/js&gt;<a name="line.45"></a>
+<span class="sourceLineNo">046</span> *       },<a name="line.46"></a>
+<span class="sourceLineNo">047</span> *       phoneNumbers: [<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *          &lt;js&gt;'212 555-1111'&lt;/js&gt;,<a name="line.48"></a>
+<span class="sourceLineNo">049</span> *          &lt;js&gt;'212 555-2222'&lt;/js&gt;<a name="line.49"></a>
+<span class="sourceLineNo">050</span> *       ],<a name="line.50"></a>
+<span class="sourceLineNo">051</span> *       additionalInfo: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.51"></a>
+<span class="sourceLineNo">052</span> *       remote: &lt;jk&gt;false&lt;/jk&gt;,<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *       height: &lt;js&gt;62.4&lt;/js&gt;,<a name="line.53"></a>
+<span class="sourceLineNo">054</span> *       &lt;js&gt;'fico score'&lt;/js&gt;:  &lt;js&gt;' &amp;gt; 640'&lt;/js&gt;<a name="line.54"></a>
+<span class="sourceLineNo">055</span> *    }<a name="line.55"></a>
+<span class="sourceLineNo">056</span> * &lt;p&gt;<a name="line.56"></a>
+<span class="sourceLineNo">057</span> *    ...maps to the following XML using the default serializer...<a name="line.57"></a>
+<span class="sourceLineNo">058</span> * &lt;p class='bcode'&gt;<a name="line.58"></a>
+<span class="sourceLineNo">059</span> *    &lt;xt&gt;&amp;lt;object&amp;gt;&lt;/xt&gt;<a name="line.59"></a>
+<span class="sourceLineNo">060</span> *       &lt;xt&gt;&amp;lt;name&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.60"></a>
+<span class="sourceLineNo">061</span> *       &lt;xt&gt;&amp;lt;address&amp;gt;&lt;/xt&gt;<a name="line.61"></a>
+<span class="sourceLineNo">062</span> *          &lt;xt&gt;&amp;lt;streetAddress&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.62"></a>
+<span class="sourceLineNo">063</span> *          &lt;xt&gt;&amp;lt;city&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.63"></a>
+<span class="sourceLineNo">064</span> *          &lt;xt&gt;&amp;lt;state&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.64"></a>
+<span class="sourceLineNo">065</span> *          &lt;xt&gt;&amp;lt;postalCode&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.65"></a>
+<span class="sourceLineNo">066</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.66"></a>
+<span class="sourceLineNo">067</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.67"></a>
+<span class="sourceLineNo">068</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.68"></a>
+<span class="sourceLineNo">069</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.69"></a>
+<span class="sourceLineNo">070</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.70"></a>
+<span class="sourceLineNo">071</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.71"></a>
+<span class="sourceLineNo">072</span> *       &lt;xt&gt;&amp;lt;remote&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.72"></a>
+<span class="sourceLineNo">073</span> *       &lt;xt&gt;&amp;lt;height&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.73"></a>
+<span class="sourceLineNo">074</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.74"></a>
+<span class="sourceLineNo">075</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.75"></a>
+<span class="sourceLineNo">076</span> *<a name="line.76"></a>
+<span class="sourceLineNo">077</span> * &lt;p&gt;<a name="line.77"></a>
+<span class="sourceLineNo">078</span> * An additional "add-json-properties" mode is also provided to prevent loss of JSON data types...<a name="line.78"></a>
+<span class="sourceLineNo">079</span> * &lt;p class='bcode'&gt;<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *       &lt;xt&gt;&amp;lt;name&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *       &lt;xt&gt;&amp;lt;address&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'object'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *          &lt;xt&gt;&amp;lt;streetAddress&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.82"></a>
+<span class="sourceLineNo">083</span> *          &lt;xt&gt;&amp;lt;city&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *          &lt;xt&gt;&amp;lt;state&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.84"></a>
+<span class="sourceLineNo">085</span> *          &lt;xt&gt;&amp;lt;postalCode&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.85"></a>
+<span class="sourceLineNo">086</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'array'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.87"></a>
+<span class="sourceLineNo">088</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.88"></a>
+<span class="sourceLineNo">089</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.89"></a>
+<span class="sourceLineNo">090</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.91"></a>
+<span class="sourceLineNo">092</span> *       &lt;xt&gt;&amp;lt;remote&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'boolean'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.92"></a>
+<span class="sourceLineNo">093</span> *       &lt;xt&gt;&amp;lt;height&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.93"></a>
+<span class="sourceLineNo">094</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.94"></a>
+<span class="sourceLineNo">095</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.95"></a>
+<span class="sourceLineNo">096</span> * &lt;/p&gt;<a name="line.96"></a>
+<span class="sourceLineNo">097</span> *<a name="line.97"></a>
+<span class="sourceLineNo">098</span> * &lt;p&gt;<a name="line.98"></a>
+<span class="sourceLineNo">099</span> * This serializer provides several serialization options.<a name="line.99"></a>
+<span class="sourceLineNo">100</span> * Typically, one of the predefined &lt;jsf&gt;DEFAULT&lt;/jsf&gt; serializers will be sufficient.<a name="line.100"></a>
+<span class="sourceLineNo">101</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.101"></a>
+<span class="sourceLineNo">102</span> *<a name="line.102"></a>
+<span class="sourceLineNo">103</span> * &lt;p&gt;<a name="line.103"></a>
+<span class="sourceLineNo">104</span> * If an attribute name contains any non-valid XML element characters, they will be escaped using standard<a name="line.104"></a>
+<span class="sourceLineNo">105</span> * {@code _x####_} notation.<a name="line.105"></a>
+<span class="sourceLineNo">106</span> *<a name="line.106"></a>
+<span class="sourceLineNo">107</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.107"></a>
+<span class="sourceLineNo">108</span> *<a name="line.108"></a>
+<span class="sourceLineNo">109</span> * This class has the following properties associated with it:<a name="line.109"></a>
+<span class="sourceLineNo">110</span> * &lt;ul&gt;<a name="line.110"></a>
+<span class="sourceLineNo">111</span> *    &lt;li&gt;{@link XmlSerializerContext}<a name="line.111"></a>
+<span class="sourceLineNo">112</span> *    &lt;li&gt;{@link BeanContext}<a name="line.112"></a>
+<span class="sourceLineNo">113</span> * &lt;/ul&gt;<a name="line.113"></a>
+<span class="sourceLineNo">114</span> *<a name="line.114"></a>
+<span class="sourceLineNo">115</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.115"></a>
+<span class="sourceLineNo">116</span> *<a name="line.116"></a>
+<span class="sourceLineNo">117</span> * The following direct subclasses are provided for convenience:<a name="line.117"></a>
+<span class="sourceLineNo">118</span> * &lt;ul&gt;<a name="line.118"></a>
+<span class="sourceLineNo">119</span> *    &lt;li&gt;{@link Sq} - Default serializer, single quotes.<a name="line.119"></a>
+<span class="sourceLineNo">120</span> *    &lt;li&gt;{@link SqReadable} - Default serializer, single quotes, whitespace added.<a name="line.120"></a>
+<span class="sourceLineNo">121</span> * &lt;/ul&gt;<a name="line.121"></a>
+<span class="sourceLineNo">122</span> */<a name="line.122"></a>
+<span class="sourceLineNo">123</span>public class XmlSerializer extends WriterSerializer {<a name="line.123"></a>
+<span class="sourceLineNo">124</span><a name="line.124"></a>
+<span class="sourceLineNo">125</span>   /** Default serializer without namespaces. */<a name="line.125"></a>
+<span class="sourceLineNo">126</span>   public static final XmlSerializer DEFAULT = new XmlSerializer(PropertyStore.create());<a name="line.126"></a>
+<span class="sourceLineNo">127</span><a name="line.127"></a>
+<span class="sourceLineNo">128</span>   /** Default serializer without namespaces, with single quotes. */<a name="line.128"></a>
+<span class="sourceLineNo">129</span>   public static final XmlSerializer DEFAULT_SQ = new Sq(PropertyStore.create());<a name="line.129"></a>
+<span class="sourceLineNo">130</span><a name="line.130"></a>
+<span class="sourceLineNo">131</span>   /** Default serializer without namespaces, with single quotes, whitespace added. */<a name="line.131"></a>
+<span class="sourceLineNo">132</span>   public static final XmlSerializer DEFAULT_SQ_READABLE = new SqReadable(PropertyStore.create());<a name="line.132"></a>
+<span class="sourceLineNo">133</span><a name="line.133"></a>
+<span class="sourceLineNo">134</span>   /** Default serializer, all default settings. */<a name="line.134"></a>
+<span class="sourceLineNo">135</span>   public static final XmlSerializer DEFAULT_NS = new Ns(PropertyStore.create());<a name="line.135"></a>
+<span class="sourceLineNo">136</span><a name="line.136"></a>
+<span class="sourceLineNo">137</span>   /** Default serializer, single quotes. */<a name="line.137"></a>
+<span class="sourceLineNo">138</span>   public static final XmlSerializer DEFAULT_NS_SQ = new NsSq(PropertyStore.create());<a name="line.138"></a>
+<span class="sourceLineNo">139</span><a name="line.139"></a>
+<span class="sourceLineNo">140</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.140"></a>
+<span class="sourceLineNo">141</span>   public static final XmlSerializer DEFAULT_NS_SQ_READABLE = new NsSqReadable(PropertyStore.create());<a name="line.141"></a>
+<span class="sourceLineNo">142</span><a name="line.142"></a>
+<span class="sourceLineNo">143</span><a name="line.143"></a>
+<span class="sourceLineNo">144</span>   /** Default serializer, single quotes. */<a name="line.144"></a>
+<span class="sourceLineNo">145</span>   public static class Sq extends XmlSerializer {<a name="line.145"></a>
+<span class="sourceLineNo">146</span><a name="line.146"></a>
+<span class="sourceLineNo">147</span>      /**<a name="line.147"></a>
+<span class="sourceLineNo">148</span>       * Constructor.<a name="line.148"></a>
+<span class="sourceLineNo">149</span>       *<a name="line.149"></a>
+<span class="sourceLineNo">150</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.150"></a>
+<span class="sourceLineNo">151</span>       */<a name="line.151"></a>
+<span class="sourceLineNo">152</span>      public Sq(PropertyStore propertyStore) {<a name="line.152"></a>
+<span class="sourceLineNo">153</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\''));<a name="line.153"></a>
+<span class="sourceLineNo">154</span>      }<a name="line.154"></a>
+<span class="sourceLineNo">155</span>   }<a name="line.155"></a>
+<span class="sourceLineNo">156</span><a name="line.156"></a>
+<span class="sourceLineNo">157</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.157"></a>
+<span class="sourceLineNo">158</span>   public static class SqReadable extends XmlSerializer {<a name="line.158"></a>
+<span class="sourceLineNo">159</span><a name="line.159"></a>
+<span class="sourceLineNo">160</span>      /**<a name="line.160"></a>
+<span class="sourceLineNo">161</span>       * Constructor.<a name="line.161"></a>
+<span class="sourceLineNo">162</span>       *<a name="line.162"></a>
+<span class="sourceLineNo">163</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.163"></a>
+<span class="sourceLineNo">164</span>       */<a name="line.164"></a>
+<span class="sourceLineNo">165</span>      public SqReadable(PropertyStore propertyStore) {<a name="line.165"></a>
+<span class="sourceLineNo">166</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\'').append(SERIALIZER_useWhitespace, true));<a name="line.166"></a>
+<span class="sourceLineNo">167</span>      }<a name="line.167"></a>
+<span class="sourceLineNo">168</span>   }<a name="line.168"></a>
+<span class="sourceLineNo">169</span><a name="line.169"></a>
+<span class="sourceLineNo">170</span>   /** Default serializer without namespaces. */<a name="line.170"></a>
+<span class="sourceLineNo">171</span>   public static class Ns extends XmlSerializer {<a name="line.171"></a>
+<span class="sourceLineNo">172</span><a name="line.172"></a>
+<span class="sourceLineNo">173</span>      /**<a name="line.173"></a>
+<span class="sourceLineNo">174</span>       * Constructor.<a name="line.174"></a>
+<span class="sourceLineNo">175</span>       *<a name="line.175"></a>
+<span class="sourceLineNo">176</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.176"></a>
+<span class="sourceLineNo">177</span>       */<a name="line.177"></a>
+<span class="sourceLineNo">178</span>      public Ns(PropertyStore propertyStore) {<a name="line.178"></a>
+<span class="sourceLineNo">179</span>         super(propertyStore.copy().append(XML_enableNamespaces, true), "text/xml", "text/xml+simple");<a name="line.179"></a>
+<span class="sourceLineNo">180</span>      }<a name="line.180"></a>
+<span class="sourceLineNo">181</span>   }<a name="line.181"></a>
+<span class="sourceLineNo">182</span><a name="line.182"></a>
+<span class="sourceLineNo">183</span>   /** Default serializer without namespaces, single quotes. */<a name="line.183"></a>
+<span class="sourceLineNo">184</span>   public static class NsSq extends XmlSerializer {<a name="line.184"></a>
 <span class="sourceLineNo">185</span><a name="line.185"></a>
-<span class="sourceLineNo">186</span>   /** Default serializer without namespaces, single quotes. */<a name="line.186"></a>
-<span class="sourceLineNo">187</span>   public static class NsSq extends XmlSerializer {<a name="line.187"></a>
-<span class="sourceLineNo">188</span><a name="line.188"></a>
-<span class="sourceLineNo">189</span>      /**<a name="line.189"></a>
-<span class="sourceLineNo">190</span>       * Constructor.<a name="line.190"></a>
-<span class="sourceLineNo">191</span>       *<a name="line.191"></a>
-<span class="sourceLineNo">192</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.192"></a>
-<span class="sourceLineNo">193</span>       */<a name="line.193"></a>
-<span class="sourceLineNo">194</span>      public NsSq(PropertyStore propertyStore) {<a name="line.194"></a>
-<span class="sourceLineNo">195</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\''));<a name="line.195"></a>
-<span class="sourceLineNo">196</span>      }<a name="line.196"></a>
-<span class="sourceLineNo">197</span>   }<a name="line.197"></a>
+<span class="sourceLineNo">186</span>      /**<a name="line.186"></a>
+<span class="sourceLineNo">187</span>       * Constructor.<a name="line.187"></a>
+<span class="sourceLineNo">188</span>       *<a name="line.188"></a>
+<span class="sourceLineNo">189</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.189"></a>
+<span class="sourceLineNo">190</span>       */<a name="line.190"></a>
+<span class="sourceLineNo">191</span>      public NsSq(PropertyStore propertyStore) {<a name="line.191"></a>
+<span class="sourceLineNo">192</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\''));<a name="line.192"></a>
+<span class="sourceLineNo">193</span>      }<a name="line.193"></a>
+<span class="sourceLineNo">194</span>   }<a name="line.194"></a>
+<span class="sourceLineNo">195</span><a name="line.195"></a>
+<span class="sourceLineNo">196</span>   /** Default serializer without namespaces, single quotes, with whitespace. */<a name="line.196"></a>
+<span class="sourceLineNo">197</span>   public static class NsSqReadable extends XmlSerializer {<a name="line.197"></a>
 <span class="sourceLineNo">198</span><a name="line.198"></a>
-<span class="sourceLineNo">199</span>   /** Default serializer without namespaces, single quotes, with whitespace. */<a name="line.199"></a>
-<span class="sourceLineNo">200</span>   public static class NsSqReadable extends XmlSerializer {<a name="line.200"></a>
-<span class="sourceLineNo">201</span><a name="line.201"></a>
-<span class="sourceLineNo">202</span>      /**<a name="line.202"></a>
-<span class="sourceLineNo">203</span>       * Constructor.<a name="line.203"></a>
-<span class="sourceLineNo">204</span>       *<a name="line.204"></a>
-<span class="sourceLineNo">205</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.205"></a>
-<span class="sourceLineNo">206</span>       */<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      public NsSqReadable(PropertyStore propertyStore) {<a name="line.207"></a>
-<span class="sourceLineNo">208</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\'')<a name="line.208"></a>
-<span class="sourceLineNo">209</span>            .append(SERIALIZER_useWhitespace, true));<a name="line.209"></a>
-<span class="sourceLineNo">210</span>      }<a name="line.210"></a>
-<span class="sourceLineNo">211</span>   }<a name="line.211"></a>
-<span class="sourceLineNo">212</span><a name="line.212"></a>
+<span class="sourceLineNo">199</span>      /**<a name="line.199"></a>
+<span class="sourceLineNo">200</span>       * Constructor.<a name="line.200"></a>
+<span class="sourceLineNo">201</span>       *<a name="line.201"></a>
+<span class="sourceLineNo">202</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.202"></a>
+<span class="sourceLineNo">203</span>       */<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      public NsSqReadable(PropertyStore propertyStore) {<a name="line.204"></a>
+<span class="sourceLineNo">205</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\'')<a name="line.205"></a>
+<span class="sourceLineNo">206</span>            .append(SERIALIZER_useWhitespace, true));<a name="line.206"></a>
+<span class="sourceLineNo">207</span>      }<a name="line.207"></a>
+<span class="sourceLineNo">208</span>   }<a name="line.208"></a>
+<span class="sourceLineNo">209</span><a name="line.209"></a>
+<span class="sourceLineNo">210</span><a name="line.210"></a>
+<span class="sourceLineNo">211</span>   final XmlSerializerContext ctx;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>   private volatile XmlSchemaSerializer schemaSerializer;<a name="line.212"></a>
 <span class="sourceLineNo">213</span><a name="line.213"></a>
-<span class="sourceLineNo">214</span>   final XmlSerializerContext ctx;<a name="line.214"></a>
-<span class="sourceLineNo">215</span>   private volatile XmlSchemaSerializer schemaSerializer;<a name="line.215"></a>
-<span class="sourceLineNo">216</span><a name="line.216"></a>
-<span class="sourceLineNo">217</span>   /**<a name="line.217"></a>
-<span class="sourceLineNo">218</span>    * Constructor.<a name="line.218"></a>
-<span class="sourceLineNo">219</span>    *<a name="line.219"></a>
-<span class="sourceLineNo">220</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.220"></a>
-<span class="sourceLineNo">221</span>    */<a name="line.221"></a>
-<span class="sourceLineNo">222</span>   public XmlSerializer(PropertyStore propertyStore) {<a name="line.222"></a>
-<span class="sourceLineNo">223</span>      super(propertyStore);<a name="line.223"></a>
-<span class="sourceLineNo">224</span>      this.ctx = createContext(XmlSerializerContext.class);<a name="line.224"></a>
-<span class="sourceLineNo">225</span>   }<a name="line.225"></a>
-<span class="sourceLineNo">226</span><a name="line.226"></a>
-<span class="sourceLineNo">227</span>   @Override /* CoreObject */<a name="line.227"></a>
-<span class="sourceLineNo">228</span>   public XmlSerializerBuilder builder() {<a name="line.228"></a>
-<span class="sourceLineNo">229</span>      return new XmlSerializerBuilder(propertyStore);<a name="line.229"></a>
-<span class="sourceLineNo">230</span>   }<a name="line.230"></a>
-<span class="sourceLineNo">231</span><a name="line.231"></a>
-<span class="sourceLineNo">232</span><a name="line.232"></a>
-<span class="sourceLineNo">233</span>   /**<a name="line.233"></a>
-<span class="sourceLineNo">234</span>    * Returns the schema serializer based on the settings of this serializer.<a name="line.234"></a>
-<span class="sourceLineNo">235</span>    * @return The schema serializer.<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    */<a name="line.236"></a>
-<span class="sourceLineNo">237</span>   public XmlSerializer getSchemaSerializer() {<a name="line.237"></a>
-<span class="sourceLineNo">238</span>      if (schemaSerializer == null)<a name="line.238"></a>
-<span class="sourceLineNo">239</span>         schemaSerializer = new XmlSchemaSerializer(propertyStore);<a name="line.239"></a>
-<span class="sourceLineNo">240</span>      return schemaSerializer;<a name="line.240"></a>
-<span class="sourceLineNo">241</span>   }<a name="line.241"></a>
-<span class="sourceLineNo">242</span><a name="line.242"></a>
-<span class="sourceLineNo">243</span>   @Override /* Serializer */<a name="line.243"></a>
-<span class="sourceLineNo">244</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.244"></a>
-<span class="sourceLineNo">245</span>      return new XmlSerializerSession(ctx, args);<a name="line.245"></a>
-<span class="sourceLineNo">246</span>   }<a name="line.246"></a>
-<span class="sourceLineNo">247</span>}<a name="line.247"></a>
+<span class="sourceLineNo">214</span>   /**<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    * Constructor.<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    *<a name="line.216"></a>
+<span class="sourceLineNo">217</span>    * @param propertyStore<a name="line.217"></a>
+<span class="sourceLineNo">218</span>    *    The property store containing all the settings for this object.<a name="line.218"></a>
+<span class="sourceLineNo">219</span>    */<a name="line.219"></a>
+<span class="sourceLineNo">220</span>   public XmlSerializer(PropertyStore propertyStore) {<a name="line.220"></a>
+<span class="sourceLineNo">221</span>      this(propertyStore, "text/xml");<a name="line.221"></a>
+<span class="sourceLineNo">222</span>   }<a name="line.222"></a>
+<span class="sourceLineNo">223</span><a name="line.223"></a>
+<span class="sourceLineNo">224</span>   /**<a name="line.224"></a>
+<span class="sourceLineNo">225</span>    * Constructor.<a name="line.225"></a>
+<span class="sourceLineNo">226</span>    *<a name="line.226"></a>
+<span class="sourceLineNo">227</span>    * @param propertyStore<a name="line.227"></a>
+<span class="sourceLineNo">228</span>    *    The property store containing all the settings for this object.<a name="line.228"></a>
+<span class="sourceLineNo">229</span>    * @param produces<a name="line.229"></a>
+<span class="sourceLineNo">230</span>    *    The media type that this serializer produces.<a name="line.230"></a>
+<span class="sourceLineNo">231</span>    * @param accept<a name="line.231"></a>
+<span class="sourceLineNo">232</span>    *    The accept media types that the serializer can handle.<a name="line.232"></a>
+<span class="sourceLineNo">233</span>    *    &lt;p&gt;<a name="line.233"></a>
+<span class="sourceLineNo">234</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.235"></a>
+<span class="sourceLineNo">236</span>    *    &lt;p&gt;<a name="line.236"></a>
+<span class="sourceLineNo">237</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.237"></a>
+<span class="sourceLineNo">238</span>    *    &lt;p&gt;<a name="line.238"></a>
+<span class="sourceLineNo">239</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.240"></a>
+<span class="sourceLineNo">241</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    *    &lt;br&gt;...or...<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.243"></a>
+<span class="sourceLineNo">244</span>    */<a name="line.244"></a>
+<span class="sourceLineNo">245</span>   public XmlSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>      super(propertyStore, produces, accept);<a name="line.246"></a>
+<span class="sourceLineNo">247</span>      this.ctx = createContext(XmlSerializerContext.class);<a name="line.247"></a>
+<span class="sourceLineNo">248</span>   }<a name="line.248"></a>
+<span class="sourceLineNo">249</span><a name="line.249"></a>
+<span class="sourceLineNo">250</span>   @Override /* CoreObject */<a name="line.250"></a>
+<span class="sourceLineNo">251</span>   public XmlSerializerBuilder builder() {<a name="line.251"></a>
+<span class="sourceLineNo">252</span>      return new XmlSerializerBuilder(propertyStore);<a name="line.252"></a>
+<span class="sourceLineNo">253</span>   }<a name="line.253"></a>
+<span class="sourceLineNo">254</span><a name="line.254"></a>
+<span class="sourceLineNo">255</span><a name="line.255"></a>
+<span class="sourceLineNo">256</span>   /**<a name="line.256"></a>
+<span class="sourceLineNo">257</span>    * Returns the schema serializer based on the settings of this serializer.<a name="line.257"></a>
+<span class="sourceLineNo">258</span>    * @return The schema serializer.<a name="line.258"></a>
+<span class="sourceLineNo">259</span>    */<a name="line.259"></a>
+<span class="sourceLineNo">260</span>   public XmlSerializer getSchemaSerializer() {<a name="line.260"></a>
+<span class="sourceLineNo">261</span>      if (schemaSerializer == null)<a name="line.261"></a>
+<span class="sourceLineNo">262</span>         schemaSerializer = new XmlSchemaSerializer(propertyStore);<a name="line.262"></a>
+<span class="sourceLineNo">263</span>      return schemaSerializer;<a name="line.263"></a>
+<span class="sourceLineNo">264</span>   }<a name="line.264"></a>
+<span class="sourceLineNo">265</span><a name="line.265"></a>
+<span class="sourceLineNo">266</span>   @Override /* Serializer */<a name="line.266"></a>
+<span class="sourceLineNo">267</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.267"></a>
+<span class="sourceLineNo">268</span>      return new XmlSerializerSession(ctx, args);<a name="line.268"></a>
+<span class="sourceLineNo">269</span>   }<a name="line.269"></a>
+<span class="sourceLineNo">270</span>}<a name="line.270"></a>
 
 
 


[42/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializer.html b/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializer.html
index 7132309..e3b8609 100644
--- a/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializer.html
+++ b/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializer.html
@@ -136,8 +136,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="application/x-www-form-urlencoded")
-public class <a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.131">UrlEncodingSerializer</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.129">UrlEncodingSerializer</a>
 extends <a href="../../../../org/apache/juneau/uon/UonSerializer.html" title="class in org.apache.juneau.uon">UonSerializer</a>
 implements <a href="../../../../org/apache/juneau/serializer/PartSerializer.html" title="interface in org.apache.juneau.serializer">PartSerializer</a></pre>
 <div class="block">Serializes POJO models to URL-encoded notation with UON-encoded values (a notation for URL-encoded query paramter values).
@@ -354,6 +353,13 @@ implements <a href="../../../../org/apache/juneau/serializer/PartSerializer.html
 <div class="block">Constructor.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializer.html#UrlEncodingSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">UrlEncodingSerializer</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                     <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+                     <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</code>
+<div class="block">Constructor.</div>
+</td>
+</tr>
 </table>
 </li>
 </ul>
@@ -403,7 +409,7 @@ implements <a href="../../../../org/apache/juneau/serializer/PartSerializer.html
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -439,7 +445,7 @@ implements <a href="../../../../org/apache/juneau/serializer/PartSerializer.html
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializer.html" title="class in org.apache.juneau.urlencoding">UrlEncodingSerializer</a> <a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.134">DEFAULT</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializer.html" title="class in org.apache.juneau.urlencoding">UrlEncodingSerializer</a> <a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.132">DEFAULT</a></pre>
 <div class="block">Reusable instance of <a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializer.html" title="class in org.apache.juneau.urlencoding"><code>UrlEncodingSerializer</code></a>, all default settings.</div>
 </li>
 </ul>
@@ -449,7 +455,7 @@ implements <a href="../../../../org/apache/juneau/serializer/PartSerializer.html
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_PLAINTEXT</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializer.html" title="class in org.apache.juneau.urlencoding">UrlEncodingSerializer</a> <a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.137">DEFAULT_PLAINTEXT</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializer.html" title="class in org.apache.juneau.urlencoding">UrlEncodingSerializer</a> <a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.135">DEFAULT_PLAINTEXT</a></pre>
 <div class="block">Reusable instance of <a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializer.PlainText.html" title="class in org.apache.juneau.urlencoding"><code>UrlEncodingSerializer.PlainText</code></a>.</div>
 </li>
 </ul>
@@ -459,7 +465,7 @@ implements <a href="../../../../org/apache/juneau/serializer/PartSerializer.html
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_EXPANDED</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializer.html" title="class in org.apache.juneau.urlencoding">UrlEncodingSerializer</a> <a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.140">DEFAULT_EXPANDED</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializer.html" title="class in org.apache.juneau.urlencoding">UrlEncodingSerializer</a> <a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.138">DEFAULT_EXPANDED</a></pre>
 <div class="block">Reusable instance of <a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializer.Expanded.html" title="class in org.apache.juneau.urlencoding"><code>UrlEncodingSerializer.Expanded</code></a>.</div>
 </li>
 </ul>
@@ -469,7 +475,7 @@ implements <a href="../../../../org/apache/juneau/serializer/PartSerializer.html
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DEFAULT_READABLE</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializer.html" title="class in org.apache.juneau.urlencoding">UrlEncodingSerializer</a> <a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.143">DEFAULT_READABLE</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializer.html" title="class in org.apache.juneau.urlencoding">UrlEncodingSerializer</a> <a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.141">DEFAULT_READABLE</a></pre>
 <div class="block">Reusable instance of <a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializer.Readable.html" title="class in org.apache.juneau.urlencoding"><code>UrlEncodingSerializer.Readable</code></a>.</div>
 </li>
 </ul>
@@ -484,14 +490,43 @@ implements <a href="../../../../org/apache/juneau/serializer/PartSerializer.html
 <a name="UrlEncodingSerializer-org.apache.juneau.PropertyStore-">
 <!--   -->
 </a>
+<ul class="blockList">
+<li class="blockList">
+<h4>UrlEncodingSerializer</h4>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.196">UrlEncodingSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<div class="block">Constructor.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+</dl>
+</li>
+</ul>
+<a name="UrlEncodingSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">
+<!--   -->
+</a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>UrlEncodingSerializer</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.198">UrlEncodingSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.221">UrlEncodingSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                             <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+                             <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+<dd><code>produces</code> - The media type that this serializer produces.</dd>
+<dd><code>accept</code> - The accept media types that the serializer can handle.
+   <p>
+   Can contain meta-characters per the <code>media-type</code> specification of
+   <a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1">RFC2616/14.1</a>
+   <p>
+   If empty, then assumes the only media type supported is <code>produces</code>.
+   <p>
+   For example, if this serializer produces <js>"application/json"</js> but should handle media types of
+   <js>"application/json"</js> and <js>"text/json"</js>, then the arguments should be:
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"application/json"</js>, <js>"text/json"</js>);</code>
+   <br>...or...
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"*&#8203;/json"</js>);</code></dd>
 </dl>
 </li>
 </ul>
@@ -509,7 +544,7 @@ implements <a href="../../../../org/apache/juneau/serializer/PartSerializer.html
 <ul class="blockList">
 <li class="blockList">
 <h4>builder</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializerBuilder.html" title="class in org.apache.juneau.urlencoding">UrlEncodingSerializerBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.204">builder</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializerBuilder.html" title="class in org.apache.juneau.urlencoding">UrlEncodingSerializerBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.228">builder</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/CoreObject.html#builder--">CoreObject</a></code></span></div>
 <div class="block">Creates a new builder class for this object so that a new object can be created that expands upon the current
  object's settings.</div>
@@ -527,7 +562,7 @@ implements <a href="../../../../org/apache/juneau/serializer/PartSerializer.html
 <ul class="blockList">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.259">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.283">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession-org.apache.juneau.serializer.SerializerSessionArgs-">Serializer</a></code></span></div>
 <div class="block">Create the session object used for actual serialization of objects.</div>
 <dl>
@@ -537,8 +572,7 @@ implements <a href="../../../../org/apache/juneau/serializer/PartSerializer.html
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and serializer
-   contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   contexts.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The new session object.
    <br>Note that you must call <a href="../../../../org/apache/juneau/BeanSession.html#close--"><code>BeanSession.close()</code></a> on this object to perform any necessary
@@ -552,7 +586,7 @@ implements <a href="../../../../org/apache/juneau/serializer/PartSerializer.html
 <ul class="blockListLast">
 <li class="blockList">
 <h4>serialize</h4>
-<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.264">serialize</a>(<a href="../../../../org/apache/juneau/PartType.html" title="enum in org.apache.juneau">PartType</a>&nbsp;type,
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.288">serialize</a>(<a href="../../../../org/apache/juneau/PartType.html" title="enum in org.apache.juneau">PartType</a>&nbsp;type,
                         <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;value)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/PartSerializer.html#serialize-org.apache.juneau.PartType-java.lang.Object-">PartSerializer</a></code></span></div>
 <div class="block">Converts the specified value to a string that can be used as an HTTP header value, query parameter value,

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializerSession.html b/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializerSession.html
index bb83dad..3679418 100644
--- a/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializerSession.html
+++ b/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializerSession.html
@@ -133,7 +133,7 @@ var activeTableTab = "activeTableTab";
 <li class="blockList">
 <hr>
 <br>
-<pre>public class <a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializerSession.html#line.33">UrlEncodingSerializerSession</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializerSession.html#line.34">UrlEncodingSerializerSession</a>
 extends <a href="../../../../org/apache/juneau/uon/UonSerializerSession.html" title="class in org.apache.juneau.uon">UonSerializerSession</a></pre>
 <div class="block">Session object that lives for the duration of a single use of <a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializer.html" title="class in org.apache.juneau.urlencoding"><code>UrlEncodingSerializer</code></a>.
 
@@ -278,8 +278,7 @@ extends <a href="../../../../org/apache/juneau/uon/UonSerializerSession.html" ti
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and
-   serializer contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   serializer contexts.</dd>
 </dl>
 </li>
 </ul>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/xml/XmlDocSerializer.Ns.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/xml/XmlDocSerializer.Ns.html b/content/site/apidocs/org/apache/juneau/xml/XmlDocSerializer.Ns.html
index 6c6e1cc..3b4a6ba 100644
--- a/content/site/apidocs/org/apache/juneau/xml/XmlDocSerializer.Ns.html
+++ b/content/site/apidocs/org/apache/juneau/xml/XmlDocSerializer.Ns.html
@@ -131,9 +131,7 @@
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="text/xml",
-          <a href="../../../../org/apache/juneau/annotation/Produces.html#contentType--">contentType</a>="text/xml")
-public static class <a href="../../../../src-html/org/apache/juneau/xml/XmlDocSerializer.html#line.41">XmlDocSerializer.Ns</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/xml/XmlDocSerializer.html#line.39">XmlDocSerializer.Ns</a>
 extends <a href="../../../../org/apache/juneau/xml/XmlDocSerializer.html" title="class in org.apache.juneau.xml">XmlDocSerializer</a></pre>
 <div class="block">Default serializer without namespaces.</div>
 </li>
@@ -237,7 +235,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlDocSerializer.html" title=
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -273,7 +271,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlDocSerializer.html" title=
 <ul class="blockListLast">
 <li class="blockList">
 <h4>Ns</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlDocSerializer.Ns.html#line.48">Ns</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlDocSerializer.Ns.html#line.46">Ns</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/xml/XmlDocSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/xml/XmlDocSerializer.html b/content/site/apidocs/org/apache/juneau/xml/XmlDocSerializer.html
index 46dca6d..f6d28f9 100644
--- a/content/site/apidocs/org/apache/juneau/xml/XmlDocSerializer.html
+++ b/content/site/apidocs/org/apache/juneau/xml/XmlDocSerializer.html
@@ -132,7 +132,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre>public class <a href="../../../../src-html/org/apache/juneau/xml/XmlDocSerializer.html#line.37">XmlDocSerializer</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/xml/XmlDocSerializer.html#line.36">XmlDocSerializer</a>
 extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a></pre>
 <div class="block">Serializes POJOs to HTTP responses as XML.
 
@@ -260,7 +260,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -296,7 +296,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <ul class="blockListLast">
 <li class="blockList">
 <h4>XmlDocSerializer</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlDocSerializer.html#line.58">XmlDocSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlDocSerializer.html#line.56">XmlDocSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -318,7 +318,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlDocSerializer.html#line.63">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlDocSerializer.html#line.61">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession-org.apache.juneau.serializer.SerializerSessionArgs-">Serializer</a></code></span></div>
 <div class="block">Create the session object used for actual serialization of objects.</div>
 <dl>
@@ -328,8 +328,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and serializer
-   contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   contexts.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The new session object.
    <br>Note that you must call <a href="../../../../org/apache/juneau/BeanSession.html#close--"><code>BeanSession.close()</code></a> on this object to perform any necessary

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/xml/XmlDocSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/xml/XmlDocSerializerSession.html b/content/site/apidocs/org/apache/juneau/xml/XmlDocSerializerSession.html
index fe50ed2..0c3b76f 100644
--- a/content/site/apidocs/org/apache/juneau/xml/XmlDocSerializerSession.html
+++ b/content/site/apidocs/org/apache/juneau/xml/XmlDocSerializerSession.html
@@ -265,7 +265,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializerSession.html" ti
 <ul class="blockListLast">
 <li class="blockList">
 <h4>XmlDocSerializerSession</h4>
-<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlDocSerializerSession.html#line.39">XmlDocSerializerSession</a>(<a href="../../../../org/apache/juneau/xml/XmlSerializerContext.html" title="class in org.apache.juneau.xml">XmlSerializerContext</a>&nbsp;ctx,
+<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlDocSerializerSession.html#line.38">XmlDocSerializerSession</a>(<a href="../../../../org/apache/juneau/xml/XmlSerializerContext.html" title="class in org.apache.juneau.xml">XmlSerializerContext</a>&nbsp;ctx,
                                   <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block">Create a new session using properties specified in the context.</div>
 <dl>
@@ -275,8 +275,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializerSession.html" ti
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and
-   serializer contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   serializer contexts.</dd>
 </dl>
 </li>
 </ul>
@@ -294,7 +293,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializerSession.html" ti
 <ul class="blockListLast">
 <li class="blockList">
 <h4>doSerialize</h4>
-<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlDocSerializerSession.html#line.44">doSerialize</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out,
+<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlDocSerializerSession.html#line.43">doSerialize</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out,
                            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
                     throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/SerializerSession.html#doSerialize-org.apache.juneau.serializer.SerializerPipe-java.lang.Object-">SerializerSession</a></code></span></div>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/xml/XmlParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/xml/XmlParser.html b/content/site/apidocs/org/apache/juneau/xml/XmlParser.html
index 0efc68b..5b6256f 100644
--- a/content/site/apidocs/org/apache/juneau/xml/XmlParser.html
+++ b/content/site/apidocs/org/apache/juneau/xml/XmlParser.html
@@ -127,8 +127,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation">@Consumes</a>(<a href="../../../../org/apache/juneau/annotation/Consumes.html#value--">value</a>="text/xml,application/xml")
-public class <a href="../../../../src-html/org/apache/juneau/xml/XmlParser.html#line.39">XmlParser</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/xml/XmlParser.html#line.37">XmlParser</a>
 extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="class in org.apache.juneau.parser">ReaderParser</a></pre>
 <div class="block">Parses text generated by the <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml"><code>XmlSerializer</code></a> class back into a POJO model.
 
@@ -197,6 +196,12 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <div class="block">Constructor.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/xml/XmlParser.html#XmlParser-org.apache.juneau.PropertyStore-java.lang.String...-">XmlParser</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+         <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;consumes)</code>
+<div class="block">Constructor.</div>
+</td>
+</tr>
 </table>
 </li>
 </ul>
@@ -238,7 +243,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.parser.<a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser">Parser</a></h3>
-<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-java.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apac
 he/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
+<code><a href="../../../../org/apache/juneau/parser/Parser.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-j
 ava.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -274,7 +279,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DEFAULT</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/xml/XmlParser.html" title="class in org.apache.juneau.xml">XmlParser</a> <a href="../../../../src-html/org/apache/juneau/xml/XmlParser.html#line.42">DEFAULT</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/xml/XmlParser.html" title="class in org.apache.juneau.xml">XmlParser</a> <a href="../../../../src-html/org/apache/juneau/xml/XmlParser.html#line.40">DEFAULT</a></pre>
 <div class="block">Default parser, all default settings.</div>
 </li>
 </ul>
@@ -289,14 +294,30 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <a name="XmlParser-org.apache.juneau.PropertyStore-">
 <!--   -->
 </a>
+<ul class="blockList">
+<li class="blockList">
+<h4>XmlParser</h4>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlParser.html#line.51">XmlParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<div class="block">Constructor.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+</dl>
+</li>
+</ul>
+<a name="XmlParser-org.apache.juneau.PropertyStore-java.lang.String...-">
+<!--   -->
+</a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>XmlParser</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlParser.html#line.52">XmlParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlParser.html#line.63">XmlParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                 <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;consumes)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+<dd><code>consumes</code> - The list of media types that this parser consumes (e.g. <js>"application/json"</js>, <js>"*&#8203;/json"</js>).</dd>
 </dl>
 </li>
 </ul>
@@ -314,7 +335,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockList">
 <li class="blockList">
 <h4>builder</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/xml/XmlParserBuilder.html" title="class in org.apache.juneau.xml">XmlParserBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlParser.html#line.58">builder</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/xml/XmlParserBuilder.html" title="class in org.apache.juneau.xml">XmlParserBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlParser.html#line.69">builder</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/CoreObject.html#builder--">CoreObject</a></code></span></div>
 <div class="block">Creates a new builder class for this object so that a new object can be created that expands upon the current
  object's settings.</div>
@@ -332,7 +353,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/parser/ReaderParserSession.html" title="class in org.apache.juneau.parser">ReaderParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlParser.html#line.63">createSession</a>(<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/parser/ReaderParserSession.html" title="class in org.apache.juneau.parser">ReaderParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlParser.html#line.74">createSession</a>(<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession-org.apache.juneau.parser.ParserSessionArgs-">Parser</a></code></span></div>
 <div class="block">Create the session object that will be passed in to the parse method.
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/xml/XmlSchemaDocSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/xml/XmlSchemaDocSerializer.html b/content/site/apidocs/org/apache/juneau/xml/XmlSchemaDocSerializer.html
index 76e5571..7227049 100644
--- a/content/site/apidocs/org/apache/juneau/xml/XmlSchemaDocSerializer.html
+++ b/content/site/apidocs/org/apache/juneau/xml/XmlSchemaDocSerializer.html
@@ -248,7 +248,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSchemaSerializer.html" tit
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -316,8 +316,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSchemaSerializer.html" tit
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and serializer
-   contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   contexts.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The new session object.
    <br>Note that you must call <a href="../../../../org/apache/juneau/BeanSession.html#close--"><code>BeanSession.close()</code></a> on this object to perform any necessary

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/xml/XmlSchemaDocSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/xml/XmlSchemaDocSerializerSession.html b/content/site/apidocs/org/apache/juneau/xml/XmlSchemaDocSerializerSession.html
index d112d30..d4569a7 100644
--- a/content/site/apidocs/org/apache/juneau/xml/XmlSchemaDocSerializerSession.html
+++ b/content/site/apidocs/org/apache/juneau/xml/XmlSchemaDocSerializerSession.html
@@ -277,7 +277,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSchemaSerializerSession.ht
 <ul class="blockListLast">
 <li class="blockList">
 <h4>XmlSchemaDocSerializerSession</h4>
-<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSchemaDocSerializerSession.html#line.39">XmlSchemaDocSerializerSession</a>(<a href="../../../../org/apache/juneau/xml/XmlSerializerContext.html" title="class in org.apache.juneau.xml">XmlSerializerContext</a>&nbsp;ctx,
+<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSchemaDocSerializerSession.html#line.38">XmlSchemaDocSerializerSession</a>(<a href="../../../../org/apache/juneau/xml/XmlSerializerContext.html" title="class in org.apache.juneau.xml">XmlSerializerContext</a>&nbsp;ctx,
                                         <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block">Create a new session using properties specified in the context.</div>
 <dl>
@@ -287,8 +287,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSchemaSerializerSession.ht
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and
-   serializer contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   serializer contexts.</dd>
 </dl>
 </li>
 </ul>
@@ -306,7 +305,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSchemaSerializerSession.ht
 <ul class="blockListLast">
 <li class="blockList">
 <h4>doSerialize</h4>
-<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSchemaDocSerializerSession.html#line.44">doSerialize</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out,
+<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSchemaDocSerializerSession.html#line.43">doSerialize</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out,
                            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
                     throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/SerializerSession.html#doSerialize-org.apache.juneau.serializer.SerializerPipe-java.lang.Object-">SerializerSession</a></code></span></div>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/xml/XmlSchemaSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/xml/XmlSchemaSerializer.html b/content/site/apidocs/org/apache/juneau/xml/XmlSchemaSerializer.html
index e9167f1..2a3dbd6 100644
--- a/content/site/apidocs/org/apache/juneau/xml/XmlSchemaSerializer.html
+++ b/content/site/apidocs/org/apache/juneau/xml/XmlSchemaSerializer.html
@@ -132,9 +132,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="text/xml+schema",
-          <a href="../../../../org/apache/juneau/annotation/Produces.html#contentType--">contentType</a>="text/xml")
-public class <a href="../../../../src-html/org/apache/juneau/xml/XmlSchemaSerializer.html#line.42">XmlSchemaSerializer</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/xml/XmlSchemaSerializer.html#line.40">XmlSchemaSerializer</a>
 extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a></pre>
 <div class="block">Serializes POJO metadata to HTTP responses as XML.
 
@@ -256,7 +254,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -292,7 +290,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <ul class="blockListLast">
 <li class="blockList">
 <h4>XmlSchemaSerializer</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSchemaSerializer.html#line.49">XmlSchemaSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSchemaSerializer.html#line.47">XmlSchemaSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -314,7 +312,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSchemaSerializer.html#line.54">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSchemaSerializer.html#line.52">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession-org.apache.juneau.serializer.SerializerSessionArgs-">Serializer</a></code></span></div>
 <div class="block">Create the session object used for actual serialization of objects.</div>
 <dl>
@@ -324,8 +322,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and serializer
-   contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   contexts.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The new session object.
    <br>Note that you must call <a href="../../../../org/apache/juneau/BeanSession.html#close--"><code>BeanSession.close()</code></a> on this object to perform any necessary

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/xml/XmlSchemaSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/xml/XmlSchemaSerializerSession.html b/content/site/apidocs/org/apache/juneau/xml/XmlSchemaSerializerSession.html
index d6371fb..4521983 100644
--- a/content/site/apidocs/org/apache/juneau/xml/XmlSchemaSerializerSession.html
+++ b/content/site/apidocs/org/apache/juneau/xml/XmlSchemaSerializerSession.html
@@ -276,7 +276,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializerSession.html" ti
 <ul class="blockListLast">
 <li class="blockList">
 <h4>XmlSchemaSerializerSession</h4>
-<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSchemaSerializerSession.html#line.54">XmlSchemaSerializerSession</a>(<a href="../../../../org/apache/juneau/xml/XmlSerializerContext.html" title="class in org.apache.juneau.xml">XmlSerializerContext</a>&nbsp;ctx,
+<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSchemaSerializerSession.html#line.53">XmlSchemaSerializerSession</a>(<a href="../../../../org/apache/juneau/xml/XmlSerializerContext.html" title="class in org.apache.juneau.xml">XmlSerializerContext</a>&nbsp;ctx,
                                      <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block">Create a new session using properties specified in the context.</div>
 <dl>
@@ -286,8 +286,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializerSession.html" ti
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and
-   serializer contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   serializer contexts.</dd>
 </dl>
 </li>
 </ul>
@@ -305,7 +304,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializerSession.html" ti
 <ul class="blockList">
 <li class="blockList">
 <h4>doSerialize</h4>
-<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSchemaSerializerSession.html#line.59">doSerialize</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out,
+<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSchemaSerializerSession.html#line.58">doSerialize</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out,
                            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
                     throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/SerializerSession.html#doSerialize-org.apache.juneau.serializer.SerializerPipe-java.lang.Object-">SerializerSession</a></code></span></div>
@@ -330,7 +329,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializerSession.html" ti
 <ul class="blockListLast">
 <li class="blockList">
 <h4>getValidator</h4>
-<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/javax/xml/validation/Validator.html?is-external=true" title="class or interface in javax.xml.validation">Validator</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSchemaSerializerSession.html#line.79">getValidator</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out,
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/javax/xml/validation/Validator.html?is-external=true" title="class or interface in javax.xml.validation">Validator</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSchemaSerializerSession.html#line.78">getValidator</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out,
                               <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
                        throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block">Returns an XML-Schema validator based on the output returned by <a href="../../../../org/apache/juneau/xml/XmlSchemaSerializerSession.html#doSerialize-org.apache.juneau.serializer.SerializerPipe-java.lang.Object-"><code>doSerialize(SerializerPipe, Object)</code></a>;</div>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.Ns.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.Ns.html b/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.Ns.html
index 8727a40..02c85f8 100644
--- a/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.Ns.html
+++ b/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.Ns.html
@@ -126,9 +126,7 @@
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="text/xml+simple",
-          <a href="../../../../org/apache/juneau/annotation/Produces.html#contentType--">contentType</a>="text/xml")
-public static class <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.174">XmlSerializer.Ns</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.171">XmlSerializer.Ns</a>
 extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a></pre>
 <div class="block">Default serializer without namespaces.</div>
 </li>
@@ -218,7 +216,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -254,7 +252,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <ul class="blockListLast">
 <li class="blockList">
 <h4>Ns</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.Ns.html#line.181">Ns</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.Ns.html#line.178">Ns</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.NsSq.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.NsSq.html b/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.NsSq.html
index dc25559..fc32173 100644
--- a/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.NsSq.html
+++ b/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.NsSq.html
@@ -126,7 +126,7 @@
 </dl>
 <hr>
 <br>
-<pre>public static class <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.187">XmlSerializer.NsSq</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.184">XmlSerializer.NsSq</a>
 extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a></pre>
 <div class="block">Default serializer without namespaces, single quotes.</div>
 </li>
@@ -216,7 +216,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -252,7 +252,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <ul class="blockListLast">
 <li class="blockList">
 <h4>NsSq</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.NsSq.html#line.194">NsSq</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.NsSq.html#line.191">NsSq</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.NsSqReadable.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.NsSqReadable.html b/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.NsSqReadable.html
index 9022fd0..4a049b4 100644
--- a/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.NsSqReadable.html
+++ b/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.NsSqReadable.html
@@ -126,7 +126,7 @@
 </dl>
 <hr>
 <br>
-<pre>public static class <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.200">XmlSerializer.NsSqReadable</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.197">XmlSerializer.NsSqReadable</a>
 extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a></pre>
 <div class="block">Default serializer without namespaces, single quotes, with whitespace.</div>
 </li>
@@ -216,7 +216,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -252,7 +252,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <ul class="blockListLast">
 <li class="blockList">
 <h4>NsSqReadable</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.NsSqReadable.html#line.207">NsSqReadable</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.NsSqReadable.html#line.204">NsSqReadable</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.Sq.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.Sq.html b/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.Sq.html
index 9124b1f..0741871 100644
--- a/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.Sq.html
+++ b/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.Sq.html
@@ -126,7 +126,7 @@
 </dl>
 <hr>
 <br>
-<pre>public static class <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.147">XmlSerializer.Sq</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.145">XmlSerializer.Sq</a>
 extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a></pre>
 <div class="block">Default serializer, single quotes.</div>
 </li>
@@ -216,7 +216,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -252,7 +252,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <ul class="blockListLast">
 <li class="blockList">
 <h4>Sq</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.Sq.html#line.154">Sq</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.Sq.html#line.152">Sq</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.SqReadable.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.SqReadable.html b/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.SqReadable.html
index 5f2d3f4..829f7c6 100644
--- a/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.SqReadable.html
+++ b/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.SqReadable.html
@@ -126,7 +126,7 @@
 </dl>
 <hr>
 <br>
-<pre>public static class <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.160">XmlSerializer.SqReadable</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.158">XmlSerializer.SqReadable</a>
 extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a></pre>
 <div class="block">Default serializer, single quotes, whitespace added.</div>
 </li>
@@ -216,7 +216,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -252,7 +252,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <ul class="blockListLast">
 <li class="blockList">
 <h4>SqReadable</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.SqReadable.html#line.167">SqReadable</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.SqReadable.html#line.165">SqReadable</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>


[25/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.SimpleReadableSafe.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.SimpleReadableSafe.html b/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.SimpleReadableSafe.html
index 4484c96..3a31851 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.SimpleReadableSafe.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.SimpleReadableSafe.html
@@ -25,222 +25,247 @@
 <span class="sourceLineNo">017</span>import java.util.*;<a name="line.17"></a>
 <span class="sourceLineNo">018</span><a name="line.18"></a>
 <span class="sourceLineNo">019</span>import org.apache.juneau.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.annotation.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span>import org.apache.juneau.serializer.*;<a name="line.21"></a>
-<span class="sourceLineNo">022</span><a name="line.22"></a>
-<span class="sourceLineNo">023</span>/**<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * Serializes POJO models to JSON.<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;application/json, text/json&lt;/code&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * &lt;p&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/json&lt;/code&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> *<a name="line.31"></a>
-<span class="sourceLineNo">032</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.32"></a>
-<span class="sourceLineNo">033</span> *<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * The conversion is as follows...<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * &lt;ul class='spaced-list'&gt;<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *    &lt;li&gt;<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *       Maps (e.g. {@link HashMap HashMaps}, {@link TreeMap TreeMaps}) are converted to JSON objects.<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *       Collections (e.g. {@link HashSet HashSets}, {@link LinkedList LinkedLists}) and Java arrays are converted to<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *       JSON arrays.<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *    &lt;li&gt;<a name="line.41"></a>
-<span class="sourceLineNo">042</span> *       {@link String Strings} are converted to JSON strings.<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *    &lt;li&gt;<a name="line.43"></a>
-<span class="sourceLineNo">044</span> *       {@link Number Numbers} (e.g. {@link Integer}, {@link Long}, {@link Double}) are converted to JSON numbers.<a name="line.44"></a>
-<span class="sourceLineNo">045</span> *    &lt;li&gt;<a name="line.45"></a>
-<span class="sourceLineNo">046</span> *       {@link Boolean Booleans} are converted to JSON booleans.<a name="line.46"></a>
-<span class="sourceLineNo">047</span> *    &lt;li&gt;<a name="line.47"></a>
-<span class="sourceLineNo">048</span> *       {@code nulls} are converted to JSON nulls.<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *    &lt;li&gt;<a name="line.49"></a>
-<span class="sourceLineNo">050</span> *       {@code arrays} are converted to JSON arrays.<a name="line.50"></a>
-<span class="sourceLineNo">051</span> *    &lt;li&gt;<a name="line.51"></a>
-<span class="sourceLineNo">052</span> *       {@code beans} are converted to JSON objects.<a name="line.52"></a>
-<span class="sourceLineNo">053</span> * &lt;/ul&gt;<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *<a name="line.54"></a>
-<span class="sourceLineNo">055</span> * &lt;p&gt;<a name="line.55"></a>
-<span class="sourceLineNo">056</span> * The types above are considered "JSON-primitive" object types.<a name="line.56"></a>
-<span class="sourceLineNo">057</span> * Any non-JSON-primitive object types are transformed into JSON-primitive object types through<a name="line.57"></a>
-<span class="sourceLineNo">058</span> * {@link org.apache.juneau.transform.PojoSwap PojoSwaps} associated through the<a name="line.58"></a>
-<span class="sourceLineNo">059</span> * {@link CoreObjectBuilder#pojoSwaps(Class...)} method.<a name="line.59"></a>
-<span class="sourceLineNo">060</span> * Several default transforms are provided for transforming Dates, Enums, Iterators, etc...<a name="line.60"></a>
-<span class="sourceLineNo">061</span> *<a name="line.61"></a>
-<span class="sourceLineNo">062</span> * &lt;p&gt;<a name="line.62"></a>
-<span class="sourceLineNo">063</span> * This serializer provides several serialization options.<a name="line.63"></a>
-<span class="sourceLineNo">064</span> * Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.64"></a>
-<span class="sourceLineNo">065</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.65"></a>
-<span class="sourceLineNo">066</span> *<a name="line.66"></a>
-<span class="sourceLineNo">067</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.67"></a>
-<span class="sourceLineNo">068</span> *<a name="line.68"></a>
-<span class="sourceLineNo">069</span> * This class has the following properties associated with it:<a name="line.69"></a>
-<span class="sourceLineNo">070</span> * &lt;ul&gt;<a name="line.70"></a>
-<span class="sourceLineNo">071</span> *    &lt;li&gt;{@link JsonSerializerContext}<a name="line.71"></a>
-<span class="sourceLineNo">072</span> *    &lt;li&gt;{@link SerializerContext}<a name="line.72"></a>
-<span class="sourceLineNo">073</span> *    &lt;li&gt;{@link BeanContext}<a name="line.73"></a>
-<span class="sourceLineNo">074</span> * &lt;/ul&gt;<a name="line.74"></a>
-<span class="sourceLineNo">075</span> *<a name="line.75"></a>
-<span class="sourceLineNo">076</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.76"></a>
-<span class="sourceLineNo">077</span> *<a name="line.77"></a>
-<span class="sourceLineNo">078</span> * The following direct subclasses are provided for convenience:<a name="line.78"></a>
-<span class="sourceLineNo">079</span> * &lt;ul class='spaced-list'&gt;<a name="line.79"></a>
-<span class="sourceLineNo">080</span> *    &lt;li&gt;<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *       {@link Simple} - Default serializer, single quotes, simple mode.<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *    &lt;li&gt;<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *       {@link SimpleReadable} - Default serializer, single quotes, simple mode, with whitespace.<a name="line.83"></a>
-<span class="sourceLineNo">084</span> * &lt;/ul&gt;<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *<a name="line.85"></a>
-<span class="sourceLineNo">086</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.86"></a>
-<span class="sourceLineNo">087</span> * &lt;p class='bcode'&gt;<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *    &lt;jc&gt;// Use one of the default serializers to serialize a POJO&lt;/jc&gt;<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *    String json = JsonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(someObject);<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *    &lt;jc&gt;// Create a custom serializer for lax syntax using single quote characters&lt;/jc&gt;<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *    JsonSerializer serializer = &lt;jk&gt;new&lt;/jk&gt; JsonSerializerBuilder().simple().sq().build();<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *<a name="line.93"></a>
-<span class="sourceLineNo">094</span> *    &lt;jc&gt;// Clone an existing serializer and modify it to use single-quotes&lt;/jc&gt;<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *    JsonSerializer serializer = JsonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.builder().sq().build();<a name="line.95"></a>
-<span class="sourceLineNo">096</span> *<a name="line.96"></a>
-<span class="sourceLineNo">097</span> *    &lt;jc&gt;// Serialize a POJO to JSON&lt;/jc&gt;<a name="line.97"></a>
-<span class="sourceLineNo">098</span> *    String json = serializer.serialize(someObject);<a name="line.98"></a>
-<span class="sourceLineNo">099</span> * &lt;/p&gt;<a name="line.99"></a>
-<span class="sourceLineNo">100</span> */<a name="line.100"></a>
-<span class="sourceLineNo">101</span>@Produces("application/json,text/json")<a name="line.101"></a>
-<span class="sourceLineNo">102</span>public class JsonSerializer extends WriterSerializer {<a name="line.102"></a>
-<span class="sourceLineNo">103</span><a name="line.103"></a>
-<span class="sourceLineNo">104</span>   /** Default serializer, all default settings.*/<a name="line.104"></a>
-<span class="sourceLineNo">105</span>   public static final JsonSerializer DEFAULT = new JsonSerializer(PropertyStore.create());<a name="line.105"></a>
-<span class="sourceLineNo">106</span><a name="line.106"></a>
-<span class="sourceLineNo">107</span>   /** Default serializer, all default settings.*/<a name="line.107"></a>
-<span class="sourceLineNo">108</span>   public static final JsonSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.108"></a>
-<span class="sourceLineNo">109</span><a name="line.109"></a>
-<span class="sourceLineNo">110</span>   /** Default serializer, single quotes, simple mode. */<a name="line.110"></a>
-<span class="sourceLineNo">111</span>   public static final JsonSerializer DEFAULT_LAX = new Simple(PropertyStore.create());<a name="line.111"></a>
-<span class="sourceLineNo">112</span><a name="line.112"></a>
-<span class="sourceLineNo">113</span>   /** Default serializer, single quotes, simple mode, with whitespace. */<a name="line.113"></a>
-<span class="sourceLineNo">114</span>   public static final JsonSerializer DEFAULT_LAX_READABLE = new SimpleReadable(PropertyStore.create());<a name="line.114"></a>
-<span class="sourceLineNo">115</span><a name="line.115"></a>
-<span class="sourceLineNo">116</span>   /**<a name="line.116"></a>
-<span class="sourceLineNo">117</span>    * Default serializer, single quotes, simple mode, with whitespace and recursion detection.<a name="line.117"></a>
-<span class="sourceLineNo">118</span>    * Note that recursion detection introduces a small performance penalty.<a name="line.118"></a>
-<span class="sourceLineNo">119</span>    */<a name="line.119"></a>
-<span class="sourceLineNo">120</span>   public static final JsonSerializer DEFAULT_LAX_READABLE_SAFE = new SimpleReadableSafe(PropertyStore.create());<a name="line.120"></a>
-<span class="sourceLineNo">121</span><a name="line.121"></a>
-<span class="sourceLineNo">122</span><a name="line.122"></a>
-<span class="sourceLineNo">123</span>   /** Default serializer, with whitespace. */<a name="line.123"></a>
-<span class="sourceLineNo">124</span>   public static class Readable extends JsonSerializer {<a name="line.124"></a>
-<span class="sourceLineNo">125</span><a name="line.125"></a>
-<span class="sourceLineNo">126</span>      /**<a name="line.126"></a>
-<span class="sourceLineNo">127</span>       * Constructor.<a name="line.127"></a>
-<span class="sourceLineNo">128</span>       *<a name="line.128"></a>
-<span class="sourceLineNo">129</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.129"></a>
-<span class="sourceLineNo">130</span>       */<a name="line.130"></a>
-<span class="sourceLineNo">131</span>      public Readable(PropertyStore propertyStore) {<a name="line.131"></a>
-<span class="sourceLineNo">132</span>         super(<a name="line.132"></a>
-<span class="sourceLineNo">133</span>            propertyStore.copy()<a name="line.133"></a>
-<span class="sourceLineNo">134</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.134"></a>
-<span class="sourceLineNo">135</span>         );<a name="line.135"></a>
-<span class="sourceLineNo">136</span>      }<a name="line.136"></a>
-<span class="sourceLineNo">137</span>   }<a name="line.137"></a>
-<span class="sourceLineNo">138</span><a name="line.138"></a>
-<span class="sourceLineNo">139</span>   /** Default serializer, single quotes, simple mode. */<a name="line.139"></a>
-<span class="sourceLineNo">140</span>   @Produces(value="application/json+simple,text/json+simple",contentType="application/json")<a name="line.140"></a>
-<span class="sourceLineNo">141</span>   public static class Simple extends JsonSerializer {<a name="line.141"></a>
-<span class="sourceLineNo">142</span><a name="line.142"></a>
-<span class="sourceLineNo">143</span>      /**<a name="line.143"></a>
-<span class="sourceLineNo">144</span>       * Constructor.<a name="line.144"></a>
-<span class="sourceLineNo">145</span>       *<a name="line.145"></a>
-<span class="sourceLineNo">146</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.146"></a>
-<span class="sourceLineNo">147</span>       */<a name="line.147"></a>
-<span class="sourceLineNo">148</span>      public Simple(PropertyStore propertyStore) {<a name="line.148"></a>
-<span class="sourceLineNo">149</span>         super(<a name="line.149"></a>
-<span class="sourceLineNo">150</span>            propertyStore.copy()<a name="line.150"></a>
-<span class="sourceLineNo">151</span>            .append(JSON_simpleMode, true)<a name="line.151"></a>
-<span class="sourceLineNo">152</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.152"></a>
-<span class="sourceLineNo">153</span>         );<a name="line.153"></a>
-<span class="sourceLineNo">154</span>      }<a name="line.154"></a>
-<span class="sourceLineNo">155</span>   }<a name="line.155"></a>
-<span class="sourceLineNo">156</span><a name="line.156"></a>
-<span class="sourceLineNo">157</span>   /** Default serializer, single quotes, simple mode, with whitespace. */<a name="line.157"></a>
-<span class="sourceLineNo">158</span>   public static class SimpleReadable extends JsonSerializer {<a name="line.158"></a>
-<span class="sourceLineNo">159</span><a name="line.159"></a>
-<span class="sourceLineNo">160</span>      /**<a name="line.160"></a>
-<span class="sourceLineNo">161</span>       * Constructor.<a name="line.161"></a>
-<span class="sourceLineNo">162</span>       *<a name="line.162"></a>
-<span class="sourceLineNo">163</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.163"></a>
-<span class="sourceLineNo">164</span>       */<a name="line.164"></a>
-<span class="sourceLineNo">165</span>      public SimpleReadable(PropertyStore propertyStore) {<a name="line.165"></a>
-<span class="sourceLineNo">166</span>         super(<a name="line.166"></a>
-<span class="sourceLineNo">167</span>            propertyStore.copy()<a name="line.167"></a>
-<span class="sourceLineNo">168</span>            .append(JSON_simpleMode, true)<a name="line.168"></a>
-<span class="sourceLineNo">169</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.169"></a>
-<span class="sourceLineNo">170</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.170"></a>
-<span class="sourceLineNo">171</span>         );<a name="line.171"></a>
-<span class="sourceLineNo">172</span>      }<a name="line.172"></a>
-<span class="sourceLineNo">173</span>   }<a name="line.173"></a>
-<span class="sourceLineNo">174</span><a name="line.174"></a>
-<span class="sourceLineNo">175</span>   /**<a name="line.175"></a>
-<span class="sourceLineNo">176</span>    * Default serializer, single quotes, simple mode, with whitespace and recursion detection.<a name="line.176"></a>
-<span class="sourceLineNo">177</span>    * Note that recursion detection introduces a small performance penalty.<a name="line.177"></a>
-<span class="sourceLineNo">178</span>    */<a name="line.178"></a>
-<span class="sourceLineNo">179</span>   public static class SimpleReadableSafe extends JsonSerializer {<a name="line.179"></a>
-<span class="sourceLineNo">180</span><a name="line.180"></a>
-<span class="sourceLineNo">181</span>      /**<a name="line.181"></a>
-<span class="sourceLineNo">182</span>       * Constructor.<a name="line.182"></a>
-<span class="sourceLineNo">183</span>       *<a name="line.183"></a>
-<span class="sourceLineNo">184</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.184"></a>
-<span class="sourceLineNo">185</span>       */<a name="line.185"></a>
-<span class="sourceLineNo">186</span>      public SimpleReadableSafe(PropertyStore propertyStore) {<a name="line.186"></a>
-<span class="sourceLineNo">187</span>         super(<a name="line.187"></a>
-<span class="sourceLineNo">188</span>            propertyStore.copy()<a name="line.188"></a>
-<span class="sourceLineNo">189</span>            .append(JSON_simpleMode, true)<a name="line.189"></a>
-<span class="sourceLineNo">190</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.190"></a>
-<span class="sourceLineNo">191</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.191"></a>
-<span class="sourceLineNo">192</span>            .append(SERIALIZER_detectRecursions, true)<a name="line.192"></a>
-<span class="sourceLineNo">193</span>         );<a name="line.193"></a>
-<span class="sourceLineNo">194</span>      }<a name="line.194"></a>
-<span class="sourceLineNo">195</span>   }<a name="line.195"></a>
+<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
+<span class="sourceLineNo">021</span><a name="line.21"></a>
+<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * Serializes POJO models to JSON.<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;application/json, text/json&lt;/code&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * &lt;p&gt;<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/json&lt;/code&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> *<a name="line.30"></a>
+<span class="sourceLineNo">031</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.31"></a>
+<span class="sourceLineNo">032</span> *<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * The conversion is as follows...<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * &lt;ul class='spaced-list'&gt;<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *    &lt;li&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *       Maps (e.g. {@link HashMap HashMaps}, {@link TreeMap TreeMaps}) are converted to JSON objects.<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;<a name="line.37"></a>
+<span class="sourceLineNo">038</span> *       Collections (e.g. {@link HashSet HashSets}, {@link LinkedList LinkedLists}) and Java arrays are converted to<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *       JSON arrays.<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *    &lt;li&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span> *       {@link String Strings} are converted to JSON strings.<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *    &lt;li&gt;<a name="line.42"></a>
+<span class="sourceLineNo">043</span> *       {@link Number Numbers} (e.g. {@link Integer}, {@link Long}, {@link Double}) are converted to JSON numbers.<a name="line.43"></a>
+<span class="sourceLineNo">044</span> *    &lt;li&gt;<a name="line.44"></a>
+<span class="sourceLineNo">045</span> *       {@link Boolean Booleans} are converted to JSON booleans.<a name="line.45"></a>
+<span class="sourceLineNo">046</span> *    &lt;li&gt;<a name="line.46"></a>
+<span class="sourceLineNo">047</span> *       {@code nulls} are converted to JSON nulls.<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *    &lt;li&gt;<a name="line.48"></a>
+<span class="sourceLineNo">049</span> *       {@code arrays} are converted to JSON arrays.<a name="line.49"></a>
+<span class="sourceLineNo">050</span> *    &lt;li&gt;<a name="line.50"></a>
+<span class="sourceLineNo">051</span> *       {@code beans} are converted to JSON objects.<a name="line.51"></a>
+<span class="sourceLineNo">052</span> * &lt;/ul&gt;<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *<a name="line.53"></a>
+<span class="sourceLineNo">054</span> * &lt;p&gt;<a name="line.54"></a>
+<span class="sourceLineNo">055</span> * The types above are considered "JSON-primitive" object types.<a name="line.55"></a>
+<span class="sourceLineNo">056</span> * Any non-JSON-primitive object types are transformed into JSON-primitive object types through<a name="line.56"></a>
+<span class="sourceLineNo">057</span> * {@link org.apache.juneau.transform.PojoSwap PojoSwaps} associated through the<a name="line.57"></a>
+<span class="sourceLineNo">058</span> * {@link CoreObjectBuilder#pojoSwaps(Class...)} method.<a name="line.58"></a>
+<span class="sourceLineNo">059</span> * Several default transforms are provided for transforming Dates, Enums, Iterators, etc...<a name="line.59"></a>
+<span class="sourceLineNo">060</span> *<a name="line.60"></a>
+<span class="sourceLineNo">061</span> * &lt;p&gt;<a name="line.61"></a>
+<span class="sourceLineNo">062</span> * This serializer provides several serialization options.<a name="line.62"></a>
+<span class="sourceLineNo">063</span> * Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.63"></a>
+<span class="sourceLineNo">064</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.64"></a>
+<span class="sourceLineNo">065</span> *<a name="line.65"></a>
+<span class="sourceLineNo">066</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.66"></a>
+<span class="sourceLineNo">067</span> *<a name="line.67"></a>
+<span class="sourceLineNo">068</span> * This class has the following properties associated with it:<a name="line.68"></a>
+<span class="sourceLineNo">069</span> * &lt;ul&gt;<a name="line.69"></a>
+<span class="sourceLineNo">070</span> *    &lt;li&gt;{@link JsonSerializerContext}<a name="line.70"></a>
+<span class="sourceLineNo">071</span> *    &lt;li&gt;{@link SerializerContext}<a name="line.71"></a>
+<span class="sourceLineNo">072</span> *    &lt;li&gt;{@link BeanContext}<a name="line.72"></a>
+<span class="sourceLineNo">073</span> * &lt;/ul&gt;<a name="line.73"></a>
+<span class="sourceLineNo">074</span> *<a name="line.74"></a>
+<span class="sourceLineNo">075</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.75"></a>
+<span class="sourceLineNo">076</span> *<a name="line.76"></a>
+<span class="sourceLineNo">077</span> * The following direct subclasses are provided for convenience:<a name="line.77"></a>
+<span class="sourceLineNo">078</span> * &lt;ul class='spaced-list'&gt;<a name="line.78"></a>
+<span class="sourceLineNo">079</span> *    &lt;li&gt;<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *       {@link Simple} - Default serializer, single quotes, simple mode.<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *    &lt;li&gt;<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *       {@link SimpleReadable} - Default serializer, single quotes, simple mode, with whitespace.<a name="line.82"></a>
+<span class="sourceLineNo">083</span> * &lt;/ul&gt;<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *<a name="line.84"></a>
+<span class="sourceLineNo">085</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.85"></a>
+<span class="sourceLineNo">086</span> * &lt;p class='bcode'&gt;<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *    &lt;jc&gt;// Use one of the default serializers to serialize a POJO&lt;/jc&gt;<a name="line.87"></a>
+<span class="sourceLineNo">088</span> *    String json = JsonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(someObject);<a name="line.88"></a>
+<span class="sourceLineNo">089</span> *<a name="line.89"></a>
+<span class="sourceLineNo">090</span> *    &lt;jc&gt;// Create a custom serializer for lax syntax using single quote characters&lt;/jc&gt;<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *    JsonSerializer serializer = &lt;jk&gt;new&lt;/jk&gt; JsonSerializerBuilder().simple().sq().build();<a name="line.91"></a>
+<span class="sourceLineNo">092</span> *<a name="line.92"></a>
+<span class="sourceLineNo">093</span> *    &lt;jc&gt;// Clone an existing serializer and modify it to use single-quotes&lt;/jc&gt;<a name="line.93"></a>
+<span class="sourceLineNo">094</span> *    JsonSerializer serializer = JsonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.builder().sq().build();<a name="line.94"></a>
+<span class="sourceLineNo">095</span> *<a name="line.95"></a>
+<span class="sourceLineNo">096</span> *    &lt;jc&gt;// Serialize a POJO to JSON&lt;/jc&gt;<a name="line.96"></a>
+<span class="sourceLineNo">097</span> *    String json = serializer.serialize(someObject);<a name="line.97"></a>
+<span class="sourceLineNo">098</span> * &lt;/p&gt;<a name="line.98"></a>
+<span class="sourceLineNo">099</span> */<a name="line.99"></a>
+<span class="sourceLineNo">100</span>public class JsonSerializer extends WriterSerializer {<a name="line.100"></a>
+<span class="sourceLineNo">101</span><a name="line.101"></a>
+<span class="sourceLineNo">102</span>   /** Default serializer, all default settings.*/<a name="line.102"></a>
+<span class="sourceLineNo">103</span>   public static final JsonSerializer DEFAULT = new JsonSerializer(PropertyStore.create());<a name="line.103"></a>
+<span class="sourceLineNo">104</span><a name="line.104"></a>
+<span class="sourceLineNo">105</span>   /** Default serializer, all default settings.*/<a name="line.105"></a>
+<span class="sourceLineNo">106</span>   public static final JsonSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.106"></a>
+<span class="sourceLineNo">107</span><a name="line.107"></a>
+<span class="sourceLineNo">108</span>   /** Default serializer, single quotes, simple mode. */<a name="line.108"></a>
+<span class="sourceLineNo">109</span>   public static final JsonSerializer DEFAULT_LAX = new Simple(PropertyStore.create());<a name="line.109"></a>
+<span class="sourceLineNo">110</span><a name="line.110"></a>
+<span class="sourceLineNo">111</span>   /** Default serializer, single quotes, simple mode, with whitespace. */<a name="line.111"></a>
+<span class="sourceLineNo">112</span>   public static final JsonSerializer DEFAULT_LAX_READABLE = new SimpleReadable(PropertyStore.create());<a name="line.112"></a>
+<span class="sourceLineNo">113</span><a name="line.113"></a>
+<span class="sourceLineNo">114</span>   /**<a name="line.114"></a>
+<span class="sourceLineNo">115</span>    * Default serializer, single quotes, simple mode, with whitespace and recursion detection.<a name="line.115"></a>
+<span class="sourceLineNo">116</span>    * Note that recursion detection introduces a small performance penalty.<a name="line.116"></a>
+<span class="sourceLineNo">117</span>    */<a name="line.117"></a>
+<span class="sourceLineNo">118</span>   public static final JsonSerializer DEFAULT_LAX_READABLE_SAFE = new SimpleReadableSafe(PropertyStore.create());<a name="line.118"></a>
+<span class="sourceLineNo">119</span><a name="line.119"></a>
+<span class="sourceLineNo">120</span><a name="line.120"></a>
+<span class="sourceLineNo">121</span>   /** Default serializer, with whitespace. */<a name="line.121"></a>
+<span class="sourceLineNo">122</span>   public static class Readable extends JsonSerializer {<a name="line.122"></a>
+<span class="sourceLineNo">123</span><a name="line.123"></a>
+<span class="sourceLineNo">124</span>      /**<a name="line.124"></a>
+<span class="sourceLineNo">125</span>       * Constructor.<a name="line.125"></a>
+<span class="sourceLineNo">126</span>       *<a name="line.126"></a>
+<span class="sourceLineNo">127</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.127"></a>
+<span class="sourceLineNo">128</span>       */<a name="line.128"></a>
+<span class="sourceLineNo">129</span>      public Readable(PropertyStore propertyStore) {<a name="line.129"></a>
+<span class="sourceLineNo">130</span>         super(<a name="line.130"></a>
+<span class="sourceLineNo">131</span>            propertyStore.copy()<a name="line.131"></a>
+<span class="sourceLineNo">132</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.132"></a>
+<span class="sourceLineNo">133</span>         );<a name="line.133"></a>
+<span class="sourceLineNo">134</span>      }<a name="line.134"></a>
+<span class="sourceLineNo">135</span>   }<a name="line.135"></a>
+<span class="sourceLineNo">136</span><a name="line.136"></a>
+<span class="sourceLineNo">137</span>   /** Default serializer, single quotes, simple mode. */<a name="line.137"></a>
+<span class="sourceLineNo">138</span>   public static class Simple extends JsonSerializer {<a name="line.138"></a>
+<span class="sourceLineNo">139</span><a name="line.139"></a>
+<span class="sourceLineNo">140</span>      /**<a name="line.140"></a>
+<span class="sourceLineNo">141</span>       * Constructor.<a name="line.141"></a>
+<span class="sourceLineNo">142</span>       *<a name="line.142"></a>
+<span class="sourceLineNo">143</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.143"></a>
+<span class="sourceLineNo">144</span>       */<a name="line.144"></a>
+<span class="sourceLineNo">145</span>      public Simple(PropertyStore propertyStore) {<a name="line.145"></a>
+<span class="sourceLineNo">146</span>         super(<a name="line.146"></a>
+<span class="sourceLineNo">147</span>            propertyStore.copy()<a name="line.147"></a>
+<span class="sourceLineNo">148</span>               .append(JSON_simpleMode, true)<a name="line.148"></a>
+<span class="sourceLineNo">149</span>               .append(SERIALIZER_quoteChar, '\''),<a name="line.149"></a>
+<span class="sourceLineNo">150</span>            "application/json",<a name="line.150"></a>
+<span class="sourceLineNo">151</span>            "application/json+simple", "text/json+simple"<a name="line.151"></a>
+<span class="sourceLineNo">152</span>         );<a name="line.152"></a>
+<span class="sourceLineNo">153</span>      }<a name="line.153"></a>
+<span class="sourceLineNo">154</span>   }<a name="line.154"></a>
+<span class="sourceLineNo">155</span><a name="line.155"></a>
+<span class="sourceLineNo">156</span>   /** Default serializer, single quotes, simple mode, with whitespace. */<a name="line.156"></a>
+<span class="sourceLineNo">157</span>   public static class SimpleReadable extends JsonSerializer {<a name="line.157"></a>
+<span class="sourceLineNo">158</span><a name="line.158"></a>
+<span class="sourceLineNo">159</span>      /**<a name="line.159"></a>
+<span class="sourceLineNo">160</span>       * Constructor.<a name="line.160"></a>
+<span class="sourceLineNo">161</span>       *<a name="line.161"></a>
+<span class="sourceLineNo">162</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.162"></a>
+<span class="sourceLineNo">163</span>       */<a name="line.163"></a>
+<span class="sourceLineNo">164</span>      public SimpleReadable(PropertyStore propertyStore) {<a name="line.164"></a>
+<span class="sourceLineNo">165</span>         super(<a name="line.165"></a>
+<span class="sourceLineNo">166</span>            propertyStore.copy()<a name="line.166"></a>
+<span class="sourceLineNo">167</span>            .append(JSON_simpleMode, true)<a name="line.167"></a>
+<span class="sourceLineNo">168</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.168"></a>
+<span class="sourceLineNo">169</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.169"></a>
+<span class="sourceLineNo">170</span>         );<a name="line.170"></a>
+<span class="sourceLineNo">171</span>      }<a name="line.171"></a>
+<span class="sourceLineNo">172</span>   }<a name="line.172"></a>
+<span class="sourceLineNo">173</span><a name="line.173"></a>
+<span class="sourceLineNo">174</span>   /**<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    * Default serializer, single quotes, simple mode, with whitespace and recursion detection.<a name="line.175"></a>
+<span class="sourceLineNo">176</span>    * Note that recursion detection introduces a small performance penalty.<a name="line.176"></a>
+<span class="sourceLineNo">177</span>    */<a name="line.177"></a>
+<span class="sourceLineNo">178</span>   public static class SimpleReadableSafe extends JsonSerializer {<a name="line.178"></a>
+<span class="sourceLineNo">179</span><a name="line.179"></a>
+<span class="sourceLineNo">180</span>      /**<a name="line.180"></a>
+<span class="sourceLineNo">181</span>       * Constructor.<a name="line.181"></a>
+<span class="sourceLineNo">182</span>       *<a name="line.182"></a>
+<span class="sourceLineNo">183</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.183"></a>
+<span class="sourceLineNo">184</span>       */<a name="line.184"></a>
+<span class="sourceLineNo">185</span>      public SimpleReadableSafe(PropertyStore propertyStore) {<a name="line.185"></a>
+<span class="sourceLineNo">186</span>         super(<a name="line.186"></a>
+<span class="sourceLineNo">187</span>            propertyStore.copy()<a name="line.187"></a>
+<span class="sourceLineNo">188</span>            .append(JSON_simpleMode, true)<a name="line.188"></a>
+<span class="sourceLineNo">189</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.189"></a>
+<span class="sourceLineNo">190</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.190"></a>
+<span class="sourceLineNo">191</span>            .append(SERIALIZER_detectRecursions, true)<a name="line.191"></a>
+<span class="sourceLineNo">192</span>         );<a name="line.192"></a>
+<span class="sourceLineNo">193</span>      }<a name="line.193"></a>
+<span class="sourceLineNo">194</span>   }<a name="line.194"></a>
+<span class="sourceLineNo">195</span><a name="line.195"></a>
 <span class="sourceLineNo">196</span><a name="line.196"></a>
-<span class="sourceLineNo">197</span><a name="line.197"></a>
-<span class="sourceLineNo">198</span>   final JsonSerializerContext ctx;<a name="line.198"></a>
-<span class="sourceLineNo">199</span>   private volatile JsonSchemaSerializer schemaSerializer;<a name="line.199"></a>
-<span class="sourceLineNo">200</span><a name="line.200"></a>
-<span class="sourceLineNo">201</span>   /**<a name="line.201"></a>
-<span class="sourceLineNo">202</span>    * Constructor.<a name="line.202"></a>
-<span class="sourceLineNo">203</span>    *<a name="line.203"></a>
-<span class="sourceLineNo">204</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.204"></a>
+<span class="sourceLineNo">197</span>   final JsonSerializerContext ctx;<a name="line.197"></a>
+<span class="sourceLineNo">198</span>   private volatile JsonSchemaSerializer schemaSerializer;<a name="line.198"></a>
+<span class="sourceLineNo">199</span><a name="line.199"></a>
+<span class="sourceLineNo">200</span>   /**<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    * Constructor.<a name="line.201"></a>
+<span class="sourceLineNo">202</span>    *<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    * @param propertyStore<a name="line.203"></a>
+<span class="sourceLineNo">204</span>    *    The property store containing all the settings for this object.<a name="line.204"></a>
 <span class="sourceLineNo">205</span>    */<a name="line.205"></a>
 <span class="sourceLineNo">206</span>   public JsonSerializer(PropertyStore propertyStore) {<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      super(propertyStore);<a name="line.207"></a>
-<span class="sourceLineNo">208</span>      this.ctx = createContext(JsonSerializerContext.class);<a name="line.208"></a>
-<span class="sourceLineNo">209</span>   }<a name="line.209"></a>
-<span class="sourceLineNo">210</span><a name="line.210"></a>
-<span class="sourceLineNo">211</span>   @Override /* CoreObject */<a name="line.211"></a>
-<span class="sourceLineNo">212</span>   public JsonSerializerBuilder builder() {<a name="line.212"></a>
-<span class="sourceLineNo">213</span>      return new JsonSerializerBuilder(propertyStore);<a name="line.213"></a>
-<span class="sourceLineNo">214</span>   }<a name="line.214"></a>
-<span class="sourceLineNo">215</span><a name="line.215"></a>
-<span class="sourceLineNo">216</span>   /**<a name="line.216"></a>
-<span class="sourceLineNo">217</span>    * Returns the schema serializer based on the settings of this serializer.<a name="line.217"></a>
-<span class="sourceLineNo">218</span>    *<a name="line.218"></a>
-<span class="sourceLineNo">219</span>    * @return The schema serializer.<a name="line.219"></a>
-<span class="sourceLineNo">220</span>    */<a name="line.220"></a>
-<span class="sourceLineNo">221</span>   public JsonSchemaSerializer getSchemaSerializer() {<a name="line.221"></a>
-<span class="sourceLineNo">222</span>      if (schemaSerializer == null)<a name="line.222"></a>
-<span class="sourceLineNo">223</span>         schemaSerializer = new JsonSchemaSerializer(propertyStore);<a name="line.223"></a>
-<span class="sourceLineNo">224</span>      return schemaSerializer;<a name="line.224"></a>
-<span class="sourceLineNo">225</span>   }<a name="line.225"></a>
-<span class="sourceLineNo">226</span><a name="line.226"></a>
-<span class="sourceLineNo">227</span>   //--------------------------------------------------------------------------------<a name="line.227"></a>
-<span class="sourceLineNo">228</span>   // Entry point methods<a name="line.228"></a>
-<span class="sourceLineNo">229</span>   //--------------------------------------------------------------------------------<a name="line.229"></a>
-<span class="sourceLineNo">230</span><a name="line.230"></a>
-<span class="sourceLineNo">231</span>   @Override /* Serializer */<a name="line.231"></a>
-<span class="sourceLineNo">232</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.232"></a>
-<span class="sourceLineNo">233</span>      return new JsonSerializerSession(ctx, args);<a name="line.233"></a>
+<span class="sourceLineNo">207</span>      this(propertyStore, "application/json", "application/json", "text/json");<a name="line.207"></a>
+<span class="sourceLineNo">208</span>   }<a name="line.208"></a>
+<span class="sourceLineNo">209</span><a name="line.209"></a>
+<span class="sourceLineNo">210</span>   /**<a name="line.210"></a>
+<span class="sourceLineNo">211</span>    * Constructor.<a name="line.211"></a>
+<span class="sourceLineNo">212</span>    *<a name="line.212"></a>
+<span class="sourceLineNo">213</span>    * @param propertyStore<a name="line.213"></a>
+<span class="sourceLineNo">214</span>    *    The property store containing all the settings for this object.<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    * @param produces<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    *    The media type that this serializer produces.<a name="line.216"></a>
+<span class="sourceLineNo">217</span>    * @param accept<a name="line.217"></a>
+<span class="sourceLineNo">218</span>    *    The accept media types that the serializer can handle.<a name="line.218"></a>
+<span class="sourceLineNo">219</span>    *    &lt;p&gt;<a name="line.219"></a>
+<span class="sourceLineNo">220</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.220"></a>
+<span class="sourceLineNo">221</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.221"></a>
+<span class="sourceLineNo">222</span>    *    &lt;p&gt;<a name="line.222"></a>
+<span class="sourceLineNo">223</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.223"></a>
+<span class="sourceLineNo">224</span>    *    &lt;p&gt;<a name="line.224"></a>
+<span class="sourceLineNo">225</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.225"></a>
+<span class="sourceLineNo">226</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.226"></a>
+<span class="sourceLineNo">227</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.227"></a>
+<span class="sourceLineNo">228</span>    *    &lt;br&gt;...or...<a name="line.228"></a>
+<span class="sourceLineNo">229</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.229"></a>
+<span class="sourceLineNo">230</span>    */<a name="line.230"></a>
+<span class="sourceLineNo">231</span>   public JsonSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.231"></a>
+<span class="sourceLineNo">232</span>      super(propertyStore, produces, accept);<a name="line.232"></a>
+<span class="sourceLineNo">233</span>      this.ctx = createContext(JsonSerializerContext.class);<a name="line.233"></a>
 <span class="sourceLineNo">234</span>   }<a name="line.234"></a>
-<span class="sourceLineNo">235</span>}<a name="line.235"></a>
+<span class="sourceLineNo">235</span><a name="line.235"></a>
+<span class="sourceLineNo">236</span>   @Override /* CoreObject */<a name="line.236"></a>
+<span class="sourceLineNo">237</span>   public JsonSerializerBuilder builder() {<a name="line.237"></a>
+<span class="sourceLineNo">238</span>      return new JsonSerializerBuilder(propertyStore);<a name="line.238"></a>
+<span class="sourceLineNo">239</span>   }<a name="line.239"></a>
+<span class="sourceLineNo">240</span><a name="line.240"></a>
+<span class="sourceLineNo">241</span>   /**<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    * Returns the schema serializer based on the settings of this serializer.<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    *<a name="line.243"></a>
+<span class="sourceLineNo">244</span>    * @return The schema serializer.<a name="line.244"></a>
+<span class="sourceLineNo">245</span>    */<a name="line.245"></a>
+<span class="sourceLineNo">246</span>   public JsonSchemaSerializer getSchemaSerializer() {<a name="line.246"></a>
+<span class="sourceLineNo">247</span>      if (schemaSerializer == null)<a name="line.247"></a>
+<span class="sourceLineNo">248</span>         schemaSerializer = new JsonSchemaSerializer(propertyStore);<a name="line.248"></a>
+<span class="sourceLineNo">249</span>      return schemaSerializer;<a name="line.249"></a>
+<span class="sourceLineNo">250</span>   }<a name="line.250"></a>
+<span class="sourceLineNo">251</span><a name="line.251"></a>
+<span class="sourceLineNo">252</span>   //--------------------------------------------------------------------------------<a name="line.252"></a>
+<span class="sourceLineNo">253</span>   // Entry point methods<a name="line.253"></a>
+<span class="sourceLineNo">254</span>   //--------------------------------------------------------------------------------<a name="line.254"></a>
+<span class="sourceLineNo">255</span><a name="line.255"></a>
+<span class="sourceLineNo">256</span>   @Override /* Serializer */<a name="line.256"></a>
+<span class="sourceLineNo">257</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.257"></a>
+<span class="sourceLineNo">258</span>      return new JsonSerializerSession(ctx, args);<a name="line.258"></a>
+<span class="sourceLineNo">259</span>   }<a name="line.259"></a>
+<span class="sourceLineNo">260</span>}<a name="line.260"></a>
 
 
 



[13/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingParser.html b/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingParser.html
index fdad744..daf69e6 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingParser.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingParser.html
@@ -27,188 +27,186 @@
 <span class="sourceLineNo">019</span>import java.util.*;<a name="line.19"></a>
 <span class="sourceLineNo">020</span><a name="line.20"></a>
 <span class="sourceLineNo">021</span>import org.apache.juneau.*;<a name="line.21"></a>
-<span class="sourceLineNo">022</span>import org.apache.juneau.annotation.*;<a name="line.22"></a>
-<span class="sourceLineNo">023</span>import org.apache.juneau.parser.*;<a name="line.23"></a>
-<span class="sourceLineNo">024</span>import org.apache.juneau.uon.*;<a name="line.24"></a>
-<span class="sourceLineNo">025</span><a name="line.25"></a>
-<span class="sourceLineNo">026</span>/**<a name="line.26"></a>
-<span class="sourceLineNo">027</span> * Parses URL-encoded text into POJO models.<a name="line.27"></a>
-<span class="sourceLineNo">028</span> *<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> *<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * Handles &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/x-www-form-urlencoded&lt;/code&gt;<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * Parses URL-Encoded text (e.g. &lt;js&gt;"foo=bar&amp;amp;baz=bing"&lt;/js&gt;) into POJOs.<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *<a name="line.36"></a>
-<span class="sourceLineNo">037</span> * &lt;p&gt;<a name="line.37"></a>
-<span class="sourceLineNo">038</span> * Expects parameter values to be in UON notation.<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *<a name="line.39"></a>
-<span class="sourceLineNo">040</span> * &lt;p&gt;<a name="line.40"></a>
-<span class="sourceLineNo">041</span> * This parser uses a state machine, which makes it very fast and efficient.<a name="line.41"></a>
-<span class="sourceLineNo">042</span> *<a name="line.42"></a>
-<span class="sourceLineNo">043</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.43"></a>
-<span class="sourceLineNo">044</span> *<a name="line.44"></a>
-<span class="sourceLineNo">045</span> * This class has the following properties associated with it:<a name="line.45"></a>
-<span class="sourceLineNo">046</span> * &lt;ul&gt;<a name="line.46"></a>
-<span class="sourceLineNo">047</span> *    &lt;li&gt;{@link UonParserContext}<a name="line.47"></a>
-<span class="sourceLineNo">048</span> *    &lt;li&gt;{@link BeanContext}<a name="line.48"></a>
-<span class="sourceLineNo">049</span> * &lt;/ul&gt;<a name="line.49"></a>
-<span class="sourceLineNo">050</span> */<a name="line.50"></a>
-<span class="sourceLineNo">051</span>@SuppressWarnings({ "unchecked", "hiding" })<a name="line.51"></a>
-<span class="sourceLineNo">052</span>@Consumes("application/x-www-form-urlencoded")<a name="line.52"></a>
-<span class="sourceLineNo">053</span>public class UrlEncodingParser extends UonParser implements PartParser {<a name="line.53"></a>
-<span class="sourceLineNo">054</span><a name="line.54"></a>
-<span class="sourceLineNo">055</span>   /** Reusable instance of {@link UrlEncodingParser}. */<a name="line.55"></a>
-<span class="sourceLineNo">056</span>   public static final UrlEncodingParser DEFAULT = new UrlEncodingParser(PropertyStore.create());<a name="line.56"></a>
-<span class="sourceLineNo">057</span><a name="line.57"></a>
+<span class="sourceLineNo">022</span>import org.apache.juneau.parser.*;<a name="line.22"></a>
+<span class="sourceLineNo">023</span>import org.apache.juneau.uon.*;<a name="line.23"></a>
+<span class="sourceLineNo">024</span><a name="line.24"></a>
+<span class="sourceLineNo">025</span>/**<a name="line.25"></a>
+<span class="sourceLineNo">026</span> * Parses URL-encoded text into POJO models.<a name="line.26"></a>
+<span class="sourceLineNo">027</span> *<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.28"></a>
+<span class="sourceLineNo">029</span> *<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * Handles &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/x-www-form-urlencoded&lt;/code&gt;<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * Parses URL-Encoded text (e.g. &lt;js&gt;"foo=bar&amp;amp;baz=bing"&lt;/js&gt;) into POJOs.<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *<a name="line.35"></a>
+<span class="sourceLineNo">036</span> * &lt;p&gt;<a name="line.36"></a>
+<span class="sourceLineNo">037</span> * Expects parameter values to be in UON notation.<a name="line.37"></a>
+<span class="sourceLineNo">038</span> *<a name="line.38"></a>
+<span class="sourceLineNo">039</span> * &lt;p&gt;<a name="line.39"></a>
+<span class="sourceLineNo">040</span> * This parser uses a state machine, which makes it very fast and efficient.<a name="line.40"></a>
+<span class="sourceLineNo">041</span> *<a name="line.41"></a>
+<span class="sourceLineNo">042</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.42"></a>
+<span class="sourceLineNo">043</span> *<a name="line.43"></a>
+<span class="sourceLineNo">044</span> * This class has the following properties associated with it:<a name="line.44"></a>
+<span class="sourceLineNo">045</span> * &lt;ul&gt;<a name="line.45"></a>
+<span class="sourceLineNo">046</span> *    &lt;li&gt;{@link UonParserContext}<a name="line.46"></a>
+<span class="sourceLineNo">047</span> *    &lt;li&gt;{@link BeanContext}<a name="line.47"></a>
+<span class="sourceLineNo">048</span> * &lt;/ul&gt;<a name="line.48"></a>
+<span class="sourceLineNo">049</span> */<a name="line.49"></a>
+<span class="sourceLineNo">050</span>@SuppressWarnings({ "unchecked", "hiding" })<a name="line.50"></a>
+<span class="sourceLineNo">051</span>public class UrlEncodingParser extends UonParser implements PartParser {<a name="line.51"></a>
+<span class="sourceLineNo">052</span><a name="line.52"></a>
+<span class="sourceLineNo">053</span>   /** Reusable instance of {@link UrlEncodingParser}. */<a name="line.53"></a>
+<span class="sourceLineNo">054</span>   public static final UrlEncodingParser DEFAULT = new UrlEncodingParser(PropertyStore.create());<a name="line.54"></a>
+<span class="sourceLineNo">055</span><a name="line.55"></a>
+<span class="sourceLineNo">056</span><a name="line.56"></a>
+<span class="sourceLineNo">057</span>   private final UrlEncodingParserContext ctx;<a name="line.57"></a>
 <span class="sourceLineNo">058</span><a name="line.58"></a>
-<span class="sourceLineNo">059</span>   private final UrlEncodingParserContext ctx;<a name="line.59"></a>
-<span class="sourceLineNo">060</span><a name="line.60"></a>
-<span class="sourceLineNo">061</span>   /**<a name="line.61"></a>
-<span class="sourceLineNo">062</span>    * Constructor.<a name="line.62"></a>
-<span class="sourceLineNo">063</span>    *<a name="line.63"></a>
-<span class="sourceLineNo">064</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.64"></a>
-<span class="sourceLineNo">065</span>    */<a name="line.65"></a>
-<span class="sourceLineNo">066</span>   public UrlEncodingParser(PropertyStore propertyStore) {<a name="line.66"></a>
-<span class="sourceLineNo">067</span>      super(propertyStore.copy().append(UON_decodeChars, true));<a name="line.67"></a>
-<span class="sourceLineNo">068</span>      this.ctx = createContext(UrlEncodingParserContext.class);<a name="line.68"></a>
-<span class="sourceLineNo">069</span>   }<a name="line.69"></a>
-<span class="sourceLineNo">070</span><a name="line.70"></a>
-<span class="sourceLineNo">071</span>   @Override /* CoreObject */<a name="line.71"></a>
-<span class="sourceLineNo">072</span>   public UrlEncodingParserBuilder builder() {<a name="line.72"></a>
-<span class="sourceLineNo">073</span>      return new UrlEncodingParserBuilder(propertyStore);<a name="line.73"></a>
-<span class="sourceLineNo">074</span>   }<a name="line.74"></a>
-<span class="sourceLineNo">075</span><a name="line.75"></a>
-<span class="sourceLineNo">076</span>   /**<a name="line.76"></a>
-<span class="sourceLineNo">077</span>    * Parse a URL query string into a simple map of key/value pairs.<a name="line.77"></a>
-<span class="sourceLineNo">078</span>    *<a name="line.78"></a>
-<span class="sourceLineNo">079</span>    * @param qs The query string to parse.<a name="line.79"></a>
-<span class="sourceLineNo">080</span>    * @param map The map to parse into.  If &lt;jk&gt;null&lt;/jk&gt;, then a new {@link TreeMap} will be used.<a name="line.80"></a>
-<span class="sourceLineNo">081</span>    * @return A sorted {@link TreeMap} of query string entries.<a name="line.81"></a>
-<span class="sourceLineNo">082</span>    * @throws Exception<a name="line.82"></a>
-<span class="sourceLineNo">083</span>    */<a name="line.83"></a>
-<span class="sourceLineNo">084</span>   public Map&lt;String,String[]&gt; parseIntoSimpleMap(String qs, Map&lt;String,String[]&gt; map) throws Exception {<a name="line.84"></a>
+<span class="sourceLineNo">059</span>   /**<a name="line.59"></a>
+<span class="sourceLineNo">060</span>    * Constructor.<a name="line.60"></a>
+<span class="sourceLineNo">061</span>    *<a name="line.61"></a>
+<span class="sourceLineNo">062</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.62"></a>
+<span class="sourceLineNo">063</span>    */<a name="line.63"></a>
+<span class="sourceLineNo">064</span>   public UrlEncodingParser(PropertyStore propertyStore) {<a name="line.64"></a>
+<span class="sourceLineNo">065</span>      super(propertyStore.copy().append(UON_decodeChars, true), "application/x-www-form-urlencoded");<a name="line.65"></a>
+<span class="sourceLineNo">066</span>      this.ctx = createContext(UrlEncodingParserContext.class);<a name="line.66"></a>
+<span class="sourceLineNo">067</span>   }<a name="line.67"></a>
+<span class="sourceLineNo">068</span><a name="line.68"></a>
+<span class="sourceLineNo">069</span>   @Override /* CoreObject */<a name="line.69"></a>
+<span class="sourceLineNo">070</span>   public UrlEncodingParserBuilder builder() {<a name="line.70"></a>
+<span class="sourceLineNo">071</span>      return new UrlEncodingParserBuilder(propertyStore);<a name="line.71"></a>
+<span class="sourceLineNo">072</span>   }<a name="line.72"></a>
+<span class="sourceLineNo">073</span><a name="line.73"></a>
+<span class="sourceLineNo">074</span>   /**<a name="line.74"></a>
+<span class="sourceLineNo">075</span>    * Parse a URL query string into a simple map of key/value pairs.<a name="line.75"></a>
+<span class="sourceLineNo">076</span>    *<a name="line.76"></a>
+<span class="sourceLineNo">077</span>    * @param qs The query string to parse.<a name="line.77"></a>
+<span class="sourceLineNo">078</span>    * @param map The map to parse into.  If &lt;jk&gt;null&lt;/jk&gt;, then a new {@link TreeMap} will be used.<a name="line.78"></a>
+<span class="sourceLineNo">079</span>    * @return A sorted {@link TreeMap} of query string entries.<a name="line.79"></a>
+<span class="sourceLineNo">080</span>    * @throws Exception<a name="line.80"></a>
+<span class="sourceLineNo">081</span>    */<a name="line.81"></a>
+<span class="sourceLineNo">082</span>   public Map&lt;String,String[]&gt; parseIntoSimpleMap(String qs, Map&lt;String,String[]&gt; map) throws Exception {<a name="line.82"></a>
+<span class="sourceLineNo">083</span><a name="line.83"></a>
+<span class="sourceLineNo">084</span>      Map&lt;String,String[]&gt; m = map == null ? new TreeMap&lt;String,String[]&gt;() : map;<a name="line.84"></a>
 <span class="sourceLineNo">085</span><a name="line.85"></a>
-<span class="sourceLineNo">086</span>      Map&lt;String,String[]&gt; m = map == null ? new TreeMap&lt;String,String[]&gt;() : map;<a name="line.86"></a>
-<span class="sourceLineNo">087</span><a name="line.87"></a>
-<span class="sourceLineNo">088</span>      if (isEmpty(qs))<a name="line.88"></a>
-<span class="sourceLineNo">089</span>         return m;<a name="line.89"></a>
-<span class="sourceLineNo">090</span><a name="line.90"></a>
-<span class="sourceLineNo">091</span>      // We're reading from a string, so we don't need to make sure close() is called on the pipe.<a name="line.91"></a>
-<span class="sourceLineNo">092</span>      ParserPipe p = new ParserPipe(qs, false, false, null, null);<a name="line.92"></a>
-<span class="sourceLineNo">093</span>      UonReader r = new UonReader(p, true);<a name="line.93"></a>
-<span class="sourceLineNo">094</span><a name="line.94"></a>
-<span class="sourceLineNo">095</span>      final int S1=1; // Looking for attrName start.<a name="line.95"></a>
-<span class="sourceLineNo">096</span>      final int S2=2; // Found attrName start, looking for = or &amp; or end.<a name="line.96"></a>
-<span class="sourceLineNo">097</span>      final int S3=3; // Found =, looking for valStart.<a name="line.97"></a>
-<span class="sourceLineNo">098</span>      final int S4=4; // Found valStart, looking for &amp; or end.<a name="line.98"></a>
-<span class="sourceLineNo">099</span><a name="line.99"></a>
-<span class="sourceLineNo">100</span>      try {<a name="line.100"></a>
-<span class="sourceLineNo">101</span>         int c = r.peekSkipWs();<a name="line.101"></a>
-<span class="sourceLineNo">102</span>         if (c == '?')<a name="line.102"></a>
-<span class="sourceLineNo">103</span>            r.read();<a name="line.103"></a>
-<span class="sourceLineNo">104</span><a name="line.104"></a>
-<span class="sourceLineNo">105</span>         int state = S1;<a name="line.105"></a>
-<span class="sourceLineNo">106</span>         String currAttr = null;<a name="line.106"></a>
-<span class="sourceLineNo">107</span>         while (c != -1) {<a name="line.107"></a>
-<span class="sourceLineNo">108</span>            c = r.read();<a name="line.108"></a>
-<span class="sourceLineNo">109</span>            if (state == S1) {<a name="line.109"></a>
-<span class="sourceLineNo">110</span>               if (c != -1) {<a name="line.110"></a>
-<span class="sourceLineNo">111</span>                  r.unread();<a name="line.111"></a>
-<span class="sourceLineNo">112</span>                  r.mark();<a name="line.112"></a>
-<span class="sourceLineNo">113</span>                  state = S2;<a name="line.113"></a>
-<span class="sourceLineNo">114</span>               }<a name="line.114"></a>
-<span class="sourceLineNo">115</span>            } else if (state == S2) {<a name="line.115"></a>
-<span class="sourceLineNo">116</span>               if (c == -1) {<a name="line.116"></a>
-<span class="sourceLineNo">117</span>                  add(m, r.getMarked(), null);<a name="line.117"></a>
-<span class="sourceLineNo">118</span>               } else if (c == '\u0001') {<a name="line.118"></a>
-<span class="sourceLineNo">119</span>                  m.put(r.getMarked(0,-1), null);<a name="line.119"></a>
-<span class="sourceLineNo">120</span>                  state = S1;<a name="line.120"></a>
-<span class="sourceLineNo">121</span>               } else if (c == '\u0002') {<a name="line.121"></a>
-<span class="sourceLineNo">122</span>                  currAttr = r.getMarked(0,-1);<a name="line.122"></a>
-<span class="sourceLineNo">123</span>                  state = S3;<a name="line.123"></a>
-<span class="sourceLineNo">124</span>               }<a name="line.124"></a>
-<span class="sourceLineNo">125</span>            } else if (state == S3) {<a name="line.125"></a>
-<span class="sourceLineNo">126</span>               if (c == -1 || c == '\u0001') {<a name="line.126"></a>
-<span class="sourceLineNo">127</span>                  add(m, currAttr, "");<a name="line.127"></a>
-<span class="sourceLineNo">128</span>               } else {<a name="line.128"></a>
-<span class="sourceLineNo">129</span>                  if (c == '\u0002')<a name="line.129"></a>
-<span class="sourceLineNo">130</span>                     r.replace('=');<a name="line.130"></a>
-<span class="sourceLineNo">131</span>                  r.unread();<a name="line.131"></a>
-<span class="sourceLineNo">132</span>                  r.mark();<a name="line.132"></a>
-<span class="sourceLineNo">133</span>                  state = S4;<a name="line.133"></a>
-<span class="sourceLineNo">134</span>               }<a name="line.134"></a>
-<span class="sourceLineNo">135</span>            } else if (state == S4) {<a name="line.135"></a>
-<span class="sourceLineNo">136</span>               if (c == -1) {<a name="line.136"></a>
-<span class="sourceLineNo">137</span>                  add(m, currAttr, r.getMarked());<a name="line.137"></a>
-<span class="sourceLineNo">138</span>               } else if (c == '\u0001') {<a name="line.138"></a>
-<span class="sourceLineNo">139</span>                  add(m, currAttr, r.getMarked(0,-1));<a name="line.139"></a>
-<span class="sourceLineNo">140</span>                  state = S1;<a name="line.140"></a>
-<span class="sourceLineNo">141</span>               } else if (c == '\u0002') {<a name="line.141"></a>
-<span class="sourceLineNo">142</span>                  r.replace('=');<a name="line.142"></a>
-<span class="sourceLineNo">143</span>               }<a name="line.143"></a>
-<span class="sourceLineNo">144</span>            }<a name="line.144"></a>
-<span class="sourceLineNo">145</span>         }<a name="line.145"></a>
-<span class="sourceLineNo">146</span>      } finally {<a name="line.146"></a>
-<span class="sourceLineNo">147</span>         r.close();<a name="line.147"></a>
-<span class="sourceLineNo">148</span>      }<a name="line.148"></a>
-<span class="sourceLineNo">149</span><a name="line.149"></a>
-<span class="sourceLineNo">150</span>      return m;<a name="line.150"></a>
-<span class="sourceLineNo">151</span>   }<a name="line.151"></a>
-<span class="sourceLineNo">152</span><a name="line.152"></a>
-<span class="sourceLineNo">153</span>   private static void add(Map&lt;String,String[]&gt; m, String key, String val) {<a name="line.153"></a>
-<span class="sourceLineNo">154</span>      boolean b = m.containsKey(key);<a name="line.154"></a>
-<span class="sourceLineNo">155</span>      if (val == null) {<a name="line.155"></a>
-<span class="sourceLineNo">156</span>         if (! b)<a name="line.156"></a>
-<span class="sourceLineNo">157</span>            m.put(key, null);<a name="line.157"></a>
-<span class="sourceLineNo">158</span>      } else if (b &amp;&amp; m.get(key) != null) {<a name="line.158"></a>
-<span class="sourceLineNo">159</span>         m.put(key, append(m.get(key), val));<a name="line.159"></a>
-<span class="sourceLineNo">160</span>      } else {<a name="line.160"></a>
-<span class="sourceLineNo">161</span>         m.put(key, new String[]{val});<a name="line.161"></a>
-<span class="sourceLineNo">162</span>      }<a name="line.162"></a>
-<span class="sourceLineNo">163</span>   }<a name="line.163"></a>
-<span class="sourceLineNo">164</span><a name="line.164"></a>
-<span class="sourceLineNo">165</span>   @Override /* PartParser */<a name="line.165"></a>
-<span class="sourceLineNo">166</span>   public &lt;T&gt; T parse(PartType partType, String in, ClassMeta&lt;T&gt; type) throws ParseException {<a name="line.166"></a>
-<span class="sourceLineNo">167</span>      if (in == null)<a name="line.167"></a>
-<span class="sourceLineNo">168</span>         return null;<a name="line.168"></a>
-<span class="sourceLineNo">169</span>      if (type.isString() &amp;&amp; in.length() &gt; 0) {<a name="line.169"></a>
-<span class="sourceLineNo">170</span>         // Shortcut - If we're returning a string and the value doesn't start with "'" or is "null", then<a name="line.170"></a>
-<span class="sourceLineNo">171</span>         // just return the string since it's a plain value.<a name="line.171"></a>
-<span class="sourceLineNo">172</span>         // This allows us to bypass the creation of a UonParserSession object.<a name="line.172"></a>
-<span class="sourceLineNo">173</span>         char x = firstNonWhitespaceChar(in);<a name="line.173"></a>
-<span class="sourceLineNo">174</span>         if (x != '\'' &amp;&amp; x != 'n' &amp;&amp; in.indexOf('~') == -1)<a name="line.174"></a>
-<span class="sourceLineNo">175</span>            return (T)in;<a name="line.175"></a>
-<span class="sourceLineNo">176</span>         if (x == 'n' &amp;&amp; "null".equals(in))<a name="line.176"></a>
-<span class="sourceLineNo">177</span>            return null;<a name="line.177"></a>
-<span class="sourceLineNo">178</span>      }<a name="line.178"></a>
-<span class="sourceLineNo">179</span>      UonParserSession session = createParameterSession();<a name="line.179"></a>
-<span class="sourceLineNo">180</span>      ParserPipe pipe = session.createPipe(in);<a name="line.180"></a>
-<span class="sourceLineNo">181</span>      try {<a name="line.181"></a>
-<span class="sourceLineNo">182</span>         UonReader r = session.getUonReader(pipe, false);<a name="line.182"></a>
-<span class="sourceLineNo">183</span>         return session.parseAnything(type, r, null, true, null);<a name="line.183"></a>
-<span class="sourceLineNo">184</span>      } catch (ParseException e) {<a name="line.184"></a>
-<span class="sourceLineNo">185</span>         throw e;<a name="line.185"></a>
-<span class="sourceLineNo">186</span>      } catch (Exception e) {<a name="line.186"></a>
-<span class="sourceLineNo">187</span>         throw new ParseException(session.getLastLocation(), e);<a name="line.187"></a>
-<span class="sourceLineNo">188</span>      } finally {<a name="line.188"></a>
-<span class="sourceLineNo">189</span>         pipe.close();<a name="line.189"></a>
-<span class="sourceLineNo">190</span>         session.close();<a name="line.190"></a>
-<span class="sourceLineNo">191</span>      }<a name="line.191"></a>
-<span class="sourceLineNo">192</span>   }<a name="line.192"></a>
-<span class="sourceLineNo">193</span><a name="line.193"></a>
-<span class="sourceLineNo">194</span><a name="line.194"></a>
+<span class="sourceLineNo">086</span>      if (isEmpty(qs))<a name="line.86"></a>
+<span class="sourceLineNo">087</span>         return m;<a name="line.87"></a>
+<span class="sourceLineNo">088</span><a name="line.88"></a>
+<span class="sourceLineNo">089</span>      // We're reading from a string, so we don't need to make sure close() is called on the pipe.<a name="line.89"></a>
+<span class="sourceLineNo">090</span>      ParserPipe p = new ParserPipe(qs, false, false, null, null);<a name="line.90"></a>
+<span class="sourceLineNo">091</span>      UonReader r = new UonReader(p, true);<a name="line.91"></a>
+<span class="sourceLineNo">092</span><a name="line.92"></a>
+<span class="sourceLineNo">093</span>      final int S1=1; // Looking for attrName start.<a name="line.93"></a>
+<span class="sourceLineNo">094</span>      final int S2=2; // Found attrName start, looking for = or &amp; or end.<a name="line.94"></a>
+<span class="sourceLineNo">095</span>      final int S3=3; // Found =, looking for valStart.<a name="line.95"></a>
+<span class="sourceLineNo">096</span>      final int S4=4; // Found valStart, looking for &amp; or end.<a name="line.96"></a>
+<span class="sourceLineNo">097</span><a name="line.97"></a>
+<span class="sourceLineNo">098</span>      try {<a name="line.98"></a>
+<span class="sourceLineNo">099</span>         int c = r.peekSkipWs();<a name="line.99"></a>
+<span class="sourceLineNo">100</span>         if (c == '?')<a name="line.100"></a>
+<span class="sourceLineNo">101</span>            r.read();<a name="line.101"></a>
+<span class="sourceLineNo">102</span><a name="line.102"></a>
+<span class="sourceLineNo">103</span>         int state = S1;<a name="line.103"></a>
+<span class="sourceLineNo">104</span>         String currAttr = null;<a name="line.104"></a>
+<span class="sourceLineNo">105</span>         while (c != -1) {<a name="line.105"></a>
+<span class="sourceLineNo">106</span>            c = r.read();<a name="line.106"></a>
+<span class="sourceLineNo">107</span>            if (state == S1) {<a name="line.107"></a>
+<span class="sourceLineNo">108</span>               if (c != -1) {<a name="line.108"></a>
+<span class="sourceLineNo">109</span>                  r.unread();<a name="line.109"></a>
+<span class="sourceLineNo">110</span>                  r.mark();<a name="line.110"></a>
+<span class="sourceLineNo">111</span>                  state = S2;<a name="line.111"></a>
+<span class="sourceLineNo">112</span>               }<a name="line.112"></a>
+<span class="sourceLineNo">113</span>            } else if (state == S2) {<a name="line.113"></a>
+<span class="sourceLineNo">114</span>               if (c == -1) {<a name="line.114"></a>
+<span class="sourceLineNo">115</span>                  add(m, r.getMarked(), null);<a name="line.115"></a>
+<span class="sourceLineNo">116</span>               } else if (c == '\u0001') {<a name="line.116"></a>
+<span class="sourceLineNo">117</span>                  m.put(r.getMarked(0,-1), null);<a name="line.117"></a>
+<span class="sourceLineNo">118</span>                  state = S1;<a name="line.118"></a>
+<span class="sourceLineNo">119</span>               } else if (c == '\u0002') {<a name="line.119"></a>
+<span class="sourceLineNo">120</span>                  currAttr = r.getMarked(0,-1);<a name="line.120"></a>
+<span class="sourceLineNo">121</span>                  state = S3;<a name="line.121"></a>
+<span class="sourceLineNo">122</span>               }<a name="line.122"></a>
+<span class="sourceLineNo">123</span>            } else if (state == S3) {<a name="line.123"></a>
+<span class="sourceLineNo">124</span>               if (c == -1 || c == '\u0001') {<a name="line.124"></a>
+<span class="sourceLineNo">125</span>                  add(m, currAttr, "");<a name="line.125"></a>
+<span class="sourceLineNo">126</span>               } else {<a name="line.126"></a>
+<span class="sourceLineNo">127</span>                  if (c == '\u0002')<a name="line.127"></a>
+<span class="sourceLineNo">128</span>                     r.replace('=');<a name="line.128"></a>
+<span class="sourceLineNo">129</span>                  r.unread();<a name="line.129"></a>
+<span class="sourceLineNo">130</span>                  r.mark();<a name="line.130"></a>
+<span class="sourceLineNo">131</span>                  state = S4;<a name="line.131"></a>
+<span class="sourceLineNo">132</span>               }<a name="line.132"></a>
+<span class="sourceLineNo">133</span>            } else if (state == S4) {<a name="line.133"></a>
+<span class="sourceLineNo">134</span>               if (c == -1) {<a name="line.134"></a>
+<span class="sourceLineNo">135</span>                  add(m, currAttr, r.getMarked());<a name="line.135"></a>
+<span class="sourceLineNo">136</span>               } else if (c == '\u0001') {<a name="line.136"></a>
+<span class="sourceLineNo">137</span>                  add(m, currAttr, r.getMarked(0,-1));<a name="line.137"></a>
+<span class="sourceLineNo">138</span>                  state = S1;<a name="line.138"></a>
+<span class="sourceLineNo">139</span>               } else if (c == '\u0002') {<a name="line.139"></a>
+<span class="sourceLineNo">140</span>                  r.replace('=');<a name="line.140"></a>
+<span class="sourceLineNo">141</span>               }<a name="line.141"></a>
+<span class="sourceLineNo">142</span>            }<a name="line.142"></a>
+<span class="sourceLineNo">143</span>         }<a name="line.143"></a>
+<span class="sourceLineNo">144</span>      } finally {<a name="line.144"></a>
+<span class="sourceLineNo">145</span>         r.close();<a name="line.145"></a>
+<span class="sourceLineNo">146</span>      }<a name="line.146"></a>
+<span class="sourceLineNo">147</span><a name="line.147"></a>
+<span class="sourceLineNo">148</span>      return m;<a name="line.148"></a>
+<span class="sourceLineNo">149</span>   }<a name="line.149"></a>
+<span class="sourceLineNo">150</span><a name="line.150"></a>
+<span class="sourceLineNo">151</span>   private static void add(Map&lt;String,String[]&gt; m, String key, String val) {<a name="line.151"></a>
+<span class="sourceLineNo">152</span>      boolean b = m.containsKey(key);<a name="line.152"></a>
+<span class="sourceLineNo">153</span>      if (val == null) {<a name="line.153"></a>
+<span class="sourceLineNo">154</span>         if (! b)<a name="line.154"></a>
+<span class="sourceLineNo">155</span>            m.put(key, null);<a name="line.155"></a>
+<span class="sourceLineNo">156</span>      } else if (b &amp;&amp; m.get(key) != null) {<a name="line.156"></a>
+<span class="sourceLineNo">157</span>         m.put(key, append(m.get(key), val));<a name="line.157"></a>
+<span class="sourceLineNo">158</span>      } else {<a name="line.158"></a>
+<span class="sourceLineNo">159</span>         m.put(key, new String[]{val});<a name="line.159"></a>
+<span class="sourceLineNo">160</span>      }<a name="line.160"></a>
+<span class="sourceLineNo">161</span>   }<a name="line.161"></a>
+<span class="sourceLineNo">162</span><a name="line.162"></a>
+<span class="sourceLineNo">163</span>   @Override /* PartParser */<a name="line.163"></a>
+<span class="sourceLineNo">164</span>   public &lt;T&gt; T parse(PartType partType, String in, ClassMeta&lt;T&gt; type) throws ParseException {<a name="line.164"></a>
+<span class="sourceLineNo">165</span>      if (in == null)<a name="line.165"></a>
+<span class="sourceLineNo">166</span>         return null;<a name="line.166"></a>
+<span class="sourceLineNo">167</span>      if (type.isString() &amp;&amp; in.length() &gt; 0) {<a name="line.167"></a>
+<span class="sourceLineNo">168</span>         // Shortcut - If we're returning a string and the value doesn't start with "'" or is "null", then<a name="line.168"></a>
+<span class="sourceLineNo">169</span>         // just return the string since it's a plain value.<a name="line.169"></a>
+<span class="sourceLineNo">170</span>         // This allows us to bypass the creation of a UonParserSession object.<a name="line.170"></a>
+<span class="sourceLineNo">171</span>         char x = firstNonWhitespaceChar(in);<a name="line.171"></a>
+<span class="sourceLineNo">172</span>         if (x != '\'' &amp;&amp; x != 'n' &amp;&amp; in.indexOf('~') == -1)<a name="line.172"></a>
+<span class="sourceLineNo">173</span>            return (T)in;<a name="line.173"></a>
+<span class="sourceLineNo">174</span>         if (x == 'n' &amp;&amp; "null".equals(in))<a name="line.174"></a>
+<span class="sourceLineNo">175</span>            return null;<a name="line.175"></a>
+<span class="sourceLineNo">176</span>      }<a name="line.176"></a>
+<span class="sourceLineNo">177</span>      UonParserSession session = createParameterSession();<a name="line.177"></a>
+<span class="sourceLineNo">178</span>      ParserPipe pipe = session.createPipe(in);<a name="line.178"></a>
+<span class="sourceLineNo">179</span>      try {<a name="line.179"></a>
+<span class="sourceLineNo">180</span>         UonReader r = session.getUonReader(pipe, false);<a name="line.180"></a>
+<span class="sourceLineNo">181</span>         return session.parseAnything(type, r, null, true, null);<a name="line.181"></a>
+<span class="sourceLineNo">182</span>      } catch (ParseException e) {<a name="line.182"></a>
+<span class="sourceLineNo">183</span>         throw e;<a name="line.183"></a>
+<span class="sourceLineNo">184</span>      } catch (Exception e) {<a name="line.184"></a>
+<span class="sourceLineNo">185</span>         throw new ParseException(session.getLastLocation(), e);<a name="line.185"></a>
+<span class="sourceLineNo">186</span>      } finally {<a name="line.186"></a>
+<span class="sourceLineNo">187</span>         pipe.close();<a name="line.187"></a>
+<span class="sourceLineNo">188</span>         session.close();<a name="line.188"></a>
+<span class="sourceLineNo">189</span>      }<a name="line.189"></a>
+<span class="sourceLineNo">190</span>   }<a name="line.190"></a>
+<span class="sourceLineNo">191</span><a name="line.191"></a>
+<span class="sourceLineNo">192</span><a name="line.192"></a>
+<span class="sourceLineNo">193</span>   //--------------------------------------------------------------------------------<a name="line.193"></a>
+<span class="sourceLineNo">194</span>   // Entry point methods<a name="line.194"></a>
 <span class="sourceLineNo">195</span>   //--------------------------------------------------------------------------------<a name="line.195"></a>
-<span class="sourceLineNo">196</span>   // Entry point methods<a name="line.196"></a>
-<span class="sourceLineNo">197</span>   //--------------------------------------------------------------------------------<a name="line.197"></a>
-<span class="sourceLineNo">198</span><a name="line.198"></a>
-<span class="sourceLineNo">199</span>   @Override /* Parser */<a name="line.199"></a>
-<span class="sourceLineNo">200</span>   public UrlEncodingParserSession createSession(ParserSessionArgs args) {<a name="line.200"></a>
-<span class="sourceLineNo">201</span>      return new UrlEncodingParserSession(ctx, args);<a name="line.201"></a>
-<span class="sourceLineNo">202</span>   }<a name="line.202"></a>
-<span class="sourceLineNo">203</span>}<a name="line.203"></a>
+<span class="sourceLineNo">196</span><a name="line.196"></a>
+<span class="sourceLineNo">197</span>   @Override /* Parser */<a name="line.197"></a>
+<span class="sourceLineNo">198</span>   public UrlEncodingParserSession createSession(ParserSessionArgs args) {<a name="line.198"></a>
+<span class="sourceLineNo">199</span>      return new UrlEncodingParserSession(ctx, args);<a name="line.199"></a>
+<span class="sourceLineNo">200</span>   }<a name="line.200"></a>
+<span class="sourceLineNo">201</span>}<a name="line.201"></a>
 
 
 


[14/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/uon/UonSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/uon/UonSerializer.html b/content/site/apidocs/src-html/org/apache/juneau/uon/UonSerializer.html
index 910d09f..6fd7178 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/uon/UonSerializer.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/uon/UonSerializer.html
@@ -24,186 +24,210 @@
 <span class="sourceLineNo">016</span>import static org.apache.juneau.uon.UonSerializerContext.*;<a name="line.16"></a>
 <span class="sourceLineNo">017</span><a name="line.17"></a>
 <span class="sourceLineNo">018</span>import org.apache.juneau.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.annotation.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span><a name="line.21"></a>
-<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * Serializes POJO models to UON (a notation for URL-encoded query parameter values).<a name="line.23"></a>
-<span class="sourceLineNo">024</span> *<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.25"></a>
-<span class="sourceLineNo">026</span> *<a name="line.26"></a>
-<span class="sourceLineNo">027</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/uon&lt;/code&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> *<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * &lt;p&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/uon&lt;/code&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> *<a name="line.31"></a>
-<span class="sourceLineNo">032</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.32"></a>
-<span class="sourceLineNo">033</span> *<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * This serializer provides several serialization options.<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.35"></a>
-<span class="sourceLineNo">036</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *<a name="line.37"></a>
-<span class="sourceLineNo">038</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *<a name="line.39"></a>
-<span class="sourceLineNo">040</span> * This class has the following properties associated with it:<a name="line.40"></a>
-<span class="sourceLineNo">041</span> * &lt;ul&gt;<a name="line.41"></a>
-<span class="sourceLineNo">042</span> *    &lt;li&gt;{@link UonSerializerContext}<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *    &lt;li&gt;{@link BeanContext}<a name="line.43"></a>
-<span class="sourceLineNo">044</span> * &lt;/ul&gt;<a name="line.44"></a>
-<span class="sourceLineNo">045</span> *<a name="line.45"></a>
-<span class="sourceLineNo">046</span> * &lt;p&gt;<a name="line.46"></a>
-<span class="sourceLineNo">047</span> * The following shows a sample object defined in Javascript:<a name="line.47"></a>
-<span class="sourceLineNo">048</span> * &lt;p class='bcode'&gt;<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *    {<a name="line.49"></a>
-<span class="sourceLineNo">050</span> *       id: 1,<a name="line.50"></a>
-<span class="sourceLineNo">051</span> *       name: &lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.51"></a>
-<span class="sourceLineNo">052</span> *       uri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.52"></a>
-<span class="sourceLineNo">053</span> *       addressBookUri: &lt;js&gt;'http://sample/addressBook'&lt;/js&gt;,<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *       birthDate: &lt;js&gt;'1946-08-12T00:00:00Z'&lt;/js&gt;,<a name="line.54"></a>
-<span class="sourceLineNo">055</span> *       otherIds: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.55"></a>
-<span class="sourceLineNo">056</span> *       addresses: [<a name="line.56"></a>
-<span class="sourceLineNo">057</span> *          {<a name="line.57"></a>
-<span class="sourceLineNo">058</span> *             uri: &lt;js&gt;'http://sample/addressBook/address/1'&lt;/js&gt;,<a name="line.58"></a>
-<span class="sourceLineNo">059</span> *             personUri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.59"></a>
-<span class="sourceLineNo">060</span> *             id: 1,<a name="line.60"></a>
-<span class="sourceLineNo">061</span> *             street: &lt;js&gt;'100 Main Street'&lt;/js&gt;,<a name="line.61"></a>
-<span class="sourceLineNo">062</span> *             city: &lt;js&gt;'Anywhereville'&lt;/js&gt;,<a name="line.62"></a>
-<span class="sourceLineNo">063</span> *             state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.63"></a>
-<span class="sourceLineNo">064</span> *             zip: 12345,<a name="line.64"></a>
-<span class="sourceLineNo">065</span> *             isCurrent: &lt;jk&gt;true&lt;/jk&gt;,<a name="line.65"></a>
-<span class="sourceLineNo">066</span> *          }<a name="line.66"></a>
-<span class="sourceLineNo">067</span> *       ]<a name="line.67"></a>
-<span class="sourceLineNo">068</span> *    }<a name="line.68"></a>
-<span class="sourceLineNo">069</span> * &lt;/p&gt;<a name="line.69"></a>
-<span class="sourceLineNo">070</span> *<a name="line.70"></a>
-<span class="sourceLineNo">071</span> * &lt;p&gt;<a name="line.71"></a>
-<span class="sourceLineNo">072</span> * Using the "strict" syntax defined in this document, the equivalent UON notation would be as follows:<a name="line.72"></a>
-<span class="sourceLineNo">073</span> * &lt;p class='bcode'&gt;<a name="line.73"></a>
-<span class="sourceLineNo">074</span> *    (<a name="line.74"></a>
-<span class="sourceLineNo">075</span> *       &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;,<a name="line.75"></a>
-<span class="sourceLineNo">076</span> *       &lt;ua&gt;name&lt;/ua&gt;=&lt;us&gt;'John+Smith'&lt;/us&gt;,<a name="line.76"></a>
-<span class="sourceLineNo">077</span> *       &lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.77"></a>
-<span class="sourceLineNo">078</span> *       &lt;ua&gt;addressBookUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook&lt;/us&gt;,<a name="line.78"></a>
-<span class="sourceLineNo">079</span> *       &lt;ua&gt;birthDate&lt;/ua&gt;=&lt;us&gt;1946-08-12T00:00:00Z&lt;/us&gt;,<a name="line.79"></a>
-<span class="sourceLineNo">080</span> *       &lt;ua&gt;otherIds&lt;/ua&gt;=&lt;uk&gt;null&lt;/uk&gt;,<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *       &lt;ua&gt;addresses&lt;/ua&gt;=@(<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *          (<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *             &lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/address/1&lt;/us&gt;,<a name="line.83"></a>
-<span class="sourceLineNo">084</span> *             &lt;ua&gt;personUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *             &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;,<a name="line.85"></a>
-<span class="sourceLineNo">086</span> *             &lt;ua&gt;street&lt;/ua&gt;=&lt;us&gt;'100+Main+Street'&lt;/us&gt;,<a name="line.86"></a>
-<span class="sourceLineNo">087</span> *             &lt;ua&gt;city&lt;/ua&gt;=&lt;us&gt;Anywhereville&lt;/us&gt;,<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *             &lt;ua&gt;state&lt;/ua&gt;=&lt;us&gt;NY&lt;/us&gt;,<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *             &lt;ua&gt;zip&lt;/ua&gt;=&lt;un&gt;12345&lt;/un&gt;,<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *             &lt;ua&gt;isCurrent&lt;/ua&gt;=&lt;uk&gt;true&lt;/uk&gt;<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *          )<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *       )<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *    )<a name="line.93"></a>
-<span class="sourceLineNo">094</span> * &lt;/p&gt;<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *<a name="line.95"></a>
-<span class="sourceLineNo">096</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.96"></a>
-<span class="sourceLineNo">097</span> * &lt;p class='bcode'&gt;<a name="line.97"></a>
-<span class="sourceLineNo">098</span> *    &lt;jc&gt;// Serialize a Map&lt;/jc&gt;<a name="line.98"></a>
-<span class="sourceLineNo">099</span> *    Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{a:'b',c:1,d:false,e:['f',1,false],g:{h:'i'}}"&lt;/js&gt;);<a name="line.99"></a>
-<span class="sourceLineNo">100</span> *<a name="line.100"></a>
-<span class="sourceLineNo">101</span> *    &lt;jc&gt;// Serialize to value equivalent to JSON.&lt;/jc&gt;<a name="line.101"></a>
-<span class="sourceLineNo">102</span> *    &lt;jc&gt;// Produces "(a=b,c=1,d=false,e=@(f,1,false),g=(h=i))"&lt;/jc&gt;<a name="line.102"></a>
-<span class="sourceLineNo">103</span> *    String s = UonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.103"></a>
-<span class="sourceLineNo">104</span> *<a name="line.104"></a>
-<span class="sourceLineNo">105</span> *    &lt;jc&gt;// Serialize a bean&lt;/jc&gt;<a name="line.105"></a>
-<span class="sourceLineNo">106</span> *    &lt;jk&gt;public class&lt;/jk&gt; Person {<a name="line.106"></a>
-<span class="sourceLineNo">107</span> *       &lt;jk&gt;public&lt;/jk&gt; Person(String s);<a name="line.107"></a>
-<span class="sourceLineNo">108</span> *       &lt;jk&gt;public&lt;/jk&gt; String getName();<a name="line.108"></a>
-<span class="sourceLineNo">109</span> *       &lt;jk&gt;public int&lt;/jk&gt; getAge();<a name="line.109"></a>
-<span class="sourceLineNo">110</span> *       &lt;jk&gt;public&lt;/jk&gt; Address getAddress();<a name="line.110"></a>
-<span class="sourceLineNo">111</span> *       &lt;jk&gt;public boolean&lt;/jk&gt; deceased;<a name="line.111"></a>
-<span class="sourceLineNo">112</span> *    }<a name="line.112"></a>
-<span class="sourceLineNo">113</span> *<a name="line.113"></a>
-<span class="sourceLineNo">114</span> *    &lt;jk&gt;public class&lt;/jk&gt; Address {<a name="line.114"></a>
-<span class="sourceLineNo">115</span> *       &lt;jk&gt;public&lt;/jk&gt; String getStreet();<a name="line.115"></a>
-<span class="sourceLineNo">116</span> *       &lt;jk&gt;public&lt;/jk&gt; String getCity();<a name="line.116"></a>
-<span class="sourceLineNo">117</span> *       &lt;jk&gt;public&lt;/jk&gt; String getState();<a name="line.117"></a>
-<span class="sourceLineNo">118</span> *       &lt;jk&gt;public int&lt;/jk&gt; getZip();<a name="line.118"></a>
-<span class="sourceLineNo">119</span> *    }<a name="line.119"></a>
-<span class="sourceLineNo">120</span> *<a name="line.120"></a>
-<span class="sourceLineNo">121</span> *    Person p = &lt;jk&gt;new&lt;/jk&gt; Person(&lt;js&gt;"John Doe"&lt;/js&gt;, 23, &lt;js&gt;"123 Main St"&lt;/js&gt;, &lt;js&gt;"Anywhere"&lt;/js&gt;,<a name="line.121"></a>
-<span class="sourceLineNo">122</span> *       &lt;js&gt;"NY"&lt;/js&gt;, 12345, &lt;jk&gt;false&lt;/jk&gt;);<a name="line.122"></a>
-<span class="sourceLineNo">123</span> *<a name="line.123"></a>
-<span class="sourceLineNo">124</span> *    &lt;jc&gt;// Produces "(name='John Doe',age=23,address=(street='123 Main St',city=Anywhere,state=NY,zip=12345),deceased=false)"&lt;/jc&gt;<a name="line.124"></a>
-<span class="sourceLineNo">125</span> *    String s = UonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.125"></a>
-<span class="sourceLineNo">126</span> * &lt;/p&gt;<a name="line.126"></a>
-<span class="sourceLineNo">127</span> */<a name="line.127"></a>
-<span class="sourceLineNo">128</span>@Produces("text/uon")<a name="line.128"></a>
-<span class="sourceLineNo">129</span>public class UonSerializer extends WriterSerializer {<a name="line.129"></a>
-<span class="sourceLineNo">130</span><a name="line.130"></a>
-<span class="sourceLineNo">131</span>   /** Reusable instance of {@link UonSerializer}, all default settings. */<a name="line.131"></a>
-<span class="sourceLineNo">132</span>   public static final UonSerializer DEFAULT = new UonSerializer(PropertyStore.create());<a name="line.132"></a>
-<span class="sourceLineNo">133</span><a name="line.133"></a>
-<span class="sourceLineNo">134</span>   /** Reusable instance of {@link UonSerializer.Readable}. */<a name="line.134"></a>
-<span class="sourceLineNo">135</span>   public static final UonSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.135"></a>
-<span class="sourceLineNo">136</span><a name="line.136"></a>
-<span class="sourceLineNo">137</span>   /** Reusable instance of {@link UonSerializer.Encoding}. */<a name="line.137"></a>
-<span class="sourceLineNo">138</span>   public static final UonSerializer DEFAULT_ENCODING = new Encoding(PropertyStore.create());<a name="line.138"></a>
-<span class="sourceLineNo">139</span><a name="line.139"></a>
-<span class="sourceLineNo">140</span>   /**<a name="line.140"></a>
-<span class="sourceLineNo">141</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UonSerializerBuilder().ws().build();&lt;/code&gt;.<a name="line.141"></a>
-<span class="sourceLineNo">142</span>    */<a name="line.142"></a>
-<span class="sourceLineNo">143</span>   public static class Readable extends UonSerializer {<a name="line.143"></a>
-<span class="sourceLineNo">144</span><a name="line.144"></a>
-<span class="sourceLineNo">145</span>      /**<a name="line.145"></a>
-<span class="sourceLineNo">146</span>       * Constructor.<a name="line.146"></a>
-<span class="sourceLineNo">147</span>       *<a name="line.147"></a>
-<span class="sourceLineNo">148</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.148"></a>
-<span class="sourceLineNo">149</span>       */<a name="line.149"></a>
-<span class="sourceLineNo">150</span>      public Readable(PropertyStore propertyStore) {<a name="line.150"></a>
-<span class="sourceLineNo">151</span>         super(propertyStore.copy().append(SERIALIZER_useWhitespace, true));<a name="line.151"></a>
-<span class="sourceLineNo">152</span>      }<a name="line.152"></a>
-<span class="sourceLineNo">153</span>   }<a name="line.153"></a>
-<span class="sourceLineNo">154</span><a name="line.154"></a>
-<span class="sourceLineNo">155</span>   /**<a name="line.155"></a>
-<span class="sourceLineNo">156</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UonSerializerBuilder().encoding().build();&lt;/code&gt;.<a name="line.156"></a>
-<span class="sourceLineNo">157</span>    */<a name="line.157"></a>
-<span class="sourceLineNo">158</span>   public static class Encoding extends UonSerializer {<a name="line.158"></a>
-<span class="sourceLineNo">159</span><a name="line.159"></a>
-<span class="sourceLineNo">160</span>      /**<a name="line.160"></a>
-<span class="sourceLineNo">161</span>       * Constructor.<a name="line.161"></a>
-<span class="sourceLineNo">162</span>       *<a name="line.162"></a>
-<span class="sourceLineNo">163</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.163"></a>
-<span class="sourceLineNo">164</span>       */<a name="line.164"></a>
-<span class="sourceLineNo">165</span>      public Encoding(PropertyStore propertyStore) {<a name="line.165"></a>
-<span class="sourceLineNo">166</span>         super(propertyStore.copy().append(UON_encodeChars, true));<a name="line.166"></a>
-<span class="sourceLineNo">167</span>      }<a name="line.167"></a>
-<span class="sourceLineNo">168</span>   }<a name="line.168"></a>
-<span class="sourceLineNo">169</span><a name="line.169"></a>
+<span class="sourceLineNo">019</span>import org.apache.juneau.serializer.*;<a name="line.19"></a>
+<span class="sourceLineNo">020</span><a name="line.20"></a>
+<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
+<span class="sourceLineNo">022</span> * Serializes POJO models to UON (a notation for URL-encoded query parameter values).<a name="line.22"></a>
+<span class="sourceLineNo">023</span> *<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.24"></a>
+<span class="sourceLineNo">025</span> *<a name="line.25"></a>
+<span class="sourceLineNo">026</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/uon&lt;/code&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> *<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * &lt;p&gt;<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/uon&lt;/code&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> *<a name="line.30"></a>
+<span class="sourceLineNo">031</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.31"></a>
+<span class="sourceLineNo">032</span> *<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * This serializer provides several serialization options.<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *<a name="line.36"></a>
+<span class="sourceLineNo">037</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.37"></a>
+<span class="sourceLineNo">038</span> *<a name="line.38"></a>
+<span class="sourceLineNo">039</span> * This class has the following properties associated with it:<a name="line.39"></a>
+<span class="sourceLineNo">040</span> * &lt;ul&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span> *    &lt;li&gt;{@link UonSerializerContext}<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *    &lt;li&gt;{@link BeanContext}<a name="line.42"></a>
+<span class="sourceLineNo">043</span> * &lt;/ul&gt;<a name="line.43"></a>
+<span class="sourceLineNo">044</span> *<a name="line.44"></a>
+<span class="sourceLineNo">045</span> * &lt;p&gt;<a name="line.45"></a>
+<span class="sourceLineNo">046</span> * The following shows a sample object defined in Javascript:<a name="line.46"></a>
+<span class="sourceLineNo">047</span> * &lt;p class='bcode'&gt;<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *    {<a name="line.48"></a>
+<span class="sourceLineNo">049</span> *       id: 1,<a name="line.49"></a>
+<span class="sourceLineNo">050</span> *       name: &lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.50"></a>
+<span class="sourceLineNo">051</span> *       uri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.51"></a>
+<span class="sourceLineNo">052</span> *       addressBookUri: &lt;js&gt;'http://sample/addressBook'&lt;/js&gt;,<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *       birthDate: &lt;js&gt;'1946-08-12T00:00:00Z'&lt;/js&gt;,<a name="line.53"></a>
+<span class="sourceLineNo">054</span> *       otherIds: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.54"></a>
+<span class="sourceLineNo">055</span> *       addresses: [<a name="line.55"></a>
+<span class="sourceLineNo">056</span> *          {<a name="line.56"></a>
+<span class="sourceLineNo">057</span> *             uri: &lt;js&gt;'http://sample/addressBook/address/1'&lt;/js&gt;,<a name="line.57"></a>
+<span class="sourceLineNo">058</span> *             personUri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.58"></a>
+<span class="sourceLineNo">059</span> *             id: 1,<a name="line.59"></a>
+<span class="sourceLineNo">060</span> *             street: &lt;js&gt;'100 Main Street'&lt;/js&gt;,<a name="line.60"></a>
+<span class="sourceLineNo">061</span> *             city: &lt;js&gt;'Anywhereville'&lt;/js&gt;,<a name="line.61"></a>
+<span class="sourceLineNo">062</span> *             state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.62"></a>
+<span class="sourceLineNo">063</span> *             zip: 12345,<a name="line.63"></a>
+<span class="sourceLineNo">064</span> *             isCurrent: &lt;jk&gt;true&lt;/jk&gt;,<a name="line.64"></a>
+<span class="sourceLineNo">065</span> *          }<a name="line.65"></a>
+<span class="sourceLineNo">066</span> *       ]<a name="line.66"></a>
+<span class="sourceLineNo">067</span> *    }<a name="line.67"></a>
+<span class="sourceLineNo">068</span> * &lt;/p&gt;<a name="line.68"></a>
+<span class="sourceLineNo">069</span> *<a name="line.69"></a>
+<span class="sourceLineNo">070</span> * &lt;p&gt;<a name="line.70"></a>
+<span class="sourceLineNo">071</span> * Using the "strict" syntax defined in this document, the equivalent UON notation would be as follows:<a name="line.71"></a>
+<span class="sourceLineNo">072</span> * &lt;p class='bcode'&gt;<a name="line.72"></a>
+<span class="sourceLineNo">073</span> *    (<a name="line.73"></a>
+<span class="sourceLineNo">074</span> *       &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;,<a name="line.74"></a>
+<span class="sourceLineNo">075</span> *       &lt;ua&gt;name&lt;/ua&gt;=&lt;us&gt;'John+Smith'&lt;/us&gt;,<a name="line.75"></a>
+<span class="sourceLineNo">076</span> *       &lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.76"></a>
+<span class="sourceLineNo">077</span> *       &lt;ua&gt;addressBookUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook&lt;/us&gt;,<a name="line.77"></a>
+<span class="sourceLineNo">078</span> *       &lt;ua&gt;birthDate&lt;/ua&gt;=&lt;us&gt;1946-08-12T00:00:00Z&lt;/us&gt;,<a name="line.78"></a>
+<span class="sourceLineNo">079</span> *       &lt;ua&gt;otherIds&lt;/ua&gt;=&lt;uk&gt;null&lt;/uk&gt;,<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *       &lt;ua&gt;addresses&lt;/ua&gt;=@(<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *          (<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *             &lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/address/1&lt;/us&gt;,<a name="line.82"></a>
+<span class="sourceLineNo">083</span> *             &lt;ua&gt;personUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *             &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;,<a name="line.84"></a>
+<span class="sourceLineNo">085</span> *             &lt;ua&gt;street&lt;/ua&gt;=&lt;us&gt;'100+Main+Street'&lt;/us&gt;,<a name="line.85"></a>
+<span class="sourceLineNo">086</span> *             &lt;ua&gt;city&lt;/ua&gt;=&lt;us&gt;Anywhereville&lt;/us&gt;,<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *             &lt;ua&gt;state&lt;/ua&gt;=&lt;us&gt;NY&lt;/us&gt;,<a name="line.87"></a>
+<span class="sourceLineNo">088</span> *             &lt;ua&gt;zip&lt;/ua&gt;=&lt;un&gt;12345&lt;/un&gt;,<a name="line.88"></a>
+<span class="sourceLineNo">089</span> *             &lt;ua&gt;isCurrent&lt;/ua&gt;=&lt;uk&gt;true&lt;/uk&gt;<a name="line.89"></a>
+<span class="sourceLineNo">090</span> *          )<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *       )<a name="line.91"></a>
+<span class="sourceLineNo">092</span> *    )<a name="line.92"></a>
+<span class="sourceLineNo">093</span> * &lt;/p&gt;<a name="line.93"></a>
+<span class="sourceLineNo">094</span> *<a name="line.94"></a>
+<span class="sourceLineNo">095</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.95"></a>
+<span class="sourceLineNo">096</span> * &lt;p class='bcode'&gt;<a name="line.96"></a>
+<span class="sourceLineNo">097</span> *    &lt;jc&gt;// Serialize a Map&lt;/jc&gt;<a name="line.97"></a>
+<span class="sourceLineNo">098</span> *    Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{a:'b',c:1,d:false,e:['f',1,false],g:{h:'i'}}"&lt;/js&gt;);<a name="line.98"></a>
+<span class="sourceLineNo">099</span> *<a name="line.99"></a>
+<span class="sourceLineNo">100</span> *    &lt;jc&gt;// Serialize to value equivalent to JSON.&lt;/jc&gt;<a name="line.100"></a>
+<span class="sourceLineNo">101</span> *    &lt;jc&gt;// Produces "(a=b,c=1,d=false,e=@(f,1,false),g=(h=i))"&lt;/jc&gt;<a name="line.101"></a>
+<span class="sourceLineNo">102</span> *    String s = UonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.102"></a>
+<span class="sourceLineNo">103</span> *<a name="line.103"></a>
+<span class="sourceLineNo">104</span> *    &lt;jc&gt;// Serialize a bean&lt;/jc&gt;<a name="line.104"></a>
+<span class="sourceLineNo">105</span> *    &lt;jk&gt;public class&lt;/jk&gt; Person {<a name="line.105"></a>
+<span class="sourceLineNo">106</span> *       &lt;jk&gt;public&lt;/jk&gt; Person(String s);<a name="line.106"></a>
+<span class="sourceLineNo">107</span> *       &lt;jk&gt;public&lt;/jk&gt; String getName();<a name="line.107"></a>
+<span class="sourceLineNo">108</span> *       &lt;jk&gt;public int&lt;/jk&gt; getAge();<a name="line.108"></a>
+<span class="sourceLineNo">109</span> *       &lt;jk&gt;public&lt;/jk&gt; Address getAddress();<a name="line.109"></a>
+<span class="sourceLineNo">110</span> *       &lt;jk&gt;public boolean&lt;/jk&gt; deceased;<a name="line.110"></a>
+<span class="sourceLineNo">111</span> *    }<a name="line.111"></a>
+<span class="sourceLineNo">112</span> *<a name="line.112"></a>
+<span class="sourceLineNo">113</span> *    &lt;jk&gt;public class&lt;/jk&gt; Address {<a name="line.113"></a>
+<span class="sourceLineNo">114</span> *       &lt;jk&gt;public&lt;/jk&gt; String getStreet();<a name="line.114"></a>
+<span class="sourceLineNo">115</span> *       &lt;jk&gt;public&lt;/jk&gt; String getCity();<a name="line.115"></a>
+<span class="sourceLineNo">116</span> *       &lt;jk&gt;public&lt;/jk&gt; String getState();<a name="line.116"></a>
+<span class="sourceLineNo">117</span> *       &lt;jk&gt;public int&lt;/jk&gt; getZip();<a name="line.117"></a>
+<span class="sourceLineNo">118</span> *    }<a name="line.118"></a>
+<span class="sourceLineNo">119</span> *<a name="line.119"></a>
+<span class="sourceLineNo">120</span> *    Person p = &lt;jk&gt;new&lt;/jk&gt; Person(&lt;js&gt;"John Doe"&lt;/js&gt;, 23, &lt;js&gt;"123 Main St"&lt;/js&gt;, &lt;js&gt;"Anywhere"&lt;/js&gt;,<a name="line.120"></a>
+<span class="sourceLineNo">121</span> *       &lt;js&gt;"NY"&lt;/js&gt;, 12345, &lt;jk&gt;false&lt;/jk&gt;);<a name="line.121"></a>
+<span class="sourceLineNo">122</span> *<a name="line.122"></a>
+<span class="sourceLineNo">123</span> *    &lt;jc&gt;// Produces "(name='John Doe',age=23,address=(street='123 Main St',city=Anywhere,state=NY,zip=12345),deceased=false)"&lt;/jc&gt;<a name="line.123"></a>
+<span class="sourceLineNo">124</span> *    String s = UonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.124"></a>
+<span class="sourceLineNo">125</span> * &lt;/p&gt;<a name="line.125"></a>
+<span class="sourceLineNo">126</span> */<a name="line.126"></a>
+<span class="sourceLineNo">127</span>public class UonSerializer extends WriterSerializer {<a name="line.127"></a>
+<span class="sourceLineNo">128</span><a name="line.128"></a>
+<span class="sourceLineNo">129</span>   /** Reusable instance of {@link UonSerializer}, all default settings. */<a name="line.129"></a>
+<span class="sourceLineNo">130</span>   public static final UonSerializer DEFAULT = new UonSerializer(PropertyStore.create());<a name="line.130"></a>
+<span class="sourceLineNo">131</span><a name="line.131"></a>
+<span class="sourceLineNo">132</span>   /** Reusable instance of {@link UonSerializer.Readable}. */<a name="line.132"></a>
+<span class="sourceLineNo">133</span>   public static final UonSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.133"></a>
+<span class="sourceLineNo">134</span><a name="line.134"></a>
+<span class="sourceLineNo">135</span>   /** Reusable instance of {@link UonSerializer.Encoding}. */<a name="line.135"></a>
+<span class="sourceLineNo">136</span>   public static final UonSerializer DEFAULT_ENCODING = new Encoding(PropertyStore.create());<a name="line.136"></a>
+<span class="sourceLineNo">137</span><a name="line.137"></a>
+<span class="sourceLineNo">138</span>   /**<a name="line.138"></a>
+<span class="sourceLineNo">139</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UonSerializerBuilder().ws().build();&lt;/code&gt;.<a name="line.139"></a>
+<span class="sourceLineNo">140</span>    */<a name="line.140"></a>
+<span class="sourceLineNo">141</span>   public static class Readable extends UonSerializer {<a name="line.141"></a>
+<span class="sourceLineNo">142</span><a name="line.142"></a>
+<span class="sourceLineNo">143</span>      /**<a name="line.143"></a>
+<span class="sourceLineNo">144</span>       * Constructor.<a name="line.144"></a>
+<span class="sourceLineNo">145</span>       *<a name="line.145"></a>
+<span class="sourceLineNo">146</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.146"></a>
+<span class="sourceLineNo">147</span>       */<a name="line.147"></a>
+<span class="sourceLineNo">148</span>      public Readable(PropertyStore propertyStore) {<a name="line.148"></a>
+<span class="sourceLineNo">149</span>         super(propertyStore.copy().append(SERIALIZER_useWhitespace, true));<a name="line.149"></a>
+<span class="sourceLineNo">150</span>      }<a name="line.150"></a>
+<span class="sourceLineNo">151</span>   }<a name="line.151"></a>
+<span class="sourceLineNo">152</span><a name="line.152"></a>
+<span class="sourceLineNo">153</span>   /**<a name="line.153"></a>
+<span class="sourceLineNo">154</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UonSerializerBuilder().encoding().build();&lt;/code&gt;.<a name="line.154"></a>
+<span class="sourceLineNo">155</span>    */<a name="line.155"></a>
+<span class="sourceLineNo">156</span>   public static class Encoding extends UonSerializer {<a name="line.156"></a>
+<span class="sourceLineNo">157</span><a name="line.157"></a>
+<span class="sourceLineNo">158</span>      /**<a name="line.158"></a>
+<span class="sourceLineNo">159</span>       * Constructor.<a name="line.159"></a>
+<span class="sourceLineNo">160</span>       *<a name="line.160"></a>
+<span class="sourceLineNo">161</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.161"></a>
+<span class="sourceLineNo">162</span>       */<a name="line.162"></a>
+<span class="sourceLineNo">163</span>      public Encoding(PropertyStore propertyStore) {<a name="line.163"></a>
+<span class="sourceLineNo">164</span>         super(propertyStore.copy().append(UON_encodeChars, true));<a name="line.164"></a>
+<span class="sourceLineNo">165</span>      }<a name="line.165"></a>
+<span class="sourceLineNo">166</span>   }<a name="line.166"></a>
+<span class="sourceLineNo">167</span><a name="line.167"></a>
+<span class="sourceLineNo">168</span><a name="line.168"></a>
+<span class="sourceLineNo">169</span>   private final UonSerializerContext ctx;<a name="line.169"></a>
 <span class="sourceLineNo">170</span><a name="line.170"></a>
-<span class="sourceLineNo">171</span>   private final UonSerializerContext ctx;<a name="line.171"></a>
-<span class="sourceLineNo">172</span><a name="line.172"></a>
-<span class="sourceLineNo">173</span>   /**<a name="line.173"></a>
-<span class="sourceLineNo">174</span>    * Constructor.<a name="line.174"></a>
-<span class="sourceLineNo">175</span>    *<a name="line.175"></a>
-<span class="sourceLineNo">176</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.176"></a>
-<span class="sourceLineNo">177</span>    */<a name="line.177"></a>
-<span class="sourceLineNo">178</span>   public UonSerializer(PropertyStore propertyStore) {<a name="line.178"></a>
-<span class="sourceLineNo">179</span>      super(propertyStore);<a name="line.179"></a>
-<span class="sourceLineNo">180</span>      this.ctx = createContext(UonSerializerContext.class);<a name="line.180"></a>
-<span class="sourceLineNo">181</span>   }<a name="line.181"></a>
-<span class="sourceLineNo">182</span><a name="line.182"></a>
-<span class="sourceLineNo">183</span>   @Override /* CoreObject */<a name="line.183"></a>
-<span class="sourceLineNo">184</span>   public UonSerializerBuilder builder() {<a name="line.184"></a>
-<span class="sourceLineNo">185</span>      return new UonSerializerBuilder(propertyStore);<a name="line.185"></a>
-<span class="sourceLineNo">186</span>   }<a name="line.186"></a>
-<span class="sourceLineNo">187</span><a name="line.187"></a>
-<span class="sourceLineNo">188</span><a name="line.188"></a>
-<span class="sourceLineNo">189</span><a name="line.189"></a>
-<span class="sourceLineNo">190</span>   //--------------------------------------------------------------------------------<a name="line.190"></a>
-<span class="sourceLineNo">191</span>   // Entry point methods<a name="line.191"></a>
-<span class="sourceLineNo">192</span>   //--------------------------------------------------------------------------------<a name="line.192"></a>
-<span class="sourceLineNo">193</span><a name="line.193"></a>
-<span class="sourceLineNo">194</span>   @Override /* Serializer */<a name="line.194"></a>
-<span class="sourceLineNo">195</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.195"></a>
-<span class="sourceLineNo">196</span>      return new UonSerializerSession(ctx, null, args);<a name="line.196"></a>
-<span class="sourceLineNo">197</span>   }<a name="line.197"></a>
-<span class="sourceLineNo">198</span>}<a name="line.198"></a>
+<span class="sourceLineNo">171</span>   /**<a name="line.171"></a>
+<span class="sourceLineNo">172</span>    * Constructor.<a name="line.172"></a>
+<span class="sourceLineNo">173</span>    *<a name="line.173"></a>
+<span class="sourceLineNo">174</span>    * @param propertyStore<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    *    The property store containing all the settings for this object.<a name="line.175"></a>
+<span class="sourceLineNo">176</span>    */<a name="line.176"></a>
+<span class="sourceLineNo">177</span>   public UonSerializer(PropertyStore propertyStore) {<a name="line.177"></a>
+<span class="sourceLineNo">178</span>      this(propertyStore, "text/uon");<a name="line.178"></a>
+<span class="sourceLineNo">179</span>   }<a name="line.179"></a>
+<span class="sourceLineNo">180</span><a name="line.180"></a>
+<span class="sourceLineNo">181</span>   /**<a name="line.181"></a>
+<span class="sourceLineNo">182</span>    * Constructor.<a name="line.182"></a>
+<span class="sourceLineNo">183</span>    *<a name="line.183"></a>
+<span class="sourceLineNo">184</span>    * @param propertyStore<a name="line.184"></a>
+<span class="sourceLineNo">185</span>    *    The property store containing all the settings for this object.<a name="line.185"></a>
+<span class="sourceLineNo">186</span>    * @param produces<a name="line.186"></a>
+<span class="sourceLineNo">187</span>    *    The media type that this serializer produces.<a name="line.187"></a>
+<span class="sourceLineNo">188</span>    * @param accept<a name="line.188"></a>
+<span class="sourceLineNo">189</span>    *    The accept media types that the serializer can handle.<a name="line.189"></a>
+<span class="sourceLineNo">190</span>    *    &lt;p&gt;<a name="line.190"></a>
+<span class="sourceLineNo">191</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.191"></a>
+<span class="sourceLineNo">192</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.192"></a>
+<span class="sourceLineNo">193</span>    *    &lt;p&gt;<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    *    &lt;p&gt;<a name="line.195"></a>
+<span class="sourceLineNo">196</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.196"></a>
+<span class="sourceLineNo">197</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.197"></a>
+<span class="sourceLineNo">198</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.198"></a>
+<span class="sourceLineNo">199</span>    *    &lt;br&gt;...or...<a name="line.199"></a>
+<span class="sourceLineNo">200</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    */<a name="line.201"></a>
+<span class="sourceLineNo">202</span>   public UonSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.202"></a>
+<span class="sourceLineNo">203</span>      super(propertyStore, produces, accept);<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      this.ctx = createContext(UonSerializerContext.class);<a name="line.204"></a>
+<span class="sourceLineNo">205</span>   }<a name="line.205"></a>
+<span class="sourceLineNo">206</span><a name="line.206"></a>
+<span class="sourceLineNo">207</span>   @Override /* CoreObject */<a name="line.207"></a>
+<span class="sourceLineNo">208</span>   public UonSerializerBuilder builder() {<a name="line.208"></a>
+<span class="sourceLineNo">209</span>      return new UonSerializerBuilder(propertyStore);<a name="line.209"></a>
+<span class="sourceLineNo">210</span>   }<a name="line.210"></a>
+<span class="sourceLineNo">211</span><a name="line.211"></a>
+<span class="sourceLineNo">212</span><a name="line.212"></a>
+<span class="sourceLineNo">213</span><a name="line.213"></a>
+<span class="sourceLineNo">214</span>   //--------------------------------------------------------------------------------<a name="line.214"></a>
+<span class="sourceLineNo">215</span>   // Entry point methods<a name="line.215"></a>
+<span class="sourceLineNo">216</span>   //--------------------------------------------------------------------------------<a name="line.216"></a>
+<span class="sourceLineNo">217</span><a name="line.217"></a>
+<span class="sourceLineNo">218</span>   @Override /* Serializer */<a name="line.218"></a>
+<span class="sourceLineNo">219</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.219"></a>
+<span class="sourceLineNo">220</span>      return new UonSerializerSession(ctx, null, args);<a name="line.220"></a>
+<span class="sourceLineNo">221</span>   }<a name="line.221"></a>
+<span class="sourceLineNo">222</span>}<a name="line.222"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/uon/UonSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/uon/UonSerializerSession.html b/content/site/apidocs/src-html/org/apache/juneau/uon/UonSerializerSession.html
index 1a5dc9b..1e05dec 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/uon/UonSerializerSession.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/uon/UonSerializerSession.html
@@ -26,34 +26,34 @@
 <span class="sourceLineNo">018</span>import java.util.*;<a name="line.18"></a>
 <span class="sourceLineNo">019</span><a name="line.19"></a>
 <span class="sourceLineNo">020</span>import org.apache.juneau.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span>import org.apache.juneau.serializer.*;<a name="line.21"></a>
-<span class="sourceLineNo">022</span>import org.apache.juneau.transform.*;<a name="line.22"></a>
-<span class="sourceLineNo">023</span><a name="line.23"></a>
-<span class="sourceLineNo">024</span>/**<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * Session object that lives for the duration of a single use of {@link UonSerializer}.<a name="line.25"></a>
-<span class="sourceLineNo">026</span> *<a name="line.26"></a>
-<span class="sourceLineNo">027</span> * &lt;p&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * This class is NOT thread safe.<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * It is typically discarded after one-time use although it can be reused within the same thread.<a name="line.29"></a>
-<span class="sourceLineNo">030</span> */<a name="line.30"></a>
-<span class="sourceLineNo">031</span>public class UonSerializerSession extends WriterSerializerSession {<a name="line.31"></a>
-<span class="sourceLineNo">032</span><a name="line.32"></a>
-<span class="sourceLineNo">033</span>   private final boolean<a name="line.33"></a>
-<span class="sourceLineNo">034</span>      encodeChars,<a name="line.34"></a>
-<span class="sourceLineNo">035</span>      addBeanTypeProperties,<a name="line.35"></a>
-<span class="sourceLineNo">036</span>      plainTextParams;<a name="line.36"></a>
-<span class="sourceLineNo">037</span><a name="line.37"></a>
-<span class="sourceLineNo">038</span>   /**<a name="line.38"></a>
-<span class="sourceLineNo">039</span>    * @param ctx<a name="line.39"></a>
-<span class="sourceLineNo">040</span>    *    The context creating this session object.<a name="line.40"></a>
-<span class="sourceLineNo">041</span>    *    The context contains all the configuration settings for this object.<a name="line.41"></a>
-<span class="sourceLineNo">042</span>    * @param encode Override the {@link UonSerializerContext#UON_encodeChars} setting.<a name="line.42"></a>
-<span class="sourceLineNo">043</span>    * @param args<a name="line.43"></a>
-<span class="sourceLineNo">044</span>    *    Runtime arguments.<a name="line.44"></a>
-<span class="sourceLineNo">045</span>    *    These specify session-level information such as locale and URI context.<a name="line.45"></a>
-<span class="sourceLineNo">046</span>    *    It also include session-level properties that override the properties defined on the bean and<a name="line.46"></a>
-<span class="sourceLineNo">047</span>    *    serializer contexts.<a name="line.47"></a>
-<span class="sourceLineNo">048</span>    *    &lt;br&gt;If &lt;jk&gt;null&lt;/jk&gt;, defaults to {@link SerializerSessionArgs#DEFAULT}.<a name="line.48"></a>
+<span class="sourceLineNo">021</span>import org.apache.juneau.internal.*;<a name="line.21"></a>
+<span class="sourceLineNo">022</span>import org.apache.juneau.serializer.*;<a name="line.22"></a>
+<span class="sourceLineNo">023</span>import org.apache.juneau.transform.*;<a name="line.23"></a>
+<span class="sourceLineNo">024</span><a name="line.24"></a>
+<span class="sourceLineNo">025</span>/**<a name="line.25"></a>
+<span class="sourceLineNo">026</span> * Session object that lives for the duration of a single use of {@link UonSerializer}.<a name="line.26"></a>
+<span class="sourceLineNo">027</span> *<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * &lt;p&gt;<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * This class is NOT thread safe.<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * It is typically discarded after one-time use although it can be reused within the same thread.<a name="line.30"></a>
+<span class="sourceLineNo">031</span> */<a name="line.31"></a>
+<span class="sourceLineNo">032</span>public class UonSerializerSession extends WriterSerializerSession {<a name="line.32"></a>
+<span class="sourceLineNo">033</span><a name="line.33"></a>
+<span class="sourceLineNo">034</span>   private final boolean<a name="line.34"></a>
+<span class="sourceLineNo">035</span>      encodeChars,<a name="line.35"></a>
+<span class="sourceLineNo">036</span>      addBeanTypeProperties,<a name="line.36"></a>
+<span class="sourceLineNo">037</span>      plainTextParams;<a name="line.37"></a>
+<span class="sourceLineNo">038</span><a name="line.38"></a>
+<span class="sourceLineNo">039</span>   /**<a name="line.39"></a>
+<span class="sourceLineNo">040</span>    * @param ctx<a name="line.40"></a>
+<span class="sourceLineNo">041</span>    *    The context creating this session object.<a name="line.41"></a>
+<span class="sourceLineNo">042</span>    *    The context contains all the configuration settings for this object.<a name="line.42"></a>
+<span class="sourceLineNo">043</span>    * @param encode Override the {@link UonSerializerContext#UON_encodeChars} setting.<a name="line.43"></a>
+<span class="sourceLineNo">044</span>    * @param args<a name="line.44"></a>
+<span class="sourceLineNo">045</span>    *    Runtime arguments.<a name="line.45"></a>
+<span class="sourceLineNo">046</span>    *    These specify session-level information such as locale and URI context.<a name="line.46"></a>
+<span class="sourceLineNo">047</span>    *    It also include session-level properties that override the properties defined on the bean and<a name="line.47"></a>
+<span class="sourceLineNo">048</span>    *    serializer contexts.<a name="line.48"></a>
 <span class="sourceLineNo">049</span>    */<a name="line.49"></a>
 <span class="sourceLineNo">050</span>   public UonSerializerSession(UonSerializerContext ctx, Boolean encode, SerializerSessionArgs args) {<a name="line.50"></a>
 <span class="sourceLineNo">051</span>      super(ctx, args);<a name="line.51"></a>
@@ -174,109 +174,112 @@
 <span class="sourceLineNo">166</span>      else if (sType.isArray()) {<a name="line.166"></a>
 <span class="sourceLineNo">167</span>         serializeCollection(out, toList(sType.getInnerClass(), o), eType);<a name="line.167"></a>
 <span class="sourceLineNo">168</span>      }<a name="line.168"></a>
-<span class="sourceLineNo">169</span>      else {<a name="line.169"></a>
-<span class="sourceLineNo">170</span>         out.appendObject(o, false);<a name="line.170"></a>
+<span class="sourceLineNo">169</span>      else if (sType.isReader() || sType.isInputStream()) {<a name="line.169"></a>
+<span class="sourceLineNo">170</span>         IOUtils.pipe(o, out);<a name="line.170"></a>
 <span class="sourceLineNo">171</span>      }<a name="line.171"></a>
-<span class="sourceLineNo">172</span><a name="line.172"></a>
-<span class="sourceLineNo">173</span>      if (! isRecursion)<a name="line.173"></a>
-<span class="sourceLineNo">174</span>         pop();<a name="line.174"></a>
-<span class="sourceLineNo">175</span>      return out;<a name="line.175"></a>
-<span class="sourceLineNo">176</span>   }<a name="line.176"></a>
-<span class="sourceLineNo">177</span><a name="line.177"></a>
-<span class="sourceLineNo">178</span>   @SuppressWarnings({ "rawtypes", "unchecked" })<a name="line.178"></a>
-<span class="sourceLineNo">179</span>   private SerializerWriter serializeMap(UonWriter out, Map m, ClassMeta&lt;?&gt; type) throws Exception {<a name="line.179"></a>
+<span class="sourceLineNo">172</span>      else {<a name="line.172"></a>
+<span class="sourceLineNo">173</span>         out.appendObject(o, false);<a name="line.173"></a>
+<span class="sourceLineNo">174</span>      }<a name="line.174"></a>
+<span class="sourceLineNo">175</span><a name="line.175"></a>
+<span class="sourceLineNo">176</span>      if (! isRecursion)<a name="line.176"></a>
+<span class="sourceLineNo">177</span>         pop();<a name="line.177"></a>
+<span class="sourceLineNo">178</span>      return out;<a name="line.178"></a>
+<span class="sourceLineNo">179</span>   }<a name="line.179"></a>
 <span class="sourceLineNo">180</span><a name="line.180"></a>
-<span class="sourceLineNo">181</span>      m = sort(m);<a name="line.181"></a>
-<span class="sourceLineNo">182</span><a name="line.182"></a>
-<span class="sourceLineNo">183</span>      ClassMeta&lt;?&gt; keyType = type.getKeyType(), valueType = type.getValueType();<a name="line.183"></a>
-<span class="sourceLineNo">184</span><a name="line.184"></a>
-<span class="sourceLineNo">185</span>      if (! plainTextParams)<a name="line.185"></a>
-<span class="sourceLineNo">186</span>         out.append('(');<a name="line.186"></a>
+<span class="sourceLineNo">181</span>   @SuppressWarnings({ "rawtypes", "unchecked" })<a name="line.181"></a>
+<span class="sourceLineNo">182</span>   private SerializerWriter serializeMap(UonWriter out, Map m, ClassMeta&lt;?&gt; type) throws Exception {<a name="line.182"></a>
+<span class="sourceLineNo">183</span><a name="line.183"></a>
+<span class="sourceLineNo">184</span>      m = sort(m);<a name="line.184"></a>
+<span class="sourceLineNo">185</span><a name="line.185"></a>
+<span class="sourceLineNo">186</span>      ClassMeta&lt;?&gt; keyType = type.getKeyType(), valueType = type.getValueType();<a name="line.186"></a>
 <span class="sourceLineNo">187</span><a name="line.187"></a>
-<span class="sourceLineNo">188</span>      Iterator mapEntries = m.entrySet().iterator();<a name="line.188"></a>
-<span class="sourceLineNo">189</span><a name="line.189"></a>
-<span class="sourceLineNo">190</span>      while (mapEntries.hasNext()) {<a name="line.190"></a>
-<span class="sourceLineNo">191</span>         Map.Entry e = (Map.Entry) mapEntries.next();<a name="line.191"></a>
-<span class="sourceLineNo">192</span>         Object value = e.getValue();<a name="line.192"></a>
-<span class="sourceLineNo">193</span>         Object key = generalize(e.getKey(), keyType);<a name="line.193"></a>
-<span class="sourceLineNo">194</span>         out.cr(indent).appendObject(key, false).append('=');<a name="line.194"></a>
-<span class="sourceLineNo">195</span>         serializeAnything(out, value, valueType, (key == null ? null : toString(key)), null);<a name="line.195"></a>
-<span class="sourceLineNo">196</span>         if (mapEntries.hasNext())<a name="line.196"></a>
-<span class="sourceLineNo">197</span>            out.append(',');<a name="line.197"></a>
-<span class="sourceLineNo">198</span>      }<a name="line.198"></a>
-<span class="sourceLineNo">199</span><a name="line.199"></a>
-<span class="sourceLineNo">200</span>      if (m.size() &gt; 0)<a name="line.200"></a>
-<span class="sourceLineNo">201</span>         out.cre(indent-1);<a name="line.201"></a>
+<span class="sourceLineNo">188</span>      if (! plainTextParams)<a name="line.188"></a>
+<span class="sourceLineNo">189</span>         out.append('(');<a name="line.189"></a>
+<span class="sourceLineNo">190</span><a name="line.190"></a>
+<span class="sourceLineNo">191</span>      Iterator mapEntries = m.entrySet().iterator();<a name="line.191"></a>
+<span class="sourceLineNo">192</span><a name="line.192"></a>
+<span class="sourceLineNo">193</span>      while (mapEntries.hasNext()) {<a name="line.193"></a>
+<span class="sourceLineNo">194</span>         Map.Entry e = (Map.Entry) mapEntries.next();<a name="line.194"></a>
+<span class="sourceLineNo">195</span>         Object value = e.getValue();<a name="line.195"></a>
+<span class="sourceLineNo">196</span>         Object key = generalize(e.getKey(), keyType);<a name="line.196"></a>
+<span class="sourceLineNo">197</span>         out.cr(indent).appendObject(key, false).append('=');<a name="line.197"></a>
+<span class="sourceLineNo">198</span>         serializeAnything(out, value, valueType, (key == null ? null : toString(key)), null);<a name="line.198"></a>
+<span class="sourceLineNo">199</span>         if (mapEntries.hasNext())<a name="line.199"></a>
+<span class="sourceLineNo">200</span>            out.append(',');<a name="line.200"></a>
+<span class="sourceLineNo">201</span>      }<a name="line.201"></a>
 <span class="sourceLineNo">202</span><a name="line.202"></a>
-<span class="sourceLineNo">203</span>      if (! plainTextParams)<a name="line.203"></a>
-<span class="sourceLineNo">204</span>         out.append(')');<a name="line.204"></a>
+<span class="sourceLineNo">203</span>      if (m.size() &gt; 0)<a name="line.203"></a>
+<span class="sourceLineNo">204</span>         out.cre(indent-1);<a name="line.204"></a>
 <span class="sourceLineNo">205</span><a name="line.205"></a>
-<span class="sourceLineNo">206</span>      return out;<a name="line.206"></a>
-<span class="sourceLineNo">207</span>   }<a name="line.207"></a>
+<span class="sourceLineNo">206</span>      if (! plainTextParams)<a name="line.206"></a>
+<span class="sourceLineNo">207</span>         out.append(')');<a name="line.207"></a>
 <span class="sourceLineNo">208</span><a name="line.208"></a>
-<span class="sourceLineNo">209</span>   private SerializerWriter serializeBeanMap(UonWriter out, BeanMap&lt;?&gt; m, String typeName) throws Exception {<a name="line.209"></a>
-<span class="sourceLineNo">210</span><a name="line.210"></a>
-<span class="sourceLineNo">211</span>      if (! plainTextParams)<a name="line.211"></a>
-<span class="sourceLineNo">212</span>         out.append('(');<a name="line.212"></a>
+<span class="sourceLineNo">209</span>      return out;<a name="line.209"></a>
+<span class="sourceLineNo">210</span>   }<a name="line.210"></a>
+<span class="sourceLineNo">211</span><a name="line.211"></a>
+<span class="sourceLineNo">212</span>   private SerializerWriter serializeBeanMap(UonWriter out, BeanMap&lt;?&gt; m, String typeName) throws Exception {<a name="line.212"></a>
 <span class="sourceLineNo">213</span><a name="line.213"></a>
-<span class="sourceLineNo">214</span>      boolean addComma = false;<a name="line.214"></a>
-<span class="sourceLineNo">215</span><a name="line.215"></a>
-<span class="sourceLineNo">216</span>      for (BeanPropertyValue p : m.getValues(isTrimNulls(), typeName != null ? createBeanTypeNameProperty(m, typeName) : null)) {<a name="line.216"></a>
-<span class="sourceLineNo">217</span>         BeanPropertyMeta pMeta = p.getMeta();<a name="line.217"></a>
-<span class="sourceLineNo">218</span>         ClassMeta&lt;?&gt; cMeta = p.getClassMeta();<a name="line.218"></a>
-<span class="sourceLineNo">219</span><a name="line.219"></a>
-<span class="sourceLineNo">220</span>         String key = p.getName();<a name="line.220"></a>
-<span class="sourceLineNo">221</span>         Object value = p.getValue();<a name="line.221"></a>
-<span class="sourceLineNo">222</span>         Throwable t = p.getThrown();<a name="line.222"></a>
-<span class="sourceLineNo">223</span>         if (t != null)<a name="line.223"></a>
-<span class="sourceLineNo">224</span>            onBeanGetterException(pMeta, t);<a name="line.224"></a>
-<span class="sourceLineNo">225</span><a name="line.225"></a>
-<span class="sourceLineNo">226</span>         if (canIgnoreValue(cMeta, key, value))<a name="line.226"></a>
-<span class="sourceLineNo">227</span>            continue;<a name="line.227"></a>
+<span class="sourceLineNo">214</span>      if (! plainTextParams)<a name="line.214"></a>
+<span class="sourceLineNo">215</span>         out.append('(');<a name="line.215"></a>
+<span class="sourceLineNo">216</span><a name="line.216"></a>
+<span class="sourceLineNo">217</span>      boolean addComma = false;<a name="line.217"></a>
+<span class="sourceLineNo">218</span><a name="line.218"></a>
+<span class="sourceLineNo">219</span>      for (BeanPropertyValue p : m.getValues(isTrimNulls(), typeName != null ? createBeanTypeNameProperty(m, typeName) : null)) {<a name="line.219"></a>
+<span class="sourceLineNo">220</span>         BeanPropertyMeta pMeta = p.getMeta();<a name="line.220"></a>
+<span class="sourceLineNo">221</span>         ClassMeta&lt;?&gt; cMeta = p.getClassMeta();<a name="line.221"></a>
+<span class="sourceLineNo">222</span><a name="line.222"></a>
+<span class="sourceLineNo">223</span>         String key = p.getName();<a name="line.223"></a>
+<span class="sourceLineNo">224</span>         Object value = p.getValue();<a name="line.224"></a>
+<span class="sourceLineNo">225</span>         Throwable t = p.getThrown();<a name="line.225"></a>
+<span class="sourceLineNo">226</span>         if (t != null)<a name="line.226"></a>
+<span class="sourceLineNo">227</span>            onBeanGetterException(pMeta, t);<a name="line.227"></a>
 <span class="sourceLineNo">228</span><a name="line.228"></a>
-<span class="sourceLineNo">229</span>         if (addComma)<a name="line.229"></a>
-<span class="sourceLineNo">230</span>            out.append(',');<a name="line.230"></a>
+<span class="sourceLineNo">229</span>         if (canIgnoreValue(cMeta, key, value))<a name="line.229"></a>
+<span class="sourceLineNo">230</span>            continue;<a name="line.230"></a>
 <span class="sourceLineNo">231</span><a name="line.231"></a>
-<span class="sourceLineNo">232</span>         out.cr(indent).appendObject(key, false).append('=');<a name="line.232"></a>
-<span class="sourceLineNo">233</span><a name="line.233"></a>
-<span class="sourceLineNo">234</span>         serializeAnything(out, value, cMeta, key, pMeta);<a name="line.234"></a>
-<span class="sourceLineNo">235</span><a name="line.235"></a>
-<span class="sourceLineNo">236</span>         addComma = true;<a name="line.236"></a>
-<span class="sourceLineNo">237</span>      }<a name="line.237"></a>
+<span class="sourceLineNo">232</span>         if (addComma)<a name="line.232"></a>
+<span class="sourceLineNo">233</span>            out.append(',');<a name="line.233"></a>
+<span class="sourceLineNo">234</span><a name="line.234"></a>
+<span class="sourceLineNo">235</span>         out.cr(indent).appendObject(key, false).append('=');<a name="line.235"></a>
+<span class="sourceLineNo">236</span><a name="line.236"></a>
+<span class="sourceLineNo">237</span>         serializeAnything(out, value, cMeta, key, pMeta);<a name="line.237"></a>
 <span class="sourceLineNo">238</span><a name="line.238"></a>
-<span class="sourceLineNo">239</span>      if (m.size() &gt; 0)<a name="line.239"></a>
-<span class="sourceLineNo">240</span>         out.cre(indent-1);<a name="line.240"></a>
-<span class="sourceLineNo">241</span>      if (! plainTextParams)<a name="line.241"></a>
-<span class="sourceLineNo">242</span>         out.append(')');<a name="line.242"></a>
-<span class="sourceLineNo">243</span><a name="line.243"></a>
-<span class="sourceLineNo">244</span>      return out;<a name="line.244"></a>
-<span class="sourceLineNo">245</span>   }<a name="line.245"></a>
+<span class="sourceLineNo">239</span>         addComma = true;<a name="line.239"></a>
+<span class="sourceLineNo">240</span>      }<a name="line.240"></a>
+<span class="sourceLineNo">241</span><a name="line.241"></a>
+<span class="sourceLineNo">242</span>      if (m.size() &gt; 0)<a name="line.242"></a>
+<span class="sourceLineNo">243</span>         out.cre(indent-1);<a name="line.243"></a>
+<span class="sourceLineNo">244</span>      if (! plainTextParams)<a name="line.244"></a>
+<span class="sourceLineNo">245</span>         out.append(')');<a name="line.245"></a>
 <span class="sourceLineNo">246</span><a name="line.246"></a>
-<span class="sourceLineNo">247</span>   @SuppressWarnings({ "rawtypes", "unchecked" })<a name="line.247"></a>
-<span class="sourceLineNo">248</span>   private SerializerWriter serializeCollection(UonWriter out, Collection c, ClassMeta&lt;?&gt; type) throws Exception {<a name="line.248"></a>
+<span class="sourceLineNo">247</span>      return out;<a name="line.247"></a>
+<span class="sourceLineNo">248</span>   }<a name="line.248"></a>
 <span class="sourceLineNo">249</span><a name="line.249"></a>
-<span class="sourceLineNo">250</span>      ClassMeta&lt;?&gt; elementType = type.getElementType();<a name="line.250"></a>
-<span class="sourceLineNo">251</span><a name="line.251"></a>
-<span class="sourceLineNo">252</span>      c = sort(c);<a name="line.252"></a>
-<span class="sourceLineNo">253</span><a name="line.253"></a>
-<span class="sourceLineNo">254</span>      if (! plainTextParams)<a name="line.254"></a>
-<span class="sourceLineNo">255</span>         out.append('@').append('(');<a name="line.255"></a>
+<span class="sourceLineNo">250</span>   @SuppressWarnings({ "rawtypes", "unchecked" })<a name="line.250"></a>
+<span class="sourceLineNo">251</span>   private SerializerWriter serializeCollection(UonWriter out, Collection c, ClassMeta&lt;?&gt; type) throws Exception {<a name="line.251"></a>
+<span class="sourceLineNo">252</span><a name="line.252"></a>
+<span class="sourceLineNo">253</span>      ClassMeta&lt;?&gt; elementType = type.getElementType();<a name="line.253"></a>
+<span class="sourceLineNo">254</span><a name="line.254"></a>
+<span class="sourceLineNo">255</span>      c = sort(c);<a name="line.255"></a>
 <span class="sourceLineNo">256</span><a name="line.256"></a>
-<span class="sourceLineNo">257</span>      for (Iterator i = c.iterator(); i.hasNext();) {<a name="line.257"></a>
-<span class="sourceLineNo">258</span>         out.cr(indent);<a name="line.258"></a>
-<span class="sourceLineNo">259</span>         serializeAnything(out, i.next(), elementType, "&lt;iterator&gt;", null);<a name="line.259"></a>
-<span class="sourceLineNo">260</span>         if (i.hasNext())<a name="line.260"></a>
-<span class="sourceLineNo">261</span>            out.append(',');<a name="line.261"></a>
-<span class="sourceLineNo">262</span>      }<a name="line.262"></a>
-<span class="sourceLineNo">263</span><a name="line.263"></a>
-<span class="sourceLineNo">264</span>      if (c.size() &gt; 0)<a name="line.264"></a>
-<span class="sourceLineNo">265</span>         out.cre(indent-1);<a name="line.265"></a>
-<span class="sourceLineNo">266</span>      if (! plainTextParams)<a name="line.266"></a>
-<span class="sourceLineNo">267</span>         out.append(')');<a name="line.267"></a>
-<span class="sourceLineNo">268</span><a name="line.268"></a>
-<span class="sourceLineNo">269</span>      return out;<a name="line.269"></a>
-<span class="sourceLineNo">270</span>   }<a name="line.270"></a>
-<span class="sourceLineNo">271</span>}<a name="line.271"></a>
+<span class="sourceLineNo">257</span>      if (! plainTextParams)<a name="line.257"></a>
+<span class="sourceLineNo">258</span>         out.append('@').append('(');<a name="line.258"></a>
+<span class="sourceLineNo">259</span><a name="line.259"></a>
+<span class="sourceLineNo">260</span>      for (Iterator i = c.iterator(); i.hasNext();) {<a name="line.260"></a>
+<span class="sourceLineNo">261</span>         out.cr(indent);<a name="line.261"></a>
+<span class="sourceLineNo">262</span>         serializeAnything(out, i.next(), elementType, "&lt;iterator&gt;", null);<a name="line.262"></a>
+<span class="sourceLineNo">263</span>         if (i.hasNext())<a name="line.263"></a>
+<span class="sourceLineNo">264</span>            out.append(',');<a name="line.264"></a>
+<span class="sourceLineNo">265</span>      }<a name="line.265"></a>
+<span class="sourceLineNo">266</span><a name="line.266"></a>
+<span class="sourceLineNo">267</span>      if (c.size() &gt; 0)<a name="line.267"></a>
+<span class="sourceLineNo">268</span>         out.cre(indent-1);<a name="line.268"></a>
+<span class="sourceLineNo">269</span>      if (! plainTextParams)<a name="line.269"></a>
+<span class="sourceLineNo">270</span>         out.append(')');<a name="line.270"></a>
+<span class="sourceLineNo">271</span><a name="line.271"></a>
+<span class="sourceLineNo">272</span>      return out;<a name="line.272"></a>
+<span class="sourceLineNo">273</span>   }<a name="line.273"></a>
+<span class="sourceLineNo">274</span>}<a name="line.274"></a>
 
 
 


[44/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/serializer/SerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/serializer/SerializerSession.html b/content/site/apidocs/org/apache/juneau/serializer/SerializerSession.html
index 6cab701..dbaa2fb 100644
--- a/content/site/apidocs/org/apache/juneau/serializer/SerializerSession.html
+++ b/content/site/apidocs/org/apache/juneau/serializer/SerializerSession.html
@@ -535,7 +535,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockListLast">
 <li class="blockList">
 <h4>SerializerSession</h4>
-<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.95">SerializerSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerContext.html" title="class in org.apache.juneau.serializer">SerializerContext</a>&nbsp;ctx,
+<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.94">SerializerSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerContext.html" title="class in org.apache.juneau.serializer">SerializerContext</a>&nbsp;ctx,
                             <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block">Create a new session using properties specified in the context.</div>
 <dl>
@@ -546,8 +546,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and
-   serializer contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   serializer contexts.</dd>
 </dl>
 </li>
 </ul>
@@ -565,7 +564,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>createPipe</h4>
-<pre>protected&nbsp;<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.179">createPipe</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;output)</pre>
+<pre>protected&nbsp;<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.176">createPipe</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;output)</pre>
 <div class="block">Wraps the specified input object into a <a href="../../../../org/apache/juneau/parser/ParserPipe.html" title="class in org.apache.juneau.parser"><code>ParserPipe</code></a> object so that it can be easily converted into
  a stream or reader.</div>
 <dl>
@@ -594,7 +593,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>doSerialize</h4>
-<pre>protected abstract&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.198">doSerialize</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;pipe,
+<pre>protected abstract&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.195">doSerialize</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;pipe,
                                     <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
                              throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block">Serializes a POJO to the specified output stream or writer.
@@ -616,7 +615,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>serialize</h4>
-<pre>public abstract&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.211">serialize</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
+<pre>public abstract&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.208">serialize</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
                           throws <a href="../../../../org/apache/juneau/serializer/SerializeException.html" title="class in org.apache.juneau.serializer">SerializeException</a></pre>
 <div class="block">Shortcut method for serializing objects directly to either a <code>String</code> or <code><jk>byte</jk>[]</code>
  depending on the serializer type.</div>
@@ -638,7 +637,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>isWriterSerializer</h4>
-<pre>public abstract&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.218">isWriterSerializer</a>()</pre>
+<pre>public abstract&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.215">isWriterSerializer</a>()</pre>
 <div class="block">Returns <jk>true</jk> if this serializer subclasses from <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html" title="class in org.apache.juneau.serializer"><code>WriterSerializer</code></a>.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -652,7 +651,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>serialize</h4>
-<pre>public final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.232">serialize</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;out,
+<pre>public final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.229">serialize</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;out,
                             <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
                      throws <a href="../../../../org/apache/juneau/serializer/SerializeException.html" title="class in org.apache.juneau.serializer">SerializeException</a></pre>
 <div class="block">Serialize the specified object using the specified session.</div>
@@ -671,7 +670,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>setCurrentProperty</h4>
-<pre>protected final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.254">setCurrentProperty</a>(<a href="../../../../org/apache/juneau/BeanPropertyMeta.html" title="class in org.apache.juneau">BeanPropertyMeta</a>&nbsp;currentProperty)</pre>
+<pre>protected final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.251">setCurrentProperty</a>(<a href="../../../../org/apache/juneau/BeanPropertyMeta.html" title="class in org.apache.juneau">BeanPropertyMeta</a>&nbsp;currentProperty)</pre>
 <div class="block">Sets the current bean property being serialized for proper error messages.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -685,7 +684,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>setCurrentClass</h4>
-<pre>protected final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.263">setCurrentClass</a>(<a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;currentClass)</pre>
+<pre>protected final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.260">setCurrentClass</a>(<a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;currentClass)</pre>
 <div class="block">Sets the current class being serialized for proper error messages.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -699,7 +698,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>getJavaMethod</h4>
-<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.276">getJavaMethod</a>()</pre>
+<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.273">getJavaMethod</a>()</pre>
 <div class="block">Returns the Java method that invoked this serializer.
 
  <p>
@@ -717,7 +716,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>getUriResolver</h4>
-<pre>protected final&nbsp;<a href="../../../../org/apache/juneau/UriResolver.html" title="class in org.apache.juneau">UriResolver</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.285">getUriResolver</a>()</pre>
+<pre>protected final&nbsp;<a href="../../../../org/apache/juneau/UriResolver.html" title="class in org.apache.juneau">UriResolver</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.282">getUriResolver</a>()</pre>
 <div class="block">Returns the URI resolver.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -731,7 +730,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>getMaxDepth</h4>
-<pre>protected final&nbsp;int&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.294">getMaxDepth</a>()</pre>
+<pre>protected final&nbsp;int&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.291">getMaxDepth</a>()</pre>
 <div class="block">Returns the <a href="../../../../org/apache/juneau/serializer/SerializerContext.html#SERIALIZER_maxDepth"><code>SerializerContext.SERIALIZER_maxDepth</code></a> setting value for this session.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -745,7 +744,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>getInitialDepth</h4>
-<pre>protected final&nbsp;int&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.303">getInitialDepth</a>()</pre>
+<pre>protected final&nbsp;int&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.300">getInitialDepth</a>()</pre>
 <div class="block">Returns the <a href="../../../../org/apache/juneau/serializer/SerializerContext.html#SERIALIZER_initialDepth"><code>SerializerContext.SERIALIZER_initialDepth</code></a> setting value for this session.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -759,7 +758,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>isDetectRecursions</h4>
-<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.312">isDetectRecursions</a>()</pre>
+<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.309">isDetectRecursions</a>()</pre>
 <div class="block">Returns the <a href="../../../../org/apache/juneau/serializer/SerializerContext.html#SERIALIZER_detectRecursions"><code>SerializerContext.SERIALIZER_detectRecursions</code></a> setting value for this session.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -773,7 +772,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>isIgnoreRecursions</h4>
-<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.321">isIgnoreRecursions</a>()</pre>
+<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.318">isIgnoreRecursions</a>()</pre>
 <div class="block">Returns the <a href="../../../../org/apache/juneau/serializer/SerializerContext.html#SERIALIZER_ignoreRecursions"><code>SerializerContext.SERIALIZER_ignoreRecursions</code></a> setting value for this session.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -787,7 +786,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>isUseWhitespace</h4>
-<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.330">isUseWhitespace</a>()</pre>
+<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.327">isUseWhitespace</a>()</pre>
 <div class="block">Returns the <a href="../../../../org/apache/juneau/serializer/SerializerContext.html#SERIALIZER_useWhitespace"><code>SerializerContext.SERIALIZER_useWhitespace</code></a> setting value for this session.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -801,7 +800,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>getMaxIndent</h4>
-<pre>protected final&nbsp;int&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.339">getMaxIndent</a>()</pre>
+<pre>protected final&nbsp;int&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.336">getMaxIndent</a>()</pre>
 <div class="block">Returns the <a href="../../../../org/apache/juneau/serializer/SerializerContext.html#SERIALIZER_maxIndent"><code>SerializerContext.SERIALIZER_maxIndent</code></a> setting value for this session.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -815,7 +814,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>isAddBeanTypeProperties</h4>
-<pre>protected&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.348">isAddBeanTypeProperties</a>()</pre>
+<pre>protected&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.345">isAddBeanTypeProperties</a>()</pre>
 <div class="block">Returns the <a href="../../../../org/apache/juneau/serializer/SerializerContext.html#SERIALIZER_addBeanTypeProperties"><code>SerializerContext.SERIALIZER_addBeanTypeProperties</code></a> setting value for this session.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -829,7 +828,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>getQuoteChar</h4>
-<pre>protected final&nbsp;char&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.357">getQuoteChar</a>()</pre>
+<pre>protected final&nbsp;char&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.354">getQuoteChar</a>()</pre>
 <div class="block">Returns the <a href="../../../../org/apache/juneau/serializer/SerializerContext.html#SERIALIZER_quoteChar"><code>SerializerContext.SERIALIZER_quoteChar</code></a> setting value for this session.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -843,7 +842,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>isTrimNulls</h4>
-<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.366">isTrimNulls</a>()</pre>
+<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.363">isTrimNulls</a>()</pre>
 <div class="block">Returns the <a href="../../../../org/apache/juneau/serializer/SerializerContext.html#SERIALIZER_trimNullProperties"><code>SerializerContext.SERIALIZER_trimNullProperties</code></a> setting value for this session.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -857,7 +856,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>isTrimEmptyCollections</h4>
-<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.375">isTrimEmptyCollections</a>()</pre>
+<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.372">isTrimEmptyCollections</a>()</pre>
 <div class="block">Returns the <a href="../../../../org/apache/juneau/serializer/SerializerContext.html#SERIALIZER_trimEmptyCollections"><code>SerializerContext.SERIALIZER_trimEmptyCollections</code></a> setting value for this session.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -871,7 +870,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>isTrimEmptyMaps</h4>
-<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.384">isTrimEmptyMaps</a>()</pre>
+<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.381">isTrimEmptyMaps</a>()</pre>
 <div class="block">Returns the <a href="../../../../org/apache/juneau/serializer/SerializerContext.html#SERIALIZER_trimEmptyMaps"><code>SerializerContext.SERIALIZER_trimEmptyMaps</code></a> setting value for this session.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -885,7 +884,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>isTrimStrings</h4>
-<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.393">isTrimStrings</a>()</pre>
+<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.390">isTrimStrings</a>()</pre>
 <div class="block">Returns the <a href="../../../../org/apache/juneau/serializer/SerializerContext.html#SERIALIZER_trimStrings"><code>SerializerContext.SERIALIZER_trimStrings</code></a> setting value for this session.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -899,7 +898,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>isSortCollections</h4>
-<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.402">isSortCollections</a>()</pre>
+<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.399">isSortCollections</a>()</pre>
 <div class="block">Returns the <a href="../../../../org/apache/juneau/serializer/SerializerContext.html#SERIALIZER_sortCollections"><code>SerializerContext.SERIALIZER_sortCollections</code></a> setting value for this session.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -913,7 +912,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>isSortMaps</h4>
-<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.411">isSortMaps</a>()</pre>
+<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.408">isSortMaps</a>()</pre>
 <div class="block">Returns the <a href="../../../../org/apache/juneau/serializer/SerializerContext.html#SERIALIZER_sortMaps"><code>SerializerContext.SERIALIZER_sortMaps</code></a> setting value for this session.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -927,7 +926,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>push</h4>
-<pre>protected final&nbsp;<a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.426">push</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;attrName,
+<pre>protected final&nbsp;<a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.423">push</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;attrName,
                                   <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o,
                                   <a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;eType)
                            throws <a href="../../../../org/apache/juneau/serializer/SerializeException.html" title="class in org.apache.juneau.serializer">SerializeException</a></pre>
@@ -951,7 +950,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>willRecurse</h4>
-<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.459">willRecurse</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;attrName,
+<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.456">willRecurse</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;attrName,
                                     <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o,
                                     <a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;cm)
                              throws <a href="../../../../org/apache/juneau/serializer/SerializeException.html" title="class in org.apache.juneau.serializer">SerializeException</a></pre>
@@ -975,7 +974,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>pop</h4>
-<pre>protected final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.474">pop</a>()</pre>
+<pre>protected final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.471">pop</a>()</pre>
 <div class="block">Pop an object off the stack.</div>
 </li>
 </ul>
@@ -985,7 +984,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>onBeanGetterException</h4>
-<pre>protected final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.492">onBeanGetterException</a>(<a href="../../../../org/apache/juneau/BeanPropertyMeta.html" title="class in org.apache.juneau">BeanPropertyMeta</a>&nbsp;p,
+<pre>protected final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.489">onBeanGetterException</a>(<a href="../../../../org/apache/juneau/BeanPropertyMeta.html" title="class in org.apache.juneau">BeanPropertyMeta</a>&nbsp;p,
                                            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;t)</pre>
 <div class="block">Specialized warning when an exception is thrown while executing a bean getter.</div>
 <dl>
@@ -1001,7 +1000,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>onError</h4>
-<pre>protected final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.507">onError</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;t,
+<pre>protected final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.504">onError</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;t,
                              <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;msg,
                              <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)</pre>
 <div class="block">Logs a warning message.</div>
@@ -1019,7 +1018,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>trim</h4>
-<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.519">trim</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</pre>
+<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.516">trim</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</pre>
 <div class="block">Trims the specified string if <a href="../../../../org/apache/juneau/serializer/SerializerSession.html#isTrimStrings--"><code>isTrimStrings()</code></a> returns <jk>true</jk>.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1035,7 +1034,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>generalize</h4>
-<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.537">generalize</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o,
+<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.534">generalize</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o,
                                   <a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;type)
                            throws <a href="../../../../org/apache/juneau/serializer/SerializeException.html" title="class in org.apache.juneau.serializer">SerializeException</a></pre>
 <div class="block">Generalize the specified object if a POJO swap is associated with it.</div>
@@ -1056,7 +1055,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>canIgnoreValue</h4>
-<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.561">canIgnoreValue</a>(<a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;cm,
+<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.558">canIgnoreValue</a>(<a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;cm,
                                        <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;attrName,
                                        <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;value)
                                 throws <a href="../../../../org/apache/juneau/serializer/SerializeException.html" title="class in org.apache.juneau.serializer">SerializeException</a></pre>
@@ -1079,7 +1078,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>sort</h4>
-<pre>protected final&nbsp;&lt;K,V&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;K,V&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.602">sort</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;K,V&gt;&nbsp;m)</pre>
+<pre>protected final&nbsp;&lt;K,V&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;K,V&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.599">sort</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;K,V&gt;&nbsp;m)</pre>
 <div class="block">Sorts the specified map if <a href="../../../../org/apache/juneau/serializer/SerializerSession.html#isSortMaps--"><code>isSortMaps()</code></a> returns <jk>true</jk>.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1095,7 +1094,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>sort</h4>
-<pre>protected final&nbsp;&lt;E&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;E&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.614">sort</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;E&gt;&nbsp;c)</pre>
+<pre>protected final&nbsp;&lt;E&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;E&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.611">sort</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;E&gt;&nbsp;c)</pre>
 <div class="block">Sorts the specified collection if <a href="../../../../org/apache/juneau/serializer/SerializerSession.html#isSortCollections--"><code>isSortCollections()</code></a> returns <jk>true</jk>.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1111,7 +1110,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>toList</h4>
-<pre>protected static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.635">toList</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&nbsp;type,
+<pre>protected static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.632">toList</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&nbsp;type,
                                            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;array)</pre>
 <div class="block">Converts the contents of the specified object array to a list.
 
@@ -1137,7 +1136,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>resolveUri</h4>
-<pre>public final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.674">resolveUri</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;uri)</pre>
+<pre>public final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.671">resolveUri</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;uri)</pre>
 <div class="block">Converts a String to an absolute URI based on the <a href="../../../../org/apache/juneau/UriContext.html" title="class in org.apache.juneau"><code>UriContext</code></a> on this session.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1173,7 +1172,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>relativizeUri</h4>
-<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.712">relativizeUri</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;relativeTo,
+<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.709">relativizeUri</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;relativeTo,
                                      <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;uri)</pre>
 <div class="block">Opposite of <a href="../../../../org/apache/juneau/serializer/SerializerSession.html#resolveUri-java.lang.Object-"><code>resolveUri(Object)</code></a>.
 
@@ -1218,7 +1217,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>toString</h4>
-<pre>public final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.722">toString</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</pre>
+<pre>public final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.719">toString</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</pre>
 <div class="block">Converts the specified object to a <code>String</code>.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -1234,7 +1233,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>getLastLocation</h4>
-<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.778">getLastLocation</a>()</pre>
+<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.775">getLastLocation</a>()</pre>
 <div class="block">Returns information used to determine at what location in the parse a failure occurred.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -1248,7 +1247,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>createBeanTypeNameProperty</h4>
-<pre>protected static final&nbsp;<a href="../../../../org/apache/juneau/BeanPropertyValue.html" title="class in org.apache.juneau">BeanPropertyValue</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.796">createBeanTypeNameProperty</a>(<a href="../../../../org/apache/juneau/BeanMap.html" title="class in org.apache.juneau">BeanMap</a>&lt;?&gt;&nbsp;m,
+<pre>protected static final&nbsp;<a href="../../../../org/apache/juneau/BeanPropertyValue.html" title="class in org.apache.juneau">BeanPropertyValue</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.793">createBeanTypeNameProperty</a>(<a href="../../../../org/apache/juneau/BeanMap.html" title="class in org.apache.juneau">BeanMap</a>&lt;?&gt;&nbsp;m,
                                                                     <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;typeName)</pre>
 <div class="block">Create a "_type" property that contains the dictionary name of the bean.</div>
 <dl>
@@ -1266,7 +1265,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>getBeanTypeName</h4>
-<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.809">getBeanTypeName</a>(<a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;eType,
+<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.806">getBeanTypeName</a>(<a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;eType,
                                        <a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;aType,
                                        <a href="../../../../org/apache/juneau/BeanPropertyMeta.html" title="class in org.apache.juneau">BeanPropertyMeta</a>&nbsp;pMeta)</pre>
 <div class="block">Resolves the dictionary name for the actual type.</div>
@@ -1286,7 +1285,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>getExpectedRootType</h4>
-<pre>protected final&nbsp;<a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.863">getExpectedRootType</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</pre>
+<pre>protected final&nbsp;<a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.860">getExpectedRootType</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</pre>
 <div class="block">Returns the parser-side expected type for the object.
 
  <p>
@@ -1307,7 +1306,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockListLast">
 <li class="blockList">
 <h4>getResponseHeaders</h4>
-<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.881">getResponseHeaders</a>()</pre>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSession.html#line.878">getResponseHeaders</a>()</pre>
 <div class="block">Optional method that specifies HTTP request headers for this serializer.
 
  <p>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/serializer/SerializerSessionArgs.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/serializer/SerializerSessionArgs.html b/content/site/apidocs/org/apache/juneau/serializer/SerializerSessionArgs.html
index 38925a3..833cbbe 100644
--- a/content/site/apidocs/org/apache/juneau/serializer/SerializerSessionArgs.html
+++ b/content/site/apidocs/org/apache/juneau/serializer/SerializerSessionArgs.html
@@ -68,13 +68,13 @@
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
 <li>Nested&nbsp;|&nbsp;</li>
-<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#methods.inherited.from.class.java.lang.Object">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
-<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
 <li>Method</li>
 </ul>
@@ -124,27 +124,6 @@ extends <a href="../../../../org/apache/juneau/BeanSessionArgs.html" title="clas
 <div class="summary">
 <ul class="blockList">
 <li class="blockList">
-<!-- =========== FIELD SUMMARY =========== -->
-<ul class="blockList">
-<li class="blockList"><a name="field.summary">
-<!--   -->
-</a>
-<h3>Field Summary</h3>
-<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
-<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colLast" scope="col">Field and Description</th>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT">DEFAULT</a></span></code>
-<div class="block">Default session arguments.</div>
-</td>
-</tr>
-</table>
-</li>
-</ul>
 <!-- ======== CONSTRUCTOR SUMMARY ======== -->
 <ul class="blockList">
 <li class="blockList"><a name="constructor.summary">
@@ -190,24 +169,6 @@ extends <a href="../../../../org/apache/juneau/BeanSessionArgs.html" title="clas
 <div class="details">
 <ul class="blockList">
 <li class="blockList">
-<!-- ============ FIELD DETAIL =========== -->
-<ul class="blockList">
-<li class="blockList"><a name="field.detail">
-<!--   -->
-</a>
-<h3>Field Detail</h3>
-<a name="DEFAULT">
-<!--   -->
-</a>
-<ul class="blockListLast">
-<li class="blockList">
-<h4>DEFAULT</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a> <a href="../../../../src-html/org/apache/juneau/serializer/SerializerSessionArgs.html#line.32">DEFAULT</a></pre>
-<div class="block">Default session arguments.</div>
-</li>
-</ul>
-</li>
-</ul>
 <!-- ========= CONSTRUCTOR DETAIL ======== -->
 <ul class="blockList">
 <li class="blockList"><a name="constructor.detail">
@@ -220,7 +181,7 @@ extends <a href="../../../../org/apache/juneau/BeanSessionArgs.html" title="clas
 <ul class="blockListLast">
 <li class="blockList">
 <h4>SerializerSessionArgs</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSessionArgs.html#line.60">SerializerSessionArgs</a>(<a href="../../../../org/apache/juneau/ObjectMap.html" title="class in org.apache.juneau">ObjectMap</a>&nbsp;properties,
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/SerializerSessionArgs.html#line.55">SerializerSessionArgs</a>(<a href="../../../../org/apache/juneau/ObjectMap.html" title="class in org.apache.juneau">ObjectMap</a>&nbsp;properties,
                              <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a>&nbsp;javaMethod,
                              <a href="http://docs.oracle.com/javase/7/docs/api/java/util/Locale.html?is-external=true" title="class or interface in java.util">Locale</a>&nbsp;locale,
                              <a href="http://docs.oracle.com/javase/7/docs/api/java/util/TimeZone.html?is-external=true" title="class or interface in java.util">TimeZone</a>&nbsp;timeZone,
@@ -298,13 +259,13 @@ extends <a href="../../../../org/apache/juneau/BeanSessionArgs.html" title="clas
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
 <li>Nested&nbsp;|&nbsp;</li>
-<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#methods.inherited.from.class.java.lang.Object">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
-<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
 <li>Method</li>
 </ul>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/serializer/WriterSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/serializer/WriterSerializer.html b/content/site/apidocs/org/apache/juneau/serializer/WriterSerializer.html
index c0ba779..67b345d 100644
--- a/content/site/apidocs/org/apache/juneau/serializer/WriterSerializer.html
+++ b/content/site/apidocs/org/apache/juneau/serializer/WriterSerializer.html
@@ -122,17 +122,9 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre>public abstract class <a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializer.html#line.30">WriterSerializer</a>
+<pre>public abstract class <a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializer.html#line.21">WriterSerializer</a>
 extends <a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></pre>
-<div class="block">Subclass of <a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer"><code>Serializer</code></a> for character-based serializers.
-
- <h6 class='topic'>@Produces annotation</h6>
-
- The media types that this serializer can produce is specified through the <a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation"><code>@Produces</code></a> annotation.
-
- <p>
- However, the media types can also be specified programmatically by overriding the <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--"><code>Serializer.getMediaTypes()</code></a>
- and <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--"><code>Serializer.getResponseContentType()</code></a> methods.</div>
+<div class="block">Subclass of <a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer"><code>Serializer</code></a> for character-based serializers.</div>
 </li>
 </ul>
 </div>
@@ -168,7 +160,9 @@ extends <a href="../../../../org/apache/juneau/serializer/Serializer.html" title
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected </code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/serializer/WriterSerializer.html#WriterSerializer-org.apache.juneau.PropertyStore-">WriterSerializer</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</code>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/serializer/WriterSerializer.html#WriterSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">WriterSerializer</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+                <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</code>
 <div class="block">Constructor.</div>
 </td>
 </tr>
@@ -229,7 +223,7 @@ extends <a href="../../../../org/apache/juneau/serializer/Serializer.html" title
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#builder--">builder</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#builder--">builder</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -259,17 +253,32 @@ extends <a href="../../../../org/apache/juneau/serializer/Serializer.html" title
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
-<a name="WriterSerializer-org.apache.juneau.PropertyStore-">
+<a name="WriterSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>WriterSerializer</h4>
-<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializer.html#line.37">WriterSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializer.html#line.44">WriterSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                           <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+                           <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+<dd><code>produces</code> - The media type that this serializer produces.</dd>
+<dd><code>accept</code> - The accept media types that the serializer can handle.
+   <p>
+   Can contain meta-characters per the <code>media-type</code> specification of
+   <a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1">RFC2616/14.1</a>
+   <p>
+   If empty, then assumes the only media type supported is <code>produces</code>.
+   <p>
+   For example, if this serializer produces <js>"application/json"</js> but should handle media types of
+   <js>"application/json"</js> and <js>"text/json"</js>, then the arguments should be:
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"application/json"</js>, <js>"text/json"</js>);</code>
+   <br>...or...
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"*&#8203;/json"</js>);</code></dd>
 </dl>
 </li>
 </ul>
@@ -287,7 +296,7 @@ extends <a href="../../../../org/apache/juneau/serializer/Serializer.html" title
 <ul class="blockList">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public abstract&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializer.html#line.47">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
+<pre>public abstract&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializer.html#line.54">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession-org.apache.juneau.serializer.SerializerSessionArgs-">Serializer</a></code></span></div>
 <div class="block">Create the session object used for actual serialization of objects.</div>
 <dl>
@@ -297,8 +306,7 @@ extends <a href="../../../../org/apache/juneau/serializer/Serializer.html" title
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and serializer
-   contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   contexts.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The new session object.
    <br>Note that you must call <a href="../../../../org/apache/juneau/BeanSession.html#close--"><code>BeanSession.close()</code></a> on this object to perform any necessary
@@ -312,7 +320,7 @@ extends <a href="../../../../org/apache/juneau/serializer/Serializer.html" title
 <ul class="blockList">
 <li class="blockList">
 <h4>isWriterSerializer</h4>
-<pre>public final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializer.html#line.55">isWriterSerializer</a>()</pre>
+<pre>public final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializer.html#line.62">isWriterSerializer</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#isWriterSerializer--">Serializer</a></code></span></div>
 <div class="block">Returns <jk>true</jk> if this serializer subclasses from <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html" title="class in org.apache.juneau.serializer"><code>WriterSerializer</code></a>.</div>
 <dl>
@@ -329,7 +337,7 @@ extends <a href="../../../../org/apache/juneau/serializer/Serializer.html" title
 <ul class="blockList">
 <li class="blockList">
 <h4>serialize</h4>
-<pre>public final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializer.html#line.67">serialize</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
+<pre>public final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializer.html#line.74">serialize</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
                        throws <a href="../../../../org/apache/juneau/serializer/SerializeException.html" title="class in org.apache.juneau.serializer">SerializeException</a></pre>
 <div class="block">Convenience method for serializing an object to a <code>String</code>.</div>
 <dl>
@@ -350,7 +358,7 @@ extends <a href="../../../../org/apache/juneau/serializer/Serializer.html" title
 <ul class="blockList">
 <li class="blockList">
 <h4>toString</h4>
-<pre>public final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializer.html#line.80">toString</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</pre>
+<pre>public final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializer.html#line.87">toString</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</pre>
 <div class="block">Identical to <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html#serialize-java.lang.Object-"><code>serialize(Object)</code></a> except throws a <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/RuntimeException.html?is-external=true" title="class or interface in java.lang"><code>RuntimeException</code></a> instead of a <a href="../../../../org/apache/juneau/serializer/SerializeException.html" title="class in org.apache.juneau.serializer"><code>SerializeException</code></a>.
 
  <p>
@@ -369,7 +377,7 @@ extends <a href="../../../../org/apache/juneau/serializer/Serializer.html" title
 <ul class="blockList">
 <li class="blockList">
 <h4>toStringObject</h4>
-<pre>public final&nbsp;<a href="../../../../org/apache/juneau/utils/StringObject.html" title="class in org.apache.juneau.utils">StringObject</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializer.html#line.94">toStringObject</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</pre>
+<pre>public final&nbsp;<a href="../../../../org/apache/juneau/utils/StringObject.html" title="class in org.apache.juneau.utils">StringObject</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializer.html#line.101">toStringObject</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</pre>
 <div class="block">Wraps the specified object inside a <a href="../../../../org/apache/juneau/utils/StringObject.html" title="class in org.apache.juneau.utils"><code>StringObject</code></a>.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -385,7 +393,7 @@ extends <a href="../../../../org/apache/juneau/serializer/Serializer.html" title
 <ul class="blockListLast">
 <li class="blockList">
 <h4>println</h4>
-<pre>public final&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializer.html" title="class in org.apache.juneau.serializer">WriterSerializer</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializer.html#line.104">println</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</pre>
+<pre>public final&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializer.html" title="class in org.apache.juneau.serializer">WriterSerializer</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializer.html#line.111">println</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</pre>
 <div class="block">Convenience method for serializing an object and sending it to STDOUT.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/serializer/WriterSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/serializer/WriterSerializerSession.html b/content/site/apidocs/org/apache/juneau/serializer/WriterSerializerSession.html
index 692770a..b592e51 100644
--- a/content/site/apidocs/org/apache/juneau/serializer/WriterSerializerSession.html
+++ b/content/site/apidocs/org/apache/juneau/serializer/WriterSerializerSession.html
@@ -265,7 +265,7 @@ extends <a href="../../../../org/apache/juneau/serializer/SerializerSession.html
 <ul class="blockList">
 <li class="blockList">
 <h4>WriterSerializerSession</h4>
-<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializerSession.html#line.48">WriterSerializerSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerContext.html" title="class in org.apache.juneau.serializer">SerializerContext</a>&nbsp;ctx,
+<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializerSession.html#line.47">WriterSerializerSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerContext.html" title="class in org.apache.juneau.serializer">SerializerContext</a>&nbsp;ctx,
                                   <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block">Create a new session using properties specified in the context.</div>
 <dl>
@@ -275,8 +275,7 @@ extends <a href="../../../../org/apache/juneau/serializer/SerializerSession.html
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and
-   serializer contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   serializer contexts.</dd>
 </dl>
 </li>
 </ul>
@@ -286,7 +285,7 @@ extends <a href="../../../../org/apache/juneau/serializer/SerializerSession.html
 <ul class="blockListLast">
 <li class="blockList">
 <h4>WriterSerializerSession</h4>
-<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializerSession.html#line.58">WriterSerializerSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
+<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializerSession.html#line.57">WriterSerializerSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block">Constructor for sessions that don't require context.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -308,7 +307,7 @@ extends <a href="../../../../org/apache/juneau/serializer/SerializerSession.html
 <ul class="blockList">
 <li class="blockList">
 <h4>isWriterSerializer</h4>
-<pre>public final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializerSession.html#line.63">isWriterSerializer</a>()</pre>
+<pre>public final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializerSession.html#line.62">isWriterSerializer</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/SerializerSession.html#isWriterSerializer--">SerializerSession</a></code></span></div>
 <div class="block">Returns <jk>true</jk> if this serializer subclasses from <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html" title="class in org.apache.juneau.serializer"><code>WriterSerializer</code></a>.</div>
 <dl>
@@ -325,7 +324,7 @@ extends <a href="../../../../org/apache/juneau/serializer/SerializerSession.html
 <ul class="blockListLast">
 <li class="blockList">
 <h4>serialize</h4>
-<pre>public final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializerSession.html#line.75">serialize</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
+<pre>public final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/WriterSerializerSession.html#line.74">serialize</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
                        throws <a href="../../../../org/apache/juneau/serializer/SerializeException.html" title="class in org.apache.juneau.serializer">SerializeException</a></pre>
 <div class="block">Convenience method for serializing an object to a <code>String</code>.</div>
 <dl>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/serializer/package-summary.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/serializer/package-summary.html b/content/site/apidocs/org/apache/juneau/serializer/package-summary.html
index 8719b90..a66ed17 100644
--- a/content/site/apidocs/org/apache/juneau/serializer/package-summary.html
+++ b/content/site/apidocs/org/apache/juneau/serializer/package-summary.html
@@ -296,8 +296,7 @@
    <p>
       Defining a new serializer is quite simple if you subclass directly from 
       <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html" title="class in org.apache.juneau.serializer"><code>WriterSerializer</code></a>  or <a href="../../../../org/apache/juneau/serializer/OutputStreamSerializer.html" title="class in org.apache.juneau.serializer"><code>OutputStreamSerializer</code></a>.
-      <br>In each case, you simply need to implement a single method and specify a 
-      <a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation"><code>Produces</code></a> annotation.
+      <br>In each case, you simply need to implement a single method .
    </p>
    <p>
       The following example shows a simple serializer that converts images to output streams using standard JRE 
@@ -305,7 +304,6 @@
    </p>
    <p class='bcode'>
    <jd>/** Serializer for converting images to byte streams */</jd>
-   <ja>@Produces</ja>(<js>"image/png,image/jpeg"</js>)
    <jk>public class</jk> ImageSerializer <jk>extends</jk> OutputStreamSerializer {
 
       <jd>/**
@@ -313,7 +311,7 @@
        * <ja>@param</ja> propertyStore The property store containing all the settings for this object.
        */</jd>
       <jk>public</jk> ImageSerializer(PropertyStore propertyStore) {
-         <jk>super</jk>(propertyStore);
+         <jk>super</jk>(propertyStore, <jk>null</jk>, <js>"image/png"</js>, <js>"image/jpeg"</js>);
       }
 
       <ja>@Override</ja> <jc>/* Serializer */</jc>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/soap/SoapXmlSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/soap/SoapXmlSerializer.html b/content/site/apidocs/org/apache/juneau/soap/SoapXmlSerializer.html
index 4307c18..eebbeca 100644
--- a/content/site/apidocs/org/apache/juneau/soap/SoapXmlSerializer.html
+++ b/content/site/apidocs/org/apache/juneau/soap/SoapXmlSerializer.html
@@ -128,9 +128,7 @@ var activeTableTab = "activeTableTab";
 <li class="blockList">
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="text/xml+soap",
-          <a href="../../../../org/apache/juneau/annotation/Produces.html#contentType--">contentType</a>="text/xml")
-public final class <a href="../../../../src-html/org/apache/juneau/soap/SoapXmlSerializer.html#line.43">SoapXmlSerializer</a>
+<pre>public final class <a href="../../../../src-html/org/apache/juneau/soap/SoapXmlSerializer.html#line.41">SoapXmlSerializer</a>
 extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a></pre>
 <div class="block">Serializes POJOs to HTTP responses as XML+SOAP.
 
@@ -252,7 +250,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -288,7 +286,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <ul class="blockListLast">
 <li class="blockList">
 <h4>SoapXmlSerializer</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/soap/SoapXmlSerializer.html#line.52">SoapXmlSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/soap/SoapXmlSerializer.html#line.50">SoapXmlSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -310,7 +308,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/soap/SoapXmlSerializer.html#line.58">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/soap/SoapXmlSerializer.html#line.56">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession-org.apache.juneau.serializer.SerializerSessionArgs-">Serializer</a></code></span></div>
 <div class="block">Create the session object used for actual serialization of objects.</div>
 <dl>
@@ -320,8 +318,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and serializer
-   contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   contexts.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The new session object.
    <br>Note that you must call <a href="../../../../org/apache/juneau/BeanSession.html#close--"><code>BeanSession.close()</code></a> on this object to perform any necessary

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/soap/SoapXmlSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/soap/SoapXmlSerializerSession.html b/content/site/apidocs/org/apache/juneau/soap/SoapXmlSerializerSession.html
index c523589..72353ba 100644
--- a/content/site/apidocs/org/apache/juneau/soap/SoapXmlSerializerSession.html
+++ b/content/site/apidocs/org/apache/juneau/soap/SoapXmlSerializerSession.html
@@ -269,7 +269,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializerSession.html" ti
 <ul class="blockListLast">
 <li class="blockList">
 <h4>SoapXmlSerializerSession</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/soap/SoapXmlSerializerSession.html#line.45">SoapXmlSerializerSession</a>(<a href="../../../../org/apache/juneau/soap/SoapXmlSerializerContext.html" title="class in org.apache.juneau.soap">SoapXmlSerializerContext</a>&nbsp;ctx,
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/soap/SoapXmlSerializerSession.html#line.44">SoapXmlSerializerSession</a>(<a href="../../../../org/apache/juneau/soap/SoapXmlSerializerContext.html" title="class in org.apache.juneau.soap">SoapXmlSerializerContext</a>&nbsp;ctx,
                                 <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block">Create a new session using properties specified in the context.</div>
 <dl>
@@ -279,8 +279,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializerSession.html" ti
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and
-   serializer contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   serializer contexts.</dd>
 </dl>
 </li>
 </ul>
@@ -298,7 +297,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializerSession.html" ti
 <ul class="blockList">
 <li class="blockList">
 <h4>doSerialize</h4>
-<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/soap/SoapXmlSerializerSession.html#line.54">doSerialize</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out,
+<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/soap/SoapXmlSerializerSession.html#line.53">doSerialize</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out,
                            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
                     throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/SerializerSession.html#doSerialize-org.apache.juneau.serializer.SerializerPipe-java.lang.Object-">SerializerSession</a></code></span></div>
@@ -323,7 +322,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializerSession.html" ti
 <ul class="blockListLast">
 <li class="blockList">
 <h4>getResponseHeaders</h4>
-<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/soap/SoapXmlSerializerSession.html#line.72">getResponseHeaders</a>()</pre>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/soap/SoapXmlSerializerSession.html#line.71">getResponseHeaders</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/SerializerSession.html#getResponseHeaders--">SerializerSession</a></code></span></div>
 <div class="block">Optional method that specifies HTTP request headers for this serializer.
 


[08/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/xml/XmlDocSerializer.Ns.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlDocSerializer.Ns.html b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlDocSerializer.Ns.html
index 85a5cb4..76c11ea 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlDocSerializer.Ns.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlDocSerializer.Ns.html
@@ -23,55 +23,53 @@
 <span class="sourceLineNo">015</span>import static org.apache.juneau.xml.XmlSerializerContext.*;<a name="line.15"></a>
 <span class="sourceLineNo">016</span><a name="line.16"></a>
 <span class="sourceLineNo">017</span>import org.apache.juneau.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span>import org.apache.juneau.annotation.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.serializer.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span><a name="line.20"></a>
-<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
-<span class="sourceLineNo">022</span> * Serializes POJOs to HTTP responses as XML.<a name="line.22"></a>
-<span class="sourceLineNo">023</span> *<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * &lt;p&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> *<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * Same as {@link XmlSerializer}, except prepends &lt;code&gt;&lt;xt&gt;&amp;lt;?xml&lt;/xt&gt; &lt;xa&gt;version&lt;/xa&gt;=&lt;xs&gt;'1.0'&lt;/xs&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * &lt;xa&gt;encoding&lt;/xa&gt;=&lt;xs&gt;'UTF-8'&lt;/xs&gt;&lt;xt&gt;?&amp;gt;&lt;/xt&gt;&lt;/code&gt; to the response to make it a valid XML document.<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *<a name="line.35"></a>
-<span class="sourceLineNo">036</span> */<a name="line.36"></a>
-<span class="sourceLineNo">037</span>public class XmlDocSerializer extends XmlSerializer {<a name="line.37"></a>
-<span class="sourceLineNo">038</span><a name="line.38"></a>
-<span class="sourceLineNo">039</span>   /** Default serializer without namespaces. */<a name="line.39"></a>
-<span class="sourceLineNo">040</span>   @Produces(value="text/xml",contentType="text/xml")<a name="line.40"></a>
-<span class="sourceLineNo">041</span>   public static class Ns extends XmlDocSerializer {<a name="line.41"></a>
-<span class="sourceLineNo">042</span><a name="line.42"></a>
-<span class="sourceLineNo">043</span>      /**<a name="line.43"></a>
-<span class="sourceLineNo">044</span>       * Constructor.<a name="line.44"></a>
-<span class="sourceLineNo">045</span>       *<a name="line.45"></a>
-<span class="sourceLineNo">046</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.46"></a>
-<span class="sourceLineNo">047</span>       */<a name="line.47"></a>
-<span class="sourceLineNo">048</span>      public Ns(PropertyStore propertyStore) {<a name="line.48"></a>
-<span class="sourceLineNo">049</span>         super(propertyStore.copy().append(XML_enableNamespaces, true));<a name="line.49"></a>
-<span class="sourceLineNo">050</span>      }<a name="line.50"></a>
-<span class="sourceLineNo">051</span>   }<a name="line.51"></a>
-<span class="sourceLineNo">052</span><a name="line.52"></a>
-<span class="sourceLineNo">053</span>   /**<a name="line.53"></a>
-<span class="sourceLineNo">054</span>    * Constructor.<a name="line.54"></a>
-<span class="sourceLineNo">055</span>    *<a name="line.55"></a>
-<span class="sourceLineNo">056</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.56"></a>
-<span class="sourceLineNo">057</span>    */<a name="line.57"></a>
-<span class="sourceLineNo">058</span>   public XmlDocSerializer(PropertyStore propertyStore) {<a name="line.58"></a>
-<span class="sourceLineNo">059</span>      super(propertyStore);<a name="line.59"></a>
-<span class="sourceLineNo">060</span>   }<a name="line.60"></a>
-<span class="sourceLineNo">061</span><a name="line.61"></a>
-<span class="sourceLineNo">062</span>   @Override /* Serializer */<a name="line.62"></a>
-<span class="sourceLineNo">063</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.63"></a>
-<span class="sourceLineNo">064</span>      return new XmlDocSerializerSession(ctx, args);<a name="line.64"></a>
-<span class="sourceLineNo">065</span>   }<a name="line.65"></a>
-<span class="sourceLineNo">066</span>}<a name="line.66"></a>
+<span class="sourceLineNo">018</span>import org.apache.juneau.serializer.*;<a name="line.18"></a>
+<span class="sourceLineNo">019</span><a name="line.19"></a>
+<span class="sourceLineNo">020</span>/**<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * Serializes POJOs to HTTP responses as XML.<a name="line.21"></a>
+<span class="sourceLineNo">022</span> *<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * &lt;p&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.28"></a>
+<span class="sourceLineNo">029</span> *<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * Same as {@link XmlSerializer}, except prepends &lt;code&gt;&lt;xt&gt;&amp;lt;?xml&lt;/xt&gt; &lt;xa&gt;version&lt;/xa&gt;=&lt;xs&gt;'1.0'&lt;/xs&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * &lt;xa&gt;encoding&lt;/xa&gt;=&lt;xs&gt;'UTF-8'&lt;/xs&gt;&lt;xt&gt;?&amp;gt;&lt;/xt&gt;&lt;/code&gt; to the response to make it a valid XML document.<a name="line.33"></a>
+<span class="sourceLineNo">034</span> *<a name="line.34"></a>
+<span class="sourceLineNo">035</span> */<a name="line.35"></a>
+<span class="sourceLineNo">036</span>public class XmlDocSerializer extends XmlSerializer {<a name="line.36"></a>
+<span class="sourceLineNo">037</span><a name="line.37"></a>
+<span class="sourceLineNo">038</span>   /** Default serializer without namespaces. */<a name="line.38"></a>
+<span class="sourceLineNo">039</span>   public static class Ns extends XmlDocSerializer {<a name="line.39"></a>
+<span class="sourceLineNo">040</span><a name="line.40"></a>
+<span class="sourceLineNo">041</span>      /**<a name="line.41"></a>
+<span class="sourceLineNo">042</span>       * Constructor.<a name="line.42"></a>
+<span class="sourceLineNo">043</span>       *<a name="line.43"></a>
+<span class="sourceLineNo">044</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.44"></a>
+<span class="sourceLineNo">045</span>       */<a name="line.45"></a>
+<span class="sourceLineNo">046</span>      public Ns(PropertyStore propertyStore) {<a name="line.46"></a>
+<span class="sourceLineNo">047</span>         super(propertyStore.copy().append(XML_enableNamespaces, true));<a name="line.47"></a>
+<span class="sourceLineNo">048</span>      }<a name="line.48"></a>
+<span class="sourceLineNo">049</span>   }<a name="line.49"></a>
+<span class="sourceLineNo">050</span><a name="line.50"></a>
+<span class="sourceLineNo">051</span>   /**<a name="line.51"></a>
+<span class="sourceLineNo">052</span>    * Constructor.<a name="line.52"></a>
+<span class="sourceLineNo">053</span>    *<a name="line.53"></a>
+<span class="sourceLineNo">054</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.54"></a>
+<span class="sourceLineNo">055</span>    */<a name="line.55"></a>
+<span class="sourceLineNo">056</span>   public XmlDocSerializer(PropertyStore propertyStore) {<a name="line.56"></a>
+<span class="sourceLineNo">057</span>      super(propertyStore);<a name="line.57"></a>
+<span class="sourceLineNo">058</span>   }<a name="line.58"></a>
+<span class="sourceLineNo">059</span><a name="line.59"></a>
+<span class="sourceLineNo">060</span>   @Override /* Serializer */<a name="line.60"></a>
+<span class="sourceLineNo">061</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.61"></a>
+<span class="sourceLineNo">062</span>      return new XmlDocSerializerSession(ctx, args);<a name="line.62"></a>
+<span class="sourceLineNo">063</span>   }<a name="line.63"></a>
+<span class="sourceLineNo">064</span>}<a name="line.64"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/xml/XmlDocSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlDocSerializer.html b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlDocSerializer.html
index 85a5cb4..76c11ea 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlDocSerializer.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlDocSerializer.html
@@ -23,55 +23,53 @@
 <span class="sourceLineNo">015</span>import static org.apache.juneau.xml.XmlSerializerContext.*;<a name="line.15"></a>
 <span class="sourceLineNo">016</span><a name="line.16"></a>
 <span class="sourceLineNo">017</span>import org.apache.juneau.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span>import org.apache.juneau.annotation.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.serializer.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span><a name="line.20"></a>
-<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
-<span class="sourceLineNo">022</span> * Serializes POJOs to HTTP responses as XML.<a name="line.22"></a>
-<span class="sourceLineNo">023</span> *<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * &lt;p&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> *<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * Same as {@link XmlSerializer}, except prepends &lt;code&gt;&lt;xt&gt;&amp;lt;?xml&lt;/xt&gt; &lt;xa&gt;version&lt;/xa&gt;=&lt;xs&gt;'1.0'&lt;/xs&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * &lt;xa&gt;encoding&lt;/xa&gt;=&lt;xs&gt;'UTF-8'&lt;/xs&gt;&lt;xt&gt;?&amp;gt;&lt;/xt&gt;&lt;/code&gt; to the response to make it a valid XML document.<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *<a name="line.35"></a>
-<span class="sourceLineNo">036</span> */<a name="line.36"></a>
-<span class="sourceLineNo">037</span>public class XmlDocSerializer extends XmlSerializer {<a name="line.37"></a>
-<span class="sourceLineNo">038</span><a name="line.38"></a>
-<span class="sourceLineNo">039</span>   /** Default serializer without namespaces. */<a name="line.39"></a>
-<span class="sourceLineNo">040</span>   @Produces(value="text/xml",contentType="text/xml")<a name="line.40"></a>
-<span class="sourceLineNo">041</span>   public static class Ns extends XmlDocSerializer {<a name="line.41"></a>
-<span class="sourceLineNo">042</span><a name="line.42"></a>
-<span class="sourceLineNo">043</span>      /**<a name="line.43"></a>
-<span class="sourceLineNo">044</span>       * Constructor.<a name="line.44"></a>
-<span class="sourceLineNo">045</span>       *<a name="line.45"></a>
-<span class="sourceLineNo">046</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.46"></a>
-<span class="sourceLineNo">047</span>       */<a name="line.47"></a>
-<span class="sourceLineNo">048</span>      public Ns(PropertyStore propertyStore) {<a name="line.48"></a>
-<span class="sourceLineNo">049</span>         super(propertyStore.copy().append(XML_enableNamespaces, true));<a name="line.49"></a>
-<span class="sourceLineNo">050</span>      }<a name="line.50"></a>
-<span class="sourceLineNo">051</span>   }<a name="line.51"></a>
-<span class="sourceLineNo">052</span><a name="line.52"></a>
-<span class="sourceLineNo">053</span>   /**<a name="line.53"></a>
-<span class="sourceLineNo">054</span>    * Constructor.<a name="line.54"></a>
-<span class="sourceLineNo">055</span>    *<a name="line.55"></a>
-<span class="sourceLineNo">056</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.56"></a>
-<span class="sourceLineNo">057</span>    */<a name="line.57"></a>
-<span class="sourceLineNo">058</span>   public XmlDocSerializer(PropertyStore propertyStore) {<a name="line.58"></a>
-<span class="sourceLineNo">059</span>      super(propertyStore);<a name="line.59"></a>
-<span class="sourceLineNo">060</span>   }<a name="line.60"></a>
-<span class="sourceLineNo">061</span><a name="line.61"></a>
-<span class="sourceLineNo">062</span>   @Override /* Serializer */<a name="line.62"></a>
-<span class="sourceLineNo">063</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.63"></a>
-<span class="sourceLineNo">064</span>      return new XmlDocSerializerSession(ctx, args);<a name="line.64"></a>
-<span class="sourceLineNo">065</span>   }<a name="line.65"></a>
-<span class="sourceLineNo">066</span>}<a name="line.66"></a>
+<span class="sourceLineNo">018</span>import org.apache.juneau.serializer.*;<a name="line.18"></a>
+<span class="sourceLineNo">019</span><a name="line.19"></a>
+<span class="sourceLineNo">020</span>/**<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * Serializes POJOs to HTTP responses as XML.<a name="line.21"></a>
+<span class="sourceLineNo">022</span> *<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * &lt;p&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.28"></a>
+<span class="sourceLineNo">029</span> *<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * Same as {@link XmlSerializer}, except prepends &lt;code&gt;&lt;xt&gt;&amp;lt;?xml&lt;/xt&gt; &lt;xa&gt;version&lt;/xa&gt;=&lt;xs&gt;'1.0'&lt;/xs&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * &lt;xa&gt;encoding&lt;/xa&gt;=&lt;xs&gt;'UTF-8'&lt;/xs&gt;&lt;xt&gt;?&amp;gt;&lt;/xt&gt;&lt;/code&gt; to the response to make it a valid XML document.<a name="line.33"></a>
+<span class="sourceLineNo">034</span> *<a name="line.34"></a>
+<span class="sourceLineNo">035</span> */<a name="line.35"></a>
+<span class="sourceLineNo">036</span>public class XmlDocSerializer extends XmlSerializer {<a name="line.36"></a>
+<span class="sourceLineNo">037</span><a name="line.37"></a>
+<span class="sourceLineNo">038</span>   /** Default serializer without namespaces. */<a name="line.38"></a>
+<span class="sourceLineNo">039</span>   public static class Ns extends XmlDocSerializer {<a name="line.39"></a>
+<span class="sourceLineNo">040</span><a name="line.40"></a>
+<span class="sourceLineNo">041</span>      /**<a name="line.41"></a>
+<span class="sourceLineNo">042</span>       * Constructor.<a name="line.42"></a>
+<span class="sourceLineNo">043</span>       *<a name="line.43"></a>
+<span class="sourceLineNo">044</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.44"></a>
+<span class="sourceLineNo">045</span>       */<a name="line.45"></a>
+<span class="sourceLineNo">046</span>      public Ns(PropertyStore propertyStore) {<a name="line.46"></a>
+<span class="sourceLineNo">047</span>         super(propertyStore.copy().append(XML_enableNamespaces, true));<a name="line.47"></a>
+<span class="sourceLineNo">048</span>      }<a name="line.48"></a>
+<span class="sourceLineNo">049</span>   }<a name="line.49"></a>
+<span class="sourceLineNo">050</span><a name="line.50"></a>
+<span class="sourceLineNo">051</span>   /**<a name="line.51"></a>
+<span class="sourceLineNo">052</span>    * Constructor.<a name="line.52"></a>
+<span class="sourceLineNo">053</span>    *<a name="line.53"></a>
+<span class="sourceLineNo">054</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.54"></a>
+<span class="sourceLineNo">055</span>    */<a name="line.55"></a>
+<span class="sourceLineNo">056</span>   public XmlDocSerializer(PropertyStore propertyStore) {<a name="line.56"></a>
+<span class="sourceLineNo">057</span>      super(propertyStore);<a name="line.57"></a>
+<span class="sourceLineNo">058</span>   }<a name="line.58"></a>
+<span class="sourceLineNo">059</span><a name="line.59"></a>
+<span class="sourceLineNo">060</span>   @Override /* Serializer */<a name="line.60"></a>
+<span class="sourceLineNo">061</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.61"></a>
+<span class="sourceLineNo">062</span>      return new XmlDocSerializerSession(ctx, args);<a name="line.62"></a>
+<span class="sourceLineNo">063</span>   }<a name="line.63"></a>
+<span class="sourceLineNo">064</span>}<a name="line.64"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/xml/XmlDocSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlDocSerializerSession.html b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlDocSerializerSession.html
index 69825b3..5a12fa3 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlDocSerializerSession.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlDocSerializerSession.html
@@ -42,23 +42,22 @@
 <span class="sourceLineNo">034</span>    *    These specify session-level information such as locale and URI context.<a name="line.34"></a>
 <span class="sourceLineNo">035</span>    *    It also include session-level properties that override the properties defined on the bean and<a name="line.35"></a>
 <span class="sourceLineNo">036</span>    *    serializer contexts.<a name="line.36"></a>
-<span class="sourceLineNo">037</span>    *    &lt;br&gt;If &lt;jk&gt;null&lt;/jk&gt;, defaults to {@link SerializerSessionArgs#DEFAULT}.<a name="line.37"></a>
-<span class="sourceLineNo">038</span>    */<a name="line.38"></a>
-<span class="sourceLineNo">039</span>   protected XmlDocSerializerSession(XmlSerializerContext ctx, SerializerSessionArgs args) {<a name="line.39"></a>
-<span class="sourceLineNo">040</span>      super(ctx, args);<a name="line.40"></a>
-<span class="sourceLineNo">041</span>   }<a name="line.41"></a>
-<span class="sourceLineNo">042</span><a name="line.42"></a>
-<span class="sourceLineNo">043</span>   @Override /* SerializerSession */<a name="line.43"></a>
-<span class="sourceLineNo">044</span>   protected void doSerialize(SerializerPipe out, Object o) throws Exception {<a name="line.44"></a>
-<span class="sourceLineNo">045</span>      XmlWriter w = getXmlWriter(out);<a name="line.45"></a>
-<span class="sourceLineNo">046</span>      w.append("&lt;?xml")<a name="line.46"></a>
-<span class="sourceLineNo">047</span>         .attr("version", "1.0")<a name="line.47"></a>
-<span class="sourceLineNo">048</span>         .attr("encoding", "UTF-8")<a name="line.48"></a>
-<span class="sourceLineNo">049</span>         .appendln("?&gt;");<a name="line.49"></a>
-<span class="sourceLineNo">050</span>      w.flush();<a name="line.50"></a>
-<span class="sourceLineNo">051</span>      super.doSerialize(out, o);<a name="line.51"></a>
-<span class="sourceLineNo">052</span>   }<a name="line.52"></a>
-<span class="sourceLineNo">053</span>}<a name="line.53"></a>
+<span class="sourceLineNo">037</span>    */<a name="line.37"></a>
+<span class="sourceLineNo">038</span>   protected XmlDocSerializerSession(XmlSerializerContext ctx, SerializerSessionArgs args) {<a name="line.38"></a>
+<span class="sourceLineNo">039</span>      super(ctx, args);<a name="line.39"></a>
+<span class="sourceLineNo">040</span>   }<a name="line.40"></a>
+<span class="sourceLineNo">041</span><a name="line.41"></a>
+<span class="sourceLineNo">042</span>   @Override /* SerializerSession */<a name="line.42"></a>
+<span class="sourceLineNo">043</span>   protected void doSerialize(SerializerPipe out, Object o) throws Exception {<a name="line.43"></a>
+<span class="sourceLineNo">044</span>      XmlWriter w = getXmlWriter(out);<a name="line.44"></a>
+<span class="sourceLineNo">045</span>      w.append("&lt;?xml")<a name="line.45"></a>
+<span class="sourceLineNo">046</span>         .attr("version", "1.0")<a name="line.46"></a>
+<span class="sourceLineNo">047</span>         .attr("encoding", "UTF-8")<a name="line.47"></a>
+<span class="sourceLineNo">048</span>         .appendln("?&gt;");<a name="line.48"></a>
+<span class="sourceLineNo">049</span>      w.flush();<a name="line.49"></a>
+<span class="sourceLineNo">050</span>      super.doSerialize(out, o);<a name="line.50"></a>
+<span class="sourceLineNo">051</span>   }<a name="line.51"></a>
+<span class="sourceLineNo">052</span>}<a name="line.52"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/xml/XmlParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlParser.html b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlParser.html
index e6d63f7..b530bc5 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlParser.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlParser.html
@@ -21,57 +21,68 @@
 <span class="sourceLineNo">013</span>package org.apache.juneau.xml;<a name="line.13"></a>
 <span class="sourceLineNo">014</span><a name="line.14"></a>
 <span class="sourceLineNo">015</span>import org.apache.juneau.*;<a name="line.15"></a>
-<span class="sourceLineNo">016</span>import org.apache.juneau.annotation.*;<a name="line.16"></a>
-<span class="sourceLineNo">017</span>import org.apache.juneau.parser.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span><a name="line.18"></a>
-<span class="sourceLineNo">019</span>/**<a name="line.19"></a>
-<span class="sourceLineNo">020</span> * Parses text generated by the {@link XmlSerializer} class back into a POJO model.<a name="line.20"></a>
-<span class="sourceLineNo">021</span> *<a name="line.21"></a>
-<span class="sourceLineNo">022</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.22"></a>
-<span class="sourceLineNo">023</span> *<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * Handles &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * See the {@link XmlSerializer} class for a description of Juneau-generated XML.<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> *<a name="line.31"></a>
-<span class="sourceLineNo">032</span> * This class has the following properties associated with it:<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;ul&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *    &lt;li&gt;{@link XmlParserContext}<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *    &lt;li&gt;{@link BeanContext}<a name="line.35"></a>
-<span class="sourceLineNo">036</span> * &lt;/ul&gt;<a name="line.36"></a>
-<span class="sourceLineNo">037</span> */<a name="line.37"></a>
-<span class="sourceLineNo">038</span>@Consumes("text/xml,application/xml")<a name="line.38"></a>
-<span class="sourceLineNo">039</span>public class XmlParser extends ReaderParser {<a name="line.39"></a>
-<span class="sourceLineNo">040</span><a name="line.40"></a>
-<span class="sourceLineNo">041</span>   /** Default parser, all default settings.*/<a name="line.41"></a>
-<span class="sourceLineNo">042</span>   public static final XmlParser DEFAULT = new XmlParser(PropertyStore.create());<a name="line.42"></a>
-<span class="sourceLineNo">043</span><a name="line.43"></a>
+<span class="sourceLineNo">016</span>import org.apache.juneau.parser.*;<a name="line.16"></a>
+<span class="sourceLineNo">017</span><a name="line.17"></a>
+<span class="sourceLineNo">018</span>/**<a name="line.18"></a>
+<span class="sourceLineNo">019</span> * Parses text generated by the {@link XmlSerializer} class back into a POJO model.<a name="line.19"></a>
+<span class="sourceLineNo">020</span> *<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.21"></a>
+<span class="sourceLineNo">022</span> *<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * Handles &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * See the {@link XmlSerializer} class for a description of Juneau-generated XML.<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> *<a name="line.30"></a>
+<span class="sourceLineNo">031</span> * This class has the following properties associated with it:<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;ul&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *    &lt;li&gt;{@link XmlParserContext}<a name="line.33"></a>
+<span class="sourceLineNo">034</span> *    &lt;li&gt;{@link BeanContext}<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * &lt;/ul&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span> */<a name="line.36"></a>
+<span class="sourceLineNo">037</span>public class XmlParser extends ReaderParser {<a name="line.37"></a>
+<span class="sourceLineNo">038</span><a name="line.38"></a>
+<span class="sourceLineNo">039</span>   /** Default parser, all default settings.*/<a name="line.39"></a>
+<span class="sourceLineNo">040</span>   public static final XmlParser DEFAULT = new XmlParser(PropertyStore.create());<a name="line.40"></a>
+<span class="sourceLineNo">041</span><a name="line.41"></a>
+<span class="sourceLineNo">042</span><a name="line.42"></a>
+<span class="sourceLineNo">043</span>   private final XmlParserContext ctx;<a name="line.43"></a>
 <span class="sourceLineNo">044</span><a name="line.44"></a>
-<span class="sourceLineNo">045</span>   private final XmlParserContext ctx;<a name="line.45"></a>
-<span class="sourceLineNo">046</span><a name="line.46"></a>
-<span class="sourceLineNo">047</span>   /**<a name="line.47"></a>
-<span class="sourceLineNo">048</span>    * Constructor.<a name="line.48"></a>
-<span class="sourceLineNo">049</span>    *<a name="line.49"></a>
-<span class="sourceLineNo">050</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.50"></a>
-<span class="sourceLineNo">051</span>    */<a name="line.51"></a>
-<span class="sourceLineNo">052</span>   public XmlParser(PropertyStore propertyStore) {<a name="line.52"></a>
-<span class="sourceLineNo">053</span>      super(propertyStore);<a name="line.53"></a>
-<span class="sourceLineNo">054</span>      this.ctx = createContext(XmlParserContext.class);<a name="line.54"></a>
-<span class="sourceLineNo">055</span>   }<a name="line.55"></a>
-<span class="sourceLineNo">056</span><a name="line.56"></a>
-<span class="sourceLineNo">057</span>   @Override /* CoreObject */<a name="line.57"></a>
-<span class="sourceLineNo">058</span>   public XmlParserBuilder builder() {<a name="line.58"></a>
-<span class="sourceLineNo">059</span>      return new XmlParserBuilder(propertyStore);<a name="line.59"></a>
-<span class="sourceLineNo">060</span>   }<a name="line.60"></a>
-<span class="sourceLineNo">061</span><a name="line.61"></a>
-<span class="sourceLineNo">062</span>   @Override /* Parser */<a name="line.62"></a>
-<span class="sourceLineNo">063</span>   public ReaderParserSession createSession(ParserSessionArgs args) {<a name="line.63"></a>
-<span class="sourceLineNo">064</span>      return new XmlParserSession(ctx, args);<a name="line.64"></a>
-<span class="sourceLineNo">065</span>   }<a name="line.65"></a>
-<span class="sourceLineNo">066</span>}<a name="line.66"></a>
+<span class="sourceLineNo">045</span>   /**<a name="line.45"></a>
+<span class="sourceLineNo">046</span>    * Constructor.<a name="line.46"></a>
+<span class="sourceLineNo">047</span>    *<a name="line.47"></a>
+<span class="sourceLineNo">048</span>    * @param propertyStore<a name="line.48"></a>
+<span class="sourceLineNo">049</span>    *    The property store containing all the settings for this object.<a name="line.49"></a>
+<span class="sourceLineNo">050</span>    */<a name="line.50"></a>
+<span class="sourceLineNo">051</span>   public XmlParser(PropertyStore propertyStore) {<a name="line.51"></a>
+<span class="sourceLineNo">052</span>      this(propertyStore, "text/xml", "application/xml");<a name="line.52"></a>
+<span class="sourceLineNo">053</span>   }<a name="line.53"></a>
+<span class="sourceLineNo">054</span><a name="line.54"></a>
+<span class="sourceLineNo">055</span>   /**<a name="line.55"></a>
+<span class="sourceLineNo">056</span>    * Constructor.<a name="line.56"></a>
+<span class="sourceLineNo">057</span>    *<a name="line.57"></a>
+<span class="sourceLineNo">058</span>    * @param propertyStore<a name="line.58"></a>
+<span class="sourceLineNo">059</span>    *    The property store containing all the settings for this object.<a name="line.59"></a>
+<span class="sourceLineNo">060</span>    * @param consumes<a name="line.60"></a>
+<span class="sourceLineNo">061</span>    *    The list of media types that this parser consumes (e.g. &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;).<a name="line.61"></a>
+<span class="sourceLineNo">062</span>    */<a name="line.62"></a>
+<span class="sourceLineNo">063</span>   public XmlParser(PropertyStore propertyStore, String...consumes) {<a name="line.63"></a>
+<span class="sourceLineNo">064</span>      super(propertyStore, consumes);<a name="line.64"></a>
+<span class="sourceLineNo">065</span>      this.ctx = createContext(XmlParserContext.class);<a name="line.65"></a>
+<span class="sourceLineNo">066</span>   }<a name="line.66"></a>
+<span class="sourceLineNo">067</span><a name="line.67"></a>
+<span class="sourceLineNo">068</span>   @Override /* CoreObject */<a name="line.68"></a>
+<span class="sourceLineNo">069</span>   public XmlParserBuilder builder() {<a name="line.69"></a>
+<span class="sourceLineNo">070</span>      return new XmlParserBuilder(propertyStore);<a name="line.70"></a>
+<span class="sourceLineNo">071</span>   }<a name="line.71"></a>
+<span class="sourceLineNo">072</span><a name="line.72"></a>
+<span class="sourceLineNo">073</span>   @Override /* Parser */<a name="line.73"></a>
+<span class="sourceLineNo">074</span>   public ReaderParserSession createSession(ParserSessionArgs args) {<a name="line.74"></a>
+<span class="sourceLineNo">075</span>      return new XmlParserSession(ctx, args);<a name="line.75"></a>
+<span class="sourceLineNo">076</span>   }<a name="line.76"></a>
+<span class="sourceLineNo">077</span>}<a name="line.77"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSchemaDocSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSchemaDocSerializerSession.html b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSchemaDocSerializerSession.html
index 9fd3a38..6afafb2 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSchemaDocSerializerSession.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSchemaDocSerializerSession.html
@@ -42,23 +42,22 @@
 <span class="sourceLineNo">034</span>    *    These specify session-level information such as locale and URI context.<a name="line.34"></a>
 <span class="sourceLineNo">035</span>    *    It also include session-level properties that override the properties defined on the bean and<a name="line.35"></a>
 <span class="sourceLineNo">036</span>    *    serializer contexts.<a name="line.36"></a>
-<span class="sourceLineNo">037</span>    *    &lt;br&gt;If &lt;jk&gt;null&lt;/jk&gt;, defaults to {@link SerializerSessionArgs#DEFAULT}.<a name="line.37"></a>
-<span class="sourceLineNo">038</span>    */<a name="line.38"></a>
-<span class="sourceLineNo">039</span>   protected XmlSchemaDocSerializerSession(XmlSerializerContext ctx, SerializerSessionArgs args) {<a name="line.39"></a>
-<span class="sourceLineNo">040</span>      super(ctx, args);<a name="line.40"></a>
-<span class="sourceLineNo">041</span>   }<a name="line.41"></a>
-<span class="sourceLineNo">042</span><a name="line.42"></a>
-<span class="sourceLineNo">043</span>   @Override /* SerializerSession */<a name="line.43"></a>
-<span class="sourceLineNo">044</span>   protected void doSerialize(SerializerPipe out, Object o) throws Exception {<a name="line.44"></a>
-<span class="sourceLineNo">045</span>      XmlWriter w = getXmlWriter(out);<a name="line.45"></a>
-<span class="sourceLineNo">046</span>      w.append("&lt;?xml")<a name="line.46"></a>
-<span class="sourceLineNo">047</span>         .attr("version", "1.0")<a name="line.47"></a>
-<span class="sourceLineNo">048</span>         .attr("encoding", "UTF-8")<a name="line.48"></a>
-<span class="sourceLineNo">049</span>         .appendln("?&gt;");<a name="line.49"></a>
-<span class="sourceLineNo">050</span>      w.flush();<a name="line.50"></a>
-<span class="sourceLineNo">051</span>      super.doSerialize(out, o);<a name="line.51"></a>
-<span class="sourceLineNo">052</span>   }<a name="line.52"></a>
-<span class="sourceLineNo">053</span>}<a name="line.53"></a>
+<span class="sourceLineNo">037</span>    */<a name="line.37"></a>
+<span class="sourceLineNo">038</span>   protected XmlSchemaDocSerializerSession(XmlSerializerContext ctx, SerializerSessionArgs args) {<a name="line.38"></a>
+<span class="sourceLineNo">039</span>      super(ctx, args);<a name="line.39"></a>
+<span class="sourceLineNo">040</span>   }<a name="line.40"></a>
+<span class="sourceLineNo">041</span><a name="line.41"></a>
+<span class="sourceLineNo">042</span>   @Override /* SerializerSession */<a name="line.42"></a>
+<span class="sourceLineNo">043</span>   protected void doSerialize(SerializerPipe out, Object o) throws Exception {<a name="line.43"></a>
+<span class="sourceLineNo">044</span>      XmlWriter w = getXmlWriter(out);<a name="line.44"></a>
+<span class="sourceLineNo">045</span>      w.append("&lt;?xml")<a name="line.45"></a>
+<span class="sourceLineNo">046</span>         .attr("version", "1.0")<a name="line.46"></a>
+<span class="sourceLineNo">047</span>         .attr("encoding", "UTF-8")<a name="line.47"></a>
+<span class="sourceLineNo">048</span>         .appendln("?&gt;");<a name="line.48"></a>
+<span class="sourceLineNo">049</span>      w.flush();<a name="line.49"></a>
+<span class="sourceLineNo">050</span>      super.doSerialize(out, o);<a name="line.50"></a>
+<span class="sourceLineNo">051</span>   }<a name="line.51"></a>
+<span class="sourceLineNo">052</span>}<a name="line.52"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSchemaSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSchemaSerializer.html b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSchemaSerializer.html
index d37360b..a880ea8 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSchemaSerializer.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSchemaSerializer.html
@@ -21,48 +21,46 @@
 <span class="sourceLineNo">013</span>package org.apache.juneau.xml;<a name="line.13"></a>
 <span class="sourceLineNo">014</span><a name="line.14"></a>
 <span class="sourceLineNo">015</span>import org.apache.juneau.*;<a name="line.15"></a>
-<span class="sourceLineNo">016</span>import org.apache.juneau.annotation.*;<a name="line.16"></a>
-<span class="sourceLineNo">017</span>import org.apache.juneau.serializer.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span><a name="line.18"></a>
-<span class="sourceLineNo">019</span>/**<a name="line.19"></a>
-<span class="sourceLineNo">020</span> * Serializes POJO metadata to HTTP responses as XML.<a name="line.20"></a>
-<span class="sourceLineNo">021</span> *<a name="line.21"></a>
-<span class="sourceLineNo">022</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.22"></a>
-<span class="sourceLineNo">023</span> *<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/xml+schema&lt;/code&gt;<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * &lt;p&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> *<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> *<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * Produces the XML-schema representation of the XML produced by the {@link XmlSerializer} class with the same properties.<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * This class has the following properties associated with it:<a name="line.35"></a>
-<span class="sourceLineNo">036</span> * &lt;ul&gt;<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *    &lt;li&gt;{@link XmlSerializerContext}<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;{@link BeanContext}<a name="line.38"></a>
-<span class="sourceLineNo">039</span> * &lt;/ul&gt;<a name="line.39"></a>
-<span class="sourceLineNo">040</span> */<a name="line.40"></a>
-<span class="sourceLineNo">041</span>@Produces(value="text/xml+schema",contentType="text/xml")<a name="line.41"></a>
-<span class="sourceLineNo">042</span>public class XmlSchemaSerializer extends XmlSerializer {<a name="line.42"></a>
-<span class="sourceLineNo">043</span><a name="line.43"></a>
-<span class="sourceLineNo">044</span>   /**<a name="line.44"></a>
-<span class="sourceLineNo">045</span>    * Constructor.<a name="line.45"></a>
-<span class="sourceLineNo">046</span>    *<a name="line.46"></a>
-<span class="sourceLineNo">047</span>    * @param propertyStore Initialize with the specified config property store.<a name="line.47"></a>
-<span class="sourceLineNo">048</span>    */<a name="line.48"></a>
-<span class="sourceLineNo">049</span>   public XmlSchemaSerializer(PropertyStore propertyStore) {<a name="line.49"></a>
-<span class="sourceLineNo">050</span>      super(propertyStore.copy().append(XmlSerializerContext.XML_enableNamespaces, true));<a name="line.50"></a>
-<span class="sourceLineNo">051</span>   }<a name="line.51"></a>
-<span class="sourceLineNo">052</span><a name="line.52"></a>
-<span class="sourceLineNo">053</span>   @Override /* Serializer */<a name="line.53"></a>
-<span class="sourceLineNo">054</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.54"></a>
-<span class="sourceLineNo">055</span>      return new XmlSchemaSerializerSession(ctx, args);<a name="line.55"></a>
-<span class="sourceLineNo">056</span>   }<a name="line.56"></a>
-<span class="sourceLineNo">057</span>}<a name="line.57"></a>
+<span class="sourceLineNo">016</span>import org.apache.juneau.serializer.*;<a name="line.16"></a>
+<span class="sourceLineNo">017</span><a name="line.17"></a>
+<span class="sourceLineNo">018</span>/**<a name="line.18"></a>
+<span class="sourceLineNo">019</span> * Serializes POJO metadata to HTTP responses as XML.<a name="line.19"></a>
+<span class="sourceLineNo">020</span> *<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.21"></a>
+<span class="sourceLineNo">022</span> *<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/xml+schema&lt;/code&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * &lt;p&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> *<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.28"></a>
+<span class="sourceLineNo">029</span> *<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * Produces the XML-schema representation of the XML produced by the {@link XmlSerializer} class with the same properties.<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * This class has the following properties associated with it:<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * &lt;ul&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *    &lt;li&gt;{@link XmlSerializerContext}<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;{@link BeanContext}<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * &lt;/ul&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span> */<a name="line.39"></a>
+<span class="sourceLineNo">040</span>public class XmlSchemaSerializer extends XmlSerializer {<a name="line.40"></a>
+<span class="sourceLineNo">041</span><a name="line.41"></a>
+<span class="sourceLineNo">042</span>   /**<a name="line.42"></a>
+<span class="sourceLineNo">043</span>    * Constructor.<a name="line.43"></a>
+<span class="sourceLineNo">044</span>    *<a name="line.44"></a>
+<span class="sourceLineNo">045</span>    * @param propertyStore Initialize with the specified config property store.<a name="line.45"></a>
+<span class="sourceLineNo">046</span>    */<a name="line.46"></a>
+<span class="sourceLineNo">047</span>   public XmlSchemaSerializer(PropertyStore propertyStore) {<a name="line.47"></a>
+<span class="sourceLineNo">048</span>      super(propertyStore.copy().append(XmlSerializerContext.XML_enableNamespaces, true), "text/xml", "text/xml+schema");<a name="line.48"></a>
+<span class="sourceLineNo">049</span>   }<a name="line.49"></a>
+<span class="sourceLineNo">050</span><a name="line.50"></a>
+<span class="sourceLineNo">051</span>   @Override /* Serializer */<a name="line.51"></a>
+<span class="sourceLineNo">052</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.52"></a>
+<span class="sourceLineNo">053</span>      return new XmlSchemaSerializerSession(ctx, args);<a name="line.53"></a>
+<span class="sourceLineNo">054</span>   }<a name="line.54"></a>
+<span class="sourceLineNo">055</span>}<a name="line.55"></a>
 
 
 



[29/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/jso/JsoSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/jso/JsoSerializerSession.html b/content/site/apidocs/src-html/org/apache/juneau/jso/JsoSerializerSession.html
index a9de9d9..51c51f6 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/jso/JsoSerializerSession.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/jso/JsoSerializerSession.html
@@ -28,7 +28,7 @@
 <span class="sourceLineNo">020</span> * Session object that lives for the duration of a single use of {@link JsoSerializer}.<a name="line.20"></a>
 <span class="sourceLineNo">021</span> *<a name="line.21"></a>
 <span class="sourceLineNo">022</span> * &lt;p&gt;<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * This class is NOT thread safe.  <a name="line.23"></a>
+<span class="sourceLineNo">023</span> * This class is NOT thread safe.<a name="line.23"></a>
 <span class="sourceLineNo">024</span> * It is typically discarded after one-time use although it can be reused within the same thread.<a name="line.24"></a>
 <span class="sourceLineNo">025</span> */<a name="line.25"></a>
 <span class="sourceLineNo">026</span>public class JsoSerializerSession extends OutputStreamSerializerSession {<a name="line.26"></a>
@@ -44,20 +44,19 @@
 <span class="sourceLineNo">036</span>    *    These specify session-level information such as locale and URI context.<a name="line.36"></a>
 <span class="sourceLineNo">037</span>    *    It also include session-level properties that override the properties defined on the bean and<a name="line.37"></a>
 <span class="sourceLineNo">038</span>    *    serializer contexts.<a name="line.38"></a>
-<span class="sourceLineNo">039</span>    *    &lt;br&gt;If &lt;jk&gt;null&lt;/jk&gt;, defaults to {@link SerializerSessionArgs#DEFAULT}.<a name="line.39"></a>
-<span class="sourceLineNo">040</span>    */<a name="line.40"></a>
-<span class="sourceLineNo">041</span>   protected JsoSerializerSession(SerializerContext ctx, SerializerSessionArgs args) {<a name="line.41"></a>
-<span class="sourceLineNo">042</span>      super(ctx, args);<a name="line.42"></a>
-<span class="sourceLineNo">043</span>   }<a name="line.43"></a>
-<span class="sourceLineNo">044</span><a name="line.44"></a>
-<span class="sourceLineNo">045</span>   @Override /* OutputStreamSerializerSession */<a name="line.45"></a>
-<span class="sourceLineNo">046</span>   protected void doSerialize(SerializerPipe out, Object o) throws Exception {<a name="line.46"></a>
-<span class="sourceLineNo">047</span>      ObjectOutputStream oos = new ObjectOutputStream(out.getOutputStream());<a name="line.47"></a>
-<span class="sourceLineNo">048</span>      oos.writeObject(o);<a name="line.48"></a>
-<span class="sourceLineNo">049</span>      oos.flush();<a name="line.49"></a>
-<span class="sourceLineNo">050</span>      oos.close();<a name="line.50"></a>
-<span class="sourceLineNo">051</span>   }<a name="line.51"></a>
-<span class="sourceLineNo">052</span>}<a name="line.52"></a>
+<span class="sourceLineNo">039</span>    */<a name="line.39"></a>
+<span class="sourceLineNo">040</span>   protected JsoSerializerSession(SerializerContext ctx, SerializerSessionArgs args) {<a name="line.40"></a>
+<span class="sourceLineNo">041</span>      super(ctx, args);<a name="line.41"></a>
+<span class="sourceLineNo">042</span>   }<a name="line.42"></a>
+<span class="sourceLineNo">043</span><a name="line.43"></a>
+<span class="sourceLineNo">044</span>   @Override /* OutputStreamSerializerSession */<a name="line.44"></a>
+<span class="sourceLineNo">045</span>   protected void doSerialize(SerializerPipe out, Object o) throws Exception {<a name="line.45"></a>
+<span class="sourceLineNo">046</span>      ObjectOutputStream oos = new ObjectOutputStream(out.getOutputStream());<a name="line.46"></a>
+<span class="sourceLineNo">047</span>      oos.writeObject(o);<a name="line.47"></a>
+<span class="sourceLineNo">048</span>      oos.flush();<a name="line.48"></a>
+<span class="sourceLineNo">049</span>      oos.close();<a name="line.49"></a>
+<span class="sourceLineNo">050</span>   }<a name="line.50"></a>
+<span class="sourceLineNo">051</span>}<a name="line.51"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/json/JsonParser.Strict.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/json/JsonParser.Strict.html b/content/site/apidocs/src-html/org/apache/juneau/json/JsonParser.Strict.html
index 6c50a51..0308ccd 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/json/JsonParser.Strict.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/json/JsonParser.Strict.html
@@ -23,144 +23,152 @@
 <span class="sourceLineNo">015</span>import static org.apache.juneau.parser.ParserContext.*;<a name="line.15"></a>
 <span class="sourceLineNo">016</span><a name="line.16"></a>
 <span class="sourceLineNo">017</span>import org.apache.juneau.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span>import org.apache.juneau.annotation.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.parser.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span><a name="line.20"></a>
-<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
-<span class="sourceLineNo">022</span> * Parses any valid JSON text into a POJO model.<a name="line.22"></a>
-<span class="sourceLineNo">023</span> *<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * Handles &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/json, text/json&lt;/code&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * This parser uses a state machine, which makes it very fast and efficient.  It parses JSON in about 70% of the<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * time that it takes the built-in Java DOM parsers to parse equivalent XML.<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;p&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * This parser handles all valid JSON syntax.<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * In addition, when strict mode is disable, the parser also handles the following:<a name="line.35"></a>
-<span class="sourceLineNo">036</span> * &lt;ul class='spaced-list'&gt;<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *    &lt;li&gt;<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *       Javascript comments (both {@code /*} and {@code //}) are ignored.<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *    &lt;li&gt;<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *       Both single and double quoted strings.<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *    &lt;li&gt;<a name="line.41"></a>
-<span class="sourceLineNo">042</span> *       Automatically joins concatenated strings (e.g. &lt;code&gt;&lt;js&gt;"aaa"&lt;/js&gt; + &lt;js&gt;'bbb'&lt;/js&gt;&lt;/code&gt;).<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *    &lt;li&gt;<a name="line.43"></a>
-<span class="sourceLineNo">044</span> *       Unquoted attributes.<a name="line.44"></a>
-<span class="sourceLineNo">045</span> * &lt;/ul&gt;<a name="line.45"></a>
-<span class="sourceLineNo">046</span> *<a name="line.46"></a>
-<span class="sourceLineNo">047</span> * &lt;p&gt;<a name="line.47"></a>
-<span class="sourceLineNo">048</span> * Also handles negative, decimal, hexadecimal, octal, and double numbers, including exponential notation.<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *<a name="line.49"></a>
-<span class="sourceLineNo">050</span> * &lt;p&gt;<a name="line.50"></a>
-<span class="sourceLineNo">051</span> * This parser handles the following input, and automatically returns the corresponding Java class.<a name="line.51"></a>
-<span class="sourceLineNo">052</span> * &lt;ul class='spaced-list'&gt;<a name="line.52"></a>
-<span class="sourceLineNo">053</span> *    &lt;li&gt;<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *       JSON objects (&lt;js&gt;"{...}"&lt;/js&gt;) are converted to {@link ObjectMap ObjectMaps}.<a name="line.54"></a>
-<span class="sourceLineNo">055</span> *       &lt;b&gt;Note:&lt;/b&gt;  If a &lt;code&gt;&lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'xxx'&lt;/xs&gt;&lt;/code&gt; attribute is specified on the object, then an<a name="line.55"></a>
-<span class="sourceLineNo">056</span> *       attempt is made to convert the object to an instance of the specified Java bean class.<a name="line.56"></a>
-<span class="sourceLineNo">057</span> *       See the &lt;code&gt;beanTypeName&lt;/code&gt; setting on the {@link PropertyStore} for more information about parsing<a name="line.57"></a>
-<span class="sourceLineNo">058</span> *       beans from JSON.<a name="line.58"></a>
-<span class="sourceLineNo">059</span> *    &lt;li&gt;<a name="line.59"></a>
-<span class="sourceLineNo">060</span> *       JSON arrays (&lt;js&gt;"[...]"&lt;/js&gt;) are converted to {@link ObjectList ObjectLists}.<a name="line.60"></a>
-<span class="sourceLineNo">061</span> *    &lt;li&gt;<a name="line.61"></a>
-<span class="sourceLineNo">062</span> *       JSON string literals (&lt;js&gt;"'xyz'"&lt;/js&gt;) are converted to {@link String Strings}.<a name="line.62"></a>
-<span class="sourceLineNo">063</span> *    &lt;li&gt;<a name="line.63"></a>
-<span class="sourceLineNo">064</span> *       JSON numbers (&lt;js&gt;"123"&lt;/js&gt;, including octal/hexadecimal/exponential notation) are converted to<a name="line.64"></a>
-<span class="sourceLineNo">065</span> *       {@link Integer Integers}, {@link Long Longs}, {@link Float Floats}, or {@link Double Doubles} depending on<a name="line.65"></a>
-<span class="sourceLineNo">066</span> *       whether the number is decimal, and the size of the number.<a name="line.66"></a>
-<span class="sourceLineNo">067</span> *    &lt;li&gt;<a name="line.67"></a>
-<span class="sourceLineNo">068</span> *       JSON booleans (&lt;js&gt;"false"&lt;/js&gt;) are converted to {@link Boolean Booleans}.<a name="line.68"></a>
-<span class="sourceLineNo">069</span> *    &lt;li&gt;<a name="line.69"></a>
-<span class="sourceLineNo">070</span> *       JSON nulls (&lt;js&gt;"null"&lt;/js&gt;) are converted to &lt;jk&gt;null&lt;/jk&gt;.<a name="line.70"></a>
-<span class="sourceLineNo">071</span> *    &lt;li&gt;<a name="line.71"></a>
-<span class="sourceLineNo">072</span> *       Input consisting of only whitespace or JSON comments are converted to &lt;jk&gt;null&lt;/jk&gt;.<a name="line.72"></a>
-<span class="sourceLineNo">073</span> * &lt;/ul&gt;<a name="line.73"></a>
-<span class="sourceLineNo">074</span> *<a name="line.74"></a>
-<span class="sourceLineNo">075</span> * &lt;p&gt;<a name="line.75"></a>
-<span class="sourceLineNo">076</span> * Input can be any of the following:<a name="line.76"></a>
-<span class="sourceLineNo">077</span> * &lt;ul class='spaced-list'&gt;<a name="line.77"></a>
-<span class="sourceLineNo">078</span> *    &lt;li&gt;<a name="line.78"></a>
-<span class="sourceLineNo">079</span> *       &lt;js&gt;"{...}"&lt;/js&gt; - Converted to a {@link ObjectMap} or an instance of a Java bean if a &lt;xa&gt;_type&lt;/xa&gt;<a name="line.79"></a>
-<span class="sourceLineNo">080</span> *       attribute is present.<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *    &lt;li&gt;<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *       &lt;js&gt;"[...]"&lt;/js&gt; - Converted to a {@link ObjectList}.<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *    &lt;li&gt;<a name="line.83"></a>
-<span class="sourceLineNo">084</span> *       &lt;js&gt;"123..."&lt;/js&gt; - Converted to a {@link Number} (either {@link Integer}, {@link Long}, {@link Float},<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *       or {@link Double}).<a name="line.85"></a>
-<span class="sourceLineNo">086</span> *    &lt;li&gt;<a name="line.86"></a>
-<span class="sourceLineNo">087</span> *       &lt;js&gt;"true"&lt;/js&gt;/&lt;js&gt;"false"&lt;/js&gt; - Converted to a {@link Boolean}.<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *    &lt;li&gt;<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *       &lt;js&gt;"null"&lt;/js&gt; - Returns &lt;jk&gt;null&lt;/jk&gt;.<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *    &lt;li&gt;<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *       &lt;js&gt;"'xxx'"&lt;/js&gt; - Converted to a {@link String}.<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *    &lt;li&gt;<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *       &lt;js&gt;"\"xxx\""&lt;/js&gt; - Converted to a {@link String}.<a name="line.93"></a>
-<span class="sourceLineNo">094</span> *    &lt;li&gt;<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *       &lt;js&gt;"'xxx' + \"yyy\""&lt;/js&gt; - Converted to a concatenated {@link String}.<a name="line.95"></a>
-<span class="sourceLineNo">096</span> * &lt;/ul&gt;<a name="line.96"></a>
-<span class="sourceLineNo">097</span> *<a name="line.97"></a>
-<span class="sourceLineNo">098</span> * &lt;p&gt;<a name="line.98"></a>
-<span class="sourceLineNo">099</span> * TIP:  If you know you're parsing a JSON object or array, it can be easier to parse it using the<a name="line.99"></a>
-<span class="sourceLineNo">100</span> * {@link ObjectMap#ObjectMap(CharSequence) ObjectMap(CharSequence)} or {@link ObjectList#ObjectList(CharSequence)<a name="line.100"></a>
-<span class="sourceLineNo">101</span> * ObjectList(CharSequence)} constructors instead of using this class.<a name="line.101"></a>
-<span class="sourceLineNo">102</span> * The end result should be the same.<a name="line.102"></a>
-<span class="sourceLineNo">103</span> *<a name="line.103"></a>
-<span class="sourceLineNo">104</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.104"></a>
-<span class="sourceLineNo">105</span> *<a name="line.105"></a>
-<span class="sourceLineNo">106</span> * This class has the following properties associated with it:<a name="line.106"></a>
-<span class="sourceLineNo">107</span> * &lt;ul&gt;<a name="line.107"></a>
-<span class="sourceLineNo">108</span> *    &lt;li&gt;{@link JsonParserContext}<a name="line.108"></a>
-<span class="sourceLineNo">109</span> * &lt;/ul&gt;<a name="line.109"></a>
-<span class="sourceLineNo">110</span> */<a name="line.110"></a>
-<span class="sourceLineNo">111</span>@Consumes("application/json,text/json")<a name="line.111"></a>
-<span class="sourceLineNo">112</span>public class JsonParser extends ReaderParser {<a name="line.112"></a>
-<span class="sourceLineNo">113</span><a name="line.113"></a>
-<span class="sourceLineNo">114</span>   /** Default parser, all default settings.*/<a name="line.114"></a>
-<span class="sourceLineNo">115</span>   public static final JsonParser DEFAULT = new JsonParser(PropertyStore.create());<a name="line.115"></a>
-<span class="sourceLineNo">116</span><a name="line.116"></a>
-<span class="sourceLineNo">117</span>   /** Default parser, all default settings.*/<a name="line.117"></a>
-<span class="sourceLineNo">118</span>   public static final JsonParser DEFAULT_STRICT = new JsonParser.Strict(PropertyStore.create());<a name="line.118"></a>
-<span class="sourceLineNo">119</span><a name="line.119"></a>
-<span class="sourceLineNo">120</span>   /** Default parser, strict mode. */<a name="line.120"></a>
-<span class="sourceLineNo">121</span>   public static class Strict extends JsonParser {<a name="line.121"></a>
-<span class="sourceLineNo">122</span><a name="line.122"></a>
-<span class="sourceLineNo">123</span>      /**<a name="line.123"></a>
-<span class="sourceLineNo">124</span>       * Constructor.<a name="line.124"></a>
-<span class="sourceLineNo">125</span>       *<a name="line.125"></a>
-<span class="sourceLineNo">126</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.126"></a>
-<span class="sourceLineNo">127</span>       */<a name="line.127"></a>
-<span class="sourceLineNo">128</span>      public Strict(PropertyStore propertyStore) {<a name="line.128"></a>
-<span class="sourceLineNo">129</span>         super(propertyStore.copy().append(PARSER_strict, true));<a name="line.129"></a>
-<span class="sourceLineNo">130</span>      }<a name="line.130"></a>
-<span class="sourceLineNo">131</span>   }<a name="line.131"></a>
-<span class="sourceLineNo">132</span><a name="line.132"></a>
+<span class="sourceLineNo">018</span>import org.apache.juneau.parser.*;<a name="line.18"></a>
+<span class="sourceLineNo">019</span><a name="line.19"></a>
+<span class="sourceLineNo">020</span>/**<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * Parses any valid JSON text into a POJO model.<a name="line.21"></a>
+<span class="sourceLineNo">022</span> *<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * Handles &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/json, text/json&lt;/code&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * This parser uses a state machine, which makes it very fast and efficient.  It parses JSON in about 70% of the<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * time that it takes the built-in Java DOM parsers to parse equivalent XML.<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;p&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * This parser handles all valid JSON syntax.<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * In addition, when strict mode is disable, the parser also handles the following:<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * &lt;ul class='spaced-list'&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *    &lt;li&gt;<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *       Javascript comments (both {@code /*} and {@code //}) are ignored.<a name="line.37"></a>
+<span class="sourceLineNo">038</span> *    &lt;li&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *       Both single and double quoted strings.<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *    &lt;li&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span> *       Automatically joins concatenated strings (e.g. &lt;code&gt;&lt;js&gt;"aaa"&lt;/js&gt; + &lt;js&gt;'bbb'&lt;/js&gt;&lt;/code&gt;).<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *    &lt;li&gt;<a name="line.42"></a>
+<span class="sourceLineNo">043</span> *       Unquoted attributes.<a name="line.43"></a>
+<span class="sourceLineNo">044</span> * &lt;/ul&gt;<a name="line.44"></a>
+<span class="sourceLineNo">045</span> *<a name="line.45"></a>
+<span class="sourceLineNo">046</span> * &lt;p&gt;<a name="line.46"></a>
+<span class="sourceLineNo">047</span> * Also handles negative, decimal, hexadecimal, octal, and double numbers, including exponential notation.<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *<a name="line.48"></a>
+<span class="sourceLineNo">049</span> * &lt;p&gt;<a name="line.49"></a>
+<span class="sourceLineNo">050</span> * This parser handles the following input, and automatically returns the corresponding Java class.<a name="line.50"></a>
+<span class="sourceLineNo">051</span> * &lt;ul class='spaced-list'&gt;<a name="line.51"></a>
+<span class="sourceLineNo">052</span> *    &lt;li&gt;<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *       JSON objects (&lt;js&gt;"{...}"&lt;/js&gt;) are converted to {@link ObjectMap ObjectMaps}.<a name="line.53"></a>
+<span class="sourceLineNo">054</span> *       &lt;b&gt;Note:&lt;/b&gt;  If a &lt;code&gt;&lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'xxx'&lt;/xs&gt;&lt;/code&gt; attribute is specified on the object, then an<a name="line.54"></a>
+<span class="sourceLineNo">055</span> *       attempt is made to convert the object to an instance of the specified Java bean class.<a name="line.55"></a>
+<span class="sourceLineNo">056</span> *       See the &lt;code&gt;beanTypeName&lt;/code&gt; setting on the {@link PropertyStore} for more information about parsing<a name="line.56"></a>
+<span class="sourceLineNo">057</span> *       beans from JSON.<a name="line.57"></a>
+<span class="sourceLineNo">058</span> *    &lt;li&gt;<a name="line.58"></a>
+<span class="sourceLineNo">059</span> *       JSON arrays (&lt;js&gt;"[...]"&lt;/js&gt;) are converted to {@link ObjectList ObjectLists}.<a name="line.59"></a>
+<span class="sourceLineNo">060</span> *    &lt;li&gt;<a name="line.60"></a>
+<span class="sourceLineNo">061</span> *       JSON string literals (&lt;js&gt;"'xyz'"&lt;/js&gt;) are converted to {@link String Strings}.<a name="line.61"></a>
+<span class="sourceLineNo">062</span> *    &lt;li&gt;<a name="line.62"></a>
+<span class="sourceLineNo">063</span> *       JSON numbers (&lt;js&gt;"123"&lt;/js&gt;, including octal/hexadecimal/exponential notation) are converted to<a name="line.63"></a>
+<span class="sourceLineNo">064</span> *       {@link Integer Integers}, {@link Long Longs}, {@link Float Floats}, or {@link Double Doubles} depending on<a name="line.64"></a>
+<span class="sourceLineNo">065</span> *       whether the number is decimal, and the size of the number.<a name="line.65"></a>
+<span class="sourceLineNo">066</span> *    &lt;li&gt;<a name="line.66"></a>
+<span class="sourceLineNo">067</span> *       JSON booleans (&lt;js&gt;"false"&lt;/js&gt;) are converted to {@link Boolean Booleans}.<a name="line.67"></a>
+<span class="sourceLineNo">068</span> *    &lt;li&gt;<a name="line.68"></a>
+<span class="sourceLineNo">069</span> *       JSON nulls (&lt;js&gt;"null"&lt;/js&gt;) are converted to &lt;jk&gt;null&lt;/jk&gt;.<a name="line.69"></a>
+<span class="sourceLineNo">070</span> *    &lt;li&gt;<a name="line.70"></a>
+<span class="sourceLineNo">071</span> *       Input consisting of only whitespace or JSON comments are converted to &lt;jk&gt;null&lt;/jk&gt;.<a name="line.71"></a>
+<span class="sourceLineNo">072</span> * &lt;/ul&gt;<a name="line.72"></a>
+<span class="sourceLineNo">073</span> *<a name="line.73"></a>
+<span class="sourceLineNo">074</span> * &lt;p&gt;<a name="line.74"></a>
+<span class="sourceLineNo">075</span> * Input can be any of the following:<a name="line.75"></a>
+<span class="sourceLineNo">076</span> * &lt;ul class='spaced-list'&gt;<a name="line.76"></a>
+<span class="sourceLineNo">077</span> *    &lt;li&gt;<a name="line.77"></a>
+<span class="sourceLineNo">078</span> *       &lt;js&gt;"{...}"&lt;/js&gt; - Converted to a {@link ObjectMap} or an instance of a Java bean if a &lt;xa&gt;_type&lt;/xa&gt;<a name="line.78"></a>
+<span class="sourceLineNo">079</span> *       attribute is present.<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *    &lt;li&gt;<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *       &lt;js&gt;"[...]"&lt;/js&gt; - Converted to a {@link ObjectList}.<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *    &lt;li&gt;<a name="line.82"></a>
+<span class="sourceLineNo">083</span> *       &lt;js&gt;"123..."&lt;/js&gt; - Converted to a {@link Number} (either {@link Integer}, {@link Long}, {@link Float},<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *       or {@link Double}).<a name="line.84"></a>
+<span class="sourceLineNo">085</span> *    &lt;li&gt;<a name="line.85"></a>
+<span class="sourceLineNo">086</span> *       &lt;js&gt;"true"&lt;/js&gt;/&lt;js&gt;"false"&lt;/js&gt; - Converted to a {@link Boolean}.<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *    &lt;li&gt;<a name="line.87"></a>
+<span class="sourceLineNo">088</span> *       &lt;js&gt;"null"&lt;/js&gt; - Returns &lt;jk&gt;null&lt;/jk&gt;.<a name="line.88"></a>
+<span class="sourceLineNo">089</span> *    &lt;li&gt;<a name="line.89"></a>
+<span class="sourceLineNo">090</span> *       &lt;js&gt;"'xxx'"&lt;/js&gt; - Converted to a {@link String}.<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *    &lt;li&gt;<a name="line.91"></a>
+<span class="sourceLineNo">092</span> *       &lt;js&gt;"\"xxx\""&lt;/js&gt; - Converted to a {@link String}.<a name="line.92"></a>
+<span class="sourceLineNo">093</span> *    &lt;li&gt;<a name="line.93"></a>
+<span class="sourceLineNo">094</span> *       &lt;js&gt;"'xxx' + \"yyy\""&lt;/js&gt; - Converted to a concatenated {@link String}.<a name="line.94"></a>
+<span class="sourceLineNo">095</span> * &lt;/ul&gt;<a name="line.95"></a>
+<span class="sourceLineNo">096</span> *<a name="line.96"></a>
+<span class="sourceLineNo">097</span> * &lt;p&gt;<a name="line.97"></a>
+<span class="sourceLineNo">098</span> * TIP:  If you know you're parsing a JSON object or array, it can be easier to parse it using the<a name="line.98"></a>
+<span class="sourceLineNo">099</span> * {@link ObjectMap#ObjectMap(CharSequence) ObjectMap(CharSequence)} or {@link ObjectList#ObjectList(CharSequence)<a name="line.99"></a>
+<span class="sourceLineNo">100</span> * ObjectList(CharSequence)} constructors instead of using this class.<a name="line.100"></a>
+<span class="sourceLineNo">101</span> * The end result should be the same.<a name="line.101"></a>
+<span class="sourceLineNo">102</span> *<a name="line.102"></a>
+<span class="sourceLineNo">103</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.103"></a>
+<span class="sourceLineNo">104</span> *<a name="line.104"></a>
+<span class="sourceLineNo">105</span> * This class has the following properties associated with it:<a name="line.105"></a>
+<span class="sourceLineNo">106</span> * &lt;ul&gt;<a name="line.106"></a>
+<span class="sourceLineNo">107</span> *    &lt;li&gt;{@link JsonParserContext}<a name="line.107"></a>
+<span class="sourceLineNo">108</span> * &lt;/ul&gt;<a name="line.108"></a>
+<span class="sourceLineNo">109</span> */<a name="line.109"></a>
+<span class="sourceLineNo">110</span>public class JsonParser extends ReaderParser {<a name="line.110"></a>
+<span class="sourceLineNo">111</span><a name="line.111"></a>
+<span class="sourceLineNo">112</span>   /** Default parser, all default settings.*/<a name="line.112"></a>
+<span class="sourceLineNo">113</span>   public static final JsonParser DEFAULT = new JsonParser(PropertyStore.create());<a name="line.113"></a>
+<span class="sourceLineNo">114</span><a name="line.114"></a>
+<span class="sourceLineNo">115</span>   /** Default parser, all default settings.*/<a name="line.115"></a>
+<span class="sourceLineNo">116</span>   public static final JsonParser DEFAULT_STRICT = new JsonParser.Strict(PropertyStore.create());<a name="line.116"></a>
+<span class="sourceLineNo">117</span><a name="line.117"></a>
+<span class="sourceLineNo">118</span>   /** Default parser, strict mode. */<a name="line.118"></a>
+<span class="sourceLineNo">119</span>   public static class Strict extends JsonParser {<a name="line.119"></a>
+<span class="sourceLineNo">120</span><a name="line.120"></a>
+<span class="sourceLineNo">121</span>      /**<a name="line.121"></a>
+<span class="sourceLineNo">122</span>       * Constructor.<a name="line.122"></a>
+<span class="sourceLineNo">123</span>       *<a name="line.123"></a>
+<span class="sourceLineNo">124</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.124"></a>
+<span class="sourceLineNo">125</span>       */<a name="line.125"></a>
+<span class="sourceLineNo">126</span>      public Strict(PropertyStore propertyStore) {<a name="line.126"></a>
+<span class="sourceLineNo">127</span>         super(propertyStore.copy().append(PARSER_strict, true));<a name="line.127"></a>
+<span class="sourceLineNo">128</span>      }<a name="line.128"></a>
+<span class="sourceLineNo">129</span>   }<a name="line.129"></a>
+<span class="sourceLineNo">130</span><a name="line.130"></a>
+<span class="sourceLineNo">131</span><a name="line.131"></a>
+<span class="sourceLineNo">132</span>   private final JsonParserContext ctx;<a name="line.132"></a>
 <span class="sourceLineNo">133</span><a name="line.133"></a>
-<span class="sourceLineNo">134</span>   private final JsonParserContext ctx;<a name="line.134"></a>
-<span class="sourceLineNo">135</span><a name="line.135"></a>
-<span class="sourceLineNo">136</span>   /**<a name="line.136"></a>
-<span class="sourceLineNo">137</span>    * Constructor.<a name="line.137"></a>
-<span class="sourceLineNo">138</span>    *<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.139"></a>
-<span class="sourceLineNo">140</span>    */<a name="line.140"></a>
-<span class="sourceLineNo">141</span>   public JsonParser(PropertyStore propertyStore) {<a name="line.141"></a>
-<span class="sourceLineNo">142</span>      super(propertyStore);<a name="line.142"></a>
-<span class="sourceLineNo">143</span>      this.ctx = createContext(JsonParserContext.class);<a name="line.143"></a>
-<span class="sourceLineNo">144</span>   }<a name="line.144"></a>
-<span class="sourceLineNo">145</span><a name="line.145"></a>
-<span class="sourceLineNo">146</span>   @Override /* CoreObject */<a name="line.146"></a>
-<span class="sourceLineNo">147</span>   public JsonParserBuilder builder() {<a name="line.147"></a>
-<span class="sourceLineNo">148</span>      return new JsonParserBuilder(propertyStore);<a name="line.148"></a>
-<span class="sourceLineNo">149</span>   }<a name="line.149"></a>
-<span class="sourceLineNo">150</span><a name="line.150"></a>
-<span class="sourceLineNo">151</span>   @Override /* Parser */<a name="line.151"></a>
-<span class="sourceLineNo">152</span>   public ReaderParserSession createSession(ParserSessionArgs args) {<a name="line.152"></a>
-<span class="sourceLineNo">153</span>      return new JsonParserSession(ctx, args);<a name="line.153"></a>
-<span class="sourceLineNo">154</span>   }<a name="line.154"></a>
-<span class="sourceLineNo">155</span>}<a name="line.155"></a>
+<span class="sourceLineNo">134</span>   /**<a name="line.134"></a>
+<span class="sourceLineNo">135</span>    * Constructor.<a name="line.135"></a>
+<span class="sourceLineNo">136</span>    *<a name="line.136"></a>
+<span class="sourceLineNo">137</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    */<a name="line.138"></a>
+<span class="sourceLineNo">139</span>   public JsonParser(PropertyStore propertyStore) {<a name="line.139"></a>
+<span class="sourceLineNo">140</span>      this(propertyStore, "application/json", "text/json");<a name="line.140"></a>
+<span class="sourceLineNo">141</span>   }<a name="line.141"></a>
+<span class="sourceLineNo">142</span><a name="line.142"></a>
+<span class="sourceLineNo">143</span>   /**<a name="line.143"></a>
+<span class="sourceLineNo">144</span>    * Constructor.<a name="line.144"></a>
+<span class="sourceLineNo">145</span>    *<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.146"></a>
+<span class="sourceLineNo">147</span>    * @param consumes The list of media types that this parser consumes (e.g. &lt;js&gt;"application/json"&lt;/js&gt;).<a name="line.147"></a>
+<span class="sourceLineNo">148</span>    */<a name="line.148"></a>
+<span class="sourceLineNo">149</span>   public JsonParser(PropertyStore propertyStore, String...consumes) {<a name="line.149"></a>
+<span class="sourceLineNo">150</span>      super(propertyStore, consumes);<a name="line.150"></a>
+<span class="sourceLineNo">151</span>      this.ctx = createContext(JsonParserContext.class);<a name="line.151"></a>
+<span class="sourceLineNo">152</span>   }<a name="line.152"></a>
+<span class="sourceLineNo">153</span><a name="line.153"></a>
+<span class="sourceLineNo">154</span>   @Override /* CoreObject */<a name="line.154"></a>
+<span class="sourceLineNo">155</span>   public JsonParserBuilder builder() {<a name="line.155"></a>
+<span class="sourceLineNo">156</span>      return new JsonParserBuilder(propertyStore);<a name="line.156"></a>
+<span class="sourceLineNo">157</span>   }<a name="line.157"></a>
+<span class="sourceLineNo">158</span><a name="line.158"></a>
+<span class="sourceLineNo">159</span>   @Override /* Parser */<a name="line.159"></a>
+<span class="sourceLineNo">160</span>   public ReaderParserSession createSession(ParserSessionArgs args) {<a name="line.160"></a>
+<span class="sourceLineNo">161</span>      return new JsonParserSession(ctx, args);<a name="line.161"></a>
+<span class="sourceLineNo">162</span>   }<a name="line.162"></a>
+<span class="sourceLineNo">163</span>}<a name="line.163"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/json/JsonParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/json/JsonParser.html b/content/site/apidocs/src-html/org/apache/juneau/json/JsonParser.html
index 6c50a51..0308ccd 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/json/JsonParser.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/json/JsonParser.html
@@ -23,144 +23,152 @@
 <span class="sourceLineNo">015</span>import static org.apache.juneau.parser.ParserContext.*;<a name="line.15"></a>
 <span class="sourceLineNo">016</span><a name="line.16"></a>
 <span class="sourceLineNo">017</span>import org.apache.juneau.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span>import org.apache.juneau.annotation.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.parser.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span><a name="line.20"></a>
-<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
-<span class="sourceLineNo">022</span> * Parses any valid JSON text into a POJO model.<a name="line.22"></a>
-<span class="sourceLineNo">023</span> *<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * Handles &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/json, text/json&lt;/code&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * This parser uses a state machine, which makes it very fast and efficient.  It parses JSON in about 70% of the<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * time that it takes the built-in Java DOM parsers to parse equivalent XML.<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;p&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * This parser handles all valid JSON syntax.<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * In addition, when strict mode is disable, the parser also handles the following:<a name="line.35"></a>
-<span class="sourceLineNo">036</span> * &lt;ul class='spaced-list'&gt;<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *    &lt;li&gt;<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *       Javascript comments (both {@code /*} and {@code //}) are ignored.<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *    &lt;li&gt;<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *       Both single and double quoted strings.<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *    &lt;li&gt;<a name="line.41"></a>
-<span class="sourceLineNo">042</span> *       Automatically joins concatenated strings (e.g. &lt;code&gt;&lt;js&gt;"aaa"&lt;/js&gt; + &lt;js&gt;'bbb'&lt;/js&gt;&lt;/code&gt;).<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *    &lt;li&gt;<a name="line.43"></a>
-<span class="sourceLineNo">044</span> *       Unquoted attributes.<a name="line.44"></a>
-<span class="sourceLineNo">045</span> * &lt;/ul&gt;<a name="line.45"></a>
-<span class="sourceLineNo">046</span> *<a name="line.46"></a>
-<span class="sourceLineNo">047</span> * &lt;p&gt;<a name="line.47"></a>
-<span class="sourceLineNo">048</span> * Also handles negative, decimal, hexadecimal, octal, and double numbers, including exponential notation.<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *<a name="line.49"></a>
-<span class="sourceLineNo">050</span> * &lt;p&gt;<a name="line.50"></a>
-<span class="sourceLineNo">051</span> * This parser handles the following input, and automatically returns the corresponding Java class.<a name="line.51"></a>
-<span class="sourceLineNo">052</span> * &lt;ul class='spaced-list'&gt;<a name="line.52"></a>
-<span class="sourceLineNo">053</span> *    &lt;li&gt;<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *       JSON objects (&lt;js&gt;"{...}"&lt;/js&gt;) are converted to {@link ObjectMap ObjectMaps}.<a name="line.54"></a>
-<span class="sourceLineNo">055</span> *       &lt;b&gt;Note:&lt;/b&gt;  If a &lt;code&gt;&lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'xxx'&lt;/xs&gt;&lt;/code&gt; attribute is specified on the object, then an<a name="line.55"></a>
-<span class="sourceLineNo">056</span> *       attempt is made to convert the object to an instance of the specified Java bean class.<a name="line.56"></a>
-<span class="sourceLineNo">057</span> *       See the &lt;code&gt;beanTypeName&lt;/code&gt; setting on the {@link PropertyStore} for more information about parsing<a name="line.57"></a>
-<span class="sourceLineNo">058</span> *       beans from JSON.<a name="line.58"></a>
-<span class="sourceLineNo">059</span> *    &lt;li&gt;<a name="line.59"></a>
-<span class="sourceLineNo">060</span> *       JSON arrays (&lt;js&gt;"[...]"&lt;/js&gt;) are converted to {@link ObjectList ObjectLists}.<a name="line.60"></a>
-<span class="sourceLineNo">061</span> *    &lt;li&gt;<a name="line.61"></a>
-<span class="sourceLineNo">062</span> *       JSON string literals (&lt;js&gt;"'xyz'"&lt;/js&gt;) are converted to {@link String Strings}.<a name="line.62"></a>
-<span class="sourceLineNo">063</span> *    &lt;li&gt;<a name="line.63"></a>
-<span class="sourceLineNo">064</span> *       JSON numbers (&lt;js&gt;"123"&lt;/js&gt;, including octal/hexadecimal/exponential notation) are converted to<a name="line.64"></a>
-<span class="sourceLineNo">065</span> *       {@link Integer Integers}, {@link Long Longs}, {@link Float Floats}, or {@link Double Doubles} depending on<a name="line.65"></a>
-<span class="sourceLineNo">066</span> *       whether the number is decimal, and the size of the number.<a name="line.66"></a>
-<span class="sourceLineNo">067</span> *    &lt;li&gt;<a name="line.67"></a>
-<span class="sourceLineNo">068</span> *       JSON booleans (&lt;js&gt;"false"&lt;/js&gt;) are converted to {@link Boolean Booleans}.<a name="line.68"></a>
-<span class="sourceLineNo">069</span> *    &lt;li&gt;<a name="line.69"></a>
-<span class="sourceLineNo">070</span> *       JSON nulls (&lt;js&gt;"null"&lt;/js&gt;) are converted to &lt;jk&gt;null&lt;/jk&gt;.<a name="line.70"></a>
-<span class="sourceLineNo">071</span> *    &lt;li&gt;<a name="line.71"></a>
-<span class="sourceLineNo">072</span> *       Input consisting of only whitespace or JSON comments are converted to &lt;jk&gt;null&lt;/jk&gt;.<a name="line.72"></a>
-<span class="sourceLineNo">073</span> * &lt;/ul&gt;<a name="line.73"></a>
-<span class="sourceLineNo">074</span> *<a name="line.74"></a>
-<span class="sourceLineNo">075</span> * &lt;p&gt;<a name="line.75"></a>
-<span class="sourceLineNo">076</span> * Input can be any of the following:<a name="line.76"></a>
-<span class="sourceLineNo">077</span> * &lt;ul class='spaced-list'&gt;<a name="line.77"></a>
-<span class="sourceLineNo">078</span> *    &lt;li&gt;<a name="line.78"></a>
-<span class="sourceLineNo">079</span> *       &lt;js&gt;"{...}"&lt;/js&gt; - Converted to a {@link ObjectMap} or an instance of a Java bean if a &lt;xa&gt;_type&lt;/xa&gt;<a name="line.79"></a>
-<span class="sourceLineNo">080</span> *       attribute is present.<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *    &lt;li&gt;<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *       &lt;js&gt;"[...]"&lt;/js&gt; - Converted to a {@link ObjectList}.<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *    &lt;li&gt;<a name="line.83"></a>
-<span class="sourceLineNo">084</span> *       &lt;js&gt;"123..."&lt;/js&gt; - Converted to a {@link Number} (either {@link Integer}, {@link Long}, {@link Float},<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *       or {@link Double}).<a name="line.85"></a>
-<span class="sourceLineNo">086</span> *    &lt;li&gt;<a name="line.86"></a>
-<span class="sourceLineNo">087</span> *       &lt;js&gt;"true"&lt;/js&gt;/&lt;js&gt;"false"&lt;/js&gt; - Converted to a {@link Boolean}.<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *    &lt;li&gt;<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *       &lt;js&gt;"null"&lt;/js&gt; - Returns &lt;jk&gt;null&lt;/jk&gt;.<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *    &lt;li&gt;<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *       &lt;js&gt;"'xxx'"&lt;/js&gt; - Converted to a {@link String}.<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *    &lt;li&gt;<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *       &lt;js&gt;"\"xxx\""&lt;/js&gt; - Converted to a {@link String}.<a name="line.93"></a>
-<span class="sourceLineNo">094</span> *    &lt;li&gt;<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *       &lt;js&gt;"'xxx' + \"yyy\""&lt;/js&gt; - Converted to a concatenated {@link String}.<a name="line.95"></a>
-<span class="sourceLineNo">096</span> * &lt;/ul&gt;<a name="line.96"></a>
-<span class="sourceLineNo">097</span> *<a name="line.97"></a>
-<span class="sourceLineNo">098</span> * &lt;p&gt;<a name="line.98"></a>
-<span class="sourceLineNo">099</span> * TIP:  If you know you're parsing a JSON object or array, it can be easier to parse it using the<a name="line.99"></a>
-<span class="sourceLineNo">100</span> * {@link ObjectMap#ObjectMap(CharSequence) ObjectMap(CharSequence)} or {@link ObjectList#ObjectList(CharSequence)<a name="line.100"></a>
-<span class="sourceLineNo">101</span> * ObjectList(CharSequence)} constructors instead of using this class.<a name="line.101"></a>
-<span class="sourceLineNo">102</span> * The end result should be the same.<a name="line.102"></a>
-<span class="sourceLineNo">103</span> *<a name="line.103"></a>
-<span class="sourceLineNo">104</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.104"></a>
-<span class="sourceLineNo">105</span> *<a name="line.105"></a>
-<span class="sourceLineNo">106</span> * This class has the following properties associated with it:<a name="line.106"></a>
-<span class="sourceLineNo">107</span> * &lt;ul&gt;<a name="line.107"></a>
-<span class="sourceLineNo">108</span> *    &lt;li&gt;{@link JsonParserContext}<a name="line.108"></a>
-<span class="sourceLineNo">109</span> * &lt;/ul&gt;<a name="line.109"></a>
-<span class="sourceLineNo">110</span> */<a name="line.110"></a>
-<span class="sourceLineNo">111</span>@Consumes("application/json,text/json")<a name="line.111"></a>
-<span class="sourceLineNo">112</span>public class JsonParser extends ReaderParser {<a name="line.112"></a>
-<span class="sourceLineNo">113</span><a name="line.113"></a>
-<span class="sourceLineNo">114</span>   /** Default parser, all default settings.*/<a name="line.114"></a>
-<span class="sourceLineNo">115</span>   public static final JsonParser DEFAULT = new JsonParser(PropertyStore.create());<a name="line.115"></a>
-<span class="sourceLineNo">116</span><a name="line.116"></a>
-<span class="sourceLineNo">117</span>   /** Default parser, all default settings.*/<a name="line.117"></a>
-<span class="sourceLineNo">118</span>   public static final JsonParser DEFAULT_STRICT = new JsonParser.Strict(PropertyStore.create());<a name="line.118"></a>
-<span class="sourceLineNo">119</span><a name="line.119"></a>
-<span class="sourceLineNo">120</span>   /** Default parser, strict mode. */<a name="line.120"></a>
-<span class="sourceLineNo">121</span>   public static class Strict extends JsonParser {<a name="line.121"></a>
-<span class="sourceLineNo">122</span><a name="line.122"></a>
-<span class="sourceLineNo">123</span>      /**<a name="line.123"></a>
-<span class="sourceLineNo">124</span>       * Constructor.<a name="line.124"></a>
-<span class="sourceLineNo">125</span>       *<a name="line.125"></a>
-<span class="sourceLineNo">126</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.126"></a>
-<span class="sourceLineNo">127</span>       */<a name="line.127"></a>
-<span class="sourceLineNo">128</span>      public Strict(PropertyStore propertyStore) {<a name="line.128"></a>
-<span class="sourceLineNo">129</span>         super(propertyStore.copy().append(PARSER_strict, true));<a name="line.129"></a>
-<span class="sourceLineNo">130</span>      }<a name="line.130"></a>
-<span class="sourceLineNo">131</span>   }<a name="line.131"></a>
-<span class="sourceLineNo">132</span><a name="line.132"></a>
+<span class="sourceLineNo">018</span>import org.apache.juneau.parser.*;<a name="line.18"></a>
+<span class="sourceLineNo">019</span><a name="line.19"></a>
+<span class="sourceLineNo">020</span>/**<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * Parses any valid JSON text into a POJO model.<a name="line.21"></a>
+<span class="sourceLineNo">022</span> *<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * Handles &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/json, text/json&lt;/code&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * This parser uses a state machine, which makes it very fast and efficient.  It parses JSON in about 70% of the<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * time that it takes the built-in Java DOM parsers to parse equivalent XML.<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;p&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * This parser handles all valid JSON syntax.<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * In addition, when strict mode is disable, the parser also handles the following:<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * &lt;ul class='spaced-list'&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *    &lt;li&gt;<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *       Javascript comments (both {@code /*} and {@code //}) are ignored.<a name="line.37"></a>
+<span class="sourceLineNo">038</span> *    &lt;li&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *       Both single and double quoted strings.<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *    &lt;li&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span> *       Automatically joins concatenated strings (e.g. &lt;code&gt;&lt;js&gt;"aaa"&lt;/js&gt; + &lt;js&gt;'bbb'&lt;/js&gt;&lt;/code&gt;).<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *    &lt;li&gt;<a name="line.42"></a>
+<span class="sourceLineNo">043</span> *       Unquoted attributes.<a name="line.43"></a>
+<span class="sourceLineNo">044</span> * &lt;/ul&gt;<a name="line.44"></a>
+<span class="sourceLineNo">045</span> *<a name="line.45"></a>
+<span class="sourceLineNo">046</span> * &lt;p&gt;<a name="line.46"></a>
+<span class="sourceLineNo">047</span> * Also handles negative, decimal, hexadecimal, octal, and double numbers, including exponential notation.<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *<a name="line.48"></a>
+<span class="sourceLineNo">049</span> * &lt;p&gt;<a name="line.49"></a>
+<span class="sourceLineNo">050</span> * This parser handles the following input, and automatically returns the corresponding Java class.<a name="line.50"></a>
+<span class="sourceLineNo">051</span> * &lt;ul class='spaced-list'&gt;<a name="line.51"></a>
+<span class="sourceLineNo">052</span> *    &lt;li&gt;<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *       JSON objects (&lt;js&gt;"{...}"&lt;/js&gt;) are converted to {@link ObjectMap ObjectMaps}.<a name="line.53"></a>
+<span class="sourceLineNo">054</span> *       &lt;b&gt;Note:&lt;/b&gt;  If a &lt;code&gt;&lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'xxx'&lt;/xs&gt;&lt;/code&gt; attribute is specified on the object, then an<a name="line.54"></a>
+<span class="sourceLineNo">055</span> *       attempt is made to convert the object to an instance of the specified Java bean class.<a name="line.55"></a>
+<span class="sourceLineNo">056</span> *       See the &lt;code&gt;beanTypeName&lt;/code&gt; setting on the {@link PropertyStore} for more information about parsing<a name="line.56"></a>
+<span class="sourceLineNo">057</span> *       beans from JSON.<a name="line.57"></a>
+<span class="sourceLineNo">058</span> *    &lt;li&gt;<a name="line.58"></a>
+<span class="sourceLineNo">059</span> *       JSON arrays (&lt;js&gt;"[...]"&lt;/js&gt;) are converted to {@link ObjectList ObjectLists}.<a name="line.59"></a>
+<span class="sourceLineNo">060</span> *    &lt;li&gt;<a name="line.60"></a>
+<span class="sourceLineNo">061</span> *       JSON string literals (&lt;js&gt;"'xyz'"&lt;/js&gt;) are converted to {@link String Strings}.<a name="line.61"></a>
+<span class="sourceLineNo">062</span> *    &lt;li&gt;<a name="line.62"></a>
+<span class="sourceLineNo">063</span> *       JSON numbers (&lt;js&gt;"123"&lt;/js&gt;, including octal/hexadecimal/exponential notation) are converted to<a name="line.63"></a>
+<span class="sourceLineNo">064</span> *       {@link Integer Integers}, {@link Long Longs}, {@link Float Floats}, or {@link Double Doubles} depending on<a name="line.64"></a>
+<span class="sourceLineNo">065</span> *       whether the number is decimal, and the size of the number.<a name="line.65"></a>
+<span class="sourceLineNo">066</span> *    &lt;li&gt;<a name="line.66"></a>
+<span class="sourceLineNo">067</span> *       JSON booleans (&lt;js&gt;"false"&lt;/js&gt;) are converted to {@link Boolean Booleans}.<a name="line.67"></a>
+<span class="sourceLineNo">068</span> *    &lt;li&gt;<a name="line.68"></a>
+<span class="sourceLineNo">069</span> *       JSON nulls (&lt;js&gt;"null"&lt;/js&gt;) are converted to &lt;jk&gt;null&lt;/jk&gt;.<a name="line.69"></a>
+<span class="sourceLineNo">070</span> *    &lt;li&gt;<a name="line.70"></a>
+<span class="sourceLineNo">071</span> *       Input consisting of only whitespace or JSON comments are converted to &lt;jk&gt;null&lt;/jk&gt;.<a name="line.71"></a>
+<span class="sourceLineNo">072</span> * &lt;/ul&gt;<a name="line.72"></a>
+<span class="sourceLineNo">073</span> *<a name="line.73"></a>
+<span class="sourceLineNo">074</span> * &lt;p&gt;<a name="line.74"></a>
+<span class="sourceLineNo">075</span> * Input can be any of the following:<a name="line.75"></a>
+<span class="sourceLineNo">076</span> * &lt;ul class='spaced-list'&gt;<a name="line.76"></a>
+<span class="sourceLineNo">077</span> *    &lt;li&gt;<a name="line.77"></a>
+<span class="sourceLineNo">078</span> *       &lt;js&gt;"{...}"&lt;/js&gt; - Converted to a {@link ObjectMap} or an instance of a Java bean if a &lt;xa&gt;_type&lt;/xa&gt;<a name="line.78"></a>
+<span class="sourceLineNo">079</span> *       attribute is present.<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *    &lt;li&gt;<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *       &lt;js&gt;"[...]"&lt;/js&gt; - Converted to a {@link ObjectList}.<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *    &lt;li&gt;<a name="line.82"></a>
+<span class="sourceLineNo">083</span> *       &lt;js&gt;"123..."&lt;/js&gt; - Converted to a {@link Number} (either {@link Integer}, {@link Long}, {@link Float},<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *       or {@link Double}).<a name="line.84"></a>
+<span class="sourceLineNo">085</span> *    &lt;li&gt;<a name="line.85"></a>
+<span class="sourceLineNo">086</span> *       &lt;js&gt;"true"&lt;/js&gt;/&lt;js&gt;"false"&lt;/js&gt; - Converted to a {@link Boolean}.<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *    &lt;li&gt;<a name="line.87"></a>
+<span class="sourceLineNo">088</span> *       &lt;js&gt;"null"&lt;/js&gt; - Returns &lt;jk&gt;null&lt;/jk&gt;.<a name="line.88"></a>
+<span class="sourceLineNo">089</span> *    &lt;li&gt;<a name="line.89"></a>
+<span class="sourceLineNo">090</span> *       &lt;js&gt;"'xxx'"&lt;/js&gt; - Converted to a {@link String}.<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *    &lt;li&gt;<a name="line.91"></a>
+<span class="sourceLineNo">092</span> *       &lt;js&gt;"\"xxx\""&lt;/js&gt; - Converted to a {@link String}.<a name="line.92"></a>
+<span class="sourceLineNo">093</span> *    &lt;li&gt;<a name="line.93"></a>
+<span class="sourceLineNo">094</span> *       &lt;js&gt;"'xxx' + \"yyy\""&lt;/js&gt; - Converted to a concatenated {@link String}.<a name="line.94"></a>
+<span class="sourceLineNo">095</span> * &lt;/ul&gt;<a name="line.95"></a>
+<span class="sourceLineNo">096</span> *<a name="line.96"></a>
+<span class="sourceLineNo">097</span> * &lt;p&gt;<a name="line.97"></a>
+<span class="sourceLineNo">098</span> * TIP:  If you know you're parsing a JSON object or array, it can be easier to parse it using the<a name="line.98"></a>
+<span class="sourceLineNo">099</span> * {@link ObjectMap#ObjectMap(CharSequence) ObjectMap(CharSequence)} or {@link ObjectList#ObjectList(CharSequence)<a name="line.99"></a>
+<span class="sourceLineNo">100</span> * ObjectList(CharSequence)} constructors instead of using this class.<a name="line.100"></a>
+<span class="sourceLineNo">101</span> * The end result should be the same.<a name="line.101"></a>
+<span class="sourceLineNo">102</span> *<a name="line.102"></a>
+<span class="sourceLineNo">103</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.103"></a>
+<span class="sourceLineNo">104</span> *<a name="line.104"></a>
+<span class="sourceLineNo">105</span> * This class has the following properties associated with it:<a name="line.105"></a>
+<span class="sourceLineNo">106</span> * &lt;ul&gt;<a name="line.106"></a>
+<span class="sourceLineNo">107</span> *    &lt;li&gt;{@link JsonParserContext}<a name="line.107"></a>
+<span class="sourceLineNo">108</span> * &lt;/ul&gt;<a name="line.108"></a>
+<span class="sourceLineNo">109</span> */<a name="line.109"></a>
+<span class="sourceLineNo">110</span>public class JsonParser extends ReaderParser {<a name="line.110"></a>
+<span class="sourceLineNo">111</span><a name="line.111"></a>
+<span class="sourceLineNo">112</span>   /** Default parser, all default settings.*/<a name="line.112"></a>
+<span class="sourceLineNo">113</span>   public static final JsonParser DEFAULT = new JsonParser(PropertyStore.create());<a name="line.113"></a>
+<span class="sourceLineNo">114</span><a name="line.114"></a>
+<span class="sourceLineNo">115</span>   /** Default parser, all default settings.*/<a name="line.115"></a>
+<span class="sourceLineNo">116</span>   public static final JsonParser DEFAULT_STRICT = new JsonParser.Strict(PropertyStore.create());<a name="line.116"></a>
+<span class="sourceLineNo">117</span><a name="line.117"></a>
+<span class="sourceLineNo">118</span>   /** Default parser, strict mode. */<a name="line.118"></a>
+<span class="sourceLineNo">119</span>   public static class Strict extends JsonParser {<a name="line.119"></a>
+<span class="sourceLineNo">120</span><a name="line.120"></a>
+<span class="sourceLineNo">121</span>      /**<a name="line.121"></a>
+<span class="sourceLineNo">122</span>       * Constructor.<a name="line.122"></a>
+<span class="sourceLineNo">123</span>       *<a name="line.123"></a>
+<span class="sourceLineNo">124</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.124"></a>
+<span class="sourceLineNo">125</span>       */<a name="line.125"></a>
+<span class="sourceLineNo">126</span>      public Strict(PropertyStore propertyStore) {<a name="line.126"></a>
+<span class="sourceLineNo">127</span>         super(propertyStore.copy().append(PARSER_strict, true));<a name="line.127"></a>
+<span class="sourceLineNo">128</span>      }<a name="line.128"></a>
+<span class="sourceLineNo">129</span>   }<a name="line.129"></a>
+<span class="sourceLineNo">130</span><a name="line.130"></a>
+<span class="sourceLineNo">131</span><a name="line.131"></a>
+<span class="sourceLineNo">132</span>   private final JsonParserContext ctx;<a name="line.132"></a>
 <span class="sourceLineNo">133</span><a name="line.133"></a>
-<span class="sourceLineNo">134</span>   private final JsonParserContext ctx;<a name="line.134"></a>
-<span class="sourceLineNo">135</span><a name="line.135"></a>
-<span class="sourceLineNo">136</span>   /**<a name="line.136"></a>
-<span class="sourceLineNo">137</span>    * Constructor.<a name="line.137"></a>
-<span class="sourceLineNo">138</span>    *<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.139"></a>
-<span class="sourceLineNo">140</span>    */<a name="line.140"></a>
-<span class="sourceLineNo">141</span>   public JsonParser(PropertyStore propertyStore) {<a name="line.141"></a>
-<span class="sourceLineNo">142</span>      super(propertyStore);<a name="line.142"></a>
-<span class="sourceLineNo">143</span>      this.ctx = createContext(JsonParserContext.class);<a name="line.143"></a>
-<span class="sourceLineNo">144</span>   }<a name="line.144"></a>
-<span class="sourceLineNo">145</span><a name="line.145"></a>
-<span class="sourceLineNo">146</span>   @Override /* CoreObject */<a name="line.146"></a>
-<span class="sourceLineNo">147</span>   public JsonParserBuilder builder() {<a name="line.147"></a>
-<span class="sourceLineNo">148</span>      return new JsonParserBuilder(propertyStore);<a name="line.148"></a>
-<span class="sourceLineNo">149</span>   }<a name="line.149"></a>
-<span class="sourceLineNo">150</span><a name="line.150"></a>
-<span class="sourceLineNo">151</span>   @Override /* Parser */<a name="line.151"></a>
-<span class="sourceLineNo">152</span>   public ReaderParserSession createSession(ParserSessionArgs args) {<a name="line.152"></a>
-<span class="sourceLineNo">153</span>      return new JsonParserSession(ctx, args);<a name="line.153"></a>
-<span class="sourceLineNo">154</span>   }<a name="line.154"></a>
-<span class="sourceLineNo">155</span>}<a name="line.155"></a>
+<span class="sourceLineNo">134</span>   /**<a name="line.134"></a>
+<span class="sourceLineNo">135</span>    * Constructor.<a name="line.135"></a>
+<span class="sourceLineNo">136</span>    *<a name="line.136"></a>
+<span class="sourceLineNo">137</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    */<a name="line.138"></a>
+<span class="sourceLineNo">139</span>   public JsonParser(PropertyStore propertyStore) {<a name="line.139"></a>
+<span class="sourceLineNo">140</span>      this(propertyStore, "application/json", "text/json");<a name="line.140"></a>
+<span class="sourceLineNo">141</span>   }<a name="line.141"></a>
+<span class="sourceLineNo">142</span><a name="line.142"></a>
+<span class="sourceLineNo">143</span>   /**<a name="line.143"></a>
+<span class="sourceLineNo">144</span>    * Constructor.<a name="line.144"></a>
+<span class="sourceLineNo">145</span>    *<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.146"></a>
+<span class="sourceLineNo">147</span>    * @param consumes The list of media types that this parser consumes (e.g. &lt;js&gt;"application/json"&lt;/js&gt;).<a name="line.147"></a>
+<span class="sourceLineNo">148</span>    */<a name="line.148"></a>
+<span class="sourceLineNo">149</span>   public JsonParser(PropertyStore propertyStore, String...consumes) {<a name="line.149"></a>
+<span class="sourceLineNo">150</span>      super(propertyStore, consumes);<a name="line.150"></a>
+<span class="sourceLineNo">151</span>      this.ctx = createContext(JsonParserContext.class);<a name="line.151"></a>
+<span class="sourceLineNo">152</span>   }<a name="line.152"></a>
+<span class="sourceLineNo">153</span><a name="line.153"></a>
+<span class="sourceLineNo">154</span>   @Override /* CoreObject */<a name="line.154"></a>
+<span class="sourceLineNo">155</span>   public JsonParserBuilder builder() {<a name="line.155"></a>
+<span class="sourceLineNo">156</span>      return new JsonParserBuilder(propertyStore);<a name="line.156"></a>
+<span class="sourceLineNo">157</span>   }<a name="line.157"></a>
+<span class="sourceLineNo">158</span><a name="line.158"></a>
+<span class="sourceLineNo">159</span>   @Override /* Parser */<a name="line.159"></a>
+<span class="sourceLineNo">160</span>   public ReaderParserSession createSession(ParserSessionArgs args) {<a name="line.160"></a>
+<span class="sourceLineNo">161</span>      return new JsonParserSession(ctx, args);<a name="line.161"></a>
+<span class="sourceLineNo">162</span>   }<a name="line.162"></a>
+<span class="sourceLineNo">163</span>}<a name="line.163"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/json/JsonSchemaSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/json/JsonSchemaSerializer.html b/content/site/apidocs/src-html/org/apache/juneau/json/JsonSchemaSerializer.html
index 28c9634..beb8d62 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/json/JsonSchemaSerializer.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/json/JsonSchemaSerializer.html
@@ -23,35 +23,35 @@
 <span class="sourceLineNo">015</span>import static org.apache.juneau.serializer.SerializerContext.*;<a name="line.15"></a>
 <span class="sourceLineNo">016</span><a name="line.16"></a>
 <span class="sourceLineNo">017</span>import org.apache.juneau.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span>import org.apache.juneau.annotation.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.serializer.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span><a name="line.20"></a>
-<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
-<span class="sourceLineNo">022</span> * Serializes POJO metadata to HTTP responses as JSON.<a name="line.22"></a>
-<span class="sourceLineNo">023</span> *<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;application/json+schema, text/json+schema&lt;/code&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> * &lt;p&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/json&lt;/code&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> *<a name="line.31"></a>
-<span class="sourceLineNo">032</span> * Produces the JSON-schema for the JSON produced by the {@link JsonSerializer} class with the same properties.<a name="line.32"></a>
-<span class="sourceLineNo">033</span> */<a name="line.33"></a>
-<span class="sourceLineNo">034</span>@Produces(value="application/json+schema,text/json+schema",contentType="application/json")<a name="line.34"></a>
-<span class="sourceLineNo">035</span>public final class JsonSchemaSerializer extends JsonSerializer {<a name="line.35"></a>
-<span class="sourceLineNo">036</span><a name="line.36"></a>
-<span class="sourceLineNo">037</span>   /**<a name="line.37"></a>
-<span class="sourceLineNo">038</span>    * Constructor.<a name="line.38"></a>
-<span class="sourceLineNo">039</span>    *<a name="line.39"></a>
-<span class="sourceLineNo">040</span>    * @param propertyStore Initialize with the specified config property store.<a name="line.40"></a>
-<span class="sourceLineNo">041</span>    */<a name="line.41"></a>
-<span class="sourceLineNo">042</span>   public JsonSchemaSerializer(PropertyStore propertyStore) {<a name="line.42"></a>
-<span class="sourceLineNo">043</span>      super(<a name="line.43"></a>
-<span class="sourceLineNo">044</span>         propertyStore.copy()<a name="line.44"></a>
-<span class="sourceLineNo">045</span>         .append(SERIALIZER_detectRecursions, true)<a name="line.45"></a>
-<span class="sourceLineNo">046</span>         .append(SERIALIZER_ignoreRecursions, true)<a name="line.46"></a>
+<span class="sourceLineNo">018</span>import org.apache.juneau.serializer.*;<a name="line.18"></a>
+<span class="sourceLineNo">019</span><a name="line.19"></a>
+<span class="sourceLineNo">020</span>/**<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * Serializes POJO metadata to HTTP responses as JSON.<a name="line.21"></a>
+<span class="sourceLineNo">022</span> *<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;application/json+schema, text/json+schema&lt;/code&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> * &lt;p&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/json&lt;/code&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> *<a name="line.30"></a>
+<span class="sourceLineNo">031</span> * Produces the JSON-schema for the JSON produced by the {@link JsonSerializer} class with the same properties.<a name="line.31"></a>
+<span class="sourceLineNo">032</span> */<a name="line.32"></a>
+<span class="sourceLineNo">033</span>public final class JsonSchemaSerializer extends JsonSerializer {<a name="line.33"></a>
+<span class="sourceLineNo">034</span><a name="line.34"></a>
+<span class="sourceLineNo">035</span>   /**<a name="line.35"></a>
+<span class="sourceLineNo">036</span>    * Constructor.<a name="line.36"></a>
+<span class="sourceLineNo">037</span>    *<a name="line.37"></a>
+<span class="sourceLineNo">038</span>    * @param propertyStore Initialize with the specified config property store.<a name="line.38"></a>
+<span class="sourceLineNo">039</span>    */<a name="line.39"></a>
+<span class="sourceLineNo">040</span>   public JsonSchemaSerializer(PropertyStore propertyStore) {<a name="line.40"></a>
+<span class="sourceLineNo">041</span>      super(<a name="line.41"></a>
+<span class="sourceLineNo">042</span>         propertyStore.copy()<a name="line.42"></a>
+<span class="sourceLineNo">043</span>            .append(SERIALIZER_detectRecursions, true)<a name="line.43"></a>
+<span class="sourceLineNo">044</span>            .append(SERIALIZER_ignoreRecursions, true),<a name="line.44"></a>
+<span class="sourceLineNo">045</span>         "application/json",<a name="line.45"></a>
+<span class="sourceLineNo">046</span>         "application/json+schema", "text/json+schema"<a name="line.46"></a>
 <span class="sourceLineNo">047</span>      );<a name="line.47"></a>
 <span class="sourceLineNo">048</span>   }<a name="line.48"></a>
 <span class="sourceLineNo">049</span><a name="line.49"></a>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/json/JsonSchemaSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/json/JsonSchemaSerializerSession.html b/content/site/apidocs/src-html/org/apache/juneau/json/JsonSchemaSerializerSession.html
index 1898193..08fa670 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/json/JsonSchemaSerializerSession.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/json/JsonSchemaSerializerSession.html
@@ -48,93 +48,92 @@
 <span class="sourceLineNo">040</span>    *    These specify session-level information such as locale and URI context.<a name="line.40"></a>
 <span class="sourceLineNo">041</span>    *    It also include session-level properties that override the properties defined on the bean and<a name="line.41"></a>
 <span class="sourceLineNo">042</span>    *    serializer contexts.<a name="line.42"></a>
-<span class="sourceLineNo">043</span>    *    &lt;br&gt;If &lt;jk&gt;null&lt;/jk&gt;, defaults to {@link SerializerSessionArgs#DEFAULT}.<a name="line.43"></a>
-<span class="sourceLineNo">044</span>    */<a name="line.44"></a>
-<span class="sourceLineNo">045</span>   protected JsonSchemaSerializerSession(JsonSerializerContext ctx, SerializerSessionArgs args) {<a name="line.45"></a>
-<span class="sourceLineNo">046</span>      super(ctx, args);<a name="line.46"></a>
-<span class="sourceLineNo">047</span>   }<a name="line.47"></a>
-<span class="sourceLineNo">048</span><a name="line.48"></a>
-<span class="sourceLineNo">049</span>   @Override /* SerializerSession */<a name="line.49"></a>
-<span class="sourceLineNo">050</span>   protected void doSerialize(SerializerPipe out, Object o) throws Exception {<a name="line.50"></a>
-<span class="sourceLineNo">051</span>      ObjectMap schema = getSchema(getClassMetaForObject(o), "root", null);<a name="line.51"></a>
-<span class="sourceLineNo">052</span>      serializeAnything(getJsonWriter(out), schema, getExpectedRootType(o), "root", null);<a name="line.52"></a>
-<span class="sourceLineNo">053</span>   }<a name="line.53"></a>
-<span class="sourceLineNo">054</span><a name="line.54"></a>
-<span class="sourceLineNo">055</span>   /*<a name="line.55"></a>
-<span class="sourceLineNo">056</span>    * Creates a schema representation of the specified class type.<a name="line.56"></a>
-<span class="sourceLineNo">057</span>    *<a name="line.57"></a>
-<span class="sourceLineNo">058</span>    * @param eType The class type to get the schema of.<a name="line.58"></a>
-<span class="sourceLineNo">059</span>    * @param ctx Serialize context used to prevent infinite loops.<a name="line.59"></a>
-<span class="sourceLineNo">060</span>    * @param attrName The name of the current attribute.<a name="line.60"></a>
-<span class="sourceLineNo">061</span>    * @return A schema representation of the specified class.<a name="line.61"></a>
-<span class="sourceLineNo">062</span>    * @throws SerializeException If a problem occurred trying to convert the output.<a name="line.62"></a>
-<span class="sourceLineNo">063</span>    */<a name="line.63"></a>
-<span class="sourceLineNo">064</span>   @SuppressWarnings({ "unchecked", "rawtypes" })<a name="line.64"></a>
-<span class="sourceLineNo">065</span>   private ObjectMap getSchema(ClassMeta&lt;?&gt; eType, String attrName, String[] pNames) throws Exception {<a name="line.65"></a>
-<span class="sourceLineNo">066</span>      ObjectMap out = new ObjectMap();<a name="line.66"></a>
-<span class="sourceLineNo">067</span><a name="line.67"></a>
-<span class="sourceLineNo">068</span>      if (eType == null)<a name="line.68"></a>
-<span class="sourceLineNo">069</span>         eType = object();<a name="line.69"></a>
-<span class="sourceLineNo">070</span><a name="line.70"></a>
-<span class="sourceLineNo">071</span>      ClassMeta&lt;?&gt; aType;        // The actual type (will be null if recursion occurs)<a name="line.71"></a>
-<span class="sourceLineNo">072</span>      ClassMeta&lt;?&gt; sType;        // The serialized type<a name="line.72"></a>
-<span class="sourceLineNo">073</span><a name="line.73"></a>
-<span class="sourceLineNo">074</span>      aType = push(attrName, eType, null);<a name="line.74"></a>
-<span class="sourceLineNo">075</span><a name="line.75"></a>
-<span class="sourceLineNo">076</span>      sType = eType.getSerializedClassMeta();<a name="line.76"></a>
-<span class="sourceLineNo">077</span>      String type = null;<a name="line.77"></a>
-<span class="sourceLineNo">078</span><a name="line.78"></a>
-<span class="sourceLineNo">079</span>      if (sType.isEnum() || sType.isCharSequence() || sType.isChar())<a name="line.79"></a>
-<span class="sourceLineNo">080</span>         type = "string";<a name="line.80"></a>
-<span class="sourceLineNo">081</span>      else if (sType.isNumber())<a name="line.81"></a>
-<span class="sourceLineNo">082</span>         type = "number";<a name="line.82"></a>
-<span class="sourceLineNo">083</span>      else if (sType.isBoolean())<a name="line.83"></a>
-<span class="sourceLineNo">084</span>         type = "boolean";<a name="line.84"></a>
-<span class="sourceLineNo">085</span>      else if (sType.isMapOrBean())<a name="line.85"></a>
-<span class="sourceLineNo">086</span>         type = "object";<a name="line.86"></a>
-<span class="sourceLineNo">087</span>      else if (sType.isCollectionOrArray())<a name="line.87"></a>
-<span class="sourceLineNo">088</span>         type = "array";<a name="line.88"></a>
-<span class="sourceLineNo">089</span>      else<a name="line.89"></a>
-<span class="sourceLineNo">090</span>         type = "any";<a name="line.90"></a>
-<span class="sourceLineNo">091</span><a name="line.91"></a>
-<span class="sourceLineNo">092</span>      out.put("type", type);<a name="line.92"></a>
-<span class="sourceLineNo">093</span>      out.put("description", eType.toString());<a name="line.93"></a>
-<span class="sourceLineNo">094</span>      PojoSwap f = eType.getPojoSwap();<a name="line.94"></a>
-<span class="sourceLineNo">095</span>      if (f != null)<a name="line.95"></a>
-<span class="sourceLineNo">096</span>         out.put("transform", f);<a name="line.96"></a>
-<span class="sourceLineNo">097</span><a name="line.97"></a>
-<span class="sourceLineNo">098</span>      if (aType != null) {<a name="line.98"></a>
-<span class="sourceLineNo">099</span>         if (sType.isEnum())<a name="line.99"></a>
-<span class="sourceLineNo">100</span>            out.put("enum", getEnumStrings((Class&lt;Enum&lt;?&gt;&gt;)sType.getInnerClass()));<a name="line.100"></a>
-<span class="sourceLineNo">101</span>         else if (sType.isCollectionOrArray()) {<a name="line.101"></a>
-<span class="sourceLineNo">102</span>            ClassMeta componentType = sType.getElementType();<a name="line.102"></a>
-<span class="sourceLineNo">103</span>            if (sType.isCollection() &amp;&amp; isParentClass(Set.class, sType.getInnerClass()))<a name="line.103"></a>
-<span class="sourceLineNo">104</span>               out.put("uniqueItems", true);<a name="line.104"></a>
-<span class="sourceLineNo">105</span>            out.put("items", getSchema(componentType, "items", pNames));<a name="line.105"></a>
-<span class="sourceLineNo">106</span>         } else if (sType.isBean()) {<a name="line.106"></a>
-<span class="sourceLineNo">107</span>            ObjectMap properties = new ObjectMap();<a name="line.107"></a>
-<span class="sourceLineNo">108</span>            BeanMeta bm = getBeanMeta(sType.getInnerClass());<a name="line.108"></a>
-<span class="sourceLineNo">109</span>            if (pNames != null)<a name="line.109"></a>
-<span class="sourceLineNo">110</span>               bm = new BeanMetaFiltered(bm, pNames);<a name="line.110"></a>
-<span class="sourceLineNo">111</span>            for (Iterator&lt;BeanPropertyMeta&gt; i = bm.getPropertyMetas().iterator(); i.hasNext();) {<a name="line.111"></a>
-<span class="sourceLineNo">112</span>               BeanPropertyMeta p = i.next();<a name="line.112"></a>
-<span class="sourceLineNo">113</span>               properties.put(p.getName(), getSchema(p.getClassMeta(), p.getName(), p.getProperties()));<a name="line.113"></a>
-<span class="sourceLineNo">114</span>            }<a name="line.114"></a>
-<span class="sourceLineNo">115</span>            out.put("properties", properties);<a name="line.115"></a>
-<span class="sourceLineNo">116</span>         }<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      }<a name="line.117"></a>
-<span class="sourceLineNo">118</span>      pop();<a name="line.118"></a>
-<span class="sourceLineNo">119</span>      return out;<a name="line.119"></a>
-<span class="sourceLineNo">120</span>   }<a name="line.120"></a>
-<span class="sourceLineNo">121</span><a name="line.121"></a>
-<span class="sourceLineNo">122</span>   @SuppressWarnings({ "unchecked", "rawtypes" })<a name="line.122"></a>
-<span class="sourceLineNo">123</span>   private static List&lt;String&gt; getEnumStrings(Class&lt;? extends Enum&gt; c) {<a name="line.123"></a>
-<span class="sourceLineNo">124</span>      List&lt;String&gt; l = new LinkedList&lt;String&gt;();<a name="line.124"></a>
-<span class="sourceLineNo">125</span>      for (Object e : EnumSet.allOf(c))<a name="line.125"></a>
-<span class="sourceLineNo">126</span>         l.add(e.toString());<a name="line.126"></a>
-<span class="sourceLineNo">127</span>      return l;<a name="line.127"></a>
-<span class="sourceLineNo">128</span>   }<a name="line.128"></a>
-<span class="sourceLineNo">129</span>}<a name="line.129"></a>
+<span class="sourceLineNo">043</span>    */<a name="line.43"></a>
+<span class="sourceLineNo">044</span>   protected JsonSchemaSerializerSession(JsonSerializerContext ctx, SerializerSessionArgs args) {<a name="line.44"></a>
+<span class="sourceLineNo">045</span>      super(ctx, args);<a name="line.45"></a>
+<span class="sourceLineNo">046</span>   }<a name="line.46"></a>
+<span class="sourceLineNo">047</span><a name="line.47"></a>
+<span class="sourceLineNo">048</span>   @Override /* SerializerSession */<a name="line.48"></a>
+<span class="sourceLineNo">049</span>   protected void doSerialize(SerializerPipe out, Object o) throws Exception {<a name="line.49"></a>
+<span class="sourceLineNo">050</span>      ObjectMap schema = getSchema(getClassMetaForObject(o), "root", null);<a name="line.50"></a>
+<span class="sourceLineNo">051</span>      serializeAnything(getJsonWriter(out), schema, getExpectedRootType(o), "root", null);<a name="line.51"></a>
+<span class="sourceLineNo">052</span>   }<a name="line.52"></a>
+<span class="sourceLineNo">053</span><a name="line.53"></a>
+<span class="sourceLineNo">054</span>   /*<a name="line.54"></a>
+<span class="sourceLineNo">055</span>    * Creates a schema representation of the specified class type.<a name="line.55"></a>
+<span class="sourceLineNo">056</span>    *<a name="line.56"></a>
+<span class="sourceLineNo">057</span>    * @param eType The class type to get the schema of.<a name="line.57"></a>
+<span class="sourceLineNo">058</span>    * @param ctx Serialize context used to prevent infinite loops.<a name="line.58"></a>
+<span class="sourceLineNo">059</span>    * @param attrName The name of the current attribute.<a name="line.59"></a>
+<span class="sourceLineNo">060</span>    * @return A schema representation of the specified class.<a name="line.60"></a>
+<span class="sourceLineNo">061</span>    * @throws SerializeException If a problem occurred trying to convert the output.<a name="line.61"></a>
+<span class="sourceLineNo">062</span>    */<a name="line.62"></a>
+<span class="sourceLineNo">063</span>   @SuppressWarnings({ "unchecked", "rawtypes" })<a name="line.63"></a>
+<span class="sourceLineNo">064</span>   private ObjectMap getSchema(ClassMeta&lt;?&gt; eType, String attrName, String[] pNames) throws Exception {<a name="line.64"></a>
+<span class="sourceLineNo">065</span>      ObjectMap out = new ObjectMap();<a name="line.65"></a>
+<span class="sourceLineNo">066</span><a name="line.66"></a>
+<span class="sourceLineNo">067</span>      if (eType == null)<a name="line.67"></a>
+<span class="sourceLineNo">068</span>         eType = object();<a name="line.68"></a>
+<span class="sourceLineNo">069</span><a name="line.69"></a>
+<span class="sourceLineNo">070</span>      ClassMeta&lt;?&gt; aType;        // The actual type (will be null if recursion occurs)<a name="line.70"></a>
+<span class="sourceLineNo">071</span>      ClassMeta&lt;?&gt; sType;        // The serialized type<a name="line.71"></a>
+<span class="sourceLineNo">072</span><a name="line.72"></a>
+<span class="sourceLineNo">073</span>      aType = push(attrName, eType, null);<a name="line.73"></a>
+<span class="sourceLineNo">074</span><a name="line.74"></a>
+<span class="sourceLineNo">075</span>      sType = eType.getSerializedClassMeta();<a name="line.75"></a>
+<span class="sourceLineNo">076</span>      String type = null;<a name="line.76"></a>
+<span class="sourceLineNo">077</span><a name="line.77"></a>
+<span class="sourceLineNo">078</span>      if (sType.isEnum() || sType.isCharSequence() || sType.isChar())<a name="line.78"></a>
+<span class="sourceLineNo">079</span>         type = "string";<a name="line.79"></a>
+<span class="sourceLineNo">080</span>      else if (sType.isNumber())<a name="line.80"></a>
+<span class="sourceLineNo">081</span>         type = "number";<a name="line.81"></a>
+<span class="sourceLineNo">082</span>      else if (sType.isBoolean())<a name="line.82"></a>
+<span class="sourceLineNo">083</span>         type = "boolean";<a name="line.83"></a>
+<span class="sourceLineNo">084</span>      else if (sType.isMapOrBean())<a name="line.84"></a>
+<span class="sourceLineNo">085</span>         type = "object";<a name="line.85"></a>
+<span class="sourceLineNo">086</span>      else if (sType.isCollectionOrArray())<a name="line.86"></a>
+<span class="sourceLineNo">087</span>         type = "array";<a name="line.87"></a>
+<span class="sourceLineNo">088</span>      else<a name="line.88"></a>
+<span class="sourceLineNo">089</span>         type = "any";<a name="line.89"></a>
+<span class="sourceLineNo">090</span><a name="line.90"></a>
+<span class="sourceLineNo">091</span>      out.put("type", type);<a name="line.91"></a>
+<span class="sourceLineNo">092</span>      out.put("description", eType.toString());<a name="line.92"></a>
+<span class="sourceLineNo">093</span>      PojoSwap f = eType.getPojoSwap();<a name="line.93"></a>
+<span class="sourceLineNo">094</span>      if (f != null)<a name="line.94"></a>
+<span class="sourceLineNo">095</span>         out.put("transform", f);<a name="line.95"></a>
+<span class="sourceLineNo">096</span><a name="line.96"></a>
+<span class="sourceLineNo">097</span>      if (aType != null) {<a name="line.97"></a>
+<span class="sourceLineNo">098</span>         if (sType.isEnum())<a name="line.98"></a>
+<span class="sourceLineNo">099</span>            out.put("enum", getEnumStrings((Class&lt;Enum&lt;?&gt;&gt;)sType.getInnerClass()));<a name="line.99"></a>
+<span class="sourceLineNo">100</span>         else if (sType.isCollectionOrArray()) {<a name="line.100"></a>
+<span class="sourceLineNo">101</span>            ClassMeta componentType = sType.getElementType();<a name="line.101"></a>
+<span class="sourceLineNo">102</span>            if (sType.isCollection() &amp;&amp; isParentClass(Set.class, sType.getInnerClass()))<a name="line.102"></a>
+<span class="sourceLineNo">103</span>               out.put("uniqueItems", true);<a name="line.103"></a>
+<span class="sourceLineNo">104</span>            out.put("items", getSchema(componentType, "items", pNames));<a name="line.104"></a>
+<span class="sourceLineNo">105</span>         } else if (sType.isBean()) {<a name="line.105"></a>
+<span class="sourceLineNo">106</span>            ObjectMap properties = new ObjectMap();<a name="line.106"></a>
+<span class="sourceLineNo">107</span>            BeanMeta bm = getBeanMeta(sType.getInnerClass());<a name="line.107"></a>
+<span class="sourceLineNo">108</span>            if (pNames != null)<a name="line.108"></a>
+<span class="sourceLineNo">109</span>               bm = new BeanMetaFiltered(bm, pNames);<a name="line.109"></a>
+<span class="sourceLineNo">110</span>            for (Iterator&lt;BeanPropertyMeta&gt; i = bm.getPropertyMetas().iterator(); i.hasNext();) {<a name="line.110"></a>
+<span class="sourceLineNo">111</span>               BeanPropertyMeta p = i.next();<a name="line.111"></a>
+<span class="sourceLineNo">112</span>               properties.put(p.getName(), getSchema(p.getClassMeta(), p.getName(), p.getProperties()));<a name="line.112"></a>
+<span class="sourceLineNo">113</span>            }<a name="line.113"></a>
+<span class="sourceLineNo">114</span>            out.put("properties", properties);<a name="line.114"></a>
+<span class="sourceLineNo">115</span>         }<a name="line.115"></a>
+<span class="sourceLineNo">116</span>      }<a name="line.116"></a>
+<span class="sourceLineNo">117</span>      pop();<a name="line.117"></a>
+<span class="sourceLineNo">118</span>      return out;<a name="line.118"></a>
+<span class="sourceLineNo">119</span>   }<a name="line.119"></a>
+<span class="sourceLineNo">120</span><a name="line.120"></a>
+<span class="sourceLineNo">121</span>   @SuppressWarnings({ "unchecked", "rawtypes" })<a name="line.121"></a>
+<span class="sourceLineNo">122</span>   private static List&lt;String&gt; getEnumStrings(Class&lt;? extends Enum&gt; c) {<a name="line.122"></a>
+<span class="sourceLineNo">123</span>      List&lt;String&gt; l = new LinkedList&lt;String&gt;();<a name="line.123"></a>
+<span class="sourceLineNo">124</span>      for (Object e : EnumSet.allOf(c))<a name="line.124"></a>
+<span class="sourceLineNo">125</span>         l.add(e.toString());<a name="line.125"></a>
+<span class="sourceLineNo">126</span>      return l;<a name="line.126"></a>
+<span class="sourceLineNo">127</span>   }<a name="line.127"></a>
+<span class="sourceLineNo">128</span>}<a name="line.128"></a>
 
 
 



[31/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.XmlAbbrev.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.XmlAbbrev.html b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.XmlAbbrev.html
index d03eb62..e3f2a96 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.XmlAbbrev.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.XmlAbbrev.html
@@ -24,144 +24,153 @@
 <span class="sourceLineNo">016</span>import static org.apache.juneau.jena.RdfCommonContext.*;<a name="line.16"></a>
 <span class="sourceLineNo">017</span><a name="line.17"></a>
 <span class="sourceLineNo">018</span>import org.apache.juneau.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.annotation.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span><a name="line.21"></a>
-<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * Serializes POJOs to RDF.<a name="line.23"></a>
-<span class="sourceLineNo">024</span> *<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * <a name="line.26"></a>
-<span class="sourceLineNo">027</span> * Refer to &lt;a class="doclink" href="package-summary.html#SerializerConfigurableProperties"&gt;Configurable Properties&lt;/a&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> *    for the entire list of configurable properties.<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * <a name="line.31"></a>
-<span class="sourceLineNo">032</span> * The following direct subclasses are provided for language-specific serializers:<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;ul&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *    &lt;li&gt;{@link RdfSerializer.Xml} - RDF/XML.<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *    &lt;li&gt;{@link RdfSerializer.XmlAbbrev} - RDF/XML-ABBREV.<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *    &lt;li&gt;{@link RdfSerializer.NTriple} - N-TRIPLE.<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *    &lt;li&gt;{@link RdfSerializer.Turtle} - TURTLE.<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;{@link RdfSerializer.N3} - N3.<a name="line.38"></a>
-<span class="sourceLineNo">039</span> * &lt;/ul&gt;<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *<a name="line.40"></a>
-<span class="sourceLineNo">041</span> * &lt;h5 class='section'&gt;Additional information:&lt;/h5&gt;<a name="line.41"></a>
-<span class="sourceLineNo">042</span> * <a name="line.42"></a>
-<span class="sourceLineNo">043</span> * See &lt;a class="doclink" href="package-summary.html#TOC"&gt;RDF Overview&lt;/a&gt; for an overview of RDF support in Juneau.<a name="line.43"></a>
-<span class="sourceLineNo">044</span> */<a name="line.44"></a>
-<span class="sourceLineNo">045</span>@Produces(value="text/xml+rdf+abbrev", contentType="text/xml+rdf")<a name="line.45"></a>
-<span class="sourceLineNo">046</span>public class RdfSerializer extends WriterSerializer {<a name="line.46"></a>
-<span class="sourceLineNo">047</span><a name="line.47"></a>
-<span class="sourceLineNo">048</span>   /** Default RDF/XML serializer, all default settings.*/<a name="line.48"></a>
-<span class="sourceLineNo">049</span>   public static final RdfSerializer DEFAULT_XML = new Xml(PropertyStore.create());<a name="line.49"></a>
-<span class="sourceLineNo">050</span><a name="line.50"></a>
-<span class="sourceLineNo">051</span>   /** Default Abbreviated RDF/XML serializer, all default settings.*/<a name="line.51"></a>
-<span class="sourceLineNo">052</span>   public static final RdfSerializer DEFAULT_XMLABBREV = new XmlAbbrev(PropertyStore.create());<a name="line.52"></a>
-<span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>   /** Default Turtle serializer, all default settings.*/<a name="line.54"></a>
-<span class="sourceLineNo">055</span>   public static final RdfSerializer DEFAULT_TURTLE = new Turtle(PropertyStore.create());<a name="line.55"></a>
-<span class="sourceLineNo">056</span><a name="line.56"></a>
-<span class="sourceLineNo">057</span>   /** Default N-Triple serializer, all default settings.*/<a name="line.57"></a>
-<span class="sourceLineNo">058</span>   public static final RdfSerializer DEFAULT_NTRIPLE = new NTriple(PropertyStore.create());<a name="line.58"></a>
-<span class="sourceLineNo">059</span><a name="line.59"></a>
-<span class="sourceLineNo">060</span>   /** Default N3 serializer, all default settings.*/<a name="line.60"></a>
-<span class="sourceLineNo">061</span>   public static final RdfSerializer DEFAULT_N3 = new N3(PropertyStore.create());<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span><a name="line.63"></a>
-<span class="sourceLineNo">064</span>   /** Produces RDF/XML output */<a name="line.64"></a>
-<span class="sourceLineNo">065</span>   @Produces("text/xml+rdf")<a name="line.65"></a>
-<span class="sourceLineNo">066</span>   public static class Xml extends RdfSerializer {<a name="line.66"></a>
-<span class="sourceLineNo">067</span><a name="line.67"></a>
-<span class="sourceLineNo">068</span>      /**<a name="line.68"></a>
-<span class="sourceLineNo">069</span>       * Constructor.<a name="line.69"></a>
-<span class="sourceLineNo">070</span>       * <a name="line.70"></a>
-<span class="sourceLineNo">071</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.71"></a>
-<span class="sourceLineNo">072</span>       */<a name="line.72"></a>
-<span class="sourceLineNo">073</span>      public Xml(PropertyStore propertyStore) {<a name="line.73"></a>
-<span class="sourceLineNo">074</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML));<a name="line.74"></a>
-<span class="sourceLineNo">075</span>      }<a name="line.75"></a>
-<span class="sourceLineNo">076</span>   }<a name="line.76"></a>
+<span class="sourceLineNo">019</span>import org.apache.juneau.serializer.*;<a name="line.19"></a>
+<span class="sourceLineNo">020</span><a name="line.20"></a>
+<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
+<span class="sourceLineNo">022</span> * Serializes POJOs to RDF.<a name="line.22"></a>
+<span class="sourceLineNo">023</span> *<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * <a name="line.25"></a>
+<span class="sourceLineNo">026</span> * Refer to &lt;a class="doclink" href="package-summary.html#SerializerConfigurableProperties"&gt;Configurable Properties&lt;/a&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> *    for the entire list of configurable properties.<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * <a name="line.30"></a>
+<span class="sourceLineNo">031</span> * The following direct subclasses are provided for language-specific serializers:<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;ul&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *    &lt;li&gt;{@link RdfSerializer.Xml} - RDF/XML.<a name="line.33"></a>
+<span class="sourceLineNo">034</span> *    &lt;li&gt;{@link RdfSerializer.XmlAbbrev} - RDF/XML-ABBREV.<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *    &lt;li&gt;{@link RdfSerializer.NTriple} - N-TRIPLE.<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *    &lt;li&gt;{@link RdfSerializer.Turtle} - TURTLE.<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;{@link RdfSerializer.N3} - N3.<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * &lt;/ul&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *<a name="line.39"></a>
+<span class="sourceLineNo">040</span> * &lt;h5 class='section'&gt;Additional information:&lt;/h5&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span> * <a name="line.41"></a>
+<span class="sourceLineNo">042</span> * See &lt;a class="doclink" href="package-summary.html#TOC"&gt;RDF Overview&lt;/a&gt; for an overview of RDF support in Juneau.<a name="line.42"></a>
+<span class="sourceLineNo">043</span> */<a name="line.43"></a>
+<span class="sourceLineNo">044</span>public class RdfSerializer extends WriterSerializer {<a name="line.44"></a>
+<span class="sourceLineNo">045</span><a name="line.45"></a>
+<span class="sourceLineNo">046</span>   /** Default RDF/XML serializer, all default settings.*/<a name="line.46"></a>
+<span class="sourceLineNo">047</span>   public static final RdfSerializer DEFAULT_XML = new Xml(PropertyStore.create());<a name="line.47"></a>
+<span class="sourceLineNo">048</span><a name="line.48"></a>
+<span class="sourceLineNo">049</span>   /** Default Abbreviated RDF/XML serializer, all default settings.*/<a name="line.49"></a>
+<span class="sourceLineNo">050</span>   public static final RdfSerializer DEFAULT_XMLABBREV = new XmlAbbrev(PropertyStore.create());<a name="line.50"></a>
+<span class="sourceLineNo">051</span><a name="line.51"></a>
+<span class="sourceLineNo">052</span>   /** Default Turtle serializer, all default settings.*/<a name="line.52"></a>
+<span class="sourceLineNo">053</span>   public static final RdfSerializer DEFAULT_TURTLE = new Turtle(PropertyStore.create());<a name="line.53"></a>
+<span class="sourceLineNo">054</span><a name="line.54"></a>
+<span class="sourceLineNo">055</span>   /** Default N-Triple serializer, all default settings.*/<a name="line.55"></a>
+<span class="sourceLineNo">056</span>   public static final RdfSerializer DEFAULT_NTRIPLE = new NTriple(PropertyStore.create());<a name="line.56"></a>
+<span class="sourceLineNo">057</span><a name="line.57"></a>
+<span class="sourceLineNo">058</span>   /** Default N3 serializer, all default settings.*/<a name="line.58"></a>
+<span class="sourceLineNo">059</span>   public static final RdfSerializer DEFAULT_N3 = new N3(PropertyStore.create());<a name="line.59"></a>
+<span class="sourceLineNo">060</span><a name="line.60"></a>
+<span class="sourceLineNo">061</span><a name="line.61"></a>
+<span class="sourceLineNo">062</span>   /** Produces RDF/XML output */<a name="line.62"></a>
+<span class="sourceLineNo">063</span>   public static class Xml extends RdfSerializer {<a name="line.63"></a>
+<span class="sourceLineNo">064</span><a name="line.64"></a>
+<span class="sourceLineNo">065</span>      /**<a name="line.65"></a>
+<span class="sourceLineNo">066</span>       * Constructor.<a name="line.66"></a>
+<span class="sourceLineNo">067</span>       * <a name="line.67"></a>
+<span class="sourceLineNo">068</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.68"></a>
+<span class="sourceLineNo">069</span>       */<a name="line.69"></a>
+<span class="sourceLineNo">070</span>      public Xml(PropertyStore propertyStore) {<a name="line.70"></a>
+<span class="sourceLineNo">071</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML), "text/xml+rdf");<a name="line.71"></a>
+<span class="sourceLineNo">072</span>      }<a name="line.72"></a>
+<span class="sourceLineNo">073</span>   }<a name="line.73"></a>
+<span class="sourceLineNo">074</span><a name="line.74"></a>
+<span class="sourceLineNo">075</span>   /** Produces Abbreviated RDF/XML output */<a name="line.75"></a>
+<span class="sourceLineNo">076</span>   public static class XmlAbbrev extends RdfSerializer {<a name="line.76"></a>
 <span class="sourceLineNo">077</span><a name="line.77"></a>
-<span class="sourceLineNo">078</span>   /** Produces Abbreviated RDF/XML output */<a name="line.78"></a>
-<span class="sourceLineNo">079</span>   @Produces(value="text/xml+rdf+abbrev", contentType="text/xml+rdf")<a name="line.79"></a>
-<span class="sourceLineNo">080</span>   public static class XmlAbbrev extends RdfSerializer {<a name="line.80"></a>
-<span class="sourceLineNo">081</span><a name="line.81"></a>
-<span class="sourceLineNo">082</span>      /**<a name="line.82"></a>
-<span class="sourceLineNo">083</span>       * Constructor.<a name="line.83"></a>
-<span class="sourceLineNo">084</span>       * <a name="line.84"></a>
-<span class="sourceLineNo">085</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.85"></a>
-<span class="sourceLineNo">086</span>       */<a name="line.86"></a>
-<span class="sourceLineNo">087</span>      public XmlAbbrev(PropertyStore propertyStore) {<a name="line.87"></a>
-<span class="sourceLineNo">088</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML_ABBREV));<a name="line.88"></a>
-<span class="sourceLineNo">089</span>      }<a name="line.89"></a>
-<span class="sourceLineNo">090</span>   }<a name="line.90"></a>
-<span class="sourceLineNo">091</span><a name="line.91"></a>
-<span class="sourceLineNo">092</span>   /** Produces N-Triple output */<a name="line.92"></a>
-<span class="sourceLineNo">093</span>   @Produces("text/n-triple")<a name="line.93"></a>
-<span class="sourceLineNo">094</span>   public static class NTriple extends RdfSerializer {<a name="line.94"></a>
-<span class="sourceLineNo">095</span><a name="line.95"></a>
-<span class="sourceLineNo">096</span>      /**<a name="line.96"></a>
-<span class="sourceLineNo">097</span>       * Constructor.<a name="line.97"></a>
-<span class="sourceLineNo">098</span>       * <a name="line.98"></a>
-<span class="sourceLineNo">099</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.99"></a>
-<span class="sourceLineNo">100</span>       */<a name="line.100"></a>
-<span class="sourceLineNo">101</span>      public NTriple(PropertyStore propertyStore) {<a name="line.101"></a>
-<span class="sourceLineNo">102</span>         super(propertyStore.copy().append(RDF_language, LANG_NTRIPLE));<a name="line.102"></a>
-<span class="sourceLineNo">103</span>      }<a name="line.103"></a>
-<span class="sourceLineNo">104</span>   }<a name="line.104"></a>
-<span class="sourceLineNo">105</span><a name="line.105"></a>
-<span class="sourceLineNo">106</span>   /** Produces Turtle output */<a name="line.106"></a>
-<span class="sourceLineNo">107</span>   @Produces("text/turtle")<a name="line.107"></a>
-<span class="sourceLineNo">108</span>   public static class Turtle extends RdfSerializer {<a name="line.108"></a>
-<span class="sourceLineNo">109</span><a name="line.109"></a>
-<span class="sourceLineNo">110</span>      /**<a name="line.110"></a>
-<span class="sourceLineNo">111</span>       * Constructor.<a name="line.111"></a>
-<span class="sourceLineNo">112</span>       * <a name="line.112"></a>
-<span class="sourceLineNo">113</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.113"></a>
-<span class="sourceLineNo">114</span>       */<a name="line.114"></a>
-<span class="sourceLineNo">115</span>      public Turtle(PropertyStore propertyStore) {<a name="line.115"></a>
-<span class="sourceLineNo">116</span>         super(propertyStore.copy().append(RDF_language, LANG_TURTLE));<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      }<a name="line.117"></a>
-<span class="sourceLineNo">118</span>   }<a name="line.118"></a>
-<span class="sourceLineNo">119</span><a name="line.119"></a>
-<span class="sourceLineNo">120</span>   /** Produces N3 output */<a name="line.120"></a>
-<span class="sourceLineNo">121</span>   @Produces("text/n3")<a name="line.121"></a>
-<span class="sourceLineNo">122</span>   public static class N3 extends RdfSerializer {<a name="line.122"></a>
-<span class="sourceLineNo">123</span><a name="line.123"></a>
-<span class="sourceLineNo">124</span>      /**<a name="line.124"></a>
-<span class="sourceLineNo">125</span>       * Constructor.<a name="line.125"></a>
-<span class="sourceLineNo">126</span>       * <a name="line.126"></a>
-<span class="sourceLineNo">127</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.127"></a>
-<span class="sourceLineNo">128</span>       */<a name="line.128"></a>
-<span class="sourceLineNo">129</span>      public N3(PropertyStore propertyStore) {<a name="line.129"></a>
-<span class="sourceLineNo">130</span>         super(propertyStore.copy().append(RDF_language, LANG_N3));<a name="line.130"></a>
-<span class="sourceLineNo">131</span>      }<a name="line.131"></a>
-<span class="sourceLineNo">132</span>   }<a name="line.132"></a>
-<span class="sourceLineNo">133</span><a name="line.133"></a>
-<span class="sourceLineNo">134</span><a name="line.134"></a>
-<span class="sourceLineNo">135</span>   private final RdfSerializerContext ctx;<a name="line.135"></a>
-<span class="sourceLineNo">136</span><a name="line.136"></a>
-<span class="sourceLineNo">137</span>   /**<a name="line.137"></a>
-<span class="sourceLineNo">138</span>    * Constructor.<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    * <a name="line.139"></a>
-<span class="sourceLineNo">140</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.140"></a>
-<span class="sourceLineNo">141</span>    */<a name="line.141"></a>
-<span class="sourceLineNo">142</span>   public RdfSerializer(PropertyStore propertyStore) {<a name="line.142"></a>
-<span class="sourceLineNo">143</span>      super(propertyStore);<a name="line.143"></a>
-<span class="sourceLineNo">144</span>      this.ctx = createContext(RdfSerializerContext.class);<a name="line.144"></a>
-<span class="sourceLineNo">145</span>   }<a name="line.145"></a>
-<span class="sourceLineNo">146</span><a name="line.146"></a>
-<span class="sourceLineNo">147</span>   @Override /* CoreObject */<a name="line.147"></a>
-<span class="sourceLineNo">148</span>   public RdfSerializerBuilder builder() {<a name="line.148"></a>
-<span class="sourceLineNo">149</span>      return new RdfSerializerBuilder(propertyStore);<a name="line.149"></a>
-<span class="sourceLineNo">150</span>   }<a name="line.150"></a>
-<span class="sourceLineNo">151</span><a name="line.151"></a>
-<span class="sourceLineNo">152</span>   @Override /* Serializer */<a name="line.152"></a>
-<span class="sourceLineNo">153</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.153"></a>
-<span class="sourceLineNo">154</span>      return new RdfSerializerSession(ctx, args);<a name="line.154"></a>
-<span class="sourceLineNo">155</span>   }<a name="line.155"></a>
-<span class="sourceLineNo">156</span>}<a name="line.156"></a>
+<span class="sourceLineNo">078</span>      /**<a name="line.78"></a>
+<span class="sourceLineNo">079</span>       * Constructor.<a name="line.79"></a>
+<span class="sourceLineNo">080</span>       * <a name="line.80"></a>
+<span class="sourceLineNo">081</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.81"></a>
+<span class="sourceLineNo">082</span>       */<a name="line.82"></a>
+<span class="sourceLineNo">083</span>      public XmlAbbrev(PropertyStore propertyStore) {<a name="line.83"></a>
+<span class="sourceLineNo">084</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML_ABBREV), "text/xml+rdf", "text/xml+rdf+abbrev");<a name="line.84"></a>
+<span class="sourceLineNo">085</span>      }<a name="line.85"></a>
+<span class="sourceLineNo">086</span>   }<a name="line.86"></a>
+<span class="sourceLineNo">087</span><a name="line.87"></a>
+<span class="sourceLineNo">088</span>   /** Produces N-Triple output */<a name="line.88"></a>
+<span class="sourceLineNo">089</span>   public static class NTriple extends RdfSerializer {<a name="line.89"></a>
+<span class="sourceLineNo">090</span><a name="line.90"></a>
+<span class="sourceLineNo">091</span>      /**<a name="line.91"></a>
+<span class="sourceLineNo">092</span>       * Constructor.<a name="line.92"></a>
+<span class="sourceLineNo">093</span>       * <a name="line.93"></a>
+<span class="sourceLineNo">094</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.94"></a>
+<span class="sourceLineNo">095</span>       */<a name="line.95"></a>
+<span class="sourceLineNo">096</span>      public NTriple(PropertyStore propertyStore) {<a name="line.96"></a>
+<span class="sourceLineNo">097</span>         super(propertyStore.copy().append(RDF_language, LANG_NTRIPLE), "text/n-triple");<a name="line.97"></a>
+<span class="sourceLineNo">098</span>      }<a name="line.98"></a>
+<span class="sourceLineNo">099</span>   }<a name="line.99"></a>
+<span class="sourceLineNo">100</span><a name="line.100"></a>
+<span class="sourceLineNo">101</span>   /** Produces Turtle output */<a name="line.101"></a>
+<span class="sourceLineNo">102</span>   public static class Turtle extends RdfSerializer {<a name="line.102"></a>
+<span class="sourceLineNo">103</span><a name="line.103"></a>
+<span class="sourceLineNo">104</span>      /**<a name="line.104"></a>
+<span class="sourceLineNo">105</span>       * Constructor.<a name="line.105"></a>
+<span class="sourceLineNo">106</span>       * <a name="line.106"></a>
+<span class="sourceLineNo">107</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.107"></a>
+<span class="sourceLineNo">108</span>       */<a name="line.108"></a>
+<span class="sourceLineNo">109</span>      public Turtle(PropertyStore propertyStore) {<a name="line.109"></a>
+<span class="sourceLineNo">110</span>         super(propertyStore.copy().append(RDF_language, LANG_TURTLE), "text/turtle");<a name="line.110"></a>
+<span class="sourceLineNo">111</span>      }<a name="line.111"></a>
+<span class="sourceLineNo">112</span>   }<a name="line.112"></a>
+<span class="sourceLineNo">113</span><a name="line.113"></a>
+<span class="sourceLineNo">114</span>   /** Produces N3 output */<a name="line.114"></a>
+<span class="sourceLineNo">115</span>   public static class N3 extends RdfSerializer {<a name="line.115"></a>
+<span class="sourceLineNo">116</span><a name="line.116"></a>
+<span class="sourceLineNo">117</span>      /**<a name="line.117"></a>
+<span class="sourceLineNo">118</span>       * Constructor.<a name="line.118"></a>
+<span class="sourceLineNo">119</span>       * <a name="line.119"></a>
+<span class="sourceLineNo">120</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.120"></a>
+<span class="sourceLineNo">121</span>       */<a name="line.121"></a>
+<span class="sourceLineNo">122</span>      public N3(PropertyStore propertyStore) {<a name="line.122"></a>
+<span class="sourceLineNo">123</span>         super(propertyStore.copy().append(RDF_language, LANG_N3), "text/n3");<a name="line.123"></a>
+<span class="sourceLineNo">124</span>      }<a name="line.124"></a>
+<span class="sourceLineNo">125</span>   }<a name="line.125"></a>
+<span class="sourceLineNo">126</span><a name="line.126"></a>
+<span class="sourceLineNo">127</span><a name="line.127"></a>
+<span class="sourceLineNo">128</span>   private final RdfSerializerContext ctx;<a name="line.128"></a>
+<span class="sourceLineNo">129</span><a name="line.129"></a>
+<span class="sourceLineNo">130</span>   /**<a name="line.130"></a>
+<span class="sourceLineNo">131</span>    * Constructor.<a name="line.131"></a>
+<span class="sourceLineNo">132</span>    *<a name="line.132"></a>
+<span class="sourceLineNo">133</span>    * @param propertyStore<a name="line.133"></a>
+<span class="sourceLineNo">134</span>    *    The property store containing all the settings for this object.<a name="line.134"></a>
+<span class="sourceLineNo">135</span>    * @param produces<a name="line.135"></a>
+<span class="sourceLineNo">136</span>    *    The media type that this serializer produces.<a name="line.136"></a>
+<span class="sourceLineNo">137</span>    * @param accept<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    *    The accept media types that the serializer can handle.<a name="line.138"></a>
+<span class="sourceLineNo">139</span>    *    &lt;p&gt;<a name="line.139"></a>
+<span class="sourceLineNo">140</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.140"></a>
+<span class="sourceLineNo">141</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.141"></a>
+<span class="sourceLineNo">142</span>    *    &lt;p&gt;<a name="line.142"></a>
+<span class="sourceLineNo">143</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.143"></a>
+<span class="sourceLineNo">144</span>    *    &lt;p&gt;<a name="line.144"></a>
+<span class="sourceLineNo">145</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.146"></a>
+<span class="sourceLineNo">147</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.147"></a>
+<span class="sourceLineNo">148</span>    *    &lt;br&gt;...or...<a name="line.148"></a>
+<span class="sourceLineNo">149</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.149"></a>
+<span class="sourceLineNo">150</span>    */<a name="line.150"></a>
+<span class="sourceLineNo">151</span>   public RdfSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.151"></a>
+<span class="sourceLineNo">152</span>      super(propertyStore, produces, accept);<a name="line.152"></a>
+<span class="sourceLineNo">153</span>      this.ctx = createContext(RdfSerializerContext.class);<a name="line.153"></a>
+<span class="sourceLineNo">154</span>   }<a name="line.154"></a>
+<span class="sourceLineNo">155</span><a name="line.155"></a>
+<span class="sourceLineNo">156</span>   @Override /* CoreObject */<a name="line.156"></a>
+<span class="sourceLineNo">157</span>   public RdfSerializerBuilder builder() {<a name="line.157"></a>
+<span class="sourceLineNo">158</span>      return new RdfSerializerBuilder(propertyStore);<a name="line.158"></a>
+<span class="sourceLineNo">159</span>   }<a name="line.159"></a>
+<span class="sourceLineNo">160</span><a name="line.160"></a>
+<span class="sourceLineNo">161</span>   @Override /* Serializer */<a name="line.161"></a>
+<span class="sourceLineNo">162</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.162"></a>
+<span class="sourceLineNo">163</span>      return new RdfSerializerSession(ctx, args);<a name="line.163"></a>
+<span class="sourceLineNo">164</span>   }<a name="line.164"></a>
+<span class="sourceLineNo">165</span>}<a name="line.165"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.html b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.html
index d03eb62..e3f2a96 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializer.html
@@ -24,144 +24,153 @@
 <span class="sourceLineNo">016</span>import static org.apache.juneau.jena.RdfCommonContext.*;<a name="line.16"></a>
 <span class="sourceLineNo">017</span><a name="line.17"></a>
 <span class="sourceLineNo">018</span>import org.apache.juneau.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.annotation.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span><a name="line.21"></a>
-<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * Serializes POJOs to RDF.<a name="line.23"></a>
-<span class="sourceLineNo">024</span> *<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * <a name="line.26"></a>
-<span class="sourceLineNo">027</span> * Refer to &lt;a class="doclink" href="package-summary.html#SerializerConfigurableProperties"&gt;Configurable Properties&lt;/a&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> *    for the entire list of configurable properties.<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * <a name="line.31"></a>
-<span class="sourceLineNo">032</span> * The following direct subclasses are provided for language-specific serializers:<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;ul&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *    &lt;li&gt;{@link RdfSerializer.Xml} - RDF/XML.<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *    &lt;li&gt;{@link RdfSerializer.XmlAbbrev} - RDF/XML-ABBREV.<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *    &lt;li&gt;{@link RdfSerializer.NTriple} - N-TRIPLE.<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *    &lt;li&gt;{@link RdfSerializer.Turtle} - TURTLE.<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;{@link RdfSerializer.N3} - N3.<a name="line.38"></a>
-<span class="sourceLineNo">039</span> * &lt;/ul&gt;<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *<a name="line.40"></a>
-<span class="sourceLineNo">041</span> * &lt;h5 class='section'&gt;Additional information:&lt;/h5&gt;<a name="line.41"></a>
-<span class="sourceLineNo">042</span> * <a name="line.42"></a>
-<span class="sourceLineNo">043</span> * See &lt;a class="doclink" href="package-summary.html#TOC"&gt;RDF Overview&lt;/a&gt; for an overview of RDF support in Juneau.<a name="line.43"></a>
-<span class="sourceLineNo">044</span> */<a name="line.44"></a>
-<span class="sourceLineNo">045</span>@Produces(value="text/xml+rdf+abbrev", contentType="text/xml+rdf")<a name="line.45"></a>
-<span class="sourceLineNo">046</span>public class RdfSerializer extends WriterSerializer {<a name="line.46"></a>
-<span class="sourceLineNo">047</span><a name="line.47"></a>
-<span class="sourceLineNo">048</span>   /** Default RDF/XML serializer, all default settings.*/<a name="line.48"></a>
-<span class="sourceLineNo">049</span>   public static final RdfSerializer DEFAULT_XML = new Xml(PropertyStore.create());<a name="line.49"></a>
-<span class="sourceLineNo">050</span><a name="line.50"></a>
-<span class="sourceLineNo">051</span>   /** Default Abbreviated RDF/XML serializer, all default settings.*/<a name="line.51"></a>
-<span class="sourceLineNo">052</span>   public static final RdfSerializer DEFAULT_XMLABBREV = new XmlAbbrev(PropertyStore.create());<a name="line.52"></a>
-<span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>   /** Default Turtle serializer, all default settings.*/<a name="line.54"></a>
-<span class="sourceLineNo">055</span>   public static final RdfSerializer DEFAULT_TURTLE = new Turtle(PropertyStore.create());<a name="line.55"></a>
-<span class="sourceLineNo">056</span><a name="line.56"></a>
-<span class="sourceLineNo">057</span>   /** Default N-Triple serializer, all default settings.*/<a name="line.57"></a>
-<span class="sourceLineNo">058</span>   public static final RdfSerializer DEFAULT_NTRIPLE = new NTriple(PropertyStore.create());<a name="line.58"></a>
-<span class="sourceLineNo">059</span><a name="line.59"></a>
-<span class="sourceLineNo">060</span>   /** Default N3 serializer, all default settings.*/<a name="line.60"></a>
-<span class="sourceLineNo">061</span>   public static final RdfSerializer DEFAULT_N3 = new N3(PropertyStore.create());<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span><a name="line.63"></a>
-<span class="sourceLineNo">064</span>   /** Produces RDF/XML output */<a name="line.64"></a>
-<span class="sourceLineNo">065</span>   @Produces("text/xml+rdf")<a name="line.65"></a>
-<span class="sourceLineNo">066</span>   public static class Xml extends RdfSerializer {<a name="line.66"></a>
-<span class="sourceLineNo">067</span><a name="line.67"></a>
-<span class="sourceLineNo">068</span>      /**<a name="line.68"></a>
-<span class="sourceLineNo">069</span>       * Constructor.<a name="line.69"></a>
-<span class="sourceLineNo">070</span>       * <a name="line.70"></a>
-<span class="sourceLineNo">071</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.71"></a>
-<span class="sourceLineNo">072</span>       */<a name="line.72"></a>
-<span class="sourceLineNo">073</span>      public Xml(PropertyStore propertyStore) {<a name="line.73"></a>
-<span class="sourceLineNo">074</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML));<a name="line.74"></a>
-<span class="sourceLineNo">075</span>      }<a name="line.75"></a>
-<span class="sourceLineNo">076</span>   }<a name="line.76"></a>
+<span class="sourceLineNo">019</span>import org.apache.juneau.serializer.*;<a name="line.19"></a>
+<span class="sourceLineNo">020</span><a name="line.20"></a>
+<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
+<span class="sourceLineNo">022</span> * Serializes POJOs to RDF.<a name="line.22"></a>
+<span class="sourceLineNo">023</span> *<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * <a name="line.25"></a>
+<span class="sourceLineNo">026</span> * Refer to &lt;a class="doclink" href="package-summary.html#SerializerConfigurableProperties"&gt;Configurable Properties&lt;/a&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> *    for the entire list of configurable properties.<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * <a name="line.30"></a>
+<span class="sourceLineNo">031</span> * The following direct subclasses are provided for language-specific serializers:<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;ul&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *    &lt;li&gt;{@link RdfSerializer.Xml} - RDF/XML.<a name="line.33"></a>
+<span class="sourceLineNo">034</span> *    &lt;li&gt;{@link RdfSerializer.XmlAbbrev} - RDF/XML-ABBREV.<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *    &lt;li&gt;{@link RdfSerializer.NTriple} - N-TRIPLE.<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *    &lt;li&gt;{@link RdfSerializer.Turtle} - TURTLE.<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;{@link RdfSerializer.N3} - N3.<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * &lt;/ul&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *<a name="line.39"></a>
+<span class="sourceLineNo">040</span> * &lt;h5 class='section'&gt;Additional information:&lt;/h5&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span> * <a name="line.41"></a>
+<span class="sourceLineNo">042</span> * See &lt;a class="doclink" href="package-summary.html#TOC"&gt;RDF Overview&lt;/a&gt; for an overview of RDF support in Juneau.<a name="line.42"></a>
+<span class="sourceLineNo">043</span> */<a name="line.43"></a>
+<span class="sourceLineNo">044</span>public class RdfSerializer extends WriterSerializer {<a name="line.44"></a>
+<span class="sourceLineNo">045</span><a name="line.45"></a>
+<span class="sourceLineNo">046</span>   /** Default RDF/XML serializer, all default settings.*/<a name="line.46"></a>
+<span class="sourceLineNo">047</span>   public static final RdfSerializer DEFAULT_XML = new Xml(PropertyStore.create());<a name="line.47"></a>
+<span class="sourceLineNo">048</span><a name="line.48"></a>
+<span class="sourceLineNo">049</span>   /** Default Abbreviated RDF/XML serializer, all default settings.*/<a name="line.49"></a>
+<span class="sourceLineNo">050</span>   public static final RdfSerializer DEFAULT_XMLABBREV = new XmlAbbrev(PropertyStore.create());<a name="line.50"></a>
+<span class="sourceLineNo">051</span><a name="line.51"></a>
+<span class="sourceLineNo">052</span>   /** Default Turtle serializer, all default settings.*/<a name="line.52"></a>
+<span class="sourceLineNo">053</span>   public static final RdfSerializer DEFAULT_TURTLE = new Turtle(PropertyStore.create());<a name="line.53"></a>
+<span class="sourceLineNo">054</span><a name="line.54"></a>
+<span class="sourceLineNo">055</span>   /** Default N-Triple serializer, all default settings.*/<a name="line.55"></a>
+<span class="sourceLineNo">056</span>   public static final RdfSerializer DEFAULT_NTRIPLE = new NTriple(PropertyStore.create());<a name="line.56"></a>
+<span class="sourceLineNo">057</span><a name="line.57"></a>
+<span class="sourceLineNo">058</span>   /** Default N3 serializer, all default settings.*/<a name="line.58"></a>
+<span class="sourceLineNo">059</span>   public static final RdfSerializer DEFAULT_N3 = new N3(PropertyStore.create());<a name="line.59"></a>
+<span class="sourceLineNo">060</span><a name="line.60"></a>
+<span class="sourceLineNo">061</span><a name="line.61"></a>
+<span class="sourceLineNo">062</span>   /** Produces RDF/XML output */<a name="line.62"></a>
+<span class="sourceLineNo">063</span>   public static class Xml extends RdfSerializer {<a name="line.63"></a>
+<span class="sourceLineNo">064</span><a name="line.64"></a>
+<span class="sourceLineNo">065</span>      /**<a name="line.65"></a>
+<span class="sourceLineNo">066</span>       * Constructor.<a name="line.66"></a>
+<span class="sourceLineNo">067</span>       * <a name="line.67"></a>
+<span class="sourceLineNo">068</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.68"></a>
+<span class="sourceLineNo">069</span>       */<a name="line.69"></a>
+<span class="sourceLineNo">070</span>      public Xml(PropertyStore propertyStore) {<a name="line.70"></a>
+<span class="sourceLineNo">071</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML), "text/xml+rdf");<a name="line.71"></a>
+<span class="sourceLineNo">072</span>      }<a name="line.72"></a>
+<span class="sourceLineNo">073</span>   }<a name="line.73"></a>
+<span class="sourceLineNo">074</span><a name="line.74"></a>
+<span class="sourceLineNo">075</span>   /** Produces Abbreviated RDF/XML output */<a name="line.75"></a>
+<span class="sourceLineNo">076</span>   public static class XmlAbbrev extends RdfSerializer {<a name="line.76"></a>
 <span class="sourceLineNo">077</span><a name="line.77"></a>
-<span class="sourceLineNo">078</span>   /** Produces Abbreviated RDF/XML output */<a name="line.78"></a>
-<span class="sourceLineNo">079</span>   @Produces(value="text/xml+rdf+abbrev", contentType="text/xml+rdf")<a name="line.79"></a>
-<span class="sourceLineNo">080</span>   public static class XmlAbbrev extends RdfSerializer {<a name="line.80"></a>
-<span class="sourceLineNo">081</span><a name="line.81"></a>
-<span class="sourceLineNo">082</span>      /**<a name="line.82"></a>
-<span class="sourceLineNo">083</span>       * Constructor.<a name="line.83"></a>
-<span class="sourceLineNo">084</span>       * <a name="line.84"></a>
-<span class="sourceLineNo">085</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.85"></a>
-<span class="sourceLineNo">086</span>       */<a name="line.86"></a>
-<span class="sourceLineNo">087</span>      public XmlAbbrev(PropertyStore propertyStore) {<a name="line.87"></a>
-<span class="sourceLineNo">088</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML_ABBREV));<a name="line.88"></a>
-<span class="sourceLineNo">089</span>      }<a name="line.89"></a>
-<span class="sourceLineNo">090</span>   }<a name="line.90"></a>
-<span class="sourceLineNo">091</span><a name="line.91"></a>
-<span class="sourceLineNo">092</span>   /** Produces N-Triple output */<a name="line.92"></a>
-<span class="sourceLineNo">093</span>   @Produces("text/n-triple")<a name="line.93"></a>
-<span class="sourceLineNo">094</span>   public static class NTriple extends RdfSerializer {<a name="line.94"></a>
-<span class="sourceLineNo">095</span><a name="line.95"></a>
-<span class="sourceLineNo">096</span>      /**<a name="line.96"></a>
-<span class="sourceLineNo">097</span>       * Constructor.<a name="line.97"></a>
-<span class="sourceLineNo">098</span>       * <a name="line.98"></a>
-<span class="sourceLineNo">099</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.99"></a>
-<span class="sourceLineNo">100</span>       */<a name="line.100"></a>
-<span class="sourceLineNo">101</span>      public NTriple(PropertyStore propertyStore) {<a name="line.101"></a>
-<span class="sourceLineNo">102</span>         super(propertyStore.copy().append(RDF_language, LANG_NTRIPLE));<a name="line.102"></a>
-<span class="sourceLineNo">103</span>      }<a name="line.103"></a>
-<span class="sourceLineNo">104</span>   }<a name="line.104"></a>
-<span class="sourceLineNo">105</span><a name="line.105"></a>
-<span class="sourceLineNo">106</span>   /** Produces Turtle output */<a name="line.106"></a>
-<span class="sourceLineNo">107</span>   @Produces("text/turtle")<a name="line.107"></a>
-<span class="sourceLineNo">108</span>   public static class Turtle extends RdfSerializer {<a name="line.108"></a>
-<span class="sourceLineNo">109</span><a name="line.109"></a>
-<span class="sourceLineNo">110</span>      /**<a name="line.110"></a>
-<span class="sourceLineNo">111</span>       * Constructor.<a name="line.111"></a>
-<span class="sourceLineNo">112</span>       * <a name="line.112"></a>
-<span class="sourceLineNo">113</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.113"></a>
-<span class="sourceLineNo">114</span>       */<a name="line.114"></a>
-<span class="sourceLineNo">115</span>      public Turtle(PropertyStore propertyStore) {<a name="line.115"></a>
-<span class="sourceLineNo">116</span>         super(propertyStore.copy().append(RDF_language, LANG_TURTLE));<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      }<a name="line.117"></a>
-<span class="sourceLineNo">118</span>   }<a name="line.118"></a>
-<span class="sourceLineNo">119</span><a name="line.119"></a>
-<span class="sourceLineNo">120</span>   /** Produces N3 output */<a name="line.120"></a>
-<span class="sourceLineNo">121</span>   @Produces("text/n3")<a name="line.121"></a>
-<span class="sourceLineNo">122</span>   public static class N3 extends RdfSerializer {<a name="line.122"></a>
-<span class="sourceLineNo">123</span><a name="line.123"></a>
-<span class="sourceLineNo">124</span>      /**<a name="line.124"></a>
-<span class="sourceLineNo">125</span>       * Constructor.<a name="line.125"></a>
-<span class="sourceLineNo">126</span>       * <a name="line.126"></a>
-<span class="sourceLineNo">127</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.127"></a>
-<span class="sourceLineNo">128</span>       */<a name="line.128"></a>
-<span class="sourceLineNo">129</span>      public N3(PropertyStore propertyStore) {<a name="line.129"></a>
-<span class="sourceLineNo">130</span>         super(propertyStore.copy().append(RDF_language, LANG_N3));<a name="line.130"></a>
-<span class="sourceLineNo">131</span>      }<a name="line.131"></a>
-<span class="sourceLineNo">132</span>   }<a name="line.132"></a>
-<span class="sourceLineNo">133</span><a name="line.133"></a>
-<span class="sourceLineNo">134</span><a name="line.134"></a>
-<span class="sourceLineNo">135</span>   private final RdfSerializerContext ctx;<a name="line.135"></a>
-<span class="sourceLineNo">136</span><a name="line.136"></a>
-<span class="sourceLineNo">137</span>   /**<a name="line.137"></a>
-<span class="sourceLineNo">138</span>    * Constructor.<a name="line.138"></a>
-<span class="sourceLineNo">139</span>    * <a name="line.139"></a>
-<span class="sourceLineNo">140</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.140"></a>
-<span class="sourceLineNo">141</span>    */<a name="line.141"></a>
-<span class="sourceLineNo">142</span>   public RdfSerializer(PropertyStore propertyStore) {<a name="line.142"></a>
-<span class="sourceLineNo">143</span>      super(propertyStore);<a name="line.143"></a>
-<span class="sourceLineNo">144</span>      this.ctx = createContext(RdfSerializerContext.class);<a name="line.144"></a>
-<span class="sourceLineNo">145</span>   }<a name="line.145"></a>
-<span class="sourceLineNo">146</span><a name="line.146"></a>
-<span class="sourceLineNo">147</span>   @Override /* CoreObject */<a name="line.147"></a>
-<span class="sourceLineNo">148</span>   public RdfSerializerBuilder builder() {<a name="line.148"></a>
-<span class="sourceLineNo">149</span>      return new RdfSerializerBuilder(propertyStore);<a name="line.149"></a>
-<span class="sourceLineNo">150</span>   }<a name="line.150"></a>
-<span class="sourceLineNo">151</span><a name="line.151"></a>
-<span class="sourceLineNo">152</span>   @Override /* Serializer */<a name="line.152"></a>
-<span class="sourceLineNo">153</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.153"></a>
-<span class="sourceLineNo">154</span>      return new RdfSerializerSession(ctx, args);<a name="line.154"></a>
-<span class="sourceLineNo">155</span>   }<a name="line.155"></a>
-<span class="sourceLineNo">156</span>}<a name="line.156"></a>
+<span class="sourceLineNo">078</span>      /**<a name="line.78"></a>
+<span class="sourceLineNo">079</span>       * Constructor.<a name="line.79"></a>
+<span class="sourceLineNo">080</span>       * <a name="line.80"></a>
+<span class="sourceLineNo">081</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.81"></a>
+<span class="sourceLineNo">082</span>       */<a name="line.82"></a>
+<span class="sourceLineNo">083</span>      public XmlAbbrev(PropertyStore propertyStore) {<a name="line.83"></a>
+<span class="sourceLineNo">084</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML_ABBREV), "text/xml+rdf", "text/xml+rdf+abbrev");<a name="line.84"></a>
+<span class="sourceLineNo">085</span>      }<a name="line.85"></a>
+<span class="sourceLineNo">086</span>   }<a name="line.86"></a>
+<span class="sourceLineNo">087</span><a name="line.87"></a>
+<span class="sourceLineNo">088</span>   /** Produces N-Triple output */<a name="line.88"></a>
+<span class="sourceLineNo">089</span>   public static class NTriple extends RdfSerializer {<a name="line.89"></a>
+<span class="sourceLineNo">090</span><a name="line.90"></a>
+<span class="sourceLineNo">091</span>      /**<a name="line.91"></a>
+<span class="sourceLineNo">092</span>       * Constructor.<a name="line.92"></a>
+<span class="sourceLineNo">093</span>       * <a name="line.93"></a>
+<span class="sourceLineNo">094</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.94"></a>
+<span class="sourceLineNo">095</span>       */<a name="line.95"></a>
+<span class="sourceLineNo">096</span>      public NTriple(PropertyStore propertyStore) {<a name="line.96"></a>
+<span class="sourceLineNo">097</span>         super(propertyStore.copy().append(RDF_language, LANG_NTRIPLE), "text/n-triple");<a name="line.97"></a>
+<span class="sourceLineNo">098</span>      }<a name="line.98"></a>
+<span class="sourceLineNo">099</span>   }<a name="line.99"></a>
+<span class="sourceLineNo">100</span><a name="line.100"></a>
+<span class="sourceLineNo">101</span>   /** Produces Turtle output */<a name="line.101"></a>
+<span class="sourceLineNo">102</span>   public static class Turtle extends RdfSerializer {<a name="line.102"></a>
+<span class="sourceLineNo">103</span><a name="line.103"></a>
+<span class="sourceLineNo">104</span>      /**<a name="line.104"></a>
+<span class="sourceLineNo">105</span>       * Constructor.<a name="line.105"></a>
+<span class="sourceLineNo">106</span>       * <a name="line.106"></a>
+<span class="sourceLineNo">107</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.107"></a>
+<span class="sourceLineNo">108</span>       */<a name="line.108"></a>
+<span class="sourceLineNo">109</span>      public Turtle(PropertyStore propertyStore) {<a name="line.109"></a>
+<span class="sourceLineNo">110</span>         super(propertyStore.copy().append(RDF_language, LANG_TURTLE), "text/turtle");<a name="line.110"></a>
+<span class="sourceLineNo">111</span>      }<a name="line.111"></a>
+<span class="sourceLineNo">112</span>   }<a name="line.112"></a>
+<span class="sourceLineNo">113</span><a name="line.113"></a>
+<span class="sourceLineNo">114</span>   /** Produces N3 output */<a name="line.114"></a>
+<span class="sourceLineNo">115</span>   public static class N3 extends RdfSerializer {<a name="line.115"></a>
+<span class="sourceLineNo">116</span><a name="line.116"></a>
+<span class="sourceLineNo">117</span>      /**<a name="line.117"></a>
+<span class="sourceLineNo">118</span>       * Constructor.<a name="line.118"></a>
+<span class="sourceLineNo">119</span>       * <a name="line.119"></a>
+<span class="sourceLineNo">120</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.120"></a>
+<span class="sourceLineNo">121</span>       */<a name="line.121"></a>
+<span class="sourceLineNo">122</span>      public N3(PropertyStore propertyStore) {<a name="line.122"></a>
+<span class="sourceLineNo">123</span>         super(propertyStore.copy().append(RDF_language, LANG_N3), "text/n3");<a name="line.123"></a>
+<span class="sourceLineNo">124</span>      }<a name="line.124"></a>
+<span class="sourceLineNo">125</span>   }<a name="line.125"></a>
+<span class="sourceLineNo">126</span><a name="line.126"></a>
+<span class="sourceLineNo">127</span><a name="line.127"></a>
+<span class="sourceLineNo">128</span>   private final RdfSerializerContext ctx;<a name="line.128"></a>
+<span class="sourceLineNo">129</span><a name="line.129"></a>
+<span class="sourceLineNo">130</span>   /**<a name="line.130"></a>
+<span class="sourceLineNo">131</span>    * Constructor.<a name="line.131"></a>
+<span class="sourceLineNo">132</span>    *<a name="line.132"></a>
+<span class="sourceLineNo">133</span>    * @param propertyStore<a name="line.133"></a>
+<span class="sourceLineNo">134</span>    *    The property store containing all the settings for this object.<a name="line.134"></a>
+<span class="sourceLineNo">135</span>    * @param produces<a name="line.135"></a>
+<span class="sourceLineNo">136</span>    *    The media type that this serializer produces.<a name="line.136"></a>
+<span class="sourceLineNo">137</span>    * @param accept<a name="line.137"></a>
+<span class="sourceLineNo">138</span>    *    The accept media types that the serializer can handle.<a name="line.138"></a>
+<span class="sourceLineNo">139</span>    *    &lt;p&gt;<a name="line.139"></a>
+<span class="sourceLineNo">140</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.140"></a>
+<span class="sourceLineNo">141</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.141"></a>
+<span class="sourceLineNo">142</span>    *    &lt;p&gt;<a name="line.142"></a>
+<span class="sourceLineNo">143</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.143"></a>
+<span class="sourceLineNo">144</span>    *    &lt;p&gt;<a name="line.144"></a>
+<span class="sourceLineNo">145</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.146"></a>
+<span class="sourceLineNo">147</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.147"></a>
+<span class="sourceLineNo">148</span>    *    &lt;br&gt;...or...<a name="line.148"></a>
+<span class="sourceLineNo">149</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.149"></a>
+<span class="sourceLineNo">150</span>    */<a name="line.150"></a>
+<span class="sourceLineNo">151</span>   public RdfSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.151"></a>
+<span class="sourceLineNo">152</span>      super(propertyStore, produces, accept);<a name="line.152"></a>
+<span class="sourceLineNo">153</span>      this.ctx = createContext(RdfSerializerContext.class);<a name="line.153"></a>
+<span class="sourceLineNo">154</span>   }<a name="line.154"></a>
+<span class="sourceLineNo">155</span><a name="line.155"></a>
+<span class="sourceLineNo">156</span>   @Override /* CoreObject */<a name="line.156"></a>
+<span class="sourceLineNo">157</span>   public RdfSerializerBuilder builder() {<a name="line.157"></a>
+<span class="sourceLineNo">158</span>      return new RdfSerializerBuilder(propertyStore);<a name="line.158"></a>
+<span class="sourceLineNo">159</span>   }<a name="line.159"></a>
+<span class="sourceLineNo">160</span><a name="line.160"></a>
+<span class="sourceLineNo">161</span>   @Override /* Serializer */<a name="line.161"></a>
+<span class="sourceLineNo">162</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.162"></a>
+<span class="sourceLineNo">163</span>      return new RdfSerializerSession(ctx, args);<a name="line.163"></a>
+<span class="sourceLineNo">164</span>   }<a name="line.164"></a>
+<span class="sourceLineNo">165</span>}<a name="line.165"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializerBuilder.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializerBuilder.html b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializerBuilder.html
index 3dc40cd..e46ee9b 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializerBuilder.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializerBuilder.html
@@ -55,7 +55,7 @@
 <span class="sourceLineNo">047</span><a name="line.47"></a>
 <span class="sourceLineNo">048</span>   @Override /* CoreObjectBuilder */<a name="line.48"></a>
 <span class="sourceLineNo">049</span>   public RdfSerializer build() {<a name="line.49"></a>
-<span class="sourceLineNo">050</span>      return new RdfSerializer(propertyStore);<a name="line.50"></a>
+<span class="sourceLineNo">050</span>      return new RdfSerializer(propertyStore, "text/xml+rdf");<a name="line.50"></a>
 <span class="sourceLineNo">051</span>   }<a name="line.51"></a>
 <span class="sourceLineNo">052</span><a name="line.52"></a>
 <span class="sourceLineNo">053</span><a name="line.53"></a>


[18/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/serializer/SerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/serializer/SerializerSession.html b/content/site/apidocs/src-html/org/apache/juneau/serializer/SerializerSession.html
index 8d7e614..9515d47 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/serializer/SerializerSession.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/serializer/SerializerSession.html
@@ -98,798 +98,795 @@
 <span class="sourceLineNo">090</span>    *    These specify session-level information such as locale and URI context.<a name="line.90"></a>
 <span class="sourceLineNo">091</span>    *    It also include session-level properties that override the properties defined on the bean and<a name="line.91"></a>
 <span class="sourceLineNo">092</span>    *    serializer contexts.<a name="line.92"></a>
-<span class="sourceLineNo">093</span>    *    &lt;br&gt;If &lt;jk&gt;null&lt;/jk&gt;, defaults to {@link SerializerSessionArgs#DEFAULT}.<a name="line.93"></a>
-<span class="sourceLineNo">094</span>    */<a name="line.94"></a>
-<span class="sourceLineNo">095</span>   protected SerializerSession(SerializerContext ctx, SerializerSessionArgs args) {<a name="line.95"></a>
-<span class="sourceLineNo">096</span>      super(ctx != null ? ctx : SerializerContext.DEFAULT, args != null ? args : SerializerSessionArgs.DEFAULT);<a name="line.96"></a>
-<span class="sourceLineNo">097</span>      if (ctx == null)<a name="line.97"></a>
-<span class="sourceLineNo">098</span>         ctx = SerializerContext.DEFAULT;<a name="line.98"></a>
-<span class="sourceLineNo">099</span>      if (args == null)<a name="line.99"></a>
-<span class="sourceLineNo">100</span>         args = SerializerSessionArgs.DEFAULT;<a name="line.100"></a>
-<span class="sourceLineNo">101</span>      this.javaMethod = args.javaMethod;<a name="line.101"></a>
-<span class="sourceLineNo">102</span>      UriResolution uriResolution;<a name="line.102"></a>
-<span class="sourceLineNo">103</span>      UriRelativity uriRelativity;<a name="line.103"></a>
-<span class="sourceLineNo">104</span>      Class&lt;?&gt; listenerClass;<a name="line.104"></a>
-<span class="sourceLineNo">105</span>      ObjectMap p = getProperties();<a name="line.105"></a>
-<span class="sourceLineNo">106</span>      if (p.isEmpty()) {<a name="line.106"></a>
-<span class="sourceLineNo">107</span>         maxDepth = ctx.maxDepth;<a name="line.107"></a>
-<span class="sourceLineNo">108</span>         initialDepth = ctx.initialDepth;<a name="line.108"></a>
-<span class="sourceLineNo">109</span>         detectRecursions = ctx.detectRecursions;<a name="line.109"></a>
-<span class="sourceLineNo">110</span>         ignoreRecursions = ctx.ignoreRecursions;<a name="line.110"></a>
-<span class="sourceLineNo">111</span>         useWhitespace = ctx.useWhitespace;<a name="line.111"></a>
-<span class="sourceLineNo">112</span>         maxIndent = ctx.maxIndent;<a name="line.112"></a>
-<span class="sourceLineNo">113</span>         addBeanTypeProperties = ctx.addBeanTypeProperties;<a name="line.113"></a>
-<span class="sourceLineNo">114</span>         trimNulls = ctx.trimNulls;<a name="line.114"></a>
-<span class="sourceLineNo">115</span>         trimEmptyCollections = ctx.trimEmptyCollections;<a name="line.115"></a>
-<span class="sourceLineNo">116</span>         trimEmptyMaps = ctx.trimEmptyMaps;<a name="line.116"></a>
-<span class="sourceLineNo">117</span>         trimStrings = ctx.trimStrings;<a name="line.117"></a>
-<span class="sourceLineNo">118</span>         quoteChar = ctx.quoteChar;<a name="line.118"></a>
-<span class="sourceLineNo">119</span>         sortCollections = ctx.sortCollections;<a name="line.119"></a>
-<span class="sourceLineNo">120</span>         sortMaps = ctx.sortMaps;<a name="line.120"></a>
-<span class="sourceLineNo">121</span>         abridged = ctx.abridged;<a name="line.121"></a>
-<span class="sourceLineNo">122</span>         uriResolution = ctx.uriResolution;<a name="line.122"></a>
-<span class="sourceLineNo">123</span>         uriRelativity = ctx.uriRelativity;<a name="line.123"></a>
-<span class="sourceLineNo">124</span>         listenerClass = ctx.listener;<a name="line.124"></a>
-<span class="sourceLineNo">125</span>      } else {<a name="line.125"></a>
-<span class="sourceLineNo">126</span>         maxDepth = p.getInt(SERIALIZER_maxDepth, ctx.maxDepth);<a name="line.126"></a>
-<span class="sourceLineNo">127</span>         initialDepth = p.getInt(SERIALIZER_initialDepth, ctx.initialDepth);<a name="line.127"></a>
-<span class="sourceLineNo">128</span>         detectRecursions = p.getBoolean(SERIALIZER_detectRecursions, ctx.detectRecursions);<a name="line.128"></a>
-<span class="sourceLineNo">129</span>         ignoreRecursions = p.getBoolean(SERIALIZER_ignoreRecursions, ctx.ignoreRecursions);<a name="line.129"></a>
-<span class="sourceLineNo">130</span>         useWhitespace = p.getBoolean(SERIALIZER_useWhitespace, ctx.useWhitespace);<a name="line.130"></a>
-<span class="sourceLineNo">131</span>         maxIndent = p.getInt(SERIALIZER_maxIndent, ctx.maxIndent);<a name="line.131"></a>
-<span class="sourceLineNo">132</span>         addBeanTypeProperties = p.getBoolean(SERIALIZER_addBeanTypeProperties, ctx.addBeanTypeProperties);<a name="line.132"></a>
-<span class="sourceLineNo">133</span>         trimNulls = p.getBoolean(SERIALIZER_trimNullProperties, ctx.trimNulls);<a name="line.133"></a>
-<span class="sourceLineNo">134</span>         trimEmptyCollections = p.getBoolean(SERIALIZER_trimEmptyCollections, ctx.trimEmptyCollections);<a name="line.134"></a>
-<span class="sourceLineNo">135</span>         trimEmptyMaps = p.getBoolean(SERIALIZER_trimEmptyMaps, ctx.trimEmptyMaps);<a name="line.135"></a>
-<span class="sourceLineNo">136</span>         trimStrings = p.getBoolean(SERIALIZER_trimStrings, ctx.trimStrings);<a name="line.136"></a>
-<span class="sourceLineNo">137</span>         quoteChar = p.getString(SERIALIZER_quoteChar, ""+ctx.quoteChar).charAt(0);<a name="line.137"></a>
-<span class="sourceLineNo">138</span>         sortCollections = p.getBoolean(SERIALIZER_sortCollections, ctx.sortMaps);<a name="line.138"></a>
-<span class="sourceLineNo">139</span>         sortMaps = p.getBoolean(SERIALIZER_sortMaps, ctx.sortMaps);<a name="line.139"></a>
-<span class="sourceLineNo">140</span>         abridged = p.getBoolean(SERIALIZER_abridged, ctx.abridged);<a name="line.140"></a>
-<span class="sourceLineNo">141</span>         uriResolution = p.getWithDefault(SERIALIZER_uriResolution, UriResolution.ROOT_RELATIVE, UriResolution.class);<a name="line.141"></a>
-<span class="sourceLineNo">142</span>         uriRelativity = p.getWithDefault(SERIALIZER_uriRelativity, UriRelativity.RESOURCE, UriRelativity.class);<a name="line.142"></a>
-<span class="sourceLineNo">143</span>         listenerClass = p.getWithDefault(SERIALIZER_listener, ctx.listener, Class.class);<a name="line.143"></a>
-<span class="sourceLineNo">144</span>      }<a name="line.144"></a>
-<span class="sourceLineNo">145</span><a name="line.145"></a>
-<span class="sourceLineNo">146</span>      uriResolver = new UriResolver(uriResolution, uriRelativity, args.uriContext == null ? ctx.uriContext : args.uriContext);<a name="line.146"></a>
-<span class="sourceLineNo">147</span><a name="line.147"></a>
-<span class="sourceLineNo">148</span>      listener = newInstance(SerializerListener.class, listenerClass);<a name="line.148"></a>
-<span class="sourceLineNo">149</span><a name="line.149"></a>
-<span class="sourceLineNo">150</span>      this.indent = initialDepth;<a name="line.150"></a>
-<span class="sourceLineNo">151</span>      if (detectRecursions || isDebug()) {<a name="line.151"></a>
-<span class="sourceLineNo">152</span>         set = new IdentityHashMap&lt;Object,Object&gt;();<a name="line.152"></a>
-<span class="sourceLineNo">153</span>      } else {<a name="line.153"></a>
-<span class="sourceLineNo">154</span>         set = Collections.emptyMap();<a name="line.154"></a>
-<span class="sourceLineNo">155</span>      }<a name="line.155"></a>
-<span class="sourceLineNo">156</span>   }<a name="line.156"></a>
-<span class="sourceLineNo">157</span><a name="line.157"></a>
-<span class="sourceLineNo">158</span>   /**<a name="line.158"></a>
-<span class="sourceLineNo">159</span>    * Wraps the specified input object into a {@link ParserPipe} object so that it can be easily converted into<a name="line.159"></a>
-<span class="sourceLineNo">160</span>    * a stream or reader.<a name="line.160"></a>
-<span class="sourceLineNo">161</span>    *<a name="line.161"></a>
-<span class="sourceLineNo">162</span>    * @param output<a name="line.162"></a>
-<span class="sourceLineNo">163</span>    *    The output location.<a name="line.163"></a>
-<span class="sourceLineNo">164</span>    *    &lt;br&gt;For character-based serializers, this can be any of the following types:<a name="line.164"></a>
-<span class="sourceLineNo">165</span>    *    &lt;ul&gt;<a name="line.165"></a>
-<span class="sourceLineNo">166</span>    *       &lt;li&gt;{@link Writer}<a name="line.166"></a>
-<span class="sourceLineNo">167</span>    *       &lt;li&gt;{@link OutputStream} - Output will be written as UTF-8 encoded stream.<a name="line.167"></a>
-<span class="sourceLineNo">168</span>    *       &lt;li&gt;{@link File} - Output will be written as system-default encoded stream.<a name="line.168"></a>
-<span class="sourceLineNo">169</span>    *       &lt;li&gt;{@link StringBuilder}<a name="line.169"></a>
-<span class="sourceLineNo">170</span>    *    &lt;/ul&gt;<a name="line.170"></a>
-<span class="sourceLineNo">171</span>    *    &lt;br&gt;For byte-based serializers, this can be any of the following types:<a name="line.171"></a>
-<span class="sourceLineNo">172</span>    *    &lt;ul&gt;<a name="line.172"></a>
-<span class="sourceLineNo">173</span>    *       &lt;li&gt;{@link OutputStream}<a name="line.173"></a>
-<span class="sourceLineNo">174</span>    *       &lt;li&gt;{@link File}<a name="line.174"></a>
-<span class="sourceLineNo">175</span>    *    &lt;/ul&gt;<a name="line.175"></a>
-<span class="sourceLineNo">176</span>    * @return<a name="line.176"></a>
-<span class="sourceLineNo">177</span>    *    A new {@link ParserPipe} wrapper around the specified input object.<a name="line.177"></a>
-<span class="sourceLineNo">178</span>    */<a name="line.178"></a>
-<span class="sourceLineNo">179</span>   protected SerializerPipe createPipe(Object output) {<a name="line.179"></a>
-<span class="sourceLineNo">180</span>      return new SerializerPipe(output);<a name="line.180"></a>
-<span class="sourceLineNo">181</span>   }<a name="line.181"></a>
-<span class="sourceLineNo">182</span><a name="line.182"></a>
-<span class="sourceLineNo">183</span><a name="line.183"></a>
-<span class="sourceLineNo">184</span>   //--------------------------------------------------------------------------------<a name="line.184"></a>
-<span class="sourceLineNo">185</span>   // Abstract methods<a name="line.185"></a>
-<span class="sourceLineNo">186</span>   //--------------------------------------------------------------------------------<a name="line.186"></a>
-<span class="sourceLineNo">187</span><a name="line.187"></a>
-<span class="sourceLineNo">188</span>   /**<a name="line.188"></a>
-<span class="sourceLineNo">189</span>    * Serializes a POJO to the specified output stream or writer.<a name="line.189"></a>
+<span class="sourceLineNo">093</span>    */<a name="line.93"></a>
+<span class="sourceLineNo">094</span>   protected SerializerSession(SerializerContext ctx, SerializerSessionArgs args) {<a name="line.94"></a>
+<span class="sourceLineNo">095</span>      super(ctx != null ? ctx : SerializerContext.DEFAULT, args);<a name="line.95"></a>
+<span class="sourceLineNo">096</span>      if (ctx == null)<a name="line.96"></a>
+<span class="sourceLineNo">097</span>         ctx = SerializerContext.DEFAULT;<a name="line.97"></a>
+<span class="sourceLineNo">098</span>      this.javaMethod = args.javaMethod;<a name="line.98"></a>
+<span class="sourceLineNo">099</span>      UriResolution uriResolution;<a name="line.99"></a>
+<span class="sourceLineNo">100</span>      UriRelativity uriRelativity;<a name="line.100"></a>
+<span class="sourceLineNo">101</span>      Class&lt;?&gt; listenerClass;<a name="line.101"></a>
+<span class="sourceLineNo">102</span>      ObjectMap p = getProperties();<a name="line.102"></a>
+<span class="sourceLineNo">103</span>      if (p.isEmpty()) {<a name="line.103"></a>
+<span class="sourceLineNo">104</span>         maxDepth = ctx.maxDepth;<a name="line.104"></a>
+<span class="sourceLineNo">105</span>         initialDepth = ctx.initialDepth;<a name="line.105"></a>
+<span class="sourceLineNo">106</span>         detectRecursions = ctx.detectRecursions;<a name="line.106"></a>
+<span class="sourceLineNo">107</span>         ignoreRecursions = ctx.ignoreRecursions;<a name="line.107"></a>
+<span class="sourceLineNo">108</span>         useWhitespace = ctx.useWhitespace;<a name="line.108"></a>
+<span class="sourceLineNo">109</span>         maxIndent = ctx.maxIndent;<a name="line.109"></a>
+<span class="sourceLineNo">110</span>         addBeanTypeProperties = ctx.addBeanTypeProperties;<a name="line.110"></a>
+<span class="sourceLineNo">111</span>         trimNulls = ctx.trimNulls;<a name="line.111"></a>
+<span class="sourceLineNo">112</span>         trimEmptyCollections = ctx.trimEmptyCollections;<a name="line.112"></a>
+<span class="sourceLineNo">113</span>         trimEmptyMaps = ctx.trimEmptyMaps;<a name="line.113"></a>
+<span class="sourceLineNo">114</span>         trimStrings = ctx.trimStrings;<a name="line.114"></a>
+<span class="sourceLineNo">115</span>         quoteChar = ctx.quoteChar;<a name="line.115"></a>
+<span class="sourceLineNo">116</span>         sortCollections = ctx.sortCollections;<a name="line.116"></a>
+<span class="sourceLineNo">117</span>         sortMaps = ctx.sortMaps;<a name="line.117"></a>
+<span class="sourceLineNo">118</span>         abridged = ctx.abridged;<a name="line.118"></a>
+<span class="sourceLineNo">119</span>         uriResolution = ctx.uriResolution;<a name="line.119"></a>
+<span class="sourceLineNo">120</span>         uriRelativity = ctx.uriRelativity;<a name="line.120"></a>
+<span class="sourceLineNo">121</span>         listenerClass = ctx.listener;<a name="line.121"></a>
+<span class="sourceLineNo">122</span>      } else {<a name="line.122"></a>
+<span class="sourceLineNo">123</span>         maxDepth = p.getInt(SERIALIZER_maxDepth, ctx.maxDepth);<a name="line.123"></a>
+<span class="sourceLineNo">124</span>         initialDepth = p.getInt(SERIALIZER_initialDepth, ctx.initialDepth);<a name="line.124"></a>
+<span class="sourceLineNo">125</span>         detectRecursions = p.getBoolean(SERIALIZER_detectRecursions, ctx.detectRecursions);<a name="line.125"></a>
+<span class="sourceLineNo">126</span>         ignoreRecursions = p.getBoolean(SERIALIZER_ignoreRecursions, ctx.ignoreRecursions);<a name="line.126"></a>
+<span class="sourceLineNo">127</span>         useWhitespace = p.getBoolean(SERIALIZER_useWhitespace, ctx.useWhitespace);<a name="line.127"></a>
+<span class="sourceLineNo">128</span>         maxIndent = p.getInt(SERIALIZER_maxIndent, ctx.maxIndent);<a name="line.128"></a>
+<span class="sourceLineNo">129</span>         addBeanTypeProperties = p.getBoolean(SERIALIZER_addBeanTypeProperties, ctx.addBeanTypeProperties);<a name="line.129"></a>
+<span class="sourceLineNo">130</span>         trimNulls = p.getBoolean(SERIALIZER_trimNullProperties, ctx.trimNulls);<a name="line.130"></a>
+<span class="sourceLineNo">131</span>         trimEmptyCollections = p.getBoolean(SERIALIZER_trimEmptyCollections, ctx.trimEmptyCollections);<a name="line.131"></a>
+<span class="sourceLineNo">132</span>         trimEmptyMaps = p.getBoolean(SERIALIZER_trimEmptyMaps, ctx.trimEmptyMaps);<a name="line.132"></a>
+<span class="sourceLineNo">133</span>         trimStrings = p.getBoolean(SERIALIZER_trimStrings, ctx.trimStrings);<a name="line.133"></a>
+<span class="sourceLineNo">134</span>         quoteChar = p.getString(SERIALIZER_quoteChar, ""+ctx.quoteChar).charAt(0);<a name="line.134"></a>
+<span class="sourceLineNo">135</span>         sortCollections = p.getBoolean(SERIALIZER_sortCollections, ctx.sortMaps);<a name="line.135"></a>
+<span class="sourceLineNo">136</span>         sortMaps = p.getBoolean(SERIALIZER_sortMaps, ctx.sortMaps);<a name="line.136"></a>
+<span class="sourceLineNo">137</span>         abridged = p.getBoolean(SERIALIZER_abridged, ctx.abridged);<a name="line.137"></a>
+<span class="sourceLineNo">138</span>         uriResolution = p.getWithDefault(SERIALIZER_uriResolution, UriResolution.ROOT_RELATIVE, UriResolution.class);<a name="line.138"></a>
+<span class="sourceLineNo">139</span>         uriRelativity = p.getWithDefault(SERIALIZER_uriRelativity, UriRelativity.RESOURCE, UriRelativity.class);<a name="line.139"></a>
+<span class="sourceLineNo">140</span>         listenerClass = p.getWithDefault(SERIALIZER_listener, ctx.listener, Class.class);<a name="line.140"></a>
+<span class="sourceLineNo">141</span>      }<a name="line.141"></a>
+<span class="sourceLineNo">142</span><a name="line.142"></a>
+<span class="sourceLineNo">143</span>      uriResolver = new UriResolver(uriResolution, uriRelativity, args.uriContext == null ? ctx.uriContext : args.uriContext);<a name="line.143"></a>
+<span class="sourceLineNo">144</span><a name="line.144"></a>
+<span class="sourceLineNo">145</span>      listener = newInstance(SerializerListener.class, listenerClass);<a name="line.145"></a>
+<span class="sourceLineNo">146</span><a name="line.146"></a>
+<span class="sourceLineNo">147</span>      this.indent = initialDepth;<a name="line.147"></a>
+<span class="sourceLineNo">148</span>      if (detectRecursions || isDebug()) {<a name="line.148"></a>
+<span class="sourceLineNo">149</span>         set = new IdentityHashMap&lt;Object,Object&gt;();<a name="line.149"></a>
+<span class="sourceLineNo">150</span>      } else {<a name="line.150"></a>
+<span class="sourceLineNo">151</span>         set = Collections.emptyMap();<a name="line.151"></a>
+<span class="sourceLineNo">152</span>      }<a name="line.152"></a>
+<span class="sourceLineNo">153</span>   }<a name="line.153"></a>
+<span class="sourceLineNo">154</span><a name="line.154"></a>
+<span class="sourceLineNo">155</span>   /**<a name="line.155"></a>
+<span class="sourceLineNo">156</span>    * Wraps the specified input object into a {@link ParserPipe} object so that it can be easily converted into<a name="line.156"></a>
+<span class="sourceLineNo">157</span>    * a stream or reader.<a name="line.157"></a>
+<span class="sourceLineNo">158</span>    *<a name="line.158"></a>
+<span class="sourceLineNo">159</span>    * @param output<a name="line.159"></a>
+<span class="sourceLineNo">160</span>    *    The output location.<a name="line.160"></a>
+<span class="sourceLineNo">161</span>    *    &lt;br&gt;For character-based serializers, this can be any of the following types:<a name="line.161"></a>
+<span class="sourceLineNo">162</span>    *    &lt;ul&gt;<a name="line.162"></a>
+<span class="sourceLineNo">163</span>    *       &lt;li&gt;{@link Writer}<a name="line.163"></a>
+<span class="sourceLineNo">164</span>    *       &lt;li&gt;{@link OutputStream} - Output will be written as UTF-8 encoded stream.<a name="line.164"></a>
+<span class="sourceLineNo">165</span>    *       &lt;li&gt;{@link File} - Output will be written as system-default encoded stream.<a name="line.165"></a>
+<span class="sourceLineNo">166</span>    *       &lt;li&gt;{@link StringBuilder}<a name="line.166"></a>
+<span class="sourceLineNo">167</span>    *    &lt;/ul&gt;<a name="line.167"></a>
+<span class="sourceLineNo">168</span>    *    &lt;br&gt;For byte-based serializers, this can be any of the following types:<a name="line.168"></a>
+<span class="sourceLineNo">169</span>    *    &lt;ul&gt;<a name="line.169"></a>
+<span class="sourceLineNo">170</span>    *       &lt;li&gt;{@link OutputStream}<a name="line.170"></a>
+<span class="sourceLineNo">171</span>    *       &lt;li&gt;{@link File}<a name="line.171"></a>
+<span class="sourceLineNo">172</span>    *    &lt;/ul&gt;<a name="line.172"></a>
+<span class="sourceLineNo">173</span>    * @return<a name="line.173"></a>
+<span class="sourceLineNo">174</span>    *    A new {@link ParserPipe} wrapper around the specified input object.<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    */<a name="line.175"></a>
+<span class="sourceLineNo">176</span>   protected SerializerPipe createPipe(Object output) {<a name="line.176"></a>
+<span class="sourceLineNo">177</span>      return new SerializerPipe(output);<a name="line.177"></a>
+<span class="sourceLineNo">178</span>   }<a name="line.178"></a>
+<span class="sourceLineNo">179</span><a name="line.179"></a>
+<span class="sourceLineNo">180</span><a name="line.180"></a>
+<span class="sourceLineNo">181</span>   //--------------------------------------------------------------------------------<a name="line.181"></a>
+<span class="sourceLineNo">182</span>   // Abstract methods<a name="line.182"></a>
+<span class="sourceLineNo">183</span>   //--------------------------------------------------------------------------------<a name="line.183"></a>
+<span class="sourceLineNo">184</span><a name="line.184"></a>
+<span class="sourceLineNo">185</span>   /**<a name="line.185"></a>
+<span class="sourceLineNo">186</span>    * Serializes a POJO to the specified output stream or writer.<a name="line.186"></a>
+<span class="sourceLineNo">187</span>    *<a name="line.187"></a>
+<span class="sourceLineNo">188</span>    * &lt;p&gt;<a name="line.188"></a>
+<span class="sourceLineNo">189</span>    * This method should NOT close the context object.<a name="line.189"></a>
 <span class="sourceLineNo">190</span>    *<a name="line.190"></a>
-<span class="sourceLineNo">191</span>    * &lt;p&gt;<a name="line.191"></a>
-<span class="sourceLineNo">192</span>    * This method should NOT close the context object.<a name="line.192"></a>
-<span class="sourceLineNo">193</span>    *<a name="line.193"></a>
-<span class="sourceLineNo">194</span>    * @param pipe Where to send the output from the serializer.<a name="line.194"></a>
-<span class="sourceLineNo">195</span>    * @param o The object to serialize.<a name="line.195"></a>
-<span class="sourceLineNo">196</span>    * @throws Exception If thrown from underlying stream, or if the input contains a syntax error or is malformed.<a name="line.196"></a>
-<span class="sourceLineNo">197</span>    */<a name="line.197"></a>
-<span class="sourceLineNo">198</span>   protected abstract void doSerialize(SerializerPipe pipe, Object o) throws Exception;<a name="line.198"></a>
-<span class="sourceLineNo">199</span><a name="line.199"></a>
-<span class="sourceLineNo">200</span>   /**<a name="line.200"></a>
-<span class="sourceLineNo">201</span>    * Shortcut method for serializing objects directly to either a &lt;code&gt;String&lt;/code&gt; or &lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;[]&lt;/code&gt;<a name="line.201"></a>
-<span class="sourceLineNo">202</span>    * depending on the serializer type.<a name="line.202"></a>
-<span class="sourceLineNo">203</span>    *<a name="line.203"></a>
-<span class="sourceLineNo">204</span>    * @param o The object to serialize.<a name="line.204"></a>
-<span class="sourceLineNo">205</span>    * @return<a name="line.205"></a>
-<span class="sourceLineNo">206</span>    *    The serialized object.<a name="line.206"></a>
-<span class="sourceLineNo">207</span>    *    &lt;br&gt;Character-based serializers will return a &lt;code&gt;String&lt;/code&gt;<a name="line.207"></a>
-<span class="sourceLineNo">208</span>    *    &lt;br&gt;Stream-based serializers will return a &lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;[]&lt;/code&gt;<a name="line.208"></a>
-<span class="sourceLineNo">209</span>    * @throws SerializeException If a problem occurred trying to convert the output.<a name="line.209"></a>
-<span class="sourceLineNo">210</span>    */<a name="line.210"></a>
-<span class="sourceLineNo">211</span>   public abstract Object serialize(Object o) throws SerializeException;<a name="line.211"></a>
-<span class="sourceLineNo">212</span><a name="line.212"></a>
-<span class="sourceLineNo">213</span>   /**<a name="line.213"></a>
-<span class="sourceLineNo">214</span>    * Returns &lt;jk&gt;true&lt;/jk&gt; if this serializer subclasses from {@link WriterSerializer}.<a name="line.214"></a>
-<span class="sourceLineNo">215</span>    *<a name="line.215"></a>
-<span class="sourceLineNo">216</span>    * @return &lt;jk&gt;true&lt;/jk&gt; if this serializer subclasses from {@link WriterSerializer}.<a name="line.216"></a>
-<span class="sourceLineNo">217</span>    */<a name="line.217"></a>
-<span class="sourceLineNo">218</span>   public abstract boolean isWriterSerializer();<a name="line.218"></a>
-<span class="sourceLineNo">219</span><a name="line.219"></a>
-<span class="sourceLineNo">220</span><a name="line.220"></a>
-<span class="sourceLineNo">221</span>   //--------------------------------------------------------------------------------<a name="line.221"></a>
-<span class="sourceLineNo">222</span>   // Other methods<a name="line.222"></a>
-<span class="sourceLineNo">223</span>   //--------------------------------------------------------------------------------<a name="line.223"></a>
-<span class="sourceLineNo">224</span><a name="line.224"></a>
-<span class="sourceLineNo">225</span>   /**<a name="line.225"></a>
-<span class="sourceLineNo">226</span>    * Serialize the specified object using the specified session.<a name="line.226"></a>
-<span class="sourceLineNo">227</span>    *<a name="line.227"></a>
-<span class="sourceLineNo">228</span>    * @param out Where to send the output from the serializer.<a name="line.228"></a>
-<span class="sourceLineNo">229</span>    * @param o The object to serialize.<a name="line.229"></a>
-<span class="sourceLineNo">230</span>    * @throws SerializeException If a problem occurred trying to convert the output.<a name="line.230"></a>
-<span class="sourceLineNo">231</span>    */<a name="line.231"></a>
-<span class="sourceLineNo">232</span>   public final void serialize(Object out, Object o) throws SerializeException {<a name="line.232"></a>
-<span class="sourceLineNo">233</span>      SerializerPipe pipe = createPipe(out);<a name="line.233"></a>
-<span class="sourceLineNo">234</span>      try {<a name="line.234"></a>
-<span class="sourceLineNo">235</span>         doSerialize(pipe, o);<a name="line.235"></a>
-<span class="sourceLineNo">236</span>      } catch (SerializeException e) {<a name="line.236"></a>
-<span class="sourceLineNo">237</span>         throw e;<a name="line.237"></a>
-<span class="sourceLineNo">238</span>      } catch (StackOverflowError e) {<a name="line.238"></a>
-<span class="sourceLineNo">239</span>         throw new SerializeException(this,<a name="line.239"></a>
-<span class="sourceLineNo">240</span>            "Stack overflow occurred.  This can occur when trying to serialize models containing loops.  It's recommended you use the SerializerContext.SERIALIZER_detectRecursions setting to help locate the loop.").initCause(e);<a name="line.240"></a>
-<span class="sourceLineNo">241</span>      } catch (Exception e) {<a name="line.241"></a>
-<span class="sourceLineNo">242</span>         throw new SerializeException(this, e);<a name="line.242"></a>
-<span class="sourceLineNo">243</span>      } finally {<a name="line.243"></a>
-<span class="sourceLineNo">244</span>         pipe.close();<a name="line.244"></a>
-<span class="sourceLineNo">245</span>         close();<a name="line.245"></a>
-<span class="sourceLineNo">246</span>      }<a name="line.246"></a>
-<span class="sourceLineNo">247</span>   }<a name="line.247"></a>
-<span class="sourceLineNo">248</span><a name="line.248"></a>
-<span class="sourceLineNo">249</span>   /**<a name="line.249"></a>
-<span class="sourceLineNo">250</span>    * Sets the current bean property being serialized for proper error messages.<a name="line.250"></a>
-<span class="sourceLineNo">251</span>    *<a name="line.251"></a>
-<span class="sourceLineNo">252</span>    * @param currentProperty The current property being serialized.<a name="line.252"></a>
-<span class="sourceLineNo">253</span>    */<a name="line.253"></a>
-<span class="sourceLineNo">254</span>   protected final void setCurrentProperty(BeanPropertyMeta currentProperty) {<a name="line.254"></a>
-<span class="sourceLineNo">255</span>      this.currentProperty = currentProperty;<a name="line.255"></a>
-<span class="sourceLineNo">256</span>   }<a name="line.256"></a>
-<span class="sourceLineNo">257</span><a name="line.257"></a>
-<span class="sourceLineNo">258</span>   /**<a name="line.258"></a>
-<span class="sourceLineNo">259</span>    * Sets the current class being serialized for proper error messages.<a name="line.259"></a>
-<span class="sourceLineNo">260</span>    *<a name="line.260"></a>
-<span class="sourceLineNo">261</span>    * @param currentClass The current class being serialized.<a name="line.261"></a>
-<span class="sourceLineNo">262</span>    */<a name="line.262"></a>
-<span class="sourceLineNo">263</span>   protected final void setCurrentClass(ClassMeta&lt;?&gt; currentClass) {<a name="line.263"></a>
-<span class="sourceLineNo">264</span>      this.currentClass = currentClass;<a name="line.264"></a>
-<span class="sourceLineNo">265</span>   }<a name="line.265"></a>
-<span class="sourceLineNo">266</span><a name="line.266"></a>
-<span class="sourceLineNo">267</span>   /**<a name="line.267"></a>
-<span class="sourceLineNo">268</span>    * Returns the Java method that invoked this serializer.<a name="line.268"></a>
-<span class="sourceLineNo">269</span>    *<a name="line.269"></a>
-<span class="sourceLineNo">270</span>    * &lt;p&gt;<a name="line.270"></a>
-<span class="sourceLineNo">271</span>    * When using the REST API, this is the Java method invoked by the REST call.<a name="line.271"></a>
-<span class="sourceLineNo">272</span>    * Can be used to access annotations defined on the method or class.<a name="line.272"></a>
-<span class="sourceLineNo">273</span>    *<a name="line.273"></a>
-<span class="sourceLineNo">274</span>    * @return The Java method that invoked this serializer.<a name="line.274"></a>
-<span class="sourceLineNo">275</span>   */<a name="line.275"></a>
-<span class="sourceLineNo">276</span>   protected final Method getJavaMethod() {<a name="line.276"></a>
-<span class="sourceLineNo">277</span>      return javaMethod;<a name="line.277"></a>
-<span class="sourceLineNo">278</span>   }<a name="line.278"></a>
-<span class="sourceLineNo">279</span><a name="line.279"></a>
-<span class="sourceLineNo">280</span>   /**<a name="line.280"></a>
-<span class="sourceLineNo">281</span>    * Returns the URI resolver.<a name="line.281"></a>
-<span class="sourceLineNo">282</span>    *<a name="line.282"></a>
-<span class="sourceLineNo">283</span>    * @return The URI resolver.<a name="line.283"></a>
-<span class="sourceLineNo">284</span>    */<a name="line.284"></a>
-<span class="sourceLineNo">285</span>   protected final UriResolver getUriResolver() {<a name="line.285"></a>
-<span class="sourceLineNo">286</span>      return uriResolver;<a name="line.286"></a>
-<span class="sourceLineNo">287</span>   }<a name="line.287"></a>
-<span class="sourceLineNo">288</span><a name="line.288"></a>
-<span class="sourceLineNo">289</span>   /**<a name="line.289"></a>
-<span class="sourceLineNo">290</span>    * Returns the {@link SerializerContext#SERIALIZER_maxDepth} setting value for this session.<a name="line.290"></a>
-<span class="sourceLineNo">291</span>    *<a name="line.291"></a>
-<span class="sourceLineNo">292</span>    * @return The {@link SerializerContext#SERIALIZER_maxDepth} setting value for this session.<a name="line.292"></a>
-<span class="sourceLineNo">293</span>    */<a name="line.293"></a>
-<span class="sourceLineNo">294</span>   protected final int getMaxDepth() {<a name="line.294"></a>
-<span class="sourceLineNo">295</span>      return maxDepth;<a name="line.295"></a>
-<span class="sourceLineNo">296</span>   }<a name="line.296"></a>
-<span class="sourceLineNo">297</span><a name="line.297"></a>
-<span class="sourceLineNo">298</span>   /**<a name="line.298"></a>
-<span class="sourceLineNo">299</span>    * Returns the {@link SerializerContext#SERIALIZER_initialDepth} setting value for this session.<a name="line.299"></a>
-<span class="sourceLineNo">300</span>    *<a name="line.300"></a>
-<span class="sourceLineNo">301</span>    * @return The {@link SerializerContext#SERIALIZER_initialDepth} setting value for this session.<a name="line.301"></a>
-<span class="sourceLineNo">302</span>    */<a name="line.302"></a>
-<span class="sourceLineNo">303</span>   protected final int getInitialDepth() {<a name="line.303"></a>
-<span class="sourceLineNo">304</span>      return initialDepth;<a name="line.304"></a>
-<span class="sourceLineNo">305</span>   }<a name="line.305"></a>
-<span class="sourceLineNo">306</span><a name="line.306"></a>
-<span class="sourceLineNo">307</span>   /**<a name="line.307"></a>
-<span class="sourceLineNo">308</span>    * Returns the {@link SerializerContext#SERIALIZER_detectRecursions} setting value for this session.<a name="line.308"></a>
-<span class="sourceLineNo">309</span>    *<a name="line.309"></a>
-<span class="sourceLineNo">310</span>    * @return The {@link SerializerContext#SERIALIZER_detectRecursions} setting value for this session.<a name="line.310"></a>
-<span class="sourceLineNo">311</span>    */<a name="line.311"></a>
-<span class="sourceLineNo">312</span>   protected final boolean isDetectRecursions() {<a name="line.312"></a>
-<span class="sourceLineNo">313</span>      return detectRecursions;<a name="line.313"></a>
-<span class="sourceLineNo">314</span>   }<a name="line.314"></a>
-<span class="sourceLineNo">315</span><a name="line.315"></a>
-<span class="sourceLineNo">316</span>   /**<a name="line.316"></a>
-<span class="sourceLineNo">317</span>    * Returns the {@link SerializerContext#SERIALIZER_ignoreRecursions} setting value for this session.<a name="line.317"></a>
-<span class="sourceLineNo">318</span>    *<a name="line.318"></a>
-<span class="sourceLineNo">319</span>    * @return The {@link SerializerContext#SERIALIZER_ignoreRecursions} setting value for this session.<a name="line.319"></a>
-<span class="sourceLineNo">320</span>    */<a name="line.320"></a>
-<span class="sourceLineNo">321</span>   protected final boolean isIgnoreRecursions() {<a name="line.321"></a>
-<span class="sourceLineNo">322</span>      return ignoreRecursions;<a name="line.322"></a>
-<span class="sourceLineNo">323</span>   }<a name="line.323"></a>
-<span class="sourceLineNo">324</span><a name="line.324"></a>
-<span class="sourceLineNo">325</span>   /**<a name="line.325"></a>
-<span class="sourceLineNo">326</span>    * Returns the {@link SerializerContext#SERIALIZER_useWhitespace} setting value for this session.<a name="line.326"></a>
-<span class="sourceLineNo">327</span>    *<a name="line.327"></a>
-<span class="sourceLineNo">328</span>    * @return The {@link SerializerContext#SERIALIZER_useWhitespace} setting value for this session.<a name="line.328"></a>
-<span class="sourceLineNo">329</span>    */<a name="line.329"></a>
-<span class="sourceLineNo">330</span>   protected final boolean isUseWhitespace() {<a name="line.330"></a>
-<span class="sourceLineNo">331</span>      return useWhitespace;<a name="line.331"></a>
-<span class="sourceLineNo">332</span>   }<a name="line.332"></a>
-<span class="sourceLineNo">333</span><a name="line.333"></a>
-<span class="sourceLineNo">334</span>   /**<a name="line.334"></a>
-<span class="sourceLineNo">335</span>    * Returns the {@link SerializerContext#SERIALIZER_maxIndent} setting value for this session.<a name="line.335"></a>
-<span class="sourceLineNo">336</span>    *<a name="line.336"></a>
-<span class="sourceLineNo">337</span>    * @return The {@link SerializerContext#SERIALIZER_maxIndent} setting value for this session.<a name="line.337"></a>
-<span class="sourceLineNo">338</span>    */<a name="line.338"></a>
-<span class="sourceLineNo">339</span>   protected final int getMaxIndent() {<a name="line.339"></a>
-<span class="sourceLineNo">340</span>      return maxIndent;<a name="line.340"></a>
-<span class="sourceLineNo">341</span>   }<a name="line.341"></a>
-<span class="sourceLineNo">342</span><a name="line.342"></a>
-<span class="sourceLineNo">343</span>   /**<a name="line.343"></a>
-<span class="sourceLineNo">344</span>    * Returns the {@link SerializerContext#SERIALIZER_addBeanTypeProperties} setting value for this session.<a name="line.344"></a>
-<span class="sourceLineNo">345</span>    *<a name="line.345"></a>
-<span class="sourceLineNo">346</span>    * @return The {@link SerializerContext#SERIALIZER_addBeanTypeProperties} setting value for this session.<a name="line.346"></a>
-<span class="sourceLineNo">347</span>    */<a name="line.347"></a>
-<span class="sourceLineNo">348</span>   protected boolean isAddBeanTypeProperties() {<a name="line.348"></a>
-<span class="sourceLineNo">349</span>      return addBeanTypeProperties;<a name="line.349"></a>
-<span class="sourceLineNo">350</span>   }<a name="line.350"></a>
-<span class="sourceLineNo">351</span><a name="line.351"></a>
-<span class="sourceLineNo">352</span>   /**<a name="line.352"></a>
-<span class="sourceLineNo">353</span>    * Returns the {@link SerializerContext#SERIALIZER_quoteChar} setting value for this session.<a name="line.353"></a>
-<span class="sourceLineNo">354</span>    *<a name="line.354"></a>
-<span class="sourceLineNo">355</span>    * @return The {@link SerializerContext#SERIALIZER_quoteChar} setting value for this session.<a name="line.355"></a>
-<span class="sourceLineNo">356</span>    */<a name="line.356"></a>
-<span class="sourceLineNo">357</span>   protected final char getQuoteChar() {<a name="line.357"></a>
-<span class="sourceLineNo">358</span>      return quoteChar;<a name="line.358"></a>
-<span class="sourceLineNo">359</span>   }<a name="line.359"></a>
-<span class="sourceLineNo">360</span><a name="line.360"></a>
-<span class="sourceLineNo">361</span>   /**<a name="line.361"></a>
-<span class="sourceLineNo">362</span>    * Returns the {@link SerializerContext#SERIALIZER_trimNullProperties} setting value for this session.<a name="line.362"></a>
-<span class="sourceLineNo">363</span>    *<a name="line.363"></a>
-<span class="sourceLineNo">364</span>    * @return The {@link SerializerContext#SERIALIZER_trimNullProperties} setting value for this session.<a name="line.364"></a>
-<span class="sourceLineNo">365</span>    */<a name="line.365"></a>
-<span class="sourceLineNo">366</span>   protected final boolean isTrimNulls() {<a name="line.366"></a>
-<span class="sourceLineNo">367</span>      return trimNulls;<a name="line.367"></a>
-<span class="sourceLineNo">368</span>   }<a name="line.368"></a>
-<span class="sourceLineNo">369</span><a name="line.369"></a>
-<span class="sourceLineNo">370</span>   /**<a name="line.370"></a>
-<span class="sourceLineNo">371</span>    * Returns the {@link SerializerContext#SERIALIZER_trimEmptyCollections} setting value for this session.<a name="line.371"></a>
-<span class="sourceLineNo">372</span>    *<a name="line.372"></a>
-<span class="sourceLineNo">373</span>    * @return The {@link SerializerContext#SERIALIZER_trimEmptyCollections} setting value for this session.<a name="line.373"></a>
-<span class="sourceLineNo">374</span>    */<a name="line.374"></a>
-<span class="sourceLineNo">375</span>   protected final boolean isTrimEmptyCollections() {<a name="line.375"></a>
-<span class="sourceLineNo">376</span>      return trimEmptyCollections;<a name="line.376"></a>
-<span class="sourceLineNo">377</span>   }<a name="line.377"></a>
-<span class="sourceLineNo">378</span><a name="line.378"></a>
-<span class="sourceLineNo">379</span>   /**<a name="line.379"></a>
-<span class="sourceLineNo">380</span>    * Returns the {@link SerializerContext#SERIALIZER_trimEmptyMaps} setting value for this session.<a name="line.380"></a>
-<span class="sourceLineNo">381</span>    *<a name="line.381"></a>
-<span class="sourceLineNo">382</span>    * @return The {@link SerializerContext#SERIALIZER_trimEmptyMaps} setting value for this session.<a name="line.382"></a>
-<span class="sourceLineNo">383</span>    */<a name="line.383"></a>
-<span class="sourceLineNo">384</span>   protected final boolean isTrimEmptyMaps() {<a name="line.384"></a>
-<span class="sourceLineNo">385</span>      return trimEmptyMaps;<a name="line.385"></a>
-<span class="sourceLineNo">386</span>   }<a name="line.386"></a>
-<span class="sourceLineNo">387</span><a name="line.387"></a>
-<span class="sourceLineNo">388</span>   /**<a name="line.388"></a>
-<span class="sourceLineNo">389</span>    * Returns the {@link SerializerContext#SERIALIZER_trimStrings} setting value for this session.<a name="line.389"></a>
-<span class="sourceLineNo">390</span>    *<a name="line.390"></a>
-<span class="sourceLineNo">391</span>    * @return The {@link SerializerContext#SERIALIZER_trimStrings} setting value for this session.<a name="line.391"></a>
-<span class="sourceLineNo">392</span>    */<a name="line.392"></a>
-<span class="sourceLineNo">393</span>   protected final boolean isTrimStrings() {<a name="line.393"></a>
-<span class="sourceLineNo">394</span>      return trimStrings;<a name="line.394"></a>
-<span class="sourceLineNo">395</span>   }<a name="line.395"></a>
-<span class="sourceLineNo">396</span><a name="line.396"></a>
-<span class="sourceLineNo">397</span>   /**<a name="line.397"></a>
-<span class="sourceLineNo">398</span>    * Returns the {@link SerializerContext#SERIALIZER_sortCollections} setting value for this session.<a name="line.398"></a>
-<span class="sourceLineNo">399</span>    *<a name="line.399"></a>
-<span class="sourceLineNo">400</span>    * @return The {@link SerializerContext#SERIALIZER_sortCollections} setting value for this session.<a name="line.400"></a>
-<span class="sourceLineNo">401</span>    */<a name="line.401"></a>
-<span class="sourceLineNo">402</span>   protected final boolean isSortCollections() {<a name="line.402"></a>
-<span class="sourceLineNo">403</span>      return sortCollections;<a name="line.403"></a>
-<span class="sourceLineNo">404</span>   }<a name="line.404"></a>
-<span class="sourceLineNo">405</span><a name="line.405"></a>
-<span class="sourceLineNo">406</span>   /**<a name="line.406"></a>
-<span class="sourceLineNo">407</span>    * Returns the {@link SerializerContext#SERIALIZER_sortMaps} setting value for this session.<a name="line.407"></a>
-<span class="sourceLineNo">408</span>    *<a name="line.408"></a>
-<span class="sourceLineNo">409</span>    * @return The {@link SerializerContext#SERIALIZER_sortMaps} setting value for this session.<a name="line.409"></a>
-<span class="sourceLineNo">410</span>    */<a name="line.410"></a>
-<span class="sourceLineNo">411</span>   protected final boolean isSortMaps() {<a name="line.411"></a>
-<span class="sourceLineNo">412</span>      return sortMaps;<a name="line.412"></a>
-<span class="sourceLineNo">413</span>   }<a name="line.413"></a>
-<span class="sourceLineNo">414</span><a name="line.414"></a>
-<span class="sourceLineNo">415</span>   /**<a name="line.415"></a>
-<span class="sourceLineNo">416</span>    * Push the specified object onto the stack.<a name="line.416"></a>
-<span class="sourceLineNo">417</span>    *<a name="line.417"></a>
-<span class="sourceLineNo">418</span>    * @param attrName The attribute name.<a name="line.418"></a>
-<span class="sourceLineNo">419</span>    * @param o The current object being serialized.<a name="line.419"></a>
-<span class="sourceLineNo">420</span>    * @param eType The expected class type.<a name="line.420"></a>
-<span class="sourceLineNo">421</span>    * @return<a name="line.421"></a>
-<span class="sourceLineNo">422</span>    *    The {@link ClassMeta} of the object so that &lt;code&gt;instanceof&lt;/code&gt; operations only need to be performed<a name="line.422"></a>
-<span class="sourceLineNo">423</span>    *    once (since they can be expensive).<a name="line.423"></a>
-<span class="sourceLineNo">424</span>    * @throws SerializeException If recursion occurred.<a name="line.424"></a>
-<span class="sourceLineNo">425</span>    */<a name="line.425"></a>
-<span class="sourceLineNo">426</span>   protected final ClassMeta&lt;?&gt; push(String attrName, Object o, ClassMeta&lt;?&gt; eType) throws SerializeException {<a name="line.426"></a>
-<span class="sourceLineNo">427</span>      indent++;<a name="line.427"></a>
-<span class="sourceLineNo">428</span>      isBottom = true;<a name="line.428"></a>
-<span class="sourceLineNo">429</span>      if (o == null)<a name="line.429"></a>
-<span class="sourceLineNo">430</span>         return null;<a name="line.430"></a>
-<span class="sourceLineNo">431</span>      Class&lt;?&gt; c = o.getClass();<a name="line.431"></a>
-<span class="sourceLineNo">432</span>      ClassMeta&lt;?&gt; cm = (eType != null &amp;&amp; c == eType.getInnerClass()) ? eType : getClassMeta(c);<a name="line.432"></a>
-<span class="sourceLineNo">433</span>      if (cm.isCharSequence() || cm.isNumber() || cm.isBoolean())<a name="line.433"></a>
-<span class="sourceLineNo">434</span>         return cm;<a name="line.434"></a>
-<span class="sourceLineNo">435</span>      if (detectRecursions || isDebug()) {<a name="line.435"></a>
-<span class="sourceLineNo">436</span>         if (stack.size() &gt; maxDepth)<a name="line.436"></a>
-<span class="sourceLineNo">437</span>            return null;<a name="line.437"></a>
-<span class="sourceLineNo">438</span>         if (willRecurse(attrName, o, cm))<a name="line.438"></a>
-<span class="sourceLineNo">439</span>            return null;<a name="line.439"></a>
-<span class="sourceLineNo">440</span>         isBottom = false;<a name="line.440"></a>
-<span class="sourceLineNo">441</span>         stack.add(new StackElement(stack.size(), attrName, o, cm));<a name="line.441"></a>
-<span class="sourceLineNo">442</span>         if (isDebug())<a name="line.442"></a>
-<span class="sourceLineNo">443</span>            getLogger().info(getStack(false));<a name="line.443"></a>
-<span class="sourceLineNo">444</span>         set.put(o, o);<a name="line.444"></a>
-<span class="sourceLineNo">445</span>      }<a name="line.445"></a>
-<span class="sourceLineNo">446</span>      return cm;<a name="line.446"></a>
-<span class="sourceLineNo">447</span>   }<a name="line.447"></a>
-<span class="sourceLineNo">448</span><a name="line.448"></a>
-<span class="sourceLineNo">449</span>   /**<a name="line.449"></a>
-<span class="sourceLineNo">450</span>    * Returns &lt;jk&gt;true&lt;/jk&gt; if {@link SerializerContext#SERIALIZER_detectRecursions} is enabled, and the specified<a name="line.450"></a>
-<span class="sourceLineNo">451</span>    * object is already higher up in the serialization chain.<a name="line.451"></a>
-<span class="sourceLineNo">452</span>    *<a name="line.452"></a>
-<span class="sourceLineNo">453</span>    * @param attrName The bean property attribute name, or some other identifier.<a name="line.453"></a>
-<span class="sourceLineNo">454</span>    * @param o The object to check for recursion.<a name="line.454"></a>
-<span class="sourceLineNo">455</span>    * @param cm The metadata on the object class.<a name="line.455"></a>
-<span class="sourceLineNo">456</span>    * @return &lt;jk&gt;true&lt;/jk&gt; if recursion detected.<a name="line.456"></a>
-<span class="sourceLineNo">457</span>    * @throws SerializeException If recursion occurred.<a name="line.457"></a>
-<span class="sourceLineNo">458</span>    */<a name="line.458"></a>
-<span class="sourceLineNo">459</span>   protected final boolean willRecurse(String attrName, Object o, ClassMeta&lt;?&gt; cm) throws SerializeException {<a name="line.459"></a>
-<span class="sourceLineNo">460</span>      if (! (detectRecursions || isDebug()))<a name="line.460"></a>
-<span class="sourceLineNo">461</span>         return false;<a name="line.461"></a>
-<span class="sourceLineNo">462</span>      if (! set.containsKey(o))<a name="line.462"></a>
-<span class="sourceLineNo">463</span>         return false;<a name="line.463"></a>
-<span class="sourceLineNo">464</span>      if (ignoreRecursions &amp;&amp; ! isDebug())<a name="line.464"></a>
-<span class="sourceLineNo">465</span>         return true;<a name="line.465"></a>
-<span class="sourceLineNo">466</span><a name="line.466"></a>
-<span class="sourceLineNo">467</span>      stack.add(new StackElement(stack.size(), attrName, o, cm));<a name="line.467"></a>
-<span class="sourceLineNo">468</span>      throw new SerializeException("Recursion occurred, stack={0}", getStack(true));<a name="line.468"></a>
-<span class="sourceLineNo">469</span>   }<a name="line.469"></a>
-<span class="sourceLineNo">470</span><a name="line.470"></a>
-<span class="sourceLineNo">471</span>   /**<a name="line.471"></a>
-<span class="sourceLineNo">472</span>    * Pop an object off the stack.<a name="line.472"></a>
-<span class="sourceLineNo">473</span>    */<a name="line.473"></a>
-<span class="sourceLineNo">474</span>   protected final void pop() {<a name="line.474"></a>
-<span class="sourceLineNo">475</span>      indent--;<a name="line.475"></a>
-<span class="sourceLineNo">476</span>      if ((detectRecursions || isDebug()) &amp;&amp; ! isBottom)  {<a name="line.476"></a>
-<span class="sourceLineNo">477</span>         Object o = stack.removeLast().o;<a name="line.477"></a>
-<span class="sourceLineNo">478</span>         Object o2 = set.remove(o);<a name="line.478"></a>
-<span class="sourceLineNo">479</span>         if (o2 == null)<a name="line.479"></a>
-<span class="sourceLineNo">480</span>            onError(null, "Couldn't remove object of type ''{0}'' on attribute ''{1}'' from object stack.",<a name="line.480"></a>
-<span class="sourceLineNo">481</span>               o.getClass().getName(), stack);<a name="line.481"></a>
-<span class="sourceLineNo">482</span>      }<a name="line.482"></a>
-<span class="sourceLineNo">483</span>      isBottom = false;<a name="line.483"></a>
-<span class="sourceLineNo">484</span>   }<a name="line.484"></a>
-<span class="sourceLineNo">485</span><a name="line.485"></a>
-<span class="sourceLineNo">486</span>   /**<a name="line.486"></a>
-<span class="sourceLineNo">487</span>    * Specialized warning when an exception is thrown while executing a bean getter.<a name="line.487"></a>
-<span class="sourceLineNo">488</span>    *<a name="line.488"></a>
-<span class="sourceLineNo">489</span>    * @param p The bean map entry representing the bean property.<a name="line.489"></a>
-<span class="sourceLineNo">490</span>    * @param t The throwable that the bean getter threw.<a name="line.490"></a>
-<span class="sourceLineNo">491</span>    */<a name="line.491"></a>
-<span class="sourceLineNo">492</span>   protected final void onBeanGetterException(BeanPropertyMeta p, Throwable t) {<a name="line.492"></a>
-<span class="sourceLineNo">493</span>      if (listener != null)<a name="line.493"></a>
-<span class="sourceLineNo">494</span>         listener.onBeanGetterException(this, t, p);<a name="line.494"></a>
-<span class="sourceLineNo">495</span>      String prefix = (isDebug() ? getStack(false) + ": " : "");<a name="line.495"></a>
-<span class="sourceLineNo">496</span>      addWarning("{0}Could not call getValue() on property ''{1}'' of class ''{2}'', exception = {3}", prefix,<a name="line.496"></a>
-<span class="sourceLineNo">497</span>         p.getName(), p.getBeanMeta().getClassMeta(), t.getLocalizedMessage());<a name="line.497"></a>
-<span class="sourceLineNo">498</span>   }<a name="line.498"></a>
-<span class="sourceLineNo">499</span><a name="line.499"></a>
-<span class="sourceLineNo">500</span>   /**<a name="line.500"></a>
-<span class="sourceLineNo">501</span>    * Logs a warning message.<a name="line.501"></a>
-<span class="sourceLineNo">502</span>    *<a name="line.502"></a>
-<span class="sourceLineNo">503</span>    * @param t The throwable that was thrown (if there was one).<a name="line.503"></a>
-<span class="sourceLineNo">504</span>    * @param msg The warning message.<a name="line.504"></a>
-<span class="sourceLineNo">505</span>    * @param args Optional {@link MessageFormat}-style arguments.<a name="line.505"></a>
-<span class="sourceLineNo">506</span>    */<a name="line.506"></a>
-<span class="sourceLineNo">507</span>   protected final void onError(Throwable t, String msg, Object... args) {<a name="line.507"></a>
-<span class="sourceLineNo">508</span>      if (listener != null)<a name="line.508"></a>
-<span class="sourceLineNo">509</span>         listener.onError(this, t, format(msg, args));<a name="line.509"></a>
-<span class="sourceLineNo">510</span>      super.addWarning(msg, args);<a name="line.510"></a>
-<span class="sourceLineNo">511</span>   }<a name="line.511"></a>
-<span class="sourceLineNo">512</span><a name="line.512"></a>
-<span class="sourceLineNo">513</span>   /**<a name="line.513"></a>
-<span class="sourceLineNo">514</span>    * Trims the specified string if {@link SerializerSession#isTrimStrings()} returns &lt;jk&gt;true&lt;/jk&gt;.<a name="line.514"></a>
-<span class="sourceLineNo">515</span>    *<a name="line.515"></a>
-<span class="sourceLineNo">516</span>    * @param o The input string to trim.<a name="line.516"></a>
-<span class="sourceLineNo">517</span>    * @return The trimmed string, or &lt;jk&gt;null&lt;/jk&gt; if the input was &lt;jk&gt;null&lt;/jk&gt;.<a name="line.517"></a>
-<span class="sourceLineNo">518</span>    */<a name="line.518"></a>
-<span class="sourceLineNo">519</span>   protected final String trim(Object o) {<a name="line.519"></a>
-<span class="sourceLineNo">520</span>      if (o == null)<a name="line.520"></a>
-<span class="sourceLineNo">521</span>         return null;<a name="line.521"></a>
-<span class="sourceLineNo">522</span>      String s = o.toString();<a name="line.522"></a>
-<span class="sourceLineNo">523</span>      if (trimStrings)<a name="line.523"></a>
-<span class="sourceLineNo">524</span>         s = s.trim();<a name="line.524"></a>
-<span class="sourceLineNo">525</span>      return s;<a name="line.525"></a>
-<span class="sourceLineNo">526</span>   }<a name="line.526"></a>
-<span class="sourceLineNo">527</span><a name="line.527"></a>
-<span class="sourceLineNo">528</span>   /**<a name="line.528"></a>
-<span class="sourceLineNo">529</span>    * Generalize the specified object if a POJO swap is associated with it.<a name="line.529"></a>
-<span class="sourceLineNo">530</span>    *<a name="line.530"></a>
-<span class="sourceLineNo">531</span>    * @param o The object to generalize.<a name="line.531"></a>
-<span class="sourceLineNo">532</span>    * @param type The type of object.<a name="line.532"></a>
-<span class="sourceLineNo">533</span>    * @return The generalized object, or &lt;jk&gt;null&lt;/jk&gt; if the object is &lt;jk&gt;null&lt;/jk&gt;.<a name="line.533"></a>
-<span class="sourceLineNo">534</span>    * @throws SerializeException If a problem occurred trying to convert the output.<a name="line.534"></a>
-<span class="sourceLineNo">535</span>    */<a name="line.535"></a>
-<span class="sourceLineNo">536</span>   @SuppressWarnings({ "rawtypes", "unchecked" })<a name="line.536"></a>
-<span class="sourceLineNo">537</span>   protected final Object generalize(Object o, ClassMeta&lt;?&gt; type) throws SerializeException {<a name="line.537"></a>
-<span class="sourceLineNo">538</span>      try {<a name="line.538"></a>
-<span class="sourceLineNo">539</span>         if (o == null)<a name="line.539"></a>
-<span class="sourceLineNo">540</span>            return null;<a name="line.540"></a>
-<span class="sourceLineNo">541</span>         PojoSwap f = (type == null || type.isObject() ? getClassMeta(o.getClass()).getPojoSwap() : type.getPojoSwap());<a name="line.541"></a>
-<span class="sourceLineNo">542</span>         if (f == null)<a name="line.542"></a>
-<span class="sourceLineNo">543</span>            return o;<a name="line.543"></a>
-<span class="sourceLineNo">544</span>         return f.swap(this, o);<a name="line.544"></a>
-<span class="sourceLineNo">545</span>      } catch (SerializeException e) {<a name="line.545"></a>
-<span class="sourceLineNo">546</span>         throw e;<a name="line.546"></a>
-<span class="sourceLineNo">547</span>      } catch (Exception e) {<a name="line.547"></a>
-<span class="sourceLineNo">548</span>         throw new SerializeException(e);<a name="line.548"></a>
-<span class="sourceLineNo">549</span>      }<a name="line.549"></a>
-<span class="sourceLineNo">550</span>   }<a name="line.550"></a>
-<span class="sourceLineNo">551</span><a name="line.551"></a>
-<span class="sourceLineNo">552</span>   /**<a name="line.552"></a>
-<span class="sourceLineNo">553</span>    * Returns &lt;jk&gt;true&lt;/jk&gt; if the specified value should not be serialized.<a name="line.553"></a>
-<span class="sourceLineNo">554</span>    *<a name="line.554"></a>
-<span class="sourceLineNo">555</span>    * @param cm The class type of the object being serialized.<a name="line.555"></a>
-<span class="sourceLineNo">556</span>    * @param attrName The bean attribute name, or &lt;jk&gt;null&lt;/jk&gt; if this isn't a bean attribute.<a name="line.556"></a>
-<span class="sourceLineNo">557</span>    * @param value The object being serialized.<a name="line.557"></a>
-<span class="sourceLineNo">558</span>    * @return &lt;jk&gt;true&lt;/jk&gt; if the specified value should not be serialized.<a name="line.558"></a>
-<span class="sourceLineNo">559</span>    * @throws SerializeException If recursion occurred.<a name="line.559"></a>
-<span class="sourceLineNo">560</span>    */<a name="line.560"></a>
-<span class="sourceLineNo">561</span>   protected final boolean canIgnoreValue(ClassMeta&lt;?&gt; cm, String attrName, Object value) throws SerializeException {<a name="line.561"></a>
+<span class="sourceLineNo">191</span>    * @param pipe Where to send the output from the serializer.<a name="line.191"></a>
+<span class="sourceLineNo">192</span>    * @param o The object to serialize.<a name="line.192"></a>
+<span class="sourceLineNo">193</span>    * @throws Exception If thrown from underlying stream, or if the input contains a syntax error or is malformed.<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    */<a name="line.194"></a>
+<span class="sourceLineNo">195</span>   protected abstract void doSerialize(SerializerPipe pipe, Object o) throws Exception;<a name="line.195"></a>
+<span class="sourceLineNo">196</span><a name="line.196"></a>
+<span class="sourceLineNo">197</span>   /**<a name="line.197"></a>
+<span class="sourceLineNo">198</span>    * Shortcut method for serializing objects directly to either a &lt;code&gt;String&lt;/code&gt; or &lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;[]&lt;/code&gt;<a name="line.198"></a>
+<span class="sourceLineNo">199</span>    * depending on the serializer type.<a name="line.199"></a>
+<span class="sourceLineNo">200</span>    *<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    * @param o The object to serialize.<a name="line.201"></a>
+<span class="sourceLineNo">202</span>    * @return<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    *    The serialized object.<a name="line.203"></a>
+<span class="sourceLineNo">204</span>    *    &lt;br&gt;Character-based serializers will return a &lt;code&gt;String&lt;/code&gt;<a name="line.204"></a>
+<span class="sourceLineNo">205</span>    *    &lt;br&gt;Stream-based serializers will return a &lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;[]&lt;/code&gt;<a name="line.205"></a>
+<span class="sourceLineNo">206</span>    * @throws SerializeException If a problem occurred trying to convert the output.<a name="line.206"></a>
+<span class="sourceLineNo">207</span>    */<a name="line.207"></a>
+<span class="sourceLineNo">208</span>   public abstract Object serialize(Object o) throws SerializeException;<a name="line.208"></a>
+<span class="sourceLineNo">209</span><a name="line.209"></a>
+<span class="sourceLineNo">210</span>   /**<a name="line.210"></a>
+<span class="sourceLineNo">211</span>    * Returns &lt;jk&gt;true&lt;/jk&gt; if this serializer subclasses from {@link WriterSerializer}.<a name="line.211"></a>
+<span class="sourceLineNo">212</span>    *<a name="line.212"></a>
+<span class="sourceLineNo">213</span>    * @return &lt;jk&gt;true&lt;/jk&gt; if this serializer subclasses from {@link WriterSerializer}.<a name="line.213"></a>
+<span class="sourceLineNo">214</span>    */<a name="line.214"></a>
+<span class="sourceLineNo">215</span>   public abstract boolean isWriterSerializer();<a name="line.215"></a>
+<span class="sourceLineNo">216</span><a name="line.216"></a>
+<span class="sourceLineNo">217</span><a name="line.217"></a>
+<span class="sourceLineNo">218</span>   //--------------------------------------------------------------------------------<a name="line.218"></a>
+<span class="sourceLineNo">219</span>   // Other methods<a name="line.219"></a>
+<span class="sourceLineNo">220</span>   //--------------------------------------------------------------------------------<a name="line.220"></a>
+<span class="sourceLineNo">221</span><a name="line.221"></a>
+<span class="sourceLineNo">222</span>   /**<a name="line.222"></a>
+<span class="sourceLineNo">223</span>    * Serialize the specified object using the specified session.<a name="line.223"></a>
+<span class="sourceLineNo">224</span>    *<a name="line.224"></a>
+<span class="sourceLineNo">225</span>    * @param out Where to send the output from the serializer.<a name="line.225"></a>
+<span class="sourceLineNo">226</span>    * @param o The object to serialize.<a name="line.226"></a>
+<span class="sourceLineNo">227</span>    * @throws SerializeException If a problem occurred trying to convert the output.<a name="line.227"></a>
+<span class="sourceLineNo">228</span>    */<a name="line.228"></a>
+<span class="sourceLineNo">229</span>   public final void serialize(Object out, Object o) throws SerializeException {<a name="line.229"></a>
+<span class="sourceLineNo">230</span>      SerializerPipe pipe = createPipe(out);<a name="line.230"></a>
+<span class="sourceLineNo">231</span>      try {<a name="line.231"></a>
+<span class="sourceLineNo">232</span>         doSerialize(pipe, o);<a name="line.232"></a>
+<span class="sourceLineNo">233</span>      } catch (SerializeException e) {<a name="line.233"></a>
+<span class="sourceLineNo">234</span>         throw e;<a name="line.234"></a>
+<span class="sourceLineNo">235</span>      } catch (StackOverflowError e) {<a name="line.235"></a>
+<span class="sourceLineNo">236</span>         throw new SerializeException(this,<a name="line.236"></a>
+<span class="sourceLineNo">237</span>            "Stack overflow occurred.  This can occur when trying to serialize models containing loops.  It's recommended you use the SerializerContext.SERIALIZER_detectRecursions setting to help locate the loop.").initCause(e);<a name="line.237"></a>
+<span class="sourceLineNo">238</span>      } catch (Exception e) {<a name="line.238"></a>
+<span class="sourceLineNo">239</span>         throw new SerializeException(this, e);<a name="line.239"></a>
+<span class="sourceLineNo">240</span>      } finally {<a name="line.240"></a>
+<span class="sourceLineNo">241</span>         pipe.close();<a name="line.241"></a>
+<span class="sourceLineNo">242</span>         close();<a name="line.242"></a>
+<span class="sourceLineNo">243</span>      }<a name="line.243"></a>
+<span class="sourceLineNo">244</span>   }<a name="line.244"></a>
+<span class="sourceLineNo">245</span><a name="line.245"></a>
+<span class="sourceLineNo">246</span>   /**<a name="line.246"></a>
+<span class="sourceLineNo">247</span>    * Sets the current bean property being serialized for proper error messages.<a name="line.247"></a>
+<span class="sourceLineNo">248</span>    *<a name="line.248"></a>
+<span class="sourceLineNo">249</span>    * @param currentProperty The current property being serialized.<a name="line.249"></a>
+<span class="sourceLineNo">250</span>    */<a name="line.250"></a>
+<span class="sourceLineNo">251</span>   protected final void setCurrentProperty(BeanPropertyMeta currentProperty) {<a name="line.251"></a>
+<span class="sourceLineNo">252</span>      this.currentProperty = currentProperty;<a name="line.252"></a>
+<span class="sourceLineNo">253</span>   }<a name="line.253"></a>
+<span class="sourceLineNo">254</span><a name="line.254"></a>
+<span class="sourceLineNo">255</span>   /**<a name="line.255"></a>
+<span class="sourceLineNo">256</span>    * Sets the current class being serialized for proper error messages.<a name="line.256"></a>
+<span class="sourceLineNo">257</span>    *<a name="line.257"></a>
+<span class="sourceLineNo">258</span>    * @param currentClass The current class being serialized.<a name="line.258"></a>
+<span class="sourceLineNo">259</span>    */<a name="line.259"></a>
+<span class="sourceLineNo">260</span>   protected final void setCurrentClass(ClassMeta&lt;?&gt; currentClass) {<a name="line.260"></a>
+<span class="sourceLineNo">261</span>      this.currentClass = currentClass;<a name="line.261"></a>
+<span class="sourceLineNo">262</span>   }<a name="line.262"></a>
+<span class="sourceLineNo">263</span><a name="line.263"></a>
+<span class="sourceLineNo">264</span>   /**<a name="line.264"></a>
+<span class="sourceLineNo">265</span>    * Returns the Java method that invoked this serializer.<a name="line.265"></a>
+<span class="sourceLineNo">266</span>    *<a name="line.266"></a>
+<span class="sourceLineNo">267</span>    * &lt;p&gt;<a name="line.267"></a>
+<span class="sourceLineNo">268</span>    * When using the REST API, this is the Java method invoked by the REST call.<a name="line.268"></a>
+<span class="sourceLineNo">269</span>    * Can be used to access annotations defined on the method or class.<a name="line.269"></a>
+<span class="sourceLineNo">270</span>    *<a name="line.270"></a>
+<span class="sourceLineNo">271</span>    * @return The Java method that invoked this serializer.<a name="line.271"></a>
+<span class="sourceLineNo">272</span>   */<a name="line.272"></a>
+<span class="sourceLineNo">273</span>   protected final Method getJavaMethod() {<a name="line.273"></a>
+<span class="sourceLineNo">274</span>      return javaMethod;<a name="line.274"></a>
+<span class="sourceLineNo">275</span>   }<a name="line.275"></a>
+<span class="sourceLineNo">276</span><a name="line.276"></a>
+<span class="sourceLineNo">277</span>   /**<a name="line.277"></a>
+<span class="sourceLineNo">278</span>    * Returns the URI resolver.<a name="line.278"></a>
+<span class="sourceLineNo">279</span>    *<a name="line.279"></a>
+<span class="sourceLineNo">280</span>    * @return The URI resolver.<a name="line.280"></a>
+<span class="sourceLineNo">281</span>    */<a name="line.281"></a>
+<span class="sourceLineNo">282</span>   protected final UriResolver getUriResolver() {<a name="line.282"></a>
+<span class="sourceLineNo">283</span>      return uriResolver;<a name="line.283"></a>
+<span class="sourceLineNo">284</span>   }<a name="line.284"></a>
+<span class="sourceLineNo">285</span><a name="line.285"></a>
+<span class="sourceLineNo">286</span>   /**<a name="line.286"></a>
+<span class="sourceLineNo">287</span>    * Returns the {@link SerializerContext#SERIALIZER_maxDepth} setting value for this session.<a name="line.287"></a>
+<span class="sourceLineNo">288</span>    *<a name="line.288"></a>
+<span class="sourceLineNo">289</span>    * @return The {@link SerializerContext#SERIALIZER_maxDepth} setting value for this session.<a name="line.289"></a>
+<span class="sourceLineNo">290</span>    */<a name="line.290"></a>
+<span class="sourceLineNo">291</span>   protected final int getMaxDepth() {<a name="line.291"></a>
+<span class="sourceLineNo">292</span>      return maxDepth;<a name="line.292"></a>
+<span class="sourceLineNo">293</span>   }<a name="line.293"></a>
+<span class="sourceLineNo">294</span><a name="line.294"></a>
+<span class="sourceLineNo">295</span>   /**<a name="line.295"></a>
+<span class="sourceLineNo">296</span>    * Returns the {@link SerializerContext#SERIALIZER_initialDepth} setting value for this session.<a name="line.296"></a>
+<span class="sourceLineNo">297</span>    *<a name="line.297"></a>
+<span class="sourceLineNo">298</span>    * @return The {@link SerializerContext#SERIALIZER_initialDepth} setting value for this session.<a name="line.298"></a>
+<span class="sourceLineNo">299</span>    */<a name="line.299"></a>
+<span class="sourceLineNo">300</span>   protected final int getInitialDepth() {<a name="line.300"></a>
+<span class="sourceLineNo">301</span>      return initialDepth;<a name="line.301"></a>
+<span class="sourceLineNo">302</span>   }<a name="line.302"></a>
+<span class="sourceLineNo">303</span><a name="line.303"></a>
+<span class="sourceLineNo">304</span>   /**<a name="line.304"></a>
+<span class="sourceLineNo">305</span>    * Returns the {@link SerializerContext#SERIALIZER_detectRecursions} setting value for this session.<a name="line.305"></a>
+<span class="sourceLineNo">306</span>    *<a name="line.306"></a>
+<span class="sourceLineNo">307</span>    * @return The {@link SerializerContext#SERIALIZER_detectRecursions} setting value for this session.<a name="line.307"></a>
+<span class="sourceLineNo">308</span>    */<a name="line.308"></a>
+<span class="sourceLineNo">309</span>   protected final boolean isDetectRecursions() {<a name="line.309"></a>
+<span class="sourceLineNo">310</span>      return detectRecursions;<a name="line.310"></a>
+<span class="sourceLineNo">311</span>   }<a name="line.311"></a>
+<span class="sourceLineNo">312</span><a name="line.312"></a>
+<span class="sourceLineNo">313</span>   /**<a name="line.313"></a>
+<span class="sourceLineNo">314</span>    * Returns the {@link SerializerContext#SERIALIZER_ignoreRecursions} setting value for this session.<a name="line.314"></a>
+<span class="sourceLineNo">315</span>    *<a name="line.315"></a>
+<span class="sourceLineNo">316</span>    * @return The {@link SerializerContext#SERIALIZER_ignoreRecursions} setting value for this session.<a name="line.316"></a>
+<span class="sourceLineNo">317</span>    */<a name="line.317"></a>
+<span class="sourceLineNo">318</span>   protected final boolean isIgnoreRecursions() {<a name="line.318"></a>
+<span class="sourceLineNo">319</span>      return ignoreRecursions;<a name="line.319"></a>
+<span class="sourceLineNo">320</span>   }<a name="line.320"></a>
+<span class="sourceLineNo">321</span><a name="line.321"></a>
+<span class="sourceLineNo">322</span>   /**<a name="line.322"></a>
+<span class="sourceLineNo">323</span>    * Returns the {@link SerializerContext#SERIALIZER_useWhitespace} setting value for this session.<a name="line.323"></a>
+<span class="sourceLineNo">324</span>    *<a name="line.324"></a>
+<span class="sourceLineNo">325</span>    * @return The {@link SerializerContext#SERIALIZER_useWhitespace} setting value for this session.<a name="line.325"></a>
+<span class="sourceLineNo">326</span>    */<a name="line.326"></a>
+<span class="sourceLineNo">327</span>   protected final boolean isUseWhitespace() {<a name="line.327"></a>
+<span class="sourceLineNo">328</span>      return useWhitespace;<a name="line.328"></a>
+<span class="sourceLineNo">329</span>   }<a name="line.329"></a>
+<span class="sourceLineNo">330</span><a name="line.330"></a>
+<span class="sourceLineNo">331</span>   /**<a name="line.331"></a>
+<span class="sourceLineNo">332</span>    * Returns the {@link SerializerContext#SERIALIZER_maxIndent} setting value for this session.<a name="line.332"></a>
+<span class="sourceLineNo">333</span>    *<a name="line.333"></a>
+<span class="sourceLineNo">334</span>    * @return The {@link SerializerContext#SERIALIZER_maxIndent} setting value for this session.<a name="line.334"></a>
+<span class="sourceLineNo">335</span>    */<a name="line.335"></a>
+<span class="sourceLineNo">336</span>   protected final int getMaxIndent() {<a name="line.336"></a>
+<span class="sourceLineNo">337</span>      return maxIndent;<a name="line.337"></a>
+<span class="sourceLineNo">338</span>   }<a name="line.338"></a>
+<span class="sourceLineNo">339</span><a name="line.339"></a>
+<span class="sourceLineNo">340</span>   /**<a name="line.340"></a>
+<span class="sourceLineNo">341</span>    * Returns the {@link SerializerContext#SERIALIZER_addBeanTypeProperties} setting value for this session.<a name="line.341"></a>
+<span class="sourceLineNo">342</span>    *<a name="line.342"></a>
+<span class="sourceLineNo">343</span>    * @return The {@link SerializerContext#SERIALIZER_addBeanTypeProperties} setting value for this session.<a name="line.343"></a>
+<span class="sourceLineNo">344</span>    */<a name="line.344"></a>
+<span class="sourceLineNo">345</span>   protected boolean isAddBeanTypeProperties() {<a name="line.345"></a>
+<span class="sourceLineNo">346</span>      return addBeanTypeProperties;<a name="line.346"></a>
+<span class="sourceLineNo">347</span>   }<a name="line.347"></a>
+<span class="sourceLineNo">348</span><a name="line.348"></a>
+<span class="sourceLineNo">349</span>   /**<a name="line.349"></a>
+<span class="sourceLineNo">350</span>    * Returns the {@link SerializerContext#SERIALIZER_quoteChar} setting value for this session.<a name="line.350"></a>
+<span class="sourceLineNo">351</span>    *<a name="line.351"></a>
+<span class="sourceLineNo">352</span>    * @return The {@link SerializerContext#SERIALIZER_quoteChar} setting value for this session.<a name="line.352"></a>
+<span class="sourceLineNo">353</span>    */<a name="line.353"></a>
+<span class="sourceLineNo">354</span>   protected final char getQuoteChar() {<a name="line.354"></a>
+<span class="sourceLineNo">355</span>      return quoteChar;<a name="line.355"></a>
+<span class="sourceLineNo">356</span>   }<a name="line.356"></a>
+<span class="sourceLineNo">357</span><a name="line.357"></a>
+<span class="sourceLineNo">358</span>   /**<a name="line.358"></a>
+<span class="sourceLineNo">359</span>    * Returns the {@link SerializerContext#SERIALIZER_trimNullProperties} setting value for this session.<a name="line.359"></a>
+<span class="sourceLineNo">360</span>    *<a name="line.360"></a>
+<span class="sourceLineNo">361</span>    * @return The {@link SerializerContext#SERIALIZER_trimNullProperties} setting value for this session.<a name="line.361"></a>
+<span class="sourceLineNo">362</span>    */<a name="line.362"></a>
+<span class="sourceLineNo">363</span>   protected final boolean isTrimNulls() {<a name="line.363"></a>
+<span class="sourceLineNo">364</span>      return trimNulls;<a name="line.364"></a>
+<span class="sourceLineNo">365</span>   }<a name="line.365"></a>
+<span class="sourceLineNo">366</span><a name="line.366"></a>
+<span class="sourceLineNo">367</span>   /**<a name="line.367"></a>
+<span class="sourceLineNo">368</span>    * Returns the {@link SerializerContext#SERIALIZER_trimEmptyCollections} setting value for this session.<a name="line.368"></a>
+<span class="sourceLineNo">369</span>    *<a name="line.369"></a>
+<span class="sourceLineNo">370</span>    * @return The {@link SerializerContext#SERIALIZER_trimEmptyCollections} setting value for this session.<a name="line.370"></a>
+<span class="sourceLineNo">371</span>    */<a name="line.371"></a>
+<span class="sourceLineNo">372</span>   protected final boolean isTrimEmptyCollections() {<a name="line.372"></a>
+<span class="sourceLineNo">373</span>      return trimEmptyCollections;<a name="line.373"></a>
+<span class="sourceLineNo">374</span>   }<a name="line.374"></a>
+<span class="sourceLineNo">375</span><a name="line.375"></a>
+<span class="sourceLineNo">376</span>   /**<a name="line.376"></a>
+<span class="sourceLineNo">377</span>    * Returns the {@link SerializerContext#SERIALIZER_trimEmptyMaps} setting value for this session.<a name="line.377"></a>
+<span class="sourceLineNo">378</span>    *<a name="line.378"></a>
+<span class="sourceLineNo">379</span>    * @return The {@link SerializerContext#SERIALIZER_trimEmptyMaps} setting value for this session.<a name="line.379"></a>
+<span class="sourceLineNo">380</span>    */<a name="line.380"></a>
+<span class="sourceLineNo">381</span>   protected final boolean isTrimEmptyMaps() {<a name="line.381"></a>
+<span class="sourceLineNo">382</span>      return trimEmptyMaps;<a name="line.382"></a>
+<span class="sourceLineNo">383</span>   }<a name="line.383"></a>
+<span class="sourceLineNo">384</span><a name="line.384"></a>
+<span class="sourceLineNo">385</span>   /**<a name="line.385"></a>
+<span class="sourceLineNo">386</span>    * Returns the {@link SerializerContext#SERIALIZER_trimStrings} setting value for this session.<a name="line.386"></a>
+<span class="sourceLineNo">387</span>    *<a name="line.387"></a>
+<span class="sourceLineNo">388</span>    * @return The {@link SerializerContext#SERIALIZER_trimStrings} setting value for this session.<a name="line.388"></a>
+<span class="sourceLineNo">389</span>    */<a name="line.389"></a>
+<span class="sourceLineNo">390</span>   protected final boolean isTrimStrings() {<a name="line.390"></a>
+<span class="sourceLineNo">391</span>      return trimStrings;<a name="line.391"></a>
+<span class="sourceLineNo">392</span>   }<a name="line.392"></a>
+<span class="sourceLineNo">393</span><a name="line.393"></a>
+<span class="sourceLineNo">394</span>   /**<a name="line.394"></a>
+<span class="sourceLineNo">395</span>    * Returns the {@link SerializerContext#SERIALIZER_sortCollections} setting value for this session.<a name="line.395"></a>
+<span class="sourceLineNo">396</span>    *<a name="line.396"></a>
+<span class="sourceLineNo">397</span>    * @return The {@link SerializerContext#SERIALIZER_sortCollections} setting value for this session.<a name="line.397"></a>
+<span class="sourceLineNo">398</span>    */<a name="line.398"></a>
+<span class="sourceLineNo">399</span>   protected final boolean isSortCollections() {<a name="line.399"></a>
+<span class="sourceLineNo">400</span>      return sortCollections;<a name="line.400"></a>
+<span class="sourceLineNo">401</span>   }<a name="line.401"></a>
+<span class="sourceLineNo">402</span><a name="line.402"></a>
+<span class="sourceLineNo">403</span>   /**<a name="line.403"></a>
+<span class="sourceLineNo">404</span>    * Returns the {@link SerializerContext#SERIALIZER_sortMaps} setting value for this session.<a name="line.404"></a>
+<span class="sourceLineNo">405</span>    *<a name="line.405"></a>
+<span class="sourceLineNo">406</span>    * @return The {@link SerializerContext#SERIALIZER_sortMaps} setting value for this session.<a name="line.406"></a>
+<span class="sourceLineNo">407</span>    */<a name="line.407"></a>
+<span class="sourceLineNo">408</span>   protected final boolean isSortMaps() {<a name="line.408"></a>
+<span class="sourceLineNo">409</span>      return sortMaps;<a name="line.409"></a>
+<span class="sourceLineNo">410</span>   }<a name="line.410"></a>
+<span class="sourceLineNo">411</span><a name="line.411"></a>
+<span class="sourceLineNo">412</span>   /**<a name="line.412"></a>
+<span class="sourceLineNo">413</span>    * Push the specified object onto the stack.<a name="line.413"></a>
+<span class="sourceLineNo">414</span>    *<a name="line.414"></a>
+<span class="sourceLineNo">415</span>    * @param attrName The attribute name.<a name="line.415"></a>
+<span class="sourceLineNo">416</span>    * @param o The current object being serialized.<a name="line.416"></a>
+<span class="sourceLineNo">417</span>    * @param eType The expected class type.<a name="line.417"></a>
+<span class="sourceLineNo">418</span>    * @return<a name="line.418"></a>
+<span class="sourceLineNo">419</span>    *    The {@link ClassMeta} of the object so that &lt;code&gt;instanceof&lt;/code&gt; operations only need to be performed<a name="line.419"></a>
+<span class="sourceLineNo">420</span>    *    once (since they can be expensive).<a name="line.420"></a>
+<span class="sourceLineNo">421</span>    * @throws SerializeException If recursion occurred.<a name="line.421"></a>
+<span class="sourceLineNo">422</span>    */<a name="line.422"></a>
+<span class="sourceLineNo">423</span>   protected final ClassMeta&lt;?&gt; push(String attrName, Object o, ClassMeta&lt;?&gt; eType) throws SerializeException {<a name="line.423"></a>
+<span class="sourceLineNo">424</span>      indent++;<a name="line.424"></a>
+<span class="sourceLineNo">425</span>      isBottom = true;<a name="line.425"></a>
+<span class="sourceLineNo">426</span>      if (o == null)<a name="line.426"></a>
+<span class="sourceLineNo">427</span>         return null;<a name="line.427"></a>
+<span class="sourceLineNo">428</span>      Class&lt;?&gt; c = o.getClass();<a name="line.428"></a>
+<span class="sourceLineNo">429</span>      ClassMeta&lt;?&gt; cm = (eType != null &amp;&amp; c == eType.getInnerClass()) ? eType : getClassMeta(c);<a name="line.429"></a>
+<span class="sourceLineNo">430</span>      if (cm.isCharSequence() || cm.isNumber() || cm.isBoolean())<a name="line.430"></a>
+<span class="sourceLineNo">431</span>         return cm;<a name="line.431"></a>
+<span class="sourceLineNo">432</span>      if (detectRecursions || isDebug()) {<a name="line.432"></a>
+<span class="sourceLineNo">433</span>         if (stack.size() &gt; maxDepth)<a name="line.433"></a>
+<span class="sourceLineNo">434</span>            return null;<a name="line.434"></a>
+<span class="sourceLineNo">435</span>         if (willRecurse(attrName, o, cm))<a name="line.435"></a>
+<span class="sourceLineNo">436</span>            return null;<a name="line.436"></a>
+<span class="sourceLineNo">437</span>         isBottom = false;<a name="line.437"></a>
+<span class="sourceLineNo">438</span>         stack.add(new StackElement(stack.size(), attrName, o, cm));<a name="line.438"></a>
+<span class="sourceLineNo">439</span>         if (isDebug())<a name="line.439"></a>
+<span class="sourceLineNo">440</span>            getLogger().info(getStack(false));<a name="line.440"></a>
+<span class="sourceLineNo">441</span>         set.put(o, o);<a name="line.441"></a>
+<span class="sourceLineNo">442</span>      }<a name="line.442"></a>
+<span class="sourceLineNo">443</span>      return cm;<a name="line.443"></a>
+<span class="sourceLineNo">444</span>   }<a name="line.444"></a>
+<span class="sourceLineNo">445</span><a name="line.445"></a>
+<span class="sourceLineNo">446</span>   /**<a name="line.446"></a>
+<span class="sourceLineNo">447</span>    * Returns &lt;jk&gt;true&lt;/jk&gt; if {@link SerializerContext#SERIALIZER_detectRecursions} is enabled, and the specified<a name="line.447"></a>
+<span class="sourceLineNo">448</span>    * object is already higher up in the serialization chain.<a name="line.448"></a>
+<span class="sourceLineNo">449</span>    *<a name="line.449"></a>
+<span class="sourceLineNo">450</span>    * @param attrName The bean property attribute name, or some other identifier.<a name="line.450"></a>
+<span class="sourceLineNo">451</span>    * @param o The object to check for recursion.<a name="line.451"></a>
+<span class="sourceLineNo">452</span>    * @param cm The metadata on the object class.<a name="line.452"></a>
+<span class="sourceLineNo">453</span>    * @return &lt;jk&gt;true&lt;/jk&gt; if recursion detected.<a name="line.453"></a>
+<span class="sourceLineNo">454</span>    * @throws SerializeException If recursion occurred.<a name="line.454"></a>
+<span class="sourceLineNo">455</span>    */<a name="line.455"></a>
+<span class="sourceLineNo">456</span>   protected final boolean willRecurse(String attrName, Object o, ClassMeta&lt;?&gt; cm) throws SerializeException {<a name="line.456"></a>
+<span class="sourceLineNo">457</span>      if (! (detectRecursions || isDebug()))<a name="line.457"></a>
+<span class="sourceLineNo">458</span>         return false;<a name="line.458"></a>
+<span class="sourceLineNo">459</span>      if (! set.containsKey(o))<a name="line.459"></a>
+<span class="sourceLineNo">460</span>         return false;<a name="line.460"></a>
+<span class="sourceLineNo">461</span>      if (ignoreRecursions &amp;&amp; ! isDebug())<a name="line.461"></a>
+<span class="sourceLineNo">462</span>         return true;<a name="line.462"></a>
+<span class="sourceLineNo">463</span><a name="line.463"></a>
+<span class="sourceLineNo">464</span>      stack.add(new StackElement(stack.size(), attrName, o, cm));<a name="line.464"></a>
+<span class="sourceLineNo">465</span>      throw new SerializeException("Recursion occurred, stack={0}", getStack(true));<a name="line.465"></a>
+<span class="sourceLineNo">466</span>   }<a name="line.466"></a>
+<span class="sourceLineNo">467</span><a name="line.467"></a>
+<span class="sourceLineNo">468</span>   /**<a name="line.468"></a>
+<span class="sourceLineNo">469</span>    * Pop an object off the stack.<a name="line.469"></a>
+<span class="sourceLineNo">470</span>    */<a name="line.470"></a>
+<span class="sourceLineNo">471</span>   protected final void pop() {<a name="line.471"></a>
+<span class="sourceLineNo">472</span>      indent--;<a name="line.472"></a>
+<span class="sourceLineNo">473</span>      if ((detectRecursions || isDebug()) &amp;&amp; ! isBottom)  {<a name="line.473"></a>
+<span class="sourceLineNo">474</span>         Object o = stack.removeLast().o;<a name="line.474"></a>
+<span class="sourceLineNo">475</span>         Object o2 = set.remove(o);<a name="line.475"></a>
+<span class="sourceLineNo">476</span>         if (o2 == null)<a name="line.476"></a>
+<span class="sourceLineNo">477</span>            onError(null, "Couldn't remove object of type ''{0}'' on attribute ''{1}'' from object stack.",<a name="line.477"></a>
+<span class="sourceLineNo">478</span>               o.getClass().getName(), stack);<a name="line.478"></a>
+<span class="sourceLineNo">479</span>      }<a name="line.479"></a>
+<span class="sourceLineNo">480</span>      isBottom = false;<a name="line.480"></a>
+<span class="sourceLineNo">481</span>   }<a name="line.481"></a>
+<span class="sourceLineNo">482</span><a name="line.482"></a>
+<span class="sourceLineNo">483</span>   /**<a name="line.483"></a>
+<span class="sourceLineNo">484</span>    * Specialized warning when an exception is thrown while executing a bean getter.<a name="line.484"></a>
+<span class="sourceLineNo">485</span>    *<a name="line.485"></a>
+<span class="sourceLineNo">486</span>    * @param p The bean map entry representing the bean property.<a name="line.486"></a>
+<span class="sourceLineNo">487</span>    * @param t The throwable that the bean getter threw.<a name="line.487"></a>
+<span class="sourceLineNo">488</span>    */<a name="line.488"></a>
+<span class="sourceLineNo">489</span>   protected final void onBeanGetterException(BeanPropertyMeta p, Throwable t) {<a name="line.489"></a>
+<span class="sourceLineNo">490</span>      if (listener != null)<a name="line.490"></a>
+<span class="sourceLineNo">491</span>         listener.onBeanGetterException(this, t, p);<a name="line.491"></a>
+<span class="sourceLineNo">492</span>      String prefix = (isDebug() ? getStack(false) + ": " : "");<a name="line.492"></a>
+<span class="sourceLineNo">493</span>      addWarning("{0}Could not call getValue() on property ''{1}'' of class ''{2}'', exception = {3}", prefix,<a name="line.493"></a>
+<span class="sourceLineNo">494</span>         p.getName(), p.getBeanMeta().getClassMeta(), t.getLocalizedMessage());<a name="line.494"></a>
+<span class="sourceLineNo">495</span>   }<a name="line.495"></a>
+<span class="sourceLineNo">496</span><a name="line.496"></a>
+<span class="sourceLineNo">497</span>   /**<a name="line.497"></a>
+<span class="sourceLineNo">498</span>    * Logs a warning message.<a name="line.498"></a>
+<span class="sourceLineNo">499</span>    *<a name="line.499"></a>
+<span class="sourceLineNo">500</span>    * @param t The throwable that was thrown (if there was one).<a name="line.500"></a>
+<span class="sourceLineNo">501</span>    * @param msg The warning message.<a name="line.501"></a>
+<span class="sourceLineNo">502</span>    * @param args Optional {@link MessageFormat}-style arguments.<a name="line.502"></a>
+<span class="sourceLineNo">503</span>    */<a name="line.503"></a>
+<span class="sourceLineNo">504</span>   protected final void onError(Throwable t, String msg, Object... args) {<a name="line.504"></a>
+<span class="sourceLineNo">505</span>      if (listener != null)<a name="line.505"></a>
+<span class="sourceLineNo">506</span>         listener.onError(this, t, format(msg, args));<a name="line.506"></a>
+<span class="sourceLineNo">507</span>      super.addWarning(msg, args);<a name="line.507"></a>
+<span class="sourceLineNo">508</span>   }<a name="line.508"></a>
+<span class="sourceLineNo">509</span><a name="line.509"></a>
+<span class="sourc

<TRUNCATED>


[48/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/jena/RdfParser.Turtle.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/jena/RdfParser.Turtle.html b/content/site/apidocs/org/apache/juneau/jena/RdfParser.Turtle.html
index 59d028a..70dd2aa 100644
--- a/content/site/apidocs/org/apache/juneau/jena/RdfParser.Turtle.html
+++ b/content/site/apidocs/org/apache/juneau/jena/RdfParser.Turtle.html
@@ -126,8 +126,7 @@
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation">@Consumes</a>(<a href="../../../../org/apache/juneau/annotation/Consumes.html#value--">value</a>="text/turtle")
-public static class <a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.94">RdfParser.Turtle</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.89">RdfParser.Turtle</a>
 extends <a href="../../../../org/apache/juneau/jena/RdfParser.html" title="class in org.apache.juneau.jena">RdfParser</a></pre>
 <div class="block">Consumes Turtle input</div>
 </li>
@@ -217,7 +216,7 @@ extends <a href="../../../../org/apache/juneau/jena/RdfParser.html" title="class
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.parser.<a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser">Parser</a></h3>
-<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-java.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apac
 he/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
+<code><a href="../../../../org/apache/juneau/parser/Parser.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-j
 ava.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -253,7 +252,7 @@ extends <a href="../../../../org/apache/juneau/jena/RdfParser.html" title="class
 <ul class="blockListLast">
 <li class="blockList">
 <h4>Turtle</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfParser.Turtle.html#line.101">Turtle</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfParser.Turtle.html#line.96">Turtle</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/jena/RdfParser.Xml.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/jena/RdfParser.Xml.html b/content/site/apidocs/org/apache/juneau/jena/RdfParser.Xml.html
index 37cdc22..2f0f7e4 100644
--- a/content/site/apidocs/org/apache/juneau/jena/RdfParser.Xml.html
+++ b/content/site/apidocs/org/apache/juneau/jena/RdfParser.Xml.html
@@ -126,8 +126,7 @@
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation">@Consumes</a>(<a href="../../../../org/apache/juneau/annotation/Consumes.html#value--">value</a>="text/xml+rdf")
-public static class <a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.66">RdfParser.Xml</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.63">RdfParser.Xml</a>
 extends <a href="../../../../org/apache/juneau/jena/RdfParser.html" title="class in org.apache.juneau.jena">RdfParser</a></pre>
 <div class="block">Consumes RDF/XML input</div>
 </li>
@@ -217,7 +216,7 @@ extends <a href="../../../../org/apache/juneau/jena/RdfParser.html" title="class
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.parser.<a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser">Parser</a></h3>
-<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-java.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apac
 he/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
+<code><a href="../../../../org/apache/juneau/parser/Parser.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-j
 ava.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -253,7 +252,7 @@ extends <a href="../../../../org/apache/juneau/jena/RdfParser.html" title="class
 <ul class="blockListLast">
 <li class="blockList">
 <h4>Xml</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfParser.Xml.html#line.73">Xml</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfParser.Xml.html#line.70">Xml</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/jena/RdfParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/jena/RdfParser.html b/content/site/apidocs/org/apache/juneau/jena/RdfParser.html
index eb32d42..b79c1ec 100644
--- a/content/site/apidocs/org/apache/juneau/jena/RdfParser.html
+++ b/content/site/apidocs/org/apache/juneau/jena/RdfParser.html
@@ -127,8 +127,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation">@Consumes</a>(<a href="../../../../org/apache/juneau/annotation/Consumes.html#value--">value</a>="text/xml+rdf")
-public class <a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.49">RdfParser</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.47">RdfParser</a>
 extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="class in org.apache.juneau.parser">ReaderParser</a></pre>
 <div class="block">Parses RDF into POJOs.
 
@@ -257,7 +256,8 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <th class="colOne" scope="col">Constructor and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/jena/RdfParser.html#RdfParser-org.apache.juneau.PropertyStore-">RdfParser</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</code>
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/jena/RdfParser.html#RdfParser-org.apache.juneau.PropertyStore-java.lang.String...-">RdfParser</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+         <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;consumes)</code>
 <div class="block">Constructor.</div>
 </td>
 </tr>
@@ -302,7 +302,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.parser.<a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser">Parser</a></h3>
-<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-java.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apac
 he/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
+<code><a href="../../../../org/apache/juneau/parser/Parser.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-j
 ava.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -338,7 +338,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_XML</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/jena/RdfParser.html" title="class in org.apache.juneau.jena">RdfParser</a> <a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.52">DEFAULT_XML</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/jena/RdfParser.html" title="class in org.apache.juneau.jena">RdfParser</a> <a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.50">DEFAULT_XML</a></pre>
 <div class="block">Default XML parser, all default settings.</div>
 </li>
 </ul>
@@ -348,7 +348,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_TURTLE</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/jena/RdfParser.html" title="class in org.apache.juneau.jena">RdfParser</a> <a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.55">DEFAULT_TURTLE</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/jena/RdfParser.html" title="class in org.apache.juneau.jena">RdfParser</a> <a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.53">DEFAULT_TURTLE</a></pre>
 <div class="block">Default Turtle parser, all default settings.</div>
 </li>
 </ul>
@@ -358,7 +358,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_NTRIPLE</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/jena/RdfParser.html" title="class in org.apache.juneau.jena">RdfParser</a> <a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.58">DEFAULT_NTRIPLE</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/jena/RdfParser.html" title="class in org.apache.juneau.jena">RdfParser</a> <a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.56">DEFAULT_NTRIPLE</a></pre>
 <div class="block">Default N-Triple parser, all default settings.</div>
 </li>
 </ul>
@@ -368,7 +368,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DEFAULT_N3</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/jena/RdfParser.html" title="class in org.apache.juneau.jena">RdfParser</a> <a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.61">DEFAULT_N3</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/jena/RdfParser.html" title="class in org.apache.juneau.jena">RdfParser</a> <a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.59">DEFAULT_N3</a></pre>
 <div class="block">Default N3 parser, all default settings.</div>
 </li>
 </ul>
@@ -380,17 +380,19 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
-<a name="RdfParser-org.apache.juneau.PropertyStore-">
+<a name="RdfParser-org.apache.juneau.PropertyStore-java.lang.String...-">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>RdfParser</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.128">RdfParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.123">RdfParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                 <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;consumes)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+<dd><code>consumes</code> - The list of media types that this parser consumes (e.g. <js>"application/json"</js>).</dd>
 </dl>
 </li>
 </ul>
@@ -408,7 +410,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockList">
 <li class="blockList">
 <h4>builder</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/jena/RdfParserBuilder.html" title="class in org.apache.juneau.jena">RdfParserBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.134">builder</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/jena/RdfParserBuilder.html" title="class in org.apache.juneau.jena">RdfParserBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.129">builder</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/CoreObject.html#builder--">CoreObject</a></code></span></div>
 <div class="block">Creates a new builder class for this object so that a new object can be created that expands upon the current
  object's settings.</div>
@@ -426,7 +428,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/parser/ReaderParserSession.html" title="class in org.apache.juneau.parser">ReaderParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.139">createSession</a>(<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/parser/ReaderParserSession.html" title="class in org.apache.juneau.parser">ReaderParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.134">createSession</a>(<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession-org.apache.juneau.parser.ParserSessionArgs-">Parser</a></code></span></div>
 <div class="block">Create the session object that will be passed in to the parse method.
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.N3.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.N3.html b/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.N3.html
index 63ed127..dc671e9 100644
--- a/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.N3.html
+++ b/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.N3.html
@@ -126,8 +126,7 @@
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="text/n3")
-public static class <a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.122">RdfSerializer.N3</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.115">RdfSerializer.N3</a>
 extends <a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="class in org.apache.juneau.jena">RdfSerializer</a></pre>
 <div class="block">Produces N3 output</div>
 </li>
@@ -217,7 +216,7 @@ extends <a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="c
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -253,7 +252,7 @@ extends <a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="c
 <ul class="blockListLast">
 <li class="blockList">
 <h4>N3</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.N3.html#line.129">N3</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.N3.html#line.122">N3</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.NTriple.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.NTriple.html b/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.NTriple.html
index d2cfdaf..b2d9fb6 100644
--- a/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.NTriple.html
+++ b/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.NTriple.html
@@ -126,8 +126,7 @@
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="text/n-triple")
-public static class <a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.94">RdfSerializer.NTriple</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.89">RdfSerializer.NTriple</a>
 extends <a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="class in org.apache.juneau.jena">RdfSerializer</a></pre>
 <div class="block">Produces N-Triple output</div>
 </li>
@@ -217,7 +216,7 @@ extends <a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="c
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -253,7 +252,7 @@ extends <a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="c
 <ul class="blockListLast">
 <li class="blockList">
 <h4>NTriple</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.NTriple.html#line.101">NTriple</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.NTriple.html#line.96">NTriple</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.Turtle.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.Turtle.html b/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.Turtle.html
index 4bf835f..6505e50 100644
--- a/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.Turtle.html
+++ b/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.Turtle.html
@@ -126,8 +126,7 @@
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="text/turtle")
-public static class <a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.108">RdfSerializer.Turtle</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.102">RdfSerializer.Turtle</a>
 extends <a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="class in org.apache.juneau.jena">RdfSerializer</a></pre>
 <div class="block">Produces Turtle output</div>
 </li>
@@ -217,7 +216,7 @@ extends <a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="c
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -253,7 +252,7 @@ extends <a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="c
 <ul class="blockListLast">
 <li class="blockList">
 <h4>Turtle</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.Turtle.html#line.115">Turtle</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.Turtle.html#line.109">Turtle</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.Xml.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.Xml.html b/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.Xml.html
index 9502468..51b5a4d 100644
--- a/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.Xml.html
+++ b/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.Xml.html
@@ -126,8 +126,7 @@
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="text/xml+rdf")
-public static class <a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.66">RdfSerializer.Xml</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.63">RdfSerializer.Xml</a>
 extends <a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="class in org.apache.juneau.jena">RdfSerializer</a></pre>
 <div class="block">Produces RDF/XML output</div>
 </li>
@@ -217,7 +216,7 @@ extends <a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="c
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -253,7 +252,7 @@ extends <a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="c
 <ul class="blockListLast">
 <li class="blockList">
 <h4>Xml</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.Xml.html#line.73">Xml</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.Xml.html#line.70">Xml</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.XmlAbbrev.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.XmlAbbrev.html b/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.XmlAbbrev.html
index 9a2538e..e568661 100644
--- a/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.XmlAbbrev.html
+++ b/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.XmlAbbrev.html
@@ -126,9 +126,7 @@
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="text/xml+rdf+abbrev",
-          <a href="../../../../org/apache/juneau/annotation/Produces.html#contentType--">contentType</a>="text/xml+rdf")
-public static class <a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.80">RdfSerializer.XmlAbbrev</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.76">RdfSerializer.XmlAbbrev</a>
 extends <a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="class in org.apache.juneau.jena">RdfSerializer</a></pre>
 <div class="block">Produces Abbreviated RDF/XML output</div>
 </li>
@@ -218,7 +216,7 @@ extends <a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="c
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -254,7 +252,7 @@ extends <a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="c
 <ul class="blockListLast">
 <li class="blockList">
 <h4>XmlAbbrev</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.XmlAbbrev.html#line.87">XmlAbbrev</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.XmlAbbrev.html#line.83">XmlAbbrev</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.html b/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.html
index 117245c..6a796e2 100644
--- a/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.html
+++ b/content/site/apidocs/org/apache/juneau/jena/RdfSerializer.html
@@ -127,9 +127,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="text/xml+rdf+abbrev",
-          <a href="../../../../org/apache/juneau/annotation/Produces.html#contentType--">contentType</a>="text/xml+rdf")
-public class <a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.46">RdfSerializer</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.44">RdfSerializer</a>
 extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html" title="class in org.apache.juneau.serializer">WriterSerializer</a></pre>
 <div class="block">Serializes POJOs to RDF.
 
@@ -267,7 +265,9 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <th class="colOne" scope="col">Constructor and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/jena/RdfSerializer.html#RdfSerializer-org.apache.juneau.PropertyStore-">RdfSerializer</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</code>
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/jena/RdfSerializer.html#RdfSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">RdfSerializer</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+             <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+             <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</code>
 <div class="block">Constructor.</div>
 </td>
 </tr>
@@ -312,7 +312,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -348,7 +348,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_XML</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="class in org.apache.juneau.jena">RdfSerializer</a> <a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.49">DEFAULT_XML</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="class in org.apache.juneau.jena">RdfSerializer</a> <a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.47">DEFAULT_XML</a></pre>
 <div class="block">Default RDF/XML serializer, all default settings.</div>
 </li>
 </ul>
@@ -358,7 +358,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_XMLABBREV</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="class in org.apache.juneau.jena">RdfSerializer</a> <a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.52">DEFAULT_XMLABBREV</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="class in org.apache.juneau.jena">RdfSerializer</a> <a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.50">DEFAULT_XMLABBREV</a></pre>
 <div class="block">Default Abbreviated RDF/XML serializer, all default settings.</div>
 </li>
 </ul>
@@ -368,7 +368,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_TURTLE</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="class in org.apache.juneau.jena">RdfSerializer</a> <a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.55">DEFAULT_TURTLE</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="class in org.apache.juneau.jena">RdfSerializer</a> <a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.53">DEFAULT_TURTLE</a></pre>
 <div class="block">Default Turtle serializer, all default settings.</div>
 </li>
 </ul>
@@ -378,7 +378,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_NTRIPLE</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="class in org.apache.juneau.jena">RdfSerializer</a> <a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.58">DEFAULT_NTRIPLE</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="class in org.apache.juneau.jena">RdfSerializer</a> <a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.56">DEFAULT_NTRIPLE</a></pre>
 <div class="block">Default N-Triple serializer, all default settings.</div>
 </li>
 </ul>
@@ -388,7 +388,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DEFAULT_N3</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="class in org.apache.juneau.jena">RdfSerializer</a> <a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.61">DEFAULT_N3</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/jena/RdfSerializer.html" title="class in org.apache.juneau.jena">RdfSerializer</a> <a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.59">DEFAULT_N3</a></pre>
 <div class="block">Default N3 serializer, all default settings.</div>
 </li>
 </ul>
@@ -400,17 +400,32 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
-<a name="RdfSerializer-org.apache.juneau.PropertyStore-">
+<a name="RdfSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>RdfSerializer</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.142">RdfSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.151">RdfSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                     <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+                     <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+<dd><code>produces</code> - The media type that this serializer produces.</dd>
+<dd><code>accept</code> - The accept media types that the serializer can handle.
+   <p>
+   Can contain meta-characters per the <code>media-type</code> specification of
+   <a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1">RFC2616/14.1</a>
+   <p>
+   If empty, then assumes the only media type supported is <code>produces</code>.
+   <p>
+   For example, if this serializer produces <js>"application/json"</js> but should handle media types of
+   <js>"application/json"</js> and <js>"text/json"</js>, then the arguments should be:
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"application/json"</js>, <js>"text/json"</js>);</code>
+   <br>...or...
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"*&#8203;/json"</js>);</code></dd>
 </dl>
 </li>
 </ul>
@@ -428,7 +443,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>builder</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/jena/RdfSerializerBuilder.html" title="class in org.apache.juneau.jena">RdfSerializerBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.148">builder</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/jena/RdfSerializerBuilder.html" title="class in org.apache.juneau.jena">RdfSerializerBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.157">builder</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/CoreObject.html#builder--">CoreObject</a></code></span></div>
 <div class="block">Creates a new builder class for this object so that a new object can be created that expands upon the current
  object's settings.</div>
@@ -446,7 +461,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.153">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfSerializer.html#line.162">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession-org.apache.juneau.serializer.SerializerSessionArgs-">Serializer</a></code></span></div>
 <div class="block">Create the session object used for actual serialization of objects.</div>
 <dl>
@@ -456,8 +471,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and serializer
-   contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   contexts.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The new session object.
    <br>Note that you must call <a href="../../../../org/apache/juneau/BeanSession.html#close--"><code>BeanSession.close()</code></a> on this object to perform any necessary

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/jena/RdfSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/jena/RdfSerializerSession.html b/content/site/apidocs/org/apache/juneau/jena/RdfSerializerSession.html
index 79c3fb2..a4c2469 100644
--- a/content/site/apidocs/org/apache/juneau/jena/RdfSerializerSession.html
+++ b/content/site/apidocs/org/apache/juneau/jena/RdfSerializerSession.html
@@ -259,7 +259,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializerSessio
 <ul class="blockListLast">
 <li class="blockList">
 <h4>RdfSerializerSession</h4>
-<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfSerializerSession.html#line.68">RdfSerializerSession</a>(<a href="../../../../org/apache/juneau/jena/RdfSerializerContext.html" title="class in org.apache.juneau.jena">RdfSerializerContext</a>&nbsp;ctx,
+<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfSerializerSession.html#line.67">RdfSerializerSession</a>(<a href="../../../../org/apache/juneau/jena/RdfSerializerContext.html" title="class in org.apache.juneau.jena">RdfSerializerContext</a>&nbsp;ctx,
                                <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block">Create a new session using properties specified in the context.</div>
 <dl>
@@ -269,8 +269,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializerSessio
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and
-   serializer contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   serializer contexts.</dd>
 </dl>
 </li>
 </ul>
@@ -288,7 +287,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializerSessio
 <ul class="blockList">
 <li class="blockList">
 <h4>isAddBeanTypeProperties</h4>
-<pre>public final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfSerializerSession.html#line.137">isAddBeanTypeProperties</a>()</pre>
+<pre>public final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfSerializerSession.html#line.136">isAddBeanTypeProperties</a>()</pre>
 <div class="block">Returns the <a href="../../../../org/apache/juneau/msgpack/MsgPackSerializerContext.html#MSGPACK_addBeanTypeProperties"><code>MsgPackSerializerContext.MSGPACK_addBeanTypeProperties</code></a> setting value for this session.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
@@ -304,7 +303,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializerSessio
 <ul class="blockListLast">
 <li class="blockList">
 <h4>doSerialize</h4>
-<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfSerializerSession.html#line.159">doSerialize</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out,
+<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfSerializerSession.html#line.158">doSerialize</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out,
                            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
                     throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/SerializerSession.html#doSerialize-org.apache.juneau.serializer.SerializerPipe-java.lang.Object-">SerializerSession</a></code></span></div>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/jso/JsoParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/jso/JsoParser.html b/content/site/apidocs/org/apache/juneau/jso/JsoParser.html
index 9e91e81..293d465 100644
--- a/content/site/apidocs/org/apache/juneau/jso/JsoParser.html
+++ b/content/site/apidocs/org/apache/juneau/jso/JsoParser.html
@@ -123,8 +123,7 @@ var activeTableTab = "activeTableTab";
 <li class="blockList">
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation">@Consumes</a>(<a href="../../../../org/apache/juneau/annotation/Consumes.html#value--">value</a>="application/x-java-serialized-object")
-public final class <a href="../../../../src-html/org/apache/juneau/jso/JsoParser.html#line.29">JsoParser</a>
+<pre>public final class <a href="../../../../src-html/org/apache/juneau/jso/JsoParser.html#line.27">JsoParser</a>
 extends <a href="../../../../org/apache/juneau/parser/InputStreamParser.html" title="class in org.apache.juneau.parser">InputStreamParser</a></pre>
 <div class="block">Parses POJOs from HTTP responses as Java <a href="http://docs.oracle.com/javase/7/docs/api/java/io/ObjectInputStream.html?is-external=true" title="class or interface in java.io"><code>ObjectInputStreams</code></a>.
 
@@ -222,7 +221,7 @@ extends <a href="../../../../org/apache/juneau/parser/InputStreamParser.html" ti
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.parser.<a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser">Parser</a></h3>
-<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-java.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apac
 he/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
+<code><a href="../../../../org/apache/juneau/parser/Parser.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-j
 ava.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -258,7 +257,7 @@ extends <a href="../../../../org/apache/juneau/parser/InputStreamParser.html" ti
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DEFAULT</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/jso/JsoParser.html" title="class in org.apache.juneau.jso">JsoParser</a> <a href="../../../../src-html/org/apache/juneau/jso/JsoParser.html#line.32">DEFAULT</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/jso/JsoParser.html" title="class in org.apache.juneau.jso">JsoParser</a> <a href="../../../../src-html/org/apache/juneau/jso/JsoParser.html#line.30">DEFAULT</a></pre>
 <div class="block">Default parser, all default settings.</div>
 </li>
 </ul>
@@ -276,7 +275,7 @@ extends <a href="../../../../org/apache/juneau/parser/InputStreamParser.html" ti
 <ul class="blockListLast">
 <li class="blockList">
 <h4>JsoParser</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jso/JsoParser.html#line.40">JsoParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jso/JsoParser.html#line.38">JsoParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -298,7 +297,7 @@ extends <a href="../../../../org/apache/juneau/parser/InputStreamParser.html" ti
 <ul class="blockList">
 <li class="blockList">
 <h4>builder</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/jso/JsoParserBuilder.html" title="class in org.apache.juneau.jso">JsoParserBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/jso/JsoParser.html#line.45">builder</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/jso/JsoParserBuilder.html" title="class in org.apache.juneau.jso">JsoParserBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/jso/JsoParser.html#line.43">builder</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/CoreObject.html#builder--">CoreObject</a></code></span></div>
 <div class="block">Creates a new builder class for this object so that a new object can be created that expands upon the current
  object's settings.</div>
@@ -316,7 +315,7 @@ extends <a href="../../../../org/apache/juneau/parser/InputStreamParser.html" ti
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/parser/InputStreamParserSession.html" title="class in org.apache.juneau.parser">InputStreamParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/jso/JsoParser.html#line.50">createSession</a>(<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/parser/InputStreamParserSession.html" title="class in org.apache.juneau.parser">InputStreamParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/jso/JsoParser.html#line.48">createSession</a>(<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession-org.apache.juneau.parser.ParserSessionArgs-">Parser</a></code></span></div>
 <div class="block">Create the session object that will be passed in to the parse method.
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/jso/JsoSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/jso/JsoSerializer.html b/content/site/apidocs/org/apache/juneau/jso/JsoSerializer.html
index 95ac82c..89aae79 100644
--- a/content/site/apidocs/org/apache/juneau/jso/JsoSerializer.html
+++ b/content/site/apidocs/org/apache/juneau/jso/JsoSerializer.html
@@ -123,8 +123,7 @@ var activeTableTab = "activeTableTab";
 <li class="blockList">
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="application/x-java-serialized-object")
-public class <a href="../../../../src-html/org/apache/juneau/jso/JsoSerializer.html#line.32">JsoSerializer</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/jso/JsoSerializer.html#line.30">JsoSerializer</a>
 extends <a href="../../../../org/apache/juneau/serializer/OutputStreamSerializer.html" title="class in org.apache.juneau.serializer">OutputStreamSerializer</a></pre>
 <div class="block">Serializes POJOs to HTTP responses as Java Serialized Object <a href="http://docs.oracle.com/javase/7/docs/api/java/io/ObjectOutputStream.html?is-external=true" title="class or interface in java.io"><code>ObjectOutputStreams</code></a>.
 
@@ -225,7 +224,7 @@ extends <a href="../../../../org/apache/juneau/serializer/OutputStreamSerializer
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -261,7 +260,7 @@ extends <a href="../../../../org/apache/juneau/serializer/OutputStreamSerializer
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DEFAULT</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/jso/JsoSerializer.html" title="class in org.apache.juneau.jso">JsoSerializer</a> <a href="../../../../src-html/org/apache/juneau/jso/JsoSerializer.html#line.35">DEFAULT</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/jso/JsoSerializer.html" title="class in org.apache.juneau.jso">JsoSerializer</a> <a href="../../../../src-html/org/apache/juneau/jso/JsoSerializer.html#line.33">DEFAULT</a></pre>
 <div class="block">Default serializer, all default settings.</div>
 </li>
 </ul>
@@ -279,7 +278,7 @@ extends <a href="../../../../org/apache/juneau/serializer/OutputStreamSerializer
 <ul class="blockListLast">
 <li class="blockList">
 <h4>JsoSerializer</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jso/JsoSerializer.html#line.44">JsoSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jso/JsoSerializer.html#line.42">JsoSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -301,7 +300,7 @@ extends <a href="../../../../org/apache/juneau/serializer/OutputStreamSerializer
 <ul class="blockList">
 <li class="blockList">
 <h4>builder</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/jso/JsoSerializerBuilder.html" title="class in org.apache.juneau.jso">JsoSerializerBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/jso/JsoSerializer.html#line.50">builder</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/jso/JsoSerializerBuilder.html" title="class in org.apache.juneau.jso">JsoSerializerBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/jso/JsoSerializer.html#line.48">builder</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/CoreObject.html#builder--">CoreObject</a></code></span></div>
 <div class="block">Creates a new builder class for this object so that a new object can be created that expands upon the current
  object's settings.</div>
@@ -319,7 +318,7 @@ extends <a href="../../../../org/apache/juneau/serializer/OutputStreamSerializer
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/OutputStreamSerializerSession.html" title="class in org.apache.juneau.serializer">OutputStreamSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/jso/JsoSerializer.html#line.55">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/OutputStreamSerializerSession.html" title="class in org.apache.juneau.serializer">OutputStreamSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/jso/JsoSerializer.html#line.53">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession-org.apache.juneau.serializer.SerializerSessionArgs-">Serializer</a></code></span></div>
 <div class="block">Create the session object used for actual serialization of objects.</div>
 <dl>
@@ -329,8 +328,7 @@ extends <a href="../../../../org/apache/juneau/serializer/OutputStreamSerializer
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and serializer
-   contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   contexts.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The new session object.
    <br>Note that you must call <a href="../../../../org/apache/juneau/BeanSession.html#close--"><code>BeanSession.close()</code></a> on this object to perform any necessary

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/jso/JsoSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/jso/JsoSerializerSession.html b/content/site/apidocs/org/apache/juneau/jso/JsoSerializerSession.html
index b4fa26b..35b22ec 100644
--- a/content/site/apidocs/org/apache/juneau/jso/JsoSerializerSession.html
+++ b/content/site/apidocs/org/apache/juneau/jso/JsoSerializerSession.html
@@ -133,7 +133,7 @@ extends <a href="../../../../org/apache/juneau/serializer/OutputStreamSerializer
 <div class="block">Session object that lives for the duration of a single use of <a href="../../../../org/apache/juneau/jso/JsoSerializer.html" title="class in org.apache.juneau.jso"><code>JsoSerializer</code></a>.
 
  <p>
- This class is NOT thread safe.  
+ This class is NOT thread safe.
  It is typically discarded after one-time use although it can be reused within the same thread.</div>
 </li>
 </ul>
@@ -253,7 +253,7 @@ extends <a href="../../../../org/apache/juneau/serializer/OutputStreamSerializer
 <ul class="blockListLast">
 <li class="blockList">
 <h4>JsoSerializerSession</h4>
-<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/jso/JsoSerializerSession.html#line.41">JsoSerializerSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerContext.html" title="class in org.apache.juneau.serializer">SerializerContext</a>&nbsp;ctx,
+<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/jso/JsoSerializerSession.html#line.40">JsoSerializerSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerContext.html" title="class in org.apache.juneau.serializer">SerializerContext</a>&nbsp;ctx,
                                <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block">Create a new session using properties specified in the context.</div>
 <dl>
@@ -263,8 +263,7 @@ extends <a href="../../../../org/apache/juneau/serializer/OutputStreamSerializer
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and
-   serializer contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   serializer contexts.</dd>
 </dl>
 </li>
 </ul>
@@ -282,7 +281,7 @@ extends <a href="../../../../org/apache/juneau/serializer/OutputStreamSerializer
 <ul class="blockListLast">
 <li class="blockList">
 <h4>doSerialize</h4>
-<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/jso/JsoSerializerSession.html#line.46">doSerialize</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out,
+<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/jso/JsoSerializerSession.html#line.45">doSerialize</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out,
                            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
                     throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/SerializerSession.html#doSerialize-org.apache.juneau.serializer.SerializerPipe-java.lang.Object-">SerializerSession</a></code></span></div>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/json/JsonParser.Strict.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/json/JsonParser.Strict.html b/content/site/apidocs/org/apache/juneau/json/JsonParser.Strict.html
index d62fe62..b6d5912 100644
--- a/content/site/apidocs/org/apache/juneau/json/JsonParser.Strict.html
+++ b/content/site/apidocs/org/apache/juneau/json/JsonParser.Strict.html
@@ -126,7 +126,7 @@
 </dl>
 <hr>
 <br>
-<pre>public static class <a href="../../../../src-html/org/apache/juneau/json/JsonParser.html#line.121">JsonParser.Strict</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/json/JsonParser.html#line.119">JsonParser.Strict</a>
 extends <a href="../../../../org/apache/juneau/json/JsonParser.html" title="class in org.apache.juneau.json">JsonParser</a></pre>
 <div class="block">Default parser, strict mode.</div>
 </li>
@@ -216,7 +216,7 @@ extends <a href="../../../../org/apache/juneau/json/JsonParser.html" title="clas
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.parser.<a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser">Parser</a></h3>
-<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-java.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apac
 he/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
+<code><a href="../../../../org/apache/juneau/parser/Parser.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-j
 ava.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -252,7 +252,7 @@ extends <a href="../../../../org/apache/juneau/json/JsonParser.html" title="clas
 <ul class="blockListLast">
 <li class="blockList">
 <h4>Strict</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonParser.Strict.html#line.128">Strict</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/json/JsonParser.Strict.html#line.126">Strict</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>


[45/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/plaintext/PlainTextSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/plaintext/PlainTextSerializer.html b/content/site/apidocs/org/apache/juneau/plaintext/PlainTextSerializer.html
index 3329aed..9e11265 100644
--- a/content/site/apidocs/org/apache/juneau/plaintext/PlainTextSerializer.html
+++ b/content/site/apidocs/org/apache/juneau/plaintext/PlainTextSerializer.html
@@ -123,8 +123,7 @@ var activeTableTab = "activeTableTab";
 <li class="blockList">
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="text/plain")
-public class <a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextSerializer.html#line.47">PlainTextSerializer</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextSerializer.html#line.45">PlainTextSerializer</a>
 extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html" title="class in org.apache.juneau.serializer">WriterSerializer</a></pre>
 <div class="block">Serializes POJOs to plain text using just the <code>toString()</code> method on the serialized object.
 
@@ -200,6 +199,13 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <div class="block">Constructor.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/plaintext/PlainTextSerializer.html#PlainTextSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">PlainTextSerializer</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                   <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+                   <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</code>
+<div class="block">Constructor.</div>
+</td>
+</tr>
 </table>
 </li>
 </ul>
@@ -241,7 +247,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -277,7 +283,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DEFAULT</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/plaintext/PlainTextSerializer.html" title="class in org.apache.juneau.plaintext">PlainTextSerializer</a> <a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextSerializer.html#line.50">DEFAULT</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/plaintext/PlainTextSerializer.html" title="class in org.apache.juneau.plaintext">PlainTextSerializer</a> <a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextSerializer.html#line.48">DEFAULT</a></pre>
 <div class="block">Default serializer, all default settings.</div>
 </li>
 </ul>
@@ -292,14 +298,43 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <a name="PlainTextSerializer-org.apache.juneau.PropertyStore-">
 <!--   -->
 </a>
+<ul class="blockList">
+<li class="blockList">
+<h4>PlainTextSerializer</h4>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextSerializer.html#line.58">PlainTextSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<div class="block">Constructor.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+</dl>
+</li>
+</ul>
+<a name="PlainTextSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">
+<!--   -->
+</a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>PlainTextSerializer</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextSerializer.html#line.59">PlainTextSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextSerializer.html#line.83">PlainTextSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                           <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+                           <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+<dd><code>produces</code> - The media type that this serializer produces.</dd>
+<dd><code>accept</code> - The accept media types that the serializer can handle.
+   <p>
+   Can contain meta-characters per the <code>media-type</code> specification of
+   <a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1">RFC2616/14.1</a>
+   <p>
+   If empty, then assumes the only media type supported is <code>produces</code>.
+   <p>
+   For example, if this serializer produces <js>"application/json"</js> but should handle media types of
+   <js>"application/json"</js> and <js>"text/json"</js>, then the arguments should be:
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"application/json"</js>, <js>"text/json"</js>);</code>
+   <br>...or...
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"*&#8203;/json"</js>);</code></dd>
 </dl>
 </li>
 </ul>
@@ -317,7 +352,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>builder</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/plaintext/PlainTextSerializerBuilder.html" title="class in org.apache.juneau.plaintext">PlainTextSerializerBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextSerializer.html#line.65">builder</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/plaintext/PlainTextSerializerBuilder.html" title="class in org.apache.juneau.plaintext">PlainTextSerializerBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextSerializer.html#line.90">builder</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/CoreObject.html#builder--">CoreObject</a></code></span></div>
 <div class="block">Creates a new builder class for this object so that a new object can be created that expands upon the current
  object's settings.</div>
@@ -335,7 +370,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextSerializer.html#line.70">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextSerializer.html#line.95">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession-org.apache.juneau.serializer.SerializerSessionArgs-">Serializer</a></code></span></div>
 <div class="block">Create the session object used for actual serialization of objects.</div>
 <dl>
@@ -345,8 +380,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and serializer
-   contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   contexts.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The new session object.
    <br>Note that you must call <a href="../../../../org/apache/juneau/BeanSession.html#close--"><code>BeanSession.close()</code></a> on this object to perform any necessary

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/plaintext/PlainTextSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/plaintext/PlainTextSerializerSession.html b/content/site/apidocs/org/apache/juneau/plaintext/PlainTextSerializerSession.html
index 0e20cd3..55a94e7 100644
--- a/content/site/apidocs/org/apache/juneau/plaintext/PlainTextSerializerSession.html
+++ b/content/site/apidocs/org/apache/juneau/plaintext/PlainTextSerializerSession.html
@@ -253,7 +253,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializerSessio
 <ul class="blockListLast">
 <li class="blockList">
 <h4>PlainTextSerializerSession</h4>
-<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextSerializerSession.html#line.39">PlainTextSerializerSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerContext.html" title="class in org.apache.juneau.serializer">SerializerContext</a>&nbsp;ctx,
+<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextSerializerSession.html#line.38">PlainTextSerializerSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerContext.html" title="class in org.apache.juneau.serializer">SerializerContext</a>&nbsp;ctx,
                                      <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block">Create a new session using properties specified in the context.</div>
 <dl>
@@ -263,8 +263,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializerSessio
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and
-   serializer contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   serializer contexts.</dd>
 </dl>
 </li>
 </ul>
@@ -282,7 +281,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializerSessio
 <ul class="blockListLast">
 <li class="blockList">
 <h4>doSerialize</h4>
-<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextSerializerSession.html#line.44">doSerialize</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out,
+<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextSerializerSession.html#line.43">doSerialize</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out,
                            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
                     throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/SerializerSession.html#doSerialize-org.apache.juneau.serializer.SerializerPipe-java.lang.Object-">SerializerSession</a></code></span></div>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/rest/package-summary.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/rest/package-summary.html b/content/site/apidocs/org/apache/juneau/rest/package-summary.html
index 24f9217..8d3d04b 100644
--- a/content/site/apidocs/org/apache/juneau/rest/package-summary.html
+++ b/content/site/apidocs/org/apache/juneau/rest/package-summary.html
@@ -1824,8 +1824,7 @@
       </p>
       <p>
          The servlet will pick which serializer to use by matching the request <l>Accept</l> header with the
-         media types defined through the <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--"><code>Serializer.getMediaTypes()</code></a> method 
-         (which itself usually comes from the <a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation"><code>@Produces</code></a> annotation).
+         media types defined through the <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--"><code>Serializer.getMediaTypes()</code></a> method.
       </p>
       <p>
          Serializers can be associated with REST servlets in the following ways:
@@ -1894,8 +1893,7 @@
       </p>
       <p>
          The servlet will pick which parser to use by matching the request <l>Content-Type</l> header with the
-         media types defined through the <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--"><code>Parser.getMediaTypes()</code></a> method (which itself
-         usually comes from the <a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation"><code>@Consumes</code></a> annotation).
+         media types defined through the <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--"><code>Parser.getMediaTypes()</code></a> method.
       </p>
       <p>
          Parsers can be associated with REST servlets in the following ways:

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/rest/response/DefaultHandler.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/rest/response/DefaultHandler.html b/content/site/apidocs/org/apache/juneau/rest/response/DefaultHandler.html
index e9b4614..9561731 100644
--- a/content/site/apidocs/org/apache/juneau/rest/response/DefaultHandler.html
+++ b/content/site/apidocs/org/apache/juneau/rest/response/DefaultHandler.html
@@ -112,7 +112,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre>public class <a href="../../../../../src-html/org/apache/juneau/rest/response/DefaultHandler.html#line.40">DefaultHandler</a>
+<pre>public class <a href="../../../../../src-html/org/apache/juneau/rest/response/DefaultHandler.html#line.39">DefaultHandler</a>
 extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
 implements <a href="../../../../../org/apache/juneau/rest/ResponseHandler.html" title="interface in org.apache.juneau.rest">ResponseHandler</a></pre>
 <div class="block">Response handler for POJOs not handled by other handlers.
@@ -125,7 +125,7 @@ implements <a href="../../../../../org/apache/juneau/rest/ResponseHandler.html"
 
  <p>
  The <code>Content-Type</code> header is set to the mime-type defined on the selected serializer based on the
- <a href="../../../../../org/apache/juneau/annotation/Produces.html#contentType--"><code>@Produces.contentType</code></a> annotation.</div>
+ <code>produces</code> value passed in through the constructor.</div>
 </li>
 </ul>
 </div>
@@ -197,7 +197,7 @@ implements <a href="../../../../../org/apache/juneau/rest/ResponseHandler.html"
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DefaultHandler</h4>
-<pre>public&nbsp;<a href="../../../../../src-html/org/apache/juneau/rest/response/DefaultHandler.html#line.40">DefaultHandler</a>()</pre>
+<pre>public&nbsp;<a href="../../../../../src-html/org/apache/juneau/rest/response/DefaultHandler.html#line.39">DefaultHandler</a>()</pre>
 </li>
 </ul>
 </li>
@@ -214,7 +214,7 @@ implements <a href="../../../../../org/apache/juneau/rest/ResponseHandler.html"
 <ul class="blockListLast">
 <li class="blockList">
 <h4>handle</h4>
-<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/juneau/rest/response/DefaultHandler.html#line.43">handle</a>(<a href="../../../../../org/apache/juneau/rest/RestRequest.html" title="class in org.apache.juneau.rest">RestRequest</a>&nbsp;req,
+<pre>public&nbsp;boolean&nbsp;<a href="../../../../../src-html/org/apache/juneau/rest/response/DefaultHandler.html#line.42">handle</a>(<a href="../../../../../org/apache/juneau/rest/RestRequest.html" title="class in org.apache.juneau.rest">RestRequest</a>&nbsp;req,
                       <a href="../../../../../org/apache/juneau/rest/RestResponse.html" title="class in org.apache.juneau.rest">RestResponse</a>&nbsp;res,
                       <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;output)
                throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/serializer/OutputStreamSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/serializer/OutputStreamSerializer.html b/content/site/apidocs/org/apache/juneau/serializer/OutputStreamSerializer.html
index 2f99f9e..eab161c 100644
--- a/content/site/apidocs/org/apache/juneau/serializer/OutputStreamSerializer.html
+++ b/content/site/apidocs/org/apache/juneau/serializer/OutputStreamSerializer.html
@@ -122,17 +122,9 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre>public abstract class <a href="../../../../src-html/org/apache/juneau/serializer/OutputStreamSerializer.html#line.31">OutputStreamSerializer</a>
+<pre>public abstract class <a href="../../../../src-html/org/apache/juneau/serializer/OutputStreamSerializer.html#line.22">OutputStreamSerializer</a>
 extends <a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></pre>
-<div class="block">Subclass of <a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer"><code>Serializer</code></a> for byte-based serializers.
-
- <h6 class='topic'>@Produces annotation</h6>
-
- The media types that this serializer can produce is specified through the <a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation"><code>@Produces</code></a> annotation.
-
- <p>
- However, the media types can also be specified programmatically by overriding the <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--"><code>Serializer.getMediaTypes()</code></a>
- and <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--"><code>Serializer.getResponseContentType()</code></a> methods.</div>
+<div class="block">Subclass of <a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer"><code>Serializer</code></a> for byte-based serializers.</div>
 </li>
 </ul>
 </div>
@@ -168,7 +160,9 @@ extends <a href="../../../../org/apache/juneau/serializer/Serializer.html" title
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected </code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/serializer/OutputStreamSerializer.html#OutputStreamSerializer-org.apache.juneau.PropertyStore-">OutputStreamSerializer</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</code>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/serializer/OutputStreamSerializer.html#OutputStreamSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">OutputStreamSerializer</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                      <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+                      <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</code>
 <div class="block">Constructor.</div>
 </td>
 </tr>
@@ -217,7 +211,7 @@ extends <a href="../../../../org/apache/juneau/serializer/Serializer.html" title
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#builder--">builder</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#builder--">builder</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -247,17 +241,32 @@ extends <a href="../../../../org/apache/juneau/serializer/Serializer.html" title
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
-<a name="OutputStreamSerializer-org.apache.juneau.PropertyStore-">
+<a name="OutputStreamSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>OutputStreamSerializer</h4>
-<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/OutputStreamSerializer.html#line.38">OutputStreamSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/OutputStreamSerializer.html#line.45">OutputStreamSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                                 <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+                                 <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+<dd><code>produces</code> - The media type that this serializer produces.</dd>
+<dd><code>accept</code> - The accept media types that the serializer can handle.
+   <p>
+   Can contain meta-characters per the <code>media-type</code> specification of
+   <a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1">RFC2616/14.1</a>
+   <p>
+   If empty, then assumes the only media type supported is <code>produces</code>.
+   <p>
+   For example, if this serializer produces <js>"application/json"</js> but should handle media types of
+   <js>"application/json"</js> and <js>"text/json"</js>, then the arguments should be:
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"application/json"</js>, <js>"text/json"</js>);</code>
+   <br>...or...
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"*&#8203;/json"</js>);</code></dd>
 </dl>
 </li>
 </ul>
@@ -275,7 +284,7 @@ extends <a href="../../../../org/apache/juneau/serializer/Serializer.html" title
 <ul class="blockList">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public abstract&nbsp;<a href="../../../../org/apache/juneau/serializer/OutputStreamSerializerSession.html" title="class in org.apache.juneau.serializer">OutputStreamSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/OutputStreamSerializer.html#line.48">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
+<pre>public abstract&nbsp;<a href="../../../../org/apache/juneau/serializer/OutputStreamSerializerSession.html" title="class in org.apache.juneau.serializer">OutputStreamSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/OutputStreamSerializer.html#line.55">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession-org.apache.juneau.serializer.SerializerSessionArgs-">Serializer</a></code></span></div>
 <div class="block">Create the session object used for actual serialization of objects.</div>
 <dl>
@@ -285,8 +294,7 @@ extends <a href="../../../../org/apache/juneau/serializer/Serializer.html" title
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and serializer
-   contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   contexts.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The new session object.
    <br>Note that you must call <a href="../../../../org/apache/juneau/BeanSession.html#close--"><code>BeanSession.close()</code></a> on this object to perform any necessary
@@ -300,7 +308,7 @@ extends <a href="../../../../org/apache/juneau/serializer/Serializer.html" title
 <ul class="blockList">
 <li class="blockList">
 <h4>isWriterSerializer</h4>
-<pre>public final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/OutputStreamSerializer.html#line.56">isWriterSerializer</a>()</pre>
+<pre>public final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/OutputStreamSerializer.html#line.63">isWriterSerializer</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#isWriterSerializer--">Serializer</a></code></span></div>
 <div class="block">Returns <jk>true</jk> if this serializer subclasses from <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html" title="class in org.apache.juneau.serializer"><code>WriterSerializer</code></a>.</div>
 <dl>
@@ -317,7 +325,7 @@ extends <a href="../../../../org/apache/juneau/serializer/Serializer.html" title
 <ul class="blockList">
 <li class="blockList">
 <h4>serialize</h4>
-<pre>public final&nbsp;byte[]&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/OutputStreamSerializer.html#line.68">serialize</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
+<pre>public final&nbsp;byte[]&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/OutputStreamSerializer.html#line.75">serialize</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
                        throws <a href="../../../../org/apache/juneau/serializer/SerializeException.html" title="class in org.apache.juneau.serializer">SerializeException</a></pre>
 <div class="block">Convenience method for serializing an object to a <code><jk>byte</jk></code>.</div>
 <dl>
@@ -338,7 +346,7 @@ extends <a href="../../../../org/apache/juneau/serializer/Serializer.html" title
 <ul class="blockListLast">
 <li class="blockList">
 <h4>serializeToHex</h4>
-<pre>public final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/OutputStreamSerializer.html#line.79">serializeToHex</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
+<pre>public final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/OutputStreamSerializer.html#line.86">serializeToHex</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
                             throws <a href="../../../../org/apache/juneau/serializer/SerializeException.html" title="class in org.apache.juneau.serializer">SerializeException</a></pre>
 <div class="block">Convenience method for serializing an object to a hex-encoded String.</div>
 <dl>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/serializer/OutputStreamSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/serializer/OutputStreamSerializerSession.html b/content/site/apidocs/org/apache/juneau/serializer/OutputStreamSerializerSession.html
index a2bd11f..7063ea2 100644
--- a/content/site/apidocs/org/apache/juneau/serializer/OutputStreamSerializerSession.html
+++ b/content/site/apidocs/org/apache/juneau/serializer/OutputStreamSerializerSession.html
@@ -260,7 +260,7 @@ extends <a href="../../../../org/apache/juneau/serializer/SerializerSession.html
 <ul class="blockList">
 <li class="blockList">
 <h4>OutputStreamSerializerSession</h4>
-<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/OutputStreamSerializerSession.html#line.43">OutputStreamSerializerSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerContext.html" title="class in org.apache.juneau.serializer">SerializerContext</a>&nbsp;ctx,
+<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/OutputStreamSerializerSession.html#line.42">OutputStreamSerializerSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerContext.html" title="class in org.apache.juneau.serializer">SerializerContext</a>&nbsp;ctx,
                                         <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block">Create a new session using properties specified in the context.</div>
 <dl>
@@ -270,8 +270,7 @@ extends <a href="../../../../org/apache/juneau/serializer/SerializerSession.html
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and
-   serializer contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   serializer contexts.</dd>
 </dl>
 </li>
 </ul>
@@ -281,7 +280,7 @@ extends <a href="../../../../org/apache/juneau/serializer/SerializerSession.html
 <ul class="blockListLast">
 <li class="blockList">
 <h4>OutputStreamSerializerSession</h4>
-<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/OutputStreamSerializerSession.html#line.53">OutputStreamSerializerSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
+<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/OutputStreamSerializerSession.html#line.52">OutputStreamSerializerSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block">Constructor for sessions that don't require context.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -303,7 +302,7 @@ extends <a href="../../../../org/apache/juneau/serializer/SerializerSession.html
 <ul class="blockList">
 <li class="blockList">
 <h4>isWriterSerializer</h4>
-<pre>public final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/OutputStreamSerializerSession.html#line.58">isWriterSerializer</a>()</pre>
+<pre>public final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/OutputStreamSerializerSession.html#line.57">isWriterSerializer</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/SerializerSession.html#isWriterSerializer--">SerializerSession</a></code></span></div>
 <div class="block">Returns <jk>true</jk> if this serializer subclasses from <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html" title="class in org.apache.juneau.serializer"><code>WriterSerializer</code></a>.</div>
 <dl>
@@ -320,7 +319,7 @@ extends <a href="../../../../org/apache/juneau/serializer/SerializerSession.html
 <ul class="blockListLast">
 <li class="blockList">
 <h4>serialize</h4>
-<pre>public final&nbsp;byte[]&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/OutputStreamSerializerSession.html#line.70">serialize</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
+<pre>public final&nbsp;byte[]&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/OutputStreamSerializerSession.html#line.69">serialize</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
                        throws <a href="../../../../org/apache/juneau/serializer/SerializeException.html" title="class in org.apache.juneau.serializer">SerializeException</a></pre>
 <div class="block">Convenience method for serializing an object to a <code><jk>byte</jk></code>.</div>
 <dl>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/serializer/Serializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/serializer/Serializer.html b/content/site/apidocs/org/apache/juneau/serializer/Serializer.html
index a49aee2..bf6fee3 100644
--- a/content/site/apidocs/org/apache/juneau/serializer/Serializer.html
+++ b/content/site/apidocs/org/apache/juneau/serializer/Serializer.html
@@ -18,7 +18,7 @@
     catch(err) {
     }
 //-->
-var methods = {"i0":10,"i1":10,"i2":6,"i3":10,"i4":10,"i5":10,"i6":6,"i7":10,"i8":10};
+var methods = {"i0":10,"i1":10,"i2":10,"i3":6,"i4":10,"i5":10,"i6":6,"i7":10,"i8":10};
 var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -117,7 +117,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre>public abstract class <a href="../../../../src-html/org/apache/juneau/serializer/Serializer.html#line.50">Serializer</a>
+<pre>public abstract class <a href="../../../../src-html/org/apache/juneau/serializer/Serializer.html#line.39">Serializer</a>
 extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in org.apache.juneau">CoreObject</a></pre>
 <div class="block">Parent class for all Juneau serializers.
 
@@ -135,14 +135,7 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 
  <p>
  Subclasses should extend directly from <a href="../../../../org/apache/juneau/serializer/OutputStreamSerializer.html" title="class in org.apache.juneau.serializer"><code>OutputStreamSerializer</code></a> or <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html" title="class in org.apache.juneau.serializer"><code>WriterSerializer</code></a> depending on
- whether it's a stream or character based serializer.
-
- <h6 class='topic'>@Produces annotation</h6>
-
- The media types that this serializer can produce is specified through the <a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation"><code>@Produces</code></a> annotation.
- <br>
- However, the media types can also be specified programmatically by overriding the <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--"><code>getMediaTypes()</code></a>
- and <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--"><code>getResponseContentType()</code></a> methods.</div>
+ whether it's a stream or character based serializer.</div>
 </li>
 </ul>
 </div>
@@ -184,27 +177,27 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 </td>
 </tr>
 <tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a></span>()</code>
+<div class="block">Creates the session arguments object that gets passed to the <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession-org.apache.juneau.serializer.SerializerSessionArgs-"><code>createSession(SerializerSessionArgs)</code></a> method.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
 <td class="colFirst"><code><a href="../../../../org/apache/juneau/serializer/SerializerSession.html" title="class in org.apache.juneau.serializer">SerializerSession</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a></span>()</code>
 <div class="block">Shortcut for calling <code>createSession(<jk>null</jk>)</code>.</div>
 </td>
 </tr>
-<tr id="i2" class="altColor">
+<tr id="i3" class="rowColor">
 <td class="colFirst"><code>abstract <a href="../../../../org/apache/juneau/serializer/SerializerSession.html" title="class in org.apache.juneau.serializer">SerializerSession</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession-org.apache.juneau.serializer.SerializerSessionArgs-">createSession</a></span>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</code>
 <div class="block">Create the session object used for actual serialization of objects.</div>
 </td>
 </tr>
-<tr id="i3" class="rowColor">
+<tr id="i4" class="altColor">
 <td class="colFirst"><code><a href="../../../../org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a>[]</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a></span>()</code>
-<div class="block">Returns the media types handled based on the value of the <a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation"><code>Produces</code></a> annotation on the serializer class.</div>
-</td>
-</tr>
-<tr id="i4" class="altColor">
-<td class="colFirst"><code><a href="../../../../org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a></span>()</code>
-<div class="block">Returns the first media type specified on this serializer via the <a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation"><code>Produces</code></a> annotation.</div>
+<div class="block">Returns the media types handled based on the value of the <code>accept</code> parameter passed into the constructor.</div>
 </td>
 </tr>
 <tr id="i5" class="rowColor">
@@ -269,7 +262,7 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>builder</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/SerializerBuilder.html" title="class in org.apache.juneau.serializer">SerializerBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/Serializer.html#line.74">builder</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/SerializerBuilder.html" title="class in org.apache.juneau.serializer">SerializerBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/Serializer.html#line.60">builder</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/CoreObject.html#builder--">CoreObject</a></code></span></div>
 <div class="block">Creates a new builder class for this object so that a new object can be created that expands upon the current
  object's settings.</div>
@@ -287,7 +280,7 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>isWriterSerializer</h4>
-<pre>public abstract&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/Serializer.html#line.87">isWriterSerializer</a>()</pre>
+<pre>public abstract&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/Serializer.html#line.73">isWriterSerializer</a>()</pre>
 <div class="block">Returns <jk>true</jk> if this serializer subclasses from <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html" title="class in org.apache.juneau.serializer"><code>WriterSerializer</code></a>.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -301,15 +294,14 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public abstract&nbsp;<a href="../../../../org/apache/juneau/serializer/SerializerSession.html" title="class in org.apache.juneau.serializer">SerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/Serializer.html#line.103">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
+<pre>public abstract&nbsp;<a href="../../../../org/apache/juneau/serializer/SerializerSession.html" title="class in org.apache.juneau.serializer">SerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/Serializer.html#line.88">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block">Create the session object used for actual serialization of objects.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and serializer
-   contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   contexts.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The new session object.
    <br>Note that you must call <a href="../../../../org/apache/juneau/BeanSession.html#close--"><code>BeanSession.close()</code></a> on this object to perform any necessary
@@ -323,7 +315,7 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public final&nbsp;<a href="../../../../org/apache/juneau/serializer/SerializerSession.html" title="class in org.apache.juneau.serializer">SerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/Serializer.html#line.118">createSession</a>()</pre>
+<pre>public final&nbsp;<a href="../../../../org/apache/juneau/serializer/SerializerSession.html" title="class in org.apache.juneau.serializer">SerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/Serializer.html#line.103">createSession</a>()</pre>
 <div class="block">Shortcut for calling <code>createSession(<jk>null</jk>)</code>.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -333,13 +325,28 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 </dl>
 </li>
 </ul>
+<a name="createDefaultSessionArgs--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>createDefaultSessionArgs</h4>
+<pre>public final&nbsp;<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/Serializer.html#line.114">createDefaultSessionArgs</a>()</pre>
+<div class="block">Creates the session arguments object that gets passed to the <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession-org.apache.juneau.serializer.SerializerSessionArgs-"><code>createSession(SerializerSessionArgs)</code></a> method.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>A new default session arguments object.
+   <p>The arguments can be modified before passing to the <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession-org.apache.juneau.serializer.SerializerSessionArgs-"><code>createSession(SerializerSessionArgs)</code></a>.</dd>
+</dl>
+</li>
+</ul>
 <a name="serialize-java.lang.Object-java.lang.Object-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>serialize</h4>
-<pre>public final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/Serializer.html#line.145">serialize</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o,
+<pre>public final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/Serializer.html#line.141">serialize</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o,
                             <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;output)
                      throws <a href="../../../../org/apache/juneau/serializer/SerializeException.html" title="class in org.apache.juneau.serializer">SerializeException</a></pre>
 <div class="block">Serializes a POJO to the specified output stream or writer.
@@ -373,7 +380,7 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>serialize</h4>
-<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/Serializer.html#line.165">serialize</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/Serializer.html#line.161">serialize</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
                  throws <a href="../../../../org/apache/juneau/serializer/SerializeException.html" title="class in org.apache.juneau.serializer">SerializeException</a></pre>
 <div class="block">Shortcut method for serializing objects directly to either a <code>String</code> or <code><jk>byte</jk>[]</code>
  depending on the serializer type.</div>
@@ -395,38 +402,21 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>getMediaTypes</h4>
-<pre>public final&nbsp;<a href="../../../../org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a>[]&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/Serializer.html#line.186">getMediaTypes</a>()</pre>
-<div class="block">Returns the media types handled based on the value of the <a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation"><code>Produces</code></a> annotation on the serializer class.
-
- <p>
- This method can be overridden by subclasses to determine the media types programmatically.</div>
+<pre>public final&nbsp;<a href="../../../../org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a>[]&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/Serializer.html#line.179">getMediaTypes</a>()</pre>
+<div class="block">Returns the media types handled based on the value of the <code>accept</code> parameter passed into the constructor.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The list of media types.  Never <jk>null</jk>.</dd>
 </dl>
 </li>
 </ul>
-<a name="getPrimaryMediaType--">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getPrimaryMediaType</h4>
-<pre>public final&nbsp;<a href="../../../../org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/Serializer.html#line.195">getPrimaryMediaType</a>()</pre>
-<div class="block">Returns the first media type specified on this serializer via the <a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation"><code>Produces</code></a> annotation.</div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>The media type.</dd>
-</dl>
-</li>
-</ul>
 <a name="getResponseContentType--">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>getResponseContentType</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/Serializer.html#line.215">getResponseContentType</a>()</pre>
+<pre>public final&nbsp;<a href="../../../../org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/serializer/Serializer.html#line.199">getResponseContentType</a>()</pre>
 <div class="block">Optional method that returns the response <code>Content-Type</code> for this serializer if it is different from
  the matched media type.
 


[39/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSerializer.SqReadable.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSerializer.SqReadable.html b/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSerializer.SqReadable.html
index 6e7a7d3..9c1add4 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSerializer.SqReadable.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSerializer.SqReadable.html
@@ -25,193 +25,217 @@
 <span class="sourceLineNo">017</span>import java.util.*;<a name="line.17"></a>
 <span class="sourceLineNo">018</span><a name="line.18"></a>
 <span class="sourceLineNo">019</span>import org.apache.juneau.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.annotation.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span>import org.apache.juneau.serializer.*;<a name="line.21"></a>
-<span class="sourceLineNo">022</span>import org.apache.juneau.xml.*;<a name="line.22"></a>
-<span class="sourceLineNo">023</span><a name="line.23"></a>
-<span class="sourceLineNo">024</span>/**<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * Serializes POJO models to HTML.<a name="line.25"></a>
-<span class="sourceLineNo">026</span> *<a name="line.26"></a>
-<span class="sourceLineNo">027</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> *<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/html&lt;/code&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> *<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * &lt;p&gt;<a name="line.31"></a>
-<span class="sourceLineNo">032</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/html&lt;/code&gt;<a name="line.32"></a>
-<span class="sourceLineNo">033</span> *<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *<a name="line.35"></a>
-<span class="sourceLineNo">036</span> * The conversion is as follows...<a name="line.36"></a>
-<span class="sourceLineNo">037</span> * &lt;ul class='spaced-list'&gt;<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *       {@link Map Maps} (e.g. {@link HashMap}, {@link TreeMap}) and beans are converted to HTML tables with<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *       'key' and 'value' columns.<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *    &lt;li&gt;<a name="line.41"></a>
-<span class="sourceLineNo">042</span> *       {@link Collection Collections} (e.g. {@link HashSet}, {@link LinkedList}) and Java arrays are converted<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *       to HTML ordered lists.<a name="line.43"></a>
-<span class="sourceLineNo">044</span> *    &lt;li&gt;<a name="line.44"></a>
-<span class="sourceLineNo">045</span> *       {@code Collections} of {@code Maps} and beans are converted to HTML tables with keys as headers.<a name="line.45"></a>
-<span class="sourceLineNo">046</span> *    &lt;li&gt;<a name="line.46"></a>
-<span class="sourceLineNo">047</span> *       Everything else is converted to text.<a name="line.47"></a>
-<span class="sourceLineNo">048</span> * &lt;/ul&gt;<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *<a name="line.49"></a>
-<span class="sourceLineNo">050</span> * &lt;p&gt;<a name="line.50"></a>
-<span class="sourceLineNo">051</span> * This serializer provides several serialization options.  Typically, one of the predefined &lt;jsf&gt;DEFAULT&lt;/jsf&gt;<a name="line.51"></a>
-<span class="sourceLineNo">052</span> * serializers will be sufficient.<a name="line.52"></a>
-<span class="sourceLineNo">053</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *<a name="line.54"></a>
-<span class="sourceLineNo">055</span> * &lt;p&gt;<a name="line.55"></a>
-<span class="sourceLineNo">056</span> * The {@link HtmlLink} annotation can be used on beans to add hyperlinks to the output.<a name="line.56"></a>
-<span class="sourceLineNo">057</span> *<a name="line.57"></a>
-<span class="sourceLineNo">058</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.58"></a>
-<span class="sourceLineNo">059</span> *<a name="line.59"></a>
-<span class="sourceLineNo">060</span> * This class has the following properties associated with it:<a name="line.60"></a>
-<span class="sourceLineNo">061</span> * &lt;ul class='spaced-list'&gt;<a name="line.61"></a>
-<span class="sourceLineNo">062</span> *    &lt;li&gt;<a name="line.62"></a>
-<span class="sourceLineNo">063</span> *       {@link HtmlSerializerContext}<a name="line.63"></a>
-<span class="sourceLineNo">064</span> * &lt;/ul&gt;<a name="line.64"></a>
-<span class="sourceLineNo">065</span> *<a name="line.65"></a>
-<span class="sourceLineNo">066</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.66"></a>
-<span class="sourceLineNo">067</span> *<a name="line.67"></a>
-<span class="sourceLineNo">068</span> * The following direct subclasses are provided for convenience:<a name="line.68"></a>
-<span class="sourceLineNo">069</span> * &lt;ul class='spaced-list'&gt;<a name="line.69"></a>
-<span class="sourceLineNo">070</span> *    &lt;li&gt;<a name="line.70"></a>
-<span class="sourceLineNo">071</span> *       {@link Sq} - Default serializer, single quotes.<a name="line.71"></a>
-<span class="sourceLineNo">072</span> *    &lt;li&gt;<a name="line.72"></a>
-<span class="sourceLineNo">073</span> *       {@link SqReadable} - Default serializer, single quotes, whitespace added.<a name="line.73"></a>
-<span class="sourceLineNo">074</span> * &lt;/ul&gt;<a name="line.74"></a>
-<span class="sourceLineNo">075</span> *<a name="line.75"></a>
-<span class="sourceLineNo">076</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.76"></a>
-<span class="sourceLineNo">077</span> * &lt;p class='bcode'&gt;<a name="line.77"></a>
-<span class="sourceLineNo">078</span> *    &lt;jc&gt;// Use one of the default serializers to serialize a POJO&lt;/jc&gt;<a name="line.78"></a>
-<span class="sourceLineNo">079</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(someObject);<a name="line.79"></a>
-<span class="sourceLineNo">080</span> *<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *       &lt;jc&gt;// Create a custom serializer that doesn't use whitespace and newlines&lt;/jc&gt;<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *       HtmlSerializer serializer = &lt;jk&gt;new&lt;/jk&gt; HtmlSerializerBuider().ws().build();<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *<a name="line.83"></a>
-<span class="sourceLineNo">084</span> *       &lt;jc&gt;// Same as above, except uses cloning&lt;/jc&gt;<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *       HtmlSerializer serializer = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.builder().ws().build();<a name="line.85"></a>
-<span class="sourceLineNo">086</span> *<a name="line.86"></a>
-<span class="sourceLineNo">087</span> *       &lt;jc&gt;// Serialize POJOs to HTML&lt;/jc&gt;<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *       &lt;jc&gt;// &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;1&amp;lt;li&amp;gt;2&amp;lt;li&amp;gt;3&amp;lt;/ul&amp;gt;&lt;/jc&gt;<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *       List l = new ObjectList(1, 2, 3);<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(l);<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *<a name="line.93"></a>
-<span class="sourceLineNo">094</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *       &lt;jc&gt;//    &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.95"></a>
-<span class="sourceLineNo">096</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;firstName&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;lastName&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.96"></a>
-<span class="sourceLineNo">097</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Bob&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Costas&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.97"></a>
-<span class="sourceLineNo">098</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Billy&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;TheKid&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.98"></a>
-<span class="sourceLineNo">099</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Barney&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Miller&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.99"></a>
-<span class="sourceLineNo">100</span> *       &lt;jc&gt;//    &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.100"></a>
-<span class="sourceLineNo">101</span> *       l = &lt;jk&gt;new&lt;/jk&gt; ObjectList();<a name="line.101"></a>
-<span class="sourceLineNo">102</span> *       l.add(&lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{firstName:'Bob',lastName:'Costas'}"&lt;/js&gt;));<a name="line.102"></a>
-<span class="sourceLineNo">103</span> *       l.add(&lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{firstName:'Billy',lastName:'TheKid'}"&lt;/js&gt;));<a name="line.103"></a>
-<span class="sourceLineNo">104</span> *       l.add(&lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{firstName:'Barney',lastName:'Miller'}"&lt;/js&gt;));<a name="line.104"></a>
-<span class="sourceLineNo">105</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(l);<a name="line.105"></a>
-<span class="sourceLineNo">106</span> *<a name="line.106"></a>
-<span class="sourceLineNo">107</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.107"></a>
-<span class="sourceLineNo">108</span> *       &lt;jc&gt;//    &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.108"></a>
-<span class="sourceLineNo">109</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;key&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;value&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.109"></a>
-<span class="sourceLineNo">110</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;foo&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;bar&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.110"></a>
-<span class="sourceLineNo">111</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;baz&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;123&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.111"></a>
-<span class="sourceLineNo">112</span> *       &lt;jc&gt;//    &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.112"></a>
-<span class="sourceLineNo">113</span> *       Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{foo:'bar',baz:123}"&lt;/js&gt;);<a name="line.113"></a>
-<span class="sourceLineNo">114</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(m);<a name="line.114"></a>
-<span class="sourceLineNo">115</span> *<a name="line.115"></a>
-<span class="sourceLineNo">116</span> *       &lt;jc&gt;// HTML elements can be nested arbitrarily deep&lt;/jc&gt;<a name="line.116"></a>
-<span class="sourceLineNo">117</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.117"></a>
-<span class="sourceLineNo">118</span> *       &lt;jc&gt;//   &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.118"></a>
-<span class="sourceLineNo">119</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;key&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;value&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.119"></a>
-<span class="sourceLineNo">120</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;foo&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;bar&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.120"></a>
-<span class="sourceLineNo">121</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;baz&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;123&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.121"></a>
-<span class="sourceLineNo">122</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;someNumbers&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;1&amp;lt;li&amp;gt;2&amp;lt;li&amp;gt;3&amp;lt;/ul&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.122"></a>
-<span class="sourceLineNo">123</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;someSubMap&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; &lt;/jc&gt;<a name="line.123"></a>
-<span class="sourceLineNo">124</span> *       &lt;jc&gt;//         &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.124"></a>
-<span class="sourceLineNo">125</span> *       &lt;jc&gt;//            &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;key&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;value&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.125"></a>
-<span class="sourceLineNo">126</span> *       &lt;jc&gt;//            &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;a&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;b&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.126"></a>
-<span class="sourceLineNo">127</span> *       &lt;jc&gt;//         &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.127"></a>
-<span class="sourceLineNo">128</span> *       &lt;jc&gt;//      &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.128"></a>
-<span class="sourceLineNo">129</span> *       &lt;jc&gt;//   &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.129"></a>
-<span class="sourceLineNo">130</span> *       Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{foo:'bar',baz:123}"&lt;/js&gt;);<a name="line.130"></a>
-<span class="sourceLineNo">131</span> *       m.put("someNumbers", new ObjectList(1, 2, 3));<a name="line.131"></a>
-<span class="sourceLineNo">132</span> *       m.put(&lt;js&gt;"someSubMap"&lt;/js&gt;, new ObjectMap(&lt;js&gt;"{a:'b'}"&lt;/js&gt;));<a name="line.132"></a>
-<span class="sourceLineNo">133</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(m);<a name="line.133"></a>
-<span class="sourceLineNo">134</span> * &lt;/p&gt;<a name="line.134"></a>
-<span class="sourceLineNo">135</span> */<a name="line.135"></a>
-<span class="sourceLineNo">136</span>@Produces("text/html")<a name="line.136"></a>
-<span class="sourceLineNo">137</span>@SuppressWarnings("hiding")<a name="line.137"></a>
-<span class="sourceLineNo">138</span>public class HtmlSerializer extends XmlSerializer {<a name="line.138"></a>
-<span class="sourceLineNo">139</span><a name="line.139"></a>
-<span class="sourceLineNo">140</span>   /** Default serializer, all default settings. */<a name="line.140"></a>
-<span class="sourceLineNo">141</span>   public static final HtmlSerializer DEFAULT = new HtmlSerializer(PropertyStore.create());<a name="line.141"></a>
-<span class="sourceLineNo">142</span><a name="line.142"></a>
-<span class="sourceLineNo">143</span>   /** Default serializer, single quotes. */<a name="line.143"></a>
-<span class="sourceLineNo">144</span>   public static final HtmlSerializer DEFAULT_SQ = new HtmlSerializer.Sq(PropertyStore.create());<a name="line.144"></a>
-<span class="sourceLineNo">145</span><a name="line.145"></a>
-<span class="sourceLineNo">146</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.146"></a>
-<span class="sourceLineNo">147</span>   public static final HtmlSerializer DEFAULT_SQ_READABLE = new HtmlSerializer.SqReadable(PropertyStore.create());<a name="line.147"></a>
-<span class="sourceLineNo">148</span><a name="line.148"></a>
-<span class="sourceLineNo">149</span><a name="line.149"></a>
-<span class="sourceLineNo">150</span>   /** Default serializer, single quotes. */<a name="line.150"></a>
-<span class="sourceLineNo">151</span>   public static class Sq extends HtmlSerializer {<a name="line.151"></a>
-<span class="sourceLineNo">152</span><a name="line.152"></a>
-<span class="sourceLineNo">153</span>      /**<a name="line.153"></a>
-<span class="sourceLineNo">154</span>       * Constructor.<a name="line.154"></a>
-<span class="sourceLineNo">155</span>       *<a name="line.155"></a>
-<span class="sourceLineNo">156</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.156"></a>
-<span class="sourceLineNo">157</span>       */<a name="line.157"></a>
-<span class="sourceLineNo">158</span>      public Sq(PropertyStore propertyStore) {<a name="line.158"></a>
-<span class="sourceLineNo">159</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\''));<a name="line.159"></a>
-<span class="sourceLineNo">160</span>      }<a name="line.160"></a>
-<span class="sourceLineNo">161</span>   }<a name="line.161"></a>
-<span class="sourceLineNo">162</span><a name="line.162"></a>
-<span class="sourceLineNo">163</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.163"></a>
-<span class="sourceLineNo">164</span>   public static class SqReadable extends HtmlSerializer {<a name="line.164"></a>
-<span class="sourceLineNo">165</span><a name="line.165"></a>
-<span class="sourceLineNo">166</span>      /**<a name="line.166"></a>
-<span class="sourceLineNo">167</span>       * Constructor.<a name="line.167"></a>
-<span class="sourceLineNo">168</span>       *<a name="line.168"></a>
-<span class="sourceLineNo">169</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.169"></a>
-<span class="sourceLineNo">170</span>       */<a name="line.170"></a>
-<span class="sourceLineNo">171</span>      public SqReadable(PropertyStore propertyStore) {<a name="line.171"></a>
-<span class="sourceLineNo">172</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\'').append(SERIALIZER_useWhitespace, true));<a name="line.172"></a>
-<span class="sourceLineNo">173</span>      }<a name="line.173"></a>
-<span class="sourceLineNo">174</span>   }<a name="line.174"></a>
-<span class="sourceLineNo">175</span><a name="line.175"></a>
-<span class="sourceLineNo">176</span><a name="line.176"></a>
-<span class="sourceLineNo">177</span>   final HtmlSerializerContext ctx;<a name="line.177"></a>
-<span class="sourceLineNo">178</span>   private volatile HtmlSchemaDocSerializer schemaSerializer;<a name="line.178"></a>
-<span class="sourceLineNo">179</span><a name="line.179"></a>
-<span class="sourceLineNo">180</span>   /**<a name="line.180"></a>
-<span class="sourceLineNo">181</span>    * Constructor.<a name="line.181"></a>
-<span class="sourceLineNo">182</span>    *<a name="line.182"></a>
-<span class="sourceLineNo">183</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.183"></a>
-<span class="sourceLineNo">184</span>    */<a name="line.184"></a>
-<span class="sourceLineNo">185</span>   public HtmlSerializer(PropertyStore propertyStore) {<a name="line.185"></a>
-<span class="sourceLineNo">186</span>      super(propertyStore);<a name="line.186"></a>
-<span class="sourceLineNo">187</span>      this.ctx = createContext(HtmlSerializerContext.class);<a name="line.187"></a>
-<span class="sourceLineNo">188</span>   }<a name="line.188"></a>
-<span class="sourceLineNo">189</span><a name="line.189"></a>
-<span class="sourceLineNo">190</span>   @Override /* CoreObject */<a name="line.190"></a>
-<span class="sourceLineNo">191</span>   public HtmlSerializerBuilder builder() {<a name="line.191"></a>
-<span class="sourceLineNo">192</span>      return new HtmlSerializerBuilder(propertyStore);<a name="line.192"></a>
-<span class="sourceLineNo">193</span>   }<a name="line.193"></a>
-<span class="sourceLineNo">194</span><a name="line.194"></a>
-<span class="sourceLineNo">195</span>   @Override /* XmlSerializer */<a name="line.195"></a>
-<span class="sourceLineNo">196</span>   public HtmlSerializer getSchemaSerializer() {<a name="line.196"></a>
-<span class="sourceLineNo">197</span>      if (schemaSerializer == null)<a name="line.197"></a>
-<span class="sourceLineNo">198</span>         schemaSerializer = new HtmlSchemaDocSerializer(propertyStore);<a name="line.198"></a>
-<span class="sourceLineNo">199</span>      return schemaSerializer;<a name="line.199"></a>
-<span class="sourceLineNo">200</span>   }<a name="line.200"></a>
-<span class="sourceLineNo">201</span><a name="line.201"></a>
-<span class="sourceLineNo">202</span>   @Override /* Serializer */<a name="line.202"></a>
-<span class="sourceLineNo">203</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.203"></a>
-<span class="sourceLineNo">204</span>      return new HtmlSerializerSession(ctx, args);<a name="line.204"></a>
-<span class="sourceLineNo">205</span>   }<a name="line.205"></a>
-<span class="sourceLineNo">206</span>}<a name="line.206"></a>
+<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
+<span class="sourceLineNo">021</span>import org.apache.juneau.xml.*;<a name="line.21"></a>
+<span class="sourceLineNo">022</span><a name="line.22"></a>
+<span class="sourceLineNo">023</span>/**<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * Serializes POJO models to HTML.<a name="line.24"></a>
+<span class="sourceLineNo">025</span> *<a name="line.25"></a>
+<span class="sourceLineNo">026</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> *<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/html&lt;/code&gt;<a name="line.28"></a>
+<span class="sourceLineNo">029</span> *<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * &lt;p&gt;<a name="line.30"></a>
+<span class="sourceLineNo">031</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/html&lt;/code&gt;<a name="line.31"></a>
+<span class="sourceLineNo">032</span> *<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.33"></a>
+<span class="sourceLineNo">034</span> *<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * The conversion is as follows...<a name="line.35"></a>
+<span class="sourceLineNo">036</span> * &lt;ul class='spaced-list'&gt;<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;<a name="line.37"></a>
+<span class="sourceLineNo">038</span> *       {@link Map Maps} (e.g. {@link HashMap}, {@link TreeMap}) and beans are converted to HTML tables with<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *       'key' and 'value' columns.<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *    &lt;li&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span> *       {@link Collection Collections} (e.g. {@link HashSet}, {@link LinkedList}) and Java arrays are converted<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *       to HTML ordered lists.<a name="line.42"></a>
+<span class="sourceLineNo">043</span> *    &lt;li&gt;<a name="line.43"></a>
+<span class="sourceLineNo">044</span> *       {@code Collections} of {@code Maps} and beans are converted to HTML tables with keys as headers.<a name="line.44"></a>
+<span class="sourceLineNo">045</span> *    &lt;li&gt;<a name="line.45"></a>
+<span class="sourceLineNo">046</span> *       Everything else is converted to text.<a name="line.46"></a>
+<span class="sourceLineNo">047</span> * &lt;/ul&gt;<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *<a name="line.48"></a>
+<span class="sourceLineNo">049</span> * &lt;p&gt;<a name="line.49"></a>
+<span class="sourceLineNo">050</span> * This serializer provides several serialization options.  Typically, one of the predefined &lt;jsf&gt;DEFAULT&lt;/jsf&gt;<a name="line.50"></a>
+<span class="sourceLineNo">051</span> * serializers will be sufficient.<a name="line.51"></a>
+<span class="sourceLineNo">052</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *<a name="line.53"></a>
+<span class="sourceLineNo">054</span> * &lt;p&gt;<a name="line.54"></a>
+<span class="sourceLineNo">055</span> * The {@link HtmlLink} annotation can be used on beans to add hyperlinks to the output.<a name="line.55"></a>
+<span class="sourceLineNo">056</span> *<a name="line.56"></a>
+<span class="sourceLineNo">057</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.57"></a>
+<span class="sourceLineNo">058</span> *<a name="line.58"></a>
+<span class="sourceLineNo">059</span> * This class has the following properties associated with it:<a name="line.59"></a>
+<span class="sourceLineNo">060</span> * &lt;ul class='spaced-list'&gt;<a name="line.60"></a>
+<span class="sourceLineNo">061</span> *    &lt;li&gt;<a name="line.61"></a>
+<span class="sourceLineNo">062</span> *       {@link HtmlSerializerContext}<a name="line.62"></a>
+<span class="sourceLineNo">063</span> * &lt;/ul&gt;<a name="line.63"></a>
+<span class="sourceLineNo">064</span> *<a name="line.64"></a>
+<span class="sourceLineNo">065</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.65"></a>
+<span class="sourceLineNo">066</span> *<a name="line.66"></a>
+<span class="sourceLineNo">067</span> * The following direct subclasses are provided for convenience:<a name="line.67"></a>
+<span class="sourceLineNo">068</span> * &lt;ul class='spaced-list'&gt;<a name="line.68"></a>
+<span class="sourceLineNo">069</span> *    &lt;li&gt;<a name="line.69"></a>
+<span class="sourceLineNo">070</span> *       {@link Sq} - Default serializer, single quotes.<a name="line.70"></a>
+<span class="sourceLineNo">071</span> *    &lt;li&gt;<a name="line.71"></a>
+<span class="sourceLineNo">072</span> *       {@link SqReadable} - Default serializer, single quotes, whitespace added.<a name="line.72"></a>
+<span class="sourceLineNo">073</span> * &lt;/ul&gt;<a name="line.73"></a>
+<span class="sourceLineNo">074</span> *<a name="line.74"></a>
+<span class="sourceLineNo">075</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.75"></a>
+<span class="sourceLineNo">076</span> * &lt;p class='bcode'&gt;<a name="line.76"></a>
+<span class="sourceLineNo">077</span> *    &lt;jc&gt;// Use one of the default serializers to serialize a POJO&lt;/jc&gt;<a name="line.77"></a>
+<span class="sourceLineNo">078</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(someObject);<a name="line.78"></a>
+<span class="sourceLineNo">079</span> *<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *       &lt;jc&gt;// Create a custom serializer that doesn't use whitespace and newlines&lt;/jc&gt;<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *       HtmlSerializer serializer = &lt;jk&gt;new&lt;/jk&gt; HtmlSerializerBuider().ws().build();<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *<a name="line.82"></a>
+<span class="sourceLineNo">083</span> *       &lt;jc&gt;// Same as above, except uses cloning&lt;/jc&gt;<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *       HtmlSerializer serializer = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.builder().ws().build();<a name="line.84"></a>
+<span class="sourceLineNo">085</span> *<a name="line.85"></a>
+<span class="sourceLineNo">086</span> *       &lt;jc&gt;// Serialize POJOs to HTML&lt;/jc&gt;<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *<a name="line.87"></a>
+<span class="sourceLineNo">088</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.88"></a>
+<span class="sourceLineNo">089</span> *       &lt;jc&gt;// &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;1&amp;lt;li&amp;gt;2&amp;lt;li&amp;gt;3&amp;lt;/ul&amp;gt;&lt;/jc&gt;<a name="line.89"></a>
+<span class="sourceLineNo">090</span> *       List l = new ObjectList(1, 2, 3);<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(l);<a name="line.91"></a>
+<span class="sourceLineNo">092</span> *<a name="line.92"></a>
+<span class="sourceLineNo">093</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.93"></a>
+<span class="sourceLineNo">094</span> *       &lt;jc&gt;//    &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.94"></a>
+<span class="sourceLineNo">095</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;firstName&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;lastName&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.95"></a>
+<span class="sourceLineNo">096</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Bob&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Costas&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.96"></a>
+<span class="sourceLineNo">097</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Billy&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;TheKid&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.97"></a>
+<span class="sourceLineNo">098</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Barney&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Miller&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.98"></a>
+<span class="sourceLineNo">099</span> *       &lt;jc&gt;//    &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.99"></a>
+<span class="sourceLineNo">100</span> *       l = &lt;jk&gt;new&lt;/jk&gt; ObjectList();<a name="line.100"></a>
+<span class="sourceLineNo">101</span> *       l.add(&lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{firstName:'Bob',lastName:'Costas'}"&lt;/js&gt;));<a name="line.101"></a>
+<span class="sourceLineNo">102</span> *       l.add(&lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{firstName:'Billy',lastName:'TheKid'}"&lt;/js&gt;));<a name="line.102"></a>
+<span class="sourceLineNo">103</span> *       l.add(&lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{firstName:'Barney',lastName:'Miller'}"&lt;/js&gt;));<a name="line.103"></a>
+<span class="sourceLineNo">104</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(l);<a name="line.104"></a>
+<span class="sourceLineNo">105</span> *<a name="line.105"></a>
+<span class="sourceLineNo">106</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.106"></a>
+<span class="sourceLineNo">107</span> *       &lt;jc&gt;//    &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.107"></a>
+<span class="sourceLineNo">108</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;key&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;value&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.108"></a>
+<span class="sourceLineNo">109</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;foo&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;bar&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.109"></a>
+<span class="sourceLineNo">110</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;baz&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;123&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.110"></a>
+<span class="sourceLineNo">111</span> *       &lt;jc&gt;//    &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.111"></a>
+<span class="sourceLineNo">112</span> *       Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{foo:'bar',baz:123}"&lt;/js&gt;);<a name="line.112"></a>
+<span class="sourceLineNo">113</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(m);<a name="line.113"></a>
+<span class="sourceLineNo">114</span> *<a name="line.114"></a>
+<span class="sourceLineNo">115</span> *       &lt;jc&gt;// HTML elements can be nested arbitrarily deep&lt;/jc&gt;<a name="line.115"></a>
+<span class="sourceLineNo">116</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.116"></a>
+<span class="sourceLineNo">117</span> *       &lt;jc&gt;//   &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.117"></a>
+<span class="sourceLineNo">118</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;key&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;value&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.118"></a>
+<span class="sourceLineNo">119</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;foo&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;bar&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.119"></a>
+<span class="sourceLineNo">120</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;baz&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;123&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.120"></a>
+<span class="sourceLineNo">121</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;someNumbers&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;1&amp;lt;li&amp;gt;2&amp;lt;li&amp;gt;3&amp;lt;/ul&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.121"></a>
+<span class="sourceLineNo">122</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;someSubMap&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; &lt;/jc&gt;<a name="line.122"></a>
+<span class="sourceLineNo">123</span> *       &lt;jc&gt;//         &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.123"></a>
+<span class="sourceLineNo">124</span> *       &lt;jc&gt;//            &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;key&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;value&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.124"></a>
+<span class="sourceLineNo">125</span> *       &lt;jc&gt;//            &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;a&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;b&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.125"></a>
+<span class="sourceLineNo">126</span> *       &lt;jc&gt;//         &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.126"></a>
+<span class="sourceLineNo">127</span> *       &lt;jc&gt;//      &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.127"></a>
+<span class="sourceLineNo">128</span> *       &lt;jc&gt;//   &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.128"></a>
+<span class="sourceLineNo">129</span> *       Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{foo:'bar',baz:123}"&lt;/js&gt;);<a name="line.129"></a>
+<span class="sourceLineNo">130</span> *       m.put("someNumbers", new ObjectList(1, 2, 3));<a name="line.130"></a>
+<span class="sourceLineNo">131</span> *       m.put(&lt;js&gt;"someSubMap"&lt;/js&gt;, new ObjectMap(&lt;js&gt;"{a:'b'}"&lt;/js&gt;));<a name="line.131"></a>
+<span class="sourceLineNo">132</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(m);<a name="line.132"></a>
+<span class="sourceLineNo">133</span> * &lt;/p&gt;<a name="line.133"></a>
+<span class="sourceLineNo">134</span> */<a name="line.134"></a>
+<span class="sourceLineNo">135</span>@SuppressWarnings("hiding")<a name="line.135"></a>
+<span class="sourceLineNo">136</span>public class HtmlSerializer extends XmlSerializer {<a name="line.136"></a>
+<span class="sourceLineNo">137</span><a name="line.137"></a>
+<span class="sourceLineNo">138</span>   /** Default serializer, all default settings. */<a name="line.138"></a>
+<span class="sourceLineNo">139</span>   public static final HtmlSerializer DEFAULT = new HtmlSerializer(PropertyStore.create());<a name="line.139"></a>
+<span class="sourceLineNo">140</span><a name="line.140"></a>
+<span class="sourceLineNo">141</span>   /** Default serializer, single quotes. */<a name="line.141"></a>
+<span class="sourceLineNo">142</span>   public static final HtmlSerializer DEFAULT_SQ = new HtmlSerializer.Sq(PropertyStore.create());<a name="line.142"></a>
+<span class="sourceLineNo">143</span><a name="line.143"></a>
+<span class="sourceLineNo">144</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.144"></a>
+<span class="sourceLineNo">145</span>   public static final HtmlSerializer DEFAULT_SQ_READABLE = new HtmlSerializer.SqReadable(PropertyStore.create());<a name="line.145"></a>
+<span class="sourceLineNo">146</span><a name="line.146"></a>
+<span class="sourceLineNo">147</span><a name="line.147"></a>
+<span class="sourceLineNo">148</span>   /** Default serializer, single quotes. */<a name="line.148"></a>
+<span class="sourceLineNo">149</span>   public static class Sq extends HtmlSerializer {<a name="line.149"></a>
+<span class="sourceLineNo">150</span><a name="line.150"></a>
+<span class="sourceLineNo">151</span>      /**<a name="line.151"></a>
+<span class="sourceLineNo">152</span>       * Constructor.<a name="line.152"></a>
+<span class="sourceLineNo">153</span>       *<a name="line.153"></a>
+<span class="sourceLineNo">154</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.154"></a>
+<span class="sourceLineNo">155</span>       */<a name="line.155"></a>
+<span class="sourceLineNo">156</span>      public Sq(PropertyStore propertyStore) {<a name="line.156"></a>
+<span class="sourceLineNo">157</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\''));<a name="line.157"></a>
+<span class="sourceLineNo">158</span>      }<a name="line.158"></a>
+<span class="sourceLineNo">159</span>   }<a name="line.159"></a>
+<span class="sourceLineNo">160</span><a name="line.160"></a>
+<span class="sourceLineNo">161</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.161"></a>
+<span class="sourceLineNo">162</span>   public static class SqReadable extends HtmlSerializer {<a name="line.162"></a>
+<span class="sourceLineNo">163</span><a name="line.163"></a>
+<span class="sourceLineNo">164</span>      /**<a name="line.164"></a>
+<span class="sourceLineNo">165</span>       * Constructor.<a name="line.165"></a>
+<span class="sourceLineNo">166</span>       *<a name="line.166"></a>
+<span class="sourceLineNo">167</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.167"></a>
+<span class="sourceLineNo">168</span>       */<a name="line.168"></a>
+<span class="sourceLineNo">169</span>      public SqReadable(PropertyStore propertyStore) {<a name="line.169"></a>
+<span class="sourceLineNo">170</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\'').append(SERIALIZER_useWhitespace, true));<a name="line.170"></a>
+<span class="sourceLineNo">171</span>      }<a name="line.171"></a>
+<span class="sourceLineNo">172</span>   }<a name="line.172"></a>
+<span class="sourceLineNo">173</span><a name="line.173"></a>
+<span class="sourceLineNo">174</span><a name="line.174"></a>
+<span class="sourceLineNo">175</span>   final HtmlSerializerContext ctx;<a name="line.175"></a>
+<span class="sourceLineNo">176</span>   private volatile HtmlSchemaDocSerializer schemaSerializer;<a name="line.176"></a>
+<span class="sourceLineNo">177</span><a name="line.177"></a>
+<span class="sourceLineNo">178</span>   /**<a name="line.178"></a>
+<span class="sourceLineNo">179</span>    * Constructor.<a name="line.179"></a>
+<span class="sourceLineNo">180</span>    *<a name="line.180"></a>
+<span class="sourceLineNo">181</span>    * @param propertyStore<a name="line.181"></a>
+<span class="sourceLineNo">182</span>    *    The property store containing all the settings for this object.<a name="line.182"></a>
+<span class="sourceLineNo">183</span>    */<a name="line.183"></a>
+<span class="sourceLineNo">184</span>   public HtmlSerializer(PropertyStore propertyStore) {<a name="line.184"></a>
+<span class="sourceLineNo">185</span>      this(propertyStore, "text/html");<a name="line.185"></a>
+<span class="sourceLineNo">186</span>   }<a name="line.186"></a>
+<span class="sourceLineNo">187</span><a name="line.187"></a>
+<span class="sourceLineNo">188</span>   /**<a name="line.188"></a>
+<span class="sourceLineNo">189</span>    * Constructor.<a name="line.189"></a>
+<span class="sourceLineNo">190</span>    *<a name="line.190"></a>
+<span class="sourceLineNo">191</span>    * @param propertyStore<a name="line.191"></a>
+<span class="sourceLineNo">192</span>    *    The property store containing all the settings for this object.<a name="line.192"></a>
+<span class="sourceLineNo">193</span>    * @param produces<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    *    The media type that this serializer produces.<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    * @param accept<a name="line.195"></a>
+<span class="sourceLineNo">196</span>    *    The accept media types that the serializer can handle.<a name="line.196"></a>
+<span class="sourceLineNo">197</span>    *    &lt;p&gt;<a name="line.197"></a>
+<span class="sourceLineNo">198</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.198"></a>
+<span class="sourceLineNo">199</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.199"></a>
+<span class="sourceLineNo">200</span>    *    &lt;p&gt;<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.201"></a>
+<span class="sourceLineNo">202</span>    *    &lt;p&gt;<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.203"></a>
+<span class="sourceLineNo">204</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.204"></a>
+<span class="sourceLineNo">205</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.205"></a>
+<span class="sourceLineNo">206</span>    *    &lt;br&gt;...or...<a name="line.206"></a>
+<span class="sourceLineNo">207</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.207"></a>
+<span class="sourceLineNo">208</span>    */<a name="line.208"></a>
+<span class="sourceLineNo">209</span>   public HtmlSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.209"></a>
+<span class="sourceLineNo">210</span>      super(propertyStore, produces, accept);<a name="line.210"></a>
+<span class="sourceLineNo">211</span>      this.ctx = createContext(HtmlSerializerContext.class);<a name="line.211"></a>
+<span class="sourceLineNo">212</span>   }<a name="line.212"></a>
+<span class="sourceLineNo">213</span><a name="line.213"></a>
+<span class="sourceLineNo">214</span>   @Override /* CoreObject */<a name="line.214"></a>
+<span class="sourceLineNo">215</span>   public HtmlSerializerBuilder builder() {<a name="line.215"></a>
+<span class="sourceLineNo">216</span>      return new HtmlSerializerBuilder(propertyStore);<a name="line.216"></a>
+<span class="sourceLineNo">217</span>   }<a name="line.217"></a>
+<span class="sourceLineNo">218</span><a name="line.218"></a>
+<span class="sourceLineNo">219</span>   @Override /* XmlSerializer */<a name="line.219"></a>
+<span class="sourceLineNo">220</span>   public HtmlSerializer getSchemaSerializer() {<a name="line.220"></a>
+<span class="sourceLineNo">221</span>      if (schemaSerializer == null)<a name="line.221"></a>
+<span class="sourceLineNo">222</span>         schemaSerializer = new HtmlSchemaDocSerializer(propertyStore);<a name="line.222"></a>
+<span class="sourceLineNo">223</span>      return schemaSerializer;<a name="line.223"></a>
+<span class="sourceLineNo">224</span>   }<a name="line.224"></a>
+<span class="sourceLineNo">225</span><a name="line.225"></a>
+<span class="sourceLineNo">226</span>   @Override /* Serializer */<a name="line.226"></a>
+<span class="sourceLineNo">227</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.227"></a>
+<span class="sourceLineNo">228</span>      return new HtmlSerializerSession(ctx, args);<a name="line.228"></a>
+<span class="sourceLineNo">229</span>   }<a name="line.229"></a>
+<span class="sourceLineNo">230</span>}<a name="line.230"></a>
 
 
 



[26/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.SimpleReadable.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.SimpleReadable.html b/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.SimpleReadable.html
index 4484c96..3a31851 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.SimpleReadable.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.SimpleReadable.html
@@ -25,222 +25,247 @@
 <span class="sourceLineNo">017</span>import java.util.*;<a name="line.17"></a>
 <span class="sourceLineNo">018</span><a name="line.18"></a>
 <span class="sourceLineNo">019</span>import org.apache.juneau.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.annotation.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span>import org.apache.juneau.serializer.*;<a name="line.21"></a>
-<span class="sourceLineNo">022</span><a name="line.22"></a>
-<span class="sourceLineNo">023</span>/**<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * Serializes POJO models to JSON.<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;application/json, text/json&lt;/code&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * &lt;p&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/json&lt;/code&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> *<a name="line.31"></a>
-<span class="sourceLineNo">032</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.32"></a>
-<span class="sourceLineNo">033</span> *<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * The conversion is as follows...<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * &lt;ul class='spaced-list'&gt;<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *    &lt;li&gt;<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *       Maps (e.g. {@link HashMap HashMaps}, {@link TreeMap TreeMaps}) are converted to JSON objects.<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *       Collections (e.g. {@link HashSet HashSets}, {@link LinkedList LinkedLists}) and Java arrays are converted to<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *       JSON arrays.<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *    &lt;li&gt;<a name="line.41"></a>
-<span class="sourceLineNo">042</span> *       {@link String Strings} are converted to JSON strings.<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *    &lt;li&gt;<a name="line.43"></a>
-<span class="sourceLineNo">044</span> *       {@link Number Numbers} (e.g. {@link Integer}, {@link Long}, {@link Double}) are converted to JSON numbers.<a name="line.44"></a>
-<span class="sourceLineNo">045</span> *    &lt;li&gt;<a name="line.45"></a>
-<span class="sourceLineNo">046</span> *       {@link Boolean Booleans} are converted to JSON booleans.<a name="line.46"></a>
-<span class="sourceLineNo">047</span> *    &lt;li&gt;<a name="line.47"></a>
-<span class="sourceLineNo">048</span> *       {@code nulls} are converted to JSON nulls.<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *    &lt;li&gt;<a name="line.49"></a>
-<span class="sourceLineNo">050</span> *       {@code arrays} are converted to JSON arrays.<a name="line.50"></a>
-<span class="sourceLineNo">051</span> *    &lt;li&gt;<a name="line.51"></a>
-<span class="sourceLineNo">052</span> *       {@code beans} are converted to JSON objects.<a name="line.52"></a>
-<span class="sourceLineNo">053</span> * &lt;/ul&gt;<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *<a name="line.54"></a>
-<span class="sourceLineNo">055</span> * &lt;p&gt;<a name="line.55"></a>
-<span class="sourceLineNo">056</span> * The types above are considered "JSON-primitive" object types.<a name="line.56"></a>
-<span class="sourceLineNo">057</span> * Any non-JSON-primitive object types are transformed into JSON-primitive object types through<a name="line.57"></a>
-<span class="sourceLineNo">058</span> * {@link org.apache.juneau.transform.PojoSwap PojoSwaps} associated through the<a name="line.58"></a>
-<span class="sourceLineNo">059</span> * {@link CoreObjectBuilder#pojoSwaps(Class...)} method.<a name="line.59"></a>
-<span class="sourceLineNo">060</span> * Several default transforms are provided for transforming Dates, Enums, Iterators, etc...<a name="line.60"></a>
-<span class="sourceLineNo">061</span> *<a name="line.61"></a>
-<span class="sourceLineNo">062</span> * &lt;p&gt;<a name="line.62"></a>
-<span class="sourceLineNo">063</span> * This serializer provides several serialization options.<a name="line.63"></a>
-<span class="sourceLineNo">064</span> * Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.64"></a>
-<span class="sourceLineNo">065</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.65"></a>
-<span class="sourceLineNo">066</span> *<a name="line.66"></a>
-<span class="sourceLineNo">067</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.67"></a>
-<span class="sourceLineNo">068</span> *<a name="line.68"></a>
-<span class="sourceLineNo">069</span> * This class has the following properties associated with it:<a name="line.69"></a>
-<span class="sourceLineNo">070</span> * &lt;ul&gt;<a name="line.70"></a>
-<span class="sourceLineNo">071</span> *    &lt;li&gt;{@link JsonSerializerContext}<a name="line.71"></a>
-<span class="sourceLineNo">072</span> *    &lt;li&gt;{@link SerializerContext}<a name="line.72"></a>
-<span class="sourceLineNo">073</span> *    &lt;li&gt;{@link BeanContext}<a name="line.73"></a>
-<span class="sourceLineNo">074</span> * &lt;/ul&gt;<a name="line.74"></a>
-<span class="sourceLineNo">075</span> *<a name="line.75"></a>
-<span class="sourceLineNo">076</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.76"></a>
-<span class="sourceLineNo">077</span> *<a name="line.77"></a>
-<span class="sourceLineNo">078</span> * The following direct subclasses are provided for convenience:<a name="line.78"></a>
-<span class="sourceLineNo">079</span> * &lt;ul class='spaced-list'&gt;<a name="line.79"></a>
-<span class="sourceLineNo">080</span> *    &lt;li&gt;<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *       {@link Simple} - Default serializer, single quotes, simple mode.<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *    &lt;li&gt;<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *       {@link SimpleReadable} - Default serializer, single quotes, simple mode, with whitespace.<a name="line.83"></a>
-<span class="sourceLineNo">084</span> * &lt;/ul&gt;<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *<a name="line.85"></a>
-<span class="sourceLineNo">086</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.86"></a>
-<span class="sourceLineNo">087</span> * &lt;p class='bcode'&gt;<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *    &lt;jc&gt;// Use one of the default serializers to serialize a POJO&lt;/jc&gt;<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *    String json = JsonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(someObject);<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *    &lt;jc&gt;// Create a custom serializer for lax syntax using single quote characters&lt;/jc&gt;<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *    JsonSerializer serializer = &lt;jk&gt;new&lt;/jk&gt; JsonSerializerBuilder().simple().sq().build();<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *<a name="line.93"></a>
-<span class="sourceLineNo">094</span> *    &lt;jc&gt;// Clone an existing serializer and modify it to use single-quotes&lt;/jc&gt;<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *    JsonSerializer serializer = JsonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.builder().sq().build();<a name="line.95"></a>
-<span class="sourceLineNo">096</span> *<a name="line.96"></a>
-<span class="sourceLineNo">097</span> *    &lt;jc&gt;// Serialize a POJO to JSON&lt;/jc&gt;<a name="line.97"></a>
-<span class="sourceLineNo">098</span> *    String json = serializer.serialize(someObject);<a name="line.98"></a>
-<span class="sourceLineNo">099</span> * &lt;/p&gt;<a name="line.99"></a>
-<span class="sourceLineNo">100</span> */<a name="line.100"></a>
-<span class="sourceLineNo">101</span>@Produces("application/json,text/json")<a name="line.101"></a>
-<span class="sourceLineNo">102</span>public class JsonSerializer extends WriterSerializer {<a name="line.102"></a>
-<span class="sourceLineNo">103</span><a name="line.103"></a>
-<span class="sourceLineNo">104</span>   /** Default serializer, all default settings.*/<a name="line.104"></a>
-<span class="sourceLineNo">105</span>   public static final JsonSerializer DEFAULT = new JsonSerializer(PropertyStore.create());<a name="line.105"></a>
-<span class="sourceLineNo">106</span><a name="line.106"></a>
-<span class="sourceLineNo">107</span>   /** Default serializer, all default settings.*/<a name="line.107"></a>
-<span class="sourceLineNo">108</span>   public static final JsonSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.108"></a>
-<span class="sourceLineNo">109</span><a name="line.109"></a>
-<span class="sourceLineNo">110</span>   /** Default serializer, single quotes, simple mode. */<a name="line.110"></a>
-<span class="sourceLineNo">111</span>   public static final JsonSerializer DEFAULT_LAX = new Simple(PropertyStore.create());<a name="line.111"></a>
-<span class="sourceLineNo">112</span><a name="line.112"></a>
-<span class="sourceLineNo">113</span>   /** Default serializer, single quotes, simple mode, with whitespace. */<a name="line.113"></a>
-<span class="sourceLineNo">114</span>   public static final JsonSerializer DEFAULT_LAX_READABLE = new SimpleReadable(PropertyStore.create());<a name="line.114"></a>
-<span class="sourceLineNo">115</span><a name="line.115"></a>
-<span class="sourceLineNo">116</span>   /**<a name="line.116"></a>
-<span class="sourceLineNo">117</span>    * Default serializer, single quotes, simple mode, with whitespace and recursion detection.<a name="line.117"></a>
-<span class="sourceLineNo">118</span>    * Note that recursion detection introduces a small performance penalty.<a name="line.118"></a>
-<span class="sourceLineNo">119</span>    */<a name="line.119"></a>
-<span class="sourceLineNo">120</span>   public static final JsonSerializer DEFAULT_LAX_READABLE_SAFE = new SimpleReadableSafe(PropertyStore.create());<a name="line.120"></a>
-<span class="sourceLineNo">121</span><a name="line.121"></a>
-<span class="sourceLineNo">122</span><a name="line.122"></a>
-<span class="sourceLineNo">123</span>   /** Default serializer, with whitespace. */<a name="line.123"></a>
-<span class="sourceLineNo">124</span>   public static class Readable extends JsonSerializer {<a name="line.124"></a>
-<span class="sourceLineNo">125</span><a name="line.125"></a>
-<span class="sourceLineNo">126</span>      /**<a name="line.126"></a>
-<span class="sourceLineNo">127</span>       * Constructor.<a name="line.127"></a>
-<span class="sourceLineNo">128</span>       *<a name="line.128"></a>
-<span class="sourceLineNo">129</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.129"></a>
-<span class="sourceLineNo">130</span>       */<a name="line.130"></a>
-<span class="sourceLineNo">131</span>      public Readable(PropertyStore propertyStore) {<a name="line.131"></a>
-<span class="sourceLineNo">132</span>         super(<a name="line.132"></a>
-<span class="sourceLineNo">133</span>            propertyStore.copy()<a name="line.133"></a>
-<span class="sourceLineNo">134</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.134"></a>
-<span class="sourceLineNo">135</span>         );<a name="line.135"></a>
-<span class="sourceLineNo">136</span>      }<a name="line.136"></a>
-<span class="sourceLineNo">137</span>   }<a name="line.137"></a>
-<span class="sourceLineNo">138</span><a name="line.138"></a>
-<span class="sourceLineNo">139</span>   /** Default serializer, single quotes, simple mode. */<a name="line.139"></a>
-<span class="sourceLineNo">140</span>   @Produces(value="application/json+simple,text/json+simple",contentType="application/json")<a name="line.140"></a>
-<span class="sourceLineNo">141</span>   public static class Simple extends JsonSerializer {<a name="line.141"></a>
-<span class="sourceLineNo">142</span><a name="line.142"></a>
-<span class="sourceLineNo">143</span>      /**<a name="line.143"></a>
-<span class="sourceLineNo">144</span>       * Constructor.<a name="line.144"></a>
-<span class="sourceLineNo">145</span>       *<a name="line.145"></a>
-<span class="sourceLineNo">146</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.146"></a>
-<span class="sourceLineNo">147</span>       */<a name="line.147"></a>
-<span class="sourceLineNo">148</span>      public Simple(PropertyStore propertyStore) {<a name="line.148"></a>
-<span class="sourceLineNo">149</span>         super(<a name="line.149"></a>
-<span class="sourceLineNo">150</span>            propertyStore.copy()<a name="line.150"></a>
-<span class="sourceLineNo">151</span>            .append(JSON_simpleMode, true)<a name="line.151"></a>
-<span class="sourceLineNo">152</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.152"></a>
-<span class="sourceLineNo">153</span>         );<a name="line.153"></a>
-<span class="sourceLineNo">154</span>      }<a name="line.154"></a>
-<span class="sourceLineNo">155</span>   }<a name="line.155"></a>
-<span class="sourceLineNo">156</span><a name="line.156"></a>
-<span class="sourceLineNo">157</span>   /** Default serializer, single quotes, simple mode, with whitespace. */<a name="line.157"></a>
-<span class="sourceLineNo">158</span>   public static class SimpleReadable extends JsonSerializer {<a name="line.158"></a>
-<span class="sourceLineNo">159</span><a name="line.159"></a>
-<span class="sourceLineNo">160</span>      /**<a name="line.160"></a>
-<span class="sourceLineNo">161</span>       * Constructor.<a name="line.161"></a>
-<span class="sourceLineNo">162</span>       *<a name="line.162"></a>
-<span class="sourceLineNo">163</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.163"></a>
-<span class="sourceLineNo">164</span>       */<a name="line.164"></a>
-<span class="sourceLineNo">165</span>      public SimpleReadable(PropertyStore propertyStore) {<a name="line.165"></a>
-<span class="sourceLineNo">166</span>         super(<a name="line.166"></a>
-<span class="sourceLineNo">167</span>            propertyStore.copy()<a name="line.167"></a>
-<span class="sourceLineNo">168</span>            .append(JSON_simpleMode, true)<a name="line.168"></a>
-<span class="sourceLineNo">169</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.169"></a>
-<span class="sourceLineNo">170</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.170"></a>
-<span class="sourceLineNo">171</span>         );<a name="line.171"></a>
-<span class="sourceLineNo">172</span>      }<a name="line.172"></a>
-<span class="sourceLineNo">173</span>   }<a name="line.173"></a>
-<span class="sourceLineNo">174</span><a name="line.174"></a>
-<span class="sourceLineNo">175</span>   /**<a name="line.175"></a>
-<span class="sourceLineNo">176</span>    * Default serializer, single quotes, simple mode, with whitespace and recursion detection.<a name="line.176"></a>
-<span class="sourceLineNo">177</span>    * Note that recursion detection introduces a small performance penalty.<a name="line.177"></a>
-<span class="sourceLineNo">178</span>    */<a name="line.178"></a>
-<span class="sourceLineNo">179</span>   public static class SimpleReadableSafe extends JsonSerializer {<a name="line.179"></a>
-<span class="sourceLineNo">180</span><a name="line.180"></a>
-<span class="sourceLineNo">181</span>      /**<a name="line.181"></a>
-<span class="sourceLineNo">182</span>       * Constructor.<a name="line.182"></a>
-<span class="sourceLineNo">183</span>       *<a name="line.183"></a>
-<span class="sourceLineNo">184</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.184"></a>
-<span class="sourceLineNo">185</span>       */<a name="line.185"></a>
-<span class="sourceLineNo">186</span>      public SimpleReadableSafe(PropertyStore propertyStore) {<a name="line.186"></a>
-<span class="sourceLineNo">187</span>         super(<a name="line.187"></a>
-<span class="sourceLineNo">188</span>            propertyStore.copy()<a name="line.188"></a>
-<span class="sourceLineNo">189</span>            .append(JSON_simpleMode, true)<a name="line.189"></a>
-<span class="sourceLineNo">190</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.190"></a>
-<span class="sourceLineNo">191</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.191"></a>
-<span class="sourceLineNo">192</span>            .append(SERIALIZER_detectRecursions, true)<a name="line.192"></a>
-<span class="sourceLineNo">193</span>         );<a name="line.193"></a>
-<span class="sourceLineNo">194</span>      }<a name="line.194"></a>
-<span class="sourceLineNo">195</span>   }<a name="line.195"></a>
+<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
+<span class="sourceLineNo">021</span><a name="line.21"></a>
+<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * Serializes POJO models to JSON.<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;application/json, text/json&lt;/code&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * &lt;p&gt;<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/json&lt;/code&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> *<a name="line.30"></a>
+<span class="sourceLineNo">031</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.31"></a>
+<span class="sourceLineNo">032</span> *<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * The conversion is as follows...<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * &lt;ul class='spaced-list'&gt;<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *    &lt;li&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *       Maps (e.g. {@link HashMap HashMaps}, {@link TreeMap TreeMaps}) are converted to JSON objects.<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;<a name="line.37"></a>
+<span class="sourceLineNo">038</span> *       Collections (e.g. {@link HashSet HashSets}, {@link LinkedList LinkedLists}) and Java arrays are converted to<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *       JSON arrays.<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *    &lt;li&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span> *       {@link String Strings} are converted to JSON strings.<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *    &lt;li&gt;<a name="line.42"></a>
+<span class="sourceLineNo">043</span> *       {@link Number Numbers} (e.g. {@link Integer}, {@link Long}, {@link Double}) are converted to JSON numbers.<a name="line.43"></a>
+<span class="sourceLineNo">044</span> *    &lt;li&gt;<a name="line.44"></a>
+<span class="sourceLineNo">045</span> *       {@link Boolean Booleans} are converted to JSON booleans.<a name="line.45"></a>
+<span class="sourceLineNo">046</span> *    &lt;li&gt;<a name="line.46"></a>
+<span class="sourceLineNo">047</span> *       {@code nulls} are converted to JSON nulls.<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *    &lt;li&gt;<a name="line.48"></a>
+<span class="sourceLineNo">049</span> *       {@code arrays} are converted to JSON arrays.<a name="line.49"></a>
+<span class="sourceLineNo">050</span> *    &lt;li&gt;<a name="line.50"></a>
+<span class="sourceLineNo">051</span> *       {@code beans} are converted to JSON objects.<a name="line.51"></a>
+<span class="sourceLineNo">052</span> * &lt;/ul&gt;<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *<a name="line.53"></a>
+<span class="sourceLineNo">054</span> * &lt;p&gt;<a name="line.54"></a>
+<span class="sourceLineNo">055</span> * The types above are considered "JSON-primitive" object types.<a name="line.55"></a>
+<span class="sourceLineNo">056</span> * Any non-JSON-primitive object types are transformed into JSON-primitive object types through<a name="line.56"></a>
+<span class="sourceLineNo">057</span> * {@link org.apache.juneau.transform.PojoSwap PojoSwaps} associated through the<a name="line.57"></a>
+<span class="sourceLineNo">058</span> * {@link CoreObjectBuilder#pojoSwaps(Class...)} method.<a name="line.58"></a>
+<span class="sourceLineNo">059</span> * Several default transforms are provided for transforming Dates, Enums, Iterators, etc...<a name="line.59"></a>
+<span class="sourceLineNo">060</span> *<a name="line.60"></a>
+<span class="sourceLineNo">061</span> * &lt;p&gt;<a name="line.61"></a>
+<span class="sourceLineNo">062</span> * This serializer provides several serialization options.<a name="line.62"></a>
+<span class="sourceLineNo">063</span> * Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.63"></a>
+<span class="sourceLineNo">064</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.64"></a>
+<span class="sourceLineNo">065</span> *<a name="line.65"></a>
+<span class="sourceLineNo">066</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.66"></a>
+<span class="sourceLineNo">067</span> *<a name="line.67"></a>
+<span class="sourceLineNo">068</span> * This class has the following properties associated with it:<a name="line.68"></a>
+<span class="sourceLineNo">069</span> * &lt;ul&gt;<a name="line.69"></a>
+<span class="sourceLineNo">070</span> *    &lt;li&gt;{@link JsonSerializerContext}<a name="line.70"></a>
+<span class="sourceLineNo">071</span> *    &lt;li&gt;{@link SerializerContext}<a name="line.71"></a>
+<span class="sourceLineNo">072</span> *    &lt;li&gt;{@link BeanContext}<a name="line.72"></a>
+<span class="sourceLineNo">073</span> * &lt;/ul&gt;<a name="line.73"></a>
+<span class="sourceLineNo">074</span> *<a name="line.74"></a>
+<span class="sourceLineNo">075</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.75"></a>
+<span class="sourceLineNo">076</span> *<a name="line.76"></a>
+<span class="sourceLineNo">077</span> * The following direct subclasses are provided for convenience:<a name="line.77"></a>
+<span class="sourceLineNo">078</span> * &lt;ul class='spaced-list'&gt;<a name="line.78"></a>
+<span class="sourceLineNo">079</span> *    &lt;li&gt;<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *       {@link Simple} - Default serializer, single quotes, simple mode.<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *    &lt;li&gt;<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *       {@link SimpleReadable} - Default serializer, single quotes, simple mode, with whitespace.<a name="line.82"></a>
+<span class="sourceLineNo">083</span> * &lt;/ul&gt;<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *<a name="line.84"></a>
+<span class="sourceLineNo">085</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.85"></a>
+<span class="sourceLineNo">086</span> * &lt;p class='bcode'&gt;<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *    &lt;jc&gt;// Use one of the default serializers to serialize a POJO&lt;/jc&gt;<a name="line.87"></a>
+<span class="sourceLineNo">088</span> *    String json = JsonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(someObject);<a name="line.88"></a>
+<span class="sourceLineNo">089</span> *<a name="line.89"></a>
+<span class="sourceLineNo">090</span> *    &lt;jc&gt;// Create a custom serializer for lax syntax using single quote characters&lt;/jc&gt;<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *    JsonSerializer serializer = &lt;jk&gt;new&lt;/jk&gt; JsonSerializerBuilder().simple().sq().build();<a name="line.91"></a>
+<span class="sourceLineNo">092</span> *<a name="line.92"></a>
+<span class="sourceLineNo">093</span> *    &lt;jc&gt;// Clone an existing serializer and modify it to use single-quotes&lt;/jc&gt;<a name="line.93"></a>
+<span class="sourceLineNo">094</span> *    JsonSerializer serializer = JsonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.builder().sq().build();<a name="line.94"></a>
+<span class="sourceLineNo">095</span> *<a name="line.95"></a>
+<span class="sourceLineNo">096</span> *    &lt;jc&gt;// Serialize a POJO to JSON&lt;/jc&gt;<a name="line.96"></a>
+<span class="sourceLineNo">097</span> *    String json = serializer.serialize(someObject);<a name="line.97"></a>
+<span class="sourceLineNo">098</span> * &lt;/p&gt;<a name="line.98"></a>
+<span class="sourceLineNo">099</span> */<a name="line.99"></a>
+<span class="sourceLineNo">100</span>public class JsonSerializer extends WriterSerializer {<a name="line.100"></a>
+<span class="sourceLineNo">101</span><a name="line.101"></a>
+<span class="sourceLineNo">102</span>   /** Default serializer, all default settings.*/<a name="line.102"></a>
+<span class="sourceLineNo">103</span>   public static final JsonSerializer DEFAULT = new JsonSerializer(PropertyStore.create());<a name="line.103"></a>
+<span class="sourceLineNo">104</span><a name="line.104"></a>
+<span class="sourceLineNo">105</span>   /** Default serializer, all default settings.*/<a name="line.105"></a>
+<span class="sourceLineNo">106</span>   public static final JsonSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.106"></a>
+<span class="sourceLineNo">107</span><a name="line.107"></a>
+<span class="sourceLineNo">108</span>   /** Default serializer, single quotes, simple mode. */<a name="line.108"></a>
+<span class="sourceLineNo">109</span>   public static final JsonSerializer DEFAULT_LAX = new Simple(PropertyStore.create());<a name="line.109"></a>
+<span class="sourceLineNo">110</span><a name="line.110"></a>
+<span class="sourceLineNo">111</span>   /** Default serializer, single quotes, simple mode, with whitespace. */<a name="line.111"></a>
+<span class="sourceLineNo">112</span>   public static final JsonSerializer DEFAULT_LAX_READABLE = new SimpleReadable(PropertyStore.create());<a name="line.112"></a>
+<span class="sourceLineNo">113</span><a name="line.113"></a>
+<span class="sourceLineNo">114</span>   /**<a name="line.114"></a>
+<span class="sourceLineNo">115</span>    * Default serializer, single quotes, simple mode, with whitespace and recursion detection.<a name="line.115"></a>
+<span class="sourceLineNo">116</span>    * Note that recursion detection introduces a small performance penalty.<a name="line.116"></a>
+<span class="sourceLineNo">117</span>    */<a name="line.117"></a>
+<span class="sourceLineNo">118</span>   public static final JsonSerializer DEFAULT_LAX_READABLE_SAFE = new SimpleReadableSafe(PropertyStore.create());<a name="line.118"></a>
+<span class="sourceLineNo">119</span><a name="line.119"></a>
+<span class="sourceLineNo">120</span><a name="line.120"></a>
+<span class="sourceLineNo">121</span>   /** Default serializer, with whitespace. */<a name="line.121"></a>
+<span class="sourceLineNo">122</span>   public static class Readable extends JsonSerializer {<a name="line.122"></a>
+<span class="sourceLineNo">123</span><a name="line.123"></a>
+<span class="sourceLineNo">124</span>      /**<a name="line.124"></a>
+<span class="sourceLineNo">125</span>       * Constructor.<a name="line.125"></a>
+<span class="sourceLineNo">126</span>       *<a name="line.126"></a>
+<span class="sourceLineNo">127</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.127"></a>
+<span class="sourceLineNo">128</span>       */<a name="line.128"></a>
+<span class="sourceLineNo">129</span>      public Readable(PropertyStore propertyStore) {<a name="line.129"></a>
+<span class="sourceLineNo">130</span>         super(<a name="line.130"></a>
+<span class="sourceLineNo">131</span>            propertyStore.copy()<a name="line.131"></a>
+<span class="sourceLineNo">132</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.132"></a>
+<span class="sourceLineNo">133</span>         );<a name="line.133"></a>
+<span class="sourceLineNo">134</span>      }<a name="line.134"></a>
+<span class="sourceLineNo">135</span>   }<a name="line.135"></a>
+<span class="sourceLineNo">136</span><a name="line.136"></a>
+<span class="sourceLineNo">137</span>   /** Default serializer, single quotes, simple mode. */<a name="line.137"></a>
+<span class="sourceLineNo">138</span>   public static class Simple extends JsonSerializer {<a name="line.138"></a>
+<span class="sourceLineNo">139</span><a name="line.139"></a>
+<span class="sourceLineNo">140</span>      /**<a name="line.140"></a>
+<span class="sourceLineNo">141</span>       * Constructor.<a name="line.141"></a>
+<span class="sourceLineNo">142</span>       *<a name="line.142"></a>
+<span class="sourceLineNo">143</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.143"></a>
+<span class="sourceLineNo">144</span>       */<a name="line.144"></a>
+<span class="sourceLineNo">145</span>      public Simple(PropertyStore propertyStore) {<a name="line.145"></a>
+<span class="sourceLineNo">146</span>         super(<a name="line.146"></a>
+<span class="sourceLineNo">147</span>            propertyStore.copy()<a name="line.147"></a>
+<span class="sourceLineNo">148</span>               .append(JSON_simpleMode, true)<a name="line.148"></a>
+<span class="sourceLineNo">149</span>               .append(SERIALIZER_quoteChar, '\''),<a name="line.149"></a>
+<span class="sourceLineNo">150</span>            "application/json",<a name="line.150"></a>
+<span class="sourceLineNo">151</span>            "application/json+simple", "text/json+simple"<a name="line.151"></a>
+<span class="sourceLineNo">152</span>         );<a name="line.152"></a>
+<span class="sourceLineNo">153</span>      }<a name="line.153"></a>
+<span class="sourceLineNo">154</span>   }<a name="line.154"></a>
+<span class="sourceLineNo">155</span><a name="line.155"></a>
+<span class="sourceLineNo">156</span>   /** Default serializer, single quotes, simple mode, with whitespace. */<a name="line.156"></a>
+<span class="sourceLineNo">157</span>   public static class SimpleReadable extends JsonSerializer {<a name="line.157"></a>
+<span class="sourceLineNo">158</span><a name="line.158"></a>
+<span class="sourceLineNo">159</span>      /**<a name="line.159"></a>
+<span class="sourceLineNo">160</span>       * Constructor.<a name="line.160"></a>
+<span class="sourceLineNo">161</span>       *<a name="line.161"></a>
+<span class="sourceLineNo">162</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.162"></a>
+<span class="sourceLineNo">163</span>       */<a name="line.163"></a>
+<span class="sourceLineNo">164</span>      public SimpleReadable(PropertyStore propertyStore) {<a name="line.164"></a>
+<span class="sourceLineNo">165</span>         super(<a name="line.165"></a>
+<span class="sourceLineNo">166</span>            propertyStore.copy()<a name="line.166"></a>
+<span class="sourceLineNo">167</span>            .append(JSON_simpleMode, true)<a name="line.167"></a>
+<span class="sourceLineNo">168</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.168"></a>
+<span class="sourceLineNo">169</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.169"></a>
+<span class="sourceLineNo">170</span>         );<a name="line.170"></a>
+<span class="sourceLineNo">171</span>      }<a name="line.171"></a>
+<span class="sourceLineNo">172</span>   }<a name="line.172"></a>
+<span class="sourceLineNo">173</span><a name="line.173"></a>
+<span class="sourceLineNo">174</span>   /**<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    * Default serializer, single quotes, simple mode, with whitespace and recursion detection.<a name="line.175"></a>
+<span class="sourceLineNo">176</span>    * Note that recursion detection introduces a small performance penalty.<a name="line.176"></a>
+<span class="sourceLineNo">177</span>    */<a name="line.177"></a>
+<span class="sourceLineNo">178</span>   public static class SimpleReadableSafe extends JsonSerializer {<a name="line.178"></a>
+<span class="sourceLineNo">179</span><a name="line.179"></a>
+<span class="sourceLineNo">180</span>      /**<a name="line.180"></a>
+<span class="sourceLineNo">181</span>       * Constructor.<a name="line.181"></a>
+<span class="sourceLineNo">182</span>       *<a name="line.182"></a>
+<span class="sourceLineNo">183</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.183"></a>
+<span class="sourceLineNo">184</span>       */<a name="line.184"></a>
+<span class="sourceLineNo">185</span>      public SimpleReadableSafe(PropertyStore propertyStore) {<a name="line.185"></a>
+<span class="sourceLineNo">186</span>         super(<a name="line.186"></a>
+<span class="sourceLineNo">187</span>            propertyStore.copy()<a name="line.187"></a>
+<span class="sourceLineNo">188</span>            .append(JSON_simpleMode, true)<a name="line.188"></a>
+<span class="sourceLineNo">189</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.189"></a>
+<span class="sourceLineNo">190</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.190"></a>
+<span class="sourceLineNo">191</span>            .append(SERIALIZER_detectRecursions, true)<a name="line.191"></a>
+<span class="sourceLineNo">192</span>         );<a name="line.192"></a>
+<span class="sourceLineNo">193</span>      }<a name="line.193"></a>
+<span class="sourceLineNo">194</span>   }<a name="line.194"></a>
+<span class="sourceLineNo">195</span><a name="line.195"></a>
 <span class="sourceLineNo">196</span><a name="line.196"></a>
-<span class="sourceLineNo">197</span><a name="line.197"></a>
-<span class="sourceLineNo">198</span>   final JsonSerializerContext ctx;<a name="line.198"></a>
-<span class="sourceLineNo">199</span>   private volatile JsonSchemaSerializer schemaSerializer;<a name="line.199"></a>
-<span class="sourceLineNo">200</span><a name="line.200"></a>
-<span class="sourceLineNo">201</span>   /**<a name="line.201"></a>
-<span class="sourceLineNo">202</span>    * Constructor.<a name="line.202"></a>
-<span class="sourceLineNo">203</span>    *<a name="line.203"></a>
-<span class="sourceLineNo">204</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.204"></a>
+<span class="sourceLineNo">197</span>   final JsonSerializerContext ctx;<a name="line.197"></a>
+<span class="sourceLineNo">198</span>   private volatile JsonSchemaSerializer schemaSerializer;<a name="line.198"></a>
+<span class="sourceLineNo">199</span><a name="line.199"></a>
+<span class="sourceLineNo">200</span>   /**<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    * Constructor.<a name="line.201"></a>
+<span class="sourceLineNo">202</span>    *<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    * @param propertyStore<a name="line.203"></a>
+<span class="sourceLineNo">204</span>    *    The property store containing all the settings for this object.<a name="line.204"></a>
 <span class="sourceLineNo">205</span>    */<a name="line.205"></a>
 <span class="sourceLineNo">206</span>   public JsonSerializer(PropertyStore propertyStore) {<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      super(propertyStore);<a name="line.207"></a>
-<span class="sourceLineNo">208</span>      this.ctx = createContext(JsonSerializerContext.class);<a name="line.208"></a>
-<span class="sourceLineNo">209</span>   }<a name="line.209"></a>
-<span class="sourceLineNo">210</span><a name="line.210"></a>
-<span class="sourceLineNo">211</span>   @Override /* CoreObject */<a name="line.211"></a>
-<span class="sourceLineNo">212</span>   public JsonSerializerBuilder builder() {<a name="line.212"></a>
-<span class="sourceLineNo">213</span>      return new JsonSerializerBuilder(propertyStore);<a name="line.213"></a>
-<span class="sourceLineNo">214</span>   }<a name="line.214"></a>
-<span class="sourceLineNo">215</span><a name="line.215"></a>
-<span class="sourceLineNo">216</span>   /**<a name="line.216"></a>
-<span class="sourceLineNo">217</span>    * Returns the schema serializer based on the settings of this serializer.<a name="line.217"></a>
-<span class="sourceLineNo">218</span>    *<a name="line.218"></a>
-<span class="sourceLineNo">219</span>    * @return The schema serializer.<a name="line.219"></a>
-<span class="sourceLineNo">220</span>    */<a name="line.220"></a>
-<span class="sourceLineNo">221</span>   public JsonSchemaSerializer getSchemaSerializer() {<a name="line.221"></a>
-<span class="sourceLineNo">222</span>      if (schemaSerializer == null)<a name="line.222"></a>
-<span class="sourceLineNo">223</span>         schemaSerializer = new JsonSchemaSerializer(propertyStore);<a name="line.223"></a>
-<span class="sourceLineNo">224</span>      return schemaSerializer;<a name="line.224"></a>
-<span class="sourceLineNo">225</span>   }<a name="line.225"></a>
-<span class="sourceLineNo">226</span><a name="line.226"></a>
-<span class="sourceLineNo">227</span>   //--------------------------------------------------------------------------------<a name="line.227"></a>
-<span class="sourceLineNo">228</span>   // Entry point methods<a name="line.228"></a>
-<span class="sourceLineNo">229</span>   //--------------------------------------------------------------------------------<a name="line.229"></a>
-<span class="sourceLineNo">230</span><a name="line.230"></a>
-<span class="sourceLineNo">231</span>   @Override /* Serializer */<a name="line.231"></a>
-<span class="sourceLineNo">232</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.232"></a>
-<span class="sourceLineNo">233</span>      return new JsonSerializerSession(ctx, args);<a name="line.233"></a>
+<span class="sourceLineNo">207</span>      this(propertyStore, "application/json", "application/json", "text/json");<a name="line.207"></a>
+<span class="sourceLineNo">208</span>   }<a name="line.208"></a>
+<span class="sourceLineNo">209</span><a name="line.209"></a>
+<span class="sourceLineNo">210</span>   /**<a name="line.210"></a>
+<span class="sourceLineNo">211</span>    * Constructor.<a name="line.211"></a>
+<span class="sourceLineNo">212</span>    *<a name="line.212"></a>
+<span class="sourceLineNo">213</span>    * @param propertyStore<a name="line.213"></a>
+<span class="sourceLineNo">214</span>    *    The property store containing all the settings for this object.<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    * @param produces<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    *    The media type that this serializer produces.<a name="line.216"></a>
+<span class="sourceLineNo">217</span>    * @param accept<a name="line.217"></a>
+<span class="sourceLineNo">218</span>    *    The accept media types that the serializer can handle.<a name="line.218"></a>
+<span class="sourceLineNo">219</span>    *    &lt;p&gt;<a name="line.219"></a>
+<span class="sourceLineNo">220</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.220"></a>
+<span class="sourceLineNo">221</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.221"></a>
+<span class="sourceLineNo">222</span>    *    &lt;p&gt;<a name="line.222"></a>
+<span class="sourceLineNo">223</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.223"></a>
+<span class="sourceLineNo">224</span>    *    &lt;p&gt;<a name="line.224"></a>
+<span class="sourceLineNo">225</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.225"></a>
+<span class="sourceLineNo">226</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.226"></a>
+<span class="sourceLineNo">227</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.227"></a>
+<span class="sourceLineNo">228</span>    *    &lt;br&gt;...or...<a name="line.228"></a>
+<span class="sourceLineNo">229</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.229"></a>
+<span class="sourceLineNo">230</span>    */<a name="line.230"></a>
+<span class="sourceLineNo">231</span>   public JsonSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.231"></a>
+<span class="sourceLineNo">232</span>      super(propertyStore, produces, accept);<a name="line.232"></a>
+<span class="sourceLineNo">233</span>      this.ctx = createContext(JsonSerializerContext.class);<a name="line.233"></a>
 <span class="sourceLineNo">234</span>   }<a name="line.234"></a>
-<span class="sourceLineNo">235</span>}<a name="line.235"></a>
+<span class="sourceLineNo">235</span><a name="line.235"></a>
+<span class="sourceLineNo">236</span>   @Override /* CoreObject */<a name="line.236"></a>
+<span class="sourceLineNo">237</span>   public JsonSerializerBuilder builder() {<a name="line.237"></a>
+<span class="sourceLineNo">238</span>      return new JsonSerializerBuilder(propertyStore);<a name="line.238"></a>
+<span class="sourceLineNo">239</span>   }<a name="line.239"></a>
+<span class="sourceLineNo">240</span><a name="line.240"></a>
+<span class="sourceLineNo">241</span>   /**<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    * Returns the schema serializer based on the settings of this serializer.<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    *<a name="line.243"></a>
+<span class="sourceLineNo">244</span>    * @return The schema serializer.<a name="line.244"></a>
+<span class="sourceLineNo">245</span>    */<a name="line.245"></a>
+<span class="sourceLineNo">246</span>   public JsonSchemaSerializer getSchemaSerializer() {<a name="line.246"></a>
+<span class="sourceLineNo">247</span>      if (schemaSerializer == null)<a name="line.247"></a>
+<span class="sourceLineNo">248</span>         schemaSerializer = new JsonSchemaSerializer(propertyStore);<a name="line.248"></a>
+<span class="sourceLineNo">249</span>      return schemaSerializer;<a name="line.249"></a>
+<span class="sourceLineNo">250</span>   }<a name="line.250"></a>
+<span class="sourceLineNo">251</span><a name="line.251"></a>
+<span class="sourceLineNo">252</span>   //--------------------------------------------------------------------------------<a name="line.252"></a>
+<span class="sourceLineNo">253</span>   // Entry point methods<a name="line.253"></a>
+<span class="sourceLineNo">254</span>   //--------------------------------------------------------------------------------<a name="line.254"></a>
+<span class="sourceLineNo">255</span><a name="line.255"></a>
+<span class="sourceLineNo">256</span>   @Override /* Serializer */<a name="line.256"></a>
+<span class="sourceLineNo">257</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.257"></a>
+<span class="sourceLineNo">258</span>      return new JsonSerializerSession(ctx, args);<a name="line.258"></a>
+<span class="sourceLineNo">259</span>   }<a name="line.259"></a>
+<span class="sourceLineNo">260</span>}<a name="line.260"></a>
 
 
 



[17/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/serializer/SerializerSessionArgs.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/serializer/SerializerSessionArgs.html b/content/site/apidocs/src-html/org/apache/juneau/serializer/SerializerSessionArgs.html
index 19297e1..a2e1cb0 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/serializer/SerializerSessionArgs.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/serializer/SerializerSessionArgs.html
@@ -34,43 +34,38 @@
 <span class="sourceLineNo">026</span> */<a name="line.26"></a>
 <span class="sourceLineNo">027</span>public final class SerializerSessionArgs extends BeanSessionArgs {<a name="line.27"></a>
 <span class="sourceLineNo">028</span><a name="line.28"></a>
-<span class="sourceLineNo">029</span>   /**<a name="line.29"></a>
-<span class="sourceLineNo">030</span>    * Default session arguments.<a name="line.30"></a>
-<span class="sourceLineNo">031</span>    */<a name="line.31"></a>
-<span class="sourceLineNo">032</span>   public static final SerializerSessionArgs DEFAULT = new SerializerSessionArgs(ObjectMap.EMPTY_MAP, null, null, null, null, null);<a name="line.32"></a>
-<span class="sourceLineNo">033</span><a name="line.33"></a>
-<span class="sourceLineNo">034</span>   final Method javaMethod;<a name="line.34"></a>
-<span class="sourceLineNo">035</span>   final UriContext uriContext;<a name="line.35"></a>
-<span class="sourceLineNo">036</span><a name="line.36"></a>
-<span class="sourceLineNo">037</span>   /**<a name="line.37"></a>
-<span class="sourceLineNo">038</span>    * Constructor.<a name="line.38"></a>
-<span class="sourceLineNo">039</span>    *<a name="line.39"></a>
-<span class="sourceLineNo">040</span>    * @param properties<a name="line.40"></a>
-<span class="sourceLineNo">041</span>    *    Session-level properties.<a name="line.41"></a>
-<span class="sourceLineNo">042</span>    *    These override context-level properties.<a name="line.42"></a>
-<span class="sourceLineNo">043</span>    *    Can be &lt;jk&gt;null&lt;/jk&gt;.<a name="line.43"></a>
-<span class="sourceLineNo">044</span>    * @param javaMethod<a name="line.44"></a>
-<span class="sourceLineNo">045</span>    *    The java method that called this serializer, usually the method in a REST servlet.<a name="line.45"></a>
-<span class="sourceLineNo">046</span>    *    Can be &lt;jk&gt;null&lt;/jk&gt;.<a name="line.46"></a>
-<span class="sourceLineNo">047</span>    * @param locale<a name="line.47"></a>
-<span class="sourceLineNo">048</span>    *    The session locale.<a name="line.48"></a>
-<span class="sourceLineNo">049</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then the locale defined on the context is used.<a name="line.49"></a>
-<span class="sourceLineNo">050</span>    * @param timeZone<a name="line.50"></a>
-<span class="sourceLineNo">051</span>    *    The session timezone.<a name="line.51"></a>
-<span class="sourceLineNo">052</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then the timezone defined on the context is used.<a name="line.52"></a>
-<span class="sourceLineNo">053</span>    * @param mediaType<a name="line.53"></a>
-<span class="sourceLineNo">054</span>    *    The session media type (e.g. &lt;js&gt;"application/json"&lt;/js&gt;).<a name="line.54"></a>
-<span class="sourceLineNo">055</span>    *    Can be &lt;jk&gt;null&lt;/jk&gt;.<a name="line.55"></a>
-<span class="sourceLineNo">056</span>    * @param uriContext<a name="line.56"></a>
-<span class="sourceLineNo">057</span>    *    The URI context.<a name="line.57"></a>
-<span class="sourceLineNo">058</span>    *    Identifies the current request URI used for resolution of URIs to absolute or root-relative form.<a name="line.58"></a>
-<span class="sourceLineNo">059</span>    */<a name="line.59"></a>
-<span class="sourceLineNo">060</span>   public SerializerSessionArgs(ObjectMap properties, Method javaMethod, Locale locale, TimeZone timeZone, MediaType mediaType, UriContext uriContext) {<a name="line.60"></a>
-<span class="sourceLineNo">061</span>      super(properties, locale, timeZone, mediaType);<a name="line.61"></a>
-<span class="sourceLineNo">062</span>      this.javaMethod = javaMethod;<a name="line.62"></a>
-<span class="sourceLineNo">063</span>      this.uriContext = uriContext;<a name="line.63"></a>
-<span class="sourceLineNo">064</span>   }<a name="line.64"></a>
-<span class="sourceLineNo">065</span>}<a name="line.65"></a>
+<span class="sourceLineNo">029</span>   final Method javaMethod;<a name="line.29"></a>
+<span class="sourceLineNo">030</span>   final UriContext uriContext;<a name="line.30"></a>
+<span class="sourceLineNo">031</span><a name="line.31"></a>
+<span class="sourceLineNo">032</span>   /**<a name="line.32"></a>
+<span class="sourceLineNo">033</span>    * Constructor.<a name="line.33"></a>
+<span class="sourceLineNo">034</span>    *<a name="line.34"></a>
+<span class="sourceLineNo">035</span>    * @param properties<a name="line.35"></a>
+<span class="sourceLineNo">036</span>    *    Session-level properties.<a name="line.36"></a>
+<span class="sourceLineNo">037</span>    *    These override context-level properties.<a name="line.37"></a>
+<span class="sourceLineNo">038</span>    *    Can be &lt;jk&gt;null&lt;/jk&gt;.<a name="line.38"></a>
+<span class="sourceLineNo">039</span>    * @param javaMethod<a name="line.39"></a>
+<span class="sourceLineNo">040</span>    *    The java method that called this serializer, usually the method in a REST servlet.<a name="line.40"></a>
+<span class="sourceLineNo">041</span>    *    Can be &lt;jk&gt;null&lt;/jk&gt;.<a name="line.41"></a>
+<span class="sourceLineNo">042</span>    * @param locale<a name="line.42"></a>
+<span class="sourceLineNo">043</span>    *    The session locale.<a name="line.43"></a>
+<span class="sourceLineNo">044</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then the locale defined on the context is used.<a name="line.44"></a>
+<span class="sourceLineNo">045</span>    * @param timeZone<a name="line.45"></a>
+<span class="sourceLineNo">046</span>    *    The session timezone.<a name="line.46"></a>
+<span class="sourceLineNo">047</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then the timezone defined on the context is used.<a name="line.47"></a>
+<span class="sourceLineNo">048</span>    * @param mediaType<a name="line.48"></a>
+<span class="sourceLineNo">049</span>    *    The session media type (e.g. &lt;js&gt;"application/json"&lt;/js&gt;).<a name="line.49"></a>
+<span class="sourceLineNo">050</span>    *    Can be &lt;jk&gt;null&lt;/jk&gt;.<a name="line.50"></a>
+<span class="sourceLineNo">051</span>    * @param uriContext<a name="line.51"></a>
+<span class="sourceLineNo">052</span>    *    The URI context.<a name="line.52"></a>
+<span class="sourceLineNo">053</span>    *    Identifies the current request URI used for resolution of URIs to absolute or root-relative form.<a name="line.53"></a>
+<span class="sourceLineNo">054</span>    */<a name="line.54"></a>
+<span class="sourceLineNo">055</span>   public SerializerSessionArgs(ObjectMap properties, Method javaMethod, Locale locale, TimeZone timeZone, MediaType mediaType, UriContext uriContext) {<a name="line.55"></a>
+<span class="sourceLineNo">056</span>      super(properties, locale, timeZone, mediaType);<a name="line.56"></a>
+<span class="sourceLineNo">057</span>      this.javaMethod = javaMethod;<a name="line.57"></a>
+<span class="sourceLineNo">058</span>      this.uriContext = uriContext;<a name="line.58"></a>
+<span class="sourceLineNo">059</span>   }<a name="line.59"></a>
+<span class="sourceLineNo">060</span>}<a name="line.60"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/serializer/WriterSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/serializer/WriterSerializer.html b/content/site/apidocs/src-html/org/apache/juneau/serializer/WriterSerializer.html
index 560ecf5..2eb363c 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/serializer/WriterSerializer.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/serializer/WriterSerializer.html
@@ -21,99 +21,106 @@
 <span class="sourceLineNo">013</span>package org.apache.juneau.serializer;<a name="line.13"></a>
 <span class="sourceLineNo">014</span><a name="line.14"></a>
 <span class="sourceLineNo">015</span>import org.apache.juneau.*;<a name="line.15"></a>
-<span class="sourceLineNo">016</span>import org.apache.juneau.annotation.*;<a name="line.16"></a>
-<span class="sourceLineNo">017</span>import org.apache.juneau.utils.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span><a name="line.18"></a>
-<span class="sourceLineNo">019</span>/**<a name="line.19"></a>
-<span class="sourceLineNo">020</span> * Subclass of {@link Serializer} for character-based serializers.<a name="line.20"></a>
-<span class="sourceLineNo">021</span> *<a name="line.21"></a>
-<span class="sourceLineNo">022</span> * &lt;h6 class='topic'&gt;@Produces annotation&lt;/h6&gt;<a name="line.22"></a>
-<span class="sourceLineNo">023</span> *<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * The media types that this serializer can produce is specified through the {@link Produces @Produces} annotation.<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * &lt;p&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> * However, the media types can also be specified programmatically by overriding the {@link #getMediaTypes()}<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * and {@link #getResponseContentType()} methods.<a name="line.28"></a>
-<span class="sourceLineNo">029</span> */<a name="line.29"></a>
-<span class="sourceLineNo">030</span>public abstract class WriterSerializer extends Serializer {<a name="line.30"></a>
-<span class="sourceLineNo">031</span><a name="line.31"></a>
-<span class="sourceLineNo">032</span>   /**<a name="line.32"></a>
-<span class="sourceLineNo">033</span>    * Constructor.<a name="line.33"></a>
-<span class="sourceLineNo">034</span>    *<a name="line.34"></a>
-<span class="sourceLineNo">035</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.35"></a>
-<span class="sourceLineNo">036</span>    */<a name="line.36"></a>
-<span class="sourceLineNo">037</span>   protected WriterSerializer(PropertyStore propertyStore) {<a name="line.37"></a>
-<span class="sourceLineNo">038</span>      super(propertyStore);<a name="line.38"></a>
-<span class="sourceLineNo">039</span>   }<a name="line.39"></a>
-<span class="sourceLineNo">040</span><a name="line.40"></a>
-<span class="sourceLineNo">041</span><a name="line.41"></a>
-<span class="sourceLineNo">042</span>   //--------------------------------------------------------------------------------<a name="line.42"></a>
-<span class="sourceLineNo">043</span>   // Abstract methods<a name="line.43"></a>
-<span class="sourceLineNo">044</span>   //--------------------------------------------------------------------------------<a name="line.44"></a>
-<span class="sourceLineNo">045</span><a name="line.45"></a>
-<span class="sourceLineNo">046</span>   @Override /* SerializerSession */<a name="line.46"></a>
-<span class="sourceLineNo">047</span>   public abstract WriterSerializerSession createSession(SerializerSessionArgs args);<a name="line.47"></a>
+<span class="sourceLineNo">016</span>import org.apache.juneau.utils.*;<a name="line.16"></a>
+<span class="sourceLineNo">017</span><a name="line.17"></a>
+<span class="sourceLineNo">018</span>/**<a name="line.18"></a>
+<span class="sourceLineNo">019</span> * Subclass of {@link Serializer} for character-based serializers.<a name="line.19"></a>
+<span class="sourceLineNo">020</span> */<a name="line.20"></a>
+<span class="sourceLineNo">021</span>public abstract class WriterSerializer extends Serializer {<a name="line.21"></a>
+<span class="sourceLineNo">022</span><a name="line.22"></a>
+<span class="sourceLineNo">023</span>   /**<a name="line.23"></a>
+<span class="sourceLineNo">024</span>    * Constructor.<a name="line.24"></a>
+<span class="sourceLineNo">025</span>    *<a name="line.25"></a>
+<span class="sourceLineNo">026</span>    * @param propertyStore<a name="line.26"></a>
+<span class="sourceLineNo">027</span>    *    The property store containing all the settings for this object.<a name="line.27"></a>
+<span class="sourceLineNo">028</span>    * @param produces<a name="line.28"></a>
+<span class="sourceLineNo">029</span>    *    The media type that this serializer produces.<a name="line.29"></a>
+<span class="sourceLineNo">030</span>    * @param accept<a name="line.30"></a>
+<span class="sourceLineNo">031</span>    *    The accept media types that the serializer can handle.<a name="line.31"></a>
+<span class="sourceLineNo">032</span>    *    &lt;p&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.33"></a>
+<span class="sourceLineNo">034</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.34"></a>
+<span class="sourceLineNo">035</span>    *    &lt;p&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.36"></a>
+<span class="sourceLineNo">037</span>    *    &lt;p&gt;<a name="line.37"></a>
+<span class="sourceLineNo">038</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.38"></a>
+<span class="sourceLineNo">039</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.39"></a>
+<span class="sourceLineNo">040</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span>    *    &lt;br&gt;...or...<a name="line.41"></a>
+<span class="sourceLineNo">042</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.42"></a>
+<span class="sourceLineNo">043</span>    */<a name="line.43"></a>
+<span class="sourceLineNo">044</span>   protected WriterSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.44"></a>
+<span class="sourceLineNo">045</span>      super(propertyStore, produces, accept);<a name="line.45"></a>
+<span class="sourceLineNo">046</span>   }<a name="line.46"></a>
+<span class="sourceLineNo">047</span><a name="line.47"></a>
 <span class="sourceLineNo">048</span><a name="line.48"></a>
-<span class="sourceLineNo">049</span><a name="line.49"></a>
-<span class="sourceLineNo">050</span>   //--------------------------------------------------------------------------------<a name="line.50"></a>
-<span class="sourceLineNo">051</span>   // Other methods<a name="line.51"></a>
-<span class="sourceLineNo">052</span>   //--------------------------------------------------------------------------------<a name="line.52"></a>
-<span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>   @Override /* Serializer */<a name="line.54"></a>
-<span class="sourceLineNo">055</span>   public final boolean isWriterSerializer() {<a name="line.55"></a>
-<span class="sourceLineNo">056</span>      return true;<a name="line.56"></a>
-<span class="sourceLineNo">057</span>   }<a name="line.57"></a>
-<span class="sourceLineNo">058</span><a name="line.58"></a>
-<span class="sourceLineNo">059</span>   /**<a name="line.59"></a>
-<span class="sourceLineNo">060</span>    * Convenience method for serializing an object to a &lt;code&gt;String&lt;/code&gt;.<a name="line.60"></a>
-<span class="sourceLineNo">061</span>    *<a name="line.61"></a>
-<span class="sourceLineNo">062</span>    * @param o The object to serialize.<a name="line.62"></a>
-<span class="sourceLineNo">063</span>    * @return The output serialized to a string.<a name="line.63"></a>
-<span class="sourceLineNo">064</span>    * @throws SerializeException If a problem occurred trying to convert the output.<a name="line.64"></a>
-<span class="sourceLineNo">065</span>    */<a name="line.65"></a>
-<span class="sourceLineNo">066</span>   @Override /* Serializer */<a name="line.66"></a>
-<span class="sourceLineNo">067</span>   public final String serialize(Object o) throws SerializeException {<a name="line.67"></a>
-<span class="sourceLineNo">068</span>      return createSession(null).serialize(o);<a name="line.68"></a>
-<span class="sourceLineNo">069</span>   }<a name="line.69"></a>
-<span class="sourceLineNo">070</span><a name="line.70"></a>
-<span class="sourceLineNo">071</span>   /**<a name="line.71"></a>
-<span class="sourceLineNo">072</span>    * Identical to {@link #serialize(Object)} except throws a {@link RuntimeException} instead of a {@link SerializeException}.<a name="line.72"></a>
-<span class="sourceLineNo">073</span>    *<a name="line.73"></a>
-<span class="sourceLineNo">074</span>    * &lt;p&gt;<a name="line.74"></a>
-<span class="sourceLineNo">075</span>    * This is typically good enough for debugging purposes.<a name="line.75"></a>
-<span class="sourceLineNo">076</span>    *<a name="line.76"></a>
-<span class="sourceLineNo">077</span>    * @param o The object to serialize.<a name="line.77"></a>
-<span class="sourceLineNo">078</span>    * @return The serialized object.<a name="line.78"></a>
-<span class="sourceLineNo">079</span>    */<a name="line.79"></a>
-<span class="sourceLineNo">080</span>   public final String toString(Object o) {<a name="line.80"></a>
-<span class="sourceLineNo">081</span>      try {<a name="line.81"></a>
-<span class="sourceLineNo">082</span>         return serialize(o);<a name="line.82"></a>
-<span class="sourceLineNo">083</span>      } catch (Exception e) {<a name="line.83"></a>
-<span class="sourceLineNo">084</span>         throw new RuntimeException(e);<a name="line.84"></a>
-<span class="sourceLineNo">085</span>      }<a name="line.85"></a>
-<span class="sourceLineNo">086</span>   }<a name="line.86"></a>
-<span class="sourceLineNo">087</span><a name="line.87"></a>
-<span class="sourceLineNo">088</span>   /**<a name="line.88"></a>
-<span class="sourceLineNo">089</span>    * Wraps the specified object inside a {@link StringObject}.<a name="line.89"></a>
-<span class="sourceLineNo">090</span>    *<a name="line.90"></a>
-<span class="sourceLineNo">091</span>    * @param o The object to wrap.<a name="line.91"></a>
-<span class="sourceLineNo">092</span>    * @return The wrapped object.<a name="line.92"></a>
-<span class="sourceLineNo">093</span>    */<a name="line.93"></a>
-<span class="sourceLineNo">094</span>   public final StringObject toStringObject(Object o) {<a name="line.94"></a>
-<span class="sourceLineNo">095</span>      return new StringObject(this, o);<a name="line.95"></a>
-<span class="sourceLineNo">096</span>   }<a name="line.96"></a>
-<span class="sourceLineNo">097</span><a name="line.97"></a>
-<span class="sourceLineNo">098</span>   /**<a name="line.98"></a>
-<span class="sourceLineNo">099</span>    * Convenience method for serializing an object and sending it to STDOUT.<a name="line.99"></a>
-<span class="sourceLineNo">100</span>    *<a name="line.100"></a>
-<span class="sourceLineNo">101</span>    * @param o The object to serialize.<a name="line.101"></a>
-<span class="sourceLineNo">102</span>    * @return This object (for method chaining).<a name="line.102"></a>
-<span class="sourceLineNo">103</span>    */<a name="line.103"></a>
-<span class="sourceLineNo">104</span>   public final WriterSerializer println(Object o) {<a name="line.104"></a>
-<span class="sourceLineNo">105</span>      System.out.println(toString(o));  // NOT DEBUG<a name="line.105"></a>
-<span class="sourceLineNo">106</span>      return this;<a name="line.106"></a>
-<span class="sourceLineNo">107</span>   }<a name="line.107"></a>
-<span class="sourceLineNo">108</span>}<a name="line.108"></a>
+<span class="sourceLineNo">049</span>   //--------------------------------------------------------------------------------<a name="line.49"></a>
+<span class="sourceLineNo">050</span>   // Abstract methods<a name="line.50"></a>
+<span class="sourceLineNo">051</span>   //--------------------------------------------------------------------------------<a name="line.51"></a>
+<span class="sourceLineNo">052</span><a name="line.52"></a>
+<span class="sourceLineNo">053</span>   @Override /* SerializerSession */<a name="line.53"></a>
+<span class="sourceLineNo">054</span>   public abstract WriterSerializerSession createSession(SerializerSessionArgs args);<a name="line.54"></a>
+<span class="sourceLineNo">055</span><a name="line.55"></a>
+<span class="sourceLineNo">056</span><a name="line.56"></a>
+<span class="sourceLineNo">057</span>   //--------------------------------------------------------------------------------<a name="line.57"></a>
+<span class="sourceLineNo">058</span>   // Other methods<a name="line.58"></a>
+<span class="sourceLineNo">059</span>   //--------------------------------------------------------------------------------<a name="line.59"></a>
+<span class="sourceLineNo">060</span><a name="line.60"></a>
+<span class="sourceLineNo">061</span>   @Override /* Serializer */<a name="line.61"></a>
+<span class="sourceLineNo">062</span>   public final boolean isWriterSerializer() {<a name="line.62"></a>
+<span class="sourceLineNo">063</span>      return true;<a name="line.63"></a>
+<span class="sourceLineNo">064</span>   }<a name="line.64"></a>
+<span class="sourceLineNo">065</span><a name="line.65"></a>
+<span class="sourceLineNo">066</span>   /**<a name="line.66"></a>
+<span class="sourceLineNo">067</span>    * Convenience method for serializing an object to a &lt;code&gt;String&lt;/code&gt;.<a name="line.67"></a>
+<span class="sourceLineNo">068</span>    *<a name="line.68"></a>
+<span class="sourceLineNo">069</span>    * @param o The object to serialize.<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    * @return The output serialized to a string.<a name="line.70"></a>
+<span class="sourceLineNo">071</span>    * @throws SerializeException If a problem occurred trying to convert the output.<a name="line.71"></a>
+<span class="sourceLineNo">072</span>    */<a name="line.72"></a>
+<span class="sourceLineNo">073</span>   @Override /* Serializer */<a name="line.73"></a>
+<span class="sourceLineNo">074</span>   public final String serialize(Object o) throws SerializeException {<a name="line.74"></a>
+<span class="sourceLineNo">075</span>      return createSession(createDefaultSessionArgs()).serialize(o);<a name="line.75"></a>
+<span class="sourceLineNo">076</span>   }<a name="line.76"></a>
+<span class="sourceLineNo">077</span><a name="line.77"></a>
+<span class="sourceLineNo">078</span>   /**<a name="line.78"></a>
+<span class="sourceLineNo">079</span>    * Identical to {@link #serialize(Object)} except throws a {@link RuntimeException} instead of a {@link SerializeException}.<a name="line.79"></a>
+<span class="sourceLineNo">080</span>    *<a name="line.80"></a>
+<span class="sourceLineNo">081</span>    * &lt;p&gt;<a name="line.81"></a>
+<span class="sourceLineNo">082</span>    * This is typically good enough for debugging purposes.<a name="line.82"></a>
+<span class="sourceLineNo">083</span>    *<a name="line.83"></a>
+<span class="sourceLineNo">084</span>    * @param o The object to serialize.<a name="line.84"></a>
+<span class="sourceLineNo">085</span>    * @return The serialized object.<a name="line.85"></a>
+<span class="sourceLineNo">086</span>    */<a name="line.86"></a>
+<span class="sourceLineNo">087</span>   public final String toString(Object o) {<a name="line.87"></a>
+<span class="sourceLineNo">088</span>      try {<a name="line.88"></a>
+<span class="sourceLineNo">089</span>         return serialize(o);<a name="line.89"></a>
+<span class="sourceLineNo">090</span>      } catch (Exception e) {<a name="line.90"></a>
+<span class="sourceLineNo">091</span>         throw new RuntimeException(e);<a name="line.91"></a>
+<span class="sourceLineNo">092</span>      }<a name="line.92"></a>
+<span class="sourceLineNo">093</span>   }<a name="line.93"></a>
+<span class="sourceLineNo">094</span><a name="line.94"></a>
+<span class="sourceLineNo">095</span>   /**<a name="line.95"></a>
+<span class="sourceLineNo">096</span>    * Wraps the specified object inside a {@link StringObject}.<a name="line.96"></a>
+<span class="sourceLineNo">097</span>    *<a name="line.97"></a>
+<span class="sourceLineNo">098</span>    * @param o The object to wrap.<a name="line.98"></a>
+<span class="sourceLineNo">099</span>    * @return The wrapped object.<a name="line.99"></a>
+<span class="sourceLineNo">100</span>    */<a name="line.100"></a>
+<span class="sourceLineNo">101</span>   public final StringObject toStringObject(Object o) {<a name="line.101"></a>
+<span class="sourceLineNo">102</span>      return new StringObject(this, o);<a name="line.102"></a>
+<span class="sourceLineNo">103</span>   }<a name="line.103"></a>
+<span class="sourceLineNo">104</span><a name="line.104"></a>
+<span class="sourceLineNo">105</span>   /**<a name="line.105"></a>
+<span class="sourceLineNo">106</span>    * Convenience method for serializing an object and sending it to STDOUT.<a name="line.106"></a>
+<span class="sourceLineNo">107</span>    *<a name="line.107"></a>
+<span class="sourceLineNo">108</span>    * @param o The object to serialize.<a name="line.108"></a>
+<span class="sourceLineNo">109</span>    * @return This object (for method chaining).<a name="line.109"></a>
+<span class="sourceLineNo">110</span>    */<a name="line.110"></a>
+<span class="sourceLineNo">111</span>   public final WriterSerializer println(Object o) {<a name="line.111"></a>
+<span class="sourceLineNo">112</span>      System.out.println(toString(o));  // NOT DEBUG<a name="line.112"></a>
+<span class="sourceLineNo">113</span>      return this;<a name="line.113"></a>
+<span class="sourceLineNo">114</span>   }<a name="line.114"></a>
+<span class="sourceLineNo">115</span>}<a name="line.115"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/serializer/WriterSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/serializer/WriterSerializerSession.html b/content/site/apidocs/src-html/org/apache/juneau/serializer/WriterSerializerSession.html
index 69ce1f0..f118b64 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/serializer/WriterSerializerSession.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/serializer/WriterSerializerSession.html
@@ -51,41 +51,40 @@
 <span class="sourceLineNo">043</span>    *    These specify session-level information such as locale and URI context.<a name="line.43"></a>
 <span class="sourceLineNo">044</span>    *    It also include session-level properties that override the properties defined on the bean and<a name="line.44"></a>
 <span class="sourceLineNo">045</span>    *    serializer contexts.<a name="line.45"></a>
-<span class="sourceLineNo">046</span>    *    &lt;br&gt;If &lt;jk&gt;null&lt;/jk&gt;, defaults to {@link SerializerSessionArgs#DEFAULT}.<a name="line.46"></a>
-<span class="sourceLineNo">047</span>    */<a name="line.47"></a>
-<span class="sourceLineNo">048</span>   protected WriterSerializerSession(SerializerContext ctx, SerializerSessionArgs args) {<a name="line.48"></a>
-<span class="sourceLineNo">049</span>      super(ctx, args);<a name="line.49"></a>
-<span class="sourceLineNo">050</span>   }<a name="line.50"></a>
-<span class="sourceLineNo">051</span><a name="line.51"></a>
-<span class="sourceLineNo">052</span>   /**<a name="line.52"></a>
-<span class="sourceLineNo">053</span>    * Constructor for sessions that don't require context.<a name="line.53"></a>
-<span class="sourceLineNo">054</span>    *<a name="line.54"></a>
-<span class="sourceLineNo">055</span>    * @param args<a name="line.55"></a>
-<span class="sourceLineNo">056</span>    *    Runtime session arguments.<a name="line.56"></a>
-<span class="sourceLineNo">057</span>    */<a name="line.57"></a>
-<span class="sourceLineNo">058</span>   protected WriterSerializerSession(SerializerSessionArgs args) {<a name="line.58"></a>
-<span class="sourceLineNo">059</span>      this(null, args);<a name="line.59"></a>
-<span class="sourceLineNo">060</span>   }<a name="line.60"></a>
-<span class="sourceLineNo">061</span><a name="line.61"></a>
-<span class="sourceLineNo">062</span>   @Override /* SerializerSession */<a name="line.62"></a>
-<span class="sourceLineNo">063</span>   public final boolean isWriterSerializer() {<a name="line.63"></a>
-<span class="sourceLineNo">064</span>      return true;<a name="line.64"></a>
-<span class="sourceLineNo">065</span>   }<a name="line.65"></a>
-<span class="sourceLineNo">066</span><a name="line.66"></a>
-<span class="sourceLineNo">067</span>   /**<a name="line.67"></a>
-<span class="sourceLineNo">068</span>    * Convenience method for serializing an object to a &lt;code&gt;String&lt;/code&gt;.<a name="line.68"></a>
-<span class="sourceLineNo">069</span>    *<a name="line.69"></a>
-<span class="sourceLineNo">070</span>    * @param o The object to serialize.<a name="line.70"></a>
-<span class="sourceLineNo">071</span>    * @return The output serialized to a string.<a name="line.71"></a>
-<span class="sourceLineNo">072</span>    * @throws SerializeException If a problem occurred trying to convert the output.<a name="line.72"></a>
-<span class="sourceLineNo">073</span>    */<a name="line.73"></a>
-<span class="sourceLineNo">074</span>   @Override /* SerializerSession */<a name="line.74"></a>
-<span class="sourceLineNo">075</span>   public final String serialize(Object o) throws SerializeException {<a name="line.75"></a>
-<span class="sourceLineNo">076</span>      StringWriter w = new StringWriter();<a name="line.76"></a>
-<span class="sourceLineNo">077</span>      serialize(w, o);<a name="line.77"></a>
-<span class="sourceLineNo">078</span>      return w.toString();<a name="line.78"></a>
-<span class="sourceLineNo">079</span>   }<a name="line.79"></a>
-<span class="sourceLineNo">080</span>}<a name="line.80"></a>
+<span class="sourceLineNo">046</span>    */<a name="line.46"></a>
+<span class="sourceLineNo">047</span>   protected WriterSerializerSession(SerializerContext ctx, SerializerSessionArgs args) {<a name="line.47"></a>
+<span class="sourceLineNo">048</span>      super(ctx, args);<a name="line.48"></a>
+<span class="sourceLineNo">049</span>   }<a name="line.49"></a>
+<span class="sourceLineNo">050</span><a name="line.50"></a>
+<span class="sourceLineNo">051</span>   /**<a name="line.51"></a>
+<span class="sourceLineNo">052</span>    * Constructor for sessions that don't require context.<a name="line.52"></a>
+<span class="sourceLineNo">053</span>    *<a name="line.53"></a>
+<span class="sourceLineNo">054</span>    * @param args<a name="line.54"></a>
+<span class="sourceLineNo">055</span>    *    Runtime session arguments.<a name="line.55"></a>
+<span class="sourceLineNo">056</span>    */<a name="line.56"></a>
+<span class="sourceLineNo">057</span>   protected WriterSerializerSession(SerializerSessionArgs args) {<a name="line.57"></a>
+<span class="sourceLineNo">058</span>      this(null, args);<a name="line.58"></a>
+<span class="sourceLineNo">059</span>   }<a name="line.59"></a>
+<span class="sourceLineNo">060</span><a name="line.60"></a>
+<span class="sourceLineNo">061</span>   @Override /* SerializerSession */<a name="line.61"></a>
+<span class="sourceLineNo">062</span>   public final boolean isWriterSerializer() {<a name="line.62"></a>
+<span class="sourceLineNo">063</span>      return true;<a name="line.63"></a>
+<span class="sourceLineNo">064</span>   }<a name="line.64"></a>
+<span class="sourceLineNo">065</span><a name="line.65"></a>
+<span class="sourceLineNo">066</span>   /**<a name="line.66"></a>
+<span class="sourceLineNo">067</span>    * Convenience method for serializing an object to a &lt;code&gt;String&lt;/code&gt;.<a name="line.67"></a>
+<span class="sourceLineNo">068</span>    *<a name="line.68"></a>
+<span class="sourceLineNo">069</span>    * @param o The object to serialize.<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    * @return The output serialized to a string.<a name="line.70"></a>
+<span class="sourceLineNo">071</span>    * @throws SerializeException If a problem occurred trying to convert the output.<a name="line.71"></a>
+<span class="sourceLineNo">072</span>    */<a name="line.72"></a>
+<span class="sourceLineNo">073</span>   @Override /* SerializerSession */<a name="line.73"></a>
+<span class="sourceLineNo">074</span>   public final String serialize(Object o) throws SerializeException {<a name="line.74"></a>
+<span class="sourceLineNo">075</span>      StringWriter w = new StringWriter();<a name="line.75"></a>
+<span class="sourceLineNo">076</span>      serialize(w, o);<a name="line.76"></a>
+<span class="sourceLineNo">077</span>      return w.toString();<a name="line.77"></a>
+<span class="sourceLineNo">078</span>   }<a name="line.78"></a>
+<span class="sourceLineNo">079</span>}<a name="line.79"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/soap/SoapXmlSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/soap/SoapXmlSerializer.html b/content/site/apidocs/src-html/org/apache/juneau/soap/SoapXmlSerializer.html
index ccca6f4..8edbe35 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/soap/SoapXmlSerializer.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/soap/SoapXmlSerializer.html
@@ -21,52 +21,50 @@
 <span class="sourceLineNo">013</span>package org.apache.juneau.soap;<a name="line.13"></a>
 <span class="sourceLineNo">014</span><a name="line.14"></a>
 <span class="sourceLineNo">015</span>import org.apache.juneau.*;<a name="line.15"></a>
-<span class="sourceLineNo">016</span>import org.apache.juneau.annotation.*;<a name="line.16"></a>
-<span class="sourceLineNo">017</span>import org.apache.juneau.serializer.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span>import org.apache.juneau.xml.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span><a name="line.19"></a>
-<span class="sourceLineNo">020</span>/**<a name="line.20"></a>
-<span class="sourceLineNo">021</span> * Serializes POJOs to HTTP responses as XML+SOAP.<a name="line.21"></a>
-<span class="sourceLineNo">022</span> *<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.23"></a>
-<span class="sourceLineNo">024</span> *<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/xml+soap&lt;/code&gt;<a name="line.25"></a>
-<span class="sourceLineNo">026</span> *<a name="line.26"></a>
-<span class="sourceLineNo">027</span> * &lt;p&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/xml+soap&lt;/code&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> *<a name="line.31"></a>
-<span class="sourceLineNo">032</span> * Essentially the same output as {@link XmlDocSerializer}, except wrapped in a standard SOAP envelope.<a name="line.32"></a>
-<span class="sourceLineNo">033</span> *<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *<a name="line.35"></a>
-<span class="sourceLineNo">036</span> * This class has the following properties associated with it:<a name="line.36"></a>
-<span class="sourceLineNo">037</span> * &lt;ul&gt;<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;{@link SoapXmlSerializerContext}<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *    &lt;li&gt;{@link BeanContext}<a name="line.39"></a>
-<span class="sourceLineNo">040</span> * &lt;/ul&gt;<a name="line.40"></a>
-<span class="sourceLineNo">041</span> */<a name="line.41"></a>
-<span class="sourceLineNo">042</span>@Produces(value="text/xml+soap",contentType="text/xml")<a name="line.42"></a>
-<span class="sourceLineNo">043</span>public final class SoapXmlSerializer extends XmlSerializer {<a name="line.43"></a>
+<span class="sourceLineNo">016</span>import org.apache.juneau.serializer.*;<a name="line.16"></a>
+<span class="sourceLineNo">017</span>import org.apache.juneau.xml.*;<a name="line.17"></a>
+<span class="sourceLineNo">018</span><a name="line.18"></a>
+<span class="sourceLineNo">019</span>/**<a name="line.19"></a>
+<span class="sourceLineNo">020</span> * Serializes POJOs to HTTP responses as XML+SOAP.<a name="line.20"></a>
+<span class="sourceLineNo">021</span> *<a name="line.21"></a>
+<span class="sourceLineNo">022</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.22"></a>
+<span class="sourceLineNo">023</span> *<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/xml+soap&lt;/code&gt;<a name="line.24"></a>
+<span class="sourceLineNo">025</span> *<a name="line.25"></a>
+<span class="sourceLineNo">026</span> * &lt;p&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/xml+soap&lt;/code&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> *<a name="line.30"></a>
+<span class="sourceLineNo">031</span> * Essentially the same output as {@link XmlDocSerializer}, except wrapped in a standard SOAP envelope.<a name="line.31"></a>
+<span class="sourceLineNo">032</span> *<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.33"></a>
+<span class="sourceLineNo">034</span> *<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * This class has the following properties associated with it:<a name="line.35"></a>
+<span class="sourceLineNo">036</span> * &lt;ul&gt;<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;{@link SoapXmlSerializerContext}<a name="line.37"></a>
+<span class="sourceLineNo">038</span> *    &lt;li&gt;{@link BeanContext}<a name="line.38"></a>
+<span class="sourceLineNo">039</span> * &lt;/ul&gt;<a name="line.39"></a>
+<span class="sourceLineNo">040</span> */<a name="line.40"></a>
+<span class="sourceLineNo">041</span>public final class SoapXmlSerializer extends XmlSerializer {<a name="line.41"></a>
+<span class="sourceLineNo">042</span><a name="line.42"></a>
+<span class="sourceLineNo">043</span>   private final SoapXmlSerializerContext ctx;<a name="line.43"></a>
 <span class="sourceLineNo">044</span><a name="line.44"></a>
-<span class="sourceLineNo">045</span>   private final SoapXmlSerializerContext ctx;<a name="line.45"></a>
-<span class="sourceLineNo">046</span><a name="line.46"></a>
-<span class="sourceLineNo">047</span>   /**<a name="line.47"></a>
-<span class="sourceLineNo">048</span>    * Constructor.<a name="line.48"></a>
-<span class="sourceLineNo">049</span>    *<a name="line.49"></a>
-<span class="sourceLineNo">050</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.50"></a>
-<span class="sourceLineNo">051</span>    */<a name="line.51"></a>
-<span class="sourceLineNo">052</span>   public SoapXmlSerializer(PropertyStore propertyStore) {<a name="line.52"></a>
-<span class="sourceLineNo">053</span>      super(propertyStore);<a name="line.53"></a>
-<span class="sourceLineNo">054</span>      this.ctx = createContext(SoapXmlSerializerContext.class);<a name="line.54"></a>
-<span class="sourceLineNo">055</span>   }<a name="line.55"></a>
-<span class="sourceLineNo">056</span><a name="line.56"></a>
-<span class="sourceLineNo">057</span>   @Override /* Serializer */<a name="line.57"></a>
-<span class="sourceLineNo">058</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.58"></a>
-<span class="sourceLineNo">059</span>      return new SoapXmlSerializerSession(ctx, args);<a name="line.59"></a>
-<span class="sourceLineNo">060</span>   }<a name="line.60"></a>
-<span class="sourceLineNo">061</span>}<a name="line.61"></a>
+<span class="sourceLineNo">045</span>   /**<a name="line.45"></a>
+<span class="sourceLineNo">046</span>    * Constructor.<a name="line.46"></a>
+<span class="sourceLineNo">047</span>    *<a name="line.47"></a>
+<span class="sourceLineNo">048</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.48"></a>
+<span class="sourceLineNo">049</span>    */<a name="line.49"></a>
+<span class="sourceLineNo">050</span>   public SoapXmlSerializer(PropertyStore propertyStore) {<a name="line.50"></a>
+<span class="sourceLineNo">051</span>      super(propertyStore, "text/xml", "text/xml+soap");<a name="line.51"></a>
+<span class="sourceLineNo">052</span>      this.ctx = createContext(SoapXmlSerializerContext.class);<a name="line.52"></a>
+<span class="sourceLineNo">053</span>   }<a name="line.53"></a>
+<span class="sourceLineNo">054</span><a name="line.54"></a>
+<span class="sourceLineNo">055</span>   @Override /* Serializer */<a name="line.55"></a>
+<span class="sourceLineNo">056</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.56"></a>
+<span class="sourceLineNo">057</span>      return new SoapXmlSerializerSession(ctx, args);<a name="line.57"></a>
+<span class="sourceLineNo">058</span>   }<a name="line.58"></a>
+<span class="sourceLineNo">059</span>}<a name="line.59"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/soap/SoapXmlSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/soap/SoapXmlSerializerSession.html b/content/site/apidocs/src-html/org/apache/juneau/soap/SoapXmlSerializerSession.html
index 9e76d9c..a4554b2 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/soap/SoapXmlSerializerSession.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/soap/SoapXmlSerializerSession.html
@@ -48,39 +48,38 @@
 <span class="sourceLineNo">040</span>    *    These specify session-level information such as locale and URI context.<a name="line.40"></a>
 <span class="sourceLineNo">041</span>    *    It also include session-level properties that override the properties defined on the bean and<a name="line.41"></a>
 <span class="sourceLineNo">042</span>    *    serializer contexts.<a name="line.42"></a>
-<span class="sourceLineNo">043</span>    *    &lt;br&gt;If &lt;jk&gt;null&lt;/jk&gt;, defaults to {@link SerializerSessionArgs#DEFAULT}.<a name="line.43"></a>
-<span class="sourceLineNo">044</span>    */<a name="line.44"></a>
-<span class="sourceLineNo">045</span>   public SoapXmlSerializerSession(SoapXmlSerializerContext ctx, SerializerSessionArgs args) {<a name="line.45"></a>
-<span class="sourceLineNo">046</span>      super(ctx, args);<a name="line.46"></a>
-<span class="sourceLineNo">047</span>   }<a name="line.47"></a>
-<span class="sourceLineNo">048</span><a name="line.48"></a>
-<span class="sourceLineNo">049</span>   //--------------------------------------------------------------------------------<a name="line.49"></a>
-<span class="sourceLineNo">050</span>   // Overridden methods<a name="line.50"></a>
-<span class="sourceLineNo">051</span>   //--------------------------------------------------------------------------------<a name="line.51"></a>
-<span class="sourceLineNo">052</span><a name="line.52"></a>
-<span class="sourceLineNo">053</span>   @Override /* SerializerSession */<a name="line.53"></a>
-<span class="sourceLineNo">054</span>   protected void doSerialize(SerializerPipe out, Object o) throws Exception {<a name="line.54"></a>
-<span class="sourceLineNo">055</span>      XmlWriter w = getXmlWriter(out);<a name="line.55"></a>
-<span class="sourceLineNo">056</span>      w.append("&lt;?xml")<a name="line.56"></a>
-<span class="sourceLineNo">057</span>         .attr("version", "1.0")<a name="line.57"></a>
-<span class="sourceLineNo">058</span>         .attr("encoding", "UTF-8")<a name="line.58"></a>
-<span class="sourceLineNo">059</span>         .appendln("?&gt;");<a name="line.59"></a>
-<span class="sourceLineNo">060</span>      w.oTag("soap", "Envelope")<a name="line.60"></a>
-<span class="sourceLineNo">061</span>         .attr("xmlns", "soap", getStringProperty(SOAPXML_SOAPAction, "http://www.w3.org/2003/05/soap-envelope"))<a name="line.61"></a>
-<span class="sourceLineNo">062</span>         .appendln("&gt;");<a name="line.62"></a>
-<span class="sourceLineNo">063</span>      w.sTag(1, "soap", "Body").nl(1);<a name="line.63"></a>
-<span class="sourceLineNo">064</span>      indent += 2;<a name="line.64"></a>
-<span class="sourceLineNo">065</span>      w.flush();<a name="line.65"></a>
-<span class="sourceLineNo">066</span>      super.doSerialize(out, o);<a name="line.66"></a>
-<span class="sourceLineNo">067</span>      w.ie(1).eTag("soap", "Body").nl(1);<a name="line.67"></a>
-<span class="sourceLineNo">068</span>      w.eTag("soap", "Envelope").nl(0);<a name="line.68"></a>
-<span class="sourceLineNo">069</span>   }<a name="line.69"></a>
-<span class="sourceLineNo">070</span><a name="line.70"></a>
-<span class="sourceLineNo">071</span>   @Override /* Serializer */<a name="line.71"></a>
-<span class="sourceLineNo">072</span>   public Map&lt;String,String&gt; getResponseHeaders() {<a name="line.72"></a>
-<span class="sourceLineNo">073</span>      return new AMap&lt;String,String&gt;().append("SOAPAction", getStringProperty(SOAPXML_SOAPAction, "http://www.w3.org/2003/05/soap-envelope"));<a name="line.73"></a>
-<span class="sourceLineNo">074</span>   }<a name="line.74"></a>
-<span class="sourceLineNo">075</span>}<a name="line.75"></a>
+<span class="sourceLineNo">043</span>    */<a name="line.43"></a>
+<span class="sourceLineNo">044</span>   public SoapXmlSerializerSession(SoapXmlSerializerContext ctx, SerializerSessionArgs args) {<a name="line.44"></a>
+<span class="sourceLineNo">045</span>      super(ctx, args);<a name="line.45"></a>
+<span class="sourceLineNo">046</span>   }<a name="line.46"></a>
+<span class="sourceLineNo">047</span><a name="line.47"></a>
+<span class="sourceLineNo">048</span>   //--------------------------------------------------------------------------------<a name="line.48"></a>
+<span class="sourceLineNo">049</span>   // Overridden methods<a name="line.49"></a>
+<span class="sourceLineNo">050</span>   //--------------------------------------------------------------------------------<a name="line.50"></a>
+<span class="sourceLineNo">051</span><a name="line.51"></a>
+<span class="sourceLineNo">052</span>   @Override /* SerializerSession */<a name="line.52"></a>
+<span class="sourceLineNo">053</span>   protected void doSerialize(SerializerPipe out, Object o) throws Exception {<a name="line.53"></a>
+<span class="sourceLineNo">054</span>      XmlWriter w = getXmlWriter(out);<a name="line.54"></a>
+<span class="sourceLineNo">055</span>      w.append("&lt;?xml")<a name="line.55"></a>
+<span class="sourceLineNo">056</span>         .attr("version", "1.0")<a name="line.56"></a>
+<span class="sourceLineNo">057</span>         .attr("encoding", "UTF-8")<a name="line.57"></a>
+<span class="sourceLineNo">058</span>         .appendln("?&gt;");<a name="line.58"></a>
+<span class="sourceLineNo">059</span>      w.oTag("soap", "Envelope")<a name="line.59"></a>
+<span class="sourceLineNo">060</span>         .attr("xmlns", "soap", getStringProperty(SOAPXML_SOAPAction, "http://www.w3.org/2003/05/soap-envelope"))<a name="line.60"></a>
+<span class="sourceLineNo">061</span>         .appendln("&gt;");<a name="line.61"></a>
+<span class="sourceLineNo">062</span>      w.sTag(1, "soap", "Body").nl(1);<a name="line.62"></a>
+<span class="sourceLineNo">063</span>      indent += 2;<a name="line.63"></a>
+<span class="sourceLineNo">064</span>      w.flush();<a name="line.64"></a>
+<span class="sourceLineNo">065</span>      super.doSerialize(out, o);<a name="line.65"></a>
+<span class="sourceLineNo">066</span>      w.ie(1).eTag("soap", "Body").nl(1);<a name="line.66"></a>
+<span class="sourceLineNo">067</span>      w.eTag("soap", "Envelope").nl(0);<a name="line.67"></a>
+<span class="sourceLineNo">068</span>   }<a name="line.68"></a>
+<span class="sourceLineNo">069</span><a name="line.69"></a>
+<span class="sourceLineNo">070</span>   @Override /* Serializer */<a name="line.70"></a>
+<span class="sourceLineNo">071</span>   public Map&lt;String,String&gt; getResponseHeaders() {<a name="line.71"></a>
+<span class="sourceLineNo">072</span>      return new AMap&lt;String,String&gt;().append("SOAPAction", getStringProperty(SOAPXML_SOAPAction, "http://www.w3.org/2003/05/soap-envelope"));<a name="line.72"></a>
+<span class="sourceLineNo">073</span>   }<a name="line.73"></a>
+<span class="sourceLineNo">074</span>}<a name="line.74"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/uon/UonParser.Decoding.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/uon/UonParser.Decoding.html b/content/site/apidocs/src-html/org/apache/juneau/uon/UonParser.Decoding.html
index 5d2497a..bab7cb2 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/uon/UonParser.Decoding.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/uon/UonParser.Decoding.html
@@ -23,84 +23,95 @@
 <span class="sourceLineNo">015</span>import static org.apache.juneau.uon.UonParserContext.*;<a name="line.15"></a>
 <span class="sourceLineNo">016</span><a name="line.16"></a>
 <span class="sourceLineNo">017</span>import org.apache.juneau.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span>import org.apache.juneau.annotation.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.parser.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span><a name="line.20"></a>
-<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
-<span class="sourceLineNo">022</span> * Parses UON (a notation for URL-encoded query parameter values) text into POJO models.<a name="line.22"></a>
-<span class="sourceLineNo">023</span> *<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * Handles &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/uon&lt;/code&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * This parser uses a state machine, which makes it very fast and efficient.<a name="line.30"></a>
-<span class="sourceLineNo">031</span> *<a name="line.31"></a>
-<span class="sourceLineNo">032</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.32"></a>
-<span class="sourceLineNo">033</span> *<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * This class has the following properties associated with it:<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * &lt;ul&gt;<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *    &lt;li&gt;{@link UonParserContext}<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *    &lt;li&gt;{@link ParserContext}<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;{@link BeanContext}<a name="line.38"></a>
-<span class="sourceLineNo">039</span> * &lt;/ul&gt;<a name="line.39"></a>
-<span class="sourceLineNo">040</span> */<a name="line.40"></a>
-<span class="sourceLineNo">041</span>@Consumes("text/uon")<a name="line.41"></a>
-<span class="sourceLineNo">042</span>public class UonParser extends ReaderParser {<a name="line.42"></a>
-<span class="sourceLineNo">043</span><a name="line.43"></a>
-<span class="sourceLineNo">044</span>   /** Reusable instance of {@link UonParser}, all default settings. */<a name="line.44"></a>
-<span class="sourceLineNo">045</span>   public static final UonParser DEFAULT = new UonParser(PropertyStore.create());<a name="line.45"></a>
-<span class="sourceLineNo">046</span><a name="line.46"></a>
-<span class="sourceLineNo">047</span>   /** Reusable instance of {@link UonParser} with decodeChars set to true. */<a name="line.47"></a>
-<span class="sourceLineNo">048</span>   public static final UonParser DEFAULT_DECODING = new UonParser.Decoding(PropertyStore.create());<a name="line.48"></a>
-<span class="sourceLineNo">049</span><a name="line.49"></a>
-<span class="sourceLineNo">050</span><a name="line.50"></a>
-<span class="sourceLineNo">051</span>   /** Default parser, decoding. */<a name="line.51"></a>
-<span class="sourceLineNo">052</span>   public static class Decoding extends UonParser {<a name="line.52"></a>
-<span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>      /**<a name="line.54"></a>
-<span class="sourceLineNo">055</span>       * Constructor.<a name="line.55"></a>
-<span class="sourceLineNo">056</span>       *<a name="line.56"></a>
-<span class="sourceLineNo">057</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.57"></a>
-<span class="sourceLineNo">058</span>       */<a name="line.58"></a>
-<span class="sourceLineNo">059</span>      public Decoding(PropertyStore propertyStore) {<a name="line.59"></a>
-<span class="sourceLineNo">060</span>         super(propertyStore.copy().append(UON_decodeChars, true));<a name="line.60"></a>
-<span class="sourceLineNo">061</span>      }<a name="line.61"></a>
-<span class="sourceLineNo">062</span>   }<a name="line.62"></a>
-<span class="sourceLineNo">063</span><a name="line.63"></a>
+<span class="sourceLineNo">018</span>import org.apache.juneau.parser.*;<a name="line.18"></a>
+<span class="sourceLineNo">019</span><a name="line.19"></a>
+<span class="sourceLineNo">020</span>/**<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * Parses UON (a notation for URL-encoded query parameter values) text into POJO models.<a name="line.21"></a>
+<span class="sourceLineNo">022</span> *<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * Handles &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/uon&lt;/code&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * This parser uses a state machine, which makes it very fast and efficient.<a name="line.29"></a>
+<span class="sourceLineNo">030</span> *<a name="line.30"></a>
+<span class="sourceLineNo">031</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.31"></a>
+<span class="sourceLineNo">032</span> *<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * This class has the following properties associated with it:<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * &lt;ul&gt;<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *    &lt;li&gt;{@link UonParserContext}<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *    &lt;li&gt;{@link ParserContext}<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;{@link BeanContext}<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * &lt;/ul&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span> */<a name="line.39"></a>
+<span class="sourceLineNo">040</span>public class UonParser extends ReaderParser {<a name="line.40"></a>
+<span class="sourceLineNo">041</span><a name="line.41"></a>
+<span class="sourceLineNo">042</span>   /** Reusable instance of {@link UonParser}, all default settings. */<a name="line.42"></a>
+<span class="sourceLineNo">043</span>   public static final UonParser DEFAULT = new UonParser(PropertyStore.create());<a name="line.43"></a>
+<span class="sourceLineNo">044</span><a name="line.44"></a>
+<span class="sourceLineNo">045</span>   /** Reusable instance of {@link UonParser} with decodeChars set to true. */<a name="line.45"></a>
+<span class="sourceLineNo">046</span>   public static final UonParser DEFAULT_DECODING = new UonParser.Decoding(PropertyStore.create());<a name="line.46"></a>
+<span class="sourceLineNo">047</span><a name="line.47"></a>
+<span class="sourceLineNo">048</span><a name="line.48"></a>
+<span class="sourceLineNo">049</span>   /** Default parser, decoding. */<a name="line.49"></a>
+<span class="sourceLineNo">050</span>   public static class Decoding extends UonParser {<a name="line.50"></a>
+<span class="sourceLineNo">051</span><a name="line.51"></a>
+<span class="sourceLineNo">052</span>      /**<a name="line.52"></a>
+<span class="sourceLineNo">053</span>       * Constructor.<a name="line.53"></a>
+<span class="sourceLineNo">054</span>       *<a name="line.54"></a>
+<span class="sourceLineNo">055</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.55"></a>
+<span class="sourceLineNo">056</span>       */<a name="line.56"></a>
+<span class="sourceLineNo">057</span>      public Decoding(PropertyStore propertyStore) {<a name="line.57"></a>
+<span class="sourceLineNo">058</span>         super(propertyStore.copy().append(UON_decodeChars, true));<a name="line.58"></a>
+<span class="sourceLineNo">059</span>      }<a name="line.59"></a>
+<span class="sourceLineNo">060</span>   }<a name="line.60"></a>
+<span class="sourceLineNo">061</span><a name="line.61"></a>
+<span class="sourceLineNo">062</span><a name="line.62"></a>
+<span class="sourceLineNo">063</span>   private final UonParserContext ctx;<a name="line.63"></a>
 <span class="sourceLineNo">064</span><a name="line.64"></a>
-<span class="sourceLineNo">065</span>   private final UonParserContext ctx;<a name="line.65"></a>
-<span class="sourceLineNo">066</span><a name="line.66"></a>
-<span class="sourceLineNo">067</span>   /**<a name="line.67"></a>
-<span class="sourceLineNo">068</span>    * Constructor.<a name="line.68"></a>
-<span class="sourceLineNo">069</span>    *<a name="line.69"></a>
-<span class="sourceLineNo">070</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.70"></a>
-<span class="sourceLineNo">071</span>    */<a name="line.71"></a>
-<span class="sourceLineNo">072</span>   public UonParser(PropertyStore propertyStore) {<a name="line.72"></a>
-<span class="sourceLineNo">073</span>      super(propertyStore);<a name="line.73"></a>
-<span class="sourceLineNo">074</span>      this.ctx = createContext(UonParserContext.class);<a name="line.74"></a>
-<span class="sourceLineNo">075</span>   }<a name="line.75"></a>
-<span class="sourceLineNo">076</span><a name="line.76"></a>
-<span class="sourceLineNo">077</span>   @Override /* CoreObject */<a name="line.77"></a>
-<span class="sourceLineNo">078</span>   public UonParserBuilder builder() {<a name="line.78"></a>
-<span class="sourceLineNo">079</span>      return new UonParserBuilder(propertyStore);<a name="line.79"></a>
-<span class="sourceLineNo">080</span>   }<a name="line.80"></a>
-<span class="sourceLineNo">081</span><a name="line.81"></a>
-<span class="sourceLineNo">082</span>   /**<a name="line.82"></a>
-<span class="sourceLineNo">083</span>    * Create a UON parser session for parsing parameter values.<a name="line.83"></a>
-<span class="sourceLineNo">084</span>    *<a name="line.84"></a>
-<span class="sourceLineNo">085</span>    * @return A new parser session.<a name="line.85"></a>
-<span class="sourceLineNo">086</span>    */<a name="line.86"></a>
-<span class="sourceLineNo">087</span>   protected final UonParserSession createParameterSession() {<a name="line.87"></a>
-<span class="sourceLineNo">088</span>      return new UonParserSession(ctx);<a name="line.88"></a>
-<span class="sourceLineNo">089</span>   }<a name="line.89"></a>
-<span class="sourceLineNo">090</span><a name="line.90"></a>
-<span class="sourceLineNo">091</span>   @Override /* Parser */<a name="line.91"></a>
-<span class="sourceLineNo">092</span>   public UonParserSession createSession(ParserSessionArgs args) {<a name="line.92"></a>
-<span class="sourceLineNo">093</span>      return new UonParserSession(ctx, args);<a name="line.93"></a>
-<span class="sourceLineNo">094</span>   }<a name="line.94"></a>
-<span class="sourceLineNo">095</span>}<a name="line.95"></a>
+<span class="sourceLineNo">065</span>   /**<a name="line.65"></a>
+<span class="sourceLineNo">066</span>    * Constructor.<a name="line.66"></a>
+<span class="sourceLineNo">067</span>    *<a name="line.67"></a>
+<span class="sourceLineNo">068</span>    * @param propertyStore<a name="line.68"></a>
+<span class="sourceLineNo">069</span>    *    The property store containing all the settings for this object.<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    */<a name="line.70"></a>
+<span class="sourceLineNo">071</span>   public UonParser(PropertyStore propertyStore) {<a name="line.71"></a>
+<span class="sourceLineNo">072</span>      this(propertyStore, "text/uon");<a name="line.72"></a>
+<span class="sourceLineNo">073</span>   }<a name="line.73"></a>
+<span class="sourceLineNo">074</span><a name="line.74"></a>
+<span class="sourceLineNo">075</span>   /**<a name="line.75"></a>
+<span class="sourceLineNo">076</span>    * Constructor.<a name="line.76"></a>
+<span class="sourceLineNo">077</span>    *<a name="line.77"></a>
+<span class="sourceLineNo">078</span>    * @param propertyStore<a name="line.78"></a>
+<span class="sourceLineNo">079</span>    *    The property store containing all the settings for this object.<a name="line.79"></a>
+<span class="sourceLineNo">080</span>    * @param consumes<a name="line.80"></a>
+<span class="sourceLineNo">081</span>    *    The list of media types that this parser consumes (e.g. &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;).<a name="line.81"></a>
+<span class="sourceLineNo">082</span>    */<a name="line.82"></a>
+<span class="sourceLineNo">083</span>   public UonParser(PropertyStore propertyStore, String...consumes) {<a name="line.83"></a>
+<span class="sourceLineNo">084</span>      super(propertyStore, consumes);<a name="line.84"></a>
+<span class="sourceLineNo">085</span>      this.ctx = createContext(UonParserContext.class);<a name="line.85"></a>
+<span class="sourceLineNo">086</span>   }<a name="line.86"></a>
+<span class="sourceLineNo">087</span><a name="line.87"></a>
+<span class="sourceLineNo">088</span>   @Override /* CoreObject */<a name="line.88"></a>
+<span class="sourceLineNo">089</span>   public UonParserBuilder builder() {<a name="line.89"></a>
+<span class="sourceLineNo">090</span>      return new UonParserBuilder(propertyStore);<a name="line.90"></a>
+<span class="sourceLineNo">091</span>   }<a name="line.91"></a>
+<span class="sourceLineNo">092</span><a name="line.92"></a>
+<span class="sourceLineNo">093</span>   /**<a name="line.93"></a>
+<span class="sourceLineNo">094</span>    * Create a UON parser session for parsing parameter values.<a name="line.94"></a>
+<span class="sourceLineNo">095</span>    *<a name="line.95"></a>
+<span class="sourceLineNo">096</span>    * @return A new parser session.<a name="line.96"></a>
+<span class="sourceLineNo">097</span>    */<a name="line.97"></a>
+<span class="sourceLineNo">098</span>   protected final UonParserSession createParameterSession() {<a name="line.98"></a>
+<span class="sourceLineNo">099</span>      return new UonParserSession(ctx, createDefaultSessionArgs(), false);<a name="line.99"></a>
+<span class="sourceLineNo">100</span>   }<a name="line.100"></a>
+<span class="sourceLineNo">101</span><a name="line.101"></a>
+<span class="sourceLineNo">102</span>   @Override /* Parser */<a name="line.102"></a>
+<span class="sourceLineNo">103</span>   public UonParserSession createSession(ParserSessionArgs args) {<a name="line.103"></a>
+<span class="sourceLineNo">104</span>      return new UonParserSession(ctx, args);<a name="line.104"></a>
+<span class="sourceLineNo">105</span>   }<a name="line.105"></a>
+<span class="sourceLineNo">106</span>}<a name="line.106"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/uon/UonParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/uon/UonParser.html b/content/site/apidocs/src-html/org/apache/juneau/uon/UonParser.html
index 5d2497a..bab7cb2 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/uon/UonParser.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/uon/UonParser.html
@@ -23,84 +23,95 @@
 <span class="sourceLineNo">015</span>import static org.apache.juneau.uon.UonParserContext.*;<a name="line.15"></a>
 <span class="sourceLineNo">016</span><a name="line.16"></a>
 <span class="sourceLineNo">017</span>import org.apache.juneau.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span>import org.apache.juneau.annotation.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.parser.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span><a name="line.20"></a>
-<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
-<span class="sourceLineNo">022</span> * Parses UON (a notation for URL-encoded query parameter values) text into POJO models.<a name="line.22"></a>
-<span class="sourceLineNo">023</span> *<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * Handles &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/uon&lt;/code&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * This parser uses a state machine, which makes it very fast and efficient.<a name="line.30"></a>
-<span class="sourceLineNo">031</span> *<a name="line.31"></a>
-<span class="sourceLineNo">032</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.32"></a>
-<span class="sourceLineNo">033</span> *<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * This class has the following properties associated with it:<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * &lt;ul&gt;<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *    &lt;li&gt;{@link UonParserContext}<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *    &lt;li&gt;{@link ParserContext}<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;{@link BeanContext}<a name="line.38"></a>
-<span class="sourceLineNo">039</span> * &lt;/ul&gt;<a name="line.39"></a>
-<span class="sourceLineNo">040</span> */<a name="line.40"></a>
-<span class="sourceLineNo">041</span>@Consumes("text/uon")<a name="line.41"></a>
-<span class="sourceLineNo">042</span>public class UonParser extends ReaderParser {<a name="line.42"></a>
-<span class="sourceLineNo">043</span><a name="line.43"></a>
-<span class="sourceLineNo">044</span>   /** Reusable instance of {@link UonParser}, all default settings. */<a name="line.44"></a>
-<span class="sourceLineNo">045</span>   public static final UonParser DEFAULT = new UonParser(PropertyStore.create());<a name="line.45"></a>
-<span class="sourceLineNo">046</span><a name="line.46"></a>
-<span class="sourceLineNo">047</span>   /** Reusable instance of {@link UonParser} with decodeChars set to true. */<a name="line.47"></a>
-<span class="sourceLineNo">048</span>   public static final UonParser DEFAULT_DECODING = new UonParser.Decoding(PropertyStore.create());<a name="line.48"></a>
-<span class="sourceLineNo">049</span><a name="line.49"></a>
-<span class="sourceLineNo">050</span><a name="line.50"></a>
-<span class="sourceLineNo">051</span>   /** Default parser, decoding. */<a name="line.51"></a>
-<span class="sourceLineNo">052</span>   public static class Decoding extends UonParser {<a name="line.52"></a>
-<span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>      /**<a name="line.54"></a>
-<span class="sourceLineNo">055</span>       * Constructor.<a name="line.55"></a>
-<span class="sourceLineNo">056</span>       *<a name="line.56"></a>
-<span class="sourceLineNo">057</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.57"></a>
-<span class="sourceLineNo">058</span>       */<a name="line.58"></a>
-<span class="sourceLineNo">059</span>      public Decoding(PropertyStore propertyStore) {<a name="line.59"></a>
-<span class="sourceLineNo">060</span>         super(propertyStore.copy().append(UON_decodeChars, true));<a name="line.60"></a>
-<span class="sourceLineNo">061</span>      }<a name="line.61"></a>
-<span class="sourceLineNo">062</span>   }<a name="line.62"></a>
-<span class="sourceLineNo">063</span><a name="line.63"></a>
+<span class="sourceLineNo">018</span>import org.apache.juneau.parser.*;<a name="line.18"></a>
+<span class="sourceLineNo">019</span><a name="line.19"></a>
+<span class="sourceLineNo">020</span>/**<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * Parses UON (a notation for URL-encoded query parameter values) text into POJO models.<a name="line.21"></a>
+<span class="sourceLineNo">022</span> *<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * Handles &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/uon&lt;/code&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * This parser uses a state machine, which makes it very fast and efficient.<a name="line.29"></a>
+<span class="sourceLineNo">030</span> *<a name="line.30"></a>
+<span class="sourceLineNo">031</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.31"></a>
+<span class="sourceLineNo">032</span> *<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * This class has the following properties associated with it:<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * &lt;ul&gt;<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *    &lt;li&gt;{@link UonParserContext}<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *    &lt;li&gt;{@link ParserContext}<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;{@link BeanContext}<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * &lt;/ul&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span> */<a name="line.39"></a>
+<span class="sourceLineNo">040</span>public class UonParser extends ReaderParser {<a name="line.40"></a>
+<span class="sourceLineNo">041</span><a name="line.41"></a>
+<span class="sourceLineNo">042</span>   /** Reusable instance of {@link UonParser}, all default settings. */<a name="line.42"></a>
+<span class="sourceLineNo">043</span>   public static final UonParser DEFAULT = new UonParser(PropertyStore.create());<a name="line.43"></a>
+<span class="sourceLineNo">044</span><a name="line.44"></a>
+<span class="sourceLineNo">045</span>   /** Reusable instance of {@link UonParser} with decodeChars set to true. */<a name="line.45"></a>
+<span class="sourceLineNo">046</span>   public static final UonParser DEFAULT_DECODING = new UonParser.Decoding(PropertyStore.create());<a name="line.46"></a>
+<span class="sourceLineNo">047</span><a name="line.47"></a>
+<span class="sourceLineNo">048</span><a name="line.48"></a>
+<span class="sourceLineNo">049</span>   /** Default parser, decoding. */<a name="line.49"></a>
+<span class="sourceLineNo">050</span>   public static class Decoding extends UonParser {<a name="line.50"></a>
+<span class="sourceLineNo">051</span><a name="line.51"></a>
+<span class="sourceLineNo">052</span>      /**<a name="line.52"></a>
+<span class="sourceLineNo">053</span>       * Constructor.<a name="line.53"></a>
+<span class="sourceLineNo">054</span>       *<a name="line.54"></a>
+<span class="sourceLineNo">055</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.55"></a>
+<span class="sourceLineNo">056</span>       */<a name="line.56"></a>
+<span class="sourceLineNo">057</span>      public Decoding(PropertyStore propertyStore) {<a name="line.57"></a>
+<span class="sourceLineNo">058</span>         super(propertyStore.copy().append(UON_decodeChars, true));<a name="line.58"></a>
+<span class="sourceLineNo">059</span>      }<a name="line.59"></a>
+<span class="sourceLineNo">060</span>   }<a name="line.60"></a>
+<span class="sourceLineNo">061</span><a name="line.61"></a>
+<span class="sourceLineNo">062</span><a name="line.62"></a>
+<span class="sourceLineNo">063</span>   private final UonParserContext ctx;<a name="line.63"></a>
 <span class="sourceLineNo">064</span><a name="line.64"></a>
-<span class="sourceLineNo">065</span>   private final UonParserContext ctx;<a name="line.65"></a>
-<span class="sourceLineNo">066</span><a name="line.66"></a>
-<span class="sourceLineNo">067</span>   /**<a name="line.67"></a>
-<span class="sourceLineNo">068</span>    * Constructor.<a name="line.68"></a>
-<span class="sourceLineNo">069</span>    *<a name="line.69"></a>
-<span class="sourceLineNo">070</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.70"></a>
-<span class="sourceLineNo">071</span>    */<a name="line.71"></a>
-<span class="sourceLineNo">072</span>   public UonParser(PropertyStore propertyStore) {<a name="line.72"></a>
-<span class="sourceLineNo">073</span>      super(propertyStore);<a name="line.73"></a>
-<span class="sourceLineNo">074</span>      this.ctx = createContext(UonParserContext.class);<a name="line.74"></a>
-<span class="sourceLineNo">075</span>   }<a name="line.75"></a>
-<span class="sourceLineNo">076</span><a name="line.76"></a>
-<span class="sourceLineNo">077</span>   @Override /* CoreObject */<a name="line.77"></a>
-<span class="sourceLineNo">078</span>   public UonParserBuilder builder() {<a name="line.78"></a>
-<span class="sourceLineNo">079</span>      return new UonParserBuilder(propertyStore);<a name="line.79"></a>
-<span class="sourceLineNo">080</span>   }<a name="line.80"></a>
-<span class="sourceLineNo">081</span><a name="line.81"></a>
-<span class="sourceLineNo">082</span>   /**<a name="line.82"></a>
-<span class="sourceLineNo">083</span>    * Create a UON parser session for parsing parameter values.<a name="line.83"></a>
-<span class="sourceLineNo">084</span>    *<a name="line.84"></a>
-<span class="sourceLineNo">085</span>    * @return A new parser session.<a name="line.85"></a>
-<span class="sourceLineNo">086</span>    */<a name="line.86"></a>
-<span class="sourceLineNo">087</span>   protected final UonParserSession createParameterSession() {<a name="line.87"></a>
-<span class="sourceLineNo">088</span>      return new UonParserSession(ctx);<a name="line.88"></a>
-<span class="sourceLineNo">089</span>   }<a name="line.89"></a>
-<span class="sourceLineNo">090</span><a name="line.90"></a>
-<span class="sourceLineNo">091</span>   @Override /* Parser */<a name="line.91"></a>
-<span class="sourceLineNo">092</span>   public UonParserSession createSession(ParserSessionArgs args) {<a name="line.92"></a>
-<span class="sourceLineNo">093</span>      return new UonParserSession(ctx, args);<a name="line.93"></a>
-<span class="sourceLineNo">094</span>   }<a name="line.94"></a>
-<span class="sourceLineNo">095</span>}<a name="line.95"></a>
+<span class="sourceLineNo">065</span>   /**<a name="line.65"></a>
+<span class="sourceLineNo">066</span>    * Constructor.<a name="line.66"></a>
+<span class="sourceLineNo">067</span>    *<a name="line.67"></a>
+<span class="sourceLineNo">068</span>    * @param propertyStore<a name="line.68"></a>
+<span class="sourceLineNo">069</span>    *    The property store containing all the settings for this object.<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    */<a name="line.70"></a>
+<span class="sourceLineNo">071</span>   public UonParser(PropertyStore propertyStore) {<a name="line.71"></a>
+<span class="sourceLineNo">072</span>      this(propertyStore, "text/uon");<a name="line.72"></a>
+<span class="sourceLineNo">073</span>   }<a name="line.73"></a>
+<span class="sourceLineNo">074</span><a name="line.74"></a>
+<span class="sourceLineNo">075</span>   /**<a name="line.75"></a>
+<span class="sourceLineNo">076</span>    * Constructor.<a name="line.76"></a>
+<span class="sourceLineNo">077</span>    *<a name="line.77"></a>
+<span class="sourceLineNo">078</span>    * @param propertyStore<a name="line.78"></a>
+<span class="sourceLineNo">079</span>    *    The property store containing all the settings for this object.<a name="line.79"></a>
+<span class="sourceLineNo">080</span>    * @param consumes<a name="line.80"></a>
+<span class="sourceLineNo">081</span>    *    The list of media types that this parser consumes (e.g. &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;).<a name="line.81"></a>
+<span class="sourceLineNo">082</span>    */<a name="line.82"></a>
+<span class="sourceLineNo">083</span>   public UonParser(PropertyStore propertyStore, String...consumes) {<a name="line.83"></a>
+<span class="sourceLineNo">084</span>      super(propertyStore, consumes);<a name="line.84"></a>
+<span class="sourceLineNo">085</span>      this.ctx = createContext(UonParserContext.class);<a name="line.85"></a>
+<span class="sourceLineNo">086</span>   }<a name="line.86"></a>
+<span class="sourceLineNo">087</span><a name="line.87"></a>
+<span class="sourceLineNo">088</span>   @Override /* CoreObject */<a name="line.88"></a>
+<span class="sourceLineNo">089</span>   public UonParserBuilder builder() {<a name="line.89"></a>
+<span class="sourceLineNo">090</span>      return new UonParserBuilder(propertyStore);<a name="line.90"></a>
+<span class="sourceLineNo">091</span>   }<a name="line.91"></a>
+<span class="sourceLineNo">092</span><a name="line.92"></a>
+<span class="sourceLineNo">093</span>   /**<a name="line.93"></a>
+<span class="sourceLineNo">094</span>    * Create a UON parser session for parsing parameter values.<a name="line.94"></a>
+<span class="sourceLineNo">095</span>    *<a name="line.95"></a>
+<span class="sourceLineNo">096</span>    * @return A new parser session.<a name="line.96"></a>
+<span class="sourceLineNo">097</span>    */<a name="line.97"></a>
+<span class="sourceLineNo">098</span>   protected final UonParserSession createParameterSession() {<a name="line.98"></a>
+<span class="sourceLineNo">099</span>      return new UonParserSession(ctx, createDefaultSessionArgs(), false);<a name="line.99"></a>
+<span class="sourceLineNo">100</span>   }<a name="line.100"></a>
+<span class="sourceLineNo">101</span><a name="line.101"></a>
+<span class="sourceLineNo">102</span>   @Override /* Parser */<a name="line.102"></a>
+<span class="sourceLineNo">103</span>   public UonParserSession createSession(ParserSessionArgs args) {<a name="line.103"></a>
+<span class="sourceLineNo">104</span>      return new UonParserSession(ctx, args);<a name="line.104"></a>
+<span class="sourceLineNo">105</span>   }<a name="line.105"></a>
+<span class="sourceLineNo">106</span>}<a name="line.106"></a>
 
 
 


[12/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.Expanded.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.Expanded.html b/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.Expanded.html
index 4377968..1edde7a 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.Expanded.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.Expanded.html
@@ -29,256 +29,280 @@
 <span class="sourceLineNo">021</span>import java.net.*;<a name="line.21"></a>
 <span class="sourceLineNo">022</span><a name="line.22"></a>
 <span class="sourceLineNo">023</span>import org.apache.juneau.*;<a name="line.23"></a>
-<span class="sourceLineNo">024</span>import org.apache.juneau.annotation.*;<a name="line.24"></a>
-<span class="sourceLineNo">025</span>import org.apache.juneau.serializer.*;<a name="line.25"></a>
-<span class="sourceLineNo">026</span>import org.apache.juneau.uon.*;<a name="line.26"></a>
-<span class="sourceLineNo">027</span><a name="line.27"></a>
-<span class="sourceLineNo">028</span>/**<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * Serializes POJO models to URL-encoded notation with UON-encoded values (a notation for URL-encoded query paramter values).<a name="line.29"></a>
-<span class="sourceLineNo">030</span> *<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;application/x-www-form-urlencoded&lt;/code&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * &lt;p&gt;<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/x-www-form-urlencoded&lt;/code&gt;<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *<a name="line.36"></a>
-<span class="sourceLineNo">037</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *<a name="line.38"></a>
-<span class="sourceLineNo">039</span> * This serializer provides several serialization options.  Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.39"></a>
-<span class="sourceLineNo">040</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *<a name="line.41"></a>
-<span class="sourceLineNo">042</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *<a name="line.43"></a>
-<span class="sourceLineNo">044</span> * This class has the following properties associated with it:<a name="line.44"></a>
-<span class="sourceLineNo">045</span> * &lt;ul&gt;<a name="line.45"></a>
-<span class="sourceLineNo">046</span> *    &lt;li&gt;{@link UonSerializerContext}<a name="line.46"></a>
-<span class="sourceLineNo">047</span> *    &lt;li&gt;{@link BeanContext}<a name="line.47"></a>
-<span class="sourceLineNo">048</span> * &lt;/ul&gt;<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *<a name="line.49"></a>
-<span class="sourceLineNo">050</span> * &lt;p&gt;<a name="line.50"></a>
-<span class="sourceLineNo">051</span> * The following shows a sample object defined in Javascript:<a name="line.51"></a>
-<span class="sourceLineNo">052</span> * &lt;p class='bcode'&gt;<a name="line.52"></a>
-<span class="sourceLineNo">053</span> *    {<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *       id: 1,<a name="line.54"></a>
-<span class="sourceLineNo">055</span> *       name: &lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.55"></a>
-<span class="sourceLineNo">056</span> *       uri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.56"></a>
-<span class="sourceLineNo">057</span> *       addressBookUri: &lt;js&gt;'http://sample/addressBook'&lt;/js&gt;,<a name="line.57"></a>
-<span class="sourceLineNo">058</span> *       birthDate: &lt;js&gt;'1946-08-12T00:00:00Z'&lt;/js&gt;,<a name="line.58"></a>
-<span class="sourceLineNo">059</span> *       otherIds: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.59"></a>
-<span class="sourceLineNo">060</span> *       addresses: [<a name="line.60"></a>
-<span class="sourceLineNo">061</span> *          {<a name="line.61"></a>
-<span class="sourceLineNo">062</span> *             uri: &lt;js&gt;'http://sample/addressBook/address/1'&lt;/js&gt;,<a name="line.62"></a>
-<span class="sourceLineNo">063</span> *             personUri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.63"></a>
-<span class="sourceLineNo">064</span> *             id: 1,<a name="line.64"></a>
-<span class="sourceLineNo">065</span> *             street: &lt;js&gt;'100 Main Street'&lt;/js&gt;,<a name="line.65"></a>
-<span class="sourceLineNo">066</span> *             city: &lt;js&gt;'Anywhereville'&lt;/js&gt;,<a name="line.66"></a>
-<span class="sourceLineNo">067</span> *             state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.67"></a>
-<span class="sourceLineNo">068</span> *             zip: 12345,<a name="line.68"></a>
-<span class="sourceLineNo">069</span> *             isCurrent: &lt;jk&gt;true&lt;/jk&gt;,<a name="line.69"></a>
-<span class="sourceLineNo">070</span> *          }<a name="line.70"></a>
-<span class="sourceLineNo">071</span> *       ]<a name="line.71"></a>
-<span class="sourceLineNo">072</span> *    }<a name="line.72"></a>
-<span class="sourceLineNo">073</span> * &lt;/p&gt;<a name="line.73"></a>
-<span class="sourceLineNo">074</span> *<a name="line.74"></a>
-<span class="sourceLineNo">075</span> * &lt;p&gt;<a name="line.75"></a>
-<span class="sourceLineNo">076</span> * Using the "strict" syntax defined in this document, the equivalent URL-encoded notation would be as follows:<a name="line.76"></a>
-<span class="sourceLineNo">077</span> * &lt;p class='bcode'&gt;<a name="line.77"></a>
-<span class="sourceLineNo">078</span> *    &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;<a name="line.78"></a>
-<span class="sourceLineNo">079</span> *    &amp;amp;&lt;ua&gt;name&lt;/ua&gt;=&lt;us&gt;'John+Smith'&lt;/us&gt;,<a name="line.79"></a>
-<span class="sourceLineNo">080</span> *    &amp;amp;&lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *    &amp;amp;&lt;ua&gt;addressBookUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook&lt;/us&gt;,<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *    &amp;amp;&lt;ua&gt;birthDate&lt;/ua&gt;=&lt;us&gt;1946-08-12T00:00:00Z&lt;/us&gt;,<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *    &amp;amp;&lt;ua&gt;otherIds&lt;/ua&gt;=&lt;uk&gt;null&lt;/uk&gt;,<a name="line.83"></a>
-<span class="sourceLineNo">084</span> *    &amp;amp;&lt;ua&gt;addresses&lt;/ua&gt;=@(<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *       (<a name="line.85"></a>
-<span class="sourceLineNo">086</span> *          &lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/address/1&lt;/us&gt;,<a name="line.86"></a>
-<span class="sourceLineNo">087</span> *          &lt;ua&gt;personUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *          &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;,<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *          &lt;ua&gt;street&lt;/ua&gt;=&lt;us&gt;'100+Main+Street'&lt;/us&gt;,<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *          &lt;ua&gt;city&lt;/ua&gt;=&lt;us&gt;Anywhereville&lt;/us&gt;,<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *          &lt;ua&gt;state&lt;/ua&gt;=&lt;us&gt;NY&lt;/us&gt;,<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *          &lt;ua&gt;zip&lt;/ua&gt;=&lt;un&gt;12345&lt;/un&gt;,<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *          &lt;ua&gt;isCurrent&lt;/ua&gt;=&lt;uk&gt;true&lt;/uk&gt;<a name="line.93"></a>
-<span class="sourceLineNo">094</span> *       )<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *    )<a name="line.95"></a>
-<span class="sourceLineNo">096</span> * &lt;/p&gt;<a name="line.96"></a>
-<span class="sourceLineNo">097</span> *<a name="line.97"></a>
-<span class="sourceLineNo">098</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.98"></a>
-<span class="sourceLineNo">099</span> * &lt;p class='bcode'&gt;<a name="line.99"></a>
-<span class="sourceLineNo">100</span> *    &lt;jc&gt;// Serialize a Map&lt;/jc&gt;<a name="line.100"></a>
-<span class="sourceLineNo">101</span> *    Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{a:'b',c:1,d:false,e:['f',1,false],g:{h:'i'}}"&lt;/js&gt;);<a name="line.101"></a>
-<span class="sourceLineNo">102</span> *<a name="line.102"></a>
-<span class="sourceLineNo">103</span> *    &lt;jc&gt;// Serialize to value equivalent to JSON.&lt;/jc&gt;<a name="line.103"></a>
-<span class="sourceLineNo">104</span> *    &lt;jc&gt;// Produces "a=b&amp;amp;c=1&amp;amp;d=false&amp;amp;e=@(f,1,false)&amp;amp;g=(h=i)"&lt;/jc&gt;<a name="line.104"></a>
-<span class="sourceLineNo">105</span> *    String s = UrlEncodingSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.105"></a>
-<span class="sourceLineNo">106</span> *<a name="line.106"></a>
-<span class="sourceLineNo">107</span> *    &lt;jc&gt;// Serialize a bean&lt;/jc&gt;<a name="line.107"></a>
-<span class="sourceLineNo">108</span> *    &lt;jk&gt;public class&lt;/jk&gt; Person {<a name="line.108"></a>
-<span class="sourceLineNo">109</span> *       &lt;jk&gt;public&lt;/jk&gt; Person(String s);<a name="line.109"></a>
-<span class="sourceLineNo">110</span> *       &lt;jk&gt;public&lt;/jk&gt; String getName();<a name="line.110"></a>
-<span class="sourceLineNo">111</span> *       &lt;jk&gt;public int&lt;/jk&gt; getAge();<a name="line.111"></a>
-<span class="sourceLineNo">112</span> *       &lt;jk&gt;public&lt;/jk&gt; Address getAddress();<a name="line.112"></a>
-<span class="sourceLineNo">113</span> *       &lt;jk&gt;public boolean&lt;/jk&gt; deceased;<a name="line.113"></a>
-<span class="sourceLineNo">114</span> *    }<a name="line.114"></a>
-<span class="sourceLineNo">115</span> *<a name="line.115"></a>
-<span class="sourceLineNo">116</span> *    &lt;jk&gt;public class&lt;/jk&gt; Address {<a name="line.116"></a>
-<span class="sourceLineNo">117</span> *       &lt;jk&gt;public&lt;/jk&gt; String getStreet();<a name="line.117"></a>
-<span class="sourceLineNo">118</span> *       &lt;jk&gt;public&lt;/jk&gt; String getCity();<a name="line.118"></a>
-<span class="sourceLineNo">119</span> *       &lt;jk&gt;public&lt;/jk&gt; String getState();<a name="line.119"></a>
-<span class="sourceLineNo">120</span> *       &lt;jk&gt;public int&lt;/jk&gt; getZip();<a name="line.120"></a>
-<span class="sourceLineNo">121</span> *    }<a name="line.121"></a>
-<span class="sourceLineNo">122</span> *<a name="line.122"></a>
-<span class="sourceLineNo">123</span> *    Person p = &lt;jk&gt;new&lt;/jk&gt; Person(&lt;js&gt;"John Doe"&lt;/js&gt;, 23, &lt;js&gt;"123 Main St"&lt;/js&gt;, &lt;js&gt;"Anywhere"&lt;/js&gt;, &lt;js&gt;"NY"&lt;/js&gt;, 12345, &lt;jk&gt;false&lt;/jk&gt;);<a name="line.123"></a>
-<span class="sourceLineNo">124</span> *<a name="line.124"></a>
-<span class="sourceLineNo">125</span> *    &lt;jc&gt;// Produces "name=John+Doe&amp;amp;age=23&amp;amp;address=(street='123+Main+St',city=Anywhere,state=NY,zip=12345)&amp;amp;deceased=false"&lt;/jc&gt;<a name="line.125"></a>
-<span class="sourceLineNo">126</span> *    String s = UrlEncodingSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.126"></a>
-<span class="sourceLineNo">127</span> * &lt;/p&gt;<a name="line.127"></a>
-<span class="sourceLineNo">128</span> */<a name="line.128"></a>
-<span class="sourceLineNo">129</span>@Produces("application/x-www-form-urlencoded")<a name="line.129"></a>
-<span class="sourceLineNo">130</span>@SuppressWarnings("hiding")<a name="line.130"></a>
-<span class="sourceLineNo">131</span>public class UrlEncodingSerializer extends UonSerializer implements PartSerializer {<a name="line.131"></a>
-<span class="sourceLineNo">132</span><a name="line.132"></a>
-<span class="sourceLineNo">133</span>   /** Reusable instance of {@link UrlEncodingSerializer}, all default settings. */<a name="line.133"></a>
-<span class="sourceLineNo">134</span>   public static final UrlEncodingSerializer DEFAULT = new UrlEncodingSerializer(PropertyStore.create());<a name="line.134"></a>
-<span class="sourceLineNo">135</span><a name="line.135"></a>
-<span class="sourceLineNo">136</span>   /** Reusable instance of {@link UrlEncodingSerializer.PlainText}. */<a name="line.136"></a>
-<span class="sourceLineNo">137</span>   public static final UrlEncodingSerializer DEFAULT_PLAINTEXT = new PlainText(PropertyStore.create());<a name="line.137"></a>
-<span class="sourceLineNo">138</span><a name="line.138"></a>
-<span class="sourceLineNo">139</span>   /** Reusable instance of {@link UrlEncodingSerializer.Expanded}. */<a name="line.139"></a>
-<span class="sourceLineNo">140</span>   public static final UrlEncodingSerializer DEFAULT_EXPANDED = new Expanded(PropertyStore.create());<a name="line.140"></a>
-<span class="sourceLineNo">141</span><a name="line.141"></a>
-<span class="sourceLineNo">142</span>   /** Reusable instance of {@link UrlEncodingSerializer.Readable}. */<a name="line.142"></a>
-<span class="sourceLineNo">143</span>   public static final UrlEncodingSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.143"></a>
-<span class="sourceLineNo">144</span><a name="line.144"></a>
-<span class="sourceLineNo">145</span>   /**<a name="line.145"></a>
-<span class="sourceLineNo">146</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().expandedParams(&lt;jk&gt;true&lt;/jk&gt;).build();&lt;/code&gt;.<a name="line.146"></a>
-<span class="sourceLineNo">147</span>    */<a name="line.147"></a>
-<span class="sourceLineNo">148</span>   @Produces(value="application/x-www-form-urlencoded",contentType="application/x-www-form-urlencoded")<a name="line.148"></a>
-<span class="sourceLineNo">149</span>   public static class Expanded extends UrlEncodingSerializer {<a name="line.149"></a>
-<span class="sourceLineNo">150</span><a name="line.150"></a>
-<span class="sourceLineNo">151</span>      /**<a name="line.151"></a>
-<span class="sourceLineNo">152</span>       * Constructor.<a name="line.152"></a>
-<span class="sourceLineNo">153</span>       *<a name="line.153"></a>
-<span class="sourceLineNo">154</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.154"></a>
-<span class="sourceLineNo">155</span>       */<a name="line.155"></a>
-<span class="sourceLineNo">156</span>      public Expanded(PropertyStore propertyStore) {<a name="line.156"></a>
-<span class="sourceLineNo">157</span>         super(propertyStore.copy().append(URLENC_expandedParams, true));<a name="line.157"></a>
-<span class="sourceLineNo">158</span>      }<a name="line.158"></a>
-<span class="sourceLineNo">159</span>   }<a name="line.159"></a>
-<span class="sourceLineNo">160</span><a name="line.160"></a>
-<span class="sourceLineNo">161</span>   /**<a name="line.161"></a>
-<span class="sourceLineNo">162</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().useWhitespace(&lt;jk&gt;true&lt;/jk&gt;).build();&lt;/code&gt;.<a name="line.162"></a>
-<span class="sourceLineNo">163</span>    */<a name="line.163"></a>
-<span class="sourceLineNo">164</span>   public static class Readable extends UrlEncodingSerializer {<a name="line.164"></a>
-<span class="sourceLineNo">165</span><a name="line.165"></a>
-<span class="sourceLineNo">166</span>      /**<a name="line.166"></a>
-<span class="sourceLineNo">167</span>       * Constructor.<a name="line.167"></a>
-<span class="sourceLineNo">168</span>       *<a name="line.168"></a>
-<span class="sourceLineNo">169</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.169"></a>
-<span class="sourceLineNo">170</span>       */<a name="line.170"></a>
-<span class="sourceLineNo">171</span>      public Readable(PropertyStore propertyStore) {<a name="line.171"></a>
-<span class="sourceLineNo">172</span>         super(propertyStore.copy().append(SERIALIZER_useWhitespace, true));<a name="line.172"></a>
-<span class="sourceLineNo">173</span>      }<a name="line.173"></a>
-<span class="sourceLineNo">174</span>   }<a name="line.174"></a>
-<span class="sourceLineNo">175</span><a name="line.175"></a>
-<span class="sourceLineNo">176</span>   /**<a name="line.176"></a>
-<span class="sourceLineNo">177</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().plainTextParts().build();&lt;/code&gt;.<a name="line.177"></a>
-<span class="sourceLineNo">178</span>    */<a name="line.178"></a>
-<span class="sourceLineNo">179</span>   public static class PlainText extends UrlEncodingSerializer {<a name="line.179"></a>
-<span class="sourceLineNo">180</span><a name="line.180"></a>
-<span class="sourceLineNo">181</span>      /**<a name="line.181"></a>
-<span class="sourceLineNo">182</span>       * Constructor.<a name="line.182"></a>
-<span class="sourceLineNo">183</span>       *<a name="line.183"></a>
-<span class="sourceLineNo">184</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.184"></a>
-<span class="sourceLineNo">185</span>       */<a name="line.185"></a>
-<span class="sourceLineNo">186</span>      public PlainText(PropertyStore propertyStore) {<a name="line.186"></a>
-<span class="sourceLineNo">187</span>         super(propertyStore.copy().append(UON_paramFormat, "PLAINTEXT"));<a name="line.187"></a>
-<span class="sourceLineNo">188</span>      }<a name="line.188"></a>
-<span class="sourceLineNo">189</span>   }<a name="line.189"></a>
-<span class="sourceLineNo">190</span><a name="line.190"></a>
-<span class="sourceLineNo">191</span>   private final UrlEncodingSerializerContext ctx;<a name="line.191"></a>
-<span class="sourceLineNo">192</span><a name="line.192"></a>
-<span class="sourceLineNo">193</span>   /**<a name="line.193"></a>
-<span class="sourceLineNo">194</span>    * Constructor.<a name="line.194"></a>
-<span class="sourceLineNo">195</span>    *<a name="line.195"></a>
-<span class="sourceLineNo">196</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.196"></a>
-<span class="sourceLineNo">197</span>    */<a name="line.197"></a>
-<span class="sourceLineNo">198</span>   public UrlEncodingSerializer(PropertyStore propertyStore) {<a name="line.198"></a>
-<span class="sourceLineNo">199</span>      super(propertyStore.copy().append(UON_encodeChars, true));<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      this.ctx = createContext(UrlEncodingSerializerContext.class);<a name="line.200"></a>
-<span class="sourceLineNo">201</span>   }<a name="line.201"></a>
-<span class="sourceLineNo">202</span><a name="line.202"></a>
-<span class="sourceLineNo">203</span>   @Override /* CoreObject */<a name="line.203"></a>
-<span class="sourceLineNo">204</span>   public UrlEncodingSerializerBuilder builder() {<a name="line.204"></a>
-<span class="sourceLineNo">205</span>      return new UrlEncodingSerializerBuilder(propertyStore);<a name="line.205"></a>
-<span class="sourceLineNo">206</span>   }<a name="line.206"></a>
-<span class="sourceLineNo">207</span><a name="line.207"></a>
-<span class="sourceLineNo">208</span><a name="line.208"></a>
-<span class="sourceLineNo">209</span>   //--------------------------------------------------------------------------------<a name="line.209"></a>
-<span class="sourceLineNo">210</span>   // Methods for constructing individual parameter values.<a name="line.210"></a>
-<span class="sourceLineNo">211</span>   //--------------------------------------------------------------------------------<a name="line.211"></a>
-<span class="sourceLineNo">212</span><a name="line.212"></a>
-<span class="sourceLineNo">213</span>   /**<a name="line.213"></a>
-<span class="sourceLineNo">214</span>    * Converts the specified object to a string using this serializers {@link BeanSession#convertToType(Object, Class)}<a name="line.214"></a>
-<span class="sourceLineNo">215</span>    * method and runs {@link URLEncoder#encode(String,String)} against the results.<a name="line.215"></a>
-<span class="sourceLineNo">216</span>    *<a name="line.216"></a>
-<span class="sourceLineNo">217</span>    * &lt;p&gt;<a name="line.217"></a>
-<span class="sourceLineNo">218</span>    * Useful for constructing URL parts.<a name="line.218"></a>
-<span class="sourceLineNo">219</span>    *<a name="line.219"></a>
-<span class="sourceLineNo">220</span>    * @param o The object to serialize.<a name="line.220"></a>
-<span class="sourceLineNo">221</span>    * @param urlEncode<a name="line.221"></a>
-<span class="sourceLineNo">222</span>    *    URL-encode the string if necessary.<a name="line.222"></a>
-<span class="sourceLineNo">223</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then uses the value of the {@link UonSerializerContext#UON_encodeChars} setting.<a name="line.223"></a>
-<span class="sourceLineNo">224</span>    * @param plainTextParams<a name="line.224"></a>
-<span class="sourceLineNo">225</span>    *    Whether we're using plain-text params.<a name="line.225"></a>
-<span class="sourceLineNo">226</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then uses the value from the {@link UrlEncodingSerializerContext#URLENC_paramFormat} setting.<a name="line.226"></a>
-<span class="sourceLineNo">227</span>    * @return The serialized object.<a name="line.227"></a>
-<span class="sourceLineNo">228</span>    */<a name="line.228"></a>
-<span class="sourceLineNo">229</span>   private String serializePart(Object o, Boolean urlEncode, Boolean plainTextParams) {<a name="line.229"></a>
-<span class="sourceLineNo">230</span>      try {<a name="line.230"></a>
-<span class="sourceLineNo">231</span>         // Shortcut for simple types.<a name="line.231"></a>
-<span class="sourceLineNo">232</span>         ClassMeta&lt;?&gt; cm = getBeanContext().getClassMetaForObject(o);<a name="line.232"></a>
-<span class="sourceLineNo">233</span>         if (cm != null) {<a name="line.233"></a>
-<span class="sourceLineNo">234</span>            if (cm.isNumber() || cm.isBoolean())<a name="line.234"></a>
-<span class="sourceLineNo">235</span>               return o.toString();<a name="line.235"></a>
-<span class="sourceLineNo">236</span>            if (cm.isCharSequence()) {<a name="line.236"></a>
-<span class="sourceLineNo">237</span>               String s = o.toString();<a name="line.237"></a>
-<span class="sourceLineNo">238</span>               boolean ptt = (plainTextParams != null ? plainTextParams : ctx.plainTextParams());<a name="line.238"></a>
-<span class="sourceLineNo">239</span>               if (ptt || s.isEmpty() || ! UonUtils.needsQuotes(s))<a name="line.239"></a>
-<span class="sourceLineNo">240</span>                  return (urlEncode ? urlEncode(s) : s);<a name="line.240"></a>
-<span class="sourceLineNo">241</span>            }<a name="line.241"></a>
-<span class="sourceLineNo">242</span>         }<a name="line.242"></a>
-<span class="sourceLineNo">243</span><a name="line.243"></a>
-<span class="sourceLineNo">244</span>         StringWriter w = new StringWriter();<a name="line.244"></a>
-<span class="sourceLineNo">245</span>         UonSerializerSession s = new UonSerializerSession(ctx, urlEncode, SerializerSessionArgs.DEFAULT);<a name="line.245"></a>
-<span class="sourceLineNo">246</span>         s.serialize(w, o);<a name="line.246"></a>
-<span class="sourceLineNo">247</span>         return w.toString();<a name="line.247"></a>
-<span class="sourceLineNo">248</span>      } catch (Exception e) {<a name="line.248"></a>
-<span class="sourceLineNo">249</span>         throw new RuntimeException(e);<a name="line.249"></a>
-<span class="sourceLineNo">250</span>      }<a name="line.250"></a>
-<span class="sourceLineNo">251</span>   }<a name="line.251"></a>
-<span class="sourceLineNo">252</span><a name="line.252"></a>
-<span class="sourceLineNo">253</span><a name="line.253"></a>
-<span class="sourceLineNo">254</span>   //--------------------------------------------------------------------------------<a name="line.254"></a>
-<span class="sourceLineNo">255</span>   // Entry point methods<a name="line.255"></a>
-<span class="sourceLineNo">256</span>   //--------------------------------------------------------------------------------<a name="line.256"></a>
-<span class="sourceLineNo">257</span><a name="line.257"></a>
-<span class="sourceLineNo">258</span>   @Override /* Serializer */<a name="line.258"></a>
-<span class="sourceLineNo">259</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.259"></a>
-<span class="sourceLineNo">260</span>      return new UrlEncodingSerializerSession(ctx, null, args);<a name="line.260"></a>
-<span class="sourceLineNo">261</span>   }<a name="line.261"></a>
-<span class="sourceLineNo">262</span><a name="line.262"></a>
-<span class="sourceLineNo">263</span>   @Override /* PartSerializer */<a name="line.263"></a>
-<span class="sourceLineNo">264</span>   public String serialize(PartType type, Object value) {<a name="line.264"></a>
-<span class="sourceLineNo">265</span>      switch(type) {<a name="line.265"></a>
-<span class="sourceLineNo">266</span>         case HEADER: return serializePart(value, false, true);<a name="line.266"></a>
-<span class="sourceLineNo">267</span>         case FORM_DATA: return serializePart(value, false, null);<a name="line.267"></a>
-<span class="sourceLineNo">268</span>         case PATH: return serializePart(value, false, null);<a name="line.268"></a>
-<span class="sourceLineNo">269</span>         case QUERY: return serializePart(value, false, null);<a name="line.269"></a>
-<span class="sourceLineNo">270</span>         default: return toString(value);<a name="line.270"></a>
-<span class="sourceLineNo">271</span>      }<a name="line.271"></a>
-<span class="sourceLineNo">272</span>   }<a name="line.272"></a>
-<span class="sourceLineNo">273</span>}<a name="line.273"></a>
+<span class="sourceLineNo">024</span>import org.apache.juneau.serializer.*;<a name="line.24"></a>
+<span class="sourceLineNo">025</span>import org.apache.juneau.uon.*;<a name="line.25"></a>
+<span class="sourceLineNo">026</span><a name="line.26"></a>
+<span class="sourceLineNo">027</span>/**<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * Serializes POJO models to URL-encoded notation with UON-encoded values (a notation for URL-encoded query paramter values).<a name="line.28"></a>
+<span class="sourceLineNo">029</span> *<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;application/x-www-form-urlencoded&lt;/code&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * &lt;p&gt;<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/x-www-form-urlencoded&lt;/code&gt;<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *<a name="line.35"></a>
+<span class="sourceLineNo">036</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * This serializer provides several serialization options.  Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.38"></a>
+<span class="sourceLineNo">039</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *<a name="line.40"></a>
+<span class="sourceLineNo">041</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *<a name="line.42"></a>
+<span class="sourceLineNo">043</span> * This class has the following properties associated with it:<a name="line.43"></a>
+<span class="sourceLineNo">044</span> * &lt;ul&gt;<a name="line.44"></a>
+<span class="sourceLineNo">045</span> *    &lt;li&gt;{@link UonSerializerContext}<a name="line.45"></a>
+<span class="sourceLineNo">046</span> *    &lt;li&gt;{@link BeanContext}<a name="line.46"></a>
+<span class="sourceLineNo">047</span> * &lt;/ul&gt;<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *<a name="line.48"></a>
+<span class="sourceLineNo">049</span> * &lt;p&gt;<a name="line.49"></a>
+<span class="sourceLineNo">050</span> * The following shows a sample object defined in Javascript:<a name="line.50"></a>
+<span class="sourceLineNo">051</span> * &lt;p class='bcode'&gt;<a name="line.51"></a>
+<span class="sourceLineNo">052</span> *    {<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *       id: 1,<a name="line.53"></a>
+<span class="sourceLineNo">054</span> *       name: &lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.54"></a>
+<span class="sourceLineNo">055</span> *       uri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.55"></a>
+<span class="sourceLineNo">056</span> *       addressBookUri: &lt;js&gt;'http://sample/addressBook'&lt;/js&gt;,<a name="line.56"></a>
+<span class="sourceLineNo">057</span> *       birthDate: &lt;js&gt;'1946-08-12T00:00:00Z'&lt;/js&gt;,<a name="line.57"></a>
+<span class="sourceLineNo">058</span> *       otherIds: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.58"></a>
+<span class="sourceLineNo">059</span> *       addresses: [<a name="line.59"></a>
+<span class="sourceLineNo">060</span> *          {<a name="line.60"></a>
+<span class="sourceLineNo">061</span> *             uri: &lt;js&gt;'http://sample/addressBook/address/1'&lt;/js&gt;,<a name="line.61"></a>
+<span class="sourceLineNo">062</span> *             personUri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.62"></a>
+<span class="sourceLineNo">063</span> *             id: 1,<a name="line.63"></a>
+<span class="sourceLineNo">064</span> *             street: &lt;js&gt;'100 Main Street'&lt;/js&gt;,<a name="line.64"></a>
+<span class="sourceLineNo">065</span> *             city: &lt;js&gt;'Anywhereville'&lt;/js&gt;,<a name="line.65"></a>
+<span class="sourceLineNo">066</span> *             state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.66"></a>
+<span class="sourceLineNo">067</span> *             zip: 12345,<a name="line.67"></a>
+<span class="sourceLineNo">068</span> *             isCurrent: &lt;jk&gt;true&lt;/jk&gt;,<a name="line.68"></a>
+<span class="sourceLineNo">069</span> *          }<a name="line.69"></a>
+<span class="sourceLineNo">070</span> *       ]<a name="line.70"></a>
+<span class="sourceLineNo">071</span> *    }<a name="line.71"></a>
+<span class="sourceLineNo">072</span> * &lt;/p&gt;<a name="line.72"></a>
+<span class="sourceLineNo">073</span> *<a name="line.73"></a>
+<span class="sourceLineNo">074</span> * &lt;p&gt;<a name="line.74"></a>
+<span class="sourceLineNo">075</span> * Using the "strict" syntax defined in this document, the equivalent URL-encoded notation would be as follows:<a name="line.75"></a>
+<span class="sourceLineNo">076</span> * &lt;p class='bcode'&gt;<a name="line.76"></a>
+<span class="sourceLineNo">077</span> *    &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;<a name="line.77"></a>
+<span class="sourceLineNo">078</span> *    &amp;amp;&lt;ua&gt;name&lt;/ua&gt;=&lt;us&gt;'John+Smith'&lt;/us&gt;,<a name="line.78"></a>
+<span class="sourceLineNo">079</span> *    &amp;amp;&lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *    &amp;amp;&lt;ua&gt;addressBookUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook&lt;/us&gt;,<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *    &amp;amp;&lt;ua&gt;birthDate&lt;/ua&gt;=&lt;us&gt;1946-08-12T00:00:00Z&lt;/us&gt;,<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *    &amp;amp;&lt;ua&gt;otherIds&lt;/ua&gt;=&lt;uk&gt;null&lt;/uk&gt;,<a name="line.82"></a>
+<span class="sourceLineNo">083</span> *    &amp;amp;&lt;ua&gt;addresses&lt;/ua&gt;=@(<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *       (<a name="line.84"></a>
+<span class="sourceLineNo">085</span> *          &lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/address/1&lt;/us&gt;,<a name="line.85"></a>
+<span class="sourceLineNo">086</span> *          &lt;ua&gt;personUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *          &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;,<a name="line.87"></a>
+<span class="sourceLineNo">088</span> *          &lt;ua&gt;street&lt;/ua&gt;=&lt;us&gt;'100+Main+Street'&lt;/us&gt;,<a name="line.88"></a>
+<span class="sourceLineNo">089</span> *          &lt;ua&gt;city&lt;/ua&gt;=&lt;us&gt;Anywhereville&lt;/us&gt;,<a name="line.89"></a>
+<span class="sourceLineNo">090</span> *          &lt;ua&gt;state&lt;/ua&gt;=&lt;us&gt;NY&lt;/us&gt;,<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *          &lt;ua&gt;zip&lt;/ua&gt;=&lt;un&gt;12345&lt;/un&gt;,<a name="line.91"></a>
+<span class="sourceLineNo">092</span> *          &lt;ua&gt;isCurrent&lt;/ua&gt;=&lt;uk&gt;true&lt;/uk&gt;<a name="line.92"></a>
+<span class="sourceLineNo">093</span> *       )<a name="line.93"></a>
+<span class="sourceLineNo">094</span> *    )<a name="line.94"></a>
+<span class="sourceLineNo">095</span> * &lt;/p&gt;<a name="line.95"></a>
+<span class="sourceLineNo">096</span> *<a name="line.96"></a>
+<span class="sourceLineNo">097</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.97"></a>
+<span class="sourceLineNo">098</span> * &lt;p class='bcode'&gt;<a name="line.98"></a>
+<span class="sourceLineNo">099</span> *    &lt;jc&gt;// Serialize a Map&lt;/jc&gt;<a name="line.99"></a>
+<span class="sourceLineNo">100</span> *    Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{a:'b',c:1,d:false,e:['f',1,false],g:{h:'i'}}"&lt;/js&gt;);<a name="line.100"></a>
+<span class="sourceLineNo">101</span> *<a name="line.101"></a>
+<span class="sourceLineNo">102</span> *    &lt;jc&gt;// Serialize to value equivalent to JSON.&lt;/jc&gt;<a name="line.102"></a>
+<span class="sourceLineNo">103</span> *    &lt;jc&gt;// Produces "a=b&amp;amp;c=1&amp;amp;d=false&amp;amp;e=@(f,1,false)&amp;amp;g=(h=i)"&lt;/jc&gt;<a name="line.103"></a>
+<span class="sourceLineNo">104</span> *    String s = UrlEncodingSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.104"></a>
+<span class="sourceLineNo">105</span> *<a name="line.105"></a>
+<span class="sourceLineNo">106</span> *    &lt;jc&gt;// Serialize a bean&lt;/jc&gt;<a name="line.106"></a>
+<span class="sourceLineNo">107</span> *    &lt;jk&gt;public class&lt;/jk&gt; Person {<a name="line.107"></a>
+<span class="sourceLineNo">108</span> *       &lt;jk&gt;public&lt;/jk&gt; Person(String s);<a name="line.108"></a>
+<span class="sourceLineNo">109</span> *       &lt;jk&gt;public&lt;/jk&gt; String getName();<a name="line.109"></a>
+<span class="sourceLineNo">110</span> *       &lt;jk&gt;public int&lt;/jk&gt; getAge();<a name="line.110"></a>
+<span class="sourceLineNo">111</span> *       &lt;jk&gt;public&lt;/jk&gt; Address getAddress();<a name="line.111"></a>
+<span class="sourceLineNo">112</span> *       &lt;jk&gt;public boolean&lt;/jk&gt; deceased;<a name="line.112"></a>
+<span class="sourceLineNo">113</span> *    }<a name="line.113"></a>
+<span class="sourceLineNo">114</span> *<a name="line.114"></a>
+<span class="sourceLineNo">115</span> *    &lt;jk&gt;public class&lt;/jk&gt; Address {<a name="line.115"></a>
+<span class="sourceLineNo">116</span> *       &lt;jk&gt;public&lt;/jk&gt; String getStreet();<a name="line.116"></a>
+<span class="sourceLineNo">117</span> *       &lt;jk&gt;public&lt;/jk&gt; String getCity();<a name="line.117"></a>
+<span class="sourceLineNo">118</span> *       &lt;jk&gt;public&lt;/jk&gt; String getState();<a name="line.118"></a>
+<span class="sourceLineNo">119</span> *       &lt;jk&gt;public int&lt;/jk&gt; getZip();<a name="line.119"></a>
+<span class="sourceLineNo">120</span> *    }<a name="line.120"></a>
+<span class="sourceLineNo">121</span> *<a name="line.121"></a>
+<span class="sourceLineNo">122</span> *    Person p = &lt;jk&gt;new&lt;/jk&gt; Person(&lt;js&gt;"John Doe"&lt;/js&gt;, 23, &lt;js&gt;"123 Main St"&lt;/js&gt;, &lt;js&gt;"Anywhere"&lt;/js&gt;, &lt;js&gt;"NY"&lt;/js&gt;, 12345, &lt;jk&gt;false&lt;/jk&gt;);<a name="line.122"></a>
+<span class="sourceLineNo">123</span> *<a name="line.123"></a>
+<span class="sourceLineNo">124</span> *    &lt;jc&gt;// Produces "name=John+Doe&amp;amp;age=23&amp;amp;address=(street='123+Main+St',city=Anywhere,state=NY,zip=12345)&amp;amp;deceased=false"&lt;/jc&gt;<a name="line.124"></a>
+<span class="sourceLineNo">125</span> *    String s = UrlEncodingSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.125"></a>
+<span class="sourceLineNo">126</span> * &lt;/p&gt;<a name="line.126"></a>
+<span class="sourceLineNo">127</span> */<a name="line.127"></a>
+<span class="sourceLineNo">128</span>@SuppressWarnings("hiding")<a name="line.128"></a>
+<span class="sourceLineNo">129</span>public class UrlEncodingSerializer extends UonSerializer implements PartSerializer {<a name="line.129"></a>
+<span class="sourceLineNo">130</span><a name="line.130"></a>
+<span class="sourceLineNo">131</span>   /** Reusable instance of {@link UrlEncodingSerializer}, all default settings. */<a name="line.131"></a>
+<span class="sourceLineNo">132</span>   public static final UrlEncodingSerializer DEFAULT = new UrlEncodingSerializer(PropertyStore.create());<a name="line.132"></a>
+<span class="sourceLineNo">133</span><a name="line.133"></a>
+<span class="sourceLineNo">134</span>   /** Reusable instance of {@link UrlEncodingSerializer.PlainText}. */<a name="line.134"></a>
+<span class="sourceLineNo">135</span>   public static final UrlEncodingSerializer DEFAULT_PLAINTEXT = new PlainText(PropertyStore.create());<a name="line.135"></a>
+<span class="sourceLineNo">136</span><a name="line.136"></a>
+<span class="sourceLineNo">137</span>   /** Reusable instance of {@link UrlEncodingSerializer.Expanded}. */<a name="line.137"></a>
+<span class="sourceLineNo">138</span>   public static final UrlEncodingSerializer DEFAULT_EXPANDED = new Expanded(PropertyStore.create());<a name="line.138"></a>
+<span class="sourceLineNo">139</span><a name="line.139"></a>
+<span class="sourceLineNo">140</span>   /** Reusable instance of {@link UrlEncodingSerializer.Readable}. */<a name="line.140"></a>
+<span class="sourceLineNo">141</span>   public static final UrlEncodingSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.141"></a>
+<span class="sourceLineNo">142</span><a name="line.142"></a>
+<span class="sourceLineNo">143</span>   /**<a name="line.143"></a>
+<span class="sourceLineNo">144</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().expandedParams(&lt;jk&gt;true&lt;/jk&gt;).build();&lt;/code&gt;.<a name="line.144"></a>
+<span class="sourceLineNo">145</span>    */<a name="line.145"></a>
+<span class="sourceLineNo">146</span>   public static class Expanded extends UrlEncodingSerializer {<a name="line.146"></a>
+<span class="sourceLineNo">147</span><a name="line.147"></a>
+<span class="sourceLineNo">148</span>      /**<a name="line.148"></a>
+<span class="sourceLineNo">149</span>       * Constructor.<a name="line.149"></a>
+<span class="sourceLineNo">150</span>       *<a name="line.150"></a>
+<span class="sourceLineNo">151</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.151"></a>
+<span class="sourceLineNo">152</span>       */<a name="line.152"></a>
+<span class="sourceLineNo">153</span>      public Expanded(PropertyStore propertyStore) {<a name="line.153"></a>
+<span class="sourceLineNo">154</span>         super(propertyStore.copy().append(URLENC_expandedParams, true));<a name="line.154"></a>
+<span class="sourceLineNo">155</span>      }<a name="line.155"></a>
+<span class="sourceLineNo">156</span>   }<a name="line.156"></a>
+<span class="sourceLineNo">157</span><a name="line.157"></a>
+<span class="sourceLineNo">158</span>   /**<a name="line.158"></a>
+<span class="sourceLineNo">159</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().useWhitespace(&lt;jk&gt;true&lt;/jk&gt;).build();&lt;/code&gt;.<a name="line.159"></a>
+<span class="sourceLineNo">160</span>    */<a name="line.160"></a>
+<span class="sourceLineNo">161</span>   public static class Readable extends UrlEncodingSerializer {<a name="line.161"></a>
+<span class="sourceLineNo">162</span><a name="line.162"></a>
+<span class="sourceLineNo">163</span>      /**<a name="line.163"></a>
+<span class="sourceLineNo">164</span>       * Constructor.<a name="line.164"></a>
+<span class="sourceLineNo">165</span>       *<a name="line.165"></a>
+<span class="sourceLineNo">166</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.166"></a>
+<span class="sourceLineNo">167</span>       */<a name="line.167"></a>
+<span class="sourceLineNo">168</span>      public Readable(PropertyStore propertyStore) {<a name="line.168"></a>
+<span class="sourceLineNo">169</span>         super(propertyStore.copy().append(SERIALIZER_useWhitespace, true));<a name="line.169"></a>
+<span class="sourceLineNo">170</span>      }<a name="line.170"></a>
+<span class="sourceLineNo">171</span>   }<a name="line.171"></a>
+<span class="sourceLineNo">172</span><a name="line.172"></a>
+<span class="sourceLineNo">173</span>   /**<a name="line.173"></a>
+<span class="sourceLineNo">174</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().plainTextParts().build();&lt;/code&gt;.<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    */<a name="line.175"></a>
+<span class="sourceLineNo">176</span>   public static class PlainText extends UrlEncodingSerializer {<a name="line.176"></a>
+<span class="sourceLineNo">177</span><a name="line.177"></a>
+<span class="sourceLineNo">178</span>      /**<a name="line.178"></a>
+<span class="sourceLineNo">179</span>       * Constructor.<a name="line.179"></a>
+<span class="sourceLineNo">180</span>       *<a name="line.180"></a>
+<span class="sourceLineNo">181</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.181"></a>
+<span class="sourceLineNo">182</span>       */<a name="line.182"></a>
+<span class="sourceLineNo">183</span>      public PlainText(PropertyStore propertyStore) {<a name="line.183"></a>
+<span class="sourceLineNo">184</span>         super(propertyStore.copy().append(UON_paramFormat, "PLAINTEXT"));<a name="line.184"></a>
+<span class="sourceLineNo">185</span>      }<a name="line.185"></a>
+<span class="sourceLineNo">186</span>   }<a name="line.186"></a>
+<span class="sourceLineNo">187</span><a name="line.187"></a>
+<span class="sourceLineNo">188</span>   private final UrlEncodingSerializerContext ctx;<a name="line.188"></a>
+<span class="sourceLineNo">189</span><a name="line.189"></a>
+<span class="sourceLineNo">190</span>   /**<a name="line.190"></a>
+<span class="sourceLineNo">191</span>    * Constructor.<a name="line.191"></a>
+<span class="sourceLineNo">192</span>    *<a name="line.192"></a>
+<span class="sourceLineNo">193</span>    * @param propertyStore<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    *    The property store containing all the settings for this object.<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    */<a name="line.195"></a>
+<span class="sourceLineNo">196</span>   public UrlEncodingSerializer(PropertyStore propertyStore) {<a name="line.196"></a>
+<span class="sourceLineNo">197</span>      this(propertyStore, "application/x-www-form-urlencoded");<a name="line.197"></a>
+<span class="sourceLineNo">198</span>   }<a name="line.198"></a>
+<span class="sourceLineNo">199</span><a name="line.199"></a>
+<span class="sourceLineNo">200</span>   /**<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    * Constructor.<a name="line.201"></a>
+<span class="sourceLineNo">202</span>    *<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    * @param propertyStore<a name="line.203"></a>
+<span class="sourceLineNo">204</span>    *    The property store containing all the settings for this object.<a name="line.204"></a>
+<span class="sourceLineNo">205</span>    * @param produces<a name="line.205"></a>
+<span class="sourceLineNo">206</span>    *    The media type that this serializer produces.<a name="line.206"></a>
+<span class="sourceLineNo">207</span>    * @param accept<a name="line.207"></a>
+<span class="sourceLineNo">208</span>    *    The accept media types that the serializer can handle.<a name="line.208"></a>
+<span class="sourceLineNo">209</span>    *    &lt;p&gt;<a name="line.209"></a>
+<span class="sourceLineNo">210</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.210"></a>
+<span class="sourceLineNo">211</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>    *    &lt;p&gt;<a name="line.212"></a>
+<span class="sourceLineNo">213</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.213"></a>
+<span class="sourceLineNo">214</span>    *    &lt;p&gt;<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.216"></a>
+<span class="sourceLineNo">217</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.217"></a>
+<span class="sourceLineNo">218</span>    *    &lt;br&gt;...or...<a name="line.218"></a>
+<span class="sourceLineNo">219</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.219"></a>
+<span class="sourceLineNo">220</span>    */<a name="line.220"></a>
+<span class="sourceLineNo">221</span>   public UrlEncodingSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.221"></a>
+<span class="sourceLineNo">222</span>      super(propertyStore.copy().append(UON_encodeChars, true), produces, accept);<a name="line.222"></a>
+<span class="sourceLineNo">223</span>      this.ctx = createContext(UrlEncodingSerializerContext.class);<a name="line.223"></a>
+<span class="sourceLineNo">224</span>   }<a name="line.224"></a>
+<span class="sourceLineNo">225</span><a name="line.225"></a>
+<span class="sourceLineNo">226</span><a name="line.226"></a>
+<span class="sourceLineNo">227</span>   @Override /* CoreObject */<a name="line.227"></a>
+<span class="sourceLineNo">228</span>   public UrlEncodingSerializerBuilder builder() {<a name="line.228"></a>
+<span class="sourceLineNo">229</span>      return new UrlEncodingSerializerBuilder(propertyStore);<a name="line.229"></a>
+<span class="sourceLineNo">230</span>   }<a name="line.230"></a>
+<span class="sourceLineNo">231</span><a name="line.231"></a>
+<span class="sourceLineNo">232</span><a name="line.232"></a>
+<span class="sourceLineNo">233</span>   //--------------------------------------------------------------------------------<a name="line.233"></a>
+<span class="sourceLineNo">234</span>   // Methods for constructing individual parameter values.<a name="line.234"></a>
+<span class="sourceLineNo">235</span>   //--------------------------------------------------------------------------------<a name="line.235"></a>
+<span class="sourceLineNo">236</span><a name="line.236"></a>
+<span class="sourceLineNo">237</span>   /**<a name="line.237"></a>
+<span class="sourceLineNo">238</span>    * Converts the specified object to a string using this serializers {@link BeanSession#convertToType(Object, Class)}<a name="line.238"></a>
+<span class="sourceLineNo">239</span>    * method and runs {@link URLEncoder#encode(String,String)} against the results.<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    *<a name="line.240"></a>
+<span class="sourceLineNo">241</span>    * &lt;p&gt;<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    * Useful for constructing URL parts.<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    *<a name="line.243"></a>
+<span class="sourceLineNo">244</span>    * @param o The object to serialize.<a name="line.244"></a>
+<span class="sourceLineNo">245</span>    * @param urlEncode<a name="line.245"></a>
+<span class="sourceLineNo">246</span>    *    URL-encode the string if necessary.<a name="line.246"></a>
+<span class="sourceLineNo">247</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then uses the value of the {@link UonSerializerContext#UON_encodeChars} setting.<a name="line.247"></a>
+<span class="sourceLineNo">248</span>    * @param plainTextParams<a name="line.248"></a>
+<span class="sourceLineNo">249</span>    *    Whether we're using plain-text params.<a name="line.249"></a>
+<span class="sourceLineNo">250</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then uses the value from the {@link UrlEncodingSerializerContext#URLENC_paramFormat} setting.<a name="line.250"></a>
+<span class="sourceLineNo">251</span>    * @return The serialized object.<a name="line.251"></a>
+<span class="sourceLineNo">252</span>    */<a name="line.252"></a>
+<span class="sourceLineNo">253</span>   private String serializePart(Object o, Boolean urlEncode, Boolean plainTextParams) {<a name="line.253"></a>
+<span class="sourceLineNo">254</span>      try {<a name="line.254"></a>
+<span class="sourceLineNo">255</span>         // Shortcut for simple types.<a name="line.255"></a>
+<span class="sourceLineNo">256</span>         ClassMeta&lt;?&gt; cm = getBeanContext().getClassMetaForObject(o);<a name="line.256"></a>
+<span class="sourceLineNo">257</span>         if (cm != null) {<a name="line.257"></a>
+<span class="sourceLineNo">258</span>            if (cm.isNumber() || cm.isBoolean())<a name="line.258"></a>
+<span class="sourceLineNo">259</span>               return o.toString();<a name="line.259"></a>
+<span class="sourceLineNo">260</span>            if (cm.isCharSequence()) {<a name="line.260"></a>
+<span class="sourceLineNo">261</span>               String s = o.toString();<a name="line.261"></a>
+<span class="sourceLineNo">262</span>               boolean ptt = (plainTextParams != null ? plainTextParams : ctx.plainTextParams());<a name="line.262"></a>
+<span class="sourceLineNo">263</span>               if (ptt || s.isEmpty() || ! UonUtils.needsQuotes(s))<a name="line.263"></a>
+<span class="sourceLineNo">264</span>                  return (urlEncode ? urlEncode(s) : s);<a name="line.264"></a>
+<span class="sourceLineNo">265</span>            }<a name="line.265"></a>
+<span class="sourceLineNo">266</span>         }<a name="line.266"></a>
+<span class="sourceLineNo">267</span><a name="line.267"></a>
+<span class="sourceLineNo">268</span>         StringWriter w = new StringWriter();<a name="line.268"></a>
+<span class="sourceLineNo">269</span>         UonSerializerSession s = new UonSerializerSession(ctx, urlEncode, createDefaultSessionArgs());<a name="line.269"></a>
+<span class="sourceLineNo">270</span>         s.serialize(w, o);<a name="line.270"></a>
+<span class="sourceLineNo">271</span>         return w.toString();<a name="line.271"></a>
+<span class="sourceLineNo">272</span>      } catch (Exception e) {<a name="line.272"></a>
+<span class="sourceLineNo">273</span>         throw new RuntimeException(e);<a name="line.273"></a>
+<span class="sourceLineNo">274</span>      }<a name="line.274"></a>
+<span class="sourceLineNo">275</span>   }<a name="line.275"></a>
+<span class="sourceLineNo">276</span><a name="line.276"></a>
+<span class="sourceLineNo">277</span><a name="line.277"></a>
+<span class="sourceLineNo">278</span>   //--------------------------------------------------------------------------------<a name="line.278"></a>
+<span class="sourceLineNo">279</span>   // Entry point methods<a name="line.279"></a>
+<span class="sourceLineNo">280</span>   //--------------------------------------------------------------------------------<a name="line.280"></a>
+<span class="sourceLineNo">281</span><a name="line.281"></a>
+<span class="sourceLineNo">282</span>   @Override /* Serializer */<a name="line.282"></a>
+<span class="sourceLineNo">283</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.283"></a>
+<span class="sourceLineNo">284</span>      return new UrlEncodingSerializerSession(ctx, null, args);<a name="line.284"></a>
+<span class="sourceLineNo">285</span>   }<a name="line.285"></a>
+<span class="sourceLineNo">286</span><a name="line.286"></a>
+<span class="sourceLineNo">287</span>   @Override /* PartSerializer */<a name="line.287"></a>
+<span class="sourceLineNo">288</span>   public String serialize(PartType type, Object value) {<a name="line.288"></a>
+<span class="sourceLineNo">289</span>      switch(type) {<a name="line.289"></a>
+<span class="sourceLineNo">290</span>         case HEADER: return serializePart(value, false, true);<a name="line.290"></a>
+<span class="sourceLineNo">291</span>         case FORM_DATA: return serializePart(value, false, null);<a name="line.291"></a>
+<span class="sourceLineNo">292</span>         case PATH: return serializePart(value, false, null);<a name="line.292"></a>
+<span class="sourceLineNo">293</span>         case QUERY: return serializePart(value, false, null);<a name="line.293"></a>
+<span class="sourceLineNo">294</span>         default: return toString(value);<a name="line.294"></a>
+<span class="sourceLineNo">295</span>      }<a name="line.295"></a>
+<span class="sourceLineNo">296</span>   }<a name="line.296"></a>
+<span class="sourceLineNo">297</span>}<a name="line.297"></a>
 
 
 


[05/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.NsSq.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.NsSq.html b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.NsSq.html
index 957e688..1f13575 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.NsSq.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.NsSq.html
@@ -24,235 +24,258 @@
 <span class="sourceLineNo">016</span>import static org.apache.juneau.xml.XmlSerializerContext.*;<a name="line.16"></a>
 <span class="sourceLineNo">017</span><a name="line.17"></a>
 <span class="sourceLineNo">018</span>import org.apache.juneau.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.annotation.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.json.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span>import org.apache.juneau.serializer.*;<a name="line.21"></a>
-<span class="sourceLineNo">022</span><a name="line.22"></a>
-<span class="sourceLineNo">023</span>/**<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * Serializes POJO models to XML.<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * &lt;p&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * See the {@link JsonSerializer} class for details on how Java models map to JSON.<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *<a name="line.36"></a>
-<span class="sourceLineNo">037</span> * &lt;p&gt;<a name="line.37"></a>
-<span class="sourceLineNo">038</span> * For example, the following JSON...<a name="line.38"></a>
-<span class="sourceLineNo">039</span> * &lt;p class='bcode'&gt;<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *    {<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *       name:&lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.41"></a>
-<span class="sourceLineNo">042</span> *       address: {<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *          streetAddress: &lt;js&gt;'21 2nd Street'&lt;/js&gt;,<a name="line.43"></a>
-<span class="sourceLineNo">044</span> *          city: &lt;js&gt;'New York'&lt;/js&gt;,<a name="line.44"></a>
-<span class="sourceLineNo">045</span> *          state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.45"></a>
-<span class="sourceLineNo">046</span> *          postalCode: &lt;js&gt;10021&lt;/js&gt;<a name="line.46"></a>
-<span class="sourceLineNo">047</span> *       },<a name="line.47"></a>
-<span class="sourceLineNo">048</span> *       phoneNumbers: [<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *          &lt;js&gt;'212 555-1111'&lt;/js&gt;,<a name="line.49"></a>
-<span class="sourceLineNo">050</span> *          &lt;js&gt;'212 555-2222'&lt;/js&gt;<a name="line.50"></a>
-<span class="sourceLineNo">051</span> *       ],<a name="line.51"></a>
-<span class="sourceLineNo">052</span> *       additionalInfo: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.52"></a>
-<span class="sourceLineNo">053</span> *       remote: &lt;jk&gt;false&lt;/jk&gt;,<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *       height: &lt;js&gt;62.4&lt;/js&gt;,<a name="line.54"></a>
-<span class="sourceLineNo">055</span> *       &lt;js&gt;'fico score'&lt;/js&gt;:  &lt;js&gt;' &amp;gt; 640'&lt;/js&gt;<a name="line.55"></a>
-<span class="sourceLineNo">056</span> *    }<a name="line.56"></a>
-<span class="sourceLineNo">057</span> * &lt;p&gt;<a name="line.57"></a>
-<span class="sourceLineNo">058</span> *    ...maps to the following XML using the default serializer...<a name="line.58"></a>
-<span class="sourceLineNo">059</span> * &lt;p class='bcode'&gt;<a name="line.59"></a>
-<span class="sourceLineNo">060</span> *    &lt;xt&gt;&amp;lt;object&amp;gt;&lt;/xt&gt;<a name="line.60"></a>
-<span class="sourceLineNo">061</span> *       &lt;xt&gt;&amp;lt;name&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.61"></a>
-<span class="sourceLineNo">062</span> *       &lt;xt&gt;&amp;lt;address&amp;gt;&lt;/xt&gt;<a name="line.62"></a>
-<span class="sourceLineNo">063</span> *          &lt;xt&gt;&amp;lt;streetAddress&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.63"></a>
-<span class="sourceLineNo">064</span> *          &lt;xt&gt;&amp;lt;city&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.64"></a>
-<span class="sourceLineNo">065</span> *          &lt;xt&gt;&amp;lt;state&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.65"></a>
-<span class="sourceLineNo">066</span> *          &lt;xt&gt;&amp;lt;postalCode&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.66"></a>
-<span class="sourceLineNo">067</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.67"></a>
-<span class="sourceLineNo">068</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.68"></a>
-<span class="sourceLineNo">069</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.69"></a>
-<span class="sourceLineNo">070</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.70"></a>
-<span class="sourceLineNo">071</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.71"></a>
-<span class="sourceLineNo">072</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.72"></a>
-<span class="sourceLineNo">073</span> *       &lt;xt&gt;&amp;lt;remote&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.73"></a>
-<span class="sourceLineNo">074</span> *       &lt;xt&gt;&amp;lt;height&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.74"></a>
-<span class="sourceLineNo">075</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.75"></a>
-<span class="sourceLineNo">076</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.76"></a>
-<span class="sourceLineNo">077</span> *<a name="line.77"></a>
-<span class="sourceLineNo">078</span> * &lt;p&gt;<a name="line.78"></a>
-<span class="sourceLineNo">079</span> * An additional "add-json-properties" mode is also provided to prevent loss of JSON data types...<a name="line.79"></a>
-<span class="sourceLineNo">080</span> * &lt;p class='bcode'&gt;<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *       &lt;xt&gt;&amp;lt;name&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *       &lt;xt&gt;&amp;lt;address&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'object'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *          &lt;xt&gt;&amp;lt;streetAddress&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.83"></a>
-<span class="sourceLineNo">084</span> *          &lt;xt&gt;&amp;lt;city&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *          &lt;xt&gt;&amp;lt;state&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.85"></a>
-<span class="sourceLineNo">086</span> *          &lt;xt&gt;&amp;lt;postalCode&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.86"></a>
-<span class="sourceLineNo">087</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'array'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *       &lt;xt&gt;&amp;lt;remote&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'boolean'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.93"></a>
-<span class="sourceLineNo">094</span> *       &lt;xt&gt;&amp;lt;height&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.95"></a>
-<span class="sourceLineNo">096</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.96"></a>
-<span class="sourceLineNo">097</span> * &lt;/p&gt;<a name="line.97"></a>
-<span class="sourceLineNo">098</span> *<a name="line.98"></a>
-<span class="sourceLineNo">099</span> * &lt;p&gt;<a name="line.99"></a>
-<span class="sourceLineNo">100</span> * This serializer provides several serialization options.<a name="line.100"></a>
-<span class="sourceLineNo">101</span> * Typically, one of the predefined &lt;jsf&gt;DEFAULT&lt;/jsf&gt; serializers will be sufficient.<a name="line.101"></a>
-<span class="sourceLineNo">102</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.102"></a>
-<span class="sourceLineNo">103</span> *<a name="line.103"></a>
-<span class="sourceLineNo">104</span> * &lt;p&gt;<a name="line.104"></a>
-<span class="sourceLineNo">105</span> * If an attribute name contains any non-valid XML element characters, they will be escaped using standard<a name="line.105"></a>
-<span class="sourceLineNo">106</span> * {@code _x####_} notation.<a name="line.106"></a>
-<span class="sourceLineNo">107</span> *<a name="line.107"></a>
-<span class="sourceLineNo">108</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.108"></a>
-<span class="sourceLineNo">109</span> *<a name="line.109"></a>
-<span class="sourceLineNo">110</span> * This class has the following properties associated with it:<a name="line.110"></a>
-<span class="sourceLineNo">111</span> * &lt;ul&gt;<a name="line.111"></a>
-<span class="sourceLineNo">112</span> *    &lt;li&gt;{@link XmlSerializerContext}<a name="line.112"></a>
-<span class="sourceLineNo">113</span> *    &lt;li&gt;{@link BeanContext}<a name="line.113"></a>
-<span class="sourceLineNo">114</span> * &lt;/ul&gt;<a name="line.114"></a>
-<span class="sourceLineNo">115</span> *<a name="line.115"></a>
-<span class="sourceLineNo">116</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.116"></a>
-<span class="sourceLineNo">117</span> *<a name="line.117"></a>
-<span class="sourceLineNo">118</span> * The following direct subclasses are provided for convenience:<a name="line.118"></a>
-<span class="sourceLineNo">119</span> * &lt;ul&gt;<a name="line.119"></a>
-<span class="sourceLineNo">120</span> *    &lt;li&gt;{@link Sq} - Default serializer, single quotes.<a name="line.120"></a>
-<span class="sourceLineNo">121</span> *    &lt;li&gt;{@link SqReadable} - Default serializer, single quotes, whitespace added.<a name="line.121"></a>
-<span class="sourceLineNo">122</span> * &lt;/ul&gt;<a name="line.122"></a>
-<span class="sourceLineNo">123</span> */<a name="line.123"></a>
-<span class="sourceLineNo">124</span>@Produces("text/xml")<a name="line.124"></a>
-<span class="sourceLineNo">125</span>public class XmlSerializer extends WriterSerializer {<a name="line.125"></a>
-<span class="sourceLineNo">126</span><a name="line.126"></a>
-<span class="sourceLineNo">127</span>   /** Default serializer without namespaces. */<a name="line.127"></a>
-<span class="sourceLineNo">128</span>   public static final XmlSerializer DEFAULT = new XmlSerializer(PropertyStore.create());<a name="line.128"></a>
-<span class="sourceLineNo">129</span><a name="line.129"></a>
-<span class="sourceLineNo">130</span>   /** Default serializer without namespaces, with single quotes. */<a name="line.130"></a>
-<span class="sourceLineNo">131</span>   public static final XmlSerializer DEFAULT_SQ = new Sq(PropertyStore.create());<a name="line.131"></a>
-<span class="sourceLineNo">132</span><a name="line.132"></a>
-<span class="sourceLineNo">133</span>   /** Default serializer without namespaces, with single quotes, whitespace added. */<a name="line.133"></a>
-<span class="sourceLineNo">134</span>   public static final XmlSerializer DEFAULT_SQ_READABLE = new SqReadable(PropertyStore.create());<a name="line.134"></a>
-<span class="sourceLineNo">135</span><a name="line.135"></a>
-<span class="sourceLineNo">136</span>   /** Default serializer, all default settings. */<a name="line.136"></a>
-<span class="sourceLineNo">137</span>   public static final XmlSerializer DEFAULT_NS = new Ns(PropertyStore.create());<a name="line.137"></a>
-<span class="sourceLineNo">138</span><a name="line.138"></a>
-<span class="sourceLineNo">139</span>   /** Default serializer, single quotes. */<a name="line.139"></a>
-<span class="sourceLineNo">140</span>   public static final XmlSerializer DEFAULT_NS_SQ = new NsSq(PropertyStore.create());<a name="line.140"></a>
-<span class="sourceLineNo">141</span><a name="line.141"></a>
-<span class="sourceLineNo">142</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.142"></a>
-<span class="sourceLineNo">143</span>   public static final XmlSerializer DEFAULT_NS_SQ_READABLE = new NsSqReadable(PropertyStore.create());<a name="line.143"></a>
-<span class="sourceLineNo">144</span><a name="line.144"></a>
-<span class="sourceLineNo">145</span><a name="line.145"></a>
-<span class="sourceLineNo">146</span>   /** Default serializer, single quotes. */<a name="line.146"></a>
-<span class="sourceLineNo">147</span>   public static class Sq extends XmlSerializer {<a name="line.147"></a>
-<span class="sourceLineNo">148</span><a name="line.148"></a>
-<span class="sourceLineNo">149</span>      /**<a name="line.149"></a>
-<span class="sourceLineNo">150</span>       * Constructor.<a name="line.150"></a>
-<span class="sourceLineNo">151</span>       *<a name="line.151"></a>
-<span class="sourceLineNo">152</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.152"></a>
-<span class="sourceLineNo">153</span>       */<a name="line.153"></a>
-<span class="sourceLineNo">154</span>      public Sq(PropertyStore propertyStore) {<a name="line.154"></a>
-<span class="sourceLineNo">155</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\''));<a name="line.155"></a>
-<span class="sourceLineNo">156</span>      }<a name="line.156"></a>
-<span class="sourceLineNo">157</span>   }<a name="line.157"></a>
-<span class="sourceLineNo">158</span><a name="line.158"></a>
-<span class="sourceLineNo">159</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.159"></a>
-<span class="sourceLineNo">160</span>   public static class SqReadable extends XmlSerializer {<a name="line.160"></a>
-<span class="sourceLineNo">161</span><a name="line.161"></a>
-<span class="sourceLineNo">162</span>      /**<a name="line.162"></a>
-<span class="sourceLineNo">163</span>       * Constructor.<a name="line.163"></a>
-<span class="sourceLineNo">164</span>       *<a name="line.164"></a>
-<span class="sourceLineNo">165</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.165"></a>
-<span class="sourceLineNo">166</span>       */<a name="line.166"></a>
-<span class="sourceLineNo">167</span>      public SqReadable(PropertyStore propertyStore) {<a name="line.167"></a>
-<span class="sourceLineNo">168</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\'').append(SERIALIZER_useWhitespace, true));<a name="line.168"></a>
-<span class="sourceLineNo">169</span>      }<a name="line.169"></a>
-<span class="sourceLineNo">170</span>   }<a name="line.170"></a>
-<span class="sourceLineNo">171</span><a name="line.171"></a>
-<span class="sourceLineNo">172</span>   /** Default serializer without namespaces. */<a name="line.172"></a>
-<span class="sourceLineNo">173</span>   @Produces(value="text/xml+simple",contentType="text/xml")<a name="line.173"></a>
-<span class="sourceLineNo">174</span>   public static class Ns extends XmlSerializer {<a name="line.174"></a>
-<span class="sourceLineNo">175</span><a name="line.175"></a>
-<span class="sourceLineNo">176</span>      /**<a name="line.176"></a>
-<span class="sourceLineNo">177</span>       * Constructor.<a name="line.177"></a>
-<span class="sourceLineNo">178</span>       *<a name="line.178"></a>
-<span class="sourceLineNo">179</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.179"></a>
-<span class="sourceLineNo">180</span>       */<a name="line.180"></a>
-<span class="sourceLineNo">181</span>      public Ns(PropertyStore propertyStore) {<a name="line.181"></a>
-<span class="sourceLineNo">182</span>         super(propertyStore.copy().append(XML_enableNamespaces, true));<a name="line.182"></a>
-<span class="sourceLineNo">183</span>      }<a name="line.183"></a>
-<span class="sourceLineNo">184</span>   }<a name="line.184"></a>
+<span class="sourceLineNo">019</span>import org.apache.juneau.json.*;<a name="line.19"></a>
+<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
+<span class="sourceLineNo">021</span><a name="line.21"></a>
+<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * Serializes POJO models to XML.<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;p&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * See the {@link JsonSerializer} class for details on how Java models map to JSON.<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *<a name="line.35"></a>
+<span class="sourceLineNo">036</span> * &lt;p&gt;<a name="line.36"></a>
+<span class="sourceLineNo">037</span> * For example, the following JSON...<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * &lt;p class='bcode'&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *    {<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *       name:&lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.40"></a>
+<span class="sourceLineNo">041</span> *       address: {<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *          streetAddress: &lt;js&gt;'21 2nd Street'&lt;/js&gt;,<a name="line.42"></a>
+<span class="sourceLineNo">043</span> *          city: &lt;js&gt;'New York'&lt;/js&gt;,<a name="line.43"></a>
+<span class="sourceLineNo">044</span> *          state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.44"></a>
+<span class="sourceLineNo">045</span> *          postalCode: &lt;js&gt;10021&lt;/js&gt;<a name="line.45"></a>
+<span class="sourceLineNo">046</span> *       },<a name="line.46"></a>
+<span class="sourceLineNo">047</span> *       phoneNumbers: [<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *          &lt;js&gt;'212 555-1111'&lt;/js&gt;,<a name="line.48"></a>
+<span class="sourceLineNo">049</span> *          &lt;js&gt;'212 555-2222'&lt;/js&gt;<a name="line.49"></a>
+<span class="sourceLineNo">050</span> *       ],<a name="line.50"></a>
+<span class="sourceLineNo">051</span> *       additionalInfo: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.51"></a>
+<span class="sourceLineNo">052</span> *       remote: &lt;jk&gt;false&lt;/jk&gt;,<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *       height: &lt;js&gt;62.4&lt;/js&gt;,<a name="line.53"></a>
+<span class="sourceLineNo">054</span> *       &lt;js&gt;'fico score'&lt;/js&gt;:  &lt;js&gt;' &amp;gt; 640'&lt;/js&gt;<a name="line.54"></a>
+<span class="sourceLineNo">055</span> *    }<a name="line.55"></a>
+<span class="sourceLineNo">056</span> * &lt;p&gt;<a name="line.56"></a>
+<span class="sourceLineNo">057</span> *    ...maps to the following XML using the default serializer...<a name="line.57"></a>
+<span class="sourceLineNo">058</span> * &lt;p class='bcode'&gt;<a name="line.58"></a>
+<span class="sourceLineNo">059</span> *    &lt;xt&gt;&amp;lt;object&amp;gt;&lt;/xt&gt;<a name="line.59"></a>
+<span class="sourceLineNo">060</span> *       &lt;xt&gt;&amp;lt;name&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.60"></a>
+<span class="sourceLineNo">061</span> *       &lt;xt&gt;&amp;lt;address&amp;gt;&lt;/xt&gt;<a name="line.61"></a>
+<span class="sourceLineNo">062</span> *          &lt;xt&gt;&amp;lt;streetAddress&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.62"></a>
+<span class="sourceLineNo">063</span> *          &lt;xt&gt;&amp;lt;city&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.63"></a>
+<span class="sourceLineNo">064</span> *          &lt;xt&gt;&amp;lt;state&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.64"></a>
+<span class="sourceLineNo">065</span> *          &lt;xt&gt;&amp;lt;postalCode&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.65"></a>
+<span class="sourceLineNo">066</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.66"></a>
+<span class="sourceLineNo">067</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.67"></a>
+<span class="sourceLineNo">068</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.68"></a>
+<span class="sourceLineNo">069</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.69"></a>
+<span class="sourceLineNo">070</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.70"></a>
+<span class="sourceLineNo">071</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.71"></a>
+<span class="sourceLineNo">072</span> *       &lt;xt&gt;&amp;lt;remote&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.72"></a>
+<span class="sourceLineNo">073</span> *       &lt;xt&gt;&amp;lt;height&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.73"></a>
+<span class="sourceLineNo">074</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.74"></a>
+<span class="sourceLineNo">075</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.75"></a>
+<span class="sourceLineNo">076</span> *<a name="line.76"></a>
+<span class="sourceLineNo">077</span> * &lt;p&gt;<a name="line.77"></a>
+<span class="sourceLineNo">078</span> * An additional "add-json-properties" mode is also provided to prevent loss of JSON data types...<a name="line.78"></a>
+<span class="sourceLineNo">079</span> * &lt;p class='bcode'&gt;<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *       &lt;xt&gt;&amp;lt;name&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *       &lt;xt&gt;&amp;lt;address&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'object'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *          &lt;xt&gt;&amp;lt;streetAddress&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.82"></a>
+<span class="sourceLineNo">083</span> *          &lt;xt&gt;&amp;lt;city&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *          &lt;xt&gt;&amp;lt;state&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.84"></a>
+<span class="sourceLineNo">085</span> *          &lt;xt&gt;&amp;lt;postalCode&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.85"></a>
+<span class="sourceLineNo">086</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'array'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.87"></a>
+<span class="sourceLineNo">088</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.88"></a>
+<span class="sourceLineNo">089</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.89"></a>
+<span class="sourceLineNo">090</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.91"></a>
+<span class="sourceLineNo">092</span> *       &lt;xt&gt;&amp;lt;remote&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'boolean'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.92"></a>
+<span class="sourceLineNo">093</span> *       &lt;xt&gt;&amp;lt;height&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.93"></a>
+<span class="sourceLineNo">094</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.94"></a>
+<span class="sourceLineNo">095</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.95"></a>
+<span class="sourceLineNo">096</span> * &lt;/p&gt;<a name="line.96"></a>
+<span class="sourceLineNo">097</span> *<a name="line.97"></a>
+<span class="sourceLineNo">098</span> * &lt;p&gt;<a name="line.98"></a>
+<span class="sourceLineNo">099</span> * This serializer provides several serialization options.<a name="line.99"></a>
+<span class="sourceLineNo">100</span> * Typically, one of the predefined &lt;jsf&gt;DEFAULT&lt;/jsf&gt; serializers will be sufficient.<a name="line.100"></a>
+<span class="sourceLineNo">101</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.101"></a>
+<span class="sourceLineNo">102</span> *<a name="line.102"></a>
+<span class="sourceLineNo">103</span> * &lt;p&gt;<a name="line.103"></a>
+<span class="sourceLineNo">104</span> * If an attribute name contains any non-valid XML element characters, they will be escaped using standard<a name="line.104"></a>
+<span class="sourceLineNo">105</span> * {@code _x####_} notation.<a name="line.105"></a>
+<span class="sourceLineNo">106</span> *<a name="line.106"></a>
+<span class="sourceLineNo">107</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.107"></a>
+<span class="sourceLineNo">108</span> *<a name="line.108"></a>
+<span class="sourceLineNo">109</span> * This class has the following properties associated with it:<a name="line.109"></a>
+<span class="sourceLineNo">110</span> * &lt;ul&gt;<a name="line.110"></a>
+<span class="sourceLineNo">111</span> *    &lt;li&gt;{@link XmlSerializerContext}<a name="line.111"></a>
+<span class="sourceLineNo">112</span> *    &lt;li&gt;{@link BeanContext}<a name="line.112"></a>
+<span class="sourceLineNo">113</span> * &lt;/ul&gt;<a name="line.113"></a>
+<span class="sourceLineNo">114</span> *<a name="line.114"></a>
+<span class="sourceLineNo">115</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.115"></a>
+<span class="sourceLineNo">116</span> *<a name="line.116"></a>
+<span class="sourceLineNo">117</span> * The following direct subclasses are provided for convenience:<a name="line.117"></a>
+<span class="sourceLineNo">118</span> * &lt;ul&gt;<a name="line.118"></a>
+<span class="sourceLineNo">119</span> *    &lt;li&gt;{@link Sq} - Default serializer, single quotes.<a name="line.119"></a>
+<span class="sourceLineNo">120</span> *    &lt;li&gt;{@link SqReadable} - Default serializer, single quotes, whitespace added.<a name="line.120"></a>
+<span class="sourceLineNo">121</span> * &lt;/ul&gt;<a name="line.121"></a>
+<span class="sourceLineNo">122</span> */<a name="line.122"></a>
+<span class="sourceLineNo">123</span>public class XmlSerializer extends WriterSerializer {<a name="line.123"></a>
+<span class="sourceLineNo">124</span><a name="line.124"></a>
+<span class="sourceLineNo">125</span>   /** Default serializer without namespaces. */<a name="line.125"></a>
+<span class="sourceLineNo">126</span>   public static final XmlSerializer DEFAULT = new XmlSerializer(PropertyStore.create());<a name="line.126"></a>
+<span class="sourceLineNo">127</span><a name="line.127"></a>
+<span class="sourceLineNo">128</span>   /** Default serializer without namespaces, with single quotes. */<a name="line.128"></a>
+<span class="sourceLineNo">129</span>   public static final XmlSerializer DEFAULT_SQ = new Sq(PropertyStore.create());<a name="line.129"></a>
+<span class="sourceLineNo">130</span><a name="line.130"></a>
+<span class="sourceLineNo">131</span>   /** Default serializer without namespaces, with single quotes, whitespace added. */<a name="line.131"></a>
+<span class="sourceLineNo">132</span>   public static final XmlSerializer DEFAULT_SQ_READABLE = new SqReadable(PropertyStore.create());<a name="line.132"></a>
+<span class="sourceLineNo">133</span><a name="line.133"></a>
+<span class="sourceLineNo">134</span>   /** Default serializer, all default settings. */<a name="line.134"></a>
+<span class="sourceLineNo">135</span>   public static final XmlSerializer DEFAULT_NS = new Ns(PropertyStore.create());<a name="line.135"></a>
+<span class="sourceLineNo">136</span><a name="line.136"></a>
+<span class="sourceLineNo">137</span>   /** Default serializer, single quotes. */<a name="line.137"></a>
+<span class="sourceLineNo">138</span>   public static final XmlSerializer DEFAULT_NS_SQ = new NsSq(PropertyStore.create());<a name="line.138"></a>
+<span class="sourceLineNo">139</span><a name="line.139"></a>
+<span class="sourceLineNo">140</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.140"></a>
+<span class="sourceLineNo">141</span>   public static final XmlSerializer DEFAULT_NS_SQ_READABLE = new NsSqReadable(PropertyStore.create());<a name="line.141"></a>
+<span class="sourceLineNo">142</span><a name="line.142"></a>
+<span class="sourceLineNo">143</span><a name="line.143"></a>
+<span class="sourceLineNo">144</span>   /** Default serializer, single quotes. */<a name="line.144"></a>
+<span class="sourceLineNo">145</span>   public static class Sq extends XmlSerializer {<a name="line.145"></a>
+<span class="sourceLineNo">146</span><a name="line.146"></a>
+<span class="sourceLineNo">147</span>      /**<a name="line.147"></a>
+<span class="sourceLineNo">148</span>       * Constructor.<a name="line.148"></a>
+<span class="sourceLineNo">149</span>       *<a name="line.149"></a>
+<span class="sourceLineNo">150</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.150"></a>
+<span class="sourceLineNo">151</span>       */<a name="line.151"></a>
+<span class="sourceLineNo">152</span>      public Sq(PropertyStore propertyStore) {<a name="line.152"></a>
+<span class="sourceLineNo">153</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\''));<a name="line.153"></a>
+<span class="sourceLineNo">154</span>      }<a name="line.154"></a>
+<span class="sourceLineNo">155</span>   }<a name="line.155"></a>
+<span class="sourceLineNo">156</span><a name="line.156"></a>
+<span class="sourceLineNo">157</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.157"></a>
+<span class="sourceLineNo">158</span>   public static class SqReadable extends XmlSerializer {<a name="line.158"></a>
+<span class="sourceLineNo">159</span><a name="line.159"></a>
+<span class="sourceLineNo">160</span>      /**<a name="line.160"></a>
+<span class="sourceLineNo">161</span>       * Constructor.<a name="line.161"></a>
+<span class="sourceLineNo">162</span>       *<a name="line.162"></a>
+<span class="sourceLineNo">163</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.163"></a>
+<span class="sourceLineNo">164</span>       */<a name="line.164"></a>
+<span class="sourceLineNo">165</span>      public SqReadable(PropertyStore propertyStore) {<a name="line.165"></a>
+<span class="sourceLineNo">166</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\'').append(SERIALIZER_useWhitespace, true));<a name="line.166"></a>
+<span class="sourceLineNo">167</span>      }<a name="line.167"></a>
+<span class="sourceLineNo">168</span>   }<a name="line.168"></a>
+<span class="sourceLineNo">169</span><a name="line.169"></a>
+<span class="sourceLineNo">170</span>   /** Default serializer without namespaces. */<a name="line.170"></a>
+<span class="sourceLineNo">171</span>   public static class Ns extends XmlSerializer {<a name="line.171"></a>
+<span class="sourceLineNo">172</span><a name="line.172"></a>
+<span class="sourceLineNo">173</span>      /**<a name="line.173"></a>
+<span class="sourceLineNo">174</span>       * Constructor.<a name="line.174"></a>
+<span class="sourceLineNo">175</span>       *<a name="line.175"></a>
+<span class="sourceLineNo">176</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.176"></a>
+<span class="sourceLineNo">177</span>       */<a name="line.177"></a>
+<span class="sourceLineNo">178</span>      public Ns(PropertyStore propertyStore) {<a name="line.178"></a>
+<span class="sourceLineNo">179</span>         super(propertyStore.copy().append(XML_enableNamespaces, true), "text/xml", "text/xml+simple");<a name="line.179"></a>
+<span class="sourceLineNo">180</span>      }<a name="line.180"></a>
+<span class="sourceLineNo">181</span>   }<a name="line.181"></a>
+<span class="sourceLineNo">182</span><a name="line.182"></a>
+<span class="sourceLineNo">183</span>   /** Default serializer without namespaces, single quotes. */<a name="line.183"></a>
+<span class="sourceLineNo">184</span>   public static class NsSq extends XmlSerializer {<a name="line.184"></a>
 <span class="sourceLineNo">185</span><a name="line.185"></a>
-<span class="sourceLineNo">186</span>   /** Default serializer without namespaces, single quotes. */<a name="line.186"></a>
-<span class="sourceLineNo">187</span>   public static class NsSq extends XmlSerializer {<a name="line.187"></a>
-<span class="sourceLineNo">188</span><a name="line.188"></a>
-<span class="sourceLineNo">189</span>      /**<a name="line.189"></a>
-<span class="sourceLineNo">190</span>       * Constructor.<a name="line.190"></a>
-<span class="sourceLineNo">191</span>       *<a name="line.191"></a>
-<span class="sourceLineNo">192</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.192"></a>
-<span class="sourceLineNo">193</span>       */<a name="line.193"></a>
-<span class="sourceLineNo">194</span>      public NsSq(PropertyStore propertyStore) {<a name="line.194"></a>
-<span class="sourceLineNo">195</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\''));<a name="line.195"></a>
-<span class="sourceLineNo">196</span>      }<a name="line.196"></a>
-<span class="sourceLineNo">197</span>   }<a name="line.197"></a>
+<span class="sourceLineNo">186</span>      /**<a name="line.186"></a>
+<span class="sourceLineNo">187</span>       * Constructor.<a name="line.187"></a>
+<span class="sourceLineNo">188</span>       *<a name="line.188"></a>
+<span class="sourceLineNo">189</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.189"></a>
+<span class="sourceLineNo">190</span>       */<a name="line.190"></a>
+<span class="sourceLineNo">191</span>      public NsSq(PropertyStore propertyStore) {<a name="line.191"></a>
+<span class="sourceLineNo">192</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\''));<a name="line.192"></a>
+<span class="sourceLineNo">193</span>      }<a name="line.193"></a>
+<span class="sourceLineNo">194</span>   }<a name="line.194"></a>
+<span class="sourceLineNo">195</span><a name="line.195"></a>
+<span class="sourceLineNo">196</span>   /** Default serializer without namespaces, single quotes, with whitespace. */<a name="line.196"></a>
+<span class="sourceLineNo">197</span>   public static class NsSqReadable extends XmlSerializer {<a name="line.197"></a>
 <span class="sourceLineNo">198</span><a name="line.198"></a>
-<span class="sourceLineNo">199</span>   /** Default serializer without namespaces, single quotes, with whitespace. */<a name="line.199"></a>
-<span class="sourceLineNo">200</span>   public static class NsSqReadable extends XmlSerializer {<a name="line.200"></a>
-<span class="sourceLineNo">201</span><a name="line.201"></a>
-<span class="sourceLineNo">202</span>      /**<a name="line.202"></a>
-<span class="sourceLineNo">203</span>       * Constructor.<a name="line.203"></a>
-<span class="sourceLineNo">204</span>       *<a name="line.204"></a>
-<span class="sourceLineNo">205</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.205"></a>
-<span class="sourceLineNo">206</span>       */<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      public NsSqReadable(PropertyStore propertyStore) {<a name="line.207"></a>
-<span class="sourceLineNo">208</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\'')<a name="line.208"></a>
-<span class="sourceLineNo">209</span>            .append(SERIALIZER_useWhitespace, true));<a name="line.209"></a>
-<span class="sourceLineNo">210</span>      }<a name="line.210"></a>
-<span class="sourceLineNo">211</span>   }<a name="line.211"></a>
-<span class="sourceLineNo">212</span><a name="line.212"></a>
+<span class="sourceLineNo">199</span>      /**<a name="line.199"></a>
+<span class="sourceLineNo">200</span>       * Constructor.<a name="line.200"></a>
+<span class="sourceLineNo">201</span>       *<a name="line.201"></a>
+<span class="sourceLineNo">202</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.202"></a>
+<span class="sourceLineNo">203</span>       */<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      public NsSqReadable(PropertyStore propertyStore) {<a name="line.204"></a>
+<span class="sourceLineNo">205</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\'')<a name="line.205"></a>
+<span class="sourceLineNo">206</span>            .append(SERIALIZER_useWhitespace, true));<a name="line.206"></a>
+<span class="sourceLineNo">207</span>      }<a name="line.207"></a>
+<span class="sourceLineNo">208</span>   }<a name="line.208"></a>
+<span class="sourceLineNo">209</span><a name="line.209"></a>
+<span class="sourceLineNo">210</span><a name="line.210"></a>
+<span class="sourceLineNo">211</span>   final XmlSerializerContext ctx;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>   private volatile XmlSchemaSerializer schemaSerializer;<a name="line.212"></a>
 <span class="sourceLineNo">213</span><a name="line.213"></a>
-<span class="sourceLineNo">214</span>   final XmlSerializerContext ctx;<a name="line.214"></a>
-<span class="sourceLineNo">215</span>   private volatile XmlSchemaSerializer schemaSerializer;<a name="line.215"></a>
-<span class="sourceLineNo">216</span><a name="line.216"></a>
-<span class="sourceLineNo">217</span>   /**<a name="line.217"></a>
-<span class="sourceLineNo">218</span>    * Constructor.<a name="line.218"></a>
-<span class="sourceLineNo">219</span>    *<a name="line.219"></a>
-<span class="sourceLineNo">220</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.220"></a>
-<span class="sourceLineNo">221</span>    */<a name="line.221"></a>
-<span class="sourceLineNo">222</span>   public XmlSerializer(PropertyStore propertyStore) {<a name="line.222"></a>
-<span class="sourceLineNo">223</span>      super(propertyStore);<a name="line.223"></a>
-<span class="sourceLineNo">224</span>      this.ctx = createContext(XmlSerializerContext.class);<a name="line.224"></a>
-<span class="sourceLineNo">225</span>   }<a name="line.225"></a>
-<span class="sourceLineNo">226</span><a name="line.226"></a>
-<span class="sourceLineNo">227</span>   @Override /* CoreObject */<a name="line.227"></a>
-<span class="sourceLineNo">228</span>   public XmlSerializerBuilder builder() {<a name="line.228"></a>
-<span class="sourceLineNo">229</span>      return new XmlSerializerBuilder(propertyStore);<a name="line.229"></a>
-<span class="sourceLineNo">230</span>   }<a name="line.230"></a>
-<span class="sourceLineNo">231</span><a name="line.231"></a>
-<span class="sourceLineNo">232</span><a name="line.232"></a>
-<span class="sourceLineNo">233</span>   /**<a name="line.233"></a>
-<span class="sourceLineNo">234</span>    * Returns the schema serializer based on the settings of this serializer.<a name="line.234"></a>
-<span class="sourceLineNo">235</span>    * @return The schema serializer.<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    */<a name="line.236"></a>
-<span class="sourceLineNo">237</span>   public XmlSerializer getSchemaSerializer() {<a name="line.237"></a>
-<span class="sourceLineNo">238</span>      if (schemaSerializer == null)<a name="line.238"></a>
-<span class="sourceLineNo">239</span>         schemaSerializer = new XmlSchemaSerializer(propertyStore);<a name="line.239"></a>
-<span class="sourceLineNo">240</span>      return schemaSerializer;<a name="line.240"></a>
-<span class="sourceLineNo">241</span>   }<a name="line.241"></a>
-<span class="sourceLineNo">242</span><a name="line.242"></a>
-<span class="sourceLineNo">243</span>   @Override /* Serializer */<a name="line.243"></a>
-<span class="sourceLineNo">244</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.244"></a>
-<span class="sourceLineNo">245</span>      return new XmlSerializerSession(ctx, args);<a name="line.245"></a>
-<span class="sourceLineNo">246</span>   }<a name="line.246"></a>
-<span class="sourceLineNo">247</span>}<a name="line.247"></a>
+<span class="sourceLineNo">214</span>   /**<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    * Constructor.<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    *<a name="line.216"></a>
+<span class="sourceLineNo">217</span>    * @param propertyStore<a name="line.217"></a>
+<span class="sourceLineNo">218</span>    *    The property store containing all the settings for this object.<a name="line.218"></a>
+<span class="sourceLineNo">219</span>    */<a name="line.219"></a>
+<span class="sourceLineNo">220</span>   public XmlSerializer(PropertyStore propertyStore) {<a name="line.220"></a>
+<span class="sourceLineNo">221</span>      this(propertyStore, "text/xml");<a name="line.221"></a>
+<span class="sourceLineNo">222</span>   }<a name="line.222"></a>
+<span class="sourceLineNo">223</span><a name="line.223"></a>
+<span class="sourceLineNo">224</span>   /**<a name="line.224"></a>
+<span class="sourceLineNo">225</span>    * Constructor.<a name="line.225"></a>
+<span class="sourceLineNo">226</span>    *<a name="line.226"></a>
+<span class="sourceLineNo">227</span>    * @param propertyStore<a name="line.227"></a>
+<span class="sourceLineNo">228</span>    *    The property store containing all the settings for this object.<a name="line.228"></a>
+<span class="sourceLineNo">229</span>    * @param produces<a name="line.229"></a>
+<span class="sourceLineNo">230</span>    *    The media type that this serializer produces.<a name="line.230"></a>
+<span class="sourceLineNo">231</span>    * @param accept<a name="line.231"></a>
+<span class="sourceLineNo">232</span>    *    The accept media types that the serializer can handle.<a name="line.232"></a>
+<span class="sourceLineNo">233</span>    *    &lt;p&gt;<a name="line.233"></a>
+<span class="sourceLineNo">234</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.235"></a>
+<span class="sourceLineNo">236</span>    *    &lt;p&gt;<a name="line.236"></a>
+<span class="sourceLineNo">237</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.237"></a>
+<span class="sourceLineNo">238</span>    *    &lt;p&gt;<a name="line.238"></a>
+<span class="sourceLineNo">239</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.240"></a>
+<span class="sourceLineNo">241</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    *    &lt;br&gt;...or...<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.243"></a>
+<span class="sourceLineNo">244</span>    */<a name="line.244"></a>
+<span class="sourceLineNo">245</span>   public XmlSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>      super(propertyStore, produces, accept);<a name="line.246"></a>
+<span class="sourceLineNo">247</span>      this.ctx = createContext(XmlSerializerContext.class);<a name="line.247"></a>
+<span class="sourceLineNo">248</span>   }<a name="line.248"></a>
+<span class="sourceLineNo">249</span><a name="line.249"></a>
+<span class="sourceLineNo">250</span>   @Override /* CoreObject */<a name="line.250"></a>
+<span class="sourceLineNo">251</span>   public XmlSerializerBuilder builder() {<a name="line.251"></a>
+<span class="sourceLineNo">252</span>      return new XmlSerializerBuilder(propertyStore);<a name="line.252"></a>
+<span class="sourceLineNo">253</span>   }<a name="line.253"></a>
+<span class="sourceLineNo">254</span><a name="line.254"></a>
+<span class="sourceLineNo">255</span><a name="line.255"></a>
+<span class="sourceLineNo">256</span>   /**<a name="line.256"></a>
+<span class="sourceLineNo">257</span>    * Returns the schema serializer based on the settings of this serializer.<a name="line.257"></a>
+<span class="sourceLineNo">258</span>    * @return The schema serializer.<a name="line.258"></a>
+<span class="sourceLineNo">259</span>    */<a name="line.259"></a>
+<span class="sourceLineNo">260</span>   public XmlSerializer getSchemaSerializer() {<a name="line.260"></a>
+<span class="sourceLineNo">261</span>      if (schemaSerializer == null)<a name="line.261"></a>
+<span class="sourceLineNo">262</span>         schemaSerializer = new XmlSchemaSerializer(propertyStore);<a name="line.262"></a>
+<span class="sourceLineNo">263</span>      return schemaSerializer;<a name="line.263"></a>
+<span class="sourceLineNo">264</span>   }<a name="line.264"></a>
+<span class="sourceLineNo">265</span><a name="line.265"></a>
+<span class="sourceLineNo">266</span>   @Override /* Serializer */<a name="line.266"></a>
+<span class="sourceLineNo">267</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.267"></a>
+<span class="sourceLineNo">268</span>      return new XmlSerializerSession(ctx, args);<a name="line.268"></a>
+<span class="sourceLineNo">269</span>   }<a name="line.269"></a>
+<span class="sourceLineNo">270</span>}<a name="line.270"></a>
 
 
 


[36/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/html/HtmlStrippedDocSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/html/HtmlStrippedDocSerializer.html b/content/site/apidocs/src-html/org/apache/juneau/html/HtmlStrippedDocSerializer.html
index 45f7d28..eebad07 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/html/HtmlStrippedDocSerializer.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/html/HtmlStrippedDocSerializer.html
@@ -21,42 +21,65 @@
 <span class="sourceLineNo">013</span>package org.apache.juneau.html;<a name="line.13"></a>
 <span class="sourceLineNo">014</span><a name="line.14"></a>
 <span class="sourceLineNo">015</span>import org.apache.juneau.*;<a name="line.15"></a>
-<span class="sourceLineNo">016</span>import org.apache.juneau.annotation.*;<a name="line.16"></a>
-<span class="sourceLineNo">017</span>import org.apache.juneau.serializer.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span><a name="line.18"></a>
-<span class="sourceLineNo">019</span>/**<a name="line.19"></a>
-<span class="sourceLineNo">020</span> * Serializes POJOs to HTTP responses as stripped HTML.<a name="line.20"></a>
-<span class="sourceLineNo">021</span> *<a name="line.21"></a>
-<span class="sourceLineNo">022</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.22"></a>
-<span class="sourceLineNo">023</span> *<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/html+stripped&lt;/code&gt;<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * &lt;p&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/html&lt;/code&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> *<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> *<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * Produces the same output as {@link HtmlDocSerializer}, but without the header and body tags and page title and<a name="line.31"></a>
-<span class="sourceLineNo">032</span> * description.<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * Used primarily for JUnit testing the {@link HtmlDocSerializer} class.<a name="line.33"></a>
-<span class="sourceLineNo">034</span> */<a name="line.34"></a>
-<span class="sourceLineNo">035</span>@Produces(value="text/html+stripped",contentType="text/html")<a name="line.35"></a>
-<span class="sourceLineNo">036</span>public class HtmlStrippedDocSerializer extends HtmlSerializer {<a name="line.36"></a>
-<span class="sourceLineNo">037</span><a name="line.37"></a>
-<span class="sourceLineNo">038</span>   /**<a name="line.38"></a>
-<span class="sourceLineNo">039</span>    * Constructor.<a name="line.39"></a>
-<span class="sourceLineNo">040</span>    *<a name="line.40"></a>
-<span class="sourceLineNo">041</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.41"></a>
-<span class="sourceLineNo">042</span>    */<a name="line.42"></a>
-<span class="sourceLineNo">043</span>   public HtmlStrippedDocSerializer(PropertyStore propertyStore) {<a name="line.43"></a>
-<span class="sourceLineNo">044</span>      super(propertyStore);<a name="line.44"></a>
-<span class="sourceLineNo">045</span>   }<a name="line.45"></a>
-<span class="sourceLineNo">046</span><a name="line.46"></a>
-<span class="sourceLineNo">047</span>   @Override /* Serializer */<a name="line.47"></a>
-<span class="sourceLineNo">048</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.48"></a>
-<span class="sourceLineNo">049</span>      return new HtmlStrippedDocSerializerSession(ctx, args);<a name="line.49"></a>
-<span class="sourceLineNo">050</span>   }<a name="line.50"></a>
-<span class="sourceLineNo">051</span>}<a name="line.51"></a>
+<span class="sourceLineNo">016</span>import org.apache.juneau.serializer.*;<a name="line.16"></a>
+<span class="sourceLineNo">017</span><a name="line.17"></a>
+<span class="sourceLineNo">018</span>/**<a name="line.18"></a>
+<span class="sourceLineNo">019</span> * Serializes POJOs to HTTP responses as stripped HTML.<a name="line.19"></a>
+<span class="sourceLineNo">020</span> *<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.21"></a>
+<span class="sourceLineNo">022</span> *<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/html+stripped&lt;/code&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * &lt;p&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/html&lt;/code&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> *<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.28"></a>
+<span class="sourceLineNo">029</span> *<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * Produces the same output as {@link HtmlDocSerializer}, but without the header and body tags and page title and<a name="line.30"></a>
+<span class="sourceLineNo">031</span> * description.<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * Used primarily for JUnit testing the {@link HtmlDocSerializer} class.<a name="line.32"></a>
+<span class="sourceLineNo">033</span> */<a name="line.33"></a>
+<span class="sourceLineNo">034</span>public class HtmlStrippedDocSerializer extends HtmlSerializer {<a name="line.34"></a>
+<span class="sourceLineNo">035</span><a name="line.35"></a>
+<span class="sourceLineNo">036</span>   /**<a name="line.36"></a>
+<span class="sourceLineNo">037</span>    * Constructor.<a name="line.37"></a>
+<span class="sourceLineNo">038</span>    *<a name="line.38"></a>
+<span class="sourceLineNo">039</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.39"></a>
+<span class="sourceLineNo">040</span>    */<a name="line.40"></a>
+<span class="sourceLineNo">041</span>   public HtmlStrippedDocSerializer(PropertyStore propertyStore) {<a name="line.41"></a>
+<span class="sourceLineNo">042</span>      this(propertyStore, "text/html", "text/html+stripped");<a name="line.42"></a>
+<span class="sourceLineNo">043</span>   }<a name="line.43"></a>
+<span class="sourceLineNo">044</span><a name="line.44"></a>
+<span class="sourceLineNo">045</span>   /**<a name="line.45"></a>
+<span class="sourceLineNo">046</span>    * Constructor.<a name="line.46"></a>
+<span class="sourceLineNo">047</span>    *<a name="line.47"></a>
+<span class="sourceLineNo">048</span>    * @param propertyStore<a name="line.48"></a>
+<span class="sourceLineNo">049</span>    *    The property store containing all the settings for this object.<a name="line.49"></a>
+<span class="sourceLineNo">050</span>    * @param produces<a name="line.50"></a>
+<span class="sourceLineNo">051</span>    *    The media type that this serializer produces.<a name="line.51"></a>
+<span class="sourceLineNo">052</span>    * @param accept<a name="line.52"></a>
+<span class="sourceLineNo">053</span>    *    The accept media types that the serializer can handle.<a name="line.53"></a>
+<span class="sourceLineNo">054</span>    *    &lt;p&gt;<a name="line.54"></a>
+<span class="sourceLineNo">055</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.55"></a>
+<span class="sourceLineNo">056</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.56"></a>
+<span class="sourceLineNo">057</span>    *    &lt;p&gt;<a name="line.57"></a>
+<span class="sourceLineNo">058</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.58"></a>
+<span class="sourceLineNo">059</span>    *    &lt;p&gt;<a name="line.59"></a>
+<span class="sourceLineNo">060</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.60"></a>
+<span class="sourceLineNo">061</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.61"></a>
+<span class="sourceLineNo">062</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.62"></a>
+<span class="sourceLineNo">063</span>    *    &lt;br&gt;...or...<a name="line.63"></a>
+<span class="sourceLineNo">064</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.64"></a>
+<span class="sourceLineNo">065</span>    */<a name="line.65"></a>
+<span class="sourceLineNo">066</span>   public HtmlStrippedDocSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.66"></a>
+<span class="sourceLineNo">067</span>      super(propertyStore, produces, accept);<a name="line.67"></a>
+<span class="sourceLineNo">068</span>   }<a name="line.68"></a>
+<span class="sourceLineNo">069</span><a name="line.69"></a>
+<span class="sourceLineNo">070</span>   @Override /* Serializer */<a name="line.70"></a>
+<span class="sourceLineNo">071</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.71"></a>
+<span class="sourceLineNo">072</span>      return new HtmlStrippedDocSerializerSession(ctx, args);<a name="line.72"></a>
+<span class="sourceLineNo">073</span>   }<a name="line.73"></a>
+<span class="sourceLineNo">074</span>}<a name="line.74"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/http/MediaType.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/http/MediaType.html b/content/site/apidocs/src-html/org/apache/juneau/http/MediaType.html
index 5402dc2..c0e24eb 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/http/MediaType.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/http/MediaType.html
@@ -165,7 +165,7 @@
 <span class="sourceLineNo">157</span>    *<a name="line.157"></a>
 <span class="sourceLineNo">158</span>    * @return The media type.<a name="line.158"></a>
 <span class="sourceLineNo">159</span>    */<a name="line.159"></a>
-<span class="sourceLineNo">160</span>   public String getType() {<a name="line.160"></a>
+<span class="sourceLineNo">160</span>   public final String getType() {<a name="line.160"></a>
 <span class="sourceLineNo">161</span>      return type;<a name="line.161"></a>
 <span class="sourceLineNo">162</span>   }<a name="line.162"></a>
 <span class="sourceLineNo">163</span><a name="line.163"></a>
@@ -174,137 +174,153 @@
 <span class="sourceLineNo">166</span>    *<a name="line.166"></a>
 <span class="sourceLineNo">167</span>    * @return The media subtype.<a name="line.167"></a>
 <span class="sourceLineNo">168</span>    */<a name="line.168"></a>
-<span class="sourceLineNo">169</span>   public String getSubType() {<a name="line.169"></a>
+<span class="sourceLineNo">169</span>   public final String getSubType() {<a name="line.169"></a>
 <span class="sourceLineNo">170</span>      return subType;<a name="line.170"></a>
 <span class="sourceLineNo">171</span>   }<a name="line.171"></a>
 <span class="sourceLineNo">172</span><a name="line.172"></a>
 <span class="sourceLineNo">173</span>   /**<a name="line.173"></a>
-<span class="sourceLineNo">174</span>    * Returns the subtypes broken down by fragments delimited by &lt;js&gt;"'"&lt;/js&gt;.<a name="line.174"></a>
+<span class="sourceLineNo">174</span>    * Returns &lt;jk&gt;true&lt;/jk&gt; if the subtype contains the specified &lt;js&gt;'+'&lt;/js&gt; delimited subtype value.<a name="line.174"></a>
 <span class="sourceLineNo">175</span>    *<a name="line.175"></a>
-<span class="sourceLineNo">176</span>    * &lt;P&gt;<a name="line.176"></a>
-<span class="sourceLineNo">177</span>    * For example, the media type &lt;js&gt;"text/foo+bar"&lt;/js&gt; will return a list of<a name="line.177"></a>
-<span class="sourceLineNo">178</span>    * &lt;code&gt;[&lt;js&gt;'foo'&lt;/js&gt;,&lt;js&gt;'bar'&lt;/js&gt;]&lt;/code&gt;<a name="line.178"></a>
-<span class="sourceLineNo">179</span>    *<a name="line.179"></a>
-<span class="sourceLineNo">180</span>    * @return An unmodifiable list of subtype fragments.  Never &lt;jk&gt;null&lt;/jk&gt;.<a name="line.180"></a>
-<span class="sourceLineNo">181</span>    */<a name="line.181"></a>
-<span class="sourceLineNo">182</span>   public List&lt;String&gt; getSubTypes() {<a name="line.182"></a>
-<span class="sourceLineNo">183</span>      return subTypesList;<a name="line.183"></a>
-<span class="sourceLineNo">184</span>   }<a name="line.184"></a>
-<span class="sourceLineNo">185</span><a name="line.185"></a>
-<span class="sourceLineNo">186</span>   /**<a name="line.186"></a>
-<span class="sourceLineNo">187</span>    * Returns &lt;jk&gt;true&lt;/jk&gt; if this media type is a match for the specified media type.<a name="line.187"></a>
-<span class="sourceLineNo">188</span>    *<a name="line.188"></a>
-<span class="sourceLineNo">189</span>    * &lt;p&gt;<a name="line.189"></a>
-<span class="sourceLineNo">190</span>    * Matches if any of the following is true:<a name="line.190"></a>
-<span class="sourceLineNo">191</span>    * &lt;ul&gt;<a name="line.191"></a>
-<span class="sourceLineNo">192</span>    *    &lt;li&gt;Both type and subtype are the same.<a name="line.192"></a>
-<span class="sourceLineNo">193</span>    *    &lt;li&gt;One or both types are &lt;js&gt;'*'&lt;/js&gt; and the subtypes are the same.<a name="line.193"></a>
-<span class="sourceLineNo">194</span>    *    &lt;li&gt;One or both subtypes are &lt;js&gt;'*'&lt;/js&gt; and the types are the same.<a name="line.194"></a>
-<span class="sourceLineNo">195</span>    *    &lt;li&gt;Either is &lt;js&gt;'*\/*'&lt;/js&gt;.<a name="line.195"></a>
-<span class="sourceLineNo">196</span>    * &lt;/ul&gt;<a name="line.196"></a>
-<span class="sourceLineNo">197</span>    *<a name="line.197"></a>
-<span class="sourceLineNo">198</span>    * @param o The media type to compare with.<a name="line.198"></a>
-<span class="sourceLineNo">199</span>    * @return &lt;jk&gt;true&lt;/jk&gt; if the media types match.<a name="line.199"></a>
-<span class="sourceLineNo">200</span>    */<a name="line.200"></a>
-<span class="sourceLineNo">201</span>   public final boolean matches(MediaType o) {<a name="line.201"></a>
-<span class="sourceLineNo">202</span>      return match(o) &gt; 0;<a name="line.202"></a>
-<span class="sourceLineNo">203</span>   }<a name="line.203"></a>
-<span class="sourceLineNo">204</span><a name="line.204"></a>
-<span class="sourceLineNo">205</span>   /**<a name="line.205"></a>
-<span class="sourceLineNo">206</span>    * Returns a match metric against the specified media type where a larger number represents a better match.<a name="line.206"></a>
-<span class="sourceLineNo">207</span>    *<a name="line.207"></a>
-<span class="sourceLineNo">208</span>    * &lt;ul&gt;<a name="line.208"></a>
-<span class="sourceLineNo">209</span>    *    &lt;li&gt;Exact matches (e.g. &lt;js&gt;"text/json"&lt;js&gt;/&lt;/js&gt;"text/json"&lt;/js&gt;) should match<a name="line.209"></a>
-<span class="sourceLineNo">210</span>    *       better than meta-character matches (e.g. &lt;js&gt;"text/*"&lt;js&gt;/&lt;/js&gt;"text/json"&lt;/js&gt;)<a name="line.210"></a>
-<span class="sourceLineNo">211</span>    *    &lt;li&gt;The comparison media type can have additional subtype tokens (e.g. &lt;js&gt;"text/json+foo"&lt;/js&gt;)<a name="line.211"></a>
-<span class="sourceLineNo">212</span>    *       that will not prevent a match.  The reverse is not true, e.g. the comparison media type<a name="line.212"></a>
-<span class="sourceLineNo">213</span>    *       must contain all subtype tokens found in the comparing media type.<a name="line.213"></a>
-<span class="sourceLineNo">214</span>    *       &lt;ul&gt;<a name="line.214"></a>
-<span class="sourceLineNo">215</span>    *          &lt;li&gt;We want the {@link JsonSerializer} (&lt;js&gt;"text/json"&lt;/js&gt;) class to be able to handle requests for &lt;js&gt;"text/json+foo"&lt;/js&gt;.<a name="line.215"></a>
-<span class="sourceLineNo">216</span>    *          &lt;li&gt;We want to make sure {@link org.apache.juneau.json.JsonSerializer.Simple} (&lt;js&gt;"text/json+simple"&lt;/js&gt;) does not handle<a name="line.216"></a>
-<span class="sourceLineNo">217</span>    *             requests for &lt;js&gt;"text/json"&lt;/js&gt;.<a name="line.217"></a>
-<span class="sourceLineNo">218</span>    *       &lt;/ul&gt;<a name="line.218"></a>
-<span class="sourceLineNo">219</span>    *       More token matches should result in a higher match number.<a name="line.219"></a>
-<span class="sourceLineNo">220</span>    * &lt;/ul&gt;<a name="line.220"></a>
-<span class="sourceLineNo">221</span>    *<a name="line.221"></a>
-<span class="sourceLineNo">222</span>    * @param o The media type to compare with.<a name="line.222"></a>
-<span class="sourceLineNo">223</span>    * @return &lt;jk&gt;true&lt;/jk&gt; if the media types match.<a name="line.223"></a>
-<span class="sourceLineNo">224</span>    */<a name="line.224"></a>
-<span class="sourceLineNo">225</span>   public final int match(MediaType o) {<a name="line.225"></a>
-<span class="sourceLineNo">226</span><a name="line.226"></a>
-<span class="sourceLineNo">227</span>      // Perfect match<a name="line.227"></a>
-<span class="sourceLineNo">228</span>      if (this == o || (type.equals(o.type) &amp;&amp; subType.equals(o.subType)))<a name="line.228"></a>
-<span class="sourceLineNo">229</span>         return Integer.MAX_VALUE;<a name="line.229"></a>
-<span class="sourceLineNo">230</span><a name="line.230"></a>
-<span class="sourceLineNo">231</span>      int c1 = 0, c2 = 0;<a name="line.231"></a>
-<span class="sourceLineNo">232</span><a name="line.232"></a>
-<span class="sourceLineNo">233</span>      if (type.equals(o.type))<a name="line.233"></a>
-<span class="sourceLineNo">234</span>         c1 += 10000;<a name="line.234"></a>
-<span class="sourceLineNo">235</span>      else if ("*".equals(type) || "*".equals(o.type))<a name="line.235"></a>
-<span class="sourceLineNo">236</span>         c1 += 5000;<a name="line.236"></a>
-<span class="sourceLineNo">237</span><a name="line.237"></a>
-<span class="sourceLineNo">238</span>      if (c1 == 0)<a name="line.238"></a>
-<span class="sourceLineNo">239</span>         return 0;<a name="line.239"></a>
-<span class="sourceLineNo">240</span><a name="line.240"></a>
-<span class="sourceLineNo">241</span>      // Give type slightly higher comparison value than subtype simply for deterministic results.<a name="line.241"></a>
-<span class="sourceLineNo">242</span>      if (subType.equals(o.subType))<a name="line.242"></a>
-<span class="sourceLineNo">243</span>         return c1 + 9999;<a name="line.243"></a>
-<span class="sourceLineNo">244</span><a name="line.244"></a>
-<span class="sourceLineNo">245</span>      int c3 = 0;<a name="line.245"></a>
+<span class="sourceLineNo">176</span>    * @param st <a name="line.176"></a>
+<span class="sourceLineNo">177</span>    *    The subtype string.<a name="line.177"></a>
+<span class="sourceLineNo">178</span>    *    Case is ignored. <a name="line.178"></a>
+<span class="sourceLineNo">179</span>    * @return &lt;jk&gt;true&lt;/jk&gt; if the subtype contains the specified subtype string.<a name="line.179"></a>
+<span class="sourceLineNo">180</span>    */<a name="line.180"></a>
+<span class="sourceLineNo">181</span>   public final boolean hasSubType(String st) {<a name="line.181"></a>
+<span class="sourceLineNo">182</span>      if (st != null)<a name="line.182"></a>
+<span class="sourceLineNo">183</span>         for (String s : subTypes)<a name="line.183"></a>
+<span class="sourceLineNo">184</span>            if (st.equalsIgnoreCase(s))<a name="line.184"></a>
+<span class="sourceLineNo">185</span>               return true;<a name="line.185"></a>
+<span class="sourceLineNo">186</span>      return false;<a name="line.186"></a>
+<span class="sourceLineNo">187</span>   }<a name="line.187"></a>
+<span class="sourceLineNo">188</span><a name="line.188"></a>
+<span class="sourceLineNo">189</span>   /**<a name="line.189"></a>
+<span class="sourceLineNo">190</span>    * Returns the subtypes broken down by fragments delimited by &lt;js&gt;"'"&lt;/js&gt;.<a name="line.190"></a>
+<span class="sourceLineNo">191</span>    *<a name="line.191"></a>
+<span class="sourceLineNo">192</span>    * &lt;P&gt;<a name="line.192"></a>
+<span class="sourceLineNo">193</span>    * For example, the media type &lt;js&gt;"text/foo+bar"&lt;/js&gt; will return a list of<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    * &lt;code&gt;[&lt;js&gt;'foo'&lt;/js&gt;,&lt;js&gt;'bar'&lt;/js&gt;]&lt;/code&gt;<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    *<a name="line.195"></a>
+<span class="sourceLineNo">196</span>    * @return An unmodifiable list of subtype fragments.  Never &lt;jk&gt;null&lt;/jk&gt;.<a name="line.196"></a>
+<span class="sourceLineNo">197</span>    */<a name="line.197"></a>
+<span class="sourceLineNo">198</span>   public final List&lt;String&gt; getSubTypes() {<a name="line.198"></a>
+<span class="sourceLineNo">199</span>      return subTypesList;<a name="line.199"></a>
+<span class="sourceLineNo">200</span>   }<a name="line.200"></a>
+<span class="sourceLineNo">201</span><a name="line.201"></a>
+<span class="sourceLineNo">202</span>   /**<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    * Returns &lt;jk&gt;true&lt;/jk&gt; if this media type is a match for the specified media type.<a name="line.203"></a>
+<span class="sourceLineNo">204</span>    *<a name="line.204"></a>
+<span class="sourceLineNo">205</span>    * &lt;p&gt;<a name="line.205"></a>
+<span class="sourceLineNo">206</span>    * Matches if any of the following is true:<a name="line.206"></a>
+<span class="sourceLineNo">207</span>    * &lt;ul&gt;<a name="line.207"></a>
+<span class="sourceLineNo">208</span>    *    &lt;li&gt;Both type and subtype are the same.<a name="line.208"></a>
+<span class="sourceLineNo">209</span>    *    &lt;li&gt;One or both types are &lt;js&gt;'*'&lt;/js&gt; and the subtypes are the same.<a name="line.209"></a>
+<span class="sourceLineNo">210</span>    *    &lt;li&gt;One or both subtypes are &lt;js&gt;'*'&lt;/js&gt; and the types are the same.<a name="line.210"></a>
+<span class="sourceLineNo">211</span>    *    &lt;li&gt;Either is &lt;js&gt;'*\/*'&lt;/js&gt;.<a name="line.211"></a>
+<span class="sourceLineNo">212</span>    * &lt;/ul&gt;<a name="line.212"></a>
+<span class="sourceLineNo">213</span>    *<a name="line.213"></a>
+<span class="sourceLineNo">214</span>    * @param o The media type to compare with.<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    * @return &lt;jk&gt;true&lt;/jk&gt; if the media types match.<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    */<a name="line.216"></a>
+<span class="sourceLineNo">217</span>   public final boolean matches(MediaType o) {<a name="line.217"></a>
+<span class="sourceLineNo">218</span>      return match(o) &gt; 0;<a name="line.218"></a>
+<span class="sourceLineNo">219</span>   }<a name="line.219"></a>
+<span class="sourceLineNo">220</span><a name="line.220"></a>
+<span class="sourceLineNo">221</span>   /**<a name="line.221"></a>
+<span class="sourceLineNo">222</span>    * Returns a match metric against the specified media type where a larger number represents a better match.<a name="line.222"></a>
+<span class="sourceLineNo">223</span>    *<a name="line.223"></a>
+<span class="sourceLineNo">224</span>    * &lt;ul&gt;<a name="line.224"></a>
+<span class="sourceLineNo">225</span>    *    &lt;li&gt;Exact matches (e.g. &lt;js&gt;"text/json"&lt;js&gt;/&lt;/js&gt;"text/json"&lt;/js&gt;) should match<a name="line.225"></a>
+<span class="sourceLineNo">226</span>    *       better than meta-character matches (e.g. &lt;js&gt;"text/*"&lt;js&gt;/&lt;/js&gt;"text/json"&lt;/js&gt;)<a name="line.226"></a>
+<span class="sourceLineNo">227</span>    *    &lt;li&gt;The comparison media type can have additional subtype tokens (e.g. &lt;js&gt;"text/json+foo"&lt;/js&gt;)<a name="line.227"></a>
+<span class="sourceLineNo">228</span>    *       that will not prevent a match.  The reverse is not true, e.g. the comparison media type<a name="line.228"></a>
+<span class="sourceLineNo">229</span>    *       must contain all subtype tokens found in the comparing media type.<a name="line.229"></a>
+<span class="sourceLineNo">230</span>    *       &lt;ul&gt;<a name="line.230"></a>
+<span class="sourceLineNo">231</span>    *          &lt;li&gt;We want the {@link JsonSerializer} (&lt;js&gt;"text/json"&lt;/js&gt;) class to be able to handle requests for &lt;js&gt;"text/json+foo"&lt;/js&gt;.<a name="line.231"></a>
+<span class="sourceLineNo">232</span>    *          &lt;li&gt;We want to make sure {@link org.apache.juneau.json.JsonSerializer.Simple} (&lt;js&gt;"text/json+simple"&lt;/js&gt;) does not handle<a name="line.232"></a>
+<span class="sourceLineNo">233</span>    *             requests for &lt;js&gt;"text/json"&lt;/js&gt;.<a name="line.233"></a>
+<span class="sourceLineNo">234</span>    *       &lt;/ul&gt;<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    *       More token matches should result in a higher match number.<a name="line.235"></a>
+<span class="sourceLineNo">236</span>    * &lt;/ul&gt;<a name="line.236"></a>
+<span class="sourceLineNo">237</span>    *<a name="line.237"></a>
+<span class="sourceLineNo">238</span>    * @param o The media type to compare with.<a name="line.238"></a>
+<span class="sourceLineNo">239</span>    * @return &lt;jk&gt;true&lt;/jk&gt; if the media types match.<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    */<a name="line.240"></a>
+<span class="sourceLineNo">241</span>   public final int match(MediaType o) {<a name="line.241"></a>
+<span class="sourceLineNo">242</span><a name="line.242"></a>
+<span class="sourceLineNo">243</span>      // Perfect match<a name="line.243"></a>
+<span class="sourceLineNo">244</span>      if (this == o || (type.equals(o.type) &amp;&amp; subType.equals(o.subType)))<a name="line.244"></a>
+<span class="sourceLineNo">245</span>         return Integer.MAX_VALUE;<a name="line.245"></a>
 <span class="sourceLineNo">246</span><a name="line.246"></a>
-<span class="sourceLineNo">247</span>      for (String st1 : subTypes) {<a name="line.247"></a>
-<span class="sourceLineNo">248</span>         if ("*".equals(st1))<a name="line.248"></a>
-<span class="sourceLineNo">249</span>            c1++;<a name="line.249"></a>
-<span class="sourceLineNo">250</span>         else if (ArrayUtils.contains(st1, o.subTypes))<a name="line.250"></a>
-<span class="sourceLineNo">251</span>            c1 += 100;<a name="line.251"></a>
-<span class="sourceLineNo">252</span>         else if (ArrayUtils.contains("*", o.subTypes))<a name="line.252"></a>
-<span class="sourceLineNo">253</span>            c1 += 10;<a name="line.253"></a>
-<span class="sourceLineNo">254</span>         else<a name="line.254"></a>
-<span class="sourceLineNo">255</span>            return 0;<a name="line.255"></a>
-<span class="sourceLineNo">256</span>      }<a name="line.256"></a>
-<span class="sourceLineNo">257</span><a name="line.257"></a>
-<span class="sourceLineNo">258</span>      return c1 + c2 + c3;<a name="line.258"></a>
-<span class="sourceLineNo">259</span>   }<a name="line.259"></a>
+<span class="sourceLineNo">247</span>      int c1 = 0, c2 = 0;<a name="line.247"></a>
+<span class="sourceLineNo">248</span><a name="line.248"></a>
+<span class="sourceLineNo">249</span>      if (type.equals(o.type))<a name="line.249"></a>
+<span class="sourceLineNo">250</span>         c1 += 10000;<a name="line.250"></a>
+<span class="sourceLineNo">251</span>      else if ("*".equals(type) || "*".equals(o.type))<a name="line.251"></a>
+<span class="sourceLineNo">252</span>         c1 += 5000;<a name="line.252"></a>
+<span class="sourceLineNo">253</span><a name="line.253"></a>
+<span class="sourceLineNo">254</span>      if (c1 == 0)<a name="line.254"></a>
+<span class="sourceLineNo">255</span>         return 0;<a name="line.255"></a>
+<span class="sourceLineNo">256</span><a name="line.256"></a>
+<span class="sourceLineNo">257</span>      // Give type slightly higher comparison value than subtype simply for deterministic results.<a name="line.257"></a>
+<span class="sourceLineNo">258</span>      if (subType.equals(o.subType))<a name="line.258"></a>
+<span class="sourceLineNo">259</span>         return c1 + 9999;<a name="line.259"></a>
 <span class="sourceLineNo">260</span><a name="line.260"></a>
-<span class="sourceLineNo">261</span>   /**<a name="line.261"></a>
-<span class="sourceLineNo">262</span>    * Returns the additional parameters on this media type.<a name="line.262"></a>
-<span class="sourceLineNo">263</span>    *<a name="line.263"></a>
-<span class="sourceLineNo">264</span>    * &lt;p&gt;<a name="line.264"></a>
-<span class="sourceLineNo">265</span>    * For example, given the media type string &lt;js&gt;"text/html;level=1"&lt;/js&gt;, will return a map<a name="line.265"></a>
-<span class="sourceLineNo">266</span>    * with the single entry &lt;code&gt;{level:[&lt;js&gt;'1'&lt;/js&gt;]}&lt;/code&gt;.<a name="line.266"></a>
-<span class="sourceLineNo">267</span>    *<a name="line.267"></a>
-<span class="sourceLineNo">268</span>    * @return The map of additional parameters, or an empty map if there are no parameters.<a name="line.268"></a>
-<span class="sourceLineNo">269</span>    */<a name="line.269"></a>
-<span class="sourceLineNo">270</span>   public Map&lt;String,Set&lt;String&gt;&gt; getParameters() {<a name="line.270"></a>
-<span class="sourceLineNo">271</span>      return parameters;<a name="line.271"></a>
-<span class="sourceLineNo">272</span>   }<a name="line.272"></a>
+<span class="sourceLineNo">261</span>      int c3 = 0;<a name="line.261"></a>
+<span class="sourceLineNo">262</span><a name="line.262"></a>
+<span class="sourceLineNo">263</span>      for (String st1 : subTypes) {<a name="line.263"></a>
+<span class="sourceLineNo">264</span>         if ("*".equals(st1))<a name="line.264"></a>
+<span class="sourceLineNo">265</span>            c1++;<a name="line.265"></a>
+<span class="sourceLineNo">266</span>         else if (ArrayUtils.contains(st1, o.subTypes))<a name="line.266"></a>
+<span class="sourceLineNo">267</span>            c1 += 100;<a name="line.267"></a>
+<span class="sourceLineNo">268</span>         else if (ArrayUtils.contains("*", o.subTypes))<a name="line.268"></a>
+<span class="sourceLineNo">269</span>            c1 += 10;<a name="line.269"></a>
+<span class="sourceLineNo">270</span>         else<a name="line.270"></a>
+<span class="sourceLineNo">271</span>            return 0;<a name="line.271"></a>
+<span class="sourceLineNo">272</span>      }<a name="line.272"></a>
 <span class="sourceLineNo">273</span><a name="line.273"></a>
-<span class="sourceLineNo">274</span>   @Override /* Object */<a name="line.274"></a>
-<span class="sourceLineNo">275</span>   public String toString() {<a name="line.275"></a>
-<span class="sourceLineNo">276</span>      if (parameters.isEmpty())<a name="line.276"></a>
-<span class="sourceLineNo">277</span>         return mediaType;<a name="line.277"></a>
-<span class="sourceLineNo">278</span>      StringBuilder sb = new StringBuilder(mediaType);<a name="line.278"></a>
-<span class="sourceLineNo">279</span>      for (Map.Entry&lt;String,Set&lt;String&gt;&gt; e : parameters.entrySet())<a name="line.279"></a>
-<span class="sourceLineNo">280</span>         for (String value : e.getValue())<a name="line.280"></a>
-<span class="sourceLineNo">281</span>            sb.append(';').append(e.getKey()).append('=').append(value);<a name="line.281"></a>
-<span class="sourceLineNo">282</span>      return sb.toString();<a name="line.282"></a>
-<span class="sourceLineNo">283</span>   }<a name="line.283"></a>
-<span class="sourceLineNo">284</span><a name="line.284"></a>
-<span class="sourceLineNo">285</span>   @Override /* Object */<a name="line.285"></a>
-<span class="sourceLineNo">286</span>   public int hashCode() {<a name="line.286"></a>
-<span class="sourceLineNo">287</span>      return mediaType.hashCode();<a name="line.287"></a>
+<span class="sourceLineNo">274</span>      return c1 + c2 + c3;<a name="line.274"></a>
+<span class="sourceLineNo">275</span>   }<a name="line.275"></a>
+<span class="sourceLineNo">276</span><a name="line.276"></a>
+<span class="sourceLineNo">277</span>   /**<a name="line.277"></a>
+<span class="sourceLineNo">278</span>    * Returns the additional parameters on this media type.<a name="line.278"></a>
+<span class="sourceLineNo">279</span>    *<a name="line.279"></a>
+<span class="sourceLineNo">280</span>    * &lt;p&gt;<a name="line.280"></a>
+<span class="sourceLineNo">281</span>    * For example, given the media type string &lt;js&gt;"text/html;level=1"&lt;/js&gt;, will return a map<a name="line.281"></a>
+<span class="sourceLineNo">282</span>    * with the single entry &lt;code&gt;{level:[&lt;js&gt;'1'&lt;/js&gt;]}&lt;/code&gt;.<a name="line.282"></a>
+<span class="sourceLineNo">283</span>    *<a name="line.283"></a>
+<span class="sourceLineNo">284</span>    * @return The map of additional parameters, or an empty map if there are no parameters.<a name="line.284"></a>
+<span class="sourceLineNo">285</span>    */<a name="line.285"></a>
+<span class="sourceLineNo">286</span>   public final Map&lt;String,Set&lt;String&gt;&gt; getParameters() {<a name="line.286"></a>
+<span class="sourceLineNo">287</span>      return parameters;<a name="line.287"></a>
 <span class="sourceLineNo">288</span>   }<a name="line.288"></a>
 <span class="sourceLineNo">289</span><a name="line.289"></a>
 <span class="sourceLineNo">290</span>   @Override /* Object */<a name="line.290"></a>
-<span class="sourceLineNo">291</span>   public boolean equals(Object o) {<a name="line.291"></a>
-<span class="sourceLineNo">292</span>      return this == o;<a name="line.292"></a>
-<span class="sourceLineNo">293</span>   }<a name="line.293"></a>
-<span class="sourceLineNo">294</span><a name="line.294"></a>
-<span class="sourceLineNo">295</span>   @Override<a name="line.295"></a>
-<span class="sourceLineNo">296</span>   public int compareTo(MediaType o) {<a name="line.296"></a>
-<span class="sourceLineNo">297</span>      return mediaType.compareTo(o.mediaType);<a name="line.297"></a>
-<span class="sourceLineNo">298</span>   }<a name="line.298"></a>
-<span class="sourceLineNo">299</span>}<a name="line.299"></a>
+<span class="sourceLineNo">291</span>   public final String toString() {<a name="line.291"></a>
+<span class="sourceLineNo">292</span>      if (parameters.isEmpty())<a name="line.292"></a>
+<span class="sourceLineNo">293</span>         return mediaType;<a name="line.293"></a>
+<span class="sourceLineNo">294</span>      StringBuilder sb = new StringBuilder(mediaType);<a name="line.294"></a>
+<span class="sourceLineNo">295</span>      for (Map.Entry&lt;String,Set&lt;String&gt;&gt; e : parameters.entrySet())<a name="line.295"></a>
+<span class="sourceLineNo">296</span>         for (String value : e.getValue())<a name="line.296"></a>
+<span class="sourceLineNo">297</span>            sb.append(';').append(e.getKey()).append('=').append(value);<a name="line.297"></a>
+<span class="sourceLineNo">298</span>      return sb.toString();<a name="line.298"></a>
+<span class="sourceLineNo">299</span>   }<a name="line.299"></a>
+<span class="sourceLineNo">300</span><a name="line.300"></a>
+<span class="sourceLineNo">301</span>   @Override /* Object */<a name="line.301"></a>
+<span class="sourceLineNo">302</span>   public final int hashCode() {<a name="line.302"></a>
+<span class="sourceLineNo">303</span>      return mediaType.hashCode();<a name="line.303"></a>
+<span class="sourceLineNo">304</span>   }<a name="line.304"></a>
+<span class="sourceLineNo">305</span><a name="line.305"></a>
+<span class="sourceLineNo">306</span>   @Override /* Object */<a name="line.306"></a>
+<span class="sourceLineNo">307</span>   public final boolean equals(Object o) {<a name="line.307"></a>
+<span class="sourceLineNo">308</span>      return this == o;<a name="line.308"></a>
+<span class="sourceLineNo">309</span>   }<a name="line.309"></a>
+<span class="sourceLineNo">310</span><a name="line.310"></a>
+<span class="sourceLineNo">311</span>   @Override<a name="line.311"></a>
+<span class="sourceLineNo">312</span>   public final int compareTo(MediaType o) {<a name="line.312"></a>
+<span class="sourceLineNo">313</span>      return mediaType.compareTo(o.mediaType);<a name="line.313"></a>
+<span class="sourceLineNo">314</span>   }<a name="line.314"></a>
+<span class="sourceLineNo">315</span>}<a name="line.315"></a>
 
 
 



[15/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/uon/UonSerializer.Encoding.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/uon/UonSerializer.Encoding.html b/content/site/apidocs/src-html/org/apache/juneau/uon/UonSerializer.Encoding.html
index 910d09f..6fd7178 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/uon/UonSerializer.Encoding.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/uon/UonSerializer.Encoding.html
@@ -24,186 +24,210 @@
 <span class="sourceLineNo">016</span>import static org.apache.juneau.uon.UonSerializerContext.*;<a name="line.16"></a>
 <span class="sourceLineNo">017</span><a name="line.17"></a>
 <span class="sourceLineNo">018</span>import org.apache.juneau.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.annotation.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span><a name="line.21"></a>
-<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * Serializes POJO models to UON (a notation for URL-encoded query parameter values).<a name="line.23"></a>
-<span class="sourceLineNo">024</span> *<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.25"></a>
-<span class="sourceLineNo">026</span> *<a name="line.26"></a>
-<span class="sourceLineNo">027</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/uon&lt;/code&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> *<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * &lt;p&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/uon&lt;/code&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> *<a name="line.31"></a>
-<span class="sourceLineNo">032</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.32"></a>
-<span class="sourceLineNo">033</span> *<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * This serializer provides several serialization options.<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.35"></a>
-<span class="sourceLineNo">036</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *<a name="line.37"></a>
-<span class="sourceLineNo">038</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *<a name="line.39"></a>
-<span class="sourceLineNo">040</span> * This class has the following properties associated with it:<a name="line.40"></a>
-<span class="sourceLineNo">041</span> * &lt;ul&gt;<a name="line.41"></a>
-<span class="sourceLineNo">042</span> *    &lt;li&gt;{@link UonSerializerContext}<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *    &lt;li&gt;{@link BeanContext}<a name="line.43"></a>
-<span class="sourceLineNo">044</span> * &lt;/ul&gt;<a name="line.44"></a>
-<span class="sourceLineNo">045</span> *<a name="line.45"></a>
-<span class="sourceLineNo">046</span> * &lt;p&gt;<a name="line.46"></a>
-<span class="sourceLineNo">047</span> * The following shows a sample object defined in Javascript:<a name="line.47"></a>
-<span class="sourceLineNo">048</span> * &lt;p class='bcode'&gt;<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *    {<a name="line.49"></a>
-<span class="sourceLineNo">050</span> *       id: 1,<a name="line.50"></a>
-<span class="sourceLineNo">051</span> *       name: &lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.51"></a>
-<span class="sourceLineNo">052</span> *       uri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.52"></a>
-<span class="sourceLineNo">053</span> *       addressBookUri: &lt;js&gt;'http://sample/addressBook'&lt;/js&gt;,<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *       birthDate: &lt;js&gt;'1946-08-12T00:00:00Z'&lt;/js&gt;,<a name="line.54"></a>
-<span class="sourceLineNo">055</span> *       otherIds: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.55"></a>
-<span class="sourceLineNo">056</span> *       addresses: [<a name="line.56"></a>
-<span class="sourceLineNo">057</span> *          {<a name="line.57"></a>
-<span class="sourceLineNo">058</span> *             uri: &lt;js&gt;'http://sample/addressBook/address/1'&lt;/js&gt;,<a name="line.58"></a>
-<span class="sourceLineNo">059</span> *             personUri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.59"></a>
-<span class="sourceLineNo">060</span> *             id: 1,<a name="line.60"></a>
-<span class="sourceLineNo">061</span> *             street: &lt;js&gt;'100 Main Street'&lt;/js&gt;,<a name="line.61"></a>
-<span class="sourceLineNo">062</span> *             city: &lt;js&gt;'Anywhereville'&lt;/js&gt;,<a name="line.62"></a>
-<span class="sourceLineNo">063</span> *             state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.63"></a>
-<span class="sourceLineNo">064</span> *             zip: 12345,<a name="line.64"></a>
-<span class="sourceLineNo">065</span> *             isCurrent: &lt;jk&gt;true&lt;/jk&gt;,<a name="line.65"></a>
-<span class="sourceLineNo">066</span> *          }<a name="line.66"></a>
-<span class="sourceLineNo">067</span> *       ]<a name="line.67"></a>
-<span class="sourceLineNo">068</span> *    }<a name="line.68"></a>
-<span class="sourceLineNo">069</span> * &lt;/p&gt;<a name="line.69"></a>
-<span class="sourceLineNo">070</span> *<a name="line.70"></a>
-<span class="sourceLineNo">071</span> * &lt;p&gt;<a name="line.71"></a>
-<span class="sourceLineNo">072</span> * Using the "strict" syntax defined in this document, the equivalent UON notation would be as follows:<a name="line.72"></a>
-<span class="sourceLineNo">073</span> * &lt;p class='bcode'&gt;<a name="line.73"></a>
-<span class="sourceLineNo">074</span> *    (<a name="line.74"></a>
-<span class="sourceLineNo">075</span> *       &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;,<a name="line.75"></a>
-<span class="sourceLineNo">076</span> *       &lt;ua&gt;name&lt;/ua&gt;=&lt;us&gt;'John+Smith'&lt;/us&gt;,<a name="line.76"></a>
-<span class="sourceLineNo">077</span> *       &lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.77"></a>
-<span class="sourceLineNo">078</span> *       &lt;ua&gt;addressBookUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook&lt;/us&gt;,<a name="line.78"></a>
-<span class="sourceLineNo">079</span> *       &lt;ua&gt;birthDate&lt;/ua&gt;=&lt;us&gt;1946-08-12T00:00:00Z&lt;/us&gt;,<a name="line.79"></a>
-<span class="sourceLineNo">080</span> *       &lt;ua&gt;otherIds&lt;/ua&gt;=&lt;uk&gt;null&lt;/uk&gt;,<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *       &lt;ua&gt;addresses&lt;/ua&gt;=@(<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *          (<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *             &lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/address/1&lt;/us&gt;,<a name="line.83"></a>
-<span class="sourceLineNo">084</span> *             &lt;ua&gt;personUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *             &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;,<a name="line.85"></a>
-<span class="sourceLineNo">086</span> *             &lt;ua&gt;street&lt;/ua&gt;=&lt;us&gt;'100+Main+Street'&lt;/us&gt;,<a name="line.86"></a>
-<span class="sourceLineNo">087</span> *             &lt;ua&gt;city&lt;/ua&gt;=&lt;us&gt;Anywhereville&lt;/us&gt;,<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *             &lt;ua&gt;state&lt;/ua&gt;=&lt;us&gt;NY&lt;/us&gt;,<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *             &lt;ua&gt;zip&lt;/ua&gt;=&lt;un&gt;12345&lt;/un&gt;,<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *             &lt;ua&gt;isCurrent&lt;/ua&gt;=&lt;uk&gt;true&lt;/uk&gt;<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *          )<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *       )<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *    )<a name="line.93"></a>
-<span class="sourceLineNo">094</span> * &lt;/p&gt;<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *<a name="line.95"></a>
-<span class="sourceLineNo">096</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.96"></a>
-<span class="sourceLineNo">097</span> * &lt;p class='bcode'&gt;<a name="line.97"></a>
-<span class="sourceLineNo">098</span> *    &lt;jc&gt;// Serialize a Map&lt;/jc&gt;<a name="line.98"></a>
-<span class="sourceLineNo">099</span> *    Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{a:'b',c:1,d:false,e:['f',1,false],g:{h:'i'}}"&lt;/js&gt;);<a name="line.99"></a>
-<span class="sourceLineNo">100</span> *<a name="line.100"></a>
-<span class="sourceLineNo">101</span> *    &lt;jc&gt;// Serialize to value equivalent to JSON.&lt;/jc&gt;<a name="line.101"></a>
-<span class="sourceLineNo">102</span> *    &lt;jc&gt;// Produces "(a=b,c=1,d=false,e=@(f,1,false),g=(h=i))"&lt;/jc&gt;<a name="line.102"></a>
-<span class="sourceLineNo">103</span> *    String s = UonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.103"></a>
-<span class="sourceLineNo">104</span> *<a name="line.104"></a>
-<span class="sourceLineNo">105</span> *    &lt;jc&gt;// Serialize a bean&lt;/jc&gt;<a name="line.105"></a>
-<span class="sourceLineNo">106</span> *    &lt;jk&gt;public class&lt;/jk&gt; Person {<a name="line.106"></a>
-<span class="sourceLineNo">107</span> *       &lt;jk&gt;public&lt;/jk&gt; Person(String s);<a name="line.107"></a>
-<span class="sourceLineNo">108</span> *       &lt;jk&gt;public&lt;/jk&gt; String getName();<a name="line.108"></a>
-<span class="sourceLineNo">109</span> *       &lt;jk&gt;public int&lt;/jk&gt; getAge();<a name="line.109"></a>
-<span class="sourceLineNo">110</span> *       &lt;jk&gt;public&lt;/jk&gt; Address getAddress();<a name="line.110"></a>
-<span class="sourceLineNo">111</span> *       &lt;jk&gt;public boolean&lt;/jk&gt; deceased;<a name="line.111"></a>
-<span class="sourceLineNo">112</span> *    }<a name="line.112"></a>
-<span class="sourceLineNo">113</span> *<a name="line.113"></a>
-<span class="sourceLineNo">114</span> *    &lt;jk&gt;public class&lt;/jk&gt; Address {<a name="line.114"></a>
-<span class="sourceLineNo">115</span> *       &lt;jk&gt;public&lt;/jk&gt; String getStreet();<a name="line.115"></a>
-<span class="sourceLineNo">116</span> *       &lt;jk&gt;public&lt;/jk&gt; String getCity();<a name="line.116"></a>
-<span class="sourceLineNo">117</span> *       &lt;jk&gt;public&lt;/jk&gt; String getState();<a name="line.117"></a>
-<span class="sourceLineNo">118</span> *       &lt;jk&gt;public int&lt;/jk&gt; getZip();<a name="line.118"></a>
-<span class="sourceLineNo">119</span> *    }<a name="line.119"></a>
-<span class="sourceLineNo">120</span> *<a name="line.120"></a>
-<span class="sourceLineNo">121</span> *    Person p = &lt;jk&gt;new&lt;/jk&gt; Person(&lt;js&gt;"John Doe"&lt;/js&gt;, 23, &lt;js&gt;"123 Main St"&lt;/js&gt;, &lt;js&gt;"Anywhere"&lt;/js&gt;,<a name="line.121"></a>
-<span class="sourceLineNo">122</span> *       &lt;js&gt;"NY"&lt;/js&gt;, 12345, &lt;jk&gt;false&lt;/jk&gt;);<a name="line.122"></a>
-<span class="sourceLineNo">123</span> *<a name="line.123"></a>
-<span class="sourceLineNo">124</span> *    &lt;jc&gt;// Produces "(name='John Doe',age=23,address=(street='123 Main St',city=Anywhere,state=NY,zip=12345),deceased=false)"&lt;/jc&gt;<a name="line.124"></a>
-<span class="sourceLineNo">125</span> *    String s = UonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.125"></a>
-<span class="sourceLineNo">126</span> * &lt;/p&gt;<a name="line.126"></a>
-<span class="sourceLineNo">127</span> */<a name="line.127"></a>
-<span class="sourceLineNo">128</span>@Produces("text/uon")<a name="line.128"></a>
-<span class="sourceLineNo">129</span>public class UonSerializer extends WriterSerializer {<a name="line.129"></a>
-<span class="sourceLineNo">130</span><a name="line.130"></a>
-<span class="sourceLineNo">131</span>   /** Reusable instance of {@link UonSerializer}, all default settings. */<a name="line.131"></a>
-<span class="sourceLineNo">132</span>   public static final UonSerializer DEFAULT = new UonSerializer(PropertyStore.create());<a name="line.132"></a>
-<span class="sourceLineNo">133</span><a name="line.133"></a>
-<span class="sourceLineNo">134</span>   /** Reusable instance of {@link UonSerializer.Readable}. */<a name="line.134"></a>
-<span class="sourceLineNo">135</span>   public static final UonSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.135"></a>
-<span class="sourceLineNo">136</span><a name="line.136"></a>
-<span class="sourceLineNo">137</span>   /** Reusable instance of {@link UonSerializer.Encoding}. */<a name="line.137"></a>
-<span class="sourceLineNo">138</span>   public static final UonSerializer DEFAULT_ENCODING = new Encoding(PropertyStore.create());<a name="line.138"></a>
-<span class="sourceLineNo">139</span><a name="line.139"></a>
-<span class="sourceLineNo">140</span>   /**<a name="line.140"></a>
-<span class="sourceLineNo">141</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UonSerializerBuilder().ws().build();&lt;/code&gt;.<a name="line.141"></a>
-<span class="sourceLineNo">142</span>    */<a name="line.142"></a>
-<span class="sourceLineNo">143</span>   public static class Readable extends UonSerializer {<a name="line.143"></a>
-<span class="sourceLineNo">144</span><a name="line.144"></a>
-<span class="sourceLineNo">145</span>      /**<a name="line.145"></a>
-<span class="sourceLineNo">146</span>       * Constructor.<a name="line.146"></a>
-<span class="sourceLineNo">147</span>       *<a name="line.147"></a>
-<span class="sourceLineNo">148</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.148"></a>
-<span class="sourceLineNo">149</span>       */<a name="line.149"></a>
-<span class="sourceLineNo">150</span>      public Readable(PropertyStore propertyStore) {<a name="line.150"></a>
-<span class="sourceLineNo">151</span>         super(propertyStore.copy().append(SERIALIZER_useWhitespace, true));<a name="line.151"></a>
-<span class="sourceLineNo">152</span>      }<a name="line.152"></a>
-<span class="sourceLineNo">153</span>   }<a name="line.153"></a>
-<span class="sourceLineNo">154</span><a name="line.154"></a>
-<span class="sourceLineNo">155</span>   /**<a name="line.155"></a>
-<span class="sourceLineNo">156</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UonSerializerBuilder().encoding().build();&lt;/code&gt;.<a name="line.156"></a>
-<span class="sourceLineNo">157</span>    */<a name="line.157"></a>
-<span class="sourceLineNo">158</span>   public static class Encoding extends UonSerializer {<a name="line.158"></a>
-<span class="sourceLineNo">159</span><a name="line.159"></a>
-<span class="sourceLineNo">160</span>      /**<a name="line.160"></a>
-<span class="sourceLineNo">161</span>       * Constructor.<a name="line.161"></a>
-<span class="sourceLineNo">162</span>       *<a name="line.162"></a>
-<span class="sourceLineNo">163</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.163"></a>
-<span class="sourceLineNo">164</span>       */<a name="line.164"></a>
-<span class="sourceLineNo">165</span>      public Encoding(PropertyStore propertyStore) {<a name="line.165"></a>
-<span class="sourceLineNo">166</span>         super(propertyStore.copy().append(UON_encodeChars, true));<a name="line.166"></a>
-<span class="sourceLineNo">167</span>      }<a name="line.167"></a>
-<span class="sourceLineNo">168</span>   }<a name="line.168"></a>
-<span class="sourceLineNo">169</span><a name="line.169"></a>
+<span class="sourceLineNo">019</span>import org.apache.juneau.serializer.*;<a name="line.19"></a>
+<span class="sourceLineNo">020</span><a name="line.20"></a>
+<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
+<span class="sourceLineNo">022</span> * Serializes POJO models to UON (a notation for URL-encoded query parameter values).<a name="line.22"></a>
+<span class="sourceLineNo">023</span> *<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.24"></a>
+<span class="sourceLineNo">025</span> *<a name="line.25"></a>
+<span class="sourceLineNo">026</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/uon&lt;/code&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> *<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * &lt;p&gt;<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/uon&lt;/code&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> *<a name="line.30"></a>
+<span class="sourceLineNo">031</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.31"></a>
+<span class="sourceLineNo">032</span> *<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * This serializer provides several serialization options.<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *<a name="line.36"></a>
+<span class="sourceLineNo">037</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.37"></a>
+<span class="sourceLineNo">038</span> *<a name="line.38"></a>
+<span class="sourceLineNo">039</span> * This class has the following properties associated with it:<a name="line.39"></a>
+<span class="sourceLineNo">040</span> * &lt;ul&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span> *    &lt;li&gt;{@link UonSerializerContext}<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *    &lt;li&gt;{@link BeanContext}<a name="line.42"></a>
+<span class="sourceLineNo">043</span> * &lt;/ul&gt;<a name="line.43"></a>
+<span class="sourceLineNo">044</span> *<a name="line.44"></a>
+<span class="sourceLineNo">045</span> * &lt;p&gt;<a name="line.45"></a>
+<span class="sourceLineNo">046</span> * The following shows a sample object defined in Javascript:<a name="line.46"></a>
+<span class="sourceLineNo">047</span> * &lt;p class='bcode'&gt;<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *    {<a name="line.48"></a>
+<span class="sourceLineNo">049</span> *       id: 1,<a name="line.49"></a>
+<span class="sourceLineNo">050</span> *       name: &lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.50"></a>
+<span class="sourceLineNo">051</span> *       uri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.51"></a>
+<span class="sourceLineNo">052</span> *       addressBookUri: &lt;js&gt;'http://sample/addressBook'&lt;/js&gt;,<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *       birthDate: &lt;js&gt;'1946-08-12T00:00:00Z'&lt;/js&gt;,<a name="line.53"></a>
+<span class="sourceLineNo">054</span> *       otherIds: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.54"></a>
+<span class="sourceLineNo">055</span> *       addresses: [<a name="line.55"></a>
+<span class="sourceLineNo">056</span> *          {<a name="line.56"></a>
+<span class="sourceLineNo">057</span> *             uri: &lt;js&gt;'http://sample/addressBook/address/1'&lt;/js&gt;,<a name="line.57"></a>
+<span class="sourceLineNo">058</span> *             personUri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.58"></a>
+<span class="sourceLineNo">059</span> *             id: 1,<a name="line.59"></a>
+<span class="sourceLineNo">060</span> *             street: &lt;js&gt;'100 Main Street'&lt;/js&gt;,<a name="line.60"></a>
+<span class="sourceLineNo">061</span> *             city: &lt;js&gt;'Anywhereville'&lt;/js&gt;,<a name="line.61"></a>
+<span class="sourceLineNo">062</span> *             state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.62"></a>
+<span class="sourceLineNo">063</span> *             zip: 12345,<a name="line.63"></a>
+<span class="sourceLineNo">064</span> *             isCurrent: &lt;jk&gt;true&lt;/jk&gt;,<a name="line.64"></a>
+<span class="sourceLineNo">065</span> *          }<a name="line.65"></a>
+<span class="sourceLineNo">066</span> *       ]<a name="line.66"></a>
+<span class="sourceLineNo">067</span> *    }<a name="line.67"></a>
+<span class="sourceLineNo">068</span> * &lt;/p&gt;<a name="line.68"></a>
+<span class="sourceLineNo">069</span> *<a name="line.69"></a>
+<span class="sourceLineNo">070</span> * &lt;p&gt;<a name="line.70"></a>
+<span class="sourceLineNo">071</span> * Using the "strict" syntax defined in this document, the equivalent UON notation would be as follows:<a name="line.71"></a>
+<span class="sourceLineNo">072</span> * &lt;p class='bcode'&gt;<a name="line.72"></a>
+<span class="sourceLineNo">073</span> *    (<a name="line.73"></a>
+<span class="sourceLineNo">074</span> *       &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;,<a name="line.74"></a>
+<span class="sourceLineNo">075</span> *       &lt;ua&gt;name&lt;/ua&gt;=&lt;us&gt;'John+Smith'&lt;/us&gt;,<a name="line.75"></a>
+<span class="sourceLineNo">076</span> *       &lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.76"></a>
+<span class="sourceLineNo">077</span> *       &lt;ua&gt;addressBookUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook&lt;/us&gt;,<a name="line.77"></a>
+<span class="sourceLineNo">078</span> *       &lt;ua&gt;birthDate&lt;/ua&gt;=&lt;us&gt;1946-08-12T00:00:00Z&lt;/us&gt;,<a name="line.78"></a>
+<span class="sourceLineNo">079</span> *       &lt;ua&gt;otherIds&lt;/ua&gt;=&lt;uk&gt;null&lt;/uk&gt;,<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *       &lt;ua&gt;addresses&lt;/ua&gt;=@(<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *          (<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *             &lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/address/1&lt;/us&gt;,<a name="line.82"></a>
+<span class="sourceLineNo">083</span> *             &lt;ua&gt;personUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *             &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;,<a name="line.84"></a>
+<span class="sourceLineNo">085</span> *             &lt;ua&gt;street&lt;/ua&gt;=&lt;us&gt;'100+Main+Street'&lt;/us&gt;,<a name="line.85"></a>
+<span class="sourceLineNo">086</span> *             &lt;ua&gt;city&lt;/ua&gt;=&lt;us&gt;Anywhereville&lt;/us&gt;,<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *             &lt;ua&gt;state&lt;/ua&gt;=&lt;us&gt;NY&lt;/us&gt;,<a name="line.87"></a>
+<span class="sourceLineNo">088</span> *             &lt;ua&gt;zip&lt;/ua&gt;=&lt;un&gt;12345&lt;/un&gt;,<a name="line.88"></a>
+<span class="sourceLineNo">089</span> *             &lt;ua&gt;isCurrent&lt;/ua&gt;=&lt;uk&gt;true&lt;/uk&gt;<a name="line.89"></a>
+<span class="sourceLineNo">090</span> *          )<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *       )<a name="line.91"></a>
+<span class="sourceLineNo">092</span> *    )<a name="line.92"></a>
+<span class="sourceLineNo">093</span> * &lt;/p&gt;<a name="line.93"></a>
+<span class="sourceLineNo">094</span> *<a name="line.94"></a>
+<span class="sourceLineNo">095</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.95"></a>
+<span class="sourceLineNo">096</span> * &lt;p class='bcode'&gt;<a name="line.96"></a>
+<span class="sourceLineNo">097</span> *    &lt;jc&gt;// Serialize a Map&lt;/jc&gt;<a name="line.97"></a>
+<span class="sourceLineNo">098</span> *    Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{a:'b',c:1,d:false,e:['f',1,false],g:{h:'i'}}"&lt;/js&gt;);<a name="line.98"></a>
+<span class="sourceLineNo">099</span> *<a name="line.99"></a>
+<span class="sourceLineNo">100</span> *    &lt;jc&gt;// Serialize to value equivalent to JSON.&lt;/jc&gt;<a name="line.100"></a>
+<span class="sourceLineNo">101</span> *    &lt;jc&gt;// Produces "(a=b,c=1,d=false,e=@(f,1,false),g=(h=i))"&lt;/jc&gt;<a name="line.101"></a>
+<span class="sourceLineNo">102</span> *    String s = UonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.102"></a>
+<span class="sourceLineNo">103</span> *<a name="line.103"></a>
+<span class="sourceLineNo">104</span> *    &lt;jc&gt;// Serialize a bean&lt;/jc&gt;<a name="line.104"></a>
+<span class="sourceLineNo">105</span> *    &lt;jk&gt;public class&lt;/jk&gt; Person {<a name="line.105"></a>
+<span class="sourceLineNo">106</span> *       &lt;jk&gt;public&lt;/jk&gt; Person(String s);<a name="line.106"></a>
+<span class="sourceLineNo">107</span> *       &lt;jk&gt;public&lt;/jk&gt; String getName();<a name="line.107"></a>
+<span class="sourceLineNo">108</span> *       &lt;jk&gt;public int&lt;/jk&gt; getAge();<a name="line.108"></a>
+<span class="sourceLineNo">109</span> *       &lt;jk&gt;public&lt;/jk&gt; Address getAddress();<a name="line.109"></a>
+<span class="sourceLineNo">110</span> *       &lt;jk&gt;public boolean&lt;/jk&gt; deceased;<a name="line.110"></a>
+<span class="sourceLineNo">111</span> *    }<a name="line.111"></a>
+<span class="sourceLineNo">112</span> *<a name="line.112"></a>
+<span class="sourceLineNo">113</span> *    &lt;jk&gt;public class&lt;/jk&gt; Address {<a name="line.113"></a>
+<span class="sourceLineNo">114</span> *       &lt;jk&gt;public&lt;/jk&gt; String getStreet();<a name="line.114"></a>
+<span class="sourceLineNo">115</span> *       &lt;jk&gt;public&lt;/jk&gt; String getCity();<a name="line.115"></a>
+<span class="sourceLineNo">116</span> *       &lt;jk&gt;public&lt;/jk&gt; String getState();<a name="line.116"></a>
+<span class="sourceLineNo">117</span> *       &lt;jk&gt;public int&lt;/jk&gt; getZip();<a name="line.117"></a>
+<span class="sourceLineNo">118</span> *    }<a name="line.118"></a>
+<span class="sourceLineNo">119</span> *<a name="line.119"></a>
+<span class="sourceLineNo">120</span> *    Person p = &lt;jk&gt;new&lt;/jk&gt; Person(&lt;js&gt;"John Doe"&lt;/js&gt;, 23, &lt;js&gt;"123 Main St"&lt;/js&gt;, &lt;js&gt;"Anywhere"&lt;/js&gt;,<a name="line.120"></a>
+<span class="sourceLineNo">121</span> *       &lt;js&gt;"NY"&lt;/js&gt;, 12345, &lt;jk&gt;false&lt;/jk&gt;);<a name="line.121"></a>
+<span class="sourceLineNo">122</span> *<a name="line.122"></a>
+<span class="sourceLineNo">123</span> *    &lt;jc&gt;// Produces "(name='John Doe',age=23,address=(street='123 Main St',city=Anywhere,state=NY,zip=12345),deceased=false)"&lt;/jc&gt;<a name="line.123"></a>
+<span class="sourceLineNo">124</span> *    String s = UonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.124"></a>
+<span class="sourceLineNo">125</span> * &lt;/p&gt;<a name="line.125"></a>
+<span class="sourceLineNo">126</span> */<a name="line.126"></a>
+<span class="sourceLineNo">127</span>public class UonSerializer extends WriterSerializer {<a name="line.127"></a>
+<span class="sourceLineNo">128</span><a name="line.128"></a>
+<span class="sourceLineNo">129</span>   /** Reusable instance of {@link UonSerializer}, all default settings. */<a name="line.129"></a>
+<span class="sourceLineNo">130</span>   public static final UonSerializer DEFAULT = new UonSerializer(PropertyStore.create());<a name="line.130"></a>
+<span class="sourceLineNo">131</span><a name="line.131"></a>
+<span class="sourceLineNo">132</span>   /** Reusable instance of {@link UonSerializer.Readable}. */<a name="line.132"></a>
+<span class="sourceLineNo">133</span>   public static final UonSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.133"></a>
+<span class="sourceLineNo">134</span><a name="line.134"></a>
+<span class="sourceLineNo">135</span>   /** Reusable instance of {@link UonSerializer.Encoding}. */<a name="line.135"></a>
+<span class="sourceLineNo">136</span>   public static final UonSerializer DEFAULT_ENCODING = new Encoding(PropertyStore.create());<a name="line.136"></a>
+<span class="sourceLineNo">137</span><a name="line.137"></a>
+<span class="sourceLineNo">138</span>   /**<a name="line.138"></a>
+<span class="sourceLineNo">139</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UonSerializerBuilder().ws().build();&lt;/code&gt;.<a name="line.139"></a>
+<span class="sourceLineNo">140</span>    */<a name="line.140"></a>
+<span class="sourceLineNo">141</span>   public static class Readable extends UonSerializer {<a name="line.141"></a>
+<span class="sourceLineNo">142</span><a name="line.142"></a>
+<span class="sourceLineNo">143</span>      /**<a name="line.143"></a>
+<span class="sourceLineNo">144</span>       * Constructor.<a name="line.144"></a>
+<span class="sourceLineNo">145</span>       *<a name="line.145"></a>
+<span class="sourceLineNo">146</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.146"></a>
+<span class="sourceLineNo">147</span>       */<a name="line.147"></a>
+<span class="sourceLineNo">148</span>      public Readable(PropertyStore propertyStore) {<a name="line.148"></a>
+<span class="sourceLineNo">149</span>         super(propertyStore.copy().append(SERIALIZER_useWhitespace, true));<a name="line.149"></a>
+<span class="sourceLineNo">150</span>      }<a name="line.150"></a>
+<span class="sourceLineNo">151</span>   }<a name="line.151"></a>
+<span class="sourceLineNo">152</span><a name="line.152"></a>
+<span class="sourceLineNo">153</span>   /**<a name="line.153"></a>
+<span class="sourceLineNo">154</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UonSerializerBuilder().encoding().build();&lt;/code&gt;.<a name="line.154"></a>
+<span class="sourceLineNo">155</span>    */<a name="line.155"></a>
+<span class="sourceLineNo">156</span>   public static class Encoding extends UonSerializer {<a name="line.156"></a>
+<span class="sourceLineNo">157</span><a name="line.157"></a>
+<span class="sourceLineNo">158</span>      /**<a name="line.158"></a>
+<span class="sourceLineNo">159</span>       * Constructor.<a name="line.159"></a>
+<span class="sourceLineNo">160</span>       *<a name="line.160"></a>
+<span class="sourceLineNo">161</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.161"></a>
+<span class="sourceLineNo">162</span>       */<a name="line.162"></a>
+<span class="sourceLineNo">163</span>      public Encoding(PropertyStore propertyStore) {<a name="line.163"></a>
+<span class="sourceLineNo">164</span>         super(propertyStore.copy().append(UON_encodeChars, true));<a name="line.164"></a>
+<span class="sourceLineNo">165</span>      }<a name="line.165"></a>
+<span class="sourceLineNo">166</span>   }<a name="line.166"></a>
+<span class="sourceLineNo">167</span><a name="line.167"></a>
+<span class="sourceLineNo">168</span><a name="line.168"></a>
+<span class="sourceLineNo">169</span>   private final UonSerializerContext ctx;<a name="line.169"></a>
 <span class="sourceLineNo">170</span><a name="line.170"></a>
-<span class="sourceLineNo">171</span>   private final UonSerializerContext ctx;<a name="line.171"></a>
-<span class="sourceLineNo">172</span><a name="line.172"></a>
-<span class="sourceLineNo">173</span>   /**<a name="line.173"></a>
-<span class="sourceLineNo">174</span>    * Constructor.<a name="line.174"></a>
-<span class="sourceLineNo">175</span>    *<a name="line.175"></a>
-<span class="sourceLineNo">176</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.176"></a>
-<span class="sourceLineNo">177</span>    */<a name="line.177"></a>
-<span class="sourceLineNo">178</span>   public UonSerializer(PropertyStore propertyStore) {<a name="line.178"></a>
-<span class="sourceLineNo">179</span>      super(propertyStore);<a name="line.179"></a>
-<span class="sourceLineNo">180</span>      this.ctx = createContext(UonSerializerContext.class);<a name="line.180"></a>
-<span class="sourceLineNo">181</span>   }<a name="line.181"></a>
-<span class="sourceLineNo">182</span><a name="line.182"></a>
-<span class="sourceLineNo">183</span>   @Override /* CoreObject */<a name="line.183"></a>
-<span class="sourceLineNo">184</span>   public UonSerializerBuilder builder() {<a name="line.184"></a>
-<span class="sourceLineNo">185</span>      return new UonSerializerBuilder(propertyStore);<a name="line.185"></a>
-<span class="sourceLineNo">186</span>   }<a name="line.186"></a>
-<span class="sourceLineNo">187</span><a name="line.187"></a>
-<span class="sourceLineNo">188</span><a name="line.188"></a>
-<span class="sourceLineNo">189</span><a name="line.189"></a>
-<span class="sourceLineNo">190</span>   //--------------------------------------------------------------------------------<a name="line.190"></a>
-<span class="sourceLineNo">191</span>   // Entry point methods<a name="line.191"></a>
-<span class="sourceLineNo">192</span>   //--------------------------------------------------------------------------------<a name="line.192"></a>
-<span class="sourceLineNo">193</span><a name="line.193"></a>
-<span class="sourceLineNo">194</span>   @Override /* Serializer */<a name="line.194"></a>
-<span class="sourceLineNo">195</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.195"></a>
-<span class="sourceLineNo">196</span>      return new UonSerializerSession(ctx, null, args);<a name="line.196"></a>
-<span class="sourceLineNo">197</span>   }<a name="line.197"></a>
-<span class="sourceLineNo">198</span>}<a name="line.198"></a>
+<span class="sourceLineNo">171</span>   /**<a name="line.171"></a>
+<span class="sourceLineNo">172</span>    * Constructor.<a name="line.172"></a>
+<span class="sourceLineNo">173</span>    *<a name="line.173"></a>
+<span class="sourceLineNo">174</span>    * @param propertyStore<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    *    The property store containing all the settings for this object.<a name="line.175"></a>
+<span class="sourceLineNo">176</span>    */<a name="line.176"></a>
+<span class="sourceLineNo">177</span>   public UonSerializer(PropertyStore propertyStore) {<a name="line.177"></a>
+<span class="sourceLineNo">178</span>      this(propertyStore, "text/uon");<a name="line.178"></a>
+<span class="sourceLineNo">179</span>   }<a name="line.179"></a>
+<span class="sourceLineNo">180</span><a name="line.180"></a>
+<span class="sourceLineNo">181</span>   /**<a name="line.181"></a>
+<span class="sourceLineNo">182</span>    * Constructor.<a name="line.182"></a>
+<span class="sourceLineNo">183</span>    *<a name="line.183"></a>
+<span class="sourceLineNo">184</span>    * @param propertyStore<a name="line.184"></a>
+<span class="sourceLineNo">185</span>    *    The property store containing all the settings for this object.<a name="line.185"></a>
+<span class="sourceLineNo">186</span>    * @param produces<a name="line.186"></a>
+<span class="sourceLineNo">187</span>    *    The media type that this serializer produces.<a name="line.187"></a>
+<span class="sourceLineNo">188</span>    * @param accept<a name="line.188"></a>
+<span class="sourceLineNo">189</span>    *    The accept media types that the serializer can handle.<a name="line.189"></a>
+<span class="sourceLineNo">190</span>    *    &lt;p&gt;<a name="line.190"></a>
+<span class="sourceLineNo">191</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.191"></a>
+<span class="sourceLineNo">192</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.192"></a>
+<span class="sourceLineNo">193</span>    *    &lt;p&gt;<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    *    &lt;p&gt;<a name="line.195"></a>
+<span class="sourceLineNo">196</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.196"></a>
+<span class="sourceLineNo">197</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.197"></a>
+<span class="sourceLineNo">198</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.198"></a>
+<span class="sourceLineNo">199</span>    *    &lt;br&gt;...or...<a name="line.199"></a>
+<span class="sourceLineNo">200</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    */<a name="line.201"></a>
+<span class="sourceLineNo">202</span>   public UonSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.202"></a>
+<span class="sourceLineNo">203</span>      super(propertyStore, produces, accept);<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      this.ctx = createContext(UonSerializerContext.class);<a name="line.204"></a>
+<span class="sourceLineNo">205</span>   }<a name="line.205"></a>
+<span class="sourceLineNo">206</span><a name="line.206"></a>
+<span class="sourceLineNo">207</span>   @Override /* CoreObject */<a name="line.207"></a>
+<span class="sourceLineNo">208</span>   public UonSerializerBuilder builder() {<a name="line.208"></a>
+<span class="sourceLineNo">209</span>      return new UonSerializerBuilder(propertyStore);<a name="line.209"></a>
+<span class="sourceLineNo">210</span>   }<a name="line.210"></a>
+<span class="sourceLineNo">211</span><a name="line.211"></a>
+<span class="sourceLineNo">212</span><a name="line.212"></a>
+<span class="sourceLineNo">213</span><a name="line.213"></a>
+<span class="sourceLineNo">214</span>   //--------------------------------------------------------------------------------<a name="line.214"></a>
+<span class="sourceLineNo">215</span>   // Entry point methods<a name="line.215"></a>
+<span class="sourceLineNo">216</span>   //--------------------------------------------------------------------------------<a name="line.216"></a>
+<span class="sourceLineNo">217</span><a name="line.217"></a>
+<span class="sourceLineNo">218</span>   @Override /* Serializer */<a name="line.218"></a>
+<span class="sourceLineNo">219</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.219"></a>
+<span class="sourceLineNo">220</span>      return new UonSerializerSession(ctx, null, args);<a name="line.220"></a>
+<span class="sourceLineNo">221</span>   }<a name="line.221"></a>
+<span class="sourceLineNo">222</span>}<a name="line.222"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/uon/UonSerializer.Readable.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/uon/UonSerializer.Readable.html b/content/site/apidocs/src-html/org/apache/juneau/uon/UonSerializer.Readable.html
index 910d09f..6fd7178 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/uon/UonSerializer.Readable.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/uon/UonSerializer.Readable.html
@@ -24,186 +24,210 @@
 <span class="sourceLineNo">016</span>import static org.apache.juneau.uon.UonSerializerContext.*;<a name="line.16"></a>
 <span class="sourceLineNo">017</span><a name="line.17"></a>
 <span class="sourceLineNo">018</span>import org.apache.juneau.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.annotation.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span><a name="line.21"></a>
-<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * Serializes POJO models to UON (a notation for URL-encoded query parameter values).<a name="line.23"></a>
-<span class="sourceLineNo">024</span> *<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.25"></a>
-<span class="sourceLineNo">026</span> *<a name="line.26"></a>
-<span class="sourceLineNo">027</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/uon&lt;/code&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> *<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * &lt;p&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/uon&lt;/code&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> *<a name="line.31"></a>
-<span class="sourceLineNo">032</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.32"></a>
-<span class="sourceLineNo">033</span> *<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * This serializer provides several serialization options.<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.35"></a>
-<span class="sourceLineNo">036</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *<a name="line.37"></a>
-<span class="sourceLineNo">038</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *<a name="line.39"></a>
-<span class="sourceLineNo">040</span> * This class has the following properties associated with it:<a name="line.40"></a>
-<span class="sourceLineNo">041</span> * &lt;ul&gt;<a name="line.41"></a>
-<span class="sourceLineNo">042</span> *    &lt;li&gt;{@link UonSerializerContext}<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *    &lt;li&gt;{@link BeanContext}<a name="line.43"></a>
-<span class="sourceLineNo">044</span> * &lt;/ul&gt;<a name="line.44"></a>
-<span class="sourceLineNo">045</span> *<a name="line.45"></a>
-<span class="sourceLineNo">046</span> * &lt;p&gt;<a name="line.46"></a>
-<span class="sourceLineNo">047</span> * The following shows a sample object defined in Javascript:<a name="line.47"></a>
-<span class="sourceLineNo">048</span> * &lt;p class='bcode'&gt;<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *    {<a name="line.49"></a>
-<span class="sourceLineNo">050</span> *       id: 1,<a name="line.50"></a>
-<span class="sourceLineNo">051</span> *       name: &lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.51"></a>
-<span class="sourceLineNo">052</span> *       uri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.52"></a>
-<span class="sourceLineNo">053</span> *       addressBookUri: &lt;js&gt;'http://sample/addressBook'&lt;/js&gt;,<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *       birthDate: &lt;js&gt;'1946-08-12T00:00:00Z'&lt;/js&gt;,<a name="line.54"></a>
-<span class="sourceLineNo">055</span> *       otherIds: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.55"></a>
-<span class="sourceLineNo">056</span> *       addresses: [<a name="line.56"></a>
-<span class="sourceLineNo">057</span> *          {<a name="line.57"></a>
-<span class="sourceLineNo">058</span> *             uri: &lt;js&gt;'http://sample/addressBook/address/1'&lt;/js&gt;,<a name="line.58"></a>
-<span class="sourceLineNo">059</span> *             personUri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.59"></a>
-<span class="sourceLineNo">060</span> *             id: 1,<a name="line.60"></a>
-<span class="sourceLineNo">061</span> *             street: &lt;js&gt;'100 Main Street'&lt;/js&gt;,<a name="line.61"></a>
-<span class="sourceLineNo">062</span> *             city: &lt;js&gt;'Anywhereville'&lt;/js&gt;,<a name="line.62"></a>
-<span class="sourceLineNo">063</span> *             state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.63"></a>
-<span class="sourceLineNo">064</span> *             zip: 12345,<a name="line.64"></a>
-<span class="sourceLineNo">065</span> *             isCurrent: &lt;jk&gt;true&lt;/jk&gt;,<a name="line.65"></a>
-<span class="sourceLineNo">066</span> *          }<a name="line.66"></a>
-<span class="sourceLineNo">067</span> *       ]<a name="line.67"></a>
-<span class="sourceLineNo">068</span> *    }<a name="line.68"></a>
-<span class="sourceLineNo">069</span> * &lt;/p&gt;<a name="line.69"></a>
-<span class="sourceLineNo">070</span> *<a name="line.70"></a>
-<span class="sourceLineNo">071</span> * &lt;p&gt;<a name="line.71"></a>
-<span class="sourceLineNo">072</span> * Using the "strict" syntax defined in this document, the equivalent UON notation would be as follows:<a name="line.72"></a>
-<span class="sourceLineNo">073</span> * &lt;p class='bcode'&gt;<a name="line.73"></a>
-<span class="sourceLineNo">074</span> *    (<a name="line.74"></a>
-<span class="sourceLineNo">075</span> *       &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;,<a name="line.75"></a>
-<span class="sourceLineNo">076</span> *       &lt;ua&gt;name&lt;/ua&gt;=&lt;us&gt;'John+Smith'&lt;/us&gt;,<a name="line.76"></a>
-<span class="sourceLineNo">077</span> *       &lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.77"></a>
-<span class="sourceLineNo">078</span> *       &lt;ua&gt;addressBookUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook&lt;/us&gt;,<a name="line.78"></a>
-<span class="sourceLineNo">079</span> *       &lt;ua&gt;birthDate&lt;/ua&gt;=&lt;us&gt;1946-08-12T00:00:00Z&lt;/us&gt;,<a name="line.79"></a>
-<span class="sourceLineNo">080</span> *       &lt;ua&gt;otherIds&lt;/ua&gt;=&lt;uk&gt;null&lt;/uk&gt;,<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *       &lt;ua&gt;addresses&lt;/ua&gt;=@(<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *          (<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *             &lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/address/1&lt;/us&gt;,<a name="line.83"></a>
-<span class="sourceLineNo">084</span> *             &lt;ua&gt;personUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *             &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;,<a name="line.85"></a>
-<span class="sourceLineNo">086</span> *             &lt;ua&gt;street&lt;/ua&gt;=&lt;us&gt;'100+Main+Street'&lt;/us&gt;,<a name="line.86"></a>
-<span class="sourceLineNo">087</span> *             &lt;ua&gt;city&lt;/ua&gt;=&lt;us&gt;Anywhereville&lt;/us&gt;,<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *             &lt;ua&gt;state&lt;/ua&gt;=&lt;us&gt;NY&lt;/us&gt;,<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *             &lt;ua&gt;zip&lt;/ua&gt;=&lt;un&gt;12345&lt;/un&gt;,<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *             &lt;ua&gt;isCurrent&lt;/ua&gt;=&lt;uk&gt;true&lt;/uk&gt;<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *          )<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *       )<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *    )<a name="line.93"></a>
-<span class="sourceLineNo">094</span> * &lt;/p&gt;<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *<a name="line.95"></a>
-<span class="sourceLineNo">096</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.96"></a>
-<span class="sourceLineNo">097</span> * &lt;p class='bcode'&gt;<a name="line.97"></a>
-<span class="sourceLineNo">098</span> *    &lt;jc&gt;// Serialize a Map&lt;/jc&gt;<a name="line.98"></a>
-<span class="sourceLineNo">099</span> *    Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{a:'b',c:1,d:false,e:['f',1,false],g:{h:'i'}}"&lt;/js&gt;);<a name="line.99"></a>
-<span class="sourceLineNo">100</span> *<a name="line.100"></a>
-<span class="sourceLineNo">101</span> *    &lt;jc&gt;// Serialize to value equivalent to JSON.&lt;/jc&gt;<a name="line.101"></a>
-<span class="sourceLineNo">102</span> *    &lt;jc&gt;// Produces "(a=b,c=1,d=false,e=@(f,1,false),g=(h=i))"&lt;/jc&gt;<a name="line.102"></a>
-<span class="sourceLineNo">103</span> *    String s = UonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.103"></a>
-<span class="sourceLineNo">104</span> *<a name="line.104"></a>
-<span class="sourceLineNo">105</span> *    &lt;jc&gt;// Serialize a bean&lt;/jc&gt;<a name="line.105"></a>
-<span class="sourceLineNo">106</span> *    &lt;jk&gt;public class&lt;/jk&gt; Person {<a name="line.106"></a>
-<span class="sourceLineNo">107</span> *       &lt;jk&gt;public&lt;/jk&gt; Person(String s);<a name="line.107"></a>
-<span class="sourceLineNo">108</span> *       &lt;jk&gt;public&lt;/jk&gt; String getName();<a name="line.108"></a>
-<span class="sourceLineNo">109</span> *       &lt;jk&gt;public int&lt;/jk&gt; getAge();<a name="line.109"></a>
-<span class="sourceLineNo">110</span> *       &lt;jk&gt;public&lt;/jk&gt; Address getAddress();<a name="line.110"></a>
-<span class="sourceLineNo">111</span> *       &lt;jk&gt;public boolean&lt;/jk&gt; deceased;<a name="line.111"></a>
-<span class="sourceLineNo">112</span> *    }<a name="line.112"></a>
-<span class="sourceLineNo">113</span> *<a name="line.113"></a>
-<span class="sourceLineNo">114</span> *    &lt;jk&gt;public class&lt;/jk&gt; Address {<a name="line.114"></a>
-<span class="sourceLineNo">115</span> *       &lt;jk&gt;public&lt;/jk&gt; String getStreet();<a name="line.115"></a>
-<span class="sourceLineNo">116</span> *       &lt;jk&gt;public&lt;/jk&gt; String getCity();<a name="line.116"></a>
-<span class="sourceLineNo">117</span> *       &lt;jk&gt;public&lt;/jk&gt; String getState();<a name="line.117"></a>
-<span class="sourceLineNo">118</span> *       &lt;jk&gt;public int&lt;/jk&gt; getZip();<a name="line.118"></a>
-<span class="sourceLineNo">119</span> *    }<a name="line.119"></a>
-<span class="sourceLineNo">120</span> *<a name="line.120"></a>
-<span class="sourceLineNo">121</span> *    Person p = &lt;jk&gt;new&lt;/jk&gt; Person(&lt;js&gt;"John Doe"&lt;/js&gt;, 23, &lt;js&gt;"123 Main St"&lt;/js&gt;, &lt;js&gt;"Anywhere"&lt;/js&gt;,<a name="line.121"></a>
-<span class="sourceLineNo">122</span> *       &lt;js&gt;"NY"&lt;/js&gt;, 12345, &lt;jk&gt;false&lt;/jk&gt;);<a name="line.122"></a>
-<span class="sourceLineNo">123</span> *<a name="line.123"></a>
-<span class="sourceLineNo">124</span> *    &lt;jc&gt;// Produces "(name='John Doe',age=23,address=(street='123 Main St',city=Anywhere,state=NY,zip=12345),deceased=false)"&lt;/jc&gt;<a name="line.124"></a>
-<span class="sourceLineNo">125</span> *    String s = UonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.125"></a>
-<span class="sourceLineNo">126</span> * &lt;/p&gt;<a name="line.126"></a>
-<span class="sourceLineNo">127</span> */<a name="line.127"></a>
-<span class="sourceLineNo">128</span>@Produces("text/uon")<a name="line.128"></a>
-<span class="sourceLineNo">129</span>public class UonSerializer extends WriterSerializer {<a name="line.129"></a>
-<span class="sourceLineNo">130</span><a name="line.130"></a>
-<span class="sourceLineNo">131</span>   /** Reusable instance of {@link UonSerializer}, all default settings. */<a name="line.131"></a>
-<span class="sourceLineNo">132</span>   public static final UonSerializer DEFAULT = new UonSerializer(PropertyStore.create());<a name="line.132"></a>
-<span class="sourceLineNo">133</span><a name="line.133"></a>
-<span class="sourceLineNo">134</span>   /** Reusable instance of {@link UonSerializer.Readable}. */<a name="line.134"></a>
-<span class="sourceLineNo">135</span>   public static final UonSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.135"></a>
-<span class="sourceLineNo">136</span><a name="line.136"></a>
-<span class="sourceLineNo">137</span>   /** Reusable instance of {@link UonSerializer.Encoding}. */<a name="line.137"></a>
-<span class="sourceLineNo">138</span>   public static final UonSerializer DEFAULT_ENCODING = new Encoding(PropertyStore.create());<a name="line.138"></a>
-<span class="sourceLineNo">139</span><a name="line.139"></a>
-<span class="sourceLineNo">140</span>   /**<a name="line.140"></a>
-<span class="sourceLineNo">141</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UonSerializerBuilder().ws().build();&lt;/code&gt;.<a name="line.141"></a>
-<span class="sourceLineNo">142</span>    */<a name="line.142"></a>
-<span class="sourceLineNo">143</span>   public static class Readable extends UonSerializer {<a name="line.143"></a>
-<span class="sourceLineNo">144</span><a name="line.144"></a>
-<span class="sourceLineNo">145</span>      /**<a name="line.145"></a>
-<span class="sourceLineNo">146</span>       * Constructor.<a name="line.146"></a>
-<span class="sourceLineNo">147</span>       *<a name="line.147"></a>
-<span class="sourceLineNo">148</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.148"></a>
-<span class="sourceLineNo">149</span>       */<a name="line.149"></a>
-<span class="sourceLineNo">150</span>      public Readable(PropertyStore propertyStore) {<a name="line.150"></a>
-<span class="sourceLineNo">151</span>         super(propertyStore.copy().append(SERIALIZER_useWhitespace, true));<a name="line.151"></a>
-<span class="sourceLineNo">152</span>      }<a name="line.152"></a>
-<span class="sourceLineNo">153</span>   }<a name="line.153"></a>
-<span class="sourceLineNo">154</span><a name="line.154"></a>
-<span class="sourceLineNo">155</span>   /**<a name="line.155"></a>
-<span class="sourceLineNo">156</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UonSerializerBuilder().encoding().build();&lt;/code&gt;.<a name="line.156"></a>
-<span class="sourceLineNo">157</span>    */<a name="line.157"></a>
-<span class="sourceLineNo">158</span>   public static class Encoding extends UonSerializer {<a name="line.158"></a>
-<span class="sourceLineNo">159</span><a name="line.159"></a>
-<span class="sourceLineNo">160</span>      /**<a name="line.160"></a>
-<span class="sourceLineNo">161</span>       * Constructor.<a name="line.161"></a>
-<span class="sourceLineNo">162</span>       *<a name="line.162"></a>
-<span class="sourceLineNo">163</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.163"></a>
-<span class="sourceLineNo">164</span>       */<a name="line.164"></a>
-<span class="sourceLineNo">165</span>      public Encoding(PropertyStore propertyStore) {<a name="line.165"></a>
-<span class="sourceLineNo">166</span>         super(propertyStore.copy().append(UON_encodeChars, true));<a name="line.166"></a>
-<span class="sourceLineNo">167</span>      }<a name="line.167"></a>
-<span class="sourceLineNo">168</span>   }<a name="line.168"></a>
-<span class="sourceLineNo">169</span><a name="line.169"></a>
+<span class="sourceLineNo">019</span>import org.apache.juneau.serializer.*;<a name="line.19"></a>
+<span class="sourceLineNo">020</span><a name="line.20"></a>
+<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
+<span class="sourceLineNo">022</span> * Serializes POJO models to UON (a notation for URL-encoded query parameter values).<a name="line.22"></a>
+<span class="sourceLineNo">023</span> *<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.24"></a>
+<span class="sourceLineNo">025</span> *<a name="line.25"></a>
+<span class="sourceLineNo">026</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/uon&lt;/code&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> *<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * &lt;p&gt;<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/uon&lt;/code&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> *<a name="line.30"></a>
+<span class="sourceLineNo">031</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.31"></a>
+<span class="sourceLineNo">032</span> *<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * This serializer provides several serialization options.<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *<a name="line.36"></a>
+<span class="sourceLineNo">037</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.37"></a>
+<span class="sourceLineNo">038</span> *<a name="line.38"></a>
+<span class="sourceLineNo">039</span> * This class has the following properties associated with it:<a name="line.39"></a>
+<span class="sourceLineNo">040</span> * &lt;ul&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span> *    &lt;li&gt;{@link UonSerializerContext}<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *    &lt;li&gt;{@link BeanContext}<a name="line.42"></a>
+<span class="sourceLineNo">043</span> * &lt;/ul&gt;<a name="line.43"></a>
+<span class="sourceLineNo">044</span> *<a name="line.44"></a>
+<span class="sourceLineNo">045</span> * &lt;p&gt;<a name="line.45"></a>
+<span class="sourceLineNo">046</span> * The following shows a sample object defined in Javascript:<a name="line.46"></a>
+<span class="sourceLineNo">047</span> * &lt;p class='bcode'&gt;<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *    {<a name="line.48"></a>
+<span class="sourceLineNo">049</span> *       id: 1,<a name="line.49"></a>
+<span class="sourceLineNo">050</span> *       name: &lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.50"></a>
+<span class="sourceLineNo">051</span> *       uri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.51"></a>
+<span class="sourceLineNo">052</span> *       addressBookUri: &lt;js&gt;'http://sample/addressBook'&lt;/js&gt;,<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *       birthDate: &lt;js&gt;'1946-08-12T00:00:00Z'&lt;/js&gt;,<a name="line.53"></a>
+<span class="sourceLineNo">054</span> *       otherIds: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.54"></a>
+<span class="sourceLineNo">055</span> *       addresses: [<a name="line.55"></a>
+<span class="sourceLineNo">056</span> *          {<a name="line.56"></a>
+<span class="sourceLineNo">057</span> *             uri: &lt;js&gt;'http://sample/addressBook/address/1'&lt;/js&gt;,<a name="line.57"></a>
+<span class="sourceLineNo">058</span> *             personUri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.58"></a>
+<span class="sourceLineNo">059</span> *             id: 1,<a name="line.59"></a>
+<span class="sourceLineNo">060</span> *             street: &lt;js&gt;'100 Main Street'&lt;/js&gt;,<a name="line.60"></a>
+<span class="sourceLineNo">061</span> *             city: &lt;js&gt;'Anywhereville'&lt;/js&gt;,<a name="line.61"></a>
+<span class="sourceLineNo">062</span> *             state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.62"></a>
+<span class="sourceLineNo">063</span> *             zip: 12345,<a name="line.63"></a>
+<span class="sourceLineNo">064</span> *             isCurrent: &lt;jk&gt;true&lt;/jk&gt;,<a name="line.64"></a>
+<span class="sourceLineNo">065</span> *          }<a name="line.65"></a>
+<span class="sourceLineNo">066</span> *       ]<a name="line.66"></a>
+<span class="sourceLineNo">067</span> *    }<a name="line.67"></a>
+<span class="sourceLineNo">068</span> * &lt;/p&gt;<a name="line.68"></a>
+<span class="sourceLineNo">069</span> *<a name="line.69"></a>
+<span class="sourceLineNo">070</span> * &lt;p&gt;<a name="line.70"></a>
+<span class="sourceLineNo">071</span> * Using the "strict" syntax defined in this document, the equivalent UON notation would be as follows:<a name="line.71"></a>
+<span class="sourceLineNo">072</span> * &lt;p class='bcode'&gt;<a name="line.72"></a>
+<span class="sourceLineNo">073</span> *    (<a name="line.73"></a>
+<span class="sourceLineNo">074</span> *       &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;,<a name="line.74"></a>
+<span class="sourceLineNo">075</span> *       &lt;ua&gt;name&lt;/ua&gt;=&lt;us&gt;'John+Smith'&lt;/us&gt;,<a name="line.75"></a>
+<span class="sourceLineNo">076</span> *       &lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.76"></a>
+<span class="sourceLineNo">077</span> *       &lt;ua&gt;addressBookUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook&lt;/us&gt;,<a name="line.77"></a>
+<span class="sourceLineNo">078</span> *       &lt;ua&gt;birthDate&lt;/ua&gt;=&lt;us&gt;1946-08-12T00:00:00Z&lt;/us&gt;,<a name="line.78"></a>
+<span class="sourceLineNo">079</span> *       &lt;ua&gt;otherIds&lt;/ua&gt;=&lt;uk&gt;null&lt;/uk&gt;,<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *       &lt;ua&gt;addresses&lt;/ua&gt;=@(<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *          (<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *             &lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/address/1&lt;/us&gt;,<a name="line.82"></a>
+<span class="sourceLineNo">083</span> *             &lt;ua&gt;personUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *             &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;,<a name="line.84"></a>
+<span class="sourceLineNo">085</span> *             &lt;ua&gt;street&lt;/ua&gt;=&lt;us&gt;'100+Main+Street'&lt;/us&gt;,<a name="line.85"></a>
+<span class="sourceLineNo">086</span> *             &lt;ua&gt;city&lt;/ua&gt;=&lt;us&gt;Anywhereville&lt;/us&gt;,<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *             &lt;ua&gt;state&lt;/ua&gt;=&lt;us&gt;NY&lt;/us&gt;,<a name="line.87"></a>
+<span class="sourceLineNo">088</span> *             &lt;ua&gt;zip&lt;/ua&gt;=&lt;un&gt;12345&lt;/un&gt;,<a name="line.88"></a>
+<span class="sourceLineNo">089</span> *             &lt;ua&gt;isCurrent&lt;/ua&gt;=&lt;uk&gt;true&lt;/uk&gt;<a name="line.89"></a>
+<span class="sourceLineNo">090</span> *          )<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *       )<a name="line.91"></a>
+<span class="sourceLineNo">092</span> *    )<a name="line.92"></a>
+<span class="sourceLineNo">093</span> * &lt;/p&gt;<a name="line.93"></a>
+<span class="sourceLineNo">094</span> *<a name="line.94"></a>
+<span class="sourceLineNo">095</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.95"></a>
+<span class="sourceLineNo">096</span> * &lt;p class='bcode'&gt;<a name="line.96"></a>
+<span class="sourceLineNo">097</span> *    &lt;jc&gt;// Serialize a Map&lt;/jc&gt;<a name="line.97"></a>
+<span class="sourceLineNo">098</span> *    Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{a:'b',c:1,d:false,e:['f',1,false],g:{h:'i'}}"&lt;/js&gt;);<a name="line.98"></a>
+<span class="sourceLineNo">099</span> *<a name="line.99"></a>
+<span class="sourceLineNo">100</span> *    &lt;jc&gt;// Serialize to value equivalent to JSON.&lt;/jc&gt;<a name="line.100"></a>
+<span class="sourceLineNo">101</span> *    &lt;jc&gt;// Produces "(a=b,c=1,d=false,e=@(f,1,false),g=(h=i))"&lt;/jc&gt;<a name="line.101"></a>
+<span class="sourceLineNo">102</span> *    String s = UonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.102"></a>
+<span class="sourceLineNo">103</span> *<a name="line.103"></a>
+<span class="sourceLineNo">104</span> *    &lt;jc&gt;// Serialize a bean&lt;/jc&gt;<a name="line.104"></a>
+<span class="sourceLineNo">105</span> *    &lt;jk&gt;public class&lt;/jk&gt; Person {<a name="line.105"></a>
+<span class="sourceLineNo">106</span> *       &lt;jk&gt;public&lt;/jk&gt; Person(String s);<a name="line.106"></a>
+<span class="sourceLineNo">107</span> *       &lt;jk&gt;public&lt;/jk&gt; String getName();<a name="line.107"></a>
+<span class="sourceLineNo">108</span> *       &lt;jk&gt;public int&lt;/jk&gt; getAge();<a name="line.108"></a>
+<span class="sourceLineNo">109</span> *       &lt;jk&gt;public&lt;/jk&gt; Address getAddress();<a name="line.109"></a>
+<span class="sourceLineNo">110</span> *       &lt;jk&gt;public boolean&lt;/jk&gt; deceased;<a name="line.110"></a>
+<span class="sourceLineNo">111</span> *    }<a name="line.111"></a>
+<span class="sourceLineNo">112</span> *<a name="line.112"></a>
+<span class="sourceLineNo">113</span> *    &lt;jk&gt;public class&lt;/jk&gt; Address {<a name="line.113"></a>
+<span class="sourceLineNo">114</span> *       &lt;jk&gt;public&lt;/jk&gt; String getStreet();<a name="line.114"></a>
+<span class="sourceLineNo">115</span> *       &lt;jk&gt;public&lt;/jk&gt; String getCity();<a name="line.115"></a>
+<span class="sourceLineNo">116</span> *       &lt;jk&gt;public&lt;/jk&gt; String getState();<a name="line.116"></a>
+<span class="sourceLineNo">117</span> *       &lt;jk&gt;public int&lt;/jk&gt; getZip();<a name="line.117"></a>
+<span class="sourceLineNo">118</span> *    }<a name="line.118"></a>
+<span class="sourceLineNo">119</span> *<a name="line.119"></a>
+<span class="sourceLineNo">120</span> *    Person p = &lt;jk&gt;new&lt;/jk&gt; Person(&lt;js&gt;"John Doe"&lt;/js&gt;, 23, &lt;js&gt;"123 Main St"&lt;/js&gt;, &lt;js&gt;"Anywhere"&lt;/js&gt;,<a name="line.120"></a>
+<span class="sourceLineNo">121</span> *       &lt;js&gt;"NY"&lt;/js&gt;, 12345, &lt;jk&gt;false&lt;/jk&gt;);<a name="line.121"></a>
+<span class="sourceLineNo">122</span> *<a name="line.122"></a>
+<span class="sourceLineNo">123</span> *    &lt;jc&gt;// Produces "(name='John Doe',age=23,address=(street='123 Main St',city=Anywhere,state=NY,zip=12345),deceased=false)"&lt;/jc&gt;<a name="line.123"></a>
+<span class="sourceLineNo">124</span> *    String s = UonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.124"></a>
+<span class="sourceLineNo">125</span> * &lt;/p&gt;<a name="line.125"></a>
+<span class="sourceLineNo">126</span> */<a name="line.126"></a>
+<span class="sourceLineNo">127</span>public class UonSerializer extends WriterSerializer {<a name="line.127"></a>
+<span class="sourceLineNo">128</span><a name="line.128"></a>
+<span class="sourceLineNo">129</span>   /** Reusable instance of {@link UonSerializer}, all default settings. */<a name="line.129"></a>
+<span class="sourceLineNo">130</span>   public static final UonSerializer DEFAULT = new UonSerializer(PropertyStore.create());<a name="line.130"></a>
+<span class="sourceLineNo">131</span><a name="line.131"></a>
+<span class="sourceLineNo">132</span>   /** Reusable instance of {@link UonSerializer.Readable}. */<a name="line.132"></a>
+<span class="sourceLineNo">133</span>   public static final UonSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.133"></a>
+<span class="sourceLineNo">134</span><a name="line.134"></a>
+<span class="sourceLineNo">135</span>   /** Reusable instance of {@link UonSerializer.Encoding}. */<a name="line.135"></a>
+<span class="sourceLineNo">136</span>   public static final UonSerializer DEFAULT_ENCODING = new Encoding(PropertyStore.create());<a name="line.136"></a>
+<span class="sourceLineNo">137</span><a name="line.137"></a>
+<span class="sourceLineNo">138</span>   /**<a name="line.138"></a>
+<span class="sourceLineNo">139</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UonSerializerBuilder().ws().build();&lt;/code&gt;.<a name="line.139"></a>
+<span class="sourceLineNo">140</span>    */<a name="line.140"></a>
+<span class="sourceLineNo">141</span>   public static class Readable extends UonSerializer {<a name="line.141"></a>
+<span class="sourceLineNo">142</span><a name="line.142"></a>
+<span class="sourceLineNo">143</span>      /**<a name="line.143"></a>
+<span class="sourceLineNo">144</span>       * Constructor.<a name="line.144"></a>
+<span class="sourceLineNo">145</span>       *<a name="line.145"></a>
+<span class="sourceLineNo">146</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.146"></a>
+<span class="sourceLineNo">147</span>       */<a name="line.147"></a>
+<span class="sourceLineNo">148</span>      public Readable(PropertyStore propertyStore) {<a name="line.148"></a>
+<span class="sourceLineNo">149</span>         super(propertyStore.copy().append(SERIALIZER_useWhitespace, true));<a name="line.149"></a>
+<span class="sourceLineNo">150</span>      }<a name="line.150"></a>
+<span class="sourceLineNo">151</span>   }<a name="line.151"></a>
+<span class="sourceLineNo">152</span><a name="line.152"></a>
+<span class="sourceLineNo">153</span>   /**<a name="line.153"></a>
+<span class="sourceLineNo">154</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UonSerializerBuilder().encoding().build();&lt;/code&gt;.<a name="line.154"></a>
+<span class="sourceLineNo">155</span>    */<a name="line.155"></a>
+<span class="sourceLineNo">156</span>   public static class Encoding extends UonSerializer {<a name="line.156"></a>
+<span class="sourceLineNo">157</span><a name="line.157"></a>
+<span class="sourceLineNo">158</span>      /**<a name="line.158"></a>
+<span class="sourceLineNo">159</span>       * Constructor.<a name="line.159"></a>
+<span class="sourceLineNo">160</span>       *<a name="line.160"></a>
+<span class="sourceLineNo">161</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.161"></a>
+<span class="sourceLineNo">162</span>       */<a name="line.162"></a>
+<span class="sourceLineNo">163</span>      public Encoding(PropertyStore propertyStore) {<a name="line.163"></a>
+<span class="sourceLineNo">164</span>         super(propertyStore.copy().append(UON_encodeChars, true));<a name="line.164"></a>
+<span class="sourceLineNo">165</span>      }<a name="line.165"></a>
+<span class="sourceLineNo">166</span>   }<a name="line.166"></a>
+<span class="sourceLineNo">167</span><a name="line.167"></a>
+<span class="sourceLineNo">168</span><a name="line.168"></a>
+<span class="sourceLineNo">169</span>   private final UonSerializerContext ctx;<a name="line.169"></a>
 <span class="sourceLineNo">170</span><a name="line.170"></a>
-<span class="sourceLineNo">171</span>   private final UonSerializerContext ctx;<a name="line.171"></a>
-<span class="sourceLineNo">172</span><a name="line.172"></a>
-<span class="sourceLineNo">173</span>   /**<a name="line.173"></a>
-<span class="sourceLineNo">174</span>    * Constructor.<a name="line.174"></a>
-<span class="sourceLineNo">175</span>    *<a name="line.175"></a>
-<span class="sourceLineNo">176</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.176"></a>
-<span class="sourceLineNo">177</span>    */<a name="line.177"></a>
-<span class="sourceLineNo">178</span>   public UonSerializer(PropertyStore propertyStore) {<a name="line.178"></a>
-<span class="sourceLineNo">179</span>      super(propertyStore);<a name="line.179"></a>
-<span class="sourceLineNo">180</span>      this.ctx = createContext(UonSerializerContext.class);<a name="line.180"></a>
-<span class="sourceLineNo">181</span>   }<a name="line.181"></a>
-<span class="sourceLineNo">182</span><a name="line.182"></a>
-<span class="sourceLineNo">183</span>   @Override /* CoreObject */<a name="line.183"></a>
-<span class="sourceLineNo">184</span>   public UonSerializerBuilder builder() {<a name="line.184"></a>
-<span class="sourceLineNo">185</span>      return new UonSerializerBuilder(propertyStore);<a name="line.185"></a>
-<span class="sourceLineNo">186</span>   }<a name="line.186"></a>
-<span class="sourceLineNo">187</span><a name="line.187"></a>
-<span class="sourceLineNo">188</span><a name="line.188"></a>
-<span class="sourceLineNo">189</span><a name="line.189"></a>
-<span class="sourceLineNo">190</span>   //--------------------------------------------------------------------------------<a name="line.190"></a>
-<span class="sourceLineNo">191</span>   // Entry point methods<a name="line.191"></a>
-<span class="sourceLineNo">192</span>   //--------------------------------------------------------------------------------<a name="line.192"></a>
-<span class="sourceLineNo">193</span><a name="line.193"></a>
-<span class="sourceLineNo">194</span>   @Override /* Serializer */<a name="line.194"></a>
-<span class="sourceLineNo">195</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.195"></a>
-<span class="sourceLineNo">196</span>      return new UonSerializerSession(ctx, null, args);<a name="line.196"></a>
-<span class="sourceLineNo">197</span>   }<a name="line.197"></a>
-<span class="sourceLineNo">198</span>}<a name="line.198"></a>
+<span class="sourceLineNo">171</span>   /**<a name="line.171"></a>
+<span class="sourceLineNo">172</span>    * Constructor.<a name="line.172"></a>
+<span class="sourceLineNo">173</span>    *<a name="line.173"></a>
+<span class="sourceLineNo">174</span>    * @param propertyStore<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    *    The property store containing all the settings for this object.<a name="line.175"></a>
+<span class="sourceLineNo">176</span>    */<a name="line.176"></a>
+<span class="sourceLineNo">177</span>   public UonSerializer(PropertyStore propertyStore) {<a name="line.177"></a>
+<span class="sourceLineNo">178</span>      this(propertyStore, "text/uon");<a name="line.178"></a>
+<span class="sourceLineNo">179</span>   }<a name="line.179"></a>
+<span class="sourceLineNo">180</span><a name="line.180"></a>
+<span class="sourceLineNo">181</span>   /**<a name="line.181"></a>
+<span class="sourceLineNo">182</span>    * Constructor.<a name="line.182"></a>
+<span class="sourceLineNo">183</span>    *<a name="line.183"></a>
+<span class="sourceLineNo">184</span>    * @param propertyStore<a name="line.184"></a>
+<span class="sourceLineNo">185</span>    *    The property store containing all the settings for this object.<a name="line.185"></a>
+<span class="sourceLineNo">186</span>    * @param produces<a name="line.186"></a>
+<span class="sourceLineNo">187</span>    *    The media type that this serializer produces.<a name="line.187"></a>
+<span class="sourceLineNo">188</span>    * @param accept<a name="line.188"></a>
+<span class="sourceLineNo">189</span>    *    The accept media types that the serializer can handle.<a name="line.189"></a>
+<span class="sourceLineNo">190</span>    *    &lt;p&gt;<a name="line.190"></a>
+<span class="sourceLineNo">191</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.191"></a>
+<span class="sourceLineNo">192</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.192"></a>
+<span class="sourceLineNo">193</span>    *    &lt;p&gt;<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    *    &lt;p&gt;<a name="line.195"></a>
+<span class="sourceLineNo">196</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.196"></a>
+<span class="sourceLineNo">197</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.197"></a>
+<span class="sourceLineNo">198</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.198"></a>
+<span class="sourceLineNo">199</span>    *    &lt;br&gt;...or...<a name="line.199"></a>
+<span class="sourceLineNo">200</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    */<a name="line.201"></a>
+<span class="sourceLineNo">202</span>   public UonSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.202"></a>
+<span class="sourceLineNo">203</span>      super(propertyStore, produces, accept);<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      this.ctx = createContext(UonSerializerContext.class);<a name="line.204"></a>
+<span class="sourceLineNo">205</span>   }<a name="line.205"></a>
+<span class="sourceLineNo">206</span><a name="line.206"></a>
+<span class="sourceLineNo">207</span>   @Override /* CoreObject */<a name="line.207"></a>
+<span class="sourceLineNo">208</span>   public UonSerializerBuilder builder() {<a name="line.208"></a>
+<span class="sourceLineNo">209</span>      return new UonSerializerBuilder(propertyStore);<a name="line.209"></a>
+<span class="sourceLineNo">210</span>   }<a name="line.210"></a>
+<span class="sourceLineNo">211</span><a name="line.211"></a>
+<span class="sourceLineNo">212</span><a name="line.212"></a>
+<span class="sourceLineNo">213</span><a name="line.213"></a>
+<span class="sourceLineNo">214</span>   //--------------------------------------------------------------------------------<a name="line.214"></a>
+<span class="sourceLineNo">215</span>   // Entry point methods<a name="line.215"></a>
+<span class="sourceLineNo">216</span>   //--------------------------------------------------------------------------------<a name="line.216"></a>
+<span class="sourceLineNo">217</span><a name="line.217"></a>
+<span class="sourceLineNo">218</span>   @Override /* Serializer */<a name="line.218"></a>
+<span class="sourceLineNo">219</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.219"></a>
+<span class="sourceLineNo">220</span>      return new UonSerializerSession(ctx, null, args);<a name="line.220"></a>
+<span class="sourceLineNo">221</span>   }<a name="line.221"></a>
+<span class="sourceLineNo">222</span>}<a name="line.222"></a>
 
 
 


[11/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.PlainText.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.PlainText.html b/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.PlainText.html
index 4377968..1edde7a 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.PlainText.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.PlainText.html
@@ -29,256 +29,280 @@
 <span class="sourceLineNo">021</span>import java.net.*;<a name="line.21"></a>
 <span class="sourceLineNo">022</span><a name="line.22"></a>
 <span class="sourceLineNo">023</span>import org.apache.juneau.*;<a name="line.23"></a>
-<span class="sourceLineNo">024</span>import org.apache.juneau.annotation.*;<a name="line.24"></a>
-<span class="sourceLineNo">025</span>import org.apache.juneau.serializer.*;<a name="line.25"></a>
-<span class="sourceLineNo">026</span>import org.apache.juneau.uon.*;<a name="line.26"></a>
-<span class="sourceLineNo">027</span><a name="line.27"></a>
-<span class="sourceLineNo">028</span>/**<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * Serializes POJO models to URL-encoded notation with UON-encoded values (a notation for URL-encoded query paramter values).<a name="line.29"></a>
-<span class="sourceLineNo">030</span> *<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;application/x-www-form-urlencoded&lt;/code&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * &lt;p&gt;<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/x-www-form-urlencoded&lt;/code&gt;<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *<a name="line.36"></a>
-<span class="sourceLineNo">037</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *<a name="line.38"></a>
-<span class="sourceLineNo">039</span> * This serializer provides several serialization options.  Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.39"></a>
-<span class="sourceLineNo">040</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *<a name="line.41"></a>
-<span class="sourceLineNo">042</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *<a name="line.43"></a>
-<span class="sourceLineNo">044</span> * This class has the following properties associated with it:<a name="line.44"></a>
-<span class="sourceLineNo">045</span> * &lt;ul&gt;<a name="line.45"></a>
-<span class="sourceLineNo">046</span> *    &lt;li&gt;{@link UonSerializerContext}<a name="line.46"></a>
-<span class="sourceLineNo">047</span> *    &lt;li&gt;{@link BeanContext}<a name="line.47"></a>
-<span class="sourceLineNo">048</span> * &lt;/ul&gt;<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *<a name="line.49"></a>
-<span class="sourceLineNo">050</span> * &lt;p&gt;<a name="line.50"></a>
-<span class="sourceLineNo">051</span> * The following shows a sample object defined in Javascript:<a name="line.51"></a>
-<span class="sourceLineNo">052</span> * &lt;p class='bcode'&gt;<a name="line.52"></a>
-<span class="sourceLineNo">053</span> *    {<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *       id: 1,<a name="line.54"></a>
-<span class="sourceLineNo">055</span> *       name: &lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.55"></a>
-<span class="sourceLineNo">056</span> *       uri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.56"></a>
-<span class="sourceLineNo">057</span> *       addressBookUri: &lt;js&gt;'http://sample/addressBook'&lt;/js&gt;,<a name="line.57"></a>
-<span class="sourceLineNo">058</span> *       birthDate: &lt;js&gt;'1946-08-12T00:00:00Z'&lt;/js&gt;,<a name="line.58"></a>
-<span class="sourceLineNo">059</span> *       otherIds: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.59"></a>
-<span class="sourceLineNo">060</span> *       addresses: [<a name="line.60"></a>
-<span class="sourceLineNo">061</span> *          {<a name="line.61"></a>
-<span class="sourceLineNo">062</span> *             uri: &lt;js&gt;'http://sample/addressBook/address/1'&lt;/js&gt;,<a name="line.62"></a>
-<span class="sourceLineNo">063</span> *             personUri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.63"></a>
-<span class="sourceLineNo">064</span> *             id: 1,<a name="line.64"></a>
-<span class="sourceLineNo">065</span> *             street: &lt;js&gt;'100 Main Street'&lt;/js&gt;,<a name="line.65"></a>
-<span class="sourceLineNo">066</span> *             city: &lt;js&gt;'Anywhereville'&lt;/js&gt;,<a name="line.66"></a>
-<span class="sourceLineNo">067</span> *             state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.67"></a>
-<span class="sourceLineNo">068</span> *             zip: 12345,<a name="line.68"></a>
-<span class="sourceLineNo">069</span> *             isCurrent: &lt;jk&gt;true&lt;/jk&gt;,<a name="line.69"></a>
-<span class="sourceLineNo">070</span> *          }<a name="line.70"></a>
-<span class="sourceLineNo">071</span> *       ]<a name="line.71"></a>
-<span class="sourceLineNo">072</span> *    }<a name="line.72"></a>
-<span class="sourceLineNo">073</span> * &lt;/p&gt;<a name="line.73"></a>
-<span class="sourceLineNo">074</span> *<a name="line.74"></a>
-<span class="sourceLineNo">075</span> * &lt;p&gt;<a name="line.75"></a>
-<span class="sourceLineNo">076</span> * Using the "strict" syntax defined in this document, the equivalent URL-encoded notation would be as follows:<a name="line.76"></a>
-<span class="sourceLineNo">077</span> * &lt;p class='bcode'&gt;<a name="line.77"></a>
-<span class="sourceLineNo">078</span> *    &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;<a name="line.78"></a>
-<span class="sourceLineNo">079</span> *    &amp;amp;&lt;ua&gt;name&lt;/ua&gt;=&lt;us&gt;'John+Smith'&lt;/us&gt;,<a name="line.79"></a>
-<span class="sourceLineNo">080</span> *    &amp;amp;&lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *    &amp;amp;&lt;ua&gt;addressBookUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook&lt;/us&gt;,<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *    &amp;amp;&lt;ua&gt;birthDate&lt;/ua&gt;=&lt;us&gt;1946-08-12T00:00:00Z&lt;/us&gt;,<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *    &amp;amp;&lt;ua&gt;otherIds&lt;/ua&gt;=&lt;uk&gt;null&lt;/uk&gt;,<a name="line.83"></a>
-<span class="sourceLineNo">084</span> *    &amp;amp;&lt;ua&gt;addresses&lt;/ua&gt;=@(<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *       (<a name="line.85"></a>
-<span class="sourceLineNo">086</span> *          &lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/address/1&lt;/us&gt;,<a name="line.86"></a>
-<span class="sourceLineNo">087</span> *          &lt;ua&gt;personUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *          &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;,<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *          &lt;ua&gt;street&lt;/ua&gt;=&lt;us&gt;'100+Main+Street'&lt;/us&gt;,<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *          &lt;ua&gt;city&lt;/ua&gt;=&lt;us&gt;Anywhereville&lt;/us&gt;,<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *          &lt;ua&gt;state&lt;/ua&gt;=&lt;us&gt;NY&lt;/us&gt;,<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *          &lt;ua&gt;zip&lt;/ua&gt;=&lt;un&gt;12345&lt;/un&gt;,<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *          &lt;ua&gt;isCurrent&lt;/ua&gt;=&lt;uk&gt;true&lt;/uk&gt;<a name="line.93"></a>
-<span class="sourceLineNo">094</span> *       )<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *    )<a name="line.95"></a>
-<span class="sourceLineNo">096</span> * &lt;/p&gt;<a name="line.96"></a>
-<span class="sourceLineNo">097</span> *<a name="line.97"></a>
-<span class="sourceLineNo">098</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.98"></a>
-<span class="sourceLineNo">099</span> * &lt;p class='bcode'&gt;<a name="line.99"></a>
-<span class="sourceLineNo">100</span> *    &lt;jc&gt;// Serialize a Map&lt;/jc&gt;<a name="line.100"></a>
-<span class="sourceLineNo">101</span> *    Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{a:'b',c:1,d:false,e:['f',1,false],g:{h:'i'}}"&lt;/js&gt;);<a name="line.101"></a>
-<span class="sourceLineNo">102</span> *<a name="line.102"></a>
-<span class="sourceLineNo">103</span> *    &lt;jc&gt;// Serialize to value equivalent to JSON.&lt;/jc&gt;<a name="line.103"></a>
-<span class="sourceLineNo">104</span> *    &lt;jc&gt;// Produces "a=b&amp;amp;c=1&amp;amp;d=false&amp;amp;e=@(f,1,false)&amp;amp;g=(h=i)"&lt;/jc&gt;<a name="line.104"></a>
-<span class="sourceLineNo">105</span> *    String s = UrlEncodingSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.105"></a>
-<span class="sourceLineNo">106</span> *<a name="line.106"></a>
-<span class="sourceLineNo">107</span> *    &lt;jc&gt;// Serialize a bean&lt;/jc&gt;<a name="line.107"></a>
-<span class="sourceLineNo">108</span> *    &lt;jk&gt;public class&lt;/jk&gt; Person {<a name="line.108"></a>
-<span class="sourceLineNo">109</span> *       &lt;jk&gt;public&lt;/jk&gt; Person(String s);<a name="line.109"></a>
-<span class="sourceLineNo">110</span> *       &lt;jk&gt;public&lt;/jk&gt; String getName();<a name="line.110"></a>
-<span class="sourceLineNo">111</span> *       &lt;jk&gt;public int&lt;/jk&gt; getAge();<a name="line.111"></a>
-<span class="sourceLineNo">112</span> *       &lt;jk&gt;public&lt;/jk&gt; Address getAddress();<a name="line.112"></a>
-<span class="sourceLineNo">113</span> *       &lt;jk&gt;public boolean&lt;/jk&gt; deceased;<a name="line.113"></a>
-<span class="sourceLineNo">114</span> *    }<a name="line.114"></a>
-<span class="sourceLineNo">115</span> *<a name="line.115"></a>
-<span class="sourceLineNo">116</span> *    &lt;jk&gt;public class&lt;/jk&gt; Address {<a name="line.116"></a>
-<span class="sourceLineNo">117</span> *       &lt;jk&gt;public&lt;/jk&gt; String getStreet();<a name="line.117"></a>
-<span class="sourceLineNo">118</span> *       &lt;jk&gt;public&lt;/jk&gt; String getCity();<a name="line.118"></a>
-<span class="sourceLineNo">119</span> *       &lt;jk&gt;public&lt;/jk&gt; String getState();<a name="line.119"></a>
-<span class="sourceLineNo">120</span> *       &lt;jk&gt;public int&lt;/jk&gt; getZip();<a name="line.120"></a>
-<span class="sourceLineNo">121</span> *    }<a name="line.121"></a>
-<span class="sourceLineNo">122</span> *<a name="line.122"></a>
-<span class="sourceLineNo">123</span> *    Person p = &lt;jk&gt;new&lt;/jk&gt; Person(&lt;js&gt;"John Doe"&lt;/js&gt;, 23, &lt;js&gt;"123 Main St"&lt;/js&gt;, &lt;js&gt;"Anywhere"&lt;/js&gt;, &lt;js&gt;"NY"&lt;/js&gt;, 12345, &lt;jk&gt;false&lt;/jk&gt;);<a name="line.123"></a>
-<span class="sourceLineNo">124</span> *<a name="line.124"></a>
-<span class="sourceLineNo">125</span> *    &lt;jc&gt;// Produces "name=John+Doe&amp;amp;age=23&amp;amp;address=(street='123+Main+St',city=Anywhere,state=NY,zip=12345)&amp;amp;deceased=false"&lt;/jc&gt;<a name="line.125"></a>
-<span class="sourceLineNo">126</span> *    String s = UrlEncodingSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.126"></a>
-<span class="sourceLineNo">127</span> * &lt;/p&gt;<a name="line.127"></a>
-<span class="sourceLineNo">128</span> */<a name="line.128"></a>
-<span class="sourceLineNo">129</span>@Produces("application/x-www-form-urlencoded")<a name="line.129"></a>
-<span class="sourceLineNo">130</span>@SuppressWarnings("hiding")<a name="line.130"></a>
-<span class="sourceLineNo">131</span>public class UrlEncodingSerializer extends UonSerializer implements PartSerializer {<a name="line.131"></a>
-<span class="sourceLineNo">132</span><a name="line.132"></a>
-<span class="sourceLineNo">133</span>   /** Reusable instance of {@link UrlEncodingSerializer}, all default settings. */<a name="line.133"></a>
-<span class="sourceLineNo">134</span>   public static final UrlEncodingSerializer DEFAULT = new UrlEncodingSerializer(PropertyStore.create());<a name="line.134"></a>
-<span class="sourceLineNo">135</span><a name="line.135"></a>
-<span class="sourceLineNo">136</span>   /** Reusable instance of {@link UrlEncodingSerializer.PlainText}. */<a name="line.136"></a>
-<span class="sourceLineNo">137</span>   public static final UrlEncodingSerializer DEFAULT_PLAINTEXT = new PlainText(PropertyStore.create());<a name="line.137"></a>
-<span class="sourceLineNo">138</span><a name="line.138"></a>
-<span class="sourceLineNo">139</span>   /** Reusable instance of {@link UrlEncodingSerializer.Expanded}. */<a name="line.139"></a>
-<span class="sourceLineNo">140</span>   public static final UrlEncodingSerializer DEFAULT_EXPANDED = new Expanded(PropertyStore.create());<a name="line.140"></a>
-<span class="sourceLineNo">141</span><a name="line.141"></a>
-<span class="sourceLineNo">142</span>   /** Reusable instance of {@link UrlEncodingSerializer.Readable}. */<a name="line.142"></a>
-<span class="sourceLineNo">143</span>   public static final UrlEncodingSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.143"></a>
-<span class="sourceLineNo">144</span><a name="line.144"></a>
-<span class="sourceLineNo">145</span>   /**<a name="line.145"></a>
-<span class="sourceLineNo">146</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().expandedParams(&lt;jk&gt;true&lt;/jk&gt;).build();&lt;/code&gt;.<a name="line.146"></a>
-<span class="sourceLineNo">147</span>    */<a name="line.147"></a>
-<span class="sourceLineNo">148</span>   @Produces(value="application/x-www-form-urlencoded",contentType="application/x-www-form-urlencoded")<a name="line.148"></a>
-<span class="sourceLineNo">149</span>   public static class Expanded extends UrlEncodingSerializer {<a name="line.149"></a>
-<span class="sourceLineNo">150</span><a name="line.150"></a>
-<span class="sourceLineNo">151</span>      /**<a name="line.151"></a>
-<span class="sourceLineNo">152</span>       * Constructor.<a name="line.152"></a>
-<span class="sourceLineNo">153</span>       *<a name="line.153"></a>
-<span class="sourceLineNo">154</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.154"></a>
-<span class="sourceLineNo">155</span>       */<a name="line.155"></a>
-<span class="sourceLineNo">156</span>      public Expanded(PropertyStore propertyStore) {<a name="line.156"></a>
-<span class="sourceLineNo">157</span>         super(propertyStore.copy().append(URLENC_expandedParams, true));<a name="line.157"></a>
-<span class="sourceLineNo">158</span>      }<a name="line.158"></a>
-<span class="sourceLineNo">159</span>   }<a name="line.159"></a>
-<span class="sourceLineNo">160</span><a name="line.160"></a>
-<span class="sourceLineNo">161</span>   /**<a name="line.161"></a>
-<span class="sourceLineNo">162</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().useWhitespace(&lt;jk&gt;true&lt;/jk&gt;).build();&lt;/code&gt;.<a name="line.162"></a>
-<span class="sourceLineNo">163</span>    */<a name="line.163"></a>
-<span class="sourceLineNo">164</span>   public static class Readable extends UrlEncodingSerializer {<a name="line.164"></a>
-<span class="sourceLineNo">165</span><a name="line.165"></a>
-<span class="sourceLineNo">166</span>      /**<a name="line.166"></a>
-<span class="sourceLineNo">167</span>       * Constructor.<a name="line.167"></a>
-<span class="sourceLineNo">168</span>       *<a name="line.168"></a>
-<span class="sourceLineNo">169</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.169"></a>
-<span class="sourceLineNo">170</span>       */<a name="line.170"></a>
-<span class="sourceLineNo">171</span>      public Readable(PropertyStore propertyStore) {<a name="line.171"></a>
-<span class="sourceLineNo">172</span>         super(propertyStore.copy().append(SERIALIZER_useWhitespace, true));<a name="line.172"></a>
-<span class="sourceLineNo">173</span>      }<a name="line.173"></a>
-<span class="sourceLineNo">174</span>   }<a name="line.174"></a>
-<span class="sourceLineNo">175</span><a name="line.175"></a>
-<span class="sourceLineNo">176</span>   /**<a name="line.176"></a>
-<span class="sourceLineNo">177</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().plainTextParts().build();&lt;/code&gt;.<a name="line.177"></a>
-<span class="sourceLineNo">178</span>    */<a name="line.178"></a>
-<span class="sourceLineNo">179</span>   public static class PlainText extends UrlEncodingSerializer {<a name="line.179"></a>
-<span class="sourceLineNo">180</span><a name="line.180"></a>
-<span class="sourceLineNo">181</span>      /**<a name="line.181"></a>
-<span class="sourceLineNo">182</span>       * Constructor.<a name="line.182"></a>
-<span class="sourceLineNo">183</span>       *<a name="line.183"></a>
-<span class="sourceLineNo">184</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.184"></a>
-<span class="sourceLineNo">185</span>       */<a name="line.185"></a>
-<span class="sourceLineNo">186</span>      public PlainText(PropertyStore propertyStore) {<a name="line.186"></a>
-<span class="sourceLineNo">187</span>         super(propertyStore.copy().append(UON_paramFormat, "PLAINTEXT"));<a name="line.187"></a>
-<span class="sourceLineNo">188</span>      }<a name="line.188"></a>
-<span class="sourceLineNo">189</span>   }<a name="line.189"></a>
-<span class="sourceLineNo">190</span><a name="line.190"></a>
-<span class="sourceLineNo">191</span>   private final UrlEncodingSerializerContext ctx;<a name="line.191"></a>
-<span class="sourceLineNo">192</span><a name="line.192"></a>
-<span class="sourceLineNo">193</span>   /**<a name="line.193"></a>
-<span class="sourceLineNo">194</span>    * Constructor.<a name="line.194"></a>
-<span class="sourceLineNo">195</span>    *<a name="line.195"></a>
-<span class="sourceLineNo">196</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.196"></a>
-<span class="sourceLineNo">197</span>    */<a name="line.197"></a>
-<span class="sourceLineNo">198</span>   public UrlEncodingSerializer(PropertyStore propertyStore) {<a name="line.198"></a>
-<span class="sourceLineNo">199</span>      super(propertyStore.copy().append(UON_encodeChars, true));<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      this.ctx = createContext(UrlEncodingSerializerContext.class);<a name="line.200"></a>
-<span class="sourceLineNo">201</span>   }<a name="line.201"></a>
-<span class="sourceLineNo">202</span><a name="line.202"></a>
-<span class="sourceLineNo">203</span>   @Override /* CoreObject */<a name="line.203"></a>
-<span class="sourceLineNo">204</span>   public UrlEncodingSerializerBuilder builder() {<a name="line.204"></a>
-<span class="sourceLineNo">205</span>      return new UrlEncodingSerializerBuilder(propertyStore);<a name="line.205"></a>
-<span class="sourceLineNo">206</span>   }<a name="line.206"></a>
-<span class="sourceLineNo">207</span><a name="line.207"></a>
-<span class="sourceLineNo">208</span><a name="line.208"></a>
-<span class="sourceLineNo">209</span>   //--------------------------------------------------------------------------------<a name="line.209"></a>
-<span class="sourceLineNo">210</span>   // Methods for constructing individual parameter values.<a name="line.210"></a>
-<span class="sourceLineNo">211</span>   //--------------------------------------------------------------------------------<a name="line.211"></a>
-<span class="sourceLineNo">212</span><a name="line.212"></a>
-<span class="sourceLineNo">213</span>   /**<a name="line.213"></a>
-<span class="sourceLineNo">214</span>    * Converts the specified object to a string using this serializers {@link BeanSession#convertToType(Object, Class)}<a name="line.214"></a>
-<span class="sourceLineNo">215</span>    * method and runs {@link URLEncoder#encode(String,String)} against the results.<a name="line.215"></a>
-<span class="sourceLineNo">216</span>    *<a name="line.216"></a>
-<span class="sourceLineNo">217</span>    * &lt;p&gt;<a name="line.217"></a>
-<span class="sourceLineNo">218</span>    * Useful for constructing URL parts.<a name="line.218"></a>
-<span class="sourceLineNo">219</span>    *<a name="line.219"></a>
-<span class="sourceLineNo">220</span>    * @param o The object to serialize.<a name="line.220"></a>
-<span class="sourceLineNo">221</span>    * @param urlEncode<a name="line.221"></a>
-<span class="sourceLineNo">222</span>    *    URL-encode the string if necessary.<a name="line.222"></a>
-<span class="sourceLineNo">223</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then uses the value of the {@link UonSerializerContext#UON_encodeChars} setting.<a name="line.223"></a>
-<span class="sourceLineNo">224</span>    * @param plainTextParams<a name="line.224"></a>
-<span class="sourceLineNo">225</span>    *    Whether we're using plain-text params.<a name="line.225"></a>
-<span class="sourceLineNo">226</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then uses the value from the {@link UrlEncodingSerializerContext#URLENC_paramFormat} setting.<a name="line.226"></a>
-<span class="sourceLineNo">227</span>    * @return The serialized object.<a name="line.227"></a>
-<span class="sourceLineNo">228</span>    */<a name="line.228"></a>
-<span class="sourceLineNo">229</span>   private String serializePart(Object o, Boolean urlEncode, Boolean plainTextParams) {<a name="line.229"></a>
-<span class="sourceLineNo">230</span>      try {<a name="line.230"></a>
-<span class="sourceLineNo">231</span>         // Shortcut for simple types.<a name="line.231"></a>
-<span class="sourceLineNo">232</span>         ClassMeta&lt;?&gt; cm = getBeanContext().getClassMetaForObject(o);<a name="line.232"></a>
-<span class="sourceLineNo">233</span>         if (cm != null) {<a name="line.233"></a>
-<span class="sourceLineNo">234</span>            if (cm.isNumber() || cm.isBoolean())<a name="line.234"></a>
-<span class="sourceLineNo">235</span>               return o.toString();<a name="line.235"></a>
-<span class="sourceLineNo">236</span>            if (cm.isCharSequence()) {<a name="line.236"></a>
-<span class="sourceLineNo">237</span>               String s = o.toString();<a name="line.237"></a>
-<span class="sourceLineNo">238</span>               boolean ptt = (plainTextParams != null ? plainTextParams : ctx.plainTextParams());<a name="line.238"></a>
-<span class="sourceLineNo">239</span>               if (ptt || s.isEmpty() || ! UonUtils.needsQuotes(s))<a name="line.239"></a>
-<span class="sourceLineNo">240</span>                  return (urlEncode ? urlEncode(s) : s);<a name="line.240"></a>
-<span class="sourceLineNo">241</span>            }<a name="line.241"></a>
-<span class="sourceLineNo">242</span>         }<a name="line.242"></a>
-<span class="sourceLineNo">243</span><a name="line.243"></a>
-<span class="sourceLineNo">244</span>         StringWriter w = new StringWriter();<a name="line.244"></a>
-<span class="sourceLineNo">245</span>         UonSerializerSession s = new UonSerializerSession(ctx, urlEncode, SerializerSessionArgs.DEFAULT);<a name="line.245"></a>
-<span class="sourceLineNo">246</span>         s.serialize(w, o);<a name="line.246"></a>
-<span class="sourceLineNo">247</span>         return w.toString();<a name="line.247"></a>
-<span class="sourceLineNo">248</span>      } catch (Exception e) {<a name="line.248"></a>
-<span class="sourceLineNo">249</span>         throw new RuntimeException(e);<a name="line.249"></a>
-<span class="sourceLineNo">250</span>      }<a name="line.250"></a>
-<span class="sourceLineNo">251</span>   }<a name="line.251"></a>
-<span class="sourceLineNo">252</span><a name="line.252"></a>
-<span class="sourceLineNo">253</span><a name="line.253"></a>
-<span class="sourceLineNo">254</span>   //--------------------------------------------------------------------------------<a name="line.254"></a>
-<span class="sourceLineNo">255</span>   // Entry point methods<a name="line.255"></a>
-<span class="sourceLineNo">256</span>   //--------------------------------------------------------------------------------<a name="line.256"></a>
-<span class="sourceLineNo">257</span><a name="line.257"></a>
-<span class="sourceLineNo">258</span>   @Override /* Serializer */<a name="line.258"></a>
-<span class="sourceLineNo">259</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.259"></a>
-<span class="sourceLineNo">260</span>      return new UrlEncodingSerializerSession(ctx, null, args);<a name="line.260"></a>
-<span class="sourceLineNo">261</span>   }<a name="line.261"></a>
-<span class="sourceLineNo">262</span><a name="line.262"></a>
-<span class="sourceLineNo">263</span>   @Override /* PartSerializer */<a name="line.263"></a>
-<span class="sourceLineNo">264</span>   public String serialize(PartType type, Object value) {<a name="line.264"></a>
-<span class="sourceLineNo">265</span>      switch(type) {<a name="line.265"></a>
-<span class="sourceLineNo">266</span>         case HEADER: return serializePart(value, false, true);<a name="line.266"></a>
-<span class="sourceLineNo">267</span>         case FORM_DATA: return serializePart(value, false, null);<a name="line.267"></a>
-<span class="sourceLineNo">268</span>         case PATH: return serializePart(value, false, null);<a name="line.268"></a>
-<span class="sourceLineNo">269</span>         case QUERY: return serializePart(value, false, null);<a name="line.269"></a>
-<span class="sourceLineNo">270</span>         default: return toString(value);<a name="line.270"></a>
-<span class="sourceLineNo">271</span>      }<a name="line.271"></a>
-<span class="sourceLineNo">272</span>   }<a name="line.272"></a>
-<span class="sourceLineNo">273</span>}<a name="line.273"></a>
+<span class="sourceLineNo">024</span>import org.apache.juneau.serializer.*;<a name="line.24"></a>
+<span class="sourceLineNo">025</span>import org.apache.juneau.uon.*;<a name="line.25"></a>
+<span class="sourceLineNo">026</span><a name="line.26"></a>
+<span class="sourceLineNo">027</span>/**<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * Serializes POJO models to URL-encoded notation with UON-encoded values (a notation for URL-encoded query paramter values).<a name="line.28"></a>
+<span class="sourceLineNo">029</span> *<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;application/x-www-form-urlencoded&lt;/code&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * &lt;p&gt;<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/x-www-form-urlencoded&lt;/code&gt;<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *<a name="line.35"></a>
+<span class="sourceLineNo">036</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * This serializer provides several serialization options.  Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.38"></a>
+<span class="sourceLineNo">039</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *<a name="line.40"></a>
+<span class="sourceLineNo">041</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *<a name="line.42"></a>
+<span class="sourceLineNo">043</span> * This class has the following properties associated with it:<a name="line.43"></a>
+<span class="sourceLineNo">044</span> * &lt;ul&gt;<a name="line.44"></a>
+<span class="sourceLineNo">045</span> *    &lt;li&gt;{@link UonSerializerContext}<a name="line.45"></a>
+<span class="sourceLineNo">046</span> *    &lt;li&gt;{@link BeanContext}<a name="line.46"></a>
+<span class="sourceLineNo">047</span> * &lt;/ul&gt;<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *<a name="line.48"></a>
+<span class="sourceLineNo">049</span> * &lt;p&gt;<a name="line.49"></a>
+<span class="sourceLineNo">050</span> * The following shows a sample object defined in Javascript:<a name="line.50"></a>
+<span class="sourceLineNo">051</span> * &lt;p class='bcode'&gt;<a name="line.51"></a>
+<span class="sourceLineNo">052</span> *    {<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *       id: 1,<a name="line.53"></a>
+<span class="sourceLineNo">054</span> *       name: &lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.54"></a>
+<span class="sourceLineNo">055</span> *       uri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.55"></a>
+<span class="sourceLineNo">056</span> *       addressBookUri: &lt;js&gt;'http://sample/addressBook'&lt;/js&gt;,<a name="line.56"></a>
+<span class="sourceLineNo">057</span> *       birthDate: &lt;js&gt;'1946-08-12T00:00:00Z'&lt;/js&gt;,<a name="line.57"></a>
+<span class="sourceLineNo">058</span> *       otherIds: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.58"></a>
+<span class="sourceLineNo">059</span> *       addresses: [<a name="line.59"></a>
+<span class="sourceLineNo">060</span> *          {<a name="line.60"></a>
+<span class="sourceLineNo">061</span> *             uri: &lt;js&gt;'http://sample/addressBook/address/1'&lt;/js&gt;,<a name="line.61"></a>
+<span class="sourceLineNo">062</span> *             personUri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.62"></a>
+<span class="sourceLineNo">063</span> *             id: 1,<a name="line.63"></a>
+<span class="sourceLineNo">064</span> *             street: &lt;js&gt;'100 Main Street'&lt;/js&gt;,<a name="line.64"></a>
+<span class="sourceLineNo">065</span> *             city: &lt;js&gt;'Anywhereville'&lt;/js&gt;,<a name="line.65"></a>
+<span class="sourceLineNo">066</span> *             state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.66"></a>
+<span class="sourceLineNo">067</span> *             zip: 12345,<a name="line.67"></a>
+<span class="sourceLineNo">068</span> *             isCurrent: &lt;jk&gt;true&lt;/jk&gt;,<a name="line.68"></a>
+<span class="sourceLineNo">069</span> *          }<a name="line.69"></a>
+<span class="sourceLineNo">070</span> *       ]<a name="line.70"></a>
+<span class="sourceLineNo">071</span> *    }<a name="line.71"></a>
+<span class="sourceLineNo">072</span> * &lt;/p&gt;<a name="line.72"></a>
+<span class="sourceLineNo">073</span> *<a name="line.73"></a>
+<span class="sourceLineNo">074</span> * &lt;p&gt;<a name="line.74"></a>
+<span class="sourceLineNo">075</span> * Using the "strict" syntax defined in this document, the equivalent URL-encoded notation would be as follows:<a name="line.75"></a>
+<span class="sourceLineNo">076</span> * &lt;p class='bcode'&gt;<a name="line.76"></a>
+<span class="sourceLineNo">077</span> *    &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;<a name="line.77"></a>
+<span class="sourceLineNo">078</span> *    &amp;amp;&lt;ua&gt;name&lt;/ua&gt;=&lt;us&gt;'John+Smith'&lt;/us&gt;,<a name="line.78"></a>
+<span class="sourceLineNo">079</span> *    &amp;amp;&lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *    &amp;amp;&lt;ua&gt;addressBookUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook&lt;/us&gt;,<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *    &amp;amp;&lt;ua&gt;birthDate&lt;/ua&gt;=&lt;us&gt;1946-08-12T00:00:00Z&lt;/us&gt;,<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *    &amp;amp;&lt;ua&gt;otherIds&lt;/ua&gt;=&lt;uk&gt;null&lt;/uk&gt;,<a name="line.82"></a>
+<span class="sourceLineNo">083</span> *    &amp;amp;&lt;ua&gt;addresses&lt;/ua&gt;=@(<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *       (<a name="line.84"></a>
+<span class="sourceLineNo">085</span> *          &lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/address/1&lt;/us&gt;,<a name="line.85"></a>
+<span class="sourceLineNo">086</span> *          &lt;ua&gt;personUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *          &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;,<a name="line.87"></a>
+<span class="sourceLineNo">088</span> *          &lt;ua&gt;street&lt;/ua&gt;=&lt;us&gt;'100+Main+Street'&lt;/us&gt;,<a name="line.88"></a>
+<span class="sourceLineNo">089</span> *          &lt;ua&gt;city&lt;/ua&gt;=&lt;us&gt;Anywhereville&lt;/us&gt;,<a name="line.89"></a>
+<span class="sourceLineNo">090</span> *          &lt;ua&gt;state&lt;/ua&gt;=&lt;us&gt;NY&lt;/us&gt;,<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *          &lt;ua&gt;zip&lt;/ua&gt;=&lt;un&gt;12345&lt;/un&gt;,<a name="line.91"></a>
+<span class="sourceLineNo">092</span> *          &lt;ua&gt;isCurrent&lt;/ua&gt;=&lt;uk&gt;true&lt;/uk&gt;<a name="line.92"></a>
+<span class="sourceLineNo">093</span> *       )<a name="line.93"></a>
+<span class="sourceLineNo">094</span> *    )<a name="line.94"></a>
+<span class="sourceLineNo">095</span> * &lt;/p&gt;<a name="line.95"></a>
+<span class="sourceLineNo">096</span> *<a name="line.96"></a>
+<span class="sourceLineNo">097</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.97"></a>
+<span class="sourceLineNo">098</span> * &lt;p class='bcode'&gt;<a name="line.98"></a>
+<span class="sourceLineNo">099</span> *    &lt;jc&gt;// Serialize a Map&lt;/jc&gt;<a name="line.99"></a>
+<span class="sourceLineNo">100</span> *    Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{a:'b',c:1,d:false,e:['f',1,false],g:{h:'i'}}"&lt;/js&gt;);<a name="line.100"></a>
+<span class="sourceLineNo">101</span> *<a name="line.101"></a>
+<span class="sourceLineNo">102</span> *    &lt;jc&gt;// Serialize to value equivalent to JSON.&lt;/jc&gt;<a name="line.102"></a>
+<span class="sourceLineNo">103</span> *    &lt;jc&gt;// Produces "a=b&amp;amp;c=1&amp;amp;d=false&amp;amp;e=@(f,1,false)&amp;amp;g=(h=i)"&lt;/jc&gt;<a name="line.103"></a>
+<span class="sourceLineNo">104</span> *    String s = UrlEncodingSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.104"></a>
+<span class="sourceLineNo">105</span> *<a name="line.105"></a>
+<span class="sourceLineNo">106</span> *    &lt;jc&gt;// Serialize a bean&lt;/jc&gt;<a name="line.106"></a>
+<span class="sourceLineNo">107</span> *    &lt;jk&gt;public class&lt;/jk&gt; Person {<a name="line.107"></a>
+<span class="sourceLineNo">108</span> *       &lt;jk&gt;public&lt;/jk&gt; Person(String s);<a name="line.108"></a>
+<span class="sourceLineNo">109</span> *       &lt;jk&gt;public&lt;/jk&gt; String getName();<a name="line.109"></a>
+<span class="sourceLineNo">110</span> *       &lt;jk&gt;public int&lt;/jk&gt; getAge();<a name="line.110"></a>
+<span class="sourceLineNo">111</span> *       &lt;jk&gt;public&lt;/jk&gt; Address getAddress();<a name="line.111"></a>
+<span class="sourceLineNo">112</span> *       &lt;jk&gt;public boolean&lt;/jk&gt; deceased;<a name="line.112"></a>
+<span class="sourceLineNo">113</span> *    }<a name="line.113"></a>
+<span class="sourceLineNo">114</span> *<a name="line.114"></a>
+<span class="sourceLineNo">115</span> *    &lt;jk&gt;public class&lt;/jk&gt; Address {<a name="line.115"></a>
+<span class="sourceLineNo">116</span> *       &lt;jk&gt;public&lt;/jk&gt; String getStreet();<a name="line.116"></a>
+<span class="sourceLineNo">117</span> *       &lt;jk&gt;public&lt;/jk&gt; String getCity();<a name="line.117"></a>
+<span class="sourceLineNo">118</span> *       &lt;jk&gt;public&lt;/jk&gt; String getState();<a name="line.118"></a>
+<span class="sourceLineNo">119</span> *       &lt;jk&gt;public int&lt;/jk&gt; getZip();<a name="line.119"></a>
+<span class="sourceLineNo">120</span> *    }<a name="line.120"></a>
+<span class="sourceLineNo">121</span> *<a name="line.121"></a>
+<span class="sourceLineNo">122</span> *    Person p = &lt;jk&gt;new&lt;/jk&gt; Person(&lt;js&gt;"John Doe"&lt;/js&gt;, 23, &lt;js&gt;"123 Main St"&lt;/js&gt;, &lt;js&gt;"Anywhere"&lt;/js&gt;, &lt;js&gt;"NY"&lt;/js&gt;, 12345, &lt;jk&gt;false&lt;/jk&gt;);<a name="line.122"></a>
+<span class="sourceLineNo">123</span> *<a name="line.123"></a>
+<span class="sourceLineNo">124</span> *    &lt;jc&gt;// Produces "name=John+Doe&amp;amp;age=23&amp;amp;address=(street='123+Main+St',city=Anywhere,state=NY,zip=12345)&amp;amp;deceased=false"&lt;/jc&gt;<a name="line.124"></a>
+<span class="sourceLineNo">125</span> *    String s = UrlEncodingSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.125"></a>
+<span class="sourceLineNo">126</span> * &lt;/p&gt;<a name="line.126"></a>
+<span class="sourceLineNo">127</span> */<a name="line.127"></a>
+<span class="sourceLineNo">128</span>@SuppressWarnings("hiding")<a name="line.128"></a>
+<span class="sourceLineNo">129</span>public class UrlEncodingSerializer extends UonSerializer implements PartSerializer {<a name="line.129"></a>
+<span class="sourceLineNo">130</span><a name="line.130"></a>
+<span class="sourceLineNo">131</span>   /** Reusable instance of {@link UrlEncodingSerializer}, all default settings. */<a name="line.131"></a>
+<span class="sourceLineNo">132</span>   public static final UrlEncodingSerializer DEFAULT = new UrlEncodingSerializer(PropertyStore.create());<a name="line.132"></a>
+<span class="sourceLineNo">133</span><a name="line.133"></a>
+<span class="sourceLineNo">134</span>   /** Reusable instance of {@link UrlEncodingSerializer.PlainText}. */<a name="line.134"></a>
+<span class="sourceLineNo">135</span>   public static final UrlEncodingSerializer DEFAULT_PLAINTEXT = new PlainText(PropertyStore.create());<a name="line.135"></a>
+<span class="sourceLineNo">136</span><a name="line.136"></a>
+<span class="sourceLineNo">137</span>   /** Reusable instance of {@link UrlEncodingSerializer.Expanded}. */<a name="line.137"></a>
+<span class="sourceLineNo">138</span>   public static final UrlEncodingSerializer DEFAULT_EXPANDED = new Expanded(PropertyStore.create());<a name="line.138"></a>
+<span class="sourceLineNo">139</span><a name="line.139"></a>
+<span class="sourceLineNo">140</span>   /** Reusable instance of {@link UrlEncodingSerializer.Readable}. */<a name="line.140"></a>
+<span class="sourceLineNo">141</span>   public static final UrlEncodingSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.141"></a>
+<span class="sourceLineNo">142</span><a name="line.142"></a>
+<span class="sourceLineNo">143</span>   /**<a name="line.143"></a>
+<span class="sourceLineNo">144</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().expandedParams(&lt;jk&gt;true&lt;/jk&gt;).build();&lt;/code&gt;.<a name="line.144"></a>
+<span class="sourceLineNo">145</span>    */<a name="line.145"></a>
+<span class="sourceLineNo">146</span>   public static class Expanded extends UrlEncodingSerializer {<a name="line.146"></a>
+<span class="sourceLineNo">147</span><a name="line.147"></a>
+<span class="sourceLineNo">148</span>      /**<a name="line.148"></a>
+<span class="sourceLineNo">149</span>       * Constructor.<a name="line.149"></a>
+<span class="sourceLineNo">150</span>       *<a name="line.150"></a>
+<span class="sourceLineNo">151</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.151"></a>
+<span class="sourceLineNo">152</span>       */<a name="line.152"></a>
+<span class="sourceLineNo">153</span>      public Expanded(PropertyStore propertyStore) {<a name="line.153"></a>
+<span class="sourceLineNo">154</span>         super(propertyStore.copy().append(URLENC_expandedParams, true));<a name="line.154"></a>
+<span class="sourceLineNo">155</span>      }<a name="line.155"></a>
+<span class="sourceLineNo">156</span>   }<a name="line.156"></a>
+<span class="sourceLineNo">157</span><a name="line.157"></a>
+<span class="sourceLineNo">158</span>   /**<a name="line.158"></a>
+<span class="sourceLineNo">159</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().useWhitespace(&lt;jk&gt;true&lt;/jk&gt;).build();&lt;/code&gt;.<a name="line.159"></a>
+<span class="sourceLineNo">160</span>    */<a name="line.160"></a>
+<span class="sourceLineNo">161</span>   public static class Readable extends UrlEncodingSerializer {<a name="line.161"></a>
+<span class="sourceLineNo">162</span><a name="line.162"></a>
+<span class="sourceLineNo">163</span>      /**<a name="line.163"></a>
+<span class="sourceLineNo">164</span>       * Constructor.<a name="line.164"></a>
+<span class="sourceLineNo">165</span>       *<a name="line.165"></a>
+<span class="sourceLineNo">166</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.166"></a>
+<span class="sourceLineNo">167</span>       */<a name="line.167"></a>
+<span class="sourceLineNo">168</span>      public Readable(PropertyStore propertyStore) {<a name="line.168"></a>
+<span class="sourceLineNo">169</span>         super(propertyStore.copy().append(SERIALIZER_useWhitespace, true));<a name="line.169"></a>
+<span class="sourceLineNo">170</span>      }<a name="line.170"></a>
+<span class="sourceLineNo">171</span>   }<a name="line.171"></a>
+<span class="sourceLineNo">172</span><a name="line.172"></a>
+<span class="sourceLineNo">173</span>   /**<a name="line.173"></a>
+<span class="sourceLineNo">174</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().plainTextParts().build();&lt;/code&gt;.<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    */<a name="line.175"></a>
+<span class="sourceLineNo">176</span>   public static class PlainText extends UrlEncodingSerializer {<a name="line.176"></a>
+<span class="sourceLineNo">177</span><a name="line.177"></a>
+<span class="sourceLineNo">178</span>      /**<a name="line.178"></a>
+<span class="sourceLineNo">179</span>       * Constructor.<a name="line.179"></a>
+<span class="sourceLineNo">180</span>       *<a name="line.180"></a>
+<span class="sourceLineNo">181</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.181"></a>
+<span class="sourceLineNo">182</span>       */<a name="line.182"></a>
+<span class="sourceLineNo">183</span>      public PlainText(PropertyStore propertyStore) {<a name="line.183"></a>
+<span class="sourceLineNo">184</span>         super(propertyStore.copy().append(UON_paramFormat, "PLAINTEXT"));<a name="line.184"></a>
+<span class="sourceLineNo">185</span>      }<a name="line.185"></a>
+<span class="sourceLineNo">186</span>   }<a name="line.186"></a>
+<span class="sourceLineNo">187</span><a name="line.187"></a>
+<span class="sourceLineNo">188</span>   private final UrlEncodingSerializerContext ctx;<a name="line.188"></a>
+<span class="sourceLineNo">189</span><a name="line.189"></a>
+<span class="sourceLineNo">190</span>   /**<a name="line.190"></a>
+<span class="sourceLineNo">191</span>    * Constructor.<a name="line.191"></a>
+<span class="sourceLineNo">192</span>    *<a name="line.192"></a>
+<span class="sourceLineNo">193</span>    * @param propertyStore<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    *    The property store containing all the settings for this object.<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    */<a name="line.195"></a>
+<span class="sourceLineNo">196</span>   public UrlEncodingSerializer(PropertyStore propertyStore) {<a name="line.196"></a>
+<span class="sourceLineNo">197</span>      this(propertyStore, "application/x-www-form-urlencoded");<a name="line.197"></a>
+<span class="sourceLineNo">198</span>   }<a name="line.198"></a>
+<span class="sourceLineNo">199</span><a name="line.199"></a>
+<span class="sourceLineNo">200</span>   /**<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    * Constructor.<a name="line.201"></a>
+<span class="sourceLineNo">202</span>    *<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    * @param propertyStore<a name="line.203"></a>
+<span class="sourceLineNo">204</span>    *    The property store containing all the settings for this object.<a name="line.204"></a>
+<span class="sourceLineNo">205</span>    * @param produces<a name="line.205"></a>
+<span class="sourceLineNo">206</span>    *    The media type that this serializer produces.<a name="line.206"></a>
+<span class="sourceLineNo">207</span>    * @param accept<a name="line.207"></a>
+<span class="sourceLineNo">208</span>    *    The accept media types that the serializer can handle.<a name="line.208"></a>
+<span class="sourceLineNo">209</span>    *    &lt;p&gt;<a name="line.209"></a>
+<span class="sourceLineNo">210</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.210"></a>
+<span class="sourceLineNo">211</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>    *    &lt;p&gt;<a name="line.212"></a>
+<span class="sourceLineNo">213</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.213"></a>
+<span class="sourceLineNo">214</span>    *    &lt;p&gt;<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.216"></a>
+<span class="sourceLineNo">217</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.217"></a>
+<span class="sourceLineNo">218</span>    *    &lt;br&gt;...or...<a name="line.218"></a>
+<span class="sourceLineNo">219</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.219"></a>
+<span class="sourceLineNo">220</span>    */<a name="line.220"></a>
+<span class="sourceLineNo">221</span>   public UrlEncodingSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.221"></a>
+<span class="sourceLineNo">222</span>      super(propertyStore.copy().append(UON_encodeChars, true), produces, accept);<a name="line.222"></a>
+<span class="sourceLineNo">223</span>      this.ctx = createContext(UrlEncodingSerializerContext.class);<a name="line.223"></a>
+<span class="sourceLineNo">224</span>   }<a name="line.224"></a>
+<span class="sourceLineNo">225</span><a name="line.225"></a>
+<span class="sourceLineNo">226</span><a name="line.226"></a>
+<span class="sourceLineNo">227</span>   @Override /* CoreObject */<a name="line.227"></a>
+<span class="sourceLineNo">228</span>   public UrlEncodingSerializerBuilder builder() {<a name="line.228"></a>
+<span class="sourceLineNo">229</span>      return new UrlEncodingSerializerBuilder(propertyStore);<a name="line.229"></a>
+<span class="sourceLineNo">230</span>   }<a name="line.230"></a>
+<span class="sourceLineNo">231</span><a name="line.231"></a>
+<span class="sourceLineNo">232</span><a name="line.232"></a>
+<span class="sourceLineNo">233</span>   //--------------------------------------------------------------------------------<a name="line.233"></a>
+<span class="sourceLineNo">234</span>   // Methods for constructing individual parameter values.<a name="line.234"></a>
+<span class="sourceLineNo">235</span>   //--------------------------------------------------------------------------------<a name="line.235"></a>
+<span class="sourceLineNo">236</span><a name="line.236"></a>
+<span class="sourceLineNo">237</span>   /**<a name="line.237"></a>
+<span class="sourceLineNo">238</span>    * Converts the specified object to a string using this serializers {@link BeanSession#convertToType(Object, Class)}<a name="line.238"></a>
+<span class="sourceLineNo">239</span>    * method and runs {@link URLEncoder#encode(String,String)} against the results.<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    *<a name="line.240"></a>
+<span class="sourceLineNo">241</span>    * &lt;p&gt;<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    * Useful for constructing URL parts.<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    *<a name="line.243"></a>
+<span class="sourceLineNo">244</span>    * @param o The object to serialize.<a name="line.244"></a>
+<span class="sourceLineNo">245</span>    * @param urlEncode<a name="line.245"></a>
+<span class="sourceLineNo">246</span>    *    URL-encode the string if necessary.<a name="line.246"></a>
+<span class="sourceLineNo">247</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then uses the value of the {@link UonSerializerContext#UON_encodeChars} setting.<a name="line.247"></a>
+<span class="sourceLineNo">248</span>    * @param plainTextParams<a name="line.248"></a>
+<span class="sourceLineNo">249</span>    *    Whether we're using plain-text params.<a name="line.249"></a>
+<span class="sourceLineNo">250</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then uses the value from the {@link UrlEncodingSerializerContext#URLENC_paramFormat} setting.<a name="line.250"></a>
+<span class="sourceLineNo">251</span>    * @return The serialized object.<a name="line.251"></a>
+<span class="sourceLineNo">252</span>    */<a name="line.252"></a>
+<span class="sourceLineNo">253</span>   private String serializePart(Object o, Boolean urlEncode, Boolean plainTextParams) {<a name="line.253"></a>
+<span class="sourceLineNo">254</span>      try {<a name="line.254"></a>
+<span class="sourceLineNo">255</span>         // Shortcut for simple types.<a name="line.255"></a>
+<span class="sourceLineNo">256</span>         ClassMeta&lt;?&gt; cm = getBeanContext().getClassMetaForObject(o);<a name="line.256"></a>
+<span class="sourceLineNo">257</span>         if (cm != null) {<a name="line.257"></a>
+<span class="sourceLineNo">258</span>            if (cm.isNumber() || cm.isBoolean())<a name="line.258"></a>
+<span class="sourceLineNo">259</span>               return o.toString();<a name="line.259"></a>
+<span class="sourceLineNo">260</span>            if (cm.isCharSequence()) {<a name="line.260"></a>
+<span class="sourceLineNo">261</span>               String s = o.toString();<a name="line.261"></a>
+<span class="sourceLineNo">262</span>               boolean ptt = (plainTextParams != null ? plainTextParams : ctx.plainTextParams());<a name="line.262"></a>
+<span class="sourceLineNo">263</span>               if (ptt || s.isEmpty() || ! UonUtils.needsQuotes(s))<a name="line.263"></a>
+<span class="sourceLineNo">264</span>                  return (urlEncode ? urlEncode(s) : s);<a name="line.264"></a>
+<span class="sourceLineNo">265</span>            }<a name="line.265"></a>
+<span class="sourceLineNo">266</span>         }<a name="line.266"></a>
+<span class="sourceLineNo">267</span><a name="line.267"></a>
+<span class="sourceLineNo">268</span>         StringWriter w = new StringWriter();<a name="line.268"></a>
+<span class="sourceLineNo">269</span>         UonSerializerSession s = new UonSerializerSession(ctx, urlEncode, createDefaultSessionArgs());<a name="line.269"></a>
+<span class="sourceLineNo">270</span>         s.serialize(w, o);<a name="line.270"></a>
+<span class="sourceLineNo">271</span>         return w.toString();<a name="line.271"></a>
+<span class="sourceLineNo">272</span>      } catch (Exception e) {<a name="line.272"></a>
+<span class="sourceLineNo">273</span>         throw new RuntimeException(e);<a name="line.273"></a>
+<span class="sourceLineNo">274</span>      }<a name="line.274"></a>
+<span class="sourceLineNo">275</span>   }<a name="line.275"></a>
+<span class="sourceLineNo">276</span><a name="line.276"></a>
+<span class="sourceLineNo">277</span><a name="line.277"></a>
+<span class="sourceLineNo">278</span>   //--------------------------------------------------------------------------------<a name="line.278"></a>
+<span class="sourceLineNo">279</span>   // Entry point methods<a name="line.279"></a>
+<span class="sourceLineNo">280</span>   //--------------------------------------------------------------------------------<a name="line.280"></a>
+<span class="sourceLineNo">281</span><a name="line.281"></a>
+<span class="sourceLineNo">282</span>   @Override /* Serializer */<a name="line.282"></a>
+<span class="sourceLineNo">283</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.283"></a>
+<span class="sourceLineNo">284</span>      return new UrlEncodingSerializerSession(ctx, null, args);<a name="line.284"></a>
+<span class="sourceLineNo">285</span>   }<a name="line.285"></a>
+<span class="sourceLineNo">286</span><a name="line.286"></a>
+<span class="sourceLineNo">287</span>   @Override /* PartSerializer */<a name="line.287"></a>
+<span class="sourceLineNo">288</span>   public String serialize(PartType type, Object value) {<a name="line.288"></a>
+<span class="sourceLineNo">289</span>      switch(type) {<a name="line.289"></a>
+<span class="sourceLineNo">290</span>         case HEADER: return serializePart(value, false, true);<a name="line.290"></a>
+<span class="sourceLineNo">291</span>         case FORM_DATA: return serializePart(value, false, null);<a name="line.291"></a>
+<span class="sourceLineNo">292</span>         case PATH: return serializePart(value, false, null);<a name="line.292"></a>
+<span class="sourceLineNo">293</span>         case QUERY: return serializePart(value, false, null);<a name="line.293"></a>
+<span class="sourceLineNo">294</span>         default: return toString(value);<a name="line.294"></a>
+<span class="sourceLineNo">295</span>      }<a name="line.295"></a>
+<span class="sourceLineNo">296</span>   }<a name="line.296"></a>
+<span class="sourceLineNo">297</span>}<a name="line.297"></a>
 
 
 


[22/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/parser/Parser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/parser/Parser.html b/content/site/apidocs/src-html/org/apache/juneau/parser/Parser.html
index c8b3ba0..b989f77 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/parser/Parser.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/parser/Parser.html
@@ -20,481 +20,472 @@
 <span class="sourceLineNo">012</span>// ***************************************************************************************************************************<a name="line.12"></a>
 <span class="sourceLineNo">013</span>package org.apache.juneau.parser;<a name="line.13"></a>
 <span class="sourceLineNo">014</span><a name="line.14"></a>
-<span class="sourceLineNo">015</span>import static org.apache.juneau.internal.StringUtils.*;<a name="line.15"></a>
-<span class="sourceLineNo">016</span>import static org.apache.juneau.internal.ReflectionUtils.*;<a name="line.16"></a>
-<span class="sourceLineNo">017</span><a name="line.17"></a>
-<span class="sourceLineNo">018</span>import java.io.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import java.lang.reflect.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import java.util.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span><a name="line.21"></a>
-<span class="sourceLineNo">022</span>import org.apache.juneau.*;<a name="line.22"></a>
-<span class="sourceLineNo">023</span>import org.apache.juneau.annotation.*;<a name="line.23"></a>
-<span class="sourceLineNo">024</span>import org.apache.juneau.http.*;<a name="line.24"></a>
-<span class="sourceLineNo">025</span>import org.apache.juneau.transform.*;<a name="line.25"></a>
-<span class="sourceLineNo">026</span>import org.apache.juneau.transforms.*;<a name="line.26"></a>
-<span class="sourceLineNo">027</span>import org.apache.juneau.utils.*;<a name="line.27"></a>
-<span class="sourceLineNo">028</span><a name="line.28"></a>
-<span class="sourceLineNo">029</span>/**<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * Parent class for all Juneau parsers.<a name="line.30"></a>
-<span class="sourceLineNo">031</span> *<a name="line.31"></a>
-<span class="sourceLineNo">032</span> * &lt;h6 class='topic'&gt;@Consumes annotation&lt;/h6&gt;<a name="line.32"></a>
-<span class="sourceLineNo">033</span> *<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * The media types that this parser can handle is specified through the {@link Consumes @Consumes} annotation.<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *<a name="line.35"></a>
-<span class="sourceLineNo">036</span> * &lt;p&gt;<a name="line.36"></a>
-<span class="sourceLineNo">037</span> * However, the media types can also be specified programmatically by overriding the {@link #getMediaTypes()} method.<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *<a name="line.38"></a>
-<span class="sourceLineNo">039</span> * &lt;h6 class='topic'&gt;Valid data conversions&lt;/h6&gt;<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *<a name="line.40"></a>
-<span class="sourceLineNo">041</span> * Parsers can parse any parsable POJO types, as specified in the &lt;a class="doclink"<a name="line.41"></a>
-<span class="sourceLineNo">042</span> * href="../../../../overview-summary.html#Core.PojoCategories"&gt;POJO Categories&lt;/a&gt;.<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *<a name="line.43"></a>
-<span class="sourceLineNo">044</span> * &lt;p&gt;<a name="line.44"></a>
-<span class="sourceLineNo">045</span> * Some examples of conversions are shown below...<a name="line.45"></a>
-<span class="sourceLineNo">046</span> * &lt;/p&gt;<a name="line.46"></a>
-<span class="sourceLineNo">047</span> * &lt;table class='styled'&gt;<a name="line.47"></a>
-<span class="sourceLineNo">048</span> *    &lt;tr&gt;<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *       &lt;th&gt;Data type&lt;/th&gt;<a name="line.49"></a>
-<span class="sourceLineNo">050</span> *       &lt;th&gt;Class type&lt;/th&gt;<a name="line.50"></a>
-<span class="sourceLineNo">051</span> *       &lt;th&gt;JSON example&lt;/th&gt;<a name="line.51"></a>
-<span class="sourceLineNo">052</span> *       &lt;th&gt;XML example&lt;/th&gt;<a name="line.52"></a>
-<span class="sourceLineNo">053</span> *       &lt;th&gt;Class examples&lt;/th&gt;<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *    &lt;/tr&gt;<a name="line.54"></a>
-<span class="sourceLineNo">055</span> *    &lt;tr&gt;<a name="line.55"></a>
-<span class="sourceLineNo">056</span> *       &lt;td&gt;object&lt;/td&gt;<a name="line.56"></a>
-<span class="sourceLineNo">057</span> *       &lt;td&gt;Maps, Java beans&lt;/td&gt;<a name="line.57"></a>
-<span class="sourceLineNo">058</span> *       &lt;td class='code'&gt;{name:&lt;js&gt;'John Smith'&lt;/js&gt;,age:21}&lt;/td&gt;<a name="line.58"></a>
-<span class="sourceLineNo">059</span> *       &lt;td class='code'&gt;&lt;xt&gt;&amp;lt;object&amp;gt;<a name="line.59"></a>
-<span class="sourceLineNo">060</span> *    &amp;lt;name&lt;/xt&gt; &lt;xa&gt;type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;<a name="line.60"></a>
-<span class="sourceLineNo">061</span> *    &amp;lt;age&lt;/xt&gt; &lt;xa&gt;type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;21&lt;xt&gt;&amp;lt;/age&amp;gt;<a name="line.61"></a>
-<span class="sourceLineNo">062</span> * &amp;lt;/object&amp;gt;&lt;/xt&gt;&lt;/td&gt;<a name="line.62"></a>
-<span class="sourceLineNo">063</span> *       &lt;td class='code'&gt;HashMap, TreeMap&amp;lt;String,Integer&amp;gt;&lt;/td&gt;<a name="line.63"></a>
+<span class="sourceLineNo">015</span>import java.io.*;<a name="line.15"></a>
+<span class="sourceLineNo">016</span>import java.lang.reflect.*;<a name="line.16"></a>
+<span class="sourceLineNo">017</span>import java.util.*;<a name="line.17"></a>
+<span class="sourceLineNo">018</span><a name="line.18"></a>
+<span class="sourceLineNo">019</span>import org.apache.juneau.*;<a name="line.19"></a>
+<span class="sourceLineNo">020</span>import org.apache.juneau.http.*;<a name="line.20"></a>
+<span class="sourceLineNo">021</span>import org.apache.juneau.transform.*;<a name="line.21"></a>
+<span class="sourceLineNo">022</span>import org.apache.juneau.transforms.*;<a name="line.22"></a>
+<span class="sourceLineNo">023</span>import org.apache.juneau.utils.*;<a name="line.23"></a>
+<span class="sourceLineNo">024</span><a name="line.24"></a>
+<span class="sourceLineNo">025</span>/**<a name="line.25"></a>
+<span class="sourceLineNo">026</span> * Parent class for all Juneau parsers.<a name="line.26"></a>
+<span class="sourceLineNo">027</span> *<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * &lt;h6 class='topic'&gt;Valid data conversions&lt;/h6&gt;<a name="line.28"></a>
+<span class="sourceLineNo">029</span> *<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * Parsers can parse any parsable POJO types, as specified in the &lt;a class="doclink"<a name="line.30"></a>
+<span class="sourceLineNo">031</span> * href="../../../../overview-summary.html#Core.PojoCategories"&gt;POJO Categories&lt;/a&gt;.<a name="line.31"></a>
+<span class="sourceLineNo">032</span> *<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * &lt;p&gt;<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * Some examples of conversions are shown below...<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * &lt;/p&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span> * &lt;table class='styled'&gt;<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;tr&gt;<a name="line.37"></a>
+<span class="sourceLineNo">038</span> *       &lt;th&gt;Data type&lt;/th&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *       &lt;th&gt;Class type&lt;/th&gt;<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *       &lt;th&gt;JSON example&lt;/th&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span> *       &lt;th&gt;XML example&lt;/th&gt;<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *       &lt;th&gt;Class examples&lt;/th&gt;<a name="line.42"></a>
+<span class="sourceLineNo">043</span> *    &lt;/tr&gt;<a name="line.43"></a>
+<span class="sourceLineNo">044</span> *    &lt;tr&gt;<a name="line.44"></a>
+<span class="sourceLineNo">045</span> *       &lt;td&gt;object&lt;/td&gt;<a name="line.45"></a>
+<span class="sourceLineNo">046</span> *       &lt;td&gt;Maps, Java beans&lt;/td&gt;<a name="line.46"></a>
+<span class="sourceLineNo">047</span> *       &lt;td class='code'&gt;{name:&lt;js&gt;'John Smith'&lt;/js&gt;,age:21}&lt;/td&gt;<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *       &lt;td class='code'&gt;&lt;xt&gt;&amp;lt;object&amp;gt;<a name="line.48"></a>
+<span class="sourceLineNo">049</span> *    &amp;lt;name&lt;/xt&gt; &lt;xa&gt;type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;<a name="line.49"></a>
+<span class="sourceLineNo">050</span> *    &amp;lt;age&lt;/xt&gt; &lt;xa&gt;type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;21&lt;xt&gt;&amp;lt;/age&amp;gt;<a name="line.50"></a>
+<span class="sourceLineNo">051</span> * &amp;lt;/object&amp;gt;&lt;/xt&gt;&lt;/td&gt;<a name="line.51"></a>
+<span class="sourceLineNo">052</span> *       &lt;td class='code'&gt;HashMap, TreeMap&amp;lt;String,Integer&amp;gt;&lt;/td&gt;<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *    &lt;/tr&gt;<a name="line.53"></a>
+<span class="sourceLineNo">054</span> *    &lt;tr&gt;<a name="line.54"></a>
+<span class="sourceLineNo">055</span> *       &lt;td&gt;array&lt;/td&gt;<a name="line.55"></a>
+<span class="sourceLineNo">056</span> *       &lt;td&gt;Collections, Java arrays&lt;/td&gt;<a name="line.56"></a>
+<span class="sourceLineNo">057</span> *       &lt;td class='code'&gt;[1,2,3]&lt;/td&gt;<a name="line.57"></a>
+<span class="sourceLineNo">058</span> *       &lt;td class='code'&gt;&lt;xt&gt;&amp;lt;array&amp;gt;<a name="line.58"></a>
+<span class="sourceLineNo">059</span> *    &amp;lt;number&amp;gt;&lt;/xt&gt;1&lt;xt&gt;&amp;lt;/number&amp;gt;<a name="line.59"></a>
+<span class="sourceLineNo">060</span> *    &amp;lt;number&amp;gt;&lt;/xt&gt;2&lt;xt&gt;&amp;lt;/number&amp;gt;<a name="line.60"></a>
+<span class="sourceLineNo">061</span> *    &amp;lt;number&amp;gt;&lt;/xt&gt;3&lt;xt&gt;&amp;lt;/number&amp;gt;<a name="line.61"></a>
+<span class="sourceLineNo">062</span> * &amp;lt;/array&amp;gt;&lt;/xt&gt;&lt;/td&gt;<a name="line.62"></a>
+<span class="sourceLineNo">063</span> *       &lt;td class='code'&gt;List&amp;lt;Integer&amp;gt;, &lt;jk&gt;int&lt;/jk&gt;[], Float[], Set&amp;lt;Person&amp;gt;&lt;/td&gt;<a name="line.63"></a>
 <span class="sourceLineNo">064</span> *    &lt;/tr&gt;<a name="line.64"></a>
 <span class="sourceLineNo">065</span> *    &lt;tr&gt;<a name="line.65"></a>
-<span class="sourceLineNo">066</span> *       &lt;td&gt;array&lt;/td&gt;<a name="line.66"></a>
-<span class="sourceLineNo">067</span> *       &lt;td&gt;Collections, Java arrays&lt;/td&gt;<a name="line.67"></a>
-<span class="sourceLineNo">068</span> *       &lt;td class='code'&gt;[1,2,3]&lt;/td&gt;<a name="line.68"></a>
-<span class="sourceLineNo">069</span> *       &lt;td class='code'&gt;&lt;xt&gt;&amp;lt;array&amp;gt;<a name="line.69"></a>
-<span class="sourceLineNo">070</span> *    &amp;lt;number&amp;gt;&lt;/xt&gt;1&lt;xt&gt;&amp;lt;/number&amp;gt;<a name="line.70"></a>
-<span class="sourceLineNo">071</span> *    &amp;lt;number&amp;gt;&lt;/xt&gt;2&lt;xt&gt;&amp;lt;/number&amp;gt;<a name="line.71"></a>
-<span class="sourceLineNo">072</span> *    &amp;lt;number&amp;gt;&lt;/xt&gt;3&lt;xt&gt;&amp;lt;/number&amp;gt;<a name="line.72"></a>
-<span class="sourceLineNo">073</span> * &amp;lt;/array&amp;gt;&lt;/xt&gt;&lt;/td&gt;<a name="line.73"></a>
-<span class="sourceLineNo">074</span> *       &lt;td class='code'&gt;List&amp;lt;Integer&amp;gt;, &lt;jk&gt;int&lt;/jk&gt;[], Float[], Set&amp;lt;Person&amp;gt;&lt;/td&gt;<a name="line.74"></a>
-<span class="sourceLineNo">075</span> *    &lt;/tr&gt;<a name="line.75"></a>
-<span class="sourceLineNo">076</span> *    &lt;tr&gt;<a name="line.76"></a>
-<span class="sourceLineNo">077</span> *       &lt;td&gt;number&lt;/td&gt;<a name="line.77"></a>
-<span class="sourceLineNo">078</span> *       &lt;td&gt;Numbers&lt;/td&gt;<a name="line.78"></a>
-<span class="sourceLineNo">079</span> *       &lt;td class='code'&gt;123&lt;/td&gt;<a name="line.79"></a>
-<span class="sourceLineNo">080</span> *       &lt;td class='code'&gt;&lt;xt&gt;&amp;lt;number&amp;gt;&lt;/xt&gt;123&lt;xt&gt;&amp;lt;/number&amp;gt;&lt;/xt&gt;&lt;/td&gt;<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *       &lt;td class='code'&gt;Integer, Long, Float, &lt;jk&gt;int&lt;/jk&gt;&lt;/td&gt;<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *    &lt;/tr&gt;<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *    &lt;tr&gt;<a name="line.83"></a>
-<span class="sourceLineNo">084</span> *       &lt;td&gt;boolean&lt;/td&gt;<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *       &lt;td&gt;Booleans&lt;/td&gt;<a name="line.85"></a>
-<span class="sourceLineNo">086</span> *       &lt;td class='code'&gt;&lt;jk&gt;true&lt;/jk&gt;&lt;/td&gt;<a name="line.86"></a>
-<span class="sourceLineNo">087</span> *       &lt;td class='code'&gt;&lt;xt&gt;&amp;lt;boolean&amp;gt;&lt;/xt&gt;true&lt;xt&gt;&amp;lt;/boolean&amp;gt;&lt;/xt&gt;&lt;/td&gt;<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *       &lt;td class='code'&gt;Boolean&lt;/td&gt;<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *    &lt;/tr&gt;<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *    &lt;tr&gt;<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *       &lt;td&gt;string&lt;/td&gt;<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *       &lt;td&gt;CharSequences&lt;/td&gt;<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *       &lt;td class='code'&gt;&lt;js&gt;'foobar'&lt;/js&gt;&lt;/td&gt;<a name="line.93"></a>
-<span class="sourceLineNo">094</span> *       &lt;td class='code'&gt;&lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;foobar&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;&lt;/td&gt;<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *       &lt;td class='code'&gt;String, StringBuilder&lt;/td&gt;<a name="line.95"></a>
-<span class="sourceLineNo">096</span> *    &lt;/tr&gt;<a name="line.96"></a>
-<span class="sourceLineNo">097</span> * &lt;/table&gt;<a name="line.97"></a>
-<span class="sourceLineNo">098</span> *<a name="line.98"></a>
-<span class="sourceLineNo">099</span> * &lt;p&gt;<a name="line.99"></a>
-<span class="sourceLineNo">100</span> * In addition, any class types with {@link PojoSwap PojoSwaps} associated with them on the registered<a name="line.100"></a>
-<span class="sourceLineNo">101</span> * {@link #getBeanContext() beanContext} can also be passed in.<a name="line.101"></a>
-<span class="sourceLineNo">102</span> *<a name="line.102"></a>
-<span class="sourceLineNo">103</span> * &lt;p&gt;<a name="line.103"></a>
-<span class="sourceLineNo">104</span> * For example, if the {@link CalendarSwap} transform is used to generalize {@code Calendar} objects to {@code String}<a name="line.104"></a>
-<span class="sourceLineNo">105</span> * objects.<a name="line.105"></a>
-<span class="sourceLineNo">106</span> * When registered with this parser, you can construct {@code Calendar} objects from {@code Strings} using the<a name="line.106"></a>
-<span class="sourceLineNo">107</span> * following syntax...<a name="line.107"></a>
-<span class="sourceLineNo">108</span> * &lt;p class='bcode'&gt;<a name="line.108"></a>
-<span class="sourceLineNo">109</span> *    Calendar c = parser.parse(&lt;js&gt;"'Sun Mar 03 04:05:06 EST 2001'"&lt;/js&gt;, GregorianCalendar.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.109"></a>
-<span class="sourceLineNo">110</span> *<a name="line.110"></a>
-<span class="sourceLineNo">111</span> * &lt;p&gt;<a name="line.111"></a>
-<span class="sourceLineNo">112</span> * If &lt;code&gt;Object.&lt;jk&gt;class&lt;/jk&gt;&lt;/code&gt; is specified as the target type, then the parser automatically determines the<a name="line.112"></a>
-<span class="sourceLineNo">113</span> * data types and generates the following object types...<a name="line.113"></a>
-<span class="sourceLineNo">114</span> * &lt;table class='styled'&gt;<a name="line.114"></a>
-<span class="sourceLineNo">115</span> *    &lt;tr&gt;&lt;th&gt;JSON type&lt;/th&gt;&lt;th&gt;Class type&lt;/th&gt;&lt;/tr&gt;<a name="line.115"></a>
-<span class="sourceLineNo">116</span> *    &lt;tr&gt;&lt;td&gt;object&lt;/td&gt;&lt;td&gt;{@link ObjectMap}&lt;/td&gt;&lt;/tr&gt;<a name="line.116"></a>
-<span class="sourceLineNo">117</span> *    &lt;tr&gt;&lt;td&gt;array&lt;/td&gt;&lt;td&gt;{@link ObjectList}&lt;/td&gt;&lt;/tr&gt;<a name="line.117"></a>
-<span class="sourceLineNo">118</span> *    &lt;tr&gt;&lt;td&gt;number&lt;/td&gt;&lt;td&gt;{@link Number}&lt;br&gt;(depending on length and format, could be {@link Integer},<a name="line.118"></a>
-<span class="sourceLineNo">119</span> *       {@link Double}, {@link Float}, etc...)&lt;/td&gt;&lt;/tr&gt;<a name="line.119"></a>
-<span class="sourceLineNo">120</span> *    &lt;tr&gt;&lt;td&gt;boolean&lt;/td&gt;&lt;td&gt;{@link Boolean}&lt;/td&gt;&lt;/tr&gt;<a name="line.120"></a>
-<span class="sourceLineNo">121</span> *    &lt;tr&gt;&lt;td&gt;string&lt;/td&gt;&lt;td&gt;{@link String}&lt;/td&gt;&lt;/tr&gt;<a name="line.121"></a>
-<span class="sourceLineNo">122</span> * &lt;/table&gt;<a name="line.122"></a>
-<span class="sourceLineNo">123</span> *<a name="line.123"></a>
-<span class="sourceLineNo">124</span> * &lt;a id='SupportedTypes'&gt;&lt;/a&gt;<a name="line.124"></a>
-<span class="sourceLineNo">125</span> * &lt;h6 class='topic'&gt;Supported types&lt;/h6&gt;<a name="line.125"></a>
-<span class="sourceLineNo">126</span> *<a name="line.126"></a>
-<span class="sourceLineNo">127</span> * Several of the methods below take {@link Type} parameters to identify the type of object to create.<a name="line.127"></a>
-<span class="sourceLineNo">128</span> * Any of the following types can be passed in to these methods...<a name="line.128"></a>
-<span class="sourceLineNo">129</span> * &lt;ul&gt;<a name="line.129"></a>
-<span class="sourceLineNo">130</span> *    &lt;li&gt;{@link ClassMeta}<a name="line.130"></a>
-<span class="sourceLineNo">131</span> *    &lt;li&gt;{@link Class}<a name="line.131"></a>
-<span class="sourceLineNo">132</span> *    &lt;li&gt;{@link ParameterizedType}<a name="line.132"></a>
-<span class="sourceLineNo">133</span> *    &lt;li&gt;{@link GenericArrayType}<a name="line.133"></a>
-<span class="sourceLineNo">134</span> * &lt;/ul&gt;<a name="line.134"></a>
-<span class="sourceLineNo">135</span> *<a name="line.135"></a>
-<span class="sourceLineNo">136</span> * &lt;p&gt;<a name="line.136"></a>
-<span class="sourceLineNo">137</span> * However, {@code ParameterizedTypes} and {@code GenericArrayTypes} should not contain<a name="line.137"></a>
-<span class="sourceLineNo">138</span> * {@link WildcardType WildcardTypes} or {@link TypeVariable TypeVariables}.<a name="line.138"></a>
-<span class="sourceLineNo">139</span> *<a name="line.139"></a>
-<span class="sourceLineNo">140</span> * &lt;p&gt;<a name="line.140"></a>
-<span class="sourceLineNo">141</span> * Passing in &lt;jk&gt;null&lt;/jk&gt; or &lt;code&gt;Object.&lt;jk&gt;class&lt;/jk&gt;&lt;/code&gt; typically signifies that it's up to the parser<a name="line.141"></a>
-<span class="sourceLineNo">142</span> * to determine what object type is being parsed parsed based on the rules above.<a name="line.142"></a>
-<span class="sourceLineNo">143</span> */<a name="line.143"></a>
-<span class="sourceLineNo">144</span>public abstract class Parser extends CoreObject {<a name="line.144"></a>
-<span class="sourceLineNo">145</span><a name="line.145"></a>
-<span class="sourceLineNo">146</span>   /** General parser properties currently set on this parser. */<a name="line.146"></a>
-<span class="sourceLineNo">147</span>   private final MediaType[] mediaTypes;<a name="line.147"></a>
-<span class="sourceLineNo">148</span><a name="line.148"></a>
-<span class="sourceLineNo">149</span>   // Hidden constructor to force subclass from InputStreamParser or ReaderParser.<a name="line.149"></a>
-<span class="sourceLineNo">150</span>   Parser(PropertyStore propertyStore) {<a name="line.150"></a>
-<span class="sourceLineNo">151</span>      super(propertyStore);<a name="line.151"></a>
+<span class="sourceLineNo">066</span> *       &lt;td&gt;number&lt;/td&gt;<a name="line.66"></a>
+<span class="sourceLineNo">067</span> *       &lt;td&gt;Numbers&lt;/td&gt;<a name="line.67"></a>
+<span class="sourceLineNo">068</span> *       &lt;td class='code'&gt;123&lt;/td&gt;<a name="line.68"></a>
+<span class="sourceLineNo">069</span> *       &lt;td class='code'&gt;&lt;xt&gt;&amp;lt;number&amp;gt;&lt;/xt&gt;123&lt;xt&gt;&amp;lt;/number&amp;gt;&lt;/xt&gt;&lt;/td&gt;<a name="line.69"></a>
+<span class="sourceLineNo">070</span> *       &lt;td class='code'&gt;Integer, Long, Float, &lt;jk&gt;int&lt;/jk&gt;&lt;/td&gt;<a name="line.70"></a>
+<span class="sourceLineNo">071</span> *    &lt;/tr&gt;<a name="line.71"></a>
+<span class="sourceLineNo">072</span> *    &lt;tr&gt;<a name="line.72"></a>
+<span class="sourceLineNo">073</span> *       &lt;td&gt;boolean&lt;/td&gt;<a name="line.73"></a>
+<span class="sourceLineNo">074</span> *       &lt;td&gt;Booleans&lt;/td&gt;<a name="line.74"></a>
+<span class="sourceLineNo">075</span> *       &lt;td class='code'&gt;&lt;jk&gt;true&lt;/jk&gt;&lt;/td&gt;<a name="line.75"></a>
+<span class="sourceLineNo">076</span> *       &lt;td class='code'&gt;&lt;xt&gt;&amp;lt;boolean&amp;gt;&lt;/xt&gt;true&lt;xt&gt;&amp;lt;/boolean&amp;gt;&lt;/xt&gt;&lt;/td&gt;<a name="line.76"></a>
+<span class="sourceLineNo">077</span> *       &lt;td class='code'&gt;Boolean&lt;/td&gt;<a name="line.77"></a>
+<span class="sourceLineNo">078</span> *    &lt;/tr&gt;<a name="line.78"></a>
+<span class="sourceLineNo">079</span> *    &lt;tr&gt;<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *       &lt;td&gt;string&lt;/td&gt;<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *       &lt;td&gt;CharSequences&lt;/td&gt;<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *       &lt;td class='code'&gt;&lt;js&gt;'foobar'&lt;/js&gt;&lt;/td&gt;<a name="line.82"></a>
+<span class="sourceLineNo">083</span> *       &lt;td class='code'&gt;&lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;foobar&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;&lt;/td&gt;<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *       &lt;td class='code'&gt;String, StringBuilder&lt;/td&gt;<a name="line.84"></a>
+<span class="sourceLineNo">085</span> *    &lt;/tr&gt;<a name="line.85"></a>
+<span class="sourceLineNo">086</span> * &lt;/table&gt;<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *<a name="line.87"></a>
+<span class="sourceLineNo">088</span> * &lt;p&gt;<a name="line.88"></a>
+<span class="sourceLineNo">089</span> * In addition, any class types with {@link PojoSwap PojoSwaps} associated with them on the registered<a name="line.89"></a>
+<span class="sourceLineNo">090</span> * {@link #getBeanContext() beanContext} can also be passed in.<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *<a name="line.91"></a>
+<span class="sourceLineNo">092</span> * &lt;p&gt;<a name="line.92"></a>
+<span class="sourceLineNo">093</span> * For example, if the {@link CalendarSwap} transform is used to generalize {@code Calendar} objects to {@code String}<a name="line.93"></a>
+<span class="sourceLineNo">094</span> * objects.<a name="line.94"></a>
+<span class="sourceLineNo">095</span> * When registered with this parser, you can construct {@code Calendar} objects from {@code Strings} using the<a name="line.95"></a>
+<span class="sourceLineNo">096</span> * following syntax...<a name="line.96"></a>
+<span class="sourceLineNo">097</span> * &lt;p class='bcode'&gt;<a name="line.97"></a>
+<span class="sourceLineNo">098</span> *    Calendar c = parser.parse(&lt;js&gt;"'Sun Mar 03 04:05:06 EST 2001'"&lt;/js&gt;, GregorianCalendar.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.98"></a>
+<span class="sourceLineNo">099</span> *<a name="line.99"></a>
+<span class="sourceLineNo">100</span> * &lt;p&gt;<a name="line.100"></a>
+<span class="sourceLineNo">101</span> * If &lt;code&gt;Object.&lt;jk&gt;class&lt;/jk&gt;&lt;/code&gt; is specified as the target type, then the parser automatically determines the<a name="line.101"></a>
+<span class="sourceLineNo">102</span> * data types and generates the following object types...<a name="line.102"></a>
+<span class="sourceLineNo">103</span> * &lt;table class='styled'&gt;<a name="line.103"></a>
+<span class="sourceLineNo">104</span> *    &lt;tr&gt;&lt;th&gt;JSON type&lt;/th&gt;&lt;th&gt;Class type&lt;/th&gt;&lt;/tr&gt;<a name="line.104"></a>
+<span class="sourceLineNo">105</span> *    &lt;tr&gt;&lt;td&gt;object&lt;/td&gt;&lt;td&gt;{@link ObjectMap}&lt;/td&gt;&lt;/tr&gt;<a name="line.105"></a>
+<span class="sourceLineNo">106</span> *    &lt;tr&gt;&lt;td&gt;array&lt;/td&gt;&lt;td&gt;{@link ObjectList}&lt;/td&gt;&lt;/tr&gt;<a name="line.106"></a>
+<span class="sourceLineNo">107</span> *    &lt;tr&gt;&lt;td&gt;number&lt;/td&gt;&lt;td&gt;{@link Number}&lt;br&gt;(depending on length and format, could be {@link Integer},<a name="line.107"></a>
+<span class="sourceLineNo">108</span> *       {@link Double}, {@link Float}, etc...)&lt;/td&gt;&lt;/tr&gt;<a name="line.108"></a>
+<span class="sourceLineNo">109</span> *    &lt;tr&gt;&lt;td&gt;boolean&lt;/td&gt;&lt;td&gt;{@link Boolean}&lt;/td&gt;&lt;/tr&gt;<a name="line.109"></a>
+<span class="sourceLineNo">110</span> *    &lt;tr&gt;&lt;td&gt;string&lt;/td&gt;&lt;td&gt;{@link String}&lt;/td&gt;&lt;/tr&gt;<a name="line.110"></a>
+<span class="sourceLineNo">111</span> * &lt;/table&gt;<a name="line.111"></a>
+<span class="sourceLineNo">112</span> *<a name="line.112"></a>
+<span class="sourceLineNo">113</span> * &lt;a id='SupportedTypes'&gt;&lt;/a&gt;<a name="line.113"></a>
+<span class="sourceLineNo">114</span> * &lt;h6 class='topic'&gt;Supported types&lt;/h6&gt;<a name="line.114"></a>
+<span class="sourceLineNo">115</span> *<a name="line.115"></a>
+<span class="sourceLineNo">116</span> * Several of the methods below take {@link Type} parameters to identify the type of object to create.<a name="line.116"></a>
+<span class="sourceLineNo">117</span> * Any of the following types can be passed in to these methods...<a name="line.117"></a>
+<span class="sourceLineNo">118</span> * &lt;ul&gt;<a name="line.118"></a>
+<span class="sourceLineNo">119</span> *    &lt;li&gt;{@link ClassMeta}<a name="line.119"></a>
+<span class="sourceLineNo">120</span> *    &lt;li&gt;{@link Class}<a name="line.120"></a>
+<span class="sourceLineNo">121</span> *    &lt;li&gt;{@link ParameterizedType}<a name="line.121"></a>
+<span class="sourceLineNo">122</span> *    &lt;li&gt;{@link GenericArrayType}<a name="line.122"></a>
+<span class="sourceLineNo">123</span> * &lt;/ul&gt;<a name="line.123"></a>
+<span class="sourceLineNo">124</span> *<a name="line.124"></a>
+<span class="sourceLineNo">125</span> * &lt;p&gt;<a name="line.125"></a>
+<span class="sourceLineNo">126</span> * However, {@code ParameterizedTypes} and {@code GenericArrayTypes} should not contain<a name="line.126"></a>
+<span class="sourceLineNo">127</span> * {@link WildcardType WildcardTypes} or {@link TypeVariable TypeVariables}.<a name="line.127"></a>
+<span class="sourceLineNo">128</span> *<a name="line.128"></a>
+<span class="sourceLineNo">129</span> * &lt;p&gt;<a name="line.129"></a>
+<span class="sourceLineNo">130</span> * Passing in &lt;jk&gt;null&lt;/jk&gt; or &lt;code&gt;Object.&lt;jk&gt;class&lt;/jk&gt;&lt;/code&gt; typically signifies that it's up to the parser<a name="line.130"></a>
+<span class="sourceLineNo">131</span> * to determine what object type is being parsed parsed based on the rules above.<a name="line.131"></a>
+<span class="sourceLineNo">132</span> */<a name="line.132"></a>
+<span class="sourceLineNo">133</span>public abstract class Parser extends CoreObject {<a name="line.133"></a>
+<span class="sourceLineNo">134</span><a name="line.134"></a>
+<span class="sourceLineNo">135</span>   /** General parser properties currently set on this parser. */<a name="line.135"></a>
+<span class="sourceLineNo">136</span>   private final MediaType[] consumes;<a name="line.136"></a>
+<span class="sourceLineNo">137</span><a name="line.137"></a>
+<span class="sourceLineNo">138</span>   // Hidden constructor to force subclass from InputStreamParser or ReaderParser.<a name="line.138"></a>
+<span class="sourceLineNo">139</span>   Parser(PropertyStore propertyStore, String...consumes) {<a name="line.139"></a>
+<span class="sourceLineNo">140</span>      super(propertyStore);<a name="line.140"></a>
+<span class="sourceLineNo">141</span><a name="line.141"></a>
+<span class="sourceLineNo">142</span>      this.consumes = new MediaType[consumes.length];<a name="line.142"></a>
+<span class="sourceLineNo">143</span>      for (int i = 0; i &lt; consumes.length; i++) {<a name="line.143"></a>
+<span class="sourceLineNo">144</span>         this.consumes[i] = MediaType.forString(consumes[i]);<a name="line.144"></a>
+<span class="sourceLineNo">145</span>      }<a name="line.145"></a>
+<span class="sourceLineNo">146</span>   }<a name="line.146"></a>
+<span class="sourceLineNo">147</span><a name="line.147"></a>
+<span class="sourceLineNo">148</span>   @Override /* CoreObject */<a name="line.148"></a>
+<span class="sourceLineNo">149</span>   public ParserBuilder builder() {<a name="line.149"></a>
+<span class="sourceLineNo">150</span>      return new ParserBuilder(propertyStore);<a name="line.150"></a>
+<span class="sourceLineNo">151</span>   }<a name="line.151"></a>
 <span class="sourceLineNo">152</span><a name="line.152"></a>
-<span class="sourceLineNo">153</span>      Consumes c = getAnnotation(Consumes.class, getClass());<a name="line.153"></a>
-<span class="sourceLineNo">154</span>      if (c == null)<a name="line.154"></a>
-<span class="sourceLineNo">155</span>         throw new FormattedRuntimeException("Class ''{0}'' is missing the @Consumes annotation", c);<a name="line.155"></a>
-<span class="sourceLineNo">156</span><a name="line.156"></a>
-<span class="sourceLineNo">157</span>      String[] mt = split(c.value());<a name="line.157"></a>
-<span class="sourceLineNo">158</span>      this.mediaTypes = new MediaType[mt.length];<a name="line.158"></a>
-<span class="sourceLineNo">159</span>      for (int i = 0; i &lt; mt.length; i++) {<a name="line.159"></a>
-<span class="sourceLineNo">160</span>         mediaTypes[i] = MediaType.forString(mt[i]);<a name="line.160"></a>
-<span class="sourceLineNo">161</span>      }<a name="line.161"></a>
-<span class="sourceLineNo">162</span>   }<a name="line.162"></a>
-<span class="sourceLineNo">163</span><a name="line.163"></a>
-<span class="sourceLineNo">164</span>   @Override /* CoreObject */<a name="line.164"></a>
-<span class="sourceLineNo">165</span>   public ParserBuilder builder() {<a name="line.165"></a>
-<span class="sourceLineNo">166</span>      return new ParserBuilder(propertyStore);<a name="line.166"></a>
-<span class="sourceLineNo">167</span>   }<a name="line.167"></a>
-<span class="sourceLineNo">168</span><a name="line.168"></a>
-<span class="sourceLineNo">169</span><a name="line.169"></a>
-<span class="sourceLineNo">170</span>   //--------------------------------------------------------------------------------<a name="line.170"></a>
-<span class="sourceLineNo">171</span>   // Abstract methods<a name="line.171"></a>
-<span class="sourceLineNo">172</span>   //--------------------------------------------------------------------------------<a name="line.172"></a>
-<span class="sourceLineNo">173</span><a name="line.173"></a>
-<span class="sourceLineNo">174</span>   /**<a name="line.174"></a>
-<span class="sourceLineNo">175</span>    * Returns &lt;jk&gt;true&lt;/jk&gt; if this parser subclasses from {@link ReaderParser}.<a name="line.175"></a>
-<span class="sourceLineNo">176</span>    *<a name="line.176"></a>
-<span class="sourceLineNo">177</span>    * @return &lt;jk&gt;true&lt;/jk&gt; if this parser subclasses from {@link ReaderParser}.<a name="line.177"></a>
-<span class="sourceLineNo">178</span>    */<a name="line.178"></a>
-<span class="sourceLineNo">179</span>   public abstract boolean isReaderParser();<a name="line.179"></a>
-<span class="sourceLineNo">180</span><a name="line.180"></a>
-<span class="sourceLineNo">181</span>   /**<a name="line.181"></a>
-<span class="sourceLineNo">182</span>    * Create the session object that will be passed in to the parse method.<a name="line.182"></a>
-<span class="sourceLineNo">183</span>    *<a name="line.183"></a>
-<span class="sourceLineNo">184</span>    * &lt;p&gt;<a name="line.184"></a>
-<span class="sourceLineNo">185</span>    * It's up to implementers to decide what the session object looks like, although typically it's going to be a<a name="line.185"></a>
-<span class="sourceLineNo">186</span>    * subclass of {@link ParserSession}.<a name="line.186"></a>
-<span class="sourceLineNo">187</span>    *<a name="line.187"></a>
-<span class="sourceLineNo">188</span>    * @param args<a name="line.188"></a>
-<span class="sourceLineNo">189</span>    *    Runtime arguments.<a name="line.189"></a>
-<span class="sourceLineNo">190</span>    * @return The new session.<a name="line.190"></a>
-<span class="sourceLineNo">191</span>    */<a name="line.191"></a>
-<span class="sourceLineNo">192</span>   public abstract ParserSession createSession(ParserSessionArgs args);<a name="line.192"></a>
-<span class="sourceLineNo">193</span><a name="line.193"></a>
-<span class="sourceLineNo">194</span><a name="line.194"></a>
-<span class="sourceLineNo">195</span>   //--------------------------------------------------------------------------------<a name="line.195"></a>
-<span class="sourceLineNo">196</span>   // Other methods<a name="line.196"></a>
-<span class="sourceLineNo">197</span>   //--------------------------------------------------------------------------------<a name="line.197"></a>
-<span class="sourceLineNo">198</span><a name="line.198"></a>
-<span class="sourceLineNo">199</span>   /**<a name="line.199"></a>
-<span class="sourceLineNo">200</span>    * Parses input into the specified object type.<a name="line.200"></a>
+<span class="sourceLineNo">153</span><a name="line.153"></a>
+<span class="sourceLineNo">154</span>   //--------------------------------------------------------------------------------<a name="line.154"></a>
+<span class="sourceLineNo">155</span>   // Abstract methods<a name="line.155"></a>
+<span class="sourceLineNo">156</span>   //--------------------------------------------------------------------------------<a name="line.156"></a>
+<span class="sourceLineNo">157</span><a name="line.157"></a>
+<span class="sourceLineNo">158</span>   /**<a name="line.158"></a>
+<span class="sourceLineNo">159</span>    * Returns &lt;jk&gt;true&lt;/jk&gt; if this parser subclasses from {@link ReaderParser}.<a name="line.159"></a>
+<span class="sourceLineNo">160</span>    *<a name="line.160"></a>
+<span class="sourceLineNo">161</span>    * @return &lt;jk&gt;true&lt;/jk&gt; if this parser subclasses from {@link ReaderParser}.<a name="line.161"></a>
+<span class="sourceLineNo">162</span>    */<a name="line.162"></a>
+<span class="sourceLineNo">163</span>   public abstract boolean isReaderParser();<a name="line.163"></a>
+<span class="sourceLineNo">164</span><a name="line.164"></a>
+<span class="sourceLineNo">165</span>   /**<a name="line.165"></a>
+<span class="sourceLineNo">166</span>    * Create the session object that will be passed in to the parse method.<a name="line.166"></a>
+<span class="sourceLineNo">167</span>    *<a name="line.167"></a>
+<span class="sourceLineNo">168</span>    * &lt;p&gt;<a name="line.168"></a>
+<span class="sourceLineNo">169</span>    * It's up to implementers to decide what the session object looks like, although typically it's going to be a<a name="line.169"></a>
+<span class="sourceLineNo">170</span>    * subclass of {@link ParserSession}.<a name="line.170"></a>
+<span class="sourceLineNo">171</span>    *<a name="line.171"></a>
+<span class="sourceLineNo">172</span>    * @param args<a name="line.172"></a>
+<span class="sourceLineNo">173</span>    *    Runtime arguments.<a name="line.173"></a>
+<span class="sourceLineNo">174</span>    * @return The new session.<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    */<a name="line.175"></a>
+<span class="sourceLineNo">176</span>   public abstract ParserSession createSession(ParserSessionArgs args);<a name="line.176"></a>
+<span class="sourceLineNo">177</span><a name="line.177"></a>
+<span class="sourceLineNo">178</span><a name="line.178"></a>
+<span class="sourceLineNo">179</span>   //--------------------------------------------------------------------------------<a name="line.179"></a>
+<span class="sourceLineNo">180</span>   // Other methods<a name="line.180"></a>
+<span class="sourceLineNo">181</span>   //--------------------------------------------------------------------------------<a name="line.181"></a>
+<span class="sourceLineNo">182</span><a name="line.182"></a>
+<span class="sourceLineNo">183</span>   /**<a name="line.183"></a>
+<span class="sourceLineNo">184</span>    * Parses input into the specified object type.<a name="line.184"></a>
+<span class="sourceLineNo">185</span>    *<a name="line.185"></a>
+<span class="sourceLineNo">186</span>    * &lt;p&gt;<a name="line.186"></a>
+<span class="sourceLineNo">187</span>    * The type can be a simple type (e.g. beans, strings, numbers) or parameterized type (collections/maps).<a name="line.187"></a>
+<span class="sourceLineNo">188</span>    *<a name="line.188"></a>
+<span class="sourceLineNo">189</span>    * &lt;h5 class='section'&gt;Examples:&lt;/h5&gt;<a name="line.189"></a>
+<span class="sourceLineNo">190</span>    * &lt;p class='bcode'&gt;<a name="line.190"></a>
+<span class="sourceLineNo">191</span>    *    ReaderParser p = JsonParser.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;;<a name="line.191"></a>
+<span class="sourceLineNo">192</span>    *<a name="line.192"></a>
+<span class="sourceLineNo">193</span>    *    &lt;jc&gt;// Parse into a linked-list of strings.&lt;/jc&gt;<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    *    List l = p.parse(json, LinkedList.&lt;jk&gt;class&lt;/jk&gt;, String.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    *<a name="line.195"></a>
+<span class="sourceLineNo">196</span>    *    &lt;jc&gt;// Parse into a linked-list of beans.&lt;/jc&gt;<a name="line.196"></a>
+<span class="sourceLineNo">197</span>    *    List l = p.parse(json, LinkedList.&lt;jk&gt;class&lt;/jk&gt;, MyBean.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.197"></a>
+<span class="sourceLineNo">198</span>    *<a name="line.198"></a>
+<span class="sourceLineNo">199</span>    *    &lt;jc&gt;// Parse into a linked-list of linked-lists of strings.&lt;/jc&gt;<a name="line.199"></a>
+<span class="sourceLineNo">200</span>    *    List l = p.parse(json, LinkedList.&lt;jk&gt;class&lt;/jk&gt;, LinkedList.&lt;jk&gt;class&lt;/jk&gt;, String.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.200"></a>
 <span class="sourceLineNo">201</span>    *<a name="line.201"></a>
-<span class="sourceLineNo">202</span>    * &lt;p&gt;<a name="line.202"></a>
-<span class="sourceLineNo">203</span>    * The type can be a simple type (e.g. beans, strings, numbers) or parameterized type (collections/maps).<a name="line.203"></a>
+<span class="sourceLineNo">202</span>    *    &lt;jc&gt;// Parse into a map of string keys/values.&lt;/jc&gt;<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    *    Map m = p.parse(json, TreeMap.&lt;jk&gt;class&lt;/jk&gt;, String.&lt;jk&gt;class&lt;/jk&gt;, String.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.203"></a>
 <span class="sourceLineNo">204</span>    *<a name="line.204"></a>
-<span class="sourceLineNo">205</span>    * &lt;h5 class='section'&gt;Examples:&lt;/h5&gt;<a name="line.205"></a>
-<span class="sourceLineNo">206</span>    * &lt;p class='bcode'&gt;<a name="line.206"></a>
-<span class="sourceLineNo">207</span>    *    ReaderParser p = JsonParser.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;;<a name="line.207"></a>
+<span class="sourceLineNo">205</span>    *    &lt;jc&gt;// Parse into a map containing string keys and values of lists containing beans.&lt;/jc&gt;<a name="line.205"></a>
+<span class="sourceLineNo">206</span>    *    Map m = p.parse(json, TreeMap.&lt;jk&gt;class&lt;/jk&gt;, String.&lt;jk&gt;class&lt;/jk&gt;, List.&lt;jk&gt;class&lt;/jk&gt;, MyBean.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.206"></a>
+<span class="sourceLineNo">207</span>    * &lt;/p&gt;<a name="line.207"></a>
 <span class="sourceLineNo">208</span>    *<a name="line.208"></a>
-<span class="sourceLineNo">209</span>    *    &lt;jc&gt;// Parse into a linked-list of strings.&lt;/jc&gt;<a name="line.209"></a>
-<span class="sourceLineNo">210</span>    *    List l = p.parse(json, LinkedList.&lt;jk&gt;class&lt;/jk&gt;, String.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.210"></a>
+<span class="sourceLineNo">209</span>    * &lt;p&gt;<a name="line.209"></a>
+<span class="sourceLineNo">210</span>    * &lt;code&gt;Collection&lt;/code&gt; classes are assumed to be followed by zero or one objects indicating the element type.<a name="line.210"></a>
 <span class="sourceLineNo">211</span>    *<a name="line.211"></a>
-<span class="sourceLineNo">212</span>    *    &lt;jc&gt;// Parse into a linked-list of beans.&lt;/jc&gt;<a name="line.212"></a>
-<span class="sourceLineNo">213</span>    *    List l = p.parse(json, LinkedList.&lt;jk&gt;class&lt;/jk&gt;, MyBean.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.213"></a>
+<span class="sourceLineNo">212</span>    * &lt;p&gt;<a name="line.212"></a>
+<span class="sourceLineNo">213</span>    * &lt;code&gt;Map&lt;/code&gt; classes are assumed to be followed by zero or two meta objects indicating the key and value types.<a name="line.213"></a>
 <span class="sourceLineNo">214</span>    *<a name="line.214"></a>
-<span class="sourceLineNo">215</span>    *    &lt;jc&gt;// Parse into a linked-list of linked-lists of strings.&lt;/jc&gt;<a name="line.215"></a>
-<span class="sourceLineNo">216</span>    *    List l = p.parse(json, LinkedList.&lt;jk&gt;class&lt;/jk&gt;, LinkedList.&lt;jk&gt;class&lt;/jk&gt;, String.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.216"></a>
+<span class="sourceLineNo">215</span>    * &lt;p&gt;<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    * The array can be arbitrarily long to indicate arbitrarily complex data structures.<a name="line.216"></a>
 <span class="sourceLineNo">217</span>    *<a name="line.217"></a>
-<span class="sourceLineNo">218</span>    *    &lt;jc&gt;// Parse into a map of string keys/values.&lt;/jc&gt;<a name="line.218"></a>
-<span class="sourceLineNo">219</span>    *    Map m = p.parse(json, TreeMap.&lt;jk&gt;class&lt;/jk&gt;, String.&lt;jk&gt;class&lt;/jk&gt;, String.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.219"></a>
-<span class="sourceLineNo">220</span>    *<a name="line.220"></a>
-<span class="sourceLineNo">221</span>    *    &lt;jc&gt;// Parse into a map containing string keys and values of lists containing beans.&lt;/jc&gt;<a name="line.221"></a>
-<span class="sourceLineNo">222</span>    *    Map m = p.parse(json, TreeMap.&lt;jk&gt;class&lt;/jk&gt;, String.&lt;jk&gt;class&lt;/jk&gt;, List.&lt;jk&gt;class&lt;/jk&gt;, MyBean.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.222"></a>
-<span class="sourceLineNo">223</span>    * &lt;/p&gt;<a name="line.223"></a>
-<span class="sourceLineNo">224</span>    *<a name="line.224"></a>
-<span class="sourceLineNo">225</span>    * &lt;p&gt;<a name="line.225"></a>
-<span class="sourceLineNo">226</span>    * &lt;code&gt;Collection&lt;/code&gt; classes are assumed to be followed by zero or one objects indicating the element type.<a name="line.226"></a>
-<span class="sourceLineNo">227</span>    *<a name="line.227"></a>
-<span class="sourceLineNo">228</span>    * &lt;p&gt;<a name="line.228"></a>
-<span class="sourceLineNo">229</span>    * &lt;code&gt;Map&lt;/code&gt; classes are assumed to be followed by zero or two meta objects indicating the key and value types.<a name="line.229"></a>
-<span class="sourceLineNo">230</span>    *<a name="line.230"></a>
-<span class="sourceLineNo">231</span>    * &lt;p&gt;<a name="line.231"></a>
-<span class="sourceLineNo">232</span>    * The array can be arbitrarily long to indicate arbitrarily complex data structures.<a name="line.232"></a>
-<span class="sourceLineNo">233</span>    *<a name="line.233"></a>
-<span class="sourceLineNo">234</span>    * &lt;h5 class='section'&gt;Notes:&lt;/h5&gt;<a name="line.234"></a>
-<span class="sourceLineNo">235</span>    * &lt;ul&gt;<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    *    &lt;li&gt;Use the {@link #parse(Object, Class)} method instead if you don't need a parameterized map/collection.<a name="line.236"></a>
-<span class="sourceLineNo">237</span>    * &lt;/ul&gt;<a name="line.237"></a>
-<span class="sourceLineNo">238</span>    *<a name="line.238"></a>
-<span class="sourceLineNo">239</span>    * @param &lt;T&gt; The class type of the object to create.<a name="line.239"></a>
-<span class="sourceLineNo">240</span>    * @param input<a name="line.240"></a>
-<span class="sourceLineNo">241</span>    *    The input.<a name="line.241"></a>
-<span class="sourceLineNo">242</span>    *    &lt;br&gt;Character-based parsers can handle the following input class types:<a name="line.242"></a>
-<span class="sourceLineNo">243</span>    *    &lt;ul&gt;<a name="line.243"></a>
-<span class="sourceLineNo">244</span>    *       &lt;li&gt;&lt;jk&gt;null&lt;/jk&gt;<a name="line.244"></a>
-<span class="sourceLineNo">245</span>    *       &lt;li&gt;{@link Reader}<a name="line.245"></a>
-<span class="sourceLineNo">246</span>    *       &lt;li&gt;{@link CharSequence}<a name="line.246"></a>
-<span class="sourceLineNo">247</span>    *       &lt;li&gt;{@link InputStream} containing UTF-8 encoded text (or charset defined by<a name="line.247"></a>
-<span class="sourceLineNo">248</span>    *          {@link ParserContext#PARSER_inputStreamCharset} property value).<a name="line.248"></a>
-<span class="sourceLineNo">249</span>    *       &lt;li&gt;&lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;[]&lt;/code&gt; containing UTF-8 encoded text (or charset defined by<a name="line.249"></a>
-<span class="sourceLineNo">250</span>    *          {@link ParserContext#PARSER_inputStreamCharset} property value).<a name="line.250"></a>
-<span class="sourceLineNo">251</span>    *       &lt;li&gt;{@link File} containing system encoded text (or charset defined by<a name="line.251"></a>
-<span class="sourceLineNo">252</span>    *          {@link ParserContext#PARSER_fileCharset} property value).<a name="line.252"></a>
-<span class="sourceLineNo">253</span>    *    &lt;/ul&gt;<a name="line.253"></a>
-<span class="sourceLineNo">254</span>    *    &lt;br&gt;Stream-based parsers can handle the following input class types:<a name="line.254"></a>
-<span class="sourceLineNo">255</span>    *    &lt;ul&gt;<a name="line.255"></a>
-<span class="sourceLineNo">256</span>    *       &lt;li&gt;&lt;jk&gt;null&lt;/jk&gt;<a name="line.256"></a>
-<span class="sourceLineNo">257</span>    *       &lt;li&gt;{@link InputStream}<a name="line.257"></a>
-<span class="sourceLineNo">258</span>    *       &lt;li&gt;&lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;[]&lt;/code&gt;<a name="line.258"></a>
-<span class="sourceLineNo">259</span>    *       &lt;li&gt;{@link File}<a name="line.259"></a>
-<span class="sourceLineNo">260</span>    *    &lt;/ul&gt;<a name="line.260"></a>
-<span class="sourceLineNo">261</span>    * @param type<a name="line.261"></a>
-<span class="sourceLineNo">262</span>    *    The object type to create.<a name="line.262"></a>
-<span class="sourceLineNo">263</span>    *    &lt;br&gt;Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},<a name="line.263"></a>
-<span class="sourceLineNo">264</span>    *    {@link GenericArrayType}<a name="line.264"></a>
-<span class="sourceLineNo">265</span>    * @param args<a name="line.265"></a>
-<span class="sourceLineNo">266</span>    *    The type arguments of the class if it's a collection or map.<a name="line.266"></a>
-<span class="sourceLineNo">267</span>    *    &lt;br&gt;Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},<a name="line.267"></a>
-<span class="sourceLineNo">268</span>    *    {@link GenericArrayType}<a name="line.268"></a>
-<span class="sourceLineNo">269</span>    *    &lt;br&gt;Ignored if the main type is not a map or collection.<a name="line.269"></a>
-<span class="sourceLineNo">270</span>    * @return The parsed object.<a name="line.270"></a>
-<span class="sourceLineNo">271</span>    * @throws ParseException<a name="line.271"></a>
-<span class="sourceLineNo">272</span>    *    If the input contains a syntax error or is malformed, or is not valid for the specified type.<a name="line.272"></a>
-<span class="sourceLineNo">273</span>    * @see BeanSession#getClassMeta(Type,Type...) for argument syntax for maps and collections.<a name="line.273"></a>
-<span class="sourceLineNo">274</span>    */<a name="line.274"></a>
-<span class="sourceLineNo">275</span>   public final &lt;T&gt; T parse(Object input, Type type, Type...args) throws ParseException {<a name="line.275"></a>
-<span class="sourceLineNo">276</span>      ParserSession session = createSession();<a name="line.276"></a>
-<span class="sourceLineNo">277</span>      try {<a name="line.277"></a>
-<span class="sourceLineNo">278</span>         return session.parse(input, type, args);<a name="line.278"></a>
-<span class="sourceLineNo">279</span>      } finally {<a name="line.279"></a>
-<span class="sourceLineNo">280</span>         session.close();<a name="line.280"></a>
-<span class="sourceLineNo">281</span>      }<a name="line.281"></a>
-<span class="sourceLineNo">282</span>   }<a name="line.282"></a>
-<span class="sourceLineNo">283</span><a name="line.283"></a>
-<span class="sourceLineNo">284</span>   /**<a name="line.284"></a>
-<span class="sourceLineNo">285</span>    * Same as {@link #parse(Object, Type, Type...)} except optimized for a non-parameterized class.<a name="line.285"></a>
+<span class="sourceLineNo">218</span>    * &lt;h5 class='section'&gt;Notes:&lt;/h5&gt;<a name="line.218"></a>
+<span class="sourceLineNo">219</span>    * &lt;ul&gt;<a name="line.219"></a>
+<span class="sourceLineNo">220</span>    *    &lt;li&gt;Use the {@link #parse(Object, Class)} method instead if you don't need a parameterized map/collection.<a name="line.220"></a>
+<span class="sourceLineNo">221</span>    * &lt;/ul&gt;<a name="line.221"></a>
+<span class="sourceLineNo">222</span>    *<a name="line.222"></a>
+<span class="sourceLineNo">223</span>    * @param &lt;T&gt; The class type of the object to create.<a name="line.223"></a>
+<span class="sourceLineNo">224</span>    * @param input<a name="line.224"></a>
+<span class="sourceLineNo">225</span>    *    The input.<a name="line.225"></a>
+<span class="sourceLineNo">226</span>    *    &lt;br&gt;Character-based parsers can handle the following input class types:<a name="line.226"></a>
+<span class="sourceLineNo">227</span>    *    &lt;ul&gt;<a name="line.227"></a>
+<span class="sourceLineNo">228</span>    *       &lt;li&gt;&lt;jk&gt;null&lt;/jk&gt;<a name="line.228"></a>
+<span class="sourceLineNo">229</span>    *       &lt;li&gt;{@link Reader}<a name="line.229"></a>
+<span class="sourceLineNo">230</span>    *       &lt;li&gt;{@link CharSequence}<a name="line.230"></a>
+<span class="sourceLineNo">231</span>    *       &lt;li&gt;{@link InputStream} containing UTF-8 encoded text (or charset defined by<a name="line.231"></a>
+<span class="sourceLineNo">232</span>    *          {@link ParserContext#PARSER_inputStreamCharset} property value).<a name="line.232"></a>
+<span class="sourceLineNo">233</span>    *       &lt;li&gt;&lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;[]&lt;/code&gt; containing UTF-8 encoded text (or charset defined by<a name="line.233"></a>
+<span class="sourceLineNo">234</span>    *          {@link ParserContext#PARSER_inputStreamCharset} property value).<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    *       &lt;li&gt;{@link File} containing system encoded text (or charset defined by<a name="line.235"></a>
+<span class="sourceLineNo">236</span>    *          {@link ParserContext#PARSER_fileCharset} property value).<a name="line.236"></a>
+<span class="sourceLineNo">237</span>    *    &lt;/ul&gt;<a name="line.237"></a>
+<span class="sourceLineNo">238</span>    *    &lt;br&gt;Stream-based parsers can handle the following input class types:<a name="line.238"></a>
+<span class="sourceLineNo">239</span>    *    &lt;ul&gt;<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    *       &lt;li&gt;&lt;jk&gt;null&lt;/jk&gt;<a name="line.240"></a>
+<span class="sourceLineNo">241</span>    *       &lt;li&gt;{@link InputStream}<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    *       &lt;li&gt;&lt;code&gt;&lt;jk&gt;byte&lt;/jk&gt;[]&lt;/code&gt;<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    *       &lt;li&gt;{@link File}<a name="line.243"></a>
+<span class="sourceLineNo">244</span>    *    &lt;/ul&gt;<a name="line.244"></a>
+<span class="sourceLineNo">245</span>    * @param type<a name="line.245"></a>
+<span class="sourceLineNo">246</span>    *    The object type to create.<a name="line.246"></a>
+<span class="sourceLineNo">247</span>    *    &lt;br&gt;Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},<a name="line.247"></a>
+<span class="sourceLineNo">248</span>    *    {@link GenericArrayType}<a name="line.248"></a>
+<span class="sourceLineNo">249</span>    * @param args<a name="line.249"></a>
+<span class="sourceLineNo">250</span>    *    The type arguments of the class if it's a collection or map.<a name="line.250"></a>
+<span class="sourceLineNo">251</span>    *    &lt;br&gt;Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},<a name="line.251"></a>
+<span class="sourceLineNo">252</span>    *    {@link GenericArrayType}<a name="line.252"></a>
+<span class="sourceLineNo">253</span>    *    &lt;br&gt;Ignored if the main type is not a map or collection.<a name="line.253"></a>
+<span class="sourceLineNo">254</span>    * @return The parsed object.<a name="line.254"></a>
+<span class="sourceLineNo">255</span>    * @throws ParseException<a name="line.255"></a>
+<span class="sourceLineNo">256</span>    *    If the input contains a syntax error or is malformed, or is not valid for the specified type.<a name="line.256"></a>
+<span class="sourceLineNo">257</span>    * @see BeanSession#getClassMeta(Type,Type...) for argument syntax for maps and collections.<a name="line.257"></a>
+<span class="sourceLineNo">258</span>    */<a name="line.258"></a>
+<span class="sourceLineNo">259</span>   public final &lt;T&gt; T parse(Object input, Type type, Type...args) throws ParseException {<a name="line.259"></a>
+<span class="sourceLineNo">260</span>      ParserSession session = createSession();<a name="line.260"></a>
+<span class="sourceLineNo">261</span>      try {<a name="line.261"></a>
+<span class="sourceLineNo">262</span>         return session.parse(input, type, args);<a name="line.262"></a>
+<span class="sourceLineNo">263</span>      } finally {<a name="line.263"></a>
+<span class="sourceLineNo">264</span>         session.close();<a name="line.264"></a>
+<span class="sourceLineNo">265</span>      }<a name="line.265"></a>
+<span class="sourceLineNo">266</span>   }<a name="line.266"></a>
+<span class="sourceLineNo">267</span><a name="line.267"></a>
+<span class="sourceLineNo">268</span>   /**<a name="line.268"></a>
+<span class="sourceLineNo">269</span>    * Same as {@link #parse(Object, Type, Type...)} except optimized for a non-parameterized class.<a name="line.269"></a>
+<span class="sourceLineNo">270</span>    *<a name="line.270"></a>
+<span class="sourceLineNo">271</span>    * &lt;p&gt;<a name="line.271"></a>
+<span class="sourceLineNo">272</span>    * This is the preferred parse method for simple types since you don't need to cast the results.<a name="line.272"></a>
+<span class="sourceLineNo">273</span>    *<a name="line.273"></a>
+<span class="sourceLineNo">274</span>    * &lt;h5 class='section'&gt;Examples:&lt;/h5&gt;<a name="line.274"></a>
+<span class="sourceLineNo">275</span>    * &lt;p class='bcode'&gt;<a name="line.275"></a>
+<span class="sourceLineNo">276</span>    *    ReaderParser p = JsonParser.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;;<a name="line.276"></a>
+<span class="sourceLineNo">277</span>    *<a name="line.277"></a>
+<span class="sourceLineNo">278</span>    *    &lt;jc&gt;// Parse into a string.&lt;/jc&gt;<a name="line.278"></a>
+<span class="sourceLineNo">279</span>    *    String s = p.parse(json, String.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.279"></a>
+<span class="sourceLineNo">280</span>    *<a name="line.280"></a>
+<span class="sourceLineNo">281</span>    *    &lt;jc&gt;// Parse into a bean.&lt;/jc&gt;<a name="line.281"></a>
+<span class="sourceLineNo">282</span>    *    MyBean b = p.parse(json, MyBean.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.282"></a>
+<span class="sourceLineNo">283</span>    *<a name="line.283"></a>
+<span class="sourceLineNo">284</span>    *    &lt;jc&gt;// Parse into a bean array.&lt;/jc&gt;<a name="line.284"></a>
+<span class="sourceLineNo">285</span>    *    MyBean[] ba = p.parse(json, MyBean[].&lt;jk&gt;class&lt;/jk&gt;);<a name="line.285"></a>
 <span class="sourceLineNo">286</span>    *<a name="line.286"></a>
-<span class="sourceLineNo">287</span>    * &lt;p&gt;<a name="line.287"></a>
-<span class="sourceLineNo">288</span>    * This is the preferred parse method for simple types since you don't need to cast the results.<a name="line.288"></a>
+<span class="sourceLineNo">287</span>    *    &lt;jc&gt;// Parse into a linked-list of objects.&lt;/jc&gt;<a name="line.287"></a>
+<span class="sourceLineNo">288</span>    *    List l = p.parse(json, LinkedList.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.288"></a>
 <span class="sourceLineNo">289</span>    *<a name="line.289"></a>
-<span class="sourceLineNo">290</span>    * &lt;h5 class='section'&gt;Examples:&lt;/h5&gt;<a name="line.290"></a>
-<span class="sourceLineNo">291</span>    * &lt;p class='bcode'&gt;<a name="line.291"></a>
-<span class="sourceLineNo">292</span>    *    ReaderParser p = JsonParser.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;;<a name="line.292"></a>
+<span class="sourceLineNo">290</span>    *    &lt;jc&gt;// Parse into a map of object keys/values.&lt;/jc&gt;<a name="line.290"></a>
+<span class="sourceLineNo">291</span>    *    Map m = p.parse(json, TreeMap.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.291"></a>
+<span class="sourceLineNo">292</span>    * &lt;/p&gt;<a name="line.292"></a>
 <span class="sourceLineNo">293</span>    *<a name="line.293"></a>
-<span class="sourceLineNo">294</span>    *    &lt;jc&gt;// Parse into a string.&lt;/jc&gt;<a name="line.294"></a>
-<span class="sourceLineNo">295</span>    *    String s = p.parse(json, String.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.295"></a>
-<span class="sourceLineNo">296</span>    *<a name="line.296"></a>
-<span class="sourceLineNo">297</span>    *    &lt;jc&gt;// Parse into a bean.&lt;/jc&gt;<a name="line.297"></a>
-<span class="sourceLineNo">298</span>    *    MyBean b = p.parse(json, MyBean.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.298"></a>
-<span class="sourceLineNo">299</span>    *<a name="line.299"></a>
-<span class="sourceLineNo">300</span>    *    &lt;jc&gt;// Parse into a bean array.&lt;/jc&gt;<a name="line.300"></a>
-<span class="sourceLineNo">301</span>    *    MyBean[] ba = p.parse(json, MyBean[].&lt;jk&gt;class&lt;/jk&gt;);<a name="line.301"></a>
-<span class="sourceLineNo">302</span>    *<a name="line.302"></a>
-<span class="sourceLineNo">303</span>    *    &lt;jc&gt;// Parse into a linked-list of objects.&lt;/jc&gt;<a name="line.303"></a>
-<span class="sourceLineNo">304</span>    *    List l = p.parse(json, LinkedList.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.304"></a>
-<span class="sourceLineNo">305</span>    *<a name="line.305"></a>
-<span class="sourceLineNo">306</span>    *    &lt;jc&gt;// Parse into a map of object keys/values.&lt;/jc&gt;<a name="line.306"></a>
-<span class="sourceLineNo">307</span>    *    Map m = p.parse(json, TreeMap.&lt;jk&gt;class&lt;/jk&gt;);<a name="line.307"></a>
-<span class="sourceLineNo">308</span>    * &lt;/p&gt;<a name="line.308"></a>
-<span class="sourceLineNo">309</span>    *<a name="line.309"></a>
-<span class="sourceLineNo">310</span>    * @param &lt;T&gt; The class type of the object being created.<a name="line.310"></a>
-<span class="sourceLineNo">311</span>    * @param input<a name="line.311"></a>
-<span class="sourceLineNo">312</span>    *    The input.<a name="line.312"></a>
-<span class="sourceLineNo">313</span>    *    See {@link #parse(Object, Type, Type...)} for details.<a name="line.313"></a>
-<span class="sourceLineNo">314</span>    * @param type The object type to create.<a name="line.314"></a>
-<span class="sourceLineNo">315</span>    * @return The parsed object.<a name="line.315"></a>
-<span class="sourceLineNo">316</span>    * @throws ParseException<a name="line.316"></a>
-<span class="sourceLineNo">317</span>    *    If the input contains a syntax error or is malformed, or is not valid for the specified type.<a name="line.317"></a>
-<span class="sourceLineNo">318</span>    */<a name="line.318"></a>
-<span class="sourceLineNo">319</span>   public final &lt;T&gt; T parse(Object input, Class&lt;T&gt; type) throws ParseException {<a name="line.319"></a>
-<span class="sourceLineNo">320</span>      ParserSession session = createSession();<a name="line.320"></a>
-<span class="sourceLineNo">321</span>      try {<a name="line.321"></a>
-<span class="sourceLineNo">322</span>         return session.parse(input, type);<a name="line.322"></a>
-<span class="sourceLineNo">323</span>      } finally {<a name="line.323"></a>
-<span class="sourceLineNo">324</span>         session.close();<a name="line.324"></a>
-<span class="sourceLineNo">325</span>      }<a name="line.325"></a>
-<span class="sourceLineNo">326</span>   }<a name="line.326"></a>
-<span class="sourceLineNo">327</span><a name="line.327"></a>
-<span class="sourceLineNo">328</span>   /**<a name="line.328"></a>
-<span class="sourceLineNo">329</span>    * Same as {@link #parse(Object, Type, Type...)} except the type has already been converted into a {@link ClassMeta}<a name="line.329"></a>
-<span class="sourceLineNo">330</span>    * object.<a name="line.330"></a>
-<span class="sourceLineNo">331</span>    *<a name="line.331"></a>
-<span class="sourceLineNo">332</span>    * &lt;p&gt;<a name="line.332"></a>
-<span class="sourceLineNo">333</span>    * This is mostly an internal method used by the framework.<a name="line.333"></a>
-<span class="sourceLineNo">334</span>    *<a name="line.334"></a>
-<span class="sourceLineNo">335</span>    * @param &lt;T&gt; The class type of the object being created.<a name="line.335"></a>
-<span class="sourceLineNo">336</span>    * @param input<a name="line.336"></a>
-<span class="sourceLineNo">337</span>    *    The input.<a name="line.337"></a>
-<span class="sourceLineNo">338</span>    *    See {@link #parse(Object, Type, Type...)} for details.<a name="line.338"></a>
-<span class="sourceLineNo">339</span>    * @param type The object type to create.<a name="line.339"></a>
-<span class="sourceLineNo">340</span>    * @return The parsed object.<a name="line.340"></a>
-<span class="sourceLineNo">341</span>    * @throws ParseException<a name="line.341"></a>
-<span class="sourceLineNo">342</span>    *    If the input contains a syntax error or is malformed, or is not valid for the specified type.<a name="line.342"></a>
-<span class="sourceLineNo">343</span>    */<a name="line.343"></a>
-<span class="sourceLineNo">344</span>   public final &lt;T&gt; T parse(Object input, ClassMeta&lt;T&gt; type) throws ParseException {<a name="line.344"></a>
-<span class="sourceLineNo">345</span>      ParserSession session = createSession();<a name="line.345"></a>
-<span class="sourceLineNo">346</span>      try {<a name="line.346"></a>
-<span class="sourceLineNo">347</span>         return session.parse(input, type);<a name="line.347"></a>
-<span class="sourceLineNo">348</span>      } finally {<a name="line.348"></a>
-<span class="sourceLineNo">349</span>         session.close();<a name="line.349"></a>
-<span class="sourceLineNo">350</span>      }<a name="line.350"></a>
-<span class="sourceLineNo">351</span>   }<a name="line.351"></a>
-<span class="sourceLineNo">352</span><a name="line.352"></a>
-<span class="sourceLineNo">353</span>   /**<a name="line.353"></a>
-<span class="sourceLineNo">354</span>    * Create a basic session object without overriding properties or specifying &lt;code&gt;javaMethod&lt;/code&gt;.<a name="line.354"></a>
-<span class="sourceLineNo">355</span>    *<a name="line.355"></a>
-<span class="sourceLineNo">356</span>    * &lt;p&gt;<a name="line.356"></a>
-<span class="sourceLineNo">357</span>    * Equivalent to calling &lt;code&gt;createSession(&lt;jk&gt;null&lt;/jk&gt;, &lt;jk&gt;null&lt;/jk&gt;)&lt;/code&gt;.<a name="line.357"></a>
-<span class="sourceLineNo">358</span>    *<a name="line.358"></a>
-<span class="sourceLineNo">359</span>    * @return The new context.<a name="line.359"></a>
-<span class="sourceLineNo">360</span>    */<a name="line.360"></a>
-<span class="sourceLineNo">361</span>   public final ParserSession createSession() {<a name="line.361"></a>
-<span class="sourceLineNo">362</span>      return createSession(null);<a name="line.362"></a>
-<span class="sourceLineNo">363</span>   }<a name="line.363"></a>
-<span class="sourceLineNo">364</span><a name="line.364"></a>
-<span class="sourceLineNo">365</span><a name="line.365"></a>
-<span class="sourceLineNo">366</span>   //--------------------------------------------------------------------------------<a name="line.366"></a>
-<span class="sourceLineNo">367</span>   // Optional methods<a name="line.367"></a>
-<span class="sourceLineNo">368</span>   //--------------------------------------------------------------------------------<a name="line.368"></a>
-<span class="sourceLineNo">369</span><a name="line.369"></a>
-<span class="sourceLineNo">370</span>   /**<a name="line.370"></a>
-<span class="sourceLineNo">371</span>    * Parses the contents of the specified reader and loads the results into the specified map.<a name="line.371"></a>
-<span class="sourceLineNo">372</span>    *<a name="line.372"></a>
-<span class="sourceLineNo">373</span>    * &lt;p&gt;<a name="line.373"></a>
-<span class="sourceLineNo">374</span>    * Reader must contain something that serializes to a map (such as text containing a JSON object).<a name="line.374"></a>
-<span class="sourceLineNo">375</span>    *<a name="line.375"></a>
-<span class="sourceLineNo">376</span>    * &lt;p&gt;<a name="line.376"></a>
-<span class="sourceLineNo">377</span>    * Used in the following locations:<a name="line.377"></a>
-<span class="sourceLineNo">378</span>    * &lt;ul class='spaced-list'&gt;<a name="line.378"></a>
-<span class="sourceLineNo">379</span>    *    &lt;li&gt;<a name="line.379"></a>
-<span class="sourceLineNo">380</span>    *       The various character-based constructors in {@link ObjectMap} (e.g.<a name="line.380"></a>
-<span class="sourceLineNo">381</span>    *       {@link ObjectMap#ObjectMap(CharSequence,Parser)}).<a name="line.381"></a>
-<span class="sourceLineNo">382</span>    * &lt;/ul&gt;<a name="line.382"></a>
-<span class="sourceLineNo">383</span>    *<a name="line.383"></a>
-<span class="sourceLineNo">384</span>    * @param &lt;K&gt; The key class type.<a name="line.384"></a>
-<span class="sourceLineNo">385</span>    * @param &lt;V&gt; The value class type.<a name="line.385"></a>
-<span class="sourceLineNo">386</span>    * @param input The input.  See {@link #parse(Object, ClassMeta)} for supported input types.<a name="line.386"></a>
-<span class="sourceLineNo">387</span>    * @param m The map being loaded.<a name="line.387"></a>
-<span class="sourceLineNo">388</span>    * @param keyType The class type of the keys, or &lt;jk&gt;null&lt;/jk&gt; to default to &lt;code&gt;String.&lt;jk&gt;class&lt;/jk&gt;&lt;/code&gt;.<a name="line.388"></a>
-<span class="sourceLineNo">389</span>    * @param valueType The class type of the values, or &lt;jk&gt;null&lt;/jk&gt; to default to whatever is being parsed.<a name="line.389"></a>
-<span class="sourceLineNo">390</span>    * @return The same map that was passed in to allow this method to be chained.<a name="line.390"></a>
-<span class="sourceLineNo">391</span>    * @throws ParseException If the input contains a syntax error or is malformed, or is not valid for the specified type.<a name="line.391"></a>
-<span class="sourceLineNo">392</span>    * @throws UnsupportedOperationException If not implemented.<a name="line.392"></a>
-<span class="sourceLineNo">393</span>    */<a name="line.393"></a>
-<span class="sourceLineNo">394</span>   public final &lt;K,V&gt; Map&lt;K,V&gt; parseIntoMap(Object input, Map&lt;K,V&gt; m, Type keyType, Type valueType) throws ParseException {<a name="line.394"></a>
-<span class="sourceLineNo">395</span>      ParserSession session = createSession();<a name="line.395"></a>
-<span class="sourceLineNo">396</span>      try {<a name="line.396"></a>
-<span class="sourceLineNo">397</span>         return session.parseIntoMap(input, m, keyType, valueType);<a name="line.397"></a>
-<span class="sourceLineNo">398</span>      } finally {<a name="line.398"></a>
-<span class="sourceLineNo">399</span>         session.close();<a name="line.399"></a>
-<span class="sourceLineNo">400</span>      }<a name="line.400"></a>
-<span class="sourceLineNo">401</span>   }<a name="line.401"></a>
-<span class="sourceLineNo">402</span><a name="line.402"></a>
-<span class="sourceLineNo">403</span>   /**<a name="line.403"></a>
-<span class="sourceLineNo">404</span>    * Parses the contents of the specified reader and loads the results into the specified collection.<a name="line.404"></a>
-<span class="sourceLineNo">405</span>    *<a name="line.405"></a>
-<span class="sourceLineNo">406</span>    * &lt;p&gt;<a name="line.406"></a>
-<span class="sourceLineNo">407</span>    * Used in the following locations:<a name="line.407"></a>
-<span class="sourceLineNo">408</span>    * &lt;ul class='spaced-list'&gt;<a name="line.408"></a>
-<span class="sourceLineNo">409</span>    *    &lt;li&gt;<a name="line.409"></a>
-<span class="sourceLineNo">410</span>    *       The various character-based constructors in {@link ObjectList} (e.g.<a name="line.410"></a>
-<span class="sourceLineNo">411</span>    *       {@link ObjectList#ObjectList(CharSequence,Parser)}.<a name="line.411"></a>
-<span class="sourceLineNo">412</span>    * &lt;/ul&gt;<a name="line.412"></a>
-<span class="sourceLineNo">413</span>    *<a name="line.413"></a>
-<span class="sourceLineNo">414</span>    * @param &lt;E&gt; The element class type.<a name="line.414"></a>
-<span class="sourceLineNo">415</span>    * @param input The input.  See {@link #parse(Object, ClassMeta)} for supported input types.<a name="line.415"></a>
-<span class="sourceLineNo">416</span>    * @param c The collection being loaded.<a name="line.416"></a>
-<span class="sourceLineNo">417</span>    * @param elementType The class type of the elements, or &lt;jk&gt;null&lt;/jk&gt; to default to whatever is being parsed.<a name="line.417"></a>
-<span class="sourceLineNo">418</span>    * @return The same collection that was passed in to allow this method to be chained.<a name="line.418"></a>
-<span class="sourceLineNo">419</span>    * @throws ParseException<a name="line.419"></a>
-<span class="sourceLineNo">420</span>    *    If the input contains a syntax error or is malformed, or is not valid for the specified type.<a name="line.420"></a>
-<span class="sourceLineNo">421</span>    * @throws UnsupportedOperationException If not implemented.<a name="line.421"></a>
-<span class="sourceLineNo">422</span>    */<a name="line.422"></a>
-<span class="sourceLineNo">423</span>   public final &lt;E&gt; Collection&lt;E&gt; parseIntoCollection(Object input, Collection&lt;E&gt; c, Type elementType) throws ParseException {<a name="line.423"></a>
-<span class="sourceLineNo">424</span>      ParserSession session = createSession();<a name="line.424"></a>
-<span class="sourceLineNo">425</span>      try {<a name="line.425"></a>
-<span class="sourceLineNo">426</span>         return session.parseIntoCollection(input, c, elementType);<a name="line.426"></a>
-<span class="sourceLineNo">427</span>      } finally {<a name="line.427"></a>
-<span class="sourceLineNo">428</span>         session.close();<a name="line.428"></a>
-<span class="sourceLineNo">429</span>      }<a name="line.429"></a>
-<span class="sourceLineNo">430</span>   }<a name="line.430"></a>
-<span class="sourceLineNo">431</span><a name="line.431"></a>
-<span class="sourceLineNo">432</span>   /**<a name="line.432"></a>
-<span class="sourceLineNo">433</span>    * Parses the specified array input with each entry in the object defined by the {@code argTypes}<a name="line.433"></a>
-<span class="sourceLineNo">434</span>    * argument.<a name="line.434"></a>
-<span class="sourceLineNo">435</span>    *<a name="line.435"></a>
-<span class="sourceLineNo">436</span>    * &lt;p&gt;<a name="line.436"></a>
-<span class="sourceLineNo">437</span>    * Used for converting arrays (e.g. &lt;js&gt;"[arg1,arg2,...]"&lt;/js&gt;) into an {@code Object[]} that can be passed<a name="line.437"></a>
-<span class="sourceLineNo">438</span>    * to the {@code Method.invoke(target, args)} method.<a name="line.438"></a>
-<span class="sourceLineNo">439</span>    *<a name="line.439"></a>
-<span class="sourceLineNo">440</span>    * &lt;p&gt;<a name="line.440"></a>
-<span class="sourceLineNo">441</span>    * Used in the following locations:<a name="line.441"></a>
-<span class="sourceLineNo">442</span>    * &lt;ul class='spaced-list'&gt;<a name="line.442"></a>
-<span class="sourceLineNo">443</span>    *    &lt;li&gt;<a name="line.443"></a>
-<span class="sourceLineNo">444</span>    *       Used to parse argument strings in the {@link PojoIntrospector#invokeMethod(Method, Reader)} method.<a name="line.444"></a>
-<span class="sourceLineNo">445</span>    * &lt;/ul&gt;<a name="line.445"></a>
-<span class="sourceLineNo">446</span>    *<a name="line.446"></a>
-<span class="sourceLineNo">447</span>    * @param input The input.  Subclasses can support different input types.<a name="line.447"></a>
-<span class="sourceLineNo">448</span>    * @param argTypes Specifies the type of objects to create for each entry in the array.<a name="line.448"></a>
-<span class="sourceLineNo">449</span>    * @return An array of parsed objects.<a name="line.449"></a>
-<span class="sourceLineNo">450</span>    * @throws ParseException<a name="line.450"></a>
-<span class="sourceLineNo">451</span>    *    If the input contains a syntax error or is malformed, or is not valid for the specified type.<a name="line.451"></a>
-<span class="sourceLineNo">452</span>    */<a name="line.452"></a>
-<span class="sourceLineNo">453</span>   public final Object[] parseArgs(Object input, Type[] argTypes) throws ParseException {<a name="line.453"></a>
-<span class="sourceLineNo">454</span>      if (argTypes == null || argTypes.length == 0)<a name="line.454"></a>
-<span class="sourceLineNo">455</span>         return new Object[0];<a name="line.455"></a>
-<span class="sourceLineNo">456</span>      ParserSession session = createSession();<a name="line.456"></a>
-<span class="sourceLineNo">457</span>      try {<a name="line.457"></a>
-<span class="sourceLineNo">458</span>         return session.parseArgs(input, argTypes);<a name="line.458"></a>
-<span class="sourceLineNo">459</span>      } finally {<a name="line.459"></a>
-<span class="sourceLineNo">460</span>         session.close();<a name="line.460"></a>
-<span class="sourceLineNo">461</span>      }<a name="line.461"></a>
-<span class="sourceLineNo">462</span>   }<a name="line.462"></a>
-<span class="sourceLineNo">463</span><a name="line.463"></a>
-<span class="sourceLineNo">464</span><a name="line.464"></a>
-<span class="sourceLineNo">465</span>   //--------------------------------------------------------------------------------<a name="line.465"></a>
-<span class="sourceLineNo">466</span>   // Other methods<a name="line.466"></a>
-<span class="sourceLineNo">467</span>   //--------------------------------------------------------------------------------<a name="line.467"></a>
-<span class="sourceLineNo">468</span><a name="line.468"></a>
-<span class="sourceLineNo">469</span>   /**<a name="line.469"></a>
-<span class="sourceLineNo">470</span>    * Returns the media types handled based on the value of the {@link Consumes} annotation on the parser class.<a name="line.470"></a>
-<span class="sourceLineNo">471</span>    *<a name="line.471"></a>
-<span class="sourceLineNo">472</span>    * &lt;p&gt;<a name="line.472"></a>
-<span class="sourceLineNo">473</span>    * This method can be overridden by subclasses to determine the media types programmatically.<a name="line.473"></a>
+<span class="sourceLineNo">294</span>    * @param &lt;T&gt; The class type of the object being created.<a name="line.294"></a>
+<span class="sourceLineNo">295</span>    * @param input<a name="line.295"></a>
+<span class="sourceLineNo">296</span>    *    The input.<a name="line.296"></a>
+<span class="sourceLineNo">297</span>    *    See {@link #parse(Object, Type, Type...)} for details.<a name="line.297"></a>
+<span class="sourceLineNo">298</span>    * @param type The object type to create.<a name="line.298"></a>
+<span class="sourceLineNo">299</span>    * @return The parsed object.<a name="line.299"></a>
+<span class="sourceLineNo">300</span>    * @throws ParseException<a name="line.300"></a>
+<span class="sourceLineNo">301</span>    *    If the input contains a syntax error or is malformed, or is not valid for the specified type.<a name="line.301"></a>
+<span class="sourceLineNo">302</span>    */<a name="line.302"></a>
+<span class="sourceLineNo">303</span>   public final &lt;T&gt; T parse(Object input, Class&lt;T&gt; type) throws ParseException {<a name="line.303"></a>
+<span class="sourceLineNo">304</span>      ParserSession session = createSession();<a name="line.304"></a>
+<span class="sourceLineNo">305</span>      try {<a name="line.305"></a>
+<span class="sourceLineNo">306</span>         return session.parse(input, type);<a name="line.306"></a>
+<span class="sourceLineNo">307</span>      } finally {<a name="line.307"></a>
+<span class="sourceLineNo">308</span>         session.close();<a name="line.308"></a>
+<span class="sourceLineNo">309</span>      }<a name="line.309"></a>
+<span class="sourceLineNo">310</span>   }<a name="line.310"></a>
+<span class="sourceLineNo">311</span><a name="line.311"></a>
+<span class="sourceLineNo">312</span>   /**<a name="line.312"></a>
+<span class="sourceLineNo">313</span>    * Same as {@link #parse(Object, Type, Type...)} except the type has already been converted into a {@link ClassMeta}<a name="line.313"></a>
+<span class="sourceLineNo">314</span>    * object.<a name="line.314"></a>
+<span class="sourceLineNo">315</span>    *<a name="line.315"></a>
+<span class="sourceLineNo">316</span>    * &lt;p&gt;<a name="line.316"></a>
+<span class="sourceLineNo">317</span>    * This is mostly an internal method used by the framework.<a name="line.317"></a>
+<span class="sourceLineNo">318</span>    *<a name="line.318"></a>
+<span class="sourceLineNo">319</span>    * @param &lt;T&gt; The class type of the object being created.<a name="line.319"></a>
+<span class="sourceLineNo">320</span>    * @param input<a name="line.320"></a>
+<span class="sourceLineNo">321</span>    *    The input.<a name="line.321"></a>
+<span class="sourceLineNo">322</span>    *    See {@link #parse(Object, Type, Type...)} for details.<a name="line.322"></a>
+<span class="sourceLineNo">323</span>    * @param type The object type to create.<a name="line.323"></a>
+<span class="sourceLineNo">324</span>    * @return The parsed object.<a name="line.324"></a>
+<span class="sourceLineNo">325</span>    * @throws ParseException<a name="line.325"></a>
+<span class="sourceLineNo">326</span>    *    If the input contains a syntax error or is malformed, or is not valid for the specified type.<a name="line.326"></a>
+<span class="sourceLineNo">327</span>    */<a name="line.327"></a>
+<span class="sourceLineNo">328</span>   public final &lt;T&gt; T parse(Object input, ClassMeta&lt;T&gt; type) throws ParseException {<a name="line.328"></a>
+<span class="sourceLineNo">329</span>      ParserSession session = createSession();<a name="line.329"></a>
+<span class="sourceLineNo">330</span>      try {<a name="line.330"></a>
+<span class="sourceLineNo">331</span>         return session.parse(input, type);<a name="line.331"></a>
+<span class="sourceLineNo">332</span>      } finally {<a name="line.332"></a>
+<span class="sourceLineNo">333</span>         session.close();<a name="line.333"></a>
+<span class="sourceLineNo">334</span>      }<a name="line.334"></a>
+<span class="sourceLineNo">335</span>   }<a name="line.335"></a>
+<span class="sourceLineNo">336</span><a name="line.336"></a>
+<span class="sourceLineNo">337</span>   /**<a name="line.337"></a>
+<span class="sourceLineNo">338</span>    * Create a basic session object without overriding properties or specifying &lt;code&gt;javaMethod&lt;/code&gt;.<a name="line.338"></a>
+<span class="sourceLineNo">339</span>    *<a name="line.339"></a>
+<span class="sourceLineNo">340</span>    * &lt;p&gt;<a name="line.340"></a>
+<span class="sourceLineNo">341</span>    * Equivalent to calling &lt;code&gt;createSession(&lt;jk&gt;null&lt;/jk&gt;, &lt;jk&gt;null&lt;/jk&gt;)&lt;/code&gt;.<a name="line.341"></a>
+<span class="sourceLineNo">342</span>    *<a name="line.342"></a>
+<span class="sourceLineNo">343</span>    * @return The new context.<a name="line.343"></a>
+<span class="sourceLineNo">344</span>    */<a name="line.344"></a>
+<span class="sourceLineNo">345</span>   public final ParserSession createSession() {<a name="line.345"></a>
+<span class="sourceLineNo">346</span>      return createSession(createDefaultSessionArgs());<a name="line.346"></a>
+<span class="sourceLineNo">347</span>   }<a name="line.347"></a>
+<span class="sourceLineNo">348</span><a name="line.348"></a>
+<span class="sourceLineNo">349</span>   /**<a name="line.349"></a>
+<span class="sourceLineNo">350</span>    * Creates the session arguments object that gets passed to the {@link #createSession(ParserSessionArgs)} method.<a name="line.350"></a>
+<span class="sourceLineNo">351</span>    *<a name="line.351"></a>
+<span class="sourceLineNo">352</span>    * @return<a name="line.352"></a>
+<span class="sourceLineNo">353</span>    *    A new default session arguments object.<a name="line.353"></a>
+<span class="sourceLineNo">354</span>    *    &lt;p&gt;The arguments can be modified before passing to the {@link #createSession(ParserSessionArgs)}.<a name="line.354"></a>
+<span class="sourceLineNo">355</span>    */<a name="line.355"></a>
+<span class="sourceLineNo">356</span>   protected final ParserSessionArgs createDefaultSessionArgs() {<a name="line.356"></a>
+<span class="sourceLineNo">357</span>      return new ParserSessionArgs(ObjectMap.EMPTY_MAP, null, null, null, getPrimaryMediaType(), null);<a name="line.357"></a>
+<span class="sourceLineNo">358</span>   }<a name="line.358"></a>
+<span class="sourceLineNo">359</span><a name="line.359"></a>
+<span class="sourceLineNo">360</span>   //--------------------------------------------------------------------------------<a name="line.360"></a>
+<span class="sourceLineNo">361</span>   // Optional methods<a name="line.361"></a>
+<span class="sourceLineNo">362</span>   //--------------------------------------------------------------------------------<a name="line.362"></a>
+<span class="sourceLineNo">363</span><a name="line.363"></a>
+<span class="sourceLineNo">364</span>   /**<a name="line.364"></a>
+<span class="sourceLineNo">365</span>    * Parses the contents of the specified reader and loads the results into the specified map.<a name="line.365"></a>
+<span class="sourceLineNo">366</span>    *<a name="line.366"></a>
+<span class="sourceLineNo">367</span>    * &lt;p&gt;<a name="line.367"></a>
+<span class="sourceLineNo">368</span>    * Reader must contain something that serializes to a map (such as text containing a JSON object).<a name="line.368"></a>
+<span class="sourceLineNo">369</span>    *<a name="line.369"></a>
+<span class="sourceLineNo">370</span>    * &lt;p&gt;<a name="line.370"></a>
+<span class="sourceLineNo">371</span>    * Used in the following locations:<a name="line.371"></a>
+<span class="sourceLineNo">372</span>    * &lt;ul class='spaced-list'&gt;<a name="line.372"></a>
+<span class="sourceLineNo">373</span>    *    &lt;li&gt;<a name="line.373"></a>
+<span class="sourceLineNo">374</span>    *       The various character-based constructors in {@link ObjectMap} (e.g.<a name="line.374"></a>
+<span class="sourceLineNo">375</span>    *       {@link ObjectMap#ObjectMap(CharSequence,Parser)}).<a name="line.375"></a>
+<span class="sourceLineNo">376</span>    * &lt;/ul&gt;<a name="line.376"></a>
+<span class="sourceLineNo">377</span>    *<a name="line.377"></a>
+<span class="sourceLineNo">378</span>    * @param &lt;K&gt; The key class type.<a name="line.378"></a>
+<span class="sourceLineNo">379</span>    * @param &lt;V&gt; The value class type.<a name="line.379"></a>
+<span class="sourceLineNo">380</span>    * @param input The input.  See {@link #parse(Object, ClassMeta)} for supported input types.<a name="line.380"></a>
+<span class="sourceLineNo">381</span>    * @param m The map being loaded.<a name="line.381"></a>
+<span class="sourceLineNo">382</span>    * @param keyType The class type of the keys, or &lt;jk&gt;null&lt;/jk&gt; to default to &lt;code&gt;String.&lt;jk&gt;class&lt;/jk&gt;&lt;/code&gt;.<a name="line.382"></a>
+<span class="sourceLineNo">383</span>    * @param valueType The class type of the values, or &lt;jk&gt;null&lt;/jk&gt; to default to whatever is being parsed.<a name="line.383"></a>
+<span class="sourceLineNo">384</span>    * @return The same map that was passed in to allow this method to be chained.<a name="line.384"></a>
+<span class="sourceLineNo">385</span>    * @throws ParseException If the input contains a syntax error or is malformed, or is not valid for the specified type.<a name="line.385"></a>
+<span class="sourceLineNo">386</span>    * @throws UnsupportedOperationException If not implemented.<a name="line.386"></a>
+<span class="sourceLineNo">387</span>    */<a name="line.387"></a>
+<span class="sourceLineNo">388</span>   public final &lt;K,V&gt; Map&lt;K,V&gt; parseIntoMap(Object input, Map&lt;K,V&gt; m, Type keyType, Type valueType) throws ParseException {<a name="line.388"></a>
+<span class="sourceLineNo">389</span>      ParserSession session = createSession();<a name="line.389"></a>
+<span class="sourceLineNo">390</span>      try {<a name="line.390"></a>
+<span class="sourceLineNo">391</span>         return session.parseIntoMap(input, m, keyType, valueType);<a name="line.391"></a>
+<span class="sourceLineNo">392</span>      } finally {<a name="line.392"></a>
+<span class="sourceLineNo">393</span>         session.close();<a name="line.393"></a>
+<span class="sourceLineNo">394</span>      }<a name="line.394"></a>
+<span class="sourceLineNo">395</span>   }<a name="line.395"></a>
+<span class="sourceLineNo">396</span><a name="line.396"></a>
+<span class="sourceLineNo">397</span>   /**<a name="line.397"></a>
+<span class="sourceLineNo">398</span>    * Parses the contents of the specified reader and loads the results into the specified collection.<a name="line.398"></a>
+<span class="sourceLineNo">399</span>    *<a name="line.399"></a>
+<span class="sourceLineNo">400</span>    * &lt;p&gt;<a name="line.400"></a>
+<span class="sourceLineNo">401</span>    * Used in the following locations:<a name="line.401"></a>
+<span class="sourceLineNo">402</span>    * &lt;ul class='spaced-list'&gt;<a name="line.402"></a>
+<span class="sour

<TRUNCATED>


[03/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.Sq.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.Sq.html b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.Sq.html
index 957e688..1f13575 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.Sq.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.Sq.html
@@ -24,235 +24,258 @@
 <span class="sourceLineNo">016</span>import static org.apache.juneau.xml.XmlSerializerContext.*;<a name="line.16"></a>
 <span class="sourceLineNo">017</span><a name="line.17"></a>
 <span class="sourceLineNo">018</span>import org.apache.juneau.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.annotation.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.json.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span>import org.apache.juneau.serializer.*;<a name="line.21"></a>
-<span class="sourceLineNo">022</span><a name="line.22"></a>
-<span class="sourceLineNo">023</span>/**<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * Serializes POJO models to XML.<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * &lt;p&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * See the {@link JsonSerializer} class for details on how Java models map to JSON.<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *<a name="line.36"></a>
-<span class="sourceLineNo">037</span> * &lt;p&gt;<a name="line.37"></a>
-<span class="sourceLineNo">038</span> * For example, the following JSON...<a name="line.38"></a>
-<span class="sourceLineNo">039</span> * &lt;p class='bcode'&gt;<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *    {<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *       name:&lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.41"></a>
-<span class="sourceLineNo">042</span> *       address: {<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *          streetAddress: &lt;js&gt;'21 2nd Street'&lt;/js&gt;,<a name="line.43"></a>
-<span class="sourceLineNo">044</span> *          city: &lt;js&gt;'New York'&lt;/js&gt;,<a name="line.44"></a>
-<span class="sourceLineNo">045</span> *          state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.45"></a>
-<span class="sourceLineNo">046</span> *          postalCode: &lt;js&gt;10021&lt;/js&gt;<a name="line.46"></a>
-<span class="sourceLineNo">047</span> *       },<a name="line.47"></a>
-<span class="sourceLineNo">048</span> *       phoneNumbers: [<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *          &lt;js&gt;'212 555-1111'&lt;/js&gt;,<a name="line.49"></a>
-<span class="sourceLineNo">050</span> *          &lt;js&gt;'212 555-2222'&lt;/js&gt;<a name="line.50"></a>
-<span class="sourceLineNo">051</span> *       ],<a name="line.51"></a>
-<span class="sourceLineNo">052</span> *       additionalInfo: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.52"></a>
-<span class="sourceLineNo">053</span> *       remote: &lt;jk&gt;false&lt;/jk&gt;,<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *       height: &lt;js&gt;62.4&lt;/js&gt;,<a name="line.54"></a>
-<span class="sourceLineNo">055</span> *       &lt;js&gt;'fico score'&lt;/js&gt;:  &lt;js&gt;' &amp;gt; 640'&lt;/js&gt;<a name="line.55"></a>
-<span class="sourceLineNo">056</span> *    }<a name="line.56"></a>
-<span class="sourceLineNo">057</span> * &lt;p&gt;<a name="line.57"></a>
-<span class="sourceLineNo">058</span> *    ...maps to the following XML using the default serializer...<a name="line.58"></a>
-<span class="sourceLineNo">059</span> * &lt;p class='bcode'&gt;<a name="line.59"></a>
-<span class="sourceLineNo">060</span> *    &lt;xt&gt;&amp;lt;object&amp;gt;&lt;/xt&gt;<a name="line.60"></a>
-<span class="sourceLineNo">061</span> *       &lt;xt&gt;&amp;lt;name&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.61"></a>
-<span class="sourceLineNo">062</span> *       &lt;xt&gt;&amp;lt;address&amp;gt;&lt;/xt&gt;<a name="line.62"></a>
-<span class="sourceLineNo">063</span> *          &lt;xt&gt;&amp;lt;streetAddress&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.63"></a>
-<span class="sourceLineNo">064</span> *          &lt;xt&gt;&amp;lt;city&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.64"></a>
-<span class="sourceLineNo">065</span> *          &lt;xt&gt;&amp;lt;state&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.65"></a>
-<span class="sourceLineNo">066</span> *          &lt;xt&gt;&amp;lt;postalCode&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.66"></a>
-<span class="sourceLineNo">067</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.67"></a>
-<span class="sourceLineNo">068</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.68"></a>
-<span class="sourceLineNo">069</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.69"></a>
-<span class="sourceLineNo">070</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.70"></a>
-<span class="sourceLineNo">071</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.71"></a>
-<span class="sourceLineNo">072</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.72"></a>
-<span class="sourceLineNo">073</span> *       &lt;xt&gt;&amp;lt;remote&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.73"></a>
-<span class="sourceLineNo">074</span> *       &lt;xt&gt;&amp;lt;height&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.74"></a>
-<span class="sourceLineNo">075</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.75"></a>
-<span class="sourceLineNo">076</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.76"></a>
-<span class="sourceLineNo">077</span> *<a name="line.77"></a>
-<span class="sourceLineNo">078</span> * &lt;p&gt;<a name="line.78"></a>
-<span class="sourceLineNo">079</span> * An additional "add-json-properties" mode is also provided to prevent loss of JSON data types...<a name="line.79"></a>
-<span class="sourceLineNo">080</span> * &lt;p class='bcode'&gt;<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *       &lt;xt&gt;&amp;lt;name&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *       &lt;xt&gt;&amp;lt;address&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'object'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *          &lt;xt&gt;&amp;lt;streetAddress&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.83"></a>
-<span class="sourceLineNo">084</span> *          &lt;xt&gt;&amp;lt;city&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *          &lt;xt&gt;&amp;lt;state&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.85"></a>
-<span class="sourceLineNo">086</span> *          &lt;xt&gt;&amp;lt;postalCode&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.86"></a>
-<span class="sourceLineNo">087</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'array'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *       &lt;xt&gt;&amp;lt;remote&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'boolean'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.93"></a>
-<span class="sourceLineNo">094</span> *       &lt;xt&gt;&amp;lt;height&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.95"></a>
-<span class="sourceLineNo">096</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.96"></a>
-<span class="sourceLineNo">097</span> * &lt;/p&gt;<a name="line.97"></a>
-<span class="sourceLineNo">098</span> *<a name="line.98"></a>
-<span class="sourceLineNo">099</span> * &lt;p&gt;<a name="line.99"></a>
-<span class="sourceLineNo">100</span> * This serializer provides several serialization options.<a name="line.100"></a>
-<span class="sourceLineNo">101</span> * Typically, one of the predefined &lt;jsf&gt;DEFAULT&lt;/jsf&gt; serializers will be sufficient.<a name="line.101"></a>
-<span class="sourceLineNo">102</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.102"></a>
-<span class="sourceLineNo">103</span> *<a name="line.103"></a>
-<span class="sourceLineNo">104</span> * &lt;p&gt;<a name="line.104"></a>
-<span class="sourceLineNo">105</span> * If an attribute name contains any non-valid XML element characters, they will be escaped using standard<a name="line.105"></a>
-<span class="sourceLineNo">106</span> * {@code _x####_} notation.<a name="line.106"></a>
-<span class="sourceLineNo">107</span> *<a name="line.107"></a>
-<span class="sourceLineNo">108</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.108"></a>
-<span class="sourceLineNo">109</span> *<a name="line.109"></a>
-<span class="sourceLineNo">110</span> * This class has the following properties associated with it:<a name="line.110"></a>
-<span class="sourceLineNo">111</span> * &lt;ul&gt;<a name="line.111"></a>
-<span class="sourceLineNo">112</span> *    &lt;li&gt;{@link XmlSerializerContext}<a name="line.112"></a>
-<span class="sourceLineNo">113</span> *    &lt;li&gt;{@link BeanContext}<a name="line.113"></a>
-<span class="sourceLineNo">114</span> * &lt;/ul&gt;<a name="line.114"></a>
-<span class="sourceLineNo">115</span> *<a name="line.115"></a>
-<span class="sourceLineNo">116</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.116"></a>
-<span class="sourceLineNo">117</span> *<a name="line.117"></a>
-<span class="sourceLineNo">118</span> * The following direct subclasses are provided for convenience:<a name="line.118"></a>
-<span class="sourceLineNo">119</span> * &lt;ul&gt;<a name="line.119"></a>
-<span class="sourceLineNo">120</span> *    &lt;li&gt;{@link Sq} - Default serializer, single quotes.<a name="line.120"></a>
-<span class="sourceLineNo">121</span> *    &lt;li&gt;{@link SqReadable} - Default serializer, single quotes, whitespace added.<a name="line.121"></a>
-<span class="sourceLineNo">122</span> * &lt;/ul&gt;<a name="line.122"></a>
-<span class="sourceLineNo">123</span> */<a name="line.123"></a>
-<span class="sourceLineNo">124</span>@Produces("text/xml")<a name="line.124"></a>
-<span class="sourceLineNo">125</span>public class XmlSerializer extends WriterSerializer {<a name="line.125"></a>
-<span class="sourceLineNo">126</span><a name="line.126"></a>
-<span class="sourceLineNo">127</span>   /** Default serializer without namespaces. */<a name="line.127"></a>
-<span class="sourceLineNo">128</span>   public static final XmlSerializer DEFAULT = new XmlSerializer(PropertyStore.create());<a name="line.128"></a>
-<span class="sourceLineNo">129</span><a name="line.129"></a>
-<span class="sourceLineNo">130</span>   /** Default serializer without namespaces, with single quotes. */<a name="line.130"></a>
-<span class="sourceLineNo">131</span>   public static final XmlSerializer DEFAULT_SQ = new Sq(PropertyStore.create());<a name="line.131"></a>
-<span class="sourceLineNo">132</span><a name="line.132"></a>
-<span class="sourceLineNo">133</span>   /** Default serializer without namespaces, with single quotes, whitespace added. */<a name="line.133"></a>
-<span class="sourceLineNo">134</span>   public static final XmlSerializer DEFAULT_SQ_READABLE = new SqReadable(PropertyStore.create());<a name="line.134"></a>
-<span class="sourceLineNo">135</span><a name="line.135"></a>
-<span class="sourceLineNo">136</span>   /** Default serializer, all default settings. */<a name="line.136"></a>
-<span class="sourceLineNo">137</span>   public static final XmlSerializer DEFAULT_NS = new Ns(PropertyStore.create());<a name="line.137"></a>
-<span class="sourceLineNo">138</span><a name="line.138"></a>
-<span class="sourceLineNo">139</span>   /** Default serializer, single quotes. */<a name="line.139"></a>
-<span class="sourceLineNo">140</span>   public static final XmlSerializer DEFAULT_NS_SQ = new NsSq(PropertyStore.create());<a name="line.140"></a>
-<span class="sourceLineNo">141</span><a name="line.141"></a>
-<span class="sourceLineNo">142</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.142"></a>
-<span class="sourceLineNo">143</span>   public static final XmlSerializer DEFAULT_NS_SQ_READABLE = new NsSqReadable(PropertyStore.create());<a name="line.143"></a>
-<span class="sourceLineNo">144</span><a name="line.144"></a>
-<span class="sourceLineNo">145</span><a name="line.145"></a>
-<span class="sourceLineNo">146</span>   /** Default serializer, single quotes. */<a name="line.146"></a>
-<span class="sourceLineNo">147</span>   public static class Sq extends XmlSerializer {<a name="line.147"></a>
-<span class="sourceLineNo">148</span><a name="line.148"></a>
-<span class="sourceLineNo">149</span>      /**<a name="line.149"></a>
-<span class="sourceLineNo">150</span>       * Constructor.<a name="line.150"></a>
-<span class="sourceLineNo">151</span>       *<a name="line.151"></a>
-<span class="sourceLineNo">152</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.152"></a>
-<span class="sourceLineNo">153</span>       */<a name="line.153"></a>
-<span class="sourceLineNo">154</span>      public Sq(PropertyStore propertyStore) {<a name="line.154"></a>
-<span class="sourceLineNo">155</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\''));<a name="line.155"></a>
-<span class="sourceLineNo">156</span>      }<a name="line.156"></a>
-<span class="sourceLineNo">157</span>   }<a name="line.157"></a>
-<span class="sourceLineNo">158</span><a name="line.158"></a>
-<span class="sourceLineNo">159</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.159"></a>
-<span class="sourceLineNo">160</span>   public static class SqReadable extends XmlSerializer {<a name="line.160"></a>
-<span class="sourceLineNo">161</span><a name="line.161"></a>
-<span class="sourceLineNo">162</span>      /**<a name="line.162"></a>
-<span class="sourceLineNo">163</span>       * Constructor.<a name="line.163"></a>
-<span class="sourceLineNo">164</span>       *<a name="line.164"></a>
-<span class="sourceLineNo">165</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.165"></a>
-<span class="sourceLineNo">166</span>       */<a name="line.166"></a>
-<span class="sourceLineNo">167</span>      public SqReadable(PropertyStore propertyStore) {<a name="line.167"></a>
-<span class="sourceLineNo">168</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\'').append(SERIALIZER_useWhitespace, true));<a name="line.168"></a>
-<span class="sourceLineNo">169</span>      }<a name="line.169"></a>
-<span class="sourceLineNo">170</span>   }<a name="line.170"></a>
-<span class="sourceLineNo">171</span><a name="line.171"></a>
-<span class="sourceLineNo">172</span>   /** Default serializer without namespaces. */<a name="line.172"></a>
-<span class="sourceLineNo">173</span>   @Produces(value="text/xml+simple",contentType="text/xml")<a name="line.173"></a>
-<span class="sourceLineNo">174</span>   public static class Ns extends XmlSerializer {<a name="line.174"></a>
-<span class="sourceLineNo">175</span><a name="line.175"></a>
-<span class="sourceLineNo">176</span>      /**<a name="line.176"></a>
-<span class="sourceLineNo">177</span>       * Constructor.<a name="line.177"></a>
-<span class="sourceLineNo">178</span>       *<a name="line.178"></a>
-<span class="sourceLineNo">179</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.179"></a>
-<span class="sourceLineNo">180</span>       */<a name="line.180"></a>
-<span class="sourceLineNo">181</span>      public Ns(PropertyStore propertyStore) {<a name="line.181"></a>
-<span class="sourceLineNo">182</span>         super(propertyStore.copy().append(XML_enableNamespaces, true));<a name="line.182"></a>
-<span class="sourceLineNo">183</span>      }<a name="line.183"></a>
-<span class="sourceLineNo">184</span>   }<a name="line.184"></a>
+<span class="sourceLineNo">019</span>import org.apache.juneau.json.*;<a name="line.19"></a>
+<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
+<span class="sourceLineNo">021</span><a name="line.21"></a>
+<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * Serializes POJO models to XML.<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;p&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * See the {@link JsonSerializer} class for details on how Java models map to JSON.<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *<a name="line.35"></a>
+<span class="sourceLineNo">036</span> * &lt;p&gt;<a name="line.36"></a>
+<span class="sourceLineNo">037</span> * For example, the following JSON...<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * &lt;p class='bcode'&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *    {<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *       name:&lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.40"></a>
+<span class="sourceLineNo">041</span> *       address: {<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *          streetAddress: &lt;js&gt;'21 2nd Street'&lt;/js&gt;,<a name="line.42"></a>
+<span class="sourceLineNo">043</span> *          city: &lt;js&gt;'New York'&lt;/js&gt;,<a name="line.43"></a>
+<span class="sourceLineNo">044</span> *          state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.44"></a>
+<span class="sourceLineNo">045</span> *          postalCode: &lt;js&gt;10021&lt;/js&gt;<a name="line.45"></a>
+<span class="sourceLineNo">046</span> *       },<a name="line.46"></a>
+<span class="sourceLineNo">047</span> *       phoneNumbers: [<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *          &lt;js&gt;'212 555-1111'&lt;/js&gt;,<a name="line.48"></a>
+<span class="sourceLineNo">049</span> *          &lt;js&gt;'212 555-2222'&lt;/js&gt;<a name="line.49"></a>
+<span class="sourceLineNo">050</span> *       ],<a name="line.50"></a>
+<span class="sourceLineNo">051</span> *       additionalInfo: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.51"></a>
+<span class="sourceLineNo">052</span> *       remote: &lt;jk&gt;false&lt;/jk&gt;,<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *       height: &lt;js&gt;62.4&lt;/js&gt;,<a name="line.53"></a>
+<span class="sourceLineNo">054</span> *       &lt;js&gt;'fico score'&lt;/js&gt;:  &lt;js&gt;' &amp;gt; 640'&lt;/js&gt;<a name="line.54"></a>
+<span class="sourceLineNo">055</span> *    }<a name="line.55"></a>
+<span class="sourceLineNo">056</span> * &lt;p&gt;<a name="line.56"></a>
+<span class="sourceLineNo">057</span> *    ...maps to the following XML using the default serializer...<a name="line.57"></a>
+<span class="sourceLineNo">058</span> * &lt;p class='bcode'&gt;<a name="line.58"></a>
+<span class="sourceLineNo">059</span> *    &lt;xt&gt;&amp;lt;object&amp;gt;&lt;/xt&gt;<a name="line.59"></a>
+<span class="sourceLineNo">060</span> *       &lt;xt&gt;&amp;lt;name&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.60"></a>
+<span class="sourceLineNo">061</span> *       &lt;xt&gt;&amp;lt;address&amp;gt;&lt;/xt&gt;<a name="line.61"></a>
+<span class="sourceLineNo">062</span> *          &lt;xt&gt;&amp;lt;streetAddress&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.62"></a>
+<span class="sourceLineNo">063</span> *          &lt;xt&gt;&amp;lt;city&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.63"></a>
+<span class="sourceLineNo">064</span> *          &lt;xt&gt;&amp;lt;state&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.64"></a>
+<span class="sourceLineNo">065</span> *          &lt;xt&gt;&amp;lt;postalCode&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.65"></a>
+<span class="sourceLineNo">066</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.66"></a>
+<span class="sourceLineNo">067</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.67"></a>
+<span class="sourceLineNo">068</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.68"></a>
+<span class="sourceLineNo">069</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.69"></a>
+<span class="sourceLineNo">070</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.70"></a>
+<span class="sourceLineNo">071</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.71"></a>
+<span class="sourceLineNo">072</span> *       &lt;xt&gt;&amp;lt;remote&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.72"></a>
+<span class="sourceLineNo">073</span> *       &lt;xt&gt;&amp;lt;height&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.73"></a>
+<span class="sourceLineNo">074</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.74"></a>
+<span class="sourceLineNo">075</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.75"></a>
+<span class="sourceLineNo">076</span> *<a name="line.76"></a>
+<span class="sourceLineNo">077</span> * &lt;p&gt;<a name="line.77"></a>
+<span class="sourceLineNo">078</span> * An additional "add-json-properties" mode is also provided to prevent loss of JSON data types...<a name="line.78"></a>
+<span class="sourceLineNo">079</span> * &lt;p class='bcode'&gt;<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *       &lt;xt&gt;&amp;lt;name&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *       &lt;xt&gt;&amp;lt;address&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'object'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *          &lt;xt&gt;&amp;lt;streetAddress&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.82"></a>
+<span class="sourceLineNo">083</span> *          &lt;xt&gt;&amp;lt;city&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *          &lt;xt&gt;&amp;lt;state&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.84"></a>
+<span class="sourceLineNo">085</span> *          &lt;xt&gt;&amp;lt;postalCode&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.85"></a>
+<span class="sourceLineNo">086</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'array'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.87"></a>
+<span class="sourceLineNo">088</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.88"></a>
+<span class="sourceLineNo">089</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.89"></a>
+<span class="sourceLineNo">090</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.91"></a>
+<span class="sourceLineNo">092</span> *       &lt;xt&gt;&amp;lt;remote&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'boolean'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.92"></a>
+<span class="sourceLineNo">093</span> *       &lt;xt&gt;&amp;lt;height&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.93"></a>
+<span class="sourceLineNo">094</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.94"></a>
+<span class="sourceLineNo">095</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.95"></a>
+<span class="sourceLineNo">096</span> * &lt;/p&gt;<a name="line.96"></a>
+<span class="sourceLineNo">097</span> *<a name="line.97"></a>
+<span class="sourceLineNo">098</span> * &lt;p&gt;<a name="line.98"></a>
+<span class="sourceLineNo">099</span> * This serializer provides several serialization options.<a name="line.99"></a>
+<span class="sourceLineNo">100</span> * Typically, one of the predefined &lt;jsf&gt;DEFAULT&lt;/jsf&gt; serializers will be sufficient.<a name="line.100"></a>
+<span class="sourceLineNo">101</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.101"></a>
+<span class="sourceLineNo">102</span> *<a name="line.102"></a>
+<span class="sourceLineNo">103</span> * &lt;p&gt;<a name="line.103"></a>
+<span class="sourceLineNo">104</span> * If an attribute name contains any non-valid XML element characters, they will be escaped using standard<a name="line.104"></a>
+<span class="sourceLineNo">105</span> * {@code _x####_} notation.<a name="line.105"></a>
+<span class="sourceLineNo">106</span> *<a name="line.106"></a>
+<span class="sourceLineNo">107</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.107"></a>
+<span class="sourceLineNo">108</span> *<a name="line.108"></a>
+<span class="sourceLineNo">109</span> * This class has the following properties associated with it:<a name="line.109"></a>
+<span class="sourceLineNo">110</span> * &lt;ul&gt;<a name="line.110"></a>
+<span class="sourceLineNo">111</span> *    &lt;li&gt;{@link XmlSerializerContext}<a name="line.111"></a>
+<span class="sourceLineNo">112</span> *    &lt;li&gt;{@link BeanContext}<a name="line.112"></a>
+<span class="sourceLineNo">113</span> * &lt;/ul&gt;<a name="line.113"></a>
+<span class="sourceLineNo">114</span> *<a name="line.114"></a>
+<span class="sourceLineNo">115</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.115"></a>
+<span class="sourceLineNo">116</span> *<a name="line.116"></a>
+<span class="sourceLineNo">117</span> * The following direct subclasses are provided for convenience:<a name="line.117"></a>
+<span class="sourceLineNo">118</span> * &lt;ul&gt;<a name="line.118"></a>
+<span class="sourceLineNo">119</span> *    &lt;li&gt;{@link Sq} - Default serializer, single quotes.<a name="line.119"></a>
+<span class="sourceLineNo">120</span> *    &lt;li&gt;{@link SqReadable} - Default serializer, single quotes, whitespace added.<a name="line.120"></a>
+<span class="sourceLineNo">121</span> * &lt;/ul&gt;<a name="line.121"></a>
+<span class="sourceLineNo">122</span> */<a name="line.122"></a>
+<span class="sourceLineNo">123</span>public class XmlSerializer extends WriterSerializer {<a name="line.123"></a>
+<span class="sourceLineNo">124</span><a name="line.124"></a>
+<span class="sourceLineNo">125</span>   /** Default serializer without namespaces. */<a name="line.125"></a>
+<span class="sourceLineNo">126</span>   public static final XmlSerializer DEFAULT = new XmlSerializer(PropertyStore.create());<a name="line.126"></a>
+<span class="sourceLineNo">127</span><a name="line.127"></a>
+<span class="sourceLineNo">128</span>   /** Default serializer without namespaces, with single quotes. */<a name="line.128"></a>
+<span class="sourceLineNo">129</span>   public static final XmlSerializer DEFAULT_SQ = new Sq(PropertyStore.create());<a name="line.129"></a>
+<span class="sourceLineNo">130</span><a name="line.130"></a>
+<span class="sourceLineNo">131</span>   /** Default serializer without namespaces, with single quotes, whitespace added. */<a name="line.131"></a>
+<span class="sourceLineNo">132</span>   public static final XmlSerializer DEFAULT_SQ_READABLE = new SqReadable(PropertyStore.create());<a name="line.132"></a>
+<span class="sourceLineNo">133</span><a name="line.133"></a>
+<span class="sourceLineNo">134</span>   /** Default serializer, all default settings. */<a name="line.134"></a>
+<span class="sourceLineNo">135</span>   public static final XmlSerializer DEFAULT_NS = new Ns(PropertyStore.create());<a name="line.135"></a>
+<span class="sourceLineNo">136</span><a name="line.136"></a>
+<span class="sourceLineNo">137</span>   /** Default serializer, single quotes. */<a name="line.137"></a>
+<span class="sourceLineNo">138</span>   public static final XmlSerializer DEFAULT_NS_SQ = new NsSq(PropertyStore.create());<a name="line.138"></a>
+<span class="sourceLineNo">139</span><a name="line.139"></a>
+<span class="sourceLineNo">140</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.140"></a>
+<span class="sourceLineNo">141</span>   public static final XmlSerializer DEFAULT_NS_SQ_READABLE = new NsSqReadable(PropertyStore.create());<a name="line.141"></a>
+<span class="sourceLineNo">142</span><a name="line.142"></a>
+<span class="sourceLineNo">143</span><a name="line.143"></a>
+<span class="sourceLineNo">144</span>   /** Default serializer, single quotes. */<a name="line.144"></a>
+<span class="sourceLineNo">145</span>   public static class Sq extends XmlSerializer {<a name="line.145"></a>
+<span class="sourceLineNo">146</span><a name="line.146"></a>
+<span class="sourceLineNo">147</span>      /**<a name="line.147"></a>
+<span class="sourceLineNo">148</span>       * Constructor.<a name="line.148"></a>
+<span class="sourceLineNo">149</span>       *<a name="line.149"></a>
+<span class="sourceLineNo">150</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.150"></a>
+<span class="sourceLineNo">151</span>       */<a name="line.151"></a>
+<span class="sourceLineNo">152</span>      public Sq(PropertyStore propertyStore) {<a name="line.152"></a>
+<span class="sourceLineNo">153</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\''));<a name="line.153"></a>
+<span class="sourceLineNo">154</span>      }<a name="line.154"></a>
+<span class="sourceLineNo">155</span>   }<a name="line.155"></a>
+<span class="sourceLineNo">156</span><a name="line.156"></a>
+<span class="sourceLineNo">157</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.157"></a>
+<span class="sourceLineNo">158</span>   public static class SqReadable extends XmlSerializer {<a name="line.158"></a>
+<span class="sourceLineNo">159</span><a name="line.159"></a>
+<span class="sourceLineNo">160</span>      /**<a name="line.160"></a>
+<span class="sourceLineNo">161</span>       * Constructor.<a name="line.161"></a>
+<span class="sourceLineNo">162</span>       *<a name="line.162"></a>
+<span class="sourceLineNo">163</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.163"></a>
+<span class="sourceLineNo">164</span>       */<a name="line.164"></a>
+<span class="sourceLineNo">165</span>      public SqReadable(PropertyStore propertyStore) {<a name="line.165"></a>
+<span class="sourceLineNo">166</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\'').append(SERIALIZER_useWhitespace, true));<a name="line.166"></a>
+<span class="sourceLineNo">167</span>      }<a name="line.167"></a>
+<span class="sourceLineNo">168</span>   }<a name="line.168"></a>
+<span class="sourceLineNo">169</span><a name="line.169"></a>
+<span class="sourceLineNo">170</span>   /** Default serializer without namespaces. */<a name="line.170"></a>
+<span class="sourceLineNo">171</span>   public static class Ns extends XmlSerializer {<a name="line.171"></a>
+<span class="sourceLineNo">172</span><a name="line.172"></a>
+<span class="sourceLineNo">173</span>      /**<a name="line.173"></a>
+<span class="sourceLineNo">174</span>       * Constructor.<a name="line.174"></a>
+<span class="sourceLineNo">175</span>       *<a name="line.175"></a>
+<span class="sourceLineNo">176</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.176"></a>
+<span class="sourceLineNo">177</span>       */<a name="line.177"></a>
+<span class="sourceLineNo">178</span>      public Ns(PropertyStore propertyStore) {<a name="line.178"></a>
+<span class="sourceLineNo">179</span>         super(propertyStore.copy().append(XML_enableNamespaces, true), "text/xml", "text/xml+simple");<a name="line.179"></a>
+<span class="sourceLineNo">180</span>      }<a name="line.180"></a>
+<span class="sourceLineNo">181</span>   }<a name="line.181"></a>
+<span class="sourceLineNo">182</span><a name="line.182"></a>
+<span class="sourceLineNo">183</span>   /** Default serializer without namespaces, single quotes. */<a name="line.183"></a>
+<span class="sourceLineNo">184</span>   public static class NsSq extends XmlSerializer {<a name="line.184"></a>
 <span class="sourceLineNo">185</span><a name="line.185"></a>
-<span class="sourceLineNo">186</span>   /** Default serializer without namespaces, single quotes. */<a name="line.186"></a>
-<span class="sourceLineNo">187</span>   public static class NsSq extends XmlSerializer {<a name="line.187"></a>
-<span class="sourceLineNo">188</span><a name="line.188"></a>
-<span class="sourceLineNo">189</span>      /**<a name="line.189"></a>
-<span class="sourceLineNo">190</span>       * Constructor.<a name="line.190"></a>
-<span class="sourceLineNo">191</span>       *<a name="line.191"></a>
-<span class="sourceLineNo">192</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.192"></a>
-<span class="sourceLineNo">193</span>       */<a name="line.193"></a>
-<span class="sourceLineNo">194</span>      public NsSq(PropertyStore propertyStore) {<a name="line.194"></a>
-<span class="sourceLineNo">195</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\''));<a name="line.195"></a>
-<span class="sourceLineNo">196</span>      }<a name="line.196"></a>
-<span class="sourceLineNo">197</span>   }<a name="line.197"></a>
+<span class="sourceLineNo">186</span>      /**<a name="line.186"></a>
+<span class="sourceLineNo">187</span>       * Constructor.<a name="line.187"></a>
+<span class="sourceLineNo">188</span>       *<a name="line.188"></a>
+<span class="sourceLineNo">189</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.189"></a>
+<span class="sourceLineNo">190</span>       */<a name="line.190"></a>
+<span class="sourceLineNo">191</span>      public NsSq(PropertyStore propertyStore) {<a name="line.191"></a>
+<span class="sourceLineNo">192</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\''));<a name="line.192"></a>
+<span class="sourceLineNo">193</span>      }<a name="line.193"></a>
+<span class="sourceLineNo">194</span>   }<a name="line.194"></a>
+<span class="sourceLineNo">195</span><a name="line.195"></a>
+<span class="sourceLineNo">196</span>   /** Default serializer without namespaces, single quotes, with whitespace. */<a name="line.196"></a>
+<span class="sourceLineNo">197</span>   public static class NsSqReadable extends XmlSerializer {<a name="line.197"></a>
 <span class="sourceLineNo">198</span><a name="line.198"></a>
-<span class="sourceLineNo">199</span>   /** Default serializer without namespaces, single quotes, with whitespace. */<a name="line.199"></a>
-<span class="sourceLineNo">200</span>   public static class NsSqReadable extends XmlSerializer {<a name="line.200"></a>
-<span class="sourceLineNo">201</span><a name="line.201"></a>
-<span class="sourceLineNo">202</span>      /**<a name="line.202"></a>
-<span class="sourceLineNo">203</span>       * Constructor.<a name="line.203"></a>
-<span class="sourceLineNo">204</span>       *<a name="line.204"></a>
-<span class="sourceLineNo">205</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.205"></a>
-<span class="sourceLineNo">206</span>       */<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      public NsSqReadable(PropertyStore propertyStore) {<a name="line.207"></a>
-<span class="sourceLineNo">208</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\'')<a name="line.208"></a>
-<span class="sourceLineNo">209</span>            .append(SERIALIZER_useWhitespace, true));<a name="line.209"></a>
-<span class="sourceLineNo">210</span>      }<a name="line.210"></a>
-<span class="sourceLineNo">211</span>   }<a name="line.211"></a>
-<span class="sourceLineNo">212</span><a name="line.212"></a>
+<span class="sourceLineNo">199</span>      /**<a name="line.199"></a>
+<span class="sourceLineNo">200</span>       * Constructor.<a name="line.200"></a>
+<span class="sourceLineNo">201</span>       *<a name="line.201"></a>
+<span class="sourceLineNo">202</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.202"></a>
+<span class="sourceLineNo">203</span>       */<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      public NsSqReadable(PropertyStore propertyStore) {<a name="line.204"></a>
+<span class="sourceLineNo">205</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\'')<a name="line.205"></a>
+<span class="sourceLineNo">206</span>            .append(SERIALIZER_useWhitespace, true));<a name="line.206"></a>
+<span class="sourceLineNo">207</span>      }<a name="line.207"></a>
+<span class="sourceLineNo">208</span>   }<a name="line.208"></a>
+<span class="sourceLineNo">209</span><a name="line.209"></a>
+<span class="sourceLineNo">210</span><a name="line.210"></a>
+<span class="sourceLineNo">211</span>   final XmlSerializerContext ctx;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>   private volatile XmlSchemaSerializer schemaSerializer;<a name="line.212"></a>
 <span class="sourceLineNo">213</span><a name="line.213"></a>
-<span class="sourceLineNo">214</span>   final XmlSerializerContext ctx;<a name="line.214"></a>
-<span class="sourceLineNo">215</span>   private volatile XmlSchemaSerializer schemaSerializer;<a name="line.215"></a>
-<span class="sourceLineNo">216</span><a name="line.216"></a>
-<span class="sourceLineNo">217</span>   /**<a name="line.217"></a>
-<span class="sourceLineNo">218</span>    * Constructor.<a name="line.218"></a>
-<span class="sourceLineNo">219</span>    *<a name="line.219"></a>
-<span class="sourceLineNo">220</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.220"></a>
-<span class="sourceLineNo">221</span>    */<a name="line.221"></a>
-<span class="sourceLineNo">222</span>   public XmlSerializer(PropertyStore propertyStore) {<a name="line.222"></a>
-<span class="sourceLineNo">223</span>      super(propertyStore);<a name="line.223"></a>
-<span class="sourceLineNo">224</span>      this.ctx = createContext(XmlSerializerContext.class);<a name="line.224"></a>
-<span class="sourceLineNo">225</span>   }<a name="line.225"></a>
-<span class="sourceLineNo">226</span><a name="line.226"></a>
-<span class="sourceLineNo">227</span>   @Override /* CoreObject */<a name="line.227"></a>
-<span class="sourceLineNo">228</span>   public XmlSerializerBuilder builder() {<a name="line.228"></a>
-<span class="sourceLineNo">229</span>      return new XmlSerializerBuilder(propertyStore);<a name="line.229"></a>
-<span class="sourceLineNo">230</span>   }<a name="line.230"></a>
-<span class="sourceLineNo">231</span><a name="line.231"></a>
-<span class="sourceLineNo">232</span><a name="line.232"></a>
-<span class="sourceLineNo">233</span>   /**<a name="line.233"></a>
-<span class="sourceLineNo">234</span>    * Returns the schema serializer based on the settings of this serializer.<a name="line.234"></a>
-<span class="sourceLineNo">235</span>    * @return The schema serializer.<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    */<a name="line.236"></a>
-<span class="sourceLineNo">237</span>   public XmlSerializer getSchemaSerializer() {<a name="line.237"></a>
-<span class="sourceLineNo">238</span>      if (schemaSerializer == null)<a name="line.238"></a>
-<span class="sourceLineNo">239</span>         schemaSerializer = new XmlSchemaSerializer(propertyStore);<a name="line.239"></a>
-<span class="sourceLineNo">240</span>      return schemaSerializer;<a name="line.240"></a>
-<span class="sourceLineNo">241</span>   }<a name="line.241"></a>
-<span class="sourceLineNo">242</span><a name="line.242"></a>
-<span class="sourceLineNo">243</span>   @Override /* Serializer */<a name="line.243"></a>
-<span class="sourceLineNo">244</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.244"></a>
-<span class="sourceLineNo">245</span>      return new XmlSerializerSession(ctx, args);<a name="line.245"></a>
-<span class="sourceLineNo">246</span>   }<a name="line.246"></a>
-<span class="sourceLineNo">247</span>}<a name="line.247"></a>
+<span class="sourceLineNo">214</span>   /**<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    * Constructor.<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    *<a name="line.216"></a>
+<span class="sourceLineNo">217</span>    * @param propertyStore<a name="line.217"></a>
+<span class="sourceLineNo">218</span>    *    The property store containing all the settings for this object.<a name="line.218"></a>
+<span class="sourceLineNo">219</span>    */<a name="line.219"></a>
+<span class="sourceLineNo">220</span>   public XmlSerializer(PropertyStore propertyStore) {<a name="line.220"></a>
+<span class="sourceLineNo">221</span>      this(propertyStore, "text/xml");<a name="line.221"></a>
+<span class="sourceLineNo">222</span>   }<a name="line.222"></a>
+<span class="sourceLineNo">223</span><a name="line.223"></a>
+<span class="sourceLineNo">224</span>   /**<a name="line.224"></a>
+<span class="sourceLineNo">225</span>    * Constructor.<a name="line.225"></a>
+<span class="sourceLineNo">226</span>    *<a name="line.226"></a>
+<span class="sourceLineNo">227</span>    * @param propertyStore<a name="line.227"></a>
+<span class="sourceLineNo">228</span>    *    The property store containing all the settings for this object.<a name="line.228"></a>
+<span class="sourceLineNo">229</span>    * @param produces<a name="line.229"></a>
+<span class="sourceLineNo">230</span>    *    The media type that this serializer produces.<a name="line.230"></a>
+<span class="sourceLineNo">231</span>    * @param accept<a name="line.231"></a>
+<span class="sourceLineNo">232</span>    *    The accept media types that the serializer can handle.<a name="line.232"></a>
+<span class="sourceLineNo">233</span>    *    &lt;p&gt;<a name="line.233"></a>
+<span class="sourceLineNo">234</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.235"></a>
+<span class="sourceLineNo">236</span>    *    &lt;p&gt;<a name="line.236"></a>
+<span class="sourceLineNo">237</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.237"></a>
+<span class="sourceLineNo">238</span>    *    &lt;p&gt;<a name="line.238"></a>
+<span class="sourceLineNo">239</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.240"></a>
+<span class="sourceLineNo">241</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    *    &lt;br&gt;...or...<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.243"></a>
+<span class="sourceLineNo">244</span>    */<a name="line.244"></a>
+<span class="sourceLineNo">245</span>   public XmlSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>      super(propertyStore, produces, accept);<a name="line.246"></a>
+<span class="sourceLineNo">247</span>      this.ctx = createContext(XmlSerializerContext.class);<a name="line.247"></a>
+<span class="sourceLineNo">248</span>   }<a name="line.248"></a>
+<span class="sourceLineNo">249</span><a name="line.249"></a>
+<span class="sourceLineNo">250</span>   @Override /* CoreObject */<a name="line.250"></a>
+<span class="sourceLineNo">251</span>   public XmlSerializerBuilder builder() {<a name="line.251"></a>
+<span class="sourceLineNo">252</span>      return new XmlSerializerBuilder(propertyStore);<a name="line.252"></a>
+<span class="sourceLineNo">253</span>   }<a name="line.253"></a>
+<span class="sourceLineNo">254</span><a name="line.254"></a>
+<span class="sourceLineNo">255</span><a name="line.255"></a>
+<span class="sourceLineNo">256</span>   /**<a name="line.256"></a>
+<span class="sourceLineNo">257</span>    * Returns the schema serializer based on the settings of this serializer.<a name="line.257"></a>
+<span class="sourceLineNo">258</span>    * @return The schema serializer.<a name="line.258"></a>
+<span class="sourceLineNo">259</span>    */<a name="line.259"></a>
+<span class="sourceLineNo">260</span>   public XmlSerializer getSchemaSerializer() {<a name="line.260"></a>
+<span class="sourceLineNo">261</span>      if (schemaSerializer == null)<a name="line.261"></a>
+<span class="sourceLineNo">262</span>         schemaSerializer = new XmlSchemaSerializer(propertyStore);<a name="line.262"></a>
+<span class="sourceLineNo">263</span>      return schemaSerializer;<a name="line.263"></a>
+<span class="sourceLineNo">264</span>   }<a name="line.264"></a>
+<span class="sourceLineNo">265</span><a name="line.265"></a>
+<span class="sourceLineNo">266</span>   @Override /* Serializer */<a name="line.266"></a>
+<span class="sourceLineNo">267</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.267"></a>
+<span class="sourceLineNo">268</span>      return new XmlSerializerSession(ctx, args);<a name="line.268"></a>
+<span class="sourceLineNo">269</span>   }<a name="line.269"></a>
+<span class="sourceLineNo">270</span>}<a name="line.270"></a>
 
 
 


[50/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/annotation/package-tree.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/annotation/package-tree.html b/content/site/apidocs/org/apache/juneau/annotation/package-tree.html
index 04f58c1..e7e4b9e 100644
--- a/content/site/apidocs/org/apache/juneau/annotation/package-tree.html
+++ b/content/site/apidocs/org/apache/juneau/annotation/package-tree.html
@@ -88,12 +88,10 @@
 <ul>
 <li type="circle">org.apache.juneau.annotation.<a href="../../../../org/apache/juneau/annotation/URI.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">URI</span></a> (implements java.lang.annotation.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Annotation.html?is-external=true" title="class or interface in java.lang.annotation">Annotation</a>)</li>
 <li type="circle">org.apache.juneau.annotation.<a href="../../../../org/apache/juneau/annotation/ThreadSafe.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">ThreadSafe</span></a> (implements java.lang.annotation.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Annotation.html?is-external=true" title="class or interface in java.lang.annotation">Annotation</a>)</li>
-<li type="circle">org.apache.juneau.annotation.<a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Produces</span></a> (implements java.lang.annotation.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Annotation.html?is-external=true" title="class or interface in java.lang.annotation">Annotation</a>)</li>
 <li type="circle">org.apache.juneau.annotation.<a href="../../../../org/apache/juneau/annotation/Pojo.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Pojo</span></a> (implements java.lang.annotation.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Annotation.html?is-external=true" title="class or interface in java.lang.annotation">Annotation</a>)</li>
 <li type="circle">org.apache.juneau.annotation.<a href="../../../../org/apache/juneau/annotation/ParentProperty.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">ParentProperty</span></a> (implements java.lang.annotation.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Annotation.html?is-external=true" title="class or interface in java.lang.annotation">Annotation</a>)</li>
 <li type="circle">org.apache.juneau.annotation.<a href="../../../../org/apache/juneau/annotation/Overrideable.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Overrideable</span></a> (implements java.lang.annotation.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Annotation.html?is-external=true" title="class or interface in java.lang.annotation">Annotation</a>)</li>
 <li type="circle">org.apache.juneau.annotation.<a href="../../../../org/apache/juneau/annotation/NameProperty.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">NameProperty</span></a> (implements java.lang.annotation.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Annotation.html?is-external=true" title="class or interface in java.lang.annotation">Annotation</a>)</li>
-<li type="circle">org.apache.juneau.annotation.<a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Consumes</span></a> (implements java.lang.annotation.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Annotation.html?is-external=true" title="class or interface in java.lang.annotation">Annotation</a>)</li>
 <li type="circle">org.apache.juneau.annotation.<a href="../../../../org/apache/juneau/annotation/BeanProperty.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">BeanProperty</span></a> (implements java.lang.annotation.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Annotation.html?is-external=true" title="class or interface in java.lang.annotation">Annotation</a>)</li>
 <li type="circle">org.apache.juneau.annotation.<a href="../../../../org/apache/juneau/annotation/BeanParam.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">BeanParam</span></a> (implements java.lang.annotation.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Annotation.html?is-external=true" title="class or interface in java.lang.annotation">Annotation</a>)</li>
 <li type="circle">org.apache.juneau.annotation.<a href="../../../../org/apache/juneau/annotation/BeanIgnore.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">BeanIgnore</span></a> (implements java.lang.annotation.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Annotation.html?is-external=true" title="class or interface in java.lang.annotation">Annotation</a>)</li>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/csv/CsvParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/csv/CsvParser.html b/content/site/apidocs/org/apache/juneau/csv/CsvParser.html
index 4d64a41..cf5d5ba 100644
--- a/content/site/apidocs/org/apache/juneau/csv/CsvParser.html
+++ b/content/site/apidocs/org/apache/juneau/csv/CsvParser.html
@@ -123,8 +123,7 @@ var activeTableTab = "activeTableTab";
 <li class="blockList">
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation">@Consumes</a>(<a href="../../../../org/apache/juneau/annotation/Consumes.html#value--">value</a>="text/csv")
-public class <a href="../../../../src-html/org/apache/juneau/csv/CsvParser.html#line.23">CsvParser</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/csv/CsvParser.html#line.21">CsvParser</a>
 extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="class in org.apache.juneau.parser">ReaderParser</a></pre>
 <div class="block">TODO - Work in progress.  CSV parser.</div>
 </li>
@@ -218,7 +217,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.parser.<a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser">Parser</a></h3>
-<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-java.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apac
 he/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
+<code><a href="../../../../org/apache/juneau/parser/Parser.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-j
 ava.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -254,7 +253,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DEFAULT</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/csv/CsvParser.html" title="class in org.apache.juneau.csv">CsvParser</a> <a href="../../../../src-html/org/apache/juneau/csv/CsvParser.html#line.26">DEFAULT</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/csv/CsvParser.html" title="class in org.apache.juneau.csv">CsvParser</a> <a href="../../../../src-html/org/apache/juneau/csv/CsvParser.html#line.24">DEFAULT</a></pre>
 <div class="block">Default parser, all default settings.</div>
 </li>
 </ul>
@@ -272,7 +271,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockListLast">
 <li class="blockList">
 <h4>CsvParser</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/csv/CsvParser.html#line.35">CsvParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/csv/CsvParser.html#line.33">CsvParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -294,7 +293,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockList">
 <li class="blockList">
 <h4>builder</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/csv/CsvParserBuilder.html" title="class in org.apache.juneau.csv">CsvParserBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/csv/CsvParser.html#line.41">builder</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/csv/CsvParserBuilder.html" title="class in org.apache.juneau.csv">CsvParserBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/csv/CsvParser.html#line.39">builder</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/CoreObject.html#builder--">CoreObject</a></code></span></div>
 <div class="block">Creates a new builder class for this object so that a new object can be created that expands upon the current
  object's settings.</div>
@@ -312,7 +311,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/parser/ReaderParserSession.html" title="class in org.apache.juneau.parser">ReaderParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/csv/CsvParser.html#line.46">createSession</a>(<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/parser/ReaderParserSession.html" title="class in org.apache.juneau.parser">ReaderParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/csv/CsvParser.html#line.44">createSession</a>(<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession-org.apache.juneau.parser.ParserSessionArgs-">Parser</a></code></span></div>
 <div class="block">Create the session object that will be passed in to the parse method.
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/csv/CsvSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/csv/CsvSerializer.html b/content/site/apidocs/org/apache/juneau/csv/CsvSerializer.html
index 4c80396..d2aa95c 100644
--- a/content/site/apidocs/org/apache/juneau/csv/CsvSerializer.html
+++ b/content/site/apidocs/org/apache/juneau/csv/CsvSerializer.html
@@ -123,8 +123,7 @@ var activeTableTab = "activeTableTab";
 <li class="blockList">
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="text/csv")
-public final class <a href="../../../../src-html/org/apache/juneau/csv/CsvSerializer.html#line.23">CsvSerializer</a>
+<pre>public final class <a href="../../../../src-html/org/apache/juneau/csv/CsvSerializer.html#line.21">CsvSerializer</a>
 extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html" title="class in org.apache.juneau.serializer">WriterSerializer</a></pre>
 <div class="block">TODO - Work in progress.  CSV serializer.</div>
 </li>
@@ -218,7 +217,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -254,7 +253,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DEFAULT</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/csv/CsvSerializer.html" title="class in org.apache.juneau.csv">CsvSerializer</a> <a href="../../../../src-html/org/apache/juneau/csv/CsvSerializer.html#line.26">DEFAULT</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/csv/CsvSerializer.html" title="class in org.apache.juneau.csv">CsvSerializer</a> <a href="../../../../src-html/org/apache/juneau/csv/CsvSerializer.html#line.24">DEFAULT</a></pre>
 <div class="block">Default serializer, all default settings.</div>
 </li>
 </ul>
@@ -272,7 +271,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockListLast">
 <li class="blockList">
 <h4>CsvSerializer</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/csv/CsvSerializer.html#line.35">CsvSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/csv/CsvSerializer.html#line.33">CsvSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -294,7 +293,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>builder</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/csv/CsvSerializerBuilder.html" title="class in org.apache.juneau.csv">CsvSerializerBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/csv/CsvSerializer.html#line.41">builder</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/csv/CsvSerializerBuilder.html" title="class in org.apache.juneau.csv">CsvSerializerBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/csv/CsvSerializer.html#line.39">builder</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/CoreObject.html#builder--">CoreObject</a></code></span></div>
 <div class="block">Creates a new builder class for this object so that a new object can be created that expands upon the current
  object's settings.</div>
@@ -312,7 +311,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/csv/CsvSerializer.html#line.46">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/csv/CsvSerializer.html#line.44">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession-org.apache.juneau.serializer.SerializerSessionArgs-">Serializer</a></code></span></div>
 <div class="block">Create the session object used for actual serialization of objects.</div>
 <dl>
@@ -322,8 +321,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and serializer
-   contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   contexts.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The new session object.
    <br>Note that you must call <a href="../../../../org/apache/juneau/BeanSession.html#close--"><code>BeanSession.close()</code></a> on this object to perform any necessary

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/csv/CsvSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/csv/CsvSerializerSession.html b/content/site/apidocs/org/apache/juneau/csv/CsvSerializerSession.html
index 5bd3345..f01c1b4 100644
--- a/content/site/apidocs/org/apache/juneau/csv/CsvSerializerSession.html
+++ b/content/site/apidocs/org/apache/juneau/csv/CsvSerializerSession.html
@@ -253,7 +253,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializerSessio
 <ul class="blockListLast">
 <li class="blockList">
 <h4>CsvSerializerSession</h4>
-<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/csv/CsvSerializerSession.html#line.43">CsvSerializerSession</a>(<a href="../../../../org/apache/juneau/csv/CsvSerializerContext.html" title="class in org.apache.juneau.csv">CsvSerializerContext</a>&nbsp;ctx,
+<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/csv/CsvSerializerSession.html#line.42">CsvSerializerSession</a>(<a href="../../../../org/apache/juneau/csv/CsvSerializerContext.html" title="class in org.apache.juneau.csv">CsvSerializerContext</a>&nbsp;ctx,
                                <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block">Create a new session using properties specified in the context.</div>
 <dl>
@@ -263,8 +263,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializerSessio
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and
-   serializer contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   serializer contexts.</dd>
 </dl>
 </li>
 </ul>
@@ -282,7 +281,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializerSessio
 <ul class="blockListLast">
 <li class="blockList">
 <h4>doSerialize</h4>
-<pre>protected final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/csv/CsvSerializerSession.html#line.48">doSerialize</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out,
+<pre>protected final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/csv/CsvSerializerSession.html#line.47">doSerialize</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out,
                                  <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
                           throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/SerializerSession.html#doSerialize-org.apache.juneau.serializer.SerializerPipe-java.lang.Object-">SerializerSession</a></code></span></div>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/html/HtmlDocSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/html/HtmlDocSerializer.html b/content/site/apidocs/org/apache/juneau/html/HtmlDocSerializer.html
index 9ef7fa9..c78937a 100644
--- a/content/site/apidocs/org/apache/juneau/html/HtmlDocSerializer.html
+++ b/content/site/apidocs/org/apache/juneau/html/HtmlDocSerializer.html
@@ -142,8 +142,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="text/html")
-public class <a href="../../../../src-html/org/apache/juneau/html/HtmlDocSerializer.html#line.43">HtmlDocSerializer</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/html/HtmlDocSerializer.html#line.41">HtmlDocSerializer</a>
 extends <a href="../../../../org/apache/juneau/html/HtmlStrippedDocSerializer.html" title="class in org.apache.juneau.html">HtmlStrippedDocSerializer</a></pre>
 <div class="block">Serializes POJOs to HTTP responses as HTML documents.
 
@@ -251,6 +250,13 @@ extends <a href="../../../../org/apache/juneau/html/HtmlStrippedDocSerializer.ht
 <div class="block">Constructor.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/html/HtmlDocSerializer.html#HtmlDocSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">HtmlDocSerializer</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                 <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+                 <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</code>
+<div class="block">Constructor.</div>
+</td>
+</tr>
 </table>
 </li>
 </ul>
@@ -292,7 +298,7 @@ extends <a href="../../../../org/apache/juneau/html/HtmlStrippedDocSerializer.ht
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -328,7 +334,7 @@ extends <a href="../../../../org/apache/juneau/html/HtmlStrippedDocSerializer.ht
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DEFAULT</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/html/HtmlDocSerializer.html" title="class in org.apache.juneau.html">HtmlDocSerializer</a> <a href="../../../../src-html/org/apache/juneau/html/HtmlDocSerializer.html#line.46">DEFAULT</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/html/HtmlDocSerializer.html" title="class in org.apache.juneau.html">HtmlDocSerializer</a> <a href="../../../../src-html/org/apache/juneau/html/HtmlDocSerializer.html#line.44">DEFAULT</a></pre>
 <div class="block">Default serializer, all default settings.</div>
 </li>
 </ul>
@@ -343,14 +349,43 @@ extends <a href="../../../../org/apache/juneau/html/HtmlStrippedDocSerializer.ht
 <a name="HtmlDocSerializer-org.apache.juneau.PropertyStore-">
 <!--   -->
 </a>
+<ul class="blockList">
+<li class="blockList">
+<h4>HtmlDocSerializer</h4>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlDocSerializer.html#line.54">HtmlDocSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<div class="block">Constructor.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+</dl>
+</li>
+</ul>
+<a name="HtmlDocSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">
+<!--   -->
+</a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>HtmlDocSerializer</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlDocSerializer.html#line.56">HtmlDocSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlDocSerializer.html#line.79">HtmlDocSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                         <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+                         <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+<dd><code>produces</code> - The media type that this serializer produces.</dd>
+<dd><code>accept</code> - The accept media types that the serializer can handle.
+   <p>
+   Can contain meta-characters per the <code>media-type</code> specification of
+   <a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1">RFC2616/14.1</a>
+   <p>
+   If empty, then assumes the only media type supported is <code>produces</code>.
+   <p>
+   For example, if this serializer produces <js>"application/json"</js> but should handle media types of
+   <js>"application/json"</js> and <js>"text/json"</js>, then the arguments should be:
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"application/json"</js>, <js>"text/json"</js>);</code>
+   <br>...or...
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"*&#8203;/json"</js>);</code></dd>
 </dl>
 </li>
 </ul>
@@ -368,7 +403,7 @@ extends <a href="../../../../org/apache/juneau/html/HtmlStrippedDocSerializer.ht
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/html/HtmlDocSerializerSession.html" title="class in org.apache.juneau.html">HtmlDocSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlDocSerializer.html#line.62">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/html/HtmlDocSerializerSession.html" title="class in org.apache.juneau.html">HtmlDocSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlDocSerializer.html#line.85">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession-org.apache.juneau.serializer.SerializerSessionArgs-">Serializer</a></code></span></div>
 <div class="block">Create the session object used for actual serialization of objects.</div>
 <dl>
@@ -378,8 +413,7 @@ extends <a href="../../../../org/apache/juneau/html/HtmlStrippedDocSerializer.ht
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and serializer
-   contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   contexts.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The new session object.
    <br>Note that you must call <a href="../../../../org/apache/juneau/BeanSession.html#close--"><code>BeanSession.close()</code></a> on this object to perform any necessary

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/html/HtmlParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/html/HtmlParser.html b/content/site/apidocs/org/apache/juneau/html/HtmlParser.html
index 8950fd7..ac79a00 100644
--- a/content/site/apidocs/org/apache/juneau/html/HtmlParser.html
+++ b/content/site/apidocs/org/apache/juneau/html/HtmlParser.html
@@ -128,8 +128,7 @@ var activeTableTab = "activeTableTab";
 <li class="blockList">
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation">@Consumes</a>(<a href="../../../../org/apache/juneau/annotation/Consumes.html#value--">value</a>="text/html,text/html+stripped")
-public class <a href="../../../../src-html/org/apache/juneau/html/HtmlParser.html#line.42">HtmlParser</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/html/HtmlParser.html#line.40">HtmlParser</a>
 extends <a href="../../../../org/apache/juneau/xml/XmlParser.html" title="class in org.apache.juneau.xml">XmlParser</a></pre>
 <div class="block">Parses text generated by the <a href="../../../../org/apache/juneau/html/HtmlSerializer.html" title="class in org.apache.juneau.html"><code>HtmlSerializer</code></a> class back into a POJO model.
 
@@ -240,7 +239,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlParser.html" title="class
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.parser.<a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser">Parser</a></h3>
-<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-java.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apac
 he/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
+<code><a href="../../../../org/apache/juneau/parser/Parser.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-j
 ava.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -276,7 +275,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlParser.html" title="class
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DEFAULT</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/html/HtmlParser.html" title="class in org.apache.juneau.html">HtmlParser</a> <a href="../../../../src-html/org/apache/juneau/html/HtmlParser.html#line.45">DEFAULT</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/html/HtmlParser.html" title="class in org.apache.juneau.html">HtmlParser</a> <a href="../../../../src-html/org/apache/juneau/html/HtmlParser.html#line.43">DEFAULT</a></pre>
 <div class="block">Default parser, all default settings.</div>
 </li>
 </ul>
@@ -294,7 +293,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlParser.html" title="class
 <ul class="blockListLast">
 <li class="blockList">
 <h4>HtmlParser</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlParser.html#line.55">HtmlParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlParser.html#line.53">HtmlParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -316,7 +315,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlParser.html" title="class
 <ul class="blockList">
 <li class="blockList">
 <h4>builder</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/html/HtmlParserBuilder.html" title="class in org.apache.juneau.html">HtmlParserBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlParser.html#line.61">builder</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/html/HtmlParserBuilder.html" title="class in org.apache.juneau.html">HtmlParserBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlParser.html#line.59">builder</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/CoreObject.html#builder--">CoreObject</a></code></span></div>
 <div class="block">Creates a new builder class for this object so that a new object can be created that expands upon the current
  object's settings.</div>
@@ -334,7 +333,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlParser.html" title="class
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/html/HtmlParserSession.html" title="class in org.apache.juneau.html">HtmlParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlParser.html#line.66">createSession</a>(<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/html/HtmlParserSession.html" title="class in org.apache.juneau.html">HtmlParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlParser.html#line.64">createSession</a>(<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession-org.apache.juneau.parser.ParserSessionArgs-">Parser</a></code></span></div>
 <div class="block">Create the session object that will be passed in to the parse method.
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/html/HtmlSchemaDocSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/html/HtmlSchemaDocSerializer.html b/content/site/apidocs/org/apache/juneau/html/HtmlSchemaDocSerializer.html
index b0a6bcb..e4f5615 100644
--- a/content/site/apidocs/org/apache/juneau/html/HtmlSchemaDocSerializer.html
+++ b/content/site/apidocs/org/apache/juneau/html/HtmlSchemaDocSerializer.html
@@ -143,9 +143,7 @@ var activeTableTab = "activeTableTab";
 <li class="blockList">
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="text/html+schema",
-          <a href="../../../../org/apache/juneau/annotation/Produces.html#contentType--">contentType</a>="text/html")
-public final class <a href="../../../../src-html/org/apache/juneau/html/HtmlSchemaDocSerializer.html#line.43">HtmlSchemaDocSerializer</a>
+<pre>public final class <a href="../../../../src-html/org/apache/juneau/html/HtmlSchemaDocSerializer.html#line.41">HtmlSchemaDocSerializer</a>
 extends <a href="../../../../org/apache/juneau/html/HtmlDocSerializer.html" title="class in org.apache.juneau.html">HtmlDocSerializer</a></pre>
 <div class="block">Serializes POJO metamodels to HTML.
 
@@ -246,6 +244,13 @@ extends <a href="../../../../org/apache/juneau/html/HtmlDocSerializer.html" titl
 <div class="block">Constructor.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/html/HtmlSchemaDocSerializer.html#HtmlSchemaDocSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">HtmlSchemaDocSerializer</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                       <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+                       <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</code>
+<div class="block">Constructor.</div>
+</td>
+</tr>
 </table>
 </li>
 </ul>
@@ -287,7 +292,7 @@ extends <a href="../../../../org/apache/juneau/html/HtmlDocSerializer.html" titl
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -320,10 +325,10 @@ extends <a href="../../../../org/apache/juneau/html/HtmlDocSerializer.html" titl
 <a name="HtmlSchemaDocSerializer-org.apache.juneau.PropertyStore-">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
 <h4>HtmlSchemaDocSerializer</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSchemaDocSerializer.html#line.53">HtmlSchemaDocSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSchemaDocSerializer.html#line.52">HtmlSchemaDocSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -331,6 +336,35 @@ extends <a href="../../../../org/apache/juneau/html/HtmlDocSerializer.html" titl
 </dl>
 </li>
 </ul>
+<a name="HtmlSchemaDocSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>HtmlSchemaDocSerializer</h4>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSchemaDocSerializer.html#line.77">HtmlSchemaDocSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                               <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+                               <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</pre>
+<div class="block">Constructor.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+<dd><code>produces</code> - The media type that this serializer produces.</dd>
+<dd><code>accept</code> - The accept media types that the serializer can handle.
+   <p>
+   Can contain meta-characters per the <code>media-type</code> specification of
+   <a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1">RFC2616/14.1</a>
+   <p>
+   If empty, then assumes the only media type supported is <code>produces</code>.
+   <p>
+   For example, if this serializer produces <js>"application/json"</js> but should handle media types of
+   <js>"application/json"</js> and <js>"text/json"</js>, then the arguments should be:
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"application/json"</js>, <js>"text/json"</js>);</code>
+   <br>...or...
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"*&#8203;/json"</js>);</code></dd>
+</dl>
+</li>
+</ul>
 </li>
 </ul>
 <!-- ============ METHOD DETAIL ========== -->
@@ -345,7 +379,7 @@ extends <a href="../../../../org/apache/juneau/html/HtmlDocSerializer.html" titl
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/html/HtmlDocSerializerSession.html" title="class in org.apache.juneau.html">HtmlDocSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSchemaDocSerializer.html#line.59">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/html/HtmlDocSerializerSession.html" title="class in org.apache.juneau.html">HtmlDocSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSchemaDocSerializer.html#line.83">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession-org.apache.juneau.serializer.SerializerSessionArgs-">Serializer</a></code></span></div>
 <div class="block">Create the session object used for actual serialization of objects.</div>
 <dl>
@@ -355,8 +389,7 @@ extends <a href="../../../../org/apache/juneau/html/HtmlDocSerializer.html" titl
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and serializer
-   contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   contexts.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The new session object.
    <br>Note that you must call <a href="../../../../org/apache/juneau/BeanSession.html#close--"><code>BeanSession.close()</code></a> on this object to perform any necessary

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/html/HtmlSerializer.Sq.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/html/HtmlSerializer.Sq.html b/content/site/apidocs/org/apache/juneau/html/HtmlSerializer.Sq.html
index f77ac02..a907f98 100644
--- a/content/site/apidocs/org/apache/juneau/html/HtmlSerializer.Sq.html
+++ b/content/site/apidocs/org/apache/juneau/html/HtmlSerializer.Sq.html
@@ -131,7 +131,7 @@
 </dl>
 <hr>
 <br>
-<pre>public static class <a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.html#line.151">HtmlSerializer.Sq</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.html#line.149">HtmlSerializer.Sq</a>
 extends <a href="../../../../org/apache/juneau/html/HtmlSerializer.html" title="class in org.apache.juneau.html">HtmlSerializer</a></pre>
 <div class="block">Default serializer, single quotes.</div>
 </li>
@@ -235,7 +235,7 @@ extends <a href="../../../../org/apache/juneau/html/HtmlSerializer.html" title="
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -271,7 +271,7 @@ extends <a href="../../../../org/apache/juneau/html/HtmlSerializer.html" title="
 <ul class="blockListLast">
 <li class="blockList">
 <h4>Sq</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.Sq.html#line.158">Sq</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.Sq.html#line.156">Sq</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/html/HtmlSerializer.SqReadable.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/html/HtmlSerializer.SqReadable.html b/content/site/apidocs/org/apache/juneau/html/HtmlSerializer.SqReadable.html
index 2e770da..0baeece 100644
--- a/content/site/apidocs/org/apache/juneau/html/HtmlSerializer.SqReadable.html
+++ b/content/site/apidocs/org/apache/juneau/html/HtmlSerializer.SqReadable.html
@@ -131,7 +131,7 @@
 </dl>
 <hr>
 <br>
-<pre>public static class <a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.html#line.164">HtmlSerializer.SqReadable</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.html#line.162">HtmlSerializer.SqReadable</a>
 extends <a href="../../../../org/apache/juneau/html/HtmlSerializer.html" title="class in org.apache.juneau.html">HtmlSerializer</a></pre>
 <div class="block">Default serializer, single quotes, whitespace added.</div>
 </li>
@@ -235,7 +235,7 @@ extends <a href="../../../../org/apache/juneau/html/HtmlSerializer.html" title="
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -271,7 +271,7 @@ extends <a href="../../../../org/apache/juneau/html/HtmlSerializer.html" title="
 <ul class="blockListLast">
 <li class="blockList">
 <h4>SqReadable</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.SqReadable.html#line.171">SqReadable</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.SqReadable.html#line.169">SqReadable</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/html/HtmlSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/html/HtmlSerializer.html b/content/site/apidocs/org/apache/juneau/html/HtmlSerializer.html
index b843b2f..c0f2742 100644
--- a/content/site/apidocs/org/apache/juneau/html/HtmlSerializer.html
+++ b/content/site/apidocs/org/apache/juneau/html/HtmlSerializer.html
@@ -132,8 +132,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="text/html")
-public class <a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.html#line.138">HtmlSerializer</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.html#line.136">HtmlSerializer</a>
 extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a></pre>
 <div class="block">Serializes POJO models to HTML.
 
@@ -348,6 +347,13 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <div class="block">Constructor.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/html/HtmlSerializer.html#HtmlSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">HtmlSerializer</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+              <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+              <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</code>
+<div class="block">Constructor.</div>
+</td>
+</tr>
 </table>
 </li>
 </ul>
@@ -395,7 +401,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -431,7 +437,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/html/HtmlSerializer.html" title="class in org.apache.juneau.html">HtmlSerializer</a> <a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.html#line.141">DEFAULT</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/html/HtmlSerializer.html" title="class in org.apache.juneau.html">HtmlSerializer</a> <a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.html#line.139">DEFAULT</a></pre>
 <div class="block">Default serializer, all default settings.</div>
 </li>
 </ul>
@@ -441,7 +447,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_SQ</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/html/HtmlSerializer.html" title="class in org.apache.juneau.html">HtmlSerializer</a> <a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.html#line.144">DEFAULT_SQ</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/html/HtmlSerializer.html" title="class in org.apache.juneau.html">HtmlSerializer</a> <a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.html#line.142">DEFAULT_SQ</a></pre>
 <div class="block">Default serializer, single quotes.</div>
 </li>
 </ul>
@@ -451,7 +457,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DEFAULT_SQ_READABLE</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/html/HtmlSerializer.html" title="class in org.apache.juneau.html">HtmlSerializer</a> <a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.html#line.147">DEFAULT_SQ_READABLE</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/html/HtmlSerializer.html" title="class in org.apache.juneau.html">HtmlSerializer</a> <a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.html#line.145">DEFAULT_SQ_READABLE</a></pre>
 <div class="block">Default serializer, single quotes, whitespace added.</div>
 </li>
 </ul>
@@ -466,14 +472,43 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <a name="HtmlSerializer-org.apache.juneau.PropertyStore-">
 <!--   -->
 </a>
+<ul class="blockList">
+<li class="blockList">
+<h4>HtmlSerializer</h4>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.html#line.184">HtmlSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<div class="block">Constructor.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+</dl>
+</li>
+</ul>
+<a name="HtmlSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">
+<!--   -->
+</a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>HtmlSerializer</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.html#line.185">HtmlSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.html#line.209">HtmlSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                      <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+                      <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+<dd><code>produces</code> - The media type that this serializer produces.</dd>
+<dd><code>accept</code> - The accept media types that the serializer can handle.
+   <p>
+   Can contain meta-characters per the <code>media-type</code> specification of
+   <a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1">RFC2616/14.1</a>
+   <p>
+   If empty, then assumes the only media type supported is <code>produces</code>.
+   <p>
+   For example, if this serializer produces <js>"application/json"</js> but should handle media types of
+   <js>"application/json"</js> and <js>"text/json"</js>, then the arguments should be:
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"application/json"</js>, <js>"text/json"</js>);</code>
+   <br>...or...
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"*&#8203;/json"</js>);</code></dd>
 </dl>
 </li>
 </ul>
@@ -491,7 +526,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <ul class="blockList">
 <li class="blockList">
 <h4>builder</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/html/HtmlSerializerBuilder.html" title="class in org.apache.juneau.html">HtmlSerializerBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.html#line.191">builder</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/html/HtmlSerializerBuilder.html" title="class in org.apache.juneau.html">HtmlSerializerBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.html#line.215">builder</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/CoreObject.html#builder--">CoreObject</a></code></span></div>
 <div class="block">Creates a new builder class for this object so that a new object can be created that expands upon the current
  object's settings.</div>
@@ -509,7 +544,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <ul class="blockList">
 <li class="blockList">
 <h4>getSchemaSerializer</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/html/HtmlSerializer.html" title="class in org.apache.juneau.html">HtmlSerializer</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.html#line.196">getSchemaSerializer</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/html/HtmlSerializer.html" title="class in org.apache.juneau.html">HtmlSerializer</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.html#line.220">getSchemaSerializer</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/xml/XmlSerializer.html#getSchemaSerializer--">XmlSerializer</a></code></span></div>
 <div class="block">Returns the schema serializer based on the settings of this serializer.</div>
 <dl>
@@ -526,7 +561,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.html#line.203">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializer.html#line.227">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession-org.apache.juneau.serializer.SerializerSessionArgs-">Serializer</a></code></span></div>
 <div class="block">Create the session object used for actual serialization of objects.</div>
 <dl>
@@ -536,8 +571,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="cl
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and serializer
-   contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   contexts.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The new session object.
    <br>Note that you must call <a href="../../../../org/apache/juneau/BeanSession.html#close--"><code>BeanSession.close()</code></a> on this object to perform any necessary

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/html/HtmlSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/html/HtmlSerializerSession.html b/content/site/apidocs/org/apache/juneau/html/HtmlSerializerSession.html
index 8472e62..a25827d 100644
--- a/content/site/apidocs/org/apache/juneau/html/HtmlSerializerSession.html
+++ b/content/site/apidocs/org/apache/juneau/html/HtmlSerializerSession.html
@@ -320,7 +320,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializerSession.html" ti
 <ul class="blockListLast">
 <li class="blockList">
 <h4>HtmlSerializerSession</h4>
-<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializerSession.html#line.68">HtmlSerializerSession</a>(<a href="../../../../org/apache/juneau/html/HtmlSerializerContext.html" title="class in org.apache.juneau.html">HtmlSerializerContext</a>&nbsp;ctx,
+<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializerSession.html#line.67">HtmlSerializerSession</a>(<a href="../../../../org/apache/juneau/html/HtmlSerializerContext.html" title="class in org.apache.juneau.html">HtmlSerializerContext</a>&nbsp;ctx,
                                 <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block">Create a new session using properties specified in the context.</div>
 <dl>
@@ -330,8 +330,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializerSession.html" ti
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and
-   serializer contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   serializer contexts.</dd>
 </dl>
 </li>
 </ul>
@@ -349,7 +348,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializerSession.html" ti
 <ul class="blockList">
 <li class="blockList">
 <h4>getHtmlWriter</h4>
-<pre>protected final&nbsp;<a href="../../../../org/apache/juneau/html/HtmlWriter.html" title="class in org.apache.juneau.html">HtmlWriter</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializerSession.html#line.97">getHtmlWriter</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out)
+<pre>protected final&nbsp;<a href="../../../../org/apache/juneau/html/HtmlWriter.html" title="class in org.apache.juneau.html">HtmlWriter</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializerSession.html#line.96">getHtmlWriter</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out)
                                   throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block">Converts the specified output target object to an <a href="../../../../org/apache/juneau/html/HtmlWriter.html" title="class in org.apache.juneau.html"><code>HtmlWriter</code></a>.</div>
 <dl>
@@ -368,7 +367,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializerSession.html" ti
 <ul class="blockList">
 <li class="blockList">
 <h4>isUri</h4>
-<pre>public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializerSession.html#line.117">isUri</a>(<a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;cm,
+<pre>public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializerSession.html#line.116">isUri</a>(<a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;cm,
                      <a href="../../../../org/apache/juneau/BeanPropertyMeta.html" title="class in org.apache.juneau">BeanPropertyMeta</a>&nbsp;pMeta,
                      <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</pre>
 <div class="block">Returns <jk>true</jk> if the specified object is a URL.</div>
@@ -389,7 +388,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializerSession.html" ti
 <ul class="blockList">
 <li class="blockList">
 <h4>getAnchorText</h4>
-<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializerSession.html#line.136">getAnchorText</a>(<a href="../../../../org/apache/juneau/BeanPropertyMeta.html" title="class in org.apache.juneau">BeanPropertyMeta</a>&nbsp;pMeta,
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializerSession.html#line.135">getAnchorText</a>(<a href="../../../../org/apache/juneau/BeanPropertyMeta.html" title="class in org.apache.juneau">BeanPropertyMeta</a>&nbsp;pMeta,
                             <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</pre>
 <div class="block">Returns the anchor text to use for the specified URL object.</div>
 <dl>
@@ -408,7 +407,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializerSession.html" ti
 <ul class="blockList">
 <li class="blockList">
 <h4>isAddKeyValueTableHeaders</h4>
-<pre>public final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializerSession.html#line.179">isAddKeyValueTableHeaders</a>()</pre>
+<pre>public final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializerSession.html#line.178">isAddKeyValueTableHeaders</a>()</pre>
 <div class="block">Returns the <a href="../../../../org/apache/juneau/html/HtmlSerializerContext.html#HTML_addKeyValueTableHeaders"><code>HtmlSerializerContext.HTML_addKeyValueTableHeaders</code></a> setting value for this session.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -422,7 +421,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializerSession.html" ti
 <ul class="blockList">
 <li class="blockList">
 <h4>isAddBeanTypeProperties</h4>
-<pre>public final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializerSession.html#line.189">isAddBeanTypeProperties</a>()</pre>
+<pre>public final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializerSession.html#line.188">isAddBeanTypeProperties</a>()</pre>
 <div class="block">Returns the <a href="../../../../org/apache/juneau/html/HtmlSerializerContext.html#HTML_addBeanTypeProperties"><code>HtmlSerializerContext.HTML_addBeanTypeProperties</code></a> setting value for this session.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
@@ -438,7 +437,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializerSession.html" ti
 <ul class="blockList">
 <li class="blockList">
 <h4>isHtmlMode</h4>
-<pre>public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializerSession.html#line.194">isHtmlMode</a>()</pre>
+<pre>public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializerSession.html#line.193">isHtmlMode</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/xml/XmlSerializerSession.html#isHtmlMode--">XmlSerializerSession</a></code></span></div>
 <div class="block">Returns <jk>true</jk> if we're serializing HTML.
 
@@ -459,7 +458,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializerSession.html" ti
 <ul class="blockList">
 <li class="blockList">
 <h4>doSerialize</h4>
-<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializerSession.html#line.199">doSerialize</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out,
+<pre>protected&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializerSession.html#line.198">doSerialize</a>(<a href="../../../../org/apache/juneau/serializer/SerializerPipe.html" title="class in org.apache.juneau.serializer">SerializerPipe</a>&nbsp;out,
                            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
                     throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/SerializerSession.html#doSerialize-org.apache.juneau.serializer.SerializerPipe-java.lang.Object-">SerializerSession</a></code></span></div>
@@ -484,7 +483,7 @@ extends <a href="../../../../org/apache/juneau/xml/XmlSerializerSession.html" ti
 <ul class="blockListLast">
 <li class="blockList">
 <h4>serializeAnything</h4>
-<pre>protected&nbsp;org.apache.juneau.html.HtmlSerializerSession.ContentResult&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializerSession.html#line.233">serializeAnything</a>(<a href="../../../../org/apache/juneau/html/HtmlWriter.html" title="class in org.apache.juneau.html">HtmlWriter</a>&nbsp;out,
+<pre>protected&nbsp;org.apache.juneau.html.HtmlSerializerSession.ContentResult&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlSerializerSession.html#line.232">serializeAnything</a>(<a href="../../../../org/apache/juneau/html/HtmlWriter.html" title="class in org.apache.juneau.html">HtmlWriter</a>&nbsp;out,
                                                                                        <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o,
                                                                                        <a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;eType,
                                                                                        <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,


[10/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.Readable.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.Readable.html b/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.Readable.html
index 4377968..1edde7a 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.Readable.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.Readable.html
@@ -29,256 +29,280 @@
 <span class="sourceLineNo">021</span>import java.net.*;<a name="line.21"></a>
 <span class="sourceLineNo">022</span><a name="line.22"></a>
 <span class="sourceLineNo">023</span>import org.apache.juneau.*;<a name="line.23"></a>
-<span class="sourceLineNo">024</span>import org.apache.juneau.annotation.*;<a name="line.24"></a>
-<span class="sourceLineNo">025</span>import org.apache.juneau.serializer.*;<a name="line.25"></a>
-<span class="sourceLineNo">026</span>import org.apache.juneau.uon.*;<a name="line.26"></a>
-<span class="sourceLineNo">027</span><a name="line.27"></a>
-<span class="sourceLineNo">028</span>/**<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * Serializes POJO models to URL-encoded notation with UON-encoded values (a notation for URL-encoded query paramter values).<a name="line.29"></a>
-<span class="sourceLineNo">030</span> *<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;application/x-www-form-urlencoded&lt;/code&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * &lt;p&gt;<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/x-www-form-urlencoded&lt;/code&gt;<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *<a name="line.36"></a>
-<span class="sourceLineNo">037</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *<a name="line.38"></a>
-<span class="sourceLineNo">039</span> * This serializer provides several serialization options.  Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.39"></a>
-<span class="sourceLineNo">040</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *<a name="line.41"></a>
-<span class="sourceLineNo">042</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *<a name="line.43"></a>
-<span class="sourceLineNo">044</span> * This class has the following properties associated with it:<a name="line.44"></a>
-<span class="sourceLineNo">045</span> * &lt;ul&gt;<a name="line.45"></a>
-<span class="sourceLineNo">046</span> *    &lt;li&gt;{@link UonSerializerContext}<a name="line.46"></a>
-<span class="sourceLineNo">047</span> *    &lt;li&gt;{@link BeanContext}<a name="line.47"></a>
-<span class="sourceLineNo">048</span> * &lt;/ul&gt;<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *<a name="line.49"></a>
-<span class="sourceLineNo">050</span> * &lt;p&gt;<a name="line.50"></a>
-<span class="sourceLineNo">051</span> * The following shows a sample object defined in Javascript:<a name="line.51"></a>
-<span class="sourceLineNo">052</span> * &lt;p class='bcode'&gt;<a name="line.52"></a>
-<span class="sourceLineNo">053</span> *    {<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *       id: 1,<a name="line.54"></a>
-<span class="sourceLineNo">055</span> *       name: &lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.55"></a>
-<span class="sourceLineNo">056</span> *       uri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.56"></a>
-<span class="sourceLineNo">057</span> *       addressBookUri: &lt;js&gt;'http://sample/addressBook'&lt;/js&gt;,<a name="line.57"></a>
-<span class="sourceLineNo">058</span> *       birthDate: &lt;js&gt;'1946-08-12T00:00:00Z'&lt;/js&gt;,<a name="line.58"></a>
-<span class="sourceLineNo">059</span> *       otherIds: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.59"></a>
-<span class="sourceLineNo">060</span> *       addresses: [<a name="line.60"></a>
-<span class="sourceLineNo">061</span> *          {<a name="line.61"></a>
-<span class="sourceLineNo">062</span> *             uri: &lt;js&gt;'http://sample/addressBook/address/1'&lt;/js&gt;,<a name="line.62"></a>
-<span class="sourceLineNo">063</span> *             personUri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.63"></a>
-<span class="sourceLineNo">064</span> *             id: 1,<a name="line.64"></a>
-<span class="sourceLineNo">065</span> *             street: &lt;js&gt;'100 Main Street'&lt;/js&gt;,<a name="line.65"></a>
-<span class="sourceLineNo">066</span> *             city: &lt;js&gt;'Anywhereville'&lt;/js&gt;,<a name="line.66"></a>
-<span class="sourceLineNo">067</span> *             state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.67"></a>
-<span class="sourceLineNo">068</span> *             zip: 12345,<a name="line.68"></a>
-<span class="sourceLineNo">069</span> *             isCurrent: &lt;jk&gt;true&lt;/jk&gt;,<a name="line.69"></a>
-<span class="sourceLineNo">070</span> *          }<a name="line.70"></a>
-<span class="sourceLineNo">071</span> *       ]<a name="line.71"></a>
-<span class="sourceLineNo">072</span> *    }<a name="line.72"></a>
-<span class="sourceLineNo">073</span> * &lt;/p&gt;<a name="line.73"></a>
-<span class="sourceLineNo">074</span> *<a name="line.74"></a>
-<span class="sourceLineNo">075</span> * &lt;p&gt;<a name="line.75"></a>
-<span class="sourceLineNo">076</span> * Using the "strict" syntax defined in this document, the equivalent URL-encoded notation would be as follows:<a name="line.76"></a>
-<span class="sourceLineNo">077</span> * &lt;p class='bcode'&gt;<a name="line.77"></a>
-<span class="sourceLineNo">078</span> *    &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;<a name="line.78"></a>
-<span class="sourceLineNo">079</span> *    &amp;amp;&lt;ua&gt;name&lt;/ua&gt;=&lt;us&gt;'John+Smith'&lt;/us&gt;,<a name="line.79"></a>
-<span class="sourceLineNo">080</span> *    &amp;amp;&lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *    &amp;amp;&lt;ua&gt;addressBookUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook&lt;/us&gt;,<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *    &amp;amp;&lt;ua&gt;birthDate&lt;/ua&gt;=&lt;us&gt;1946-08-12T00:00:00Z&lt;/us&gt;,<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *    &amp;amp;&lt;ua&gt;otherIds&lt;/ua&gt;=&lt;uk&gt;null&lt;/uk&gt;,<a name="line.83"></a>
-<span class="sourceLineNo">084</span> *    &amp;amp;&lt;ua&gt;addresses&lt;/ua&gt;=@(<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *       (<a name="line.85"></a>
-<span class="sourceLineNo">086</span> *          &lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/address/1&lt;/us&gt;,<a name="line.86"></a>
-<span class="sourceLineNo">087</span> *          &lt;ua&gt;personUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *          &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;,<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *          &lt;ua&gt;street&lt;/ua&gt;=&lt;us&gt;'100+Main+Street'&lt;/us&gt;,<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *          &lt;ua&gt;city&lt;/ua&gt;=&lt;us&gt;Anywhereville&lt;/us&gt;,<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *          &lt;ua&gt;state&lt;/ua&gt;=&lt;us&gt;NY&lt;/us&gt;,<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *          &lt;ua&gt;zip&lt;/ua&gt;=&lt;un&gt;12345&lt;/un&gt;,<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *          &lt;ua&gt;isCurrent&lt;/ua&gt;=&lt;uk&gt;true&lt;/uk&gt;<a name="line.93"></a>
-<span class="sourceLineNo">094</span> *       )<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *    )<a name="line.95"></a>
-<span class="sourceLineNo">096</span> * &lt;/p&gt;<a name="line.96"></a>
-<span class="sourceLineNo">097</span> *<a name="line.97"></a>
-<span class="sourceLineNo">098</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.98"></a>
-<span class="sourceLineNo">099</span> * &lt;p class='bcode'&gt;<a name="line.99"></a>
-<span class="sourceLineNo">100</span> *    &lt;jc&gt;// Serialize a Map&lt;/jc&gt;<a name="line.100"></a>
-<span class="sourceLineNo">101</span> *    Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{a:'b',c:1,d:false,e:['f',1,false],g:{h:'i'}}"&lt;/js&gt;);<a name="line.101"></a>
-<span class="sourceLineNo">102</span> *<a name="line.102"></a>
-<span class="sourceLineNo">103</span> *    &lt;jc&gt;// Serialize to value equivalent to JSON.&lt;/jc&gt;<a name="line.103"></a>
-<span class="sourceLineNo">104</span> *    &lt;jc&gt;// Produces "a=b&amp;amp;c=1&amp;amp;d=false&amp;amp;e=@(f,1,false)&amp;amp;g=(h=i)"&lt;/jc&gt;<a name="line.104"></a>
-<span class="sourceLineNo">105</span> *    String s = UrlEncodingSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.105"></a>
-<span class="sourceLineNo">106</span> *<a name="line.106"></a>
-<span class="sourceLineNo">107</span> *    &lt;jc&gt;// Serialize a bean&lt;/jc&gt;<a name="line.107"></a>
-<span class="sourceLineNo">108</span> *    &lt;jk&gt;public class&lt;/jk&gt; Person {<a name="line.108"></a>
-<span class="sourceLineNo">109</span> *       &lt;jk&gt;public&lt;/jk&gt; Person(String s);<a name="line.109"></a>
-<span class="sourceLineNo">110</span> *       &lt;jk&gt;public&lt;/jk&gt; String getName();<a name="line.110"></a>
-<span class="sourceLineNo">111</span> *       &lt;jk&gt;public int&lt;/jk&gt; getAge();<a name="line.111"></a>
-<span class="sourceLineNo">112</span> *       &lt;jk&gt;public&lt;/jk&gt; Address getAddress();<a name="line.112"></a>
-<span class="sourceLineNo">113</span> *       &lt;jk&gt;public boolean&lt;/jk&gt; deceased;<a name="line.113"></a>
-<span class="sourceLineNo">114</span> *    }<a name="line.114"></a>
-<span class="sourceLineNo">115</span> *<a name="line.115"></a>
-<span class="sourceLineNo">116</span> *    &lt;jk&gt;public class&lt;/jk&gt; Address {<a name="line.116"></a>
-<span class="sourceLineNo">117</span> *       &lt;jk&gt;public&lt;/jk&gt; String getStreet();<a name="line.117"></a>
-<span class="sourceLineNo">118</span> *       &lt;jk&gt;public&lt;/jk&gt; String getCity();<a name="line.118"></a>
-<span class="sourceLineNo">119</span> *       &lt;jk&gt;public&lt;/jk&gt; String getState();<a name="line.119"></a>
-<span class="sourceLineNo">120</span> *       &lt;jk&gt;public int&lt;/jk&gt; getZip();<a name="line.120"></a>
-<span class="sourceLineNo">121</span> *    }<a name="line.121"></a>
-<span class="sourceLineNo">122</span> *<a name="line.122"></a>
-<span class="sourceLineNo">123</span> *    Person p = &lt;jk&gt;new&lt;/jk&gt; Person(&lt;js&gt;"John Doe"&lt;/js&gt;, 23, &lt;js&gt;"123 Main St"&lt;/js&gt;, &lt;js&gt;"Anywhere"&lt;/js&gt;, &lt;js&gt;"NY"&lt;/js&gt;, 12345, &lt;jk&gt;false&lt;/jk&gt;);<a name="line.123"></a>
-<span class="sourceLineNo">124</span> *<a name="line.124"></a>
-<span class="sourceLineNo">125</span> *    &lt;jc&gt;// Produces "name=John+Doe&amp;amp;age=23&amp;amp;address=(street='123+Main+St',city=Anywhere,state=NY,zip=12345)&amp;amp;deceased=false"&lt;/jc&gt;<a name="line.125"></a>
-<span class="sourceLineNo">126</span> *    String s = UrlEncodingSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.126"></a>
-<span class="sourceLineNo">127</span> * &lt;/p&gt;<a name="line.127"></a>
-<span class="sourceLineNo">128</span> */<a name="line.128"></a>
-<span class="sourceLineNo">129</span>@Produces("application/x-www-form-urlencoded")<a name="line.129"></a>
-<span class="sourceLineNo">130</span>@SuppressWarnings("hiding")<a name="line.130"></a>
-<span class="sourceLineNo">131</span>public class UrlEncodingSerializer extends UonSerializer implements PartSerializer {<a name="line.131"></a>
-<span class="sourceLineNo">132</span><a name="line.132"></a>
-<span class="sourceLineNo">133</span>   /** Reusable instance of {@link UrlEncodingSerializer}, all default settings. */<a name="line.133"></a>
-<span class="sourceLineNo">134</span>   public static final UrlEncodingSerializer DEFAULT = new UrlEncodingSerializer(PropertyStore.create());<a name="line.134"></a>
-<span class="sourceLineNo">135</span><a name="line.135"></a>
-<span class="sourceLineNo">136</span>   /** Reusable instance of {@link UrlEncodingSerializer.PlainText}. */<a name="line.136"></a>
-<span class="sourceLineNo">137</span>   public static final UrlEncodingSerializer DEFAULT_PLAINTEXT = new PlainText(PropertyStore.create());<a name="line.137"></a>
-<span class="sourceLineNo">138</span><a name="line.138"></a>
-<span class="sourceLineNo">139</span>   /** Reusable instance of {@link UrlEncodingSerializer.Expanded}. */<a name="line.139"></a>
-<span class="sourceLineNo">140</span>   public static final UrlEncodingSerializer DEFAULT_EXPANDED = new Expanded(PropertyStore.create());<a name="line.140"></a>
-<span class="sourceLineNo">141</span><a name="line.141"></a>
-<span class="sourceLineNo">142</span>   /** Reusable instance of {@link UrlEncodingSerializer.Readable}. */<a name="line.142"></a>
-<span class="sourceLineNo">143</span>   public static final UrlEncodingSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.143"></a>
-<span class="sourceLineNo">144</span><a name="line.144"></a>
-<span class="sourceLineNo">145</span>   /**<a name="line.145"></a>
-<span class="sourceLineNo">146</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().expandedParams(&lt;jk&gt;true&lt;/jk&gt;).build();&lt;/code&gt;.<a name="line.146"></a>
-<span class="sourceLineNo">147</span>    */<a name="line.147"></a>
-<span class="sourceLineNo">148</span>   @Produces(value="application/x-www-form-urlencoded",contentType="application/x-www-form-urlencoded")<a name="line.148"></a>
-<span class="sourceLineNo">149</span>   public static class Expanded extends UrlEncodingSerializer {<a name="line.149"></a>
-<span class="sourceLineNo">150</span><a name="line.150"></a>
-<span class="sourceLineNo">151</span>      /**<a name="line.151"></a>
-<span class="sourceLineNo">152</span>       * Constructor.<a name="line.152"></a>
-<span class="sourceLineNo">153</span>       *<a name="line.153"></a>
-<span class="sourceLineNo">154</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.154"></a>
-<span class="sourceLineNo">155</span>       */<a name="line.155"></a>
-<span class="sourceLineNo">156</span>      public Expanded(PropertyStore propertyStore) {<a name="line.156"></a>
-<span class="sourceLineNo">157</span>         super(propertyStore.copy().append(URLENC_expandedParams, true));<a name="line.157"></a>
-<span class="sourceLineNo">158</span>      }<a name="line.158"></a>
-<span class="sourceLineNo">159</span>   }<a name="line.159"></a>
-<span class="sourceLineNo">160</span><a name="line.160"></a>
-<span class="sourceLineNo">161</span>   /**<a name="line.161"></a>
-<span class="sourceLineNo">162</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().useWhitespace(&lt;jk&gt;true&lt;/jk&gt;).build();&lt;/code&gt;.<a name="line.162"></a>
-<span class="sourceLineNo">163</span>    */<a name="line.163"></a>
-<span class="sourceLineNo">164</span>   public static class Readable extends UrlEncodingSerializer {<a name="line.164"></a>
-<span class="sourceLineNo">165</span><a name="line.165"></a>
-<span class="sourceLineNo">166</span>      /**<a name="line.166"></a>
-<span class="sourceLineNo">167</span>       * Constructor.<a name="line.167"></a>
-<span class="sourceLineNo">168</span>       *<a name="line.168"></a>
-<span class="sourceLineNo">169</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.169"></a>
-<span class="sourceLineNo">170</span>       */<a name="line.170"></a>
-<span class="sourceLineNo">171</span>      public Readable(PropertyStore propertyStore) {<a name="line.171"></a>
-<span class="sourceLineNo">172</span>         super(propertyStore.copy().append(SERIALIZER_useWhitespace, true));<a name="line.172"></a>
-<span class="sourceLineNo">173</span>      }<a name="line.173"></a>
-<span class="sourceLineNo">174</span>   }<a name="line.174"></a>
-<span class="sourceLineNo">175</span><a name="line.175"></a>
-<span class="sourceLineNo">176</span>   /**<a name="line.176"></a>
-<span class="sourceLineNo">177</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().plainTextParts().build();&lt;/code&gt;.<a name="line.177"></a>
-<span class="sourceLineNo">178</span>    */<a name="line.178"></a>
-<span class="sourceLineNo">179</span>   public static class PlainText extends UrlEncodingSerializer {<a name="line.179"></a>
-<span class="sourceLineNo">180</span><a name="line.180"></a>
-<span class="sourceLineNo">181</span>      /**<a name="line.181"></a>
-<span class="sourceLineNo">182</span>       * Constructor.<a name="line.182"></a>
-<span class="sourceLineNo">183</span>       *<a name="line.183"></a>
-<span class="sourceLineNo">184</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.184"></a>
-<span class="sourceLineNo">185</span>       */<a name="line.185"></a>
-<span class="sourceLineNo">186</span>      public PlainText(PropertyStore propertyStore) {<a name="line.186"></a>
-<span class="sourceLineNo">187</span>         super(propertyStore.copy().append(UON_paramFormat, "PLAINTEXT"));<a name="line.187"></a>
-<span class="sourceLineNo">188</span>      }<a name="line.188"></a>
-<span class="sourceLineNo">189</span>   }<a name="line.189"></a>
-<span class="sourceLineNo">190</span><a name="line.190"></a>
-<span class="sourceLineNo">191</span>   private final UrlEncodingSerializerContext ctx;<a name="line.191"></a>
-<span class="sourceLineNo">192</span><a name="line.192"></a>
-<span class="sourceLineNo">193</span>   /**<a name="line.193"></a>
-<span class="sourceLineNo">194</span>    * Constructor.<a name="line.194"></a>
-<span class="sourceLineNo">195</span>    *<a name="line.195"></a>
-<span class="sourceLineNo">196</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.196"></a>
-<span class="sourceLineNo">197</span>    */<a name="line.197"></a>
-<span class="sourceLineNo">198</span>   public UrlEncodingSerializer(PropertyStore propertyStore) {<a name="line.198"></a>
-<span class="sourceLineNo">199</span>      super(propertyStore.copy().append(UON_encodeChars, true));<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      this.ctx = createContext(UrlEncodingSerializerContext.class);<a name="line.200"></a>
-<span class="sourceLineNo">201</span>   }<a name="line.201"></a>
-<span class="sourceLineNo">202</span><a name="line.202"></a>
-<span class="sourceLineNo">203</span>   @Override /* CoreObject */<a name="line.203"></a>
-<span class="sourceLineNo">204</span>   public UrlEncodingSerializerBuilder builder() {<a name="line.204"></a>
-<span class="sourceLineNo">205</span>      return new UrlEncodingSerializerBuilder(propertyStore);<a name="line.205"></a>
-<span class="sourceLineNo">206</span>   }<a name="line.206"></a>
-<span class="sourceLineNo">207</span><a name="line.207"></a>
-<span class="sourceLineNo">208</span><a name="line.208"></a>
-<span class="sourceLineNo">209</span>   //--------------------------------------------------------------------------------<a name="line.209"></a>
-<span class="sourceLineNo">210</span>   // Methods for constructing individual parameter values.<a name="line.210"></a>
-<span class="sourceLineNo">211</span>   //--------------------------------------------------------------------------------<a name="line.211"></a>
-<span class="sourceLineNo">212</span><a name="line.212"></a>
-<span class="sourceLineNo">213</span>   /**<a name="line.213"></a>
-<span class="sourceLineNo">214</span>    * Converts the specified object to a string using this serializers {@link BeanSession#convertToType(Object, Class)}<a name="line.214"></a>
-<span class="sourceLineNo">215</span>    * method and runs {@link URLEncoder#encode(String,String)} against the results.<a name="line.215"></a>
-<span class="sourceLineNo">216</span>    *<a name="line.216"></a>
-<span class="sourceLineNo">217</span>    * &lt;p&gt;<a name="line.217"></a>
-<span class="sourceLineNo">218</span>    * Useful for constructing URL parts.<a name="line.218"></a>
-<span class="sourceLineNo">219</span>    *<a name="line.219"></a>
-<span class="sourceLineNo">220</span>    * @param o The object to serialize.<a name="line.220"></a>
-<span class="sourceLineNo">221</span>    * @param urlEncode<a name="line.221"></a>
-<span class="sourceLineNo">222</span>    *    URL-encode the string if necessary.<a name="line.222"></a>
-<span class="sourceLineNo">223</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then uses the value of the {@link UonSerializerContext#UON_encodeChars} setting.<a name="line.223"></a>
-<span class="sourceLineNo">224</span>    * @param plainTextParams<a name="line.224"></a>
-<span class="sourceLineNo">225</span>    *    Whether we're using plain-text params.<a name="line.225"></a>
-<span class="sourceLineNo">226</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then uses the value from the {@link UrlEncodingSerializerContext#URLENC_paramFormat} setting.<a name="line.226"></a>
-<span class="sourceLineNo">227</span>    * @return The serialized object.<a name="line.227"></a>
-<span class="sourceLineNo">228</span>    */<a name="line.228"></a>
-<span class="sourceLineNo">229</span>   private String serializePart(Object o, Boolean urlEncode, Boolean plainTextParams) {<a name="line.229"></a>
-<span class="sourceLineNo">230</span>      try {<a name="line.230"></a>
-<span class="sourceLineNo">231</span>         // Shortcut for simple types.<a name="line.231"></a>
-<span class="sourceLineNo">232</span>         ClassMeta&lt;?&gt; cm = getBeanContext().getClassMetaForObject(o);<a name="line.232"></a>
-<span class="sourceLineNo">233</span>         if (cm != null) {<a name="line.233"></a>
-<span class="sourceLineNo">234</span>            if (cm.isNumber() || cm.isBoolean())<a name="line.234"></a>
-<span class="sourceLineNo">235</span>               return o.toString();<a name="line.235"></a>
-<span class="sourceLineNo">236</span>            if (cm.isCharSequence()) {<a name="line.236"></a>
-<span class="sourceLineNo">237</span>               String s = o.toString();<a name="line.237"></a>
-<span class="sourceLineNo">238</span>               boolean ptt = (plainTextParams != null ? plainTextParams : ctx.plainTextParams());<a name="line.238"></a>
-<span class="sourceLineNo">239</span>               if (ptt || s.isEmpty() || ! UonUtils.needsQuotes(s))<a name="line.239"></a>
-<span class="sourceLineNo">240</span>                  return (urlEncode ? urlEncode(s) : s);<a name="line.240"></a>
-<span class="sourceLineNo">241</span>            }<a name="line.241"></a>
-<span class="sourceLineNo">242</span>         }<a name="line.242"></a>
-<span class="sourceLineNo">243</span><a name="line.243"></a>
-<span class="sourceLineNo">244</span>         StringWriter w = new StringWriter();<a name="line.244"></a>
-<span class="sourceLineNo">245</span>         UonSerializerSession s = new UonSerializerSession(ctx, urlEncode, SerializerSessionArgs.DEFAULT);<a name="line.245"></a>
-<span class="sourceLineNo">246</span>         s.serialize(w, o);<a name="line.246"></a>
-<span class="sourceLineNo">247</span>         return w.toString();<a name="line.247"></a>
-<span class="sourceLineNo">248</span>      } catch (Exception e) {<a name="line.248"></a>
-<span class="sourceLineNo">249</span>         throw new RuntimeException(e);<a name="line.249"></a>
-<span class="sourceLineNo">250</span>      }<a name="line.250"></a>
-<span class="sourceLineNo">251</span>   }<a name="line.251"></a>
-<span class="sourceLineNo">252</span><a name="line.252"></a>
-<span class="sourceLineNo">253</span><a name="line.253"></a>
-<span class="sourceLineNo">254</span>   //--------------------------------------------------------------------------------<a name="line.254"></a>
-<span class="sourceLineNo">255</span>   // Entry point methods<a name="line.255"></a>
-<span class="sourceLineNo">256</span>   //--------------------------------------------------------------------------------<a name="line.256"></a>
-<span class="sourceLineNo">257</span><a name="line.257"></a>
-<span class="sourceLineNo">258</span>   @Override /* Serializer */<a name="line.258"></a>
-<span class="sourceLineNo">259</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.259"></a>
-<span class="sourceLineNo">260</span>      return new UrlEncodingSerializerSession(ctx, null, args);<a name="line.260"></a>
-<span class="sourceLineNo">261</span>   }<a name="line.261"></a>
-<span class="sourceLineNo">262</span><a name="line.262"></a>
-<span class="sourceLineNo">263</span>   @Override /* PartSerializer */<a name="line.263"></a>
-<span class="sourceLineNo">264</span>   public String serialize(PartType type, Object value) {<a name="line.264"></a>
-<span class="sourceLineNo">265</span>      switch(type) {<a name="line.265"></a>
-<span class="sourceLineNo">266</span>         case HEADER: return serializePart(value, false, true);<a name="line.266"></a>
-<span class="sourceLineNo">267</span>         case FORM_DATA: return serializePart(value, false, null);<a name="line.267"></a>
-<span class="sourceLineNo">268</span>         case PATH: return serializePart(value, false, null);<a name="line.268"></a>
-<span class="sourceLineNo">269</span>         case QUERY: return serializePart(value, false, null);<a name="line.269"></a>
-<span class="sourceLineNo">270</span>         default: return toString(value);<a name="line.270"></a>
-<span class="sourceLineNo">271</span>      }<a name="line.271"></a>
-<span class="sourceLineNo">272</span>   }<a name="line.272"></a>
-<span class="sourceLineNo">273</span>}<a name="line.273"></a>
+<span class="sourceLineNo">024</span>import org.apache.juneau.serializer.*;<a name="line.24"></a>
+<span class="sourceLineNo">025</span>import org.apache.juneau.uon.*;<a name="line.25"></a>
+<span class="sourceLineNo">026</span><a name="line.26"></a>
+<span class="sourceLineNo">027</span>/**<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * Serializes POJO models to URL-encoded notation with UON-encoded values (a notation for URL-encoded query paramter values).<a name="line.28"></a>
+<span class="sourceLineNo">029</span> *<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;application/x-www-form-urlencoded&lt;/code&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * &lt;p&gt;<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/x-www-form-urlencoded&lt;/code&gt;<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *<a name="line.35"></a>
+<span class="sourceLineNo">036</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * This serializer provides several serialization options.  Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.38"></a>
+<span class="sourceLineNo">039</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *<a name="line.40"></a>
+<span class="sourceLineNo">041</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *<a name="line.42"></a>
+<span class="sourceLineNo">043</span> * This class has the following properties associated with it:<a name="line.43"></a>
+<span class="sourceLineNo">044</span> * &lt;ul&gt;<a name="line.44"></a>
+<span class="sourceLineNo">045</span> *    &lt;li&gt;{@link UonSerializerContext}<a name="line.45"></a>
+<span class="sourceLineNo">046</span> *    &lt;li&gt;{@link BeanContext}<a name="line.46"></a>
+<span class="sourceLineNo">047</span> * &lt;/ul&gt;<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *<a name="line.48"></a>
+<span class="sourceLineNo">049</span> * &lt;p&gt;<a name="line.49"></a>
+<span class="sourceLineNo">050</span> * The following shows a sample object defined in Javascript:<a name="line.50"></a>
+<span class="sourceLineNo">051</span> * &lt;p class='bcode'&gt;<a name="line.51"></a>
+<span class="sourceLineNo">052</span> *    {<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *       id: 1,<a name="line.53"></a>
+<span class="sourceLineNo">054</span> *       name: &lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.54"></a>
+<span class="sourceLineNo">055</span> *       uri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.55"></a>
+<span class="sourceLineNo">056</span> *       addressBookUri: &lt;js&gt;'http://sample/addressBook'&lt;/js&gt;,<a name="line.56"></a>
+<span class="sourceLineNo">057</span> *       birthDate: &lt;js&gt;'1946-08-12T00:00:00Z'&lt;/js&gt;,<a name="line.57"></a>
+<span class="sourceLineNo">058</span> *       otherIds: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.58"></a>
+<span class="sourceLineNo">059</span> *       addresses: [<a name="line.59"></a>
+<span class="sourceLineNo">060</span> *          {<a name="line.60"></a>
+<span class="sourceLineNo">061</span> *             uri: &lt;js&gt;'http://sample/addressBook/address/1'&lt;/js&gt;,<a name="line.61"></a>
+<span class="sourceLineNo">062</span> *             personUri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.62"></a>
+<span class="sourceLineNo">063</span> *             id: 1,<a name="line.63"></a>
+<span class="sourceLineNo">064</span> *             street: &lt;js&gt;'100 Main Street'&lt;/js&gt;,<a name="line.64"></a>
+<span class="sourceLineNo">065</span> *             city: &lt;js&gt;'Anywhereville'&lt;/js&gt;,<a name="line.65"></a>
+<span class="sourceLineNo">066</span> *             state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.66"></a>
+<span class="sourceLineNo">067</span> *             zip: 12345,<a name="line.67"></a>
+<span class="sourceLineNo">068</span> *             isCurrent: &lt;jk&gt;true&lt;/jk&gt;,<a name="line.68"></a>
+<span class="sourceLineNo">069</span> *          }<a name="line.69"></a>
+<span class="sourceLineNo">070</span> *       ]<a name="line.70"></a>
+<span class="sourceLineNo">071</span> *    }<a name="line.71"></a>
+<span class="sourceLineNo">072</span> * &lt;/p&gt;<a name="line.72"></a>
+<span class="sourceLineNo">073</span> *<a name="line.73"></a>
+<span class="sourceLineNo">074</span> * &lt;p&gt;<a name="line.74"></a>
+<span class="sourceLineNo">075</span> * Using the "strict" syntax defined in this document, the equivalent URL-encoded notation would be as follows:<a name="line.75"></a>
+<span class="sourceLineNo">076</span> * &lt;p class='bcode'&gt;<a name="line.76"></a>
+<span class="sourceLineNo">077</span> *    &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;<a name="line.77"></a>
+<span class="sourceLineNo">078</span> *    &amp;amp;&lt;ua&gt;name&lt;/ua&gt;=&lt;us&gt;'John+Smith'&lt;/us&gt;,<a name="line.78"></a>
+<span class="sourceLineNo">079</span> *    &amp;amp;&lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *    &amp;amp;&lt;ua&gt;addressBookUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook&lt;/us&gt;,<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *    &amp;amp;&lt;ua&gt;birthDate&lt;/ua&gt;=&lt;us&gt;1946-08-12T00:00:00Z&lt;/us&gt;,<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *    &amp;amp;&lt;ua&gt;otherIds&lt;/ua&gt;=&lt;uk&gt;null&lt;/uk&gt;,<a name="line.82"></a>
+<span class="sourceLineNo">083</span> *    &amp;amp;&lt;ua&gt;addresses&lt;/ua&gt;=@(<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *       (<a name="line.84"></a>
+<span class="sourceLineNo">085</span> *          &lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/address/1&lt;/us&gt;,<a name="line.85"></a>
+<span class="sourceLineNo">086</span> *          &lt;ua&gt;personUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *          &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;,<a name="line.87"></a>
+<span class="sourceLineNo">088</span> *          &lt;ua&gt;street&lt;/ua&gt;=&lt;us&gt;'100+Main+Street'&lt;/us&gt;,<a name="line.88"></a>
+<span class="sourceLineNo">089</span> *          &lt;ua&gt;city&lt;/ua&gt;=&lt;us&gt;Anywhereville&lt;/us&gt;,<a name="line.89"></a>
+<span class="sourceLineNo">090</span> *          &lt;ua&gt;state&lt;/ua&gt;=&lt;us&gt;NY&lt;/us&gt;,<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *          &lt;ua&gt;zip&lt;/ua&gt;=&lt;un&gt;12345&lt;/un&gt;,<a name="line.91"></a>
+<span class="sourceLineNo">092</span> *          &lt;ua&gt;isCurrent&lt;/ua&gt;=&lt;uk&gt;true&lt;/uk&gt;<a name="line.92"></a>
+<span class="sourceLineNo">093</span> *       )<a name="line.93"></a>
+<span class="sourceLineNo">094</span> *    )<a name="line.94"></a>
+<span class="sourceLineNo">095</span> * &lt;/p&gt;<a name="line.95"></a>
+<span class="sourceLineNo">096</span> *<a name="line.96"></a>
+<span class="sourceLineNo">097</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.97"></a>
+<span class="sourceLineNo">098</span> * &lt;p class='bcode'&gt;<a name="line.98"></a>
+<span class="sourceLineNo">099</span> *    &lt;jc&gt;// Serialize a Map&lt;/jc&gt;<a name="line.99"></a>
+<span class="sourceLineNo">100</span> *    Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{a:'b',c:1,d:false,e:['f',1,false],g:{h:'i'}}"&lt;/js&gt;);<a name="line.100"></a>
+<span class="sourceLineNo">101</span> *<a name="line.101"></a>
+<span class="sourceLineNo">102</span> *    &lt;jc&gt;// Serialize to value equivalent to JSON.&lt;/jc&gt;<a name="line.102"></a>
+<span class="sourceLineNo">103</span> *    &lt;jc&gt;// Produces "a=b&amp;amp;c=1&amp;amp;d=false&amp;amp;e=@(f,1,false)&amp;amp;g=(h=i)"&lt;/jc&gt;<a name="line.103"></a>
+<span class="sourceLineNo">104</span> *    String s = UrlEncodingSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.104"></a>
+<span class="sourceLineNo">105</span> *<a name="line.105"></a>
+<span class="sourceLineNo">106</span> *    &lt;jc&gt;// Serialize a bean&lt;/jc&gt;<a name="line.106"></a>
+<span class="sourceLineNo">107</span> *    &lt;jk&gt;public class&lt;/jk&gt; Person {<a name="line.107"></a>
+<span class="sourceLineNo">108</span> *       &lt;jk&gt;public&lt;/jk&gt; Person(String s);<a name="line.108"></a>
+<span class="sourceLineNo">109</span> *       &lt;jk&gt;public&lt;/jk&gt; String getName();<a name="line.109"></a>
+<span class="sourceLineNo">110</span> *       &lt;jk&gt;public int&lt;/jk&gt; getAge();<a name="line.110"></a>
+<span class="sourceLineNo">111</span> *       &lt;jk&gt;public&lt;/jk&gt; Address getAddress();<a name="line.111"></a>
+<span class="sourceLineNo">112</span> *       &lt;jk&gt;public boolean&lt;/jk&gt; deceased;<a name="line.112"></a>
+<span class="sourceLineNo">113</span> *    }<a name="line.113"></a>
+<span class="sourceLineNo">114</span> *<a name="line.114"></a>
+<span class="sourceLineNo">115</span> *    &lt;jk&gt;public class&lt;/jk&gt; Address {<a name="line.115"></a>
+<span class="sourceLineNo">116</span> *       &lt;jk&gt;public&lt;/jk&gt; String getStreet();<a name="line.116"></a>
+<span class="sourceLineNo">117</span> *       &lt;jk&gt;public&lt;/jk&gt; String getCity();<a name="line.117"></a>
+<span class="sourceLineNo">118</span> *       &lt;jk&gt;public&lt;/jk&gt; String getState();<a name="line.118"></a>
+<span class="sourceLineNo">119</span> *       &lt;jk&gt;public int&lt;/jk&gt; getZip();<a name="line.119"></a>
+<span class="sourceLineNo">120</span> *    }<a name="line.120"></a>
+<span class="sourceLineNo">121</span> *<a name="line.121"></a>
+<span class="sourceLineNo">122</span> *    Person p = &lt;jk&gt;new&lt;/jk&gt; Person(&lt;js&gt;"John Doe"&lt;/js&gt;, 23, &lt;js&gt;"123 Main St"&lt;/js&gt;, &lt;js&gt;"Anywhere"&lt;/js&gt;, &lt;js&gt;"NY"&lt;/js&gt;, 12345, &lt;jk&gt;false&lt;/jk&gt;);<a name="line.122"></a>
+<span class="sourceLineNo">123</span> *<a name="line.123"></a>
+<span class="sourceLineNo">124</span> *    &lt;jc&gt;// Produces "name=John+Doe&amp;amp;age=23&amp;amp;address=(street='123+Main+St',city=Anywhere,state=NY,zip=12345)&amp;amp;deceased=false"&lt;/jc&gt;<a name="line.124"></a>
+<span class="sourceLineNo">125</span> *    String s = UrlEncodingSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.125"></a>
+<span class="sourceLineNo">126</span> * &lt;/p&gt;<a name="line.126"></a>
+<span class="sourceLineNo">127</span> */<a name="line.127"></a>
+<span class="sourceLineNo">128</span>@SuppressWarnings("hiding")<a name="line.128"></a>
+<span class="sourceLineNo">129</span>public class UrlEncodingSerializer extends UonSerializer implements PartSerializer {<a name="line.129"></a>
+<span class="sourceLineNo">130</span><a name="line.130"></a>
+<span class="sourceLineNo">131</span>   /** Reusable instance of {@link UrlEncodingSerializer}, all default settings. */<a name="line.131"></a>
+<span class="sourceLineNo">132</span>   public static final UrlEncodingSerializer DEFAULT = new UrlEncodingSerializer(PropertyStore.create());<a name="line.132"></a>
+<span class="sourceLineNo">133</span><a name="line.133"></a>
+<span class="sourceLineNo">134</span>   /** Reusable instance of {@link UrlEncodingSerializer.PlainText}. */<a name="line.134"></a>
+<span class="sourceLineNo">135</span>   public static final UrlEncodingSerializer DEFAULT_PLAINTEXT = new PlainText(PropertyStore.create());<a name="line.135"></a>
+<span class="sourceLineNo">136</span><a name="line.136"></a>
+<span class="sourceLineNo">137</span>   /** Reusable instance of {@link UrlEncodingSerializer.Expanded}. */<a name="line.137"></a>
+<span class="sourceLineNo">138</span>   public static final UrlEncodingSerializer DEFAULT_EXPANDED = new Expanded(PropertyStore.create());<a name="line.138"></a>
+<span class="sourceLineNo">139</span><a name="line.139"></a>
+<span class="sourceLineNo">140</span>   /** Reusable instance of {@link UrlEncodingSerializer.Readable}. */<a name="line.140"></a>
+<span class="sourceLineNo">141</span>   public static final UrlEncodingSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.141"></a>
+<span class="sourceLineNo">142</span><a name="line.142"></a>
+<span class="sourceLineNo">143</span>   /**<a name="line.143"></a>
+<span class="sourceLineNo">144</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().expandedParams(&lt;jk&gt;true&lt;/jk&gt;).build();&lt;/code&gt;.<a name="line.144"></a>
+<span class="sourceLineNo">145</span>    */<a name="line.145"></a>
+<span class="sourceLineNo">146</span>   public static class Expanded extends UrlEncodingSerializer {<a name="line.146"></a>
+<span class="sourceLineNo">147</span><a name="line.147"></a>
+<span class="sourceLineNo">148</span>      /**<a name="line.148"></a>
+<span class="sourceLineNo">149</span>       * Constructor.<a name="line.149"></a>
+<span class="sourceLineNo">150</span>       *<a name="line.150"></a>
+<span class="sourceLineNo">151</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.151"></a>
+<span class="sourceLineNo">152</span>       */<a name="line.152"></a>
+<span class="sourceLineNo">153</span>      public Expanded(PropertyStore propertyStore) {<a name="line.153"></a>
+<span class="sourceLineNo">154</span>         super(propertyStore.copy().append(URLENC_expandedParams, true));<a name="line.154"></a>
+<span class="sourceLineNo">155</span>      }<a name="line.155"></a>
+<span class="sourceLineNo">156</span>   }<a name="line.156"></a>
+<span class="sourceLineNo">157</span><a name="line.157"></a>
+<span class="sourceLineNo">158</span>   /**<a name="line.158"></a>
+<span class="sourceLineNo">159</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().useWhitespace(&lt;jk&gt;true&lt;/jk&gt;).build();&lt;/code&gt;.<a name="line.159"></a>
+<span class="sourceLineNo">160</span>    */<a name="line.160"></a>
+<span class="sourceLineNo">161</span>   public static class Readable extends UrlEncodingSerializer {<a name="line.161"></a>
+<span class="sourceLineNo">162</span><a name="line.162"></a>
+<span class="sourceLineNo">163</span>      /**<a name="line.163"></a>
+<span class="sourceLineNo">164</span>       * Constructor.<a name="line.164"></a>
+<span class="sourceLineNo">165</span>       *<a name="line.165"></a>
+<span class="sourceLineNo">166</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.166"></a>
+<span class="sourceLineNo">167</span>       */<a name="line.167"></a>
+<span class="sourceLineNo">168</span>      public Readable(PropertyStore propertyStore) {<a name="line.168"></a>
+<span class="sourceLineNo">169</span>         super(propertyStore.copy().append(SERIALIZER_useWhitespace, true));<a name="line.169"></a>
+<span class="sourceLineNo">170</span>      }<a name="line.170"></a>
+<span class="sourceLineNo">171</span>   }<a name="line.171"></a>
+<span class="sourceLineNo">172</span><a name="line.172"></a>
+<span class="sourceLineNo">173</span>   /**<a name="line.173"></a>
+<span class="sourceLineNo">174</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().plainTextParts().build();&lt;/code&gt;.<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    */<a name="line.175"></a>
+<span class="sourceLineNo">176</span>   public static class PlainText extends UrlEncodingSerializer {<a name="line.176"></a>
+<span class="sourceLineNo">177</span><a name="line.177"></a>
+<span class="sourceLineNo">178</span>      /**<a name="line.178"></a>
+<span class="sourceLineNo">179</span>       * Constructor.<a name="line.179"></a>
+<span class="sourceLineNo">180</span>       *<a name="line.180"></a>
+<span class="sourceLineNo">181</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.181"></a>
+<span class="sourceLineNo">182</span>       */<a name="line.182"></a>
+<span class="sourceLineNo">183</span>      public PlainText(PropertyStore propertyStore) {<a name="line.183"></a>
+<span class="sourceLineNo">184</span>         super(propertyStore.copy().append(UON_paramFormat, "PLAINTEXT"));<a name="line.184"></a>
+<span class="sourceLineNo">185</span>      }<a name="line.185"></a>
+<span class="sourceLineNo">186</span>   }<a name="line.186"></a>
+<span class="sourceLineNo">187</span><a name="line.187"></a>
+<span class="sourceLineNo">188</span>   private final UrlEncodingSerializerContext ctx;<a name="line.188"></a>
+<span class="sourceLineNo">189</span><a name="line.189"></a>
+<span class="sourceLineNo">190</span>   /**<a name="line.190"></a>
+<span class="sourceLineNo">191</span>    * Constructor.<a name="line.191"></a>
+<span class="sourceLineNo">192</span>    *<a name="line.192"></a>
+<span class="sourceLineNo">193</span>    * @param propertyStore<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    *    The property store containing all the settings for this object.<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    */<a name="line.195"></a>
+<span class="sourceLineNo">196</span>   public UrlEncodingSerializer(PropertyStore propertyStore) {<a name="line.196"></a>
+<span class="sourceLineNo">197</span>      this(propertyStore, "application/x-www-form-urlencoded");<a name="line.197"></a>
+<span class="sourceLineNo">198</span>   }<a name="line.198"></a>
+<span class="sourceLineNo">199</span><a name="line.199"></a>
+<span class="sourceLineNo">200</span>   /**<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    * Constructor.<a name="line.201"></a>
+<span class="sourceLineNo">202</span>    *<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    * @param propertyStore<a name="line.203"></a>
+<span class="sourceLineNo">204</span>    *    The property store containing all the settings for this object.<a name="line.204"></a>
+<span class="sourceLineNo">205</span>    * @param produces<a name="line.205"></a>
+<span class="sourceLineNo">206</span>    *    The media type that this serializer produces.<a name="line.206"></a>
+<span class="sourceLineNo">207</span>    * @param accept<a name="line.207"></a>
+<span class="sourceLineNo">208</span>    *    The accept media types that the serializer can handle.<a name="line.208"></a>
+<span class="sourceLineNo">209</span>    *    &lt;p&gt;<a name="line.209"></a>
+<span class="sourceLineNo">210</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.210"></a>
+<span class="sourceLineNo">211</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>    *    &lt;p&gt;<a name="line.212"></a>
+<span class="sourceLineNo">213</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.213"></a>
+<span class="sourceLineNo">214</span>    *    &lt;p&gt;<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.216"></a>
+<span class="sourceLineNo">217</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.217"></a>
+<span class="sourceLineNo">218</span>    *    &lt;br&gt;...or...<a name="line.218"></a>
+<span class="sourceLineNo">219</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.219"></a>
+<span class="sourceLineNo">220</span>    */<a name="line.220"></a>
+<span class="sourceLineNo">221</span>   public UrlEncodingSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.221"></a>
+<span class="sourceLineNo">222</span>      super(propertyStore.copy().append(UON_encodeChars, true), produces, accept);<a name="line.222"></a>
+<span class="sourceLineNo">223</span>      this.ctx = createContext(UrlEncodingSerializerContext.class);<a name="line.223"></a>
+<span class="sourceLineNo">224</span>   }<a name="line.224"></a>
+<span class="sourceLineNo">225</span><a name="line.225"></a>
+<span class="sourceLineNo">226</span><a name="line.226"></a>
+<span class="sourceLineNo">227</span>   @Override /* CoreObject */<a name="line.227"></a>
+<span class="sourceLineNo">228</span>   public UrlEncodingSerializerBuilder builder() {<a name="line.228"></a>
+<span class="sourceLineNo">229</span>      return new UrlEncodingSerializerBuilder(propertyStore);<a name="line.229"></a>
+<span class="sourceLineNo">230</span>   }<a name="line.230"></a>
+<span class="sourceLineNo">231</span><a name="line.231"></a>
+<span class="sourceLineNo">232</span><a name="line.232"></a>
+<span class="sourceLineNo">233</span>   //--------------------------------------------------------------------------------<a name="line.233"></a>
+<span class="sourceLineNo">234</span>   // Methods for constructing individual parameter values.<a name="line.234"></a>
+<span class="sourceLineNo">235</span>   //--------------------------------------------------------------------------------<a name="line.235"></a>
+<span class="sourceLineNo">236</span><a name="line.236"></a>
+<span class="sourceLineNo">237</span>   /**<a name="line.237"></a>
+<span class="sourceLineNo">238</span>    * Converts the specified object to a string using this serializers {@link BeanSession#convertToType(Object, Class)}<a name="line.238"></a>
+<span class="sourceLineNo">239</span>    * method and runs {@link URLEncoder#encode(String,String)} against the results.<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    *<a name="line.240"></a>
+<span class="sourceLineNo">241</span>    * &lt;p&gt;<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    * Useful for constructing URL parts.<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    *<a name="line.243"></a>
+<span class="sourceLineNo">244</span>    * @param o The object to serialize.<a name="line.244"></a>
+<span class="sourceLineNo">245</span>    * @param urlEncode<a name="line.245"></a>
+<span class="sourceLineNo">246</span>    *    URL-encode the string if necessary.<a name="line.246"></a>
+<span class="sourceLineNo">247</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then uses the value of the {@link UonSerializerContext#UON_encodeChars} setting.<a name="line.247"></a>
+<span class="sourceLineNo">248</span>    * @param plainTextParams<a name="line.248"></a>
+<span class="sourceLineNo">249</span>    *    Whether we're using plain-text params.<a name="line.249"></a>
+<span class="sourceLineNo">250</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then uses the value from the {@link UrlEncodingSerializerContext#URLENC_paramFormat} setting.<a name="line.250"></a>
+<span class="sourceLineNo">251</span>    * @return The serialized object.<a name="line.251"></a>
+<span class="sourceLineNo">252</span>    */<a name="line.252"></a>
+<span class="sourceLineNo">253</span>   private String serializePart(Object o, Boolean urlEncode, Boolean plainTextParams) {<a name="line.253"></a>
+<span class="sourceLineNo">254</span>      try {<a name="line.254"></a>
+<span class="sourceLineNo">255</span>         // Shortcut for simple types.<a name="line.255"></a>
+<span class="sourceLineNo">256</span>         ClassMeta&lt;?&gt; cm = getBeanContext().getClassMetaForObject(o);<a name="line.256"></a>
+<span class="sourceLineNo">257</span>         if (cm != null) {<a name="line.257"></a>
+<span class="sourceLineNo">258</span>            if (cm.isNumber() || cm.isBoolean())<a name="line.258"></a>
+<span class="sourceLineNo">259</span>               return o.toString();<a name="line.259"></a>
+<span class="sourceLineNo">260</span>            if (cm.isCharSequence()) {<a name="line.260"></a>
+<span class="sourceLineNo">261</span>               String s = o.toString();<a name="line.261"></a>
+<span class="sourceLineNo">262</span>               boolean ptt = (plainTextParams != null ? plainTextParams : ctx.plainTextParams());<a name="line.262"></a>
+<span class="sourceLineNo">263</span>               if (ptt || s.isEmpty() || ! UonUtils.needsQuotes(s))<a name="line.263"></a>
+<span class="sourceLineNo">264</span>                  return (urlEncode ? urlEncode(s) : s);<a name="line.264"></a>
+<span class="sourceLineNo">265</span>            }<a name="line.265"></a>
+<span class="sourceLineNo">266</span>         }<a name="line.266"></a>
+<span class="sourceLineNo">267</span><a name="line.267"></a>
+<span class="sourceLineNo">268</span>         StringWriter w = new StringWriter();<a name="line.268"></a>
+<span class="sourceLineNo">269</span>         UonSerializerSession s = new UonSerializerSession(ctx, urlEncode, createDefaultSessionArgs());<a name="line.269"></a>
+<span class="sourceLineNo">270</span>         s.serialize(w, o);<a name="line.270"></a>
+<span class="sourceLineNo">271</span>         return w.toString();<a name="line.271"></a>
+<span class="sourceLineNo">272</span>      } catch (Exception e) {<a name="line.272"></a>
+<span class="sourceLineNo">273</span>         throw new RuntimeException(e);<a name="line.273"></a>
+<span class="sourceLineNo">274</span>      }<a name="line.274"></a>
+<span class="sourceLineNo">275</span>   }<a name="line.275"></a>
+<span class="sourceLineNo">276</span><a name="line.276"></a>
+<span class="sourceLineNo">277</span><a name="line.277"></a>
+<span class="sourceLineNo">278</span>   //--------------------------------------------------------------------------------<a name="line.278"></a>
+<span class="sourceLineNo">279</span>   // Entry point methods<a name="line.279"></a>
+<span class="sourceLineNo">280</span>   //--------------------------------------------------------------------------------<a name="line.280"></a>
+<span class="sourceLineNo">281</span><a name="line.281"></a>
+<span class="sourceLineNo">282</span>   @Override /* Serializer */<a name="line.282"></a>
+<span class="sourceLineNo">283</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.283"></a>
+<span class="sourceLineNo">284</span>      return new UrlEncodingSerializerSession(ctx, null, args);<a name="line.284"></a>
+<span class="sourceLineNo">285</span>   }<a name="line.285"></a>
+<span class="sourceLineNo">286</span><a name="line.286"></a>
+<span class="sourceLineNo">287</span>   @Override /* PartSerializer */<a name="line.287"></a>
+<span class="sourceLineNo">288</span>   public String serialize(PartType type, Object value) {<a name="line.288"></a>
+<span class="sourceLineNo">289</span>      switch(type) {<a name="line.289"></a>
+<span class="sourceLineNo">290</span>         case HEADER: return serializePart(value, false, true);<a name="line.290"></a>
+<span class="sourceLineNo">291</span>         case FORM_DATA: return serializePart(value, false, null);<a name="line.291"></a>
+<span class="sourceLineNo">292</span>         case PATH: return serializePart(value, false, null);<a name="line.292"></a>
+<span class="sourceLineNo">293</span>         case QUERY: return serializePart(value, false, null);<a name="line.293"></a>
+<span class="sourceLineNo">294</span>         default: return toString(value);<a name="line.294"></a>
+<span class="sourceLineNo">295</span>      }<a name="line.295"></a>
+<span class="sourceLineNo">296</span>   }<a name="line.296"></a>
+<span class="sourceLineNo">297</span>}<a name="line.297"></a>
 
 
 


[37/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSerializerSession.html b/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSerializerSession.html
index c5ae2f6..cae9c9d 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSerializerSession.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSerializerSession.html
@@ -71,736 +71,745 @@
 <span class="sourceLineNo">063</span>    *    These specify session-level information such as locale and URI context.<a name="line.63"></a>
 <span class="sourceLineNo">064</span>    *    It also include session-level properties that override the properties defined on the bean and<a name="line.64"></a>
 <span class="sourceLineNo">065</span>    *    serializer contexts.<a name="line.65"></a>
-<span class="sourceLineNo">066</span>    *    &lt;br&gt;If &lt;jk&gt;null&lt;/jk&gt;, defaults to {@link SerializerSessionArgs#DEFAULT}.<a name="line.66"></a>
-<span class="sourceLineNo">067</span>    */<a name="line.67"></a>
-<span class="sourceLineNo">068</span>   protected HtmlSerializerSession(HtmlSerializerContext ctx, SerializerSessionArgs args) {<a name="line.68"></a>
-<span class="sourceLineNo">069</span>      super(ctx, args);<a name="line.69"></a>
-<span class="sourceLineNo">070</span>      String labelParameter;<a name="line.70"></a>
-<span class="sourceLineNo">071</span>      ObjectMap p = getProperties();<a name="line.71"></a>
-<span class="sourceLineNo">072</span>      if (p.isEmpty()) {<a name="line.72"></a>
-<span class="sourceLineNo">073</span>         anchorText = Enum.valueOf(AnchorText.class, ctx.uriAnchorText);<a name="line.73"></a>
-<span class="sourceLineNo">074</span>         detectLinksInStrings = ctx.detectLinksInStrings;<a name="line.74"></a>
-<span class="sourceLineNo">075</span>         lookForLabelParameters = ctx.lookForLabelParameters;<a name="line.75"></a>
-<span class="sourceLineNo">076</span>         labelParameter = ctx.labelParameter;<a name="line.76"></a>
-<span class="sourceLineNo">077</span>         addKeyValueTableHeaders = ctx.addKeyValueTableHeaders;<a name="line.77"></a>
-<span class="sourceLineNo">078</span>         addBeanTypeProperties = ctx.addBeanTypeProperties;<a name="line.78"></a>
-<span class="sourceLineNo">079</span>      } else {<a name="line.79"></a>
-<span class="sourceLineNo">080</span>         anchorText = Enum.valueOf(AnchorText.class, p.getString(HTML_uriAnchorText, ctx.uriAnchorText));<a name="line.80"></a>
-<span class="sourceLineNo">081</span>         detectLinksInStrings = p.getBoolean(HTML_detectLinksInStrings, ctx.detectLinksInStrings);<a name="line.81"></a>
-<span class="sourceLineNo">082</span>         lookForLabelParameters = p.getBoolean(HTML_lookForLabelParameters, ctx.lookForLabelParameters);<a name="line.82"></a>
-<span class="sourceLineNo">083</span>         labelParameter = p.getString(HTML_labelParameter, ctx.labelParameter);<a name="line.83"></a>
-<span class="sourceLineNo">084</span>         addKeyValueTableHeaders = p.getBoolean(HTML_addKeyValueTableHeaders, ctx.addKeyValueTableHeaders);<a name="line.84"></a>
-<span class="sourceLineNo">085</span>         addBeanTypeProperties = p.getBoolean(MSGPACK_addBeanTypeProperties, ctx.addBeanTypeProperties);<a name="line.85"></a>
-<span class="sourceLineNo">086</span>      }<a name="line.86"></a>
-<span class="sourceLineNo">087</span>      labelPattern = Pattern.compile("[\\?\\&amp;]" + Pattern.quote(labelParameter) + "=([^\\&amp;]*)");<a name="line.87"></a>
-<span class="sourceLineNo">088</span>   }<a name="line.88"></a>
-<span class="sourceLineNo">089</span><a name="line.89"></a>
-<span class="sourceLineNo">090</span>   /**<a name="line.90"></a>
-<span class="sourceLineNo">091</span>    * Converts the specified output target object to an {@link HtmlWriter}.<a name="line.91"></a>
-<span class="sourceLineNo">092</span>    *<a name="line.92"></a>
-<span class="sourceLineNo">093</span>    * @param out The output target object.<a name="line.93"></a>
-<span class="sourceLineNo">094</span>    * @return The output target object wrapped in an {@link HtmlWriter}.<a name="line.94"></a>
-<span class="sourceLineNo">095</span>    * @throws Exception<a name="line.95"></a>
-<span class="sourceLineNo">096</span>    */<a name="line.96"></a>
-<span class="sourceLineNo">097</span>   protected final HtmlWriter getHtmlWriter(SerializerPipe out) throws Exception {<a name="line.97"></a>
-<span class="sourceLineNo">098</span>      Object output = out.getRawOutput();<a name="line.98"></a>
-<span class="sourceLineNo">099</span>      if (output instanceof HtmlWriter)<a name="line.99"></a>
-<span class="sourceLineNo">100</span>         return (HtmlWriter)output;<a name="line.100"></a>
-<span class="sourceLineNo">101</span>      HtmlWriter w = new HtmlWriter(out.getWriter(), isUseWhitespace(), getMaxIndent(), isTrimStrings(), getQuoteChar(),<a name="line.101"></a>
-<span class="sourceLineNo">102</span>         getUriResolver());<a name="line.102"></a>
-<span class="sourceLineNo">103</span>      out.setWriter(w);<a name="line.103"></a>
-<span class="sourceLineNo">104</span>      return w;<a name="line.104"></a>
-<span class="sourceLineNo">105</span>   }<a name="line.105"></a>
-<span class="sourceLineNo">106</span><a name="line.106"></a>
-<span class="sourceLineNo">107</span>   /**<a name="line.107"></a>
-<span class="sourceLineNo">108</span>    * Returns &lt;jk&gt;true&lt;/jk&gt; if the specified object is a URL.<a name="line.108"></a>
-<span class="sourceLineNo">109</span>    *<a name="line.109"></a>
-<span class="sourceLineNo">110</span>    * @param cm The ClassMeta of the object being serialized.<a name="line.110"></a>
-<span class="sourceLineNo">111</span>    * @param pMeta<a name="line.111"></a>
-<span class="sourceLineNo">112</span>    *    The property metadata of the bean property of the object.<a name="line.112"></a>
-<span class="sourceLineNo">113</span>    *    Can be &lt;jk&gt;null&lt;/jk&gt; if the object isn't from a bean property.<a name="line.113"></a>
-<span class="sourceLineNo">114</span>    * @param o The object.<a name="line.114"></a>
-<span class="sourceLineNo">115</span>    * @return &lt;jk&gt;true&lt;/jk&gt; if the specified object is a URL.<a name="line.115"></a>
-<span class="sourceLineNo">116</span>    */<a name="line.116"></a>
-<span class="sourceLineNo">117</span>   public boolean isUri(ClassMeta&lt;?&gt; cm, BeanPropertyMeta pMeta, Object o) {<a name="line.117"></a>
-<span class="sourceLineNo">118</span>      if (cm.isUri())<a name="line.118"></a>
-<span class="sourceLineNo">119</span>         return true;<a name="line.119"></a>
-<span class="sourceLineNo">120</span>      if (pMeta != null &amp;&amp; pMeta.isUri())<a name="line.120"></a>
-<span class="sourceLineNo">121</span>         return true;<a name="line.121"></a>
-<span class="sourceLineNo">122</span>      if (detectLinksInStrings &amp;&amp; o instanceof CharSequence &amp;&amp; urlPattern.matcher(o.toString()).matches())<a name="line.122"></a>
-<span class="sourceLineNo">123</span>         return true;<a name="line.123"></a>
-<span class="sourceLineNo">124</span>      return false;<a name="line.124"></a>
-<span class="sourceLineNo">125</span>   }<a name="line.125"></a>
-<span class="sourceLineNo">126</span><a name="line.126"></a>
-<span class="sourceLineNo">127</span>   /**<a name="line.127"></a>
-<span class="sourceLineNo">128</span>    * Returns the anchor text to use for the specified URL object.<a name="line.128"></a>
-<span class="sourceLineNo">129</span>    *<a name="line.129"></a>
-<span class="sourceLineNo">130</span>    * @param pMeta<a name="line.130"></a>
-<span class="sourceLineNo">131</span>    *    The property metadata of the bean property of the object.<a name="line.131"></a>
-<span class="sourceLineNo">132</span>    *    Can be &lt;jk&gt;null&lt;/jk&gt; if the object isn't from a bean property.<a name="line.132"></a>
-<span class="sourceLineNo">133</span>    * @param o The URL object.<a name="line.133"></a>
-<span class="sourceLineNo">134</span>    * @return The anchor text to use for the specified URL object.<a name="line.134"></a>
-<span class="sourceLineNo">135</span>    */<a name="line.135"></a>
-<span class="sourceLineNo">136</span>   public String getAnchorText(BeanPropertyMeta pMeta, Object o) {<a name="line.136"></a>
-<span class="sourceLineNo">137</span>      String s = o.toString();<a name="line.137"></a>
-<span class="sourceLineNo">138</span>      if (lookForLabelParameters) {<a name="line.138"></a>
-<span class="sourceLineNo">139</span>         Matcher m = labelPattern.matcher(s);<a name="line.139"></a>
-<span class="sourceLineNo">140</span>         if (m.find())<a name="line.140"></a>
-<span class="sourceLineNo">141</span>            return urlDecode(m.group(1));<a name="line.141"></a>
-<span class="sourceLineNo">142</span>      }<a name="line.142"></a>
-<span class="sourceLineNo">143</span>      switch (anchorText) {<a name="line.143"></a>
-<span class="sourceLineNo">144</span>         case LAST_TOKEN:<a name="line.144"></a>
-<span class="sourceLineNo">145</span>            s = resolveUri(s);<a name="line.145"></a>
-<span class="sourceLineNo">146</span>            if (s.indexOf('/') != -1)<a name="line.146"></a>
-<span class="sourceLineNo">147</span>               s = s.substring(s.lastIndexOf('/')+1);<a name="line.147"></a>
-<span class="sourceLineNo">148</span>            if (s.indexOf('?') != -1)<a name="line.148"></a>
-<span class="sourceLineNo">149</span>               s = s.substring(0, s.indexOf('?'));<a name="line.149"></a>
-<span class="sourceLineNo">150</span>            if (s.indexOf('#') != -1)<a name="line.150"></a>
-<span class="sourceLineNo">151</span>               s = s.substring(0, s.indexOf('#'));<a name="line.151"></a>
-<span class="sourceLineNo">152</span>            if (s.isEmpty())<a name="line.152"></a>
-<span class="sourceLineNo">153</span>               s = "/";<a name="line.153"></a>
-<span class="sourceLineNo">154</span>            return urlDecode(s);<a name="line.154"></a>
-<span class="sourceLineNo">155</span>         case URI_ANCHOR:<a name="line.155"></a>
-<span class="sourceLineNo">156</span>            if (s.indexOf('#') != -1)<a name="line.156"></a>
-<span class="sourceLineNo">157</span>               s = s.substring(s.lastIndexOf('#')+1);<a name="line.157"></a>
-<span class="sourceLineNo">158</span>            return urlDecode(s);<a name="line.158"></a>
-<span class="sourceLineNo">159</span>         case PROPERTY_NAME:<a name="line.159"></a>
-<span class="sourceLineNo">160</span>            return pMeta == null ? s : pMeta.getName();<a name="line.160"></a>
-<span class="sourceLineNo">161</span>         case URI:<a name="line.161"></a>
-<span class="sourceLineNo">162</span>            return resolveUri(s);<a name="line.162"></a>
-<span class="sourceLineNo">163</span>         case CONTEXT_RELATIVE:<a name="line.163"></a>
-<span class="sourceLineNo">164</span>            return relativizeUri("context:/", s);<a name="line.164"></a>
-<span class="sourceLineNo">165</span>         case SERVLET_RELATIVE:<a name="line.165"></a>
-<span class="sourceLineNo">166</span>            return relativizeUri("servlet:/", s);<a name="line.166"></a>
-<span class="sourceLineNo">167</span>         case PATH_RELATIVE:<a name="line.167"></a>
-<span class="sourceLineNo">168</span>            return relativizeUri("request:/", s);<a name="line.168"></a>
-<span class="sourceLineNo">169</span>         default /* TO_STRING */:<a name="line.169"></a>
-<span class="sourceLineNo">170</span>            return s;<a name="line.170"></a>
-<span class="sourceLineNo">171</span>      }<a name="line.171"></a>
-<span class="sourceLineNo">172</span>   }<a name="line.172"></a>
-<span class="sourceLineNo">173</span><a name="line.173"></a>
-<span class="sourceLineNo">174</span>   /**<a name="line.174"></a>
-<span class="sourceLineNo">175</span>    * Returns the {@link HtmlSerializerContext#HTML_addKeyValueTableHeaders} setting value for this session.<a name="line.175"></a>
-<span class="sourceLineNo">176</span>    *<a name="line.176"></a>
-<span class="sourceLineNo">177</span>    * @return The {@link HtmlSerializerContext#HTML_addKeyValueTableHeaders} setting value for this session.<a name="line.177"></a>
-<span class="sourceLineNo">178</span>    */<a name="line.178"></a>
-<span class="sourceLineNo">179</span>   public final boolean isAddKeyValueTableHeaders() {<a name="line.179"></a>
-<span class="sourceLineNo">180</span>      return addKeyValueTableHeaders;<a name="line.180"></a>
-<span class="sourceLineNo">181</span>   }<a name="line.181"></a>
-<span class="sourceLineNo">182</span><a name="line.182"></a>
-<span class="sourceLineNo">183</span>   /**<a name="line.183"></a>
-<span class="sourceLineNo">184</span>    * Returns the {@link HtmlSerializerContext#HTML_addBeanTypeProperties} setting value for this session.<a name="line.184"></a>
-<span class="sourceLineNo">185</span>    *<a name="line.185"></a>
-<span class="sourceLineNo">186</span>    * @return The {@link HtmlSerializerContext#HTML_addBeanTypeProperties} setting value for this session.<a name="line.186"></a>
-<span class="sourceLineNo">187</span>    */<a name="line.187"></a>
-<span class="sourceLineNo">188</span>   @Override /* SerializerSession */<a name="line.188"></a>
-<span class="sourceLineNo">189</span>   public final boolean isAddBeanTypeProperties() {<a name="line.189"></a>
-<span class="sourceLineNo">190</span>      return addBeanTypeProperties;<a name="line.190"></a>
-<span class="sourceLineNo">191</span>   }<a name="line.191"></a>
-<span class="sourceLineNo">192</span><a name="line.192"></a>
-<span class="sourceLineNo">193</span>   @Override /* XmlSerializer */<a name="line.193"></a>
-<span class="sourceLineNo">194</span>   public boolean isHtmlMode() {<a name="line.194"></a>
-<span class="sourceLineNo">195</span>      return true;<a name="line.195"></a>
-<span class="sourceLineNo">196</span>   }<a name="line.196"></a>
-<span class="sourceLineNo">197</span><a name="line.197"></a>
-<span class="sourceLineNo">198</span>   @Override /* Serializer */<a name="line.198"></a>
-<span class="sourceLineNo">199</span>   protected void doSerialize(SerializerPipe out, Object o) throws Exception {<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      doSerialize(o, getHtmlWriter(out));<a name="line.200"></a>
-<span class="sourceLineNo">201</span>   }<a name="line.201"></a>
-<span class="sourceLineNo">202</span><a name="line.202"></a>
-<span class="sourceLineNo">203</span>   /**<a name="line.203"></a>
-<span class="sourceLineNo">204</span>    * Main serialization routine.<a name="line.204"></a>
-<span class="sourceLineNo">205</span>    *<a name="line.205"></a>
-<span class="sourceLineNo">206</span>    * @param session The serialization context object.<a name="line.206"></a>
-<span class="sourceLineNo">207</span>    * @param o The object being serialized.<a name="line.207"></a>
-<span class="sourceLineNo">208</span>    * @param w The writer to serialize to.<a name="line.208"></a>
-<span class="sourceLineNo">209</span>    * @return The same writer passed in.<a name="line.209"></a>
-<span class="sourceLineNo">210</span>    * @throws IOException If a problem occurred trying to send output to the writer.<a name="line.210"></a>
-<span class="sourceLineNo">211</span>    */<a name="line.211"></a>
-<span class="sourceLineNo">212</span>   private HtmlWriter doSerialize(Object o, HtmlWriter w) throws Exception {<a name="line.212"></a>
-<span class="sourceLineNo">213</span>      serializeAnything(w, o, getExpectedRootType(o), null, getInitialDepth()-1, null, true);<a name="line.213"></a>
-<span class="sourceLineNo">214</span>      return w;<a name="line.214"></a>
-<span class="sourceLineNo">215</span>   }<a name="line.215"></a>
-<span class="sourceLineNo">216</span><a name="line.216"></a>
-<span class="sourceLineNo">217</span>   /**<a name="line.217"></a>
-<span class="sourceLineNo">218</span>    * Serialize the specified object to the specified writer.<a name="line.218"></a>
-<span class="sourceLineNo">219</span>    *<a name="line.219"></a>
-<span class="sourceLineNo">220</span>    * @param out The writer.<a name="line.220"></a>
-<span class="sourceLineNo">221</span>    * @param o The object to serialize.<a name="line.221"></a>
-<span class="sourceLineNo">222</span>    * @param eType The expected type of the object if this is a bean property.<a name="line.222"></a>
-<span class="sourceLineNo">223</span>    * @param name<a name="line.223"></a>
-<span class="sourceLineNo">224</span>    *    The attribute name of this object if this object was a field in a JSON object (i.e. key of a<a name="line.224"></a>
-<span class="sourceLineNo">225</span>    *    {@link java.util.Map.Entry} or property name of a bean).<a name="line.225"></a>
-<span class="sourceLineNo">226</span>    * @param xIndent The current indentation value.<a name="line.226"></a>
-<span class="sourceLineNo">227</span>    * @param pMeta The bean property being serialized, or &lt;jk&gt;null&lt;/jk&gt; if we're not serializing a bean property.<a name="line.227"></a>
-<span class="sourceLineNo">228</span>    * @param isRoot &lt;jk&gt;true&lt;/jk&gt; if this is the root element of the document.<a name="line.228"></a>
-<span class="sourceLineNo">229</span>    * @return The type of content encountered.  Either simple (no whitespace) or normal (elements with whitespace).<a name="line.229"></a>
-<span class="sourceLineNo">230</span>    * @throws Exception If a problem occurred trying to convert the output.<a name="line.230"></a>
-<span class="sourceLineNo">231</span>    */<a name="line.231"></a>
-<span class="sourceLineNo">232</span>   @SuppressWarnings({ "rawtypes", "unchecked" })<a name="line.232"></a>
-<span class="sourceLineNo">233</span>   protected ContentResult serializeAnything(HtmlWriter out, Object o,<a name="line.233"></a>
-<span class="sourceLineNo">234</span>         ClassMeta&lt;?&gt; eType, String name, int xIndent, BeanPropertyMeta pMeta, boolean isRoot) throws Exception {<a name="line.234"></a>
-<span class="sourceLineNo">235</span><a name="line.235"></a>
-<span class="sourceLineNo">236</span>      ClassMeta&lt;?&gt; aType = null;       // The actual type<a name="line.236"></a>
-<span class="sourceLineNo">237</span>      ClassMeta&lt;?&gt; wType = null;     // The wrapped type (delegate)<a name="line.237"></a>
-<span class="sourceLineNo">238</span>      ClassMeta&lt;?&gt; sType = object();   // The serialized type<a name="line.238"></a>
-<span class="sourceLineNo">239</span><a name="line.239"></a>
-<span class="sourceLineNo">240</span>      if (eType == null)<a name="line.240"></a>
-<span class="sourceLineNo">241</span>         eType = object();<a name="line.241"></a>
-<span class="sourceLineNo">242</span><a name="line.242"></a>
-<span class="sourceLineNo">243</span>      aType = push(name, o, eType);<a name="line.243"></a>
-<span class="sourceLineNo">244</span><a name="line.244"></a>
-<span class="sourceLineNo">245</span>      // Handle recursion<a name="line.245"></a>
-<span class="sourceLineNo">246</span>      if (aType == null) {<a name="line.246"></a>
-<span class="sourceLineNo">247</span>         o = null;<a name="line.247"></a>
-<span class="sourceLineNo">248</span>         aType = object();<a name="line.248"></a>
-<span class="sourceLineNo">249</span>      }<a name="line.249"></a>
-<span class="sourceLineNo">250</span><a name="line.250"></a>
-<span class="sourceLineNo">251</span>      indent += xIndent;<a name="line.251"></a>
-<span class="sourceLineNo">252</span><a name="line.252"></a>
-<span class="sourceLineNo">253</span>      ContentResult cr = CR_NORMAL;<a name="line.253"></a>
-<span class="sourceLineNo">254</span><a name="line.254"></a>
-<span class="sourceLineNo">255</span>      // Determine the type.<a name="line.255"></a>
-<span class="sourceLineNo">256</span>      if (o == null || (aType.isChar() &amp;&amp; ((Character)o).charValue() == 0)) {<a name="line.256"></a>
-<span class="sourceLineNo">257</span>         out.tag("null");<a name="line.257"></a>
-<span class="sourceLineNo">258</span>         cr = ContentResult.CR_SIMPLE;<a name="line.258"></a>
-<span class="sourceLineNo">259</span><a name="line.259"></a>
-<span class="sourceLineNo">260</span>      } else {<a name="line.260"></a>
-<span class="sourceLineNo">261</span><a name="line.261"></a>
-<span class="sourceLineNo">262</span>         if (aType.isDelegate()) {<a name="line.262"></a>
-<span class="sourceLineNo">263</span>            wType = aType;<a name="line.263"></a>
-<span class="sourceLineNo">264</span>            aType = ((Delegate)o).getClassMeta();<a name="line.264"></a>
-<span class="sourceLineNo">265</span>         }<a name="line.265"></a>
-<span class="sourceLineNo">266</span><a name="line.266"></a>
-<span class="sourceLineNo">267</span>         sType = aType.getSerializedClassMeta();<a name="line.267"></a>
-<span class="sourceLineNo">268</span>         String typeName = null;<a name="line.268"></a>
-<span class="sourceLineNo">269</span>         if (isAddBeanTypeProperties() &amp;&amp; ! eType.equals(aType))<a name="line.269"></a>
-<span class="sourceLineNo">270</span>            typeName = aType.getDictionaryName();<a name="line.270"></a>
-<span class="sourceLineNo">271</span><a name="line.271"></a>
-<span class="sourceLineNo">272</span>         // Swap if necessary<a name="line.272"></a>
-<span class="sourceLineNo">273</span>         PojoSwap swap = aType.getPojoSwap();<a name="line.273"></a>
-<span class="sourceLineNo">274</span>         if (swap != null) {<a name="line.274"></a>
-<span class="sourceLineNo">275</span>            o = swap.swap(this, o);<a name="line.275"></a>
-<span class="sourceLineNo">276</span><a name="line.276"></a>
-<span class="sourceLineNo">277</span>            // If the getSwapClass() method returns Object, we need to figure out<a name="line.277"></a>
-<span class="sourceLineNo">278</span>            // the actual type now.<a name="line.278"></a>
-<span class="sourceLineNo">279</span>            if (sType.isObject())<a name="line.279"></a>
-<span class="sourceLineNo">280</span>               sType = getClassMetaForObject(o);<a name="line.280"></a>
-<span class="sourceLineNo">281</span>         }<a name="line.281"></a>
-<span class="sourceLineNo">282</span><a name="line.282"></a>
-<span class="sourceLineNo">283</span>         HtmlClassMeta html = sType.getExtendedMeta(HtmlClassMeta.class);<a name="line.283"></a>
-<span class="sourceLineNo">284</span>         HtmlRender render = (pMeta == null ? null : pMeta.getExtendedMeta(HtmlBeanPropertyMeta.class).getRender());<a name="line.284"></a>
-<span class="sourceLineNo">285</span>         if (render == null)<a name="line.285"></a>
-<span class="sourceLineNo">286</span>            render = html.getRender();<a name="line.286"></a>
-<span class="sourceLineNo">287</span><a name="line.287"></a>
-<span class="sourceLineNo">288</span>         if (render != null) {<a name="line.288"></a>
-<span class="sourceLineNo">289</span>            Object o2 = render.getContent(this, o);<a name="line.289"></a>
-<span class="sourceLineNo">290</span>            if (o2 != o) {<a name="line.290"></a>
-<span class="sourceLineNo">291</span>               indent -= xIndent;<a name="line.291"></a>
-<span class="sourceLineNo">292</span>               pop();<a name="line.292"></a>
-<span class="sourceLineNo">293</span>               out.nl(indent);<a name="line.293"></a>
-<span class="sourceLineNo">294</span>               return serializeAnything(out, o2, null, typeName, xIndent, null, false);<a name="line.294"></a>
-<span class="sourceLineNo">295</span>            }<a name="line.295"></a>
-<span class="sourceLineNo">296</span>         }<a name="line.296"></a>
-<span class="sourceLineNo">297</span><a name="line.297"></a>
-<span class="sourceLineNo">298</span>         if (html.isAsXml() || (pMeta != null &amp;&amp; pMeta.getExtendedMeta(HtmlBeanPropertyMeta.class).isAsXml())) {<a name="line.298"></a>
-<span class="sourceLineNo">299</span>            pop();<a name="line.299"></a>
-<span class="sourceLineNo">300</span>            indent++;<a name="line.300"></a>
-<span class="sourceLineNo">301</span>            super.serializeAnything(out, o, null, null, null, false, XmlFormat.MIXED, false, false, null);<a name="line.301"></a>
-<span class="sourceLineNo">302</span>            indent -= xIndent+1;<a name="line.302"></a>
-<span class="sourceLineNo">303</span>            return cr;<a name="line.303"></a>
+<span class="sourceLineNo">066</span>    */<a name="line.66"></a>
+<span class="sourceLineNo">067</span>   protected HtmlSerializerSession(HtmlSerializerContext ctx, SerializerSessionArgs args) {<a name="line.67"></a>
+<span class="sourceLineNo">068</span>      super(ctx, args);<a name="line.68"></a>
+<span class="sourceLineNo">069</span>      String labelParameter;<a name="line.69"></a>
+<span class="sourceLineNo">070</span>      ObjectMap p = getProperties();<a name="line.70"></a>
+<span class="sourceLineNo">071</span>      if (p.isEmpty()) {<a name="line.71"></a>
+<span class="sourceLineNo">072</span>         anchorText = Enum.valueOf(AnchorText.class, ctx.uriAnchorText);<a name="line.72"></a>
+<span class="sourceLineNo">073</span>         detectLinksInStrings = ctx.detectLinksInStrings;<a name="line.73"></a>
+<span class="sourceLineNo">074</span>         lookForLabelParameters = ctx.lookForLabelParameters;<a name="line.74"></a>
+<span class="sourceLineNo">075</span>         labelParameter = ctx.labelParameter;<a name="line.75"></a>
+<span class="sourceLineNo">076</span>         addKeyValueTableHeaders = ctx.addKeyValueTableHeaders;<a name="line.76"></a>
+<span class="sourceLineNo">077</span>         addBeanTypeProperties = ctx.addBeanTypeProperties;<a name="line.77"></a>
+<span class="sourceLineNo">078</span>      } else {<a name="line.78"></a>
+<span class="sourceLineNo">079</span>         anchorText = Enum.valueOf(AnchorText.class, p.getString(HTML_uriAnchorText, ctx.uriAnchorText));<a name="line.79"></a>
+<span class="sourceLineNo">080</span>         detectLinksInStrings = p.getBoolean(HTML_detectLinksInStrings, ctx.detectLinksInStrings);<a name="line.80"></a>
+<span class="sourceLineNo">081</span>         lookForLabelParameters = p.getBoolean(HTML_lookForLabelParameters, ctx.lookForLabelParameters);<a name="line.81"></a>
+<span class="sourceLineNo">082</span>         labelParameter = p.getString(HTML_labelParameter, ctx.labelParameter);<a name="line.82"></a>
+<span class="sourceLineNo">083</span>         addKeyValueTableHeaders = p.getBoolean(HTML_addKeyValueTableHeaders, ctx.addKeyValueTableHeaders);<a name="line.83"></a>
+<span class="sourceLineNo">084</span>         addBeanTypeProperties = p.getBoolean(MSGPACK_addBeanTypeProperties, ctx.addBeanTypeProperties);<a name="line.84"></a>
+<span class="sourceLineNo">085</span>      }<a name="line.85"></a>
+<span class="sourceLineNo">086</span>      labelPattern = Pattern.compile("[\\?\\&amp;]" + Pattern.quote(labelParameter) + "=([^\\&amp;]*)");<a name="line.86"></a>
+<span class="sourceLineNo">087</span>   }<a name="line.87"></a>
+<span class="sourceLineNo">088</span><a name="line.88"></a>
+<span class="sourceLineNo">089</span>   /**<a name="line.89"></a>
+<span class="sourceLineNo">090</span>    * Converts the specified output target object to an {@link HtmlWriter}.<a name="line.90"></a>
+<span class="sourceLineNo">091</span>    *<a name="line.91"></a>
+<span class="sourceLineNo">092</span>    * @param out The output target object.<a name="line.92"></a>
+<span class="sourceLineNo">093</span>    * @return The output target object wrapped in an {@link HtmlWriter}.<a name="line.93"></a>
+<span class="sourceLineNo">094</span>    * @throws Exception<a name="line.94"></a>
+<span class="sourceLineNo">095</span>    */<a name="line.95"></a>
+<span class="sourceLineNo">096</span>   protected final HtmlWriter getHtmlWriter(SerializerPipe out) throws Exception {<a name="line.96"></a>
+<span class="sourceLineNo">097</span>      Object output = out.getRawOutput();<a name="line.97"></a>
+<span class="sourceLineNo">098</span>      if (output instanceof HtmlWriter)<a name="line.98"></a>
+<span class="sourceLineNo">099</span>         return (HtmlWriter)output;<a name="line.99"></a>
+<span class="sourceLineNo">100</span>      HtmlWriter w = new HtmlWriter(out.getWriter(), isUseWhitespace(), getMaxIndent(), isTrimStrings(), getQuoteChar(),<a name="line.100"></a>
+<span class="sourceLineNo">101</span>         getUriResolver());<a name="line.101"></a>
+<span class="sourceLineNo">102</span>      out.setWriter(w);<a name="line.102"></a>
+<span class="sourceLineNo">103</span>      return w;<a name="line.103"></a>
+<span class="sourceLineNo">104</span>   }<a name="line.104"></a>
+<span class="sourceLineNo">105</span><a name="line.105"></a>
+<span class="sourceLineNo">106</span>   /**<a name="line.106"></a>
+<span class="sourceLineNo">107</span>    * Returns &lt;jk&gt;true&lt;/jk&gt; if the specified object is a URL.<a name="line.107"></a>
+<span class="sourceLineNo">108</span>    *<a name="line.108"></a>
+<span class="sourceLineNo">109</span>    * @param cm The ClassMeta of the object being serialized.<a name="line.109"></a>
+<span class="sourceLineNo">110</span>    * @param pMeta<a name="line.110"></a>
+<span class="sourceLineNo">111</span>    *    The property metadata of the bean property of the object.<a name="line.111"></a>
+<span class="sourceLineNo">112</span>    *    Can be &lt;jk&gt;null&lt;/jk&gt; if the object isn't from a bean property.<a name="line.112"></a>
+<span class="sourceLineNo">113</span>    * @param o The object.<a name="line.113"></a>
+<span class="sourceLineNo">114</span>    * @return &lt;jk&gt;true&lt;/jk&gt; if the specified object is a URL.<a name="line.114"></a>
+<span class="sourceLineNo">115</span>    */<a name="line.115"></a>
+<span class="sourceLineNo">116</span>   public boolean isUri(ClassMeta&lt;?&gt; cm, BeanPropertyMeta pMeta, Object o) {<a name="line.116"></a>
+<span class="sourceLineNo">117</span>      if (cm.isUri())<a name="line.117"></a>
+<span class="sourceLineNo">118</span>         return true;<a name="line.118"></a>
+<span class="sourceLineNo">119</span>      if (pMeta != null &amp;&amp; pMeta.isUri())<a name="line.119"></a>
+<span class="sourceLineNo">120</span>         return true;<a name="line.120"></a>
+<span class="sourceLineNo">121</span>      if (detectLinksInStrings &amp;&amp; o instanceof CharSequence &amp;&amp; urlPattern.matcher(o.toString()).matches())<a name="line.121"></a>
+<span class="sourceLineNo">122</span>         return true;<a name="line.122"></a>
+<span class="sourceLineNo">123</span>      return false;<a name="line.123"></a>
+<span class="sourceLineNo">124</span>   }<a name="line.124"></a>
+<span class="sourceLineNo">125</span><a name="line.125"></a>
+<span class="sourceLineNo">126</span>   /**<a name="line.126"></a>
+<span class="sourceLineNo">127</span>    * Returns the anchor text to use for the specified URL object.<a name="line.127"></a>
+<span class="sourceLineNo">128</span>    *<a name="line.128"></a>
+<span class="sourceLineNo">129</span>    * @param pMeta<a name="line.129"></a>
+<span class="sourceLineNo">130</span>    *    The property metadata of the bean property of the object.<a name="line.130"></a>
+<span class="sourceLineNo">131</span>    *    Can be &lt;jk&gt;null&lt;/jk&gt; if the object isn't from a bean property.<a name="line.131"></a>
+<span class="sourceLineNo">132</span>    * @param o The URL object.<a name="line.132"></a>
+<span class="sourceLineNo">133</span>    * @return The anchor text to use for the specified URL object.<a name="line.133"></a>
+<span class="sourceLineNo">134</span>    */<a name="line.134"></a>
+<span class="sourceLineNo">135</span>   public String getAnchorText(BeanPropertyMeta pMeta, Object o) {<a name="line.135"></a>
+<span class="sourceLineNo">136</span>      String s = o.toString();<a name="line.136"></a>
+<span class="sourceLineNo">137</span>      if (lookForLabelParameters) {<a name="line.137"></a>
+<span class="sourceLineNo">138</span>         Matcher m = labelPattern.matcher(s);<a name="line.138"></a>
+<span class="sourceLineNo">139</span>         if (m.find())<a name="line.139"></a>
+<span class="sourceLineNo">140</span>            return urlDecode(m.group(1));<a name="line.140"></a>
+<span class="sourceLineNo">141</span>      }<a name="line.141"></a>
+<span class="sourceLineNo">142</span>      switch (anchorText) {<a name="line.142"></a>
+<span class="sourceLineNo">143</span>         case LAST_TOKEN:<a name="line.143"></a>
+<span class="sourceLineNo">144</span>            s = resolveUri(s);<a name="line.144"></a>
+<span class="sourceLineNo">145</span>            if (s.indexOf('/') != -1)<a name="line.145"></a>
+<span class="sourceLineNo">146</span>               s = s.substring(s.lastIndexOf('/')+1);<a name="line.146"></a>
+<span class="sourceLineNo">147</span>            if (s.indexOf('?') != -1)<a name="line.147"></a>
+<span class="sourceLineNo">148</span>               s = s.substring(0, s.indexOf('?'));<a name="line.148"></a>
+<span class="sourceLineNo">149</span>            if (s.indexOf('#') != -1)<a name="line.149"></a>
+<span class="sourceLineNo">150</span>               s = s.substring(0, s.indexOf('#'));<a name="line.150"></a>
+<span class="sourceLineNo">151</span>            if (s.isEmpty())<a name="line.151"></a>
+<span class="sourceLineNo">152</span>               s = "/";<a name="line.152"></a>
+<span class="sourceLineNo">153</span>            return urlDecode(s);<a name="line.153"></a>
+<span class="sourceLineNo">154</span>         case URI_ANCHOR:<a name="line.154"></a>
+<span class="sourceLineNo">155</span>            if (s.indexOf('#') != -1)<a name="line.155"></a>
+<span class="sourceLineNo">156</span>               s = s.substring(s.lastIndexOf('#')+1);<a name="line.156"></a>
+<span class="sourceLineNo">157</span>            return urlDecode(s);<a name="line.157"></a>
+<span class="sourceLineNo">158</span>         case PROPERTY_NAME:<a name="line.158"></a>
+<span class="sourceLineNo">159</span>            return pMeta == null ? s : pMeta.getName();<a name="line.159"></a>
+<span class="sourceLineNo">160</span>         case URI:<a name="line.160"></a>
+<span class="sourceLineNo">161</span>            return resolveUri(s);<a name="line.161"></a>
+<span class="sourceLineNo">162</span>         case CONTEXT_RELATIVE:<a name="line.162"></a>
+<span class="sourceLineNo">163</span>            return relativizeUri("context:/", s);<a name="line.163"></a>
+<span class="sourceLineNo">164</span>         case SERVLET_RELATIVE:<a name="line.164"></a>
+<span class="sourceLineNo">165</span>            return relativizeUri("servlet:/", s);<a name="line.165"></a>
+<span class="sourceLineNo">166</span>         case PATH_RELATIVE:<a name="line.166"></a>
+<span class="sourceLineNo">167</span>            return relativizeUri("request:/", s);<a name="line.167"></a>
+<span class="sourceLineNo">168</span>         default /* TO_STRING */:<a name="line.168"></a>
+<span class="sourceLineNo">169</span>            return s;<a name="line.169"></a>
+<span class="sourceLineNo">170</span>      }<a name="line.170"></a>
+<span class="sourceLineNo">171</span>   }<a name="line.171"></a>
+<span class="sourceLineNo">172</span><a name="line.172"></a>
+<span class="sourceLineNo">173</span>   /**<a name="line.173"></a>
+<span class="sourceLineNo">174</span>    * Returns the {@link HtmlSerializerContext#HTML_addKeyValueTableHeaders} setting value for this session.<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    *<a name="line.175"></a>
+<span class="sourceLineNo">176</span>    * @return The {@link HtmlSerializerContext#HTML_addKeyValueTableHeaders} setting value for this session.<a name="line.176"></a>
+<span class="sourceLineNo">177</span>    */<a name="line.177"></a>
+<span class="sourceLineNo">178</span>   public final boolean isAddKeyValueTableHeaders() {<a name="line.178"></a>
+<span class="sourceLineNo">179</span>      return addKeyValueTableHeaders;<a name="line.179"></a>
+<span class="sourceLineNo">180</span>   }<a name="line.180"></a>
+<span class="sourceLineNo">181</span><a name="line.181"></a>
+<span class="sourceLineNo">182</span>   /**<a name="line.182"></a>
+<span class="sourceLineNo">183</span>    * Returns the {@link HtmlSerializerContext#HTML_addBeanTypeProperties} setting value for this session.<a name="line.183"></a>
+<span class="sourceLineNo">184</span>    *<a name="line.184"></a>
+<span class="sourceLineNo">185</span>    * @return The {@link HtmlSerializerContext#HTML_addBeanTypeProperties} setting value for this session.<a name="line.185"></a>
+<span class="sourceLineNo">186</span>    */<a name="line.186"></a>
+<span class="sourceLineNo">187</span>   @Override /* SerializerSession */<a name="line.187"></a>
+<span class="sourceLineNo">188</span>   public final boolean isAddBeanTypeProperties() {<a name="line.188"></a>
+<span class="sourceLineNo">189</span>      return addBeanTypeProperties;<a name="line.189"></a>
+<span class="sourceLineNo">190</span>   }<a name="line.190"></a>
+<span class="sourceLineNo">191</span><a name="line.191"></a>
+<span class="sourceLineNo">192</span>   @Override /* XmlSerializer */<a name="line.192"></a>
+<span class="sourceLineNo">193</span>   public boolean isHtmlMode() {<a name="line.193"></a>
+<span class="sourceLineNo">194</span>      return true;<a name="line.194"></a>
+<span class="sourceLineNo">195</span>   }<a name="line.195"></a>
+<span class="sourceLineNo">196</span><a name="line.196"></a>
+<span class="sourceLineNo">197</span>   @Override /* Serializer */<a name="line.197"></a>
+<span class="sourceLineNo">198</span>   protected void doSerialize(SerializerPipe out, Object o) throws Exception {<a name="line.198"></a>
+<span class="sourceLineNo">199</span>      doSerialize(o, getHtmlWriter(out));<a name="line.199"></a>
+<span class="sourceLineNo">200</span>   }<a name="line.200"></a>
+<span class="sourceLineNo">201</span><a name="line.201"></a>
+<span class="sourceLineNo">202</span>   /**<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    * Main serialization routine.<a name="line.203"></a>
+<span class="sourceLineNo">204</span>    *<a name="line.204"></a>
+<span class="sourceLineNo">205</span>    * @param session The serialization context object.<a name="line.205"></a>
+<span class="sourceLineNo">206</span>    * @param o The object being serialized.<a name="line.206"></a>
+<span class="sourceLineNo">207</span>    * @param w The writer to serialize to.<a name="line.207"></a>
+<span class="sourceLineNo">208</span>    * @return The same writer passed in.<a name="line.208"></a>
+<span class="sourceLineNo">209</span>    * @throws IOException If a problem occurred trying to send output to the writer.<a name="line.209"></a>
+<span class="sourceLineNo">210</span>    */<a name="line.210"></a>
+<span class="sourceLineNo">211</span>   private HtmlWriter doSerialize(Object o, HtmlWriter w) throws Exception {<a name="line.211"></a>
+<span class="sourceLineNo">212</span>      serializeAnything(w, o, getExpectedRootType(o), null, getInitialDepth()-1, null, true);<a name="line.212"></a>
+<span class="sourceLineNo">213</span>      return w;<a name="line.213"></a>
+<span class="sourceLineNo">214</span>   }<a name="line.214"></a>
+<span class="sourceLineNo">215</span><a name="line.215"></a>
+<span class="sourceLineNo">216</span>   /**<a name="line.216"></a>
+<span class="sourceLineNo">217</span>    * Serialize the specified object to the specified writer.<a name="line.217"></a>
+<span class="sourceLineNo">218</span>    *<a name="line.218"></a>
+<span class="sourceLineNo">219</span>    * @param out The writer.<a name="line.219"></a>
+<span class="sourceLineNo">220</span>    * @param o The object to serialize.<a name="line.220"></a>
+<span class="sourceLineNo">221</span>    * @param eType The expected type of the object if this is a bean property.<a name="line.221"></a>
+<span class="sourceLineNo">222</span>    * @param name<a name="line.222"></a>
+<span class="sourceLineNo">223</span>    *    The attribute name of this object if this object was a field in a JSON object (i.e. key of a<a name="line.223"></a>
+<span class="sourceLineNo">224</span>    *    {@link java.util.Map.Entry} or property name of a bean).<a name="line.224"></a>
+<span class="sourceLineNo">225</span>    * @param xIndent The current indentation value.<a name="line.225"></a>
+<span class="sourceLineNo">226</span>    * @param pMeta The bean property being serialized, or &lt;jk&gt;null&lt;/jk&gt; if we're not serializing a bean property.<a name="line.226"></a>
+<span class="sourceLineNo">227</span>    * @param isRoot &lt;jk&gt;true&lt;/jk&gt; if this is the root element of the document.<a name="line.227"></a>
+<span class="sourceLineNo">228</span>    * @return The type of content encountered.  Either simple (no whitespace) or normal (elements with whitespace).<a name="line.228"></a>
+<span class="sourceLineNo">229</span>    * @throws Exception If a problem occurred trying to convert the output.<a name="line.229"></a>
+<span class="sourceLineNo">230</span>    */<a name="line.230"></a>
+<span class="sourceLineNo">231</span>   @SuppressWarnings({ "rawtypes", "unchecked" })<a name="line.231"></a>
+<span class="sourceLineNo">232</span>   protected ContentResult serializeAnything(HtmlWriter out, Object o,<a name="line.232"></a>
+<span class="sourceLineNo">233</span>         ClassMeta&lt;?&gt; eType, String name, int xIndent, BeanPropertyMeta pMeta, boolean isRoot) throws Exception {<a name="line.233"></a>
+<span class="sourceLineNo">234</span><a name="line.234"></a>
+<span class="sourceLineNo">235</span>      ClassMeta&lt;?&gt; aType = null;       // The actual type<a name="line.235"></a>
+<span class="sourceLineNo">236</span>      ClassMeta&lt;?&gt; wType = null;     // The wrapped type (delegate)<a name="line.236"></a>
+<span class="sourceLineNo">237</span>      ClassMeta&lt;?&gt; sType = object();   // The serialized type<a name="line.237"></a>
+<span class="sourceLineNo">238</span><a name="line.238"></a>
+<span class="sourceLineNo">239</span>      if (eType == null)<a name="line.239"></a>
+<span class="sourceLineNo">240</span>         eType = object();<a name="line.240"></a>
+<span class="sourceLineNo">241</span><a name="line.241"></a>
+<span class="sourceLineNo">242</span>      aType = push(name, o, eType);<a name="line.242"></a>
+<span class="sourceLineNo">243</span><a name="line.243"></a>
+<span class="sourceLineNo">244</span>      // Handle recursion<a name="line.244"></a>
+<span class="sourceLineNo">245</span>      if (aType == null) {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>         o = null;<a name="line.246"></a>
+<span class="sourceLineNo">247</span>         aType = object();<a name="line.247"></a>
+<span class="sourceLineNo">248</span>      }<a name="line.248"></a>
+<span class="sourceLineNo">249</span><a name="line.249"></a>
+<span class="sourceLineNo">250</span>      indent += xIndent;<a name="line.250"></a>
+<span class="sourceLineNo">251</span><a name="line.251"></a>
+<span class="sourceLineNo">252</span>      ContentResult cr = CR_NORMAL;<a name="line.252"></a>
+<span class="sourceLineNo">253</span><a name="line.253"></a>
+<span class="sourceLineNo">254</span>      // Determine the type.<a name="line.254"></a>
+<span class="sourceLineNo">255</span>      if (o == null || (aType.isChar() &amp;&amp; ((Character)o).charValue() == 0)) {<a name="line.255"></a>
+<span class="sourceLineNo">256</span>         out.tag("null");<a name="line.256"></a>
+<span class="sourceLineNo">257</span>         cr = ContentResult.CR_SIMPLE;<a name="line.257"></a>
+<span class="sourceLineNo">258</span><a name="line.258"></a>
+<span class="sourceLineNo">259</span>      } else {<a name="line.259"></a>
+<span class="sourceLineNo">260</span><a name="line.260"></a>
+<span class="sourceLineNo">261</span>         if (aType.isDelegate()) {<a name="line.261"></a>
+<span class="sourceLineNo">262</span>            wType = aType;<a name="line.262"></a>
+<span class="sourceLineNo">263</span>            aType = ((Delegate)o).getClassMeta();<a name="line.263"></a>
+<span class="sourceLineNo">264</span>         }<a name="line.264"></a>
+<span class="sourceLineNo">265</span><a name="line.265"></a>
+<span class="sourceLineNo">266</span>         sType = aType.getSerializedClassMeta();<a name="line.266"></a>
+<span class="sourceLineNo">267</span>         String typeName = null;<a name="line.267"></a>
+<span class="sourceLineNo">268</span>         if (isAddBeanTypeProperties() &amp;&amp; ! eType.equals(aType))<a name="line.268"></a>
+<span class="sourceLineNo">269</span>            typeName = aType.getDictionaryName();<a name="line.269"></a>
+<span class="sourceLineNo">270</span><a name="line.270"></a>
+<span class="sourceLineNo">271</span>         // Swap if necessary<a name="line.271"></a>
+<span class="sourceLineNo">272</span>         PojoSwap swap = aType.getPojoSwap();<a name="line.272"></a>
+<span class="sourceLineNo">273</span>         if (swap != null) {<a name="line.273"></a>
+<span class="sourceLineNo">274</span>            o = swap.swap(this, o);<a name="line.274"></a>
+<span class="sourceLineNo">275</span><a name="line.275"></a>
+<span class="sourceLineNo">276</span>            // If the getSwapClass() method returns Object, we need to figure out<a name="line.276"></a>
+<span class="sourceLineNo">277</span>            // the actual type now.<a name="line.277"></a>
+<span class="sourceLineNo">278</span>            if (sType.isObject())<a name="line.278"></a>
+<span class="sourceLineNo">279</span>               sType = getClassMetaForObject(o);<a name="line.279"></a>
+<span class="sourceLineNo">280</span>         }<a name="line.280"></a>
+<span class="sourceLineNo">281</span><a name="line.281"></a>
+<span class="sourceLineNo">282</span>         // Handle the case where we're serializing a raw stream.<a name="line.282"></a>
+<span class="sourceLineNo">283</span>         if (sType.isReader() || sType.isInputStream()) {<a name="line.283"></a>
+<span class="sourceLineNo">284</span>            pop();<a name="line.284"></a>
+<span class="sourceLineNo">285</span>            indent -= xIndent;<a name="line.285"></a>
+<span class="sourceLineNo">286</span>            IOUtils.pipe(o, out);<a name="line.286"></a>
+<span class="sourceLineNo">287</span>            return ContentResult.CR_SIMPLE;<a name="line.287"></a>
+<span class="sourceLineNo">288</span>         }<a name="line.288"></a>
+<span class="sourceLineNo">289</span><a name="line.289"></a>
+<span class="sourceLineNo">290</span>         HtmlClassMeta html = sType.getExtendedMeta(HtmlClassMeta.class);<a name="line.290"></a>
+<span class="sourceLineNo">291</span>         HtmlRender render = (pMeta == null ? null : pMeta.getExtendedMeta(HtmlBeanPropertyMeta.class).getRender());<a name="line.291"></a>
+<span class="sourceLineNo">292</span>         if (render == null)<a name="line.292"></a>
+<span class="sourceLineNo">293</span>            render = html.getRender();<a name="line.293"></a>
+<span class="sourceLineNo">294</span><a name="line.294"></a>
+<span class="sourceLineNo">295</span>         if (render != null) {<a name="line.295"></a>
+<span class="sourceLineNo">296</span>            Object o2 = render.getContent(this, o);<a name="line.296"></a>
+<span class="sourceLineNo">297</span>            if (o2 != o) {<a name="line.297"></a>
+<span class="sourceLineNo">298</span>               indent -= xIndent;<a name="line.298"></a>
+<span class="sourceLineNo">299</span>               pop();<a name="line.299"></a>
+<span class="sourceLineNo">300</span>               out.nl(indent);<a name="line.300"></a>
+<span class="sourceLineNo">301</span>               return serializeAnything(out, o2, null, typeName, xIndent, null, false);<a name="line.301"></a>
+<span class="sourceLineNo">302</span>            }<a name="line.302"></a>
+<span class="sourceLineNo">303</span>         }<a name="line.303"></a>
 <span class="sourceLineNo">304</span><a name="line.304"></a>
-<span class="sourceLineNo">305</span>         } else if (html.isAsPlainText() || (pMeta != null &amp;&amp; pMeta.getExtendedMeta(HtmlBeanPropertyMeta.class).isAsPlainText())) {<a name="line.305"></a>
-<span class="sourceLineNo">306</span>            out.write(o == null ? "null" : o.toString());<a name="line.306"></a>
-<span class="sourceLineNo">307</span>            cr = CR_SIMPLE;<a name="line.307"></a>
-<span class="sourceLineNo">308</span><a name="line.308"></a>
-<span class="sourceLineNo">309</span>         } else if (o == null || (sType.isChar() &amp;&amp; ((Character)o).charValue() == 0)) {<a name="line.309"></a>
-<span class="sourceLineNo">310</span>            out.tag("null");<a name="line.310"></a>
-<span class="sourceLineNo">311</span>            cr = CR_SIMPLE;<a name="line.311"></a>
-<span class="sourceLineNo">312</span><a name="line.312"></a>
-<span class="sourceLineNo">313</span>         } else if (sType.isNumber()) {<a name="line.313"></a>
-<span class="sourceLineNo">314</span>            if (eType.isNumber() &amp;&amp; ! isRoot)<a name="line.314"></a>
-<span class="sourceLineNo">315</span>               out.append(o);<a name="line.315"></a>
-<span class="sourceLineNo">316</span>            else<a name="line.316"></a>
-<span class="sourceLineNo">317</span>               out.sTag("number").append(o).eTag("number");<a name="line.317"></a>
+<span class="sourceLineNo">305</span>         if (html.isAsXml() || (pMeta != null &amp;&amp; pMeta.getExtendedMeta(HtmlBeanPropertyMeta.class).isAsXml())) {<a name="line.305"></a>
+<span class="sourceLineNo">306</span>            pop();<a name="line.306"></a>
+<span class="sourceLineNo">307</span>            indent++;<a name="line.307"></a>
+<span class="sourceLineNo">308</span>            super.serializeAnything(out, o, null, null, null, false, XmlFormat.MIXED, false, false, null);<a name="line.308"></a>
+<span class="sourceLineNo">309</span>            indent -= xIndent+1;<a name="line.309"></a>
+<span class="sourceLineNo">310</span>            return cr;<a name="line.310"></a>
+<span class="sourceLineNo">311</span><a name="line.311"></a>
+<span class="sourceLineNo">312</span>         } else if (html.isAsPlainText() || (pMeta != null &amp;&amp; pMeta.getExtendedMeta(HtmlBeanPropertyMeta.class).isAsPlainText())) {<a name="line.312"></a>
+<span class="sourceLineNo">313</span>            out.write(o == null ? "null" : o.toString());<a name="line.313"></a>
+<span class="sourceLineNo">314</span>            cr = CR_SIMPLE;<a name="line.314"></a>
+<span class="sourceLineNo">315</span><a name="line.315"></a>
+<span class="sourceLineNo">316</span>         } else if (o == null || (sType.isChar() &amp;&amp; ((Character)o).charValue() == 0)) {<a name="line.316"></a>
+<span class="sourceLineNo">317</span>            out.tag("null");<a name="line.317"></a>
 <span class="sourceLineNo">318</span>            cr = CR_SIMPLE;<a name="line.318"></a>
 <span class="sourceLineNo">319</span><a name="line.319"></a>
-<span class="sourceLineNo">320</span>         } else if (sType.isBoolean()) {<a name="line.320"></a>
-<span class="sourceLineNo">321</span>            if (eType.isBoolean() &amp;&amp; ! isRoot)<a name="line.321"></a>
+<span class="sourceLineNo">320</span>         } else if (sType.isNumber()) {<a name="line.320"></a>
+<span class="sourceLineNo">321</span>            if (eType.isNumber() &amp;&amp; ! isRoot)<a name="line.321"></a>
 <span class="sourceLineNo">322</span>               out.append(o);<a name="line.322"></a>
 <span class="sourceLineNo">323</span>            else<a name="line.323"></a>
-<span class="sourceLineNo">324</span>               out.sTag("boolean").append(o).eTag("boolean");<a name="line.324"></a>
+<span class="sourceLineNo">324</span>               out.sTag("number").append(o).eTag("number");<a name="line.324"></a>
 <span class="sourceLineNo">325</span>            cr = CR_SIMPLE;<a name="line.325"></a>
 <span class="sourceLineNo">326</span><a name="line.326"></a>
-<span class="sourceLineNo">327</span>         } else if (sType.isMap() || (wType != null &amp;&amp; wType.isMap())) {<a name="line.327"></a>
-<span class="sourceLineNo">328</span>            out.nlIf(! isRoot, xIndent+1);<a name="line.328"></a>
-<span class="sourceLineNo">329</span>            if (o instanceof BeanMap)<a name="line.329"></a>
-<span class="sourceLineNo">330</span>               serializeBeanMap(out, (BeanMap)o, eType, pMeta);<a name="line.330"></a>
-<span class="sourceLineNo">331</span>            else<a name="line.331"></a>
-<span class="sourceLineNo">332</span>               serializeMap(out, (Map)o, sType, eType.getKeyType(), eType.getValueType(), typeName, pMeta);<a name="line.332"></a>
+<span class="sourceLineNo">327</span>         } else if (sType.isBoolean()) {<a name="line.327"></a>
+<span class="sourceLineNo">328</span>            if (eType.isBoolean() &amp;&amp; ! isRoot)<a name="line.328"></a>
+<span class="sourceLineNo">329</span>               out.append(o);<a name="line.329"></a>
+<span class="sourceLineNo">330</span>            else<a name="line.330"></a>
+<span class="sourceLineNo">331</span>               out.sTag("boolean").append(o).eTag("boolean");<a name="line.331"></a>
+<span class="sourceLineNo">332</span>            cr = CR_SIMPLE;<a name="line.332"></a>
 <span class="sourceLineNo">333</span><a name="line.333"></a>
-<span class="sourceLineNo">334</span>         } else if (sType.isBean()) {<a name="line.334"></a>
-<span class="sourceLineNo">335</span>            BeanMap m = toBeanMap(o);<a name="line.335"></a>
-<span class="sourceLineNo">336</span>            Class&lt;?&gt; c = o.getClass();<a name="line.336"></a>
-<span class="sourceLineNo">337</span>            if (c.isAnnotationPresent(HtmlLink.class)) {<a name="line.337"></a>
-<span class="sourceLineNo">338</span>               HtmlLink h = o.getClass().getAnnotation(HtmlLink.class);<a name="line.338"></a>
-<span class="sourceLineNo">339</span>               Object urlProp = m.get(h.hrefProperty());<a name="line.339"></a>
-<span class="sourceLineNo">340</span>               Object nameProp = m.get(h.nameProperty());<a name="line.340"></a>
-<span class="sourceLineNo">341</span>               out.oTag("a").attrUri("href", urlProp).append('&gt;').text(nameProp).eTag("a");<a name="line.341"></a>
-<span class="sourceLineNo">342</span>               cr = CR_SIMPLE;<a name="line.342"></a>
-<span class="sourceLineNo">343</span>            } else {<a name="line.343"></a>
-<span class="sourceLineNo">344</span>               out.nlIf(! isRoot, xIndent+2);<a name="line.344"></a>
-<span class="sourceLineNo">345</span>               serializeBeanMap(out, m, eType, pMeta);<a name="line.345"></a>
-<span class="sourceLineNo">346</span>            }<a name="line.346"></a>
-<span class="sourceLineNo">347</span><a name="line.347"></a>
-<span class="sourceLineNo">348</span>         } else if (sType.isCollection() || sType.isArray() || (wType != null &amp;&amp; wType.isCollection())) {<a name="line.348"></a>
-<span class="sourceLineNo">349</span>            out.nlIf(! isRoot, xIndent+1);<a name="line.349"></a>
-<span class="sourceLineNo">350</span>            serializeCollection(out, o, sType, eType, name, pMeta);<a name="line.350"></a>
-<span class="sourceLineNo">351</span><a name="line.351"></a>
-<span class="sourceLineNo">352</span>         } else if (isUri(sType, pMeta, o)) {<a name="line.352"></a>
-<span class="sourceLineNo">353</span>            String label = getAnchorText(pMeta, o);<a name="line.353"></a>
-<span class="sourceLineNo">354</span>            out.oTag("a").attrUri("href", o).append('&gt;');<a name="line.354"></a>
-<span class="sourceLineNo">355</span>            out.text(label);<a name="line.355"></a>
-<span class="sourceLineNo">356</span>            out.eTag("a");<a name="line.356"></a>
-<span class="sourceLineNo">357</span>            cr = CR_SIMPLE;<a name="line.357"></a>
+<span class="sourceLineNo">334</span>         } else if (sType.isMap() || (wType != null &amp;&amp; wType.isMap())) {<a name="line.334"></a>
+<span class="sourceLineNo">335</span>            out.nlIf(! isRoot, xIndent+1);<a name="line.335"></a>
+<span class="sourceLineNo">336</span>            if (o instanceof BeanMap)<a name="line.336"></a>
+<span class="sourceLineNo">337</span>               serializeBeanMap(out, (BeanMap)o, eType, pMeta);<a name="line.337"></a>
+<span class="sourceLineNo">338</span>            else<a name="line.338"></a>
+<span class="sourceLineNo">339</span>               serializeMap(out, (Map)o, sType, eType.getKeyType(), eType.getValueType(), typeName, pMeta);<a name="line.339"></a>
+<span class="sourceLineNo">340</span><a name="line.340"></a>
+<span class="sourceLineNo">341</span>         } else if (sType.isBean()) {<a name="line.341"></a>
+<span class="sourceLineNo">342</span>            BeanMap m = toBeanMap(o);<a name="line.342"></a>
+<span class="sourceLineNo">343</span>            Class&lt;?&gt; c = o.getClass();<a name="line.343"></a>
+<span class="sourceLineNo">344</span>            if (c.isAnnotationPresent(HtmlLink.class)) {<a name="line.344"></a>
+<span class="sourceLineNo">345</span>               HtmlLink h = o.getClass().getAnnotation(HtmlLink.class);<a name="line.345"></a>
+<span class="sourceLineNo">346</span>               Object urlProp = m.get(h.hrefProperty());<a name="line.346"></a>
+<span class="sourceLineNo">347</span>               Object nameProp = m.get(h.nameProperty());<a name="line.347"></a>
+<span class="sourceLineNo">348</span>               out.oTag("a").attrUri("href", urlProp).append('&gt;').text(nameProp).eTag("a");<a name="line.348"></a>
+<span class="sourceLineNo">349</span>               cr = CR_SIMPLE;<a name="line.349"></a>
+<span class="sourceLineNo">350</span>            } else {<a name="line.350"></a>
+<span class="sourceLineNo">351</span>               out.nlIf(! isRoot, xIndent+2);<a name="line.351"></a>
+<span class="sourceLineNo">352</span>               serializeBeanMap(out, m, eType, pMeta);<a name="line.352"></a>
+<span class="sourceLineNo">353</span>            }<a name="line.353"></a>
+<span class="sourceLineNo">354</span><a name="line.354"></a>
+<span class="sourceLineNo">355</span>         } else if (sType.isCollection() || sType.isArray() || (wType != null &amp;&amp; wType.isCollection())) {<a name="line.355"></a>
+<span class="sourceLineNo">356</span>            out.nlIf(! isRoot, xIndent+1);<a name="line.356"></a>
+<span class="sourceLineNo">357</span>            serializeCollection(out, o, sType, eType, name, pMeta);<a name="line.357"></a>
 <span class="sourceLineNo">358</span><a name="line.358"></a>
-<span class="sourceLineNo">359</span>         } else {<a name="line.359"></a>
-<span class="sourceLineNo">360</span>            if (isRoot)<a name="line.360"></a>
-<span class="sourceLineNo">361</span>               out.sTag("string").text(toString(o)).eTag("string");<a name="line.361"></a>
-<span class="sourceLineNo">362</span>            else<a name="line.362"></a>
-<span class="sourceLineNo">363</span>               out.text(toString(o));<a name="line.363"></a>
+<span class="sourceLineNo">359</span>         } else if (isUri(sType, pMeta, o)) {<a name="line.359"></a>
+<span class="sourceLineNo">360</span>            String label = getAnchorText(pMeta, o);<a name="line.360"></a>
+<span class="sourceLineNo">361</span>            out.oTag("a").attrUri("href", o).append('&gt;');<a name="line.361"></a>
+<span class="sourceLineNo">362</span>            out.text(label);<a name="line.362"></a>
+<span class="sourceLineNo">363</span>            out.eTag("a");<a name="line.363"></a>
 <span class="sourceLineNo">364</span>            cr = CR_SIMPLE;<a name="line.364"></a>
-<span class="sourceLineNo">365</span>         }<a name="line.365"></a>
-<span class="sourceLineNo">366</span>      }<a name="line.366"></a>
-<span class="sourceLineNo">367</span>      pop();<a name="line.367"></a>
-<span class="sourceLineNo">368</span>      indent -= xIndent;<a name="line.368"></a>
-<span class="sourceLineNo">369</span>      return cr;<a name="line.369"></a>
-<span class="sourceLineNo">370</span>   }<a name="line.370"></a>
-<span class="sourceLineNo">371</span><a name="line.371"></a>
-<span class="sourceLineNo">372</span>   /**<a name="line.372"></a>
-<span class="sourceLineNo">373</span>    * Identifies what the contents were of a serialized bean.<a name="line.373"></a>
-<span class="sourceLineNo">374</span>    */<a name="line.374"></a>
-<span class="sourceLineNo">375</span>   static enum ContentResult {<a name="line.375"></a>
-<span class="sourceLineNo">376</span>      CR_SIMPLE,    // Simple content.  Shouldn't use whitespace.<a name="line.376"></a>
-<span class="sourceLineNo">377</span>      CR_NORMAL     // Normal content.  Use whitespace.<a name="line.377"></a>
-<span class="sourceLineNo">378</span>   }<a name="line.378"></a>
-<span class="sourceLineNo">379</span><a name="line.379"></a>
-<span class="sourceLineNo">380</span>   @SuppressWarnings({ "rawtypes", "unchecked" })<a name="line.380"></a>
-<span class="sourceLineNo">381</span>   private void serializeMap(HtmlWriter out, Map m, ClassMeta&lt;?&gt; sType,<a name="line.381"></a>
-<span class="sourceLineNo">382</span>         ClassMeta&lt;?&gt; eKeyType, ClassMeta&lt;?&gt; eValueType, String typeName, BeanPropertyMeta ppMeta) throws Exception {<a name="line.382"></a>
-<span class="sourceLineNo">383</span><a name="line.383"></a>
-<span class="sourceLineNo">384</span>      ClassMeta&lt;?&gt; keyType = eKeyType == null ? string() : eKeyType;<a name="line.384"></a>
-<span class="sourceLineNo">385</span>      ClassMeta&lt;?&gt; valueType = eValueType == null ? object() : eValueType;<a name="line.385"></a>
-<span class="sourceLineNo">386</span>      ClassMeta&lt;?&gt; aType = getClassMetaForObject(m);       // The actual type<a name="line.386"></a>
-<span class="sourceLineNo">387</span><a name="line.387"></a>
-<span class="sourceLineNo">388</span>      int i = indent;<a name="line.388"></a>
-<span class="sourceLineNo">389</span><a name="line.389"></a>
-<span class="sourceLineNo">390</span>      out.oTag(i, "table");<a name="line.390"></a>
-<span class="sourceLineNo">391</span><a name="line.391"></a>
-<span class="sourceLineNo">392</span>      if (typeName != null &amp;&amp; ppMeta != null &amp;&amp; ppMeta.getClassMeta() != aType)<a name="line.392"></a>
-<span class="sourceLineNo">393</span>         out.attr(getBeanTypePropertyName(sType), typeName);<a name="line.393"></a>
+<span class="sourceLineNo">365</span><a name="line.365"></a>
+<span class="sourceLineNo">366</span>         } else {<a name="line.366"></a>
+<span class="sourceLineNo">367</span>            if (isRoot)<a name="line.367"></a>
+<span class="sourceLineNo">368</span>               out.sTag("string").text(toString(o)).eTag("string");<a name="line.368"></a>
+<span class="sourceLineNo">369</span>            else<a name="line.369"></a>
+<span class="sourceLineNo">370</span>               out.text(toString(o));<a name="line.370"></a>
+<span class="sourceLineNo">371</span>            cr = CR_SIMPLE;<a name="line.371"></a>
+<span class="sourceLineNo">372</span>         }<a name="line.372"></a>
+<span class="sourceLineNo">373</span>      }<a name="line.373"></a>
+<span class="sourceLineNo">374</span>      pop();<a name="line.374"></a>
+<span class="sourceLineNo">375</span>      indent -= xIndent;<a name="line.375"></a>
+<span class="sourceLineNo">376</span>      return cr;<a name="line.376"></a>
+<span class="sourceLineNo">377</span>   }<a name="line.377"></a>
+<span class="sourceLineNo">378</span><a name="line.378"></a>
+<span class="sourceLineNo">379</span>   /**<a name="line.379"></a>
+<span class="sourceLineNo">380</span>    * Identifies what the contents were of a serialized bean.<a name="line.380"></a>
+<span class="sourceLineNo">381</span>    */<a name="line.381"></a>
+<span class="sourceLineNo">382</span>   static enum ContentResult {<a name="line.382"></a>
+<span class="sourceLineNo">383</span>      CR_SIMPLE,    // Simple content.  Shouldn't use whitespace.<a name="line.383"></a>
+<span class="sourceLineNo">384</span>      CR_NORMAL     // Normal content.  Use whitespace.<a name="line.384"></a>
+<span class="sourceLineNo">385</span>   }<a name="line.385"></a>
+<span class="sourceLineNo">386</span><a name="line.386"></a>
+<span class="sourceLineNo">387</span>   @SuppressWarnings({ "rawtypes", "unchecked" })<a name="line.387"></a>
+<span class="sourceLineNo">388</span>   private void serializeMap(HtmlWriter out, Map m, ClassMeta&lt;?&gt; sType,<a name="line.388"></a>
+<span class="sourceLineNo">389</span>         ClassMeta&lt;?&gt; eKeyType, ClassMeta&lt;?&gt; eValueType, String typeName, BeanPropertyMeta ppMeta) throws Exception {<a name="line.389"></a>
+<span class="sourceLineNo">390</span><a name="line.390"></a>
+<span class="sourceLineNo">391</span>      ClassMeta&lt;?&gt; keyType = eKeyType == null ? string() : eKeyType;<a name="line.391"></a>
+<span class="sourceLineNo">392</span>      ClassMeta&lt;?&gt; valueType = eValueType == null ? object() : eValueType;<a name="line.392"></a>
+<span class="sourceLineNo">393</span>      ClassMeta&lt;?&gt; aType = getClassMetaForObject(m);       // The actual type<a name="line.393"></a>
 <span class="sourceLineNo">394</span><a name="line.394"></a>
-<span class="sourceLineNo">395</span>      out.append("&gt;").nl(i+1);<a name="line.395"></a>
-<span class="sourceLineNo">396</span>      if (isAddKeyValueTableHeaders() &amp;&amp; ! (aType.getExtendedMeta(HtmlClassMeta.class).isNoTableHeaders()<a name="line.396"></a>
-<span class="sourceLineNo">397</span>            || (ppMeta != null &amp;&amp; ppMeta.getExtendedMeta(HtmlBeanPropertyMeta.class).isNoTableHeaders()))) {<a name="line.397"></a>
-<span class="sourceLineNo">398</span>         out.sTag(i+1, "tr").nl(i+2);<a name="line.398"></a>
-<span class="sourceLineNo">399</span>         out.sTag(i+2, "th").append("key").eTag("th").nl(i+3);<a name="line.399"></a>
-<span class="sourceLineNo">400</span>         out.sTag(i+2, "th").append("value").eTag("th").nl(i+3);<a name="line.400"></a>
-<span class="sourceLineNo">401</span>         out.ie(i+1).eTag("tr").nl(i+2);<a name="line.401"></a>
-<span class="sourceLineNo">402</span>      }<a name="line.402"></a>
-<span class="sourceLineNo">403</span>      for (Map.Entry e : (Set&lt;Map.Entry&gt;)m.entrySet()) {<a name="line.403"></a>
-<span class="sourceLineNo">404</span><a name="line.404"></a>
-<span class="sourceLineNo">405</span>         Object key = generalize(e.getKey(), keyType);<a name="line.405"></a>
-<span class="sourceLineNo">406</span>         Object value = null;<a name="line.406"></a>
-<span class="sourceLineNo">407</span>         try {<a name="line.407"></a>
-<span class="sourceLineNo">408</span>            value = e.getValue();<a name="line.408"></a>
-<span class="sourceLineNo">409</span>         } catch (StackOverflowError t) {<a name="line.409"></a>
-<span class="sourceLineNo">410</span>            throw t;<a name="line.410"></a>
-<span class="sourceLineNo">411</span>         } catch (Throwable t) {<a name="line.411"></a>
-<span class="sourceLineNo">412</span>            onError(t, "Could not call getValue() on property ''{0}'', {1}", e.getKey(), t.getLocalizedMessage());<a name="line.412"></a>
-<span class="sourceLineNo">413</span>         }<a name="line.413"></a>
-<span class="sourceLineNo">414</span><a name="line.414"></a>
-<span class="sourceLineNo">415</span>         String link = getLink(ppMeta);<a name="line.415"></a>
-<span class="sourceLineNo">416</span>         String style = getStyle(this, ppMeta, value);<a name="line.416"></a>
-<span class="sourceLineNo">417</span><a name="line.417"></a>
-<span class="sourceLineNo">418</span>         out.sTag(i+1, "tr").nl(i+2);<a name="line.418"></a>
-<span class="sourceLineNo">419</span>         out.oTag(i+2, "td");<a name="line.419"></a>
-<span class="sourceLineNo">420</span>         if (style != null)<a name="line.420"></a>
-<span class="sourceLineNo">421</span>            out.attr("style", style);<a name="line.421"></a>
-<span class="sourceLineNo">422</span>         out.cTag();<a name="line.422"></a>
-<span class="sourceLineNo">423</span>         if (link != null)<a name="line.423"></a>
-<span class="sourceLineNo">424</span>            out.oTag(i+3, "a").attrUri("href", link.replace("{#}", StringUtils.toString(value))).cTag();<a name="line.424"></a>
-<span class="sourceLineNo">425</span>         ContentResult cr = serializeAnything(out, key, keyType, null, 2, null, false);<a name="line.425"></a>
-<span class="sourceLineNo">426</span>         if (link != null)<a name="line.426"></a>
-<span class="sourceLineNo">427</span>            out.eTag("a");<a name="line.427"></a>
-<span class="sourceLineNo">428</span>         if (cr == CR_NORMAL)<a name="line.428"></a>
-<span class="sourceLineNo">429</span>            out.i(i+2);<a name="line.429"></a>
-<span class="sourceLineNo">430</span>         out.eTag("td").nl(i+2);<a name="line.430"></a>
-<span class="sourceLineNo">431</span>         out.sTag(i+2, "td");<a name="line.431"></a>
-<span class="sourceLineNo">432</span>         cr = serializeAnything(out, value, valueType, (key == null ? "_x0000_" : toString(key)), 2, null, false);<a name="line.432"></a>
-<span class="sourceLineNo">433</span>         if (cr == CR_NORMAL)<a name="line.433"></a>
-<span class="sourceLineNo">434</span>            out.ie(i+2);<a name="line.434"></a>
-<span class="sourceLineNo">435</span>         out.eTag("td").nl(i+2);<a name="line.435"></a>
-<span class="sourceLineNo">436</span>         out.ie(i+1).eTag("tr").nl(i+1);<a name="line.436"></a>
-<span class="sourceLineNo">437</span>      }<a name="line.437"></a>
-<span class="sourceLineNo">438</span>      out.ie(i).eTag("table").nl(i);<a name="line.438"></a>
-<span class="sourceLineNo">439</span>   }<a name="line.439"></a>
-<span class="sourceLineNo">440</span><a name="line.440"></a>
-<span class="sourceLineNo">441</span>   @SuppressWarnings("hiding")<a name="line.441"></a>
-<span class="sourceLineNo">442</span>   private void serializeBeanMap(HtmlWriter out, BeanMap&lt;?&gt; m, ClassMeta&lt;?&gt; eType,<a name="line.442"></a>
-<span class="sourceLineNo">443</span>         BeanPropertyMeta ppMeta) throws Exception {<a name="line.443"></a>
-<span class="sourceLineNo">444</span>      int i = indent;<a name="line.444"></a>
-<span class="sourceLineNo">445</span><a name="line.445"></a>
-<span class="sourceLineNo">446</span>      out.oTag(i, "table");<a name="line.446"></a>
+<span class="sourceLineNo">395</span>      int i = indent;<a name="line.395"></a>
+<span class="sourceLineNo">396</span><a name="line.396"></a>
+<span class="sourceLineNo">397</span>      out.oTag(i, "table");<a name="line.397"></a>
+<span class="sourceLineNo">398</span><a name="line.398"></a>
+<span class="sourceLineNo">399</span>      if (typeName != null &amp;&amp; ppMeta != null &amp;&amp; ppMeta.getClassMeta() != aType)<a name="line.399"></a>
+<span class="sourceLineNo">400</span>         out.attr(getBeanTypePropertyName(sType), typeName);<a name="line.400"></a>
+<span class="sourceLineNo">401</span><a name="line.401"></a>
+<span class="sourceLineNo">402</span>      out.append("&gt;").nl(i+1);<a name="line.402"></a>
+<span class="sourceLineNo">403</span>      if (isAddKeyValueTableHeaders() &amp;&amp; ! (aType.getExtendedMeta(HtmlClassMeta.class).isNoTableHeaders()<a name="line.403"></a>
+<span class="sourceLineNo">404</span>            || (ppMeta != null &amp;&amp; ppMeta.getExtendedMeta(HtmlBeanPropertyMeta.class).isNoTableHeaders()))) {<a name="line.404"></a>
+<span class="sourceLineNo">405</span>         out.sTag(i+1, "tr").nl(i+2);<a name="line.405"></a>
+<span class="sourceLineNo">406</span>         out.sTag(i+2, "th").append("key").eTag("th").nl(i+3);<a name="line.406"></a>
+<span class="sourceLineNo">407</span>         out.sTag(i+2, "th").append("value").eTag("th").nl(i+3);<a name="line.407"></a>
+<span class="sourceLineNo">408</span>         out.ie(i+1).eTag("tr").nl(i+2);<a name="line.408"></a>
+<span class="sourceLineNo">409</span>      }<a name="line.409"></a>
+<span class="sourceLineNo">410</span>      for (Map.Entry e : (Set&lt;Map.Entry&gt;)m.entrySet()) {<a name="line.410"></a>
+<span class="sourceLineNo">411</span><a name="line.411"></a>
+<span class="sourceLineNo">412</span>         Object key = generalize(e.getKey(), keyType);<a name="line.412"></a>
+<span class="sourceLineNo">413</span>         Object value = null;<a name="line.413"></a>
+<span class="sourceLineNo">414</span>         try {<a name="line.414"></a>
+<span class="sourceLineNo">415</span>            value = e.getValue();<a name="line.415"></a>
+<span class="sourceLineNo">416</span>         } catch (StackOverflowError t) {<a name="line.416"></a>
+<span class="sourceLineNo">417</span>            throw t;<a name="line.417"></a>
+<span class="sourceLineNo">418</span>         } catch (Throwable t) {<a name="line.418"></a>
+<span class="sourceLineNo">419</span>            onError(t, "Could not call getValue() on property ''{0}'', {1}", e.getKey(), t.getLocalizedMessage());<a name="line.419"></a>
+<span class="sourceLineNo">420</span>         }<a name="line.420"></a>
+<span class="sourceLineNo">421</span><a name="line.421"></a>
+<span class="sourceLineNo">422</span>         String link = getLink(ppMeta);<a name="line.422"></a>
+<span class="sourceLineNo">423</span>         String style = getStyle(this, ppMeta, value);<a name="line.423"></a>
+<span class="sourceLineNo">424</span><a name="line.424"></a>
+<span class="sourceLineNo">425</span>         out.sTag(i+1, "tr").nl(i+2);<a name="line.425"></a>
+<span class="sourceLineNo">426</span>         out.oTag(i+2, "td");<a name="line.426"></a>
+<span class="sourceLineNo">427</span>         if (style != null)<a name="line.427"></a>
+<span class="sourceLineNo">428</span>            out.attr("style", style);<a name="line.428"></a>
+<span class="sourceLineNo">429</span>         out.cTag();<a name="line.429"></a>
+<span class="sourceLineNo">430</span>         if (link != null)<a name="line.430"></a>
+<span class="sourceLineNo">431</span>            out.oTag(i+3, "a").attrUri("href", link.replace("{#}", StringUtils.toString(value))).cTag();<a name="line.431"></a>
+<span class="sourceLineNo">432</span>         ContentResult cr = serializeAnything(out, key, keyType, null, 2, null, false);<a name="line.432"></a>
+<span class="sourceLineNo">433</span>         if (link != null)<a name="line.433"></a>
+<span class="sourceLineNo">434</span>            out.eTag("a");<a name="line.434"></a>
+<span class="sourceLineNo">435</span>         if (cr == CR_NORMAL)<a name="line.435"></a>
+<span class="sourceLineNo">436</span>            out.i(i+2);<a name="line.436"></a>
+<span class="sourceLineNo">437</span>         out.eTag("td").nl(i+2);<a name="line.437"></a>
+<span class="sourceLineNo">438</span>         out.sTag(i+2, "td");<a name="line.438"></a>
+<span class="sourceLineNo">439</span>         cr = serializeAnything(out, value, valueType, (key == null ? "_x0000_" : toString(key)), 2, null, false);<a name="line.439"></a>
+<span class="sourceLineNo">440</span>         if (cr == CR_NORMAL)<a name="line.440"></a>
+<span class="sourceLineNo">441</span>            out.ie(i+2);<a name="line.441"></a>
+<span class="sourceLineNo">442</span>         out.eTag("td").nl(i+2);<a name="line.442"></a>
+<span class="sourceLineNo">443</span>         out.ie(i+1).eTag("tr").nl(i+1);<a name="line.443"></a>
+<span class="sourceLineNo">444</span>      }<a name="line.444"></a>
+<span class="sourceLineNo">445</span>      out.ie(i).eTag("table").nl(i);<a name="line.445"></a>
+<span class="sourceLineNo">446</span>   }<a name="line.446"></a>
 <span class="sourceLineNo">447</span><a name="line.447"></a>
-<span class="sourceLineNo">448</span>      String typeName = m.getMeta().getDictionaryName();<a name="line.448"></a>
-<span class="sourceLineNo">449</span>      if (typeName != null &amp;&amp; eType != m.getClassMeta())<a name="line.449"></a>
-<span class="sourceLineNo">450</span>         out.attr(getBeanTypePropertyName(m.getClassMeta()), typeName);<a name="line.450"></a>
-<span class="sourceLineNo">451</span><a name="line.451"></a>
-<span class="sourceLineNo">452</span>      out.append('&gt;').nl(i);<a name="line.452"></a>
-<span class="sourceLineNo">453</span>      if (isAddKeyValueTableHeaders() &amp;&amp; ! (m.getClassMeta().getExtendedMeta(HtmlClassMeta.class).isNoTableHeaders()<a name="line.453"></a>
-<span class="sourceLineNo">454</span>            || (ppMeta != null &amp;&amp; ppMeta.getExtendedMeta(HtmlBeanPropertyMeta.class).isNoTableHeaders()))) {<a name="line.454"></a>
-<span class="sourceLineNo">455</span>         out.sTag(i+1, "tr").nl(i+1);<a name="line.455"></a>
-<span class="sourceLineNo">456</span>         out.sTag(i+2, "th").append("key").eTag("th").nl(i+2);<a name="line.456"></a>
-<span class="sourceLineNo">457</span>         out.sTag(i+2, "th").append("value").eTag("th").nl(i+2);<a name="line.457"></a>
-<span class="sourceLineNo">458</span>         out.ie(i+1).eTag("tr").nl(i+1);<a name="line.458"></a>
-<span class="sourceLineNo">459</span>      }<a name="line.459"></a>
-<span class="sourceLineNo">460</span><a name="line.460"></a>
-<span class="sourceLineNo">461</span>      for (BeanPropertyValue p : m.getValues(isTrimNulls())) {<a name="line.461"></a>
-<span class="sourceLineNo">462</span>         BeanPropertyMeta pMeta = p.getMeta();<a name="line.462"></a>
-<span class="sourceLineNo">463</span>         ClassMeta&lt;?&gt; cMeta = p.getClassMeta();<a name="line.463"></a>
-<span class="sourceLineNo">464</span><a name="line.464"></a>
-<span class="sourceLineNo">465</span>         String key = p.getName();<a name="line.465"></a>
-<span class="sourceLineNo">466</span>         Object value = p.getValue();<a name="line.466"></a>
-<span class="sourceLineNo">467</span>         Throwable t = p.getThrown();<a name="line.467"></a>
-<span class="sourceLineNo">468</span>         if (t != null)<a name="line.468"></a>
-<span class="sourceLineNo">469</span>            onBeanGetterException(pMeta, t);<a name="line.469"></a>
-<span class="sourceLineNo">470</span><a name="line.470"></a>
-<span class="sourceLineNo">471</span>         if (canIgnoreValue(cMeta, key, value))<a name="line.471"></a>
-<span class="sourceLineNo">472</span>            continue;<a name="line.472"></a>
-<span class="sourceLineNo">473</span><a name="line.473"></a>
-<span class="sourceLineNo">474</span>         String link = null, anchorText = null;<a name="line.474"></a>
-<span class="sourceLineNo">475</span>         if (! cMeta.isCollectionOrArray()) {<a name="line.475"></a>
-<span class="sourceLineNo">476</span>            link = m.resolveVars(getLink(pMeta));<a name="line.476"></a>
-<span class="sourceLineNo">477</span>            anchorText = m.resolveVars(getAnchorText(pMeta));<a name="line.477"></a>
-<span class="sourceLineNo">478</span>         }<a name="line.478"></a>
-<span class="sourceLineNo">479</span><a name="line.479"></a>
-<span class="sourceLineNo">480</span>         if (anchorText != null)<a name="line.480"></a>
-<span class="sourceLineNo">481</span>            value = anchorText;<a name="line.481"></a>
-<span class="sourceLineNo">482</span><a name="line.482"></a>
-<span class="sourceLineNo">483</span>         out.sTag(i+1, "tr").nl(i+1);<a name="line.483"></a>
-<span class="sourceLineNo">484</span>         out.sTag(i+2, "td").text(key).eTag("td").nl(i+2);<a name="line.484"></a>
-<span class="sourceLineNo">485</span>         out.oTag(i+2, "td");<a name="line.485"></a>
-<span class="sourceLineNo">486</span>         String style = getStyle(this, pMeta, value);<a name="line.486"></a>
-<span class="sourceLineNo">487</span>         if (style != null)<a name="line.487"></a>
-<span class="sourceLineNo">488</span>            out.attr("style", style);<a name="line.488"></a>
-<span class="sourceLineNo">489</span>         out.cTag();<a name="line.489"></a>
-<span class="sourceLineNo">490</span><a name="line.490"></a>
-<span class="sourceLineNo">491</span>         try {<a name="line.491"></a>
-<span class="sourceLineNo">492</span>            if (link != null)<a name="line.492"></a>
-<span class="sourceLineNo">493</span>               out.oTag(i+3, "a").attrUri("href", link).cTag();<a name="line.493"></a>
-<span class="sourceLineNo">494</span>            ContentResult cr = serializeAnything(out, value, cMeta, key, 2, pMeta, false);<a name="line.494"></a>
-<span class="sourceLineNo">495</span>            if (cr == CR_NORMAL)<a name="line.495"></a>
-<span class="sourceLineNo">496</span>               out.i(i+2);<a name="line.496"></a>
-<span class="sourceLineNo">497</span>            if (link != null)<a name="line.497"></a>
-<span class="sourceLineNo">498</span>               out.eTag("a");<a name="line.498"></a>
-<span class="sourceLineNo">499</span>         } catch (SerializeException e) {<a name="line.499"></a>
-<span class="sourceLineNo">500</span>            throw e;<a name="line.500"></a>
-<span class="sourceLineNo">501</span>         } catch (Error e) {<a name="line.501"></a>
-<span class="sourceLineNo">502</span>            throw e;<a name="line.502"></a>
-<span class="sourceLineNo">503</span>         } catch (Throwable e) {<a name="line.503"></a>
-<span class="sourceLineNo">504</span>            e.printStackTrace();<a name="line.504"></a>
-<span class="sourceLineNo">505</span>            onBeanGetterException(pMeta, e);<a name="line.505"></a>
-<span class="sourceLineNo">506</span>         }<a name="line.506"></a>
-<span class="sourceLineNo">507</span>         out.eTag("td").nl(i+2);<a name="line.507"></a>
-<span class="sourceLineNo">508</span>         out.ie(i+1).eTag("tr").nl(i+1);<a name="line.508"></a>
-<span class="sourceLineNo">509</span>      }<a name="line.509"></a>
-<span class="sourceLineNo">510</span>      out.ie(i).eTag("table").nl(i);<a name="line.510"></a>
-<span class="sourceLineNo">511</span>   }<a name="line.511"></a>
-<span class="sourceLineNo">512</span><a name="line.512"></a>
-<span class="sourceLineNo">513</span>   @SuppressWarnings({ "rawtypes", "unchecked", "hiding" })<a name="line.513"></a>
-<span class="sourceLineNo">514</span>   private void serializeCollection(HtmlWriter out, Object in, ClassMeta&lt;?&gt; sType,<a name="line.514"></a>
-<span class="sourceLineNo">515</span>         ClassMeta&lt;?&gt; eType, String name, BeanPropertyMeta ppMeta) throws Exception {<a name="line.515"></a>
-<span class="sourceLineNo">516</span><a name="line.516"></a>
-<span class="sourceLineNo">517</span>      ClassMeta&lt;?&gt; seType = sType.getElementType();<a name="line.517"></a>
-<span class="sourceLineNo">518</span>      if (seType == null)<a name="line.518"></a>
-<span class="sourceLineNo">519</span>         seType = object();<a name="line.519"></a>
-<span class="sourceLineNo">520</span><a name="line.520"></a>
-<span class="sourceLineNo">521</span>      Collection c = (sType.isCollection() ? (Collection)in : toList(sType.getInnerClass(), in));<a name="line.521"></a>
-<span class="sourceLineNo">522</span><a name="line.522"></a>
-<span class="sourceLineNo">523</span>      int i = indent;<a name="line.523"></a>
-<span class="sourceLineNo">524</span>      if (c.isEmpty()) {<a name="line.524"></a>
-<span class="sourceLineNo">525</span>         out.appendln(i, "&lt;ul&gt;&lt;/ul&gt;");<a name="line.525"></a>
-<span class="sourceLineNo">526</span>         return;<a name="line.526"></a>
-<span class="sourceLineNo">527</span>      }<a name="line.527"></a>
-<span class="sourceLineNo">528</span><a name="line.528"></a>
-<span class="sourceLineNo">529</span>      String type2 = null;<a name="line.529"></a>
-<span class="sourceLineNo">530</span>      if (sType != eType)<a name="line.530"></a>
-<span class="sourceLineNo">531</span>         type2 = sType.getDictionaryName();<a name="line.531"></a>
-<span class="sourceLineNo">532</span>      if (type2 == null)<a name="line.532"></a>
-<span class="sourceLineNo">533</span>         type2 = "array";<a name="line.533"></a>
-<span class="sourceLineNo">534</span><a name="line.534"></a>
-<span class="sourceLineNo">535</span>      c = sort(c);<a name="line.535"></a>
-<span class="sourceLineNo">536</span><a name="line.536"></a>
-<span class="sourceLineNo">537</span>      HtmlBeanPropertyMeta hbpMeta = (ppMeta == null ? null : ppMeta.getExtendedMeta(HtmlBeanPropertyMeta.class));<a name="line.537"></a>
-<span class="sourceLineNo">538</span>      String btpn = getBeanTypePropertyName(eType);<a name="line.538"></a>
-<span class="sourceLineNo">539</span><a name="line.539"></a>
-<span class="sourceLineNo">540</span>      // Look at the objects to see how we're going to handle them.  Check the first object to see how we're going to<a name="line.540"></a>
-<span class="sourceLineNo">541</span>      // handle this.<a name="line.541"></a>
-<span class="sourceLineNo">542</span>      // If it's a map or bean, then we'll create a table.<a name="line.542"></a>
-<span class="sourceLineNo">543</span>      // Otherwise, we'll create a list.<a name="line.543"></a>
-<span class="sourceLineNo">544</span>      Object[] th = getTableHeaders(c, hbpMeta);<a name="line.544"></a>
-<span class="sourceLineNo">545</span><a name="line.545"></a>
-<span class="sourceLineNo">546</span>      if (th != null) {<a name="line.546"></a>
-<span class="sourceLineNo">547</span><a name="line.547"></a>
-<span class="sourceLineNo">548</span>         out.oTag(i, "table").attr(btpn, type2).append('&gt;').nl(i+1);<a name="line.548"></a>
-<span class="sourceLineNo">549</span>         out.sTag(i+1, "tr").nl(i+2);<a name="line.549"></a>
-<span class="sourceLineNo">550</span>         for (Object key : th) {<a name="line.550"></a>
-<span class="sourceLineNo">551</span>            out.sTag(i+2, "th");<a name="line.551"></a>
-<span class="sourceLineNo">552</span>            out.text(convertToType(key, String.class));<a name="line.552"></a>
-<span class="sourceLineNo">553</span>            out.eTag("th").nl(i+2);<a name="line.553"></a>
-<span class="sourceLineNo">554</span>         }<a name="line.554"></a>
-<span class="sourceLineNo">555</span>         out.ie(i+1).eTag("tr").nl(i+1);<a name="line.555"></a>
-<span class="sourceLineNo">556</span><a name="line.556"></a>
-<span class="sourceLineNo">557</span>         for (Object o : c) {<a name="line.557"></a>
-<span class="sourceLineNo">558</span>            ClassMeta&lt;?&gt; cm = getClassMetaForObject(o);<a name="line.558"></a>
-<span class="sourceLineNo">559</span><a name="line.559"></a>
-<span class="sourceLineNo">560</span>            if (cm != null &amp;&amp; cm.getPojoSwap() != null) {<a name="line.560"></a>
-<span class="sourceLineNo">561</span>               PojoSwap f = cm.getPojoSwap();<a name="line.561"></a>
-<span class="sourceLineNo">562</span>               o = f.swap(this, o);<a name="line.562"></a>
-<span class="sourceLineNo">563</span>               cm = cm.getSerializedClassMeta();<a name="line.563"></a>
-<span class="sourceLineNo">564</span>            }<a name="line.564"></a>
-<span class="sourceLineNo">565</span><a name="line.565"></a>
-<span class="sourceLineNo">566</span>            out.oTag(i+1, "tr");<a name="line.566"></a>
-<span class="sourceLineNo">567</span>            String typeName = (cm == null ? null : cm.getDictionaryName());<a name="line.567"></a>
-<span class="sourceLineNo">568</span>            String typeProperty = getBeanTypePropertyName(cm);<a name="line.568"></a>
-<span class="sourceLineNo">569</span><a name="line.569"></a>
-<span class="sourceLineNo">570</span>            if (typeName != null &amp;&amp; eType.getElementType() != cm)<a name="line.570"></a>
-<span class="sourceLineNo">571</span>               out.attr(typeProperty, typeName);<a name="line.571"></a>
-<span class="sourceLineNo">572</span>            out.cTag().nl(i+2);<a name="line.572"></a>
-<span class="sourceLineNo">573</span><a name="line.573"></a>
-<span class="sourceLineNo">574</span>            if (cm == null) {<a name="line.574"></a>
-<span class="sourceLineNo">575</span>               serializeAnything(out, o, null, null, 1, null, false);<a name="line.575"></a>
+<span class="sourceLineNo">448</span>   @SuppressWarnings("hiding")<a name="line.448"></a>
+<span class="sourceLineNo">449</span>   private void serializeBeanMap(HtmlWriter out, BeanMap&lt;?&gt; m, ClassMeta&lt;?&gt; eType,<a name="line.449"></a>
+<span class="sourceLineNo">450</span>         BeanPropertyMeta ppMeta) throws Exception {<a name="line.450"></a>
+<span class="sourceLineNo">451</span>      int i = indent;<a name="line.451"></a>
+<span class="sourceLineNo">452</span><a name="line.452"></a>
+<span class="sourceLineNo">453</span>      out.oTag(i, "table");<a name="line.453"></a>
+<span class="sourceLineNo">454

<TRUNCATED>


[30/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializerSession.html b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializerSession.html
index 059b199..11ab1dc 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializerSession.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfSerializerSession.html
@@ -71,352 +71,355 @@
 <span class="sourceLineNo">063</span>    *    These specify session-level information such as locale and URI context.<a name="line.63"></a>
 <span class="sourceLineNo">064</span>    *    It also include session-level properties that override the properties defined on the bean and<a name="line.64"></a>
 <span class="sourceLineNo">065</span>    *    serializer contexts.<a name="line.65"></a>
-<span class="sourceLineNo">066</span>    *    &lt;br&gt;If &lt;jk&gt;null&lt;/jk&gt;, defaults to {@link SerializerSessionArgs#DEFAULT}.<a name="line.66"></a>
-<span class="sourceLineNo">067</span>    */<a name="line.67"></a>
-<span class="sourceLineNo">068</span>   protected RdfSerializerSession(RdfSerializerContext ctx, SerializerSessionArgs args) {<a name="line.68"></a>
-<span class="sourceLineNo">069</span>      super(ctx, args);<a name="line.69"></a>
-<span class="sourceLineNo">070</span>      ObjectMap jenaSettings = new ObjectMap();<a name="line.70"></a>
-<span class="sourceLineNo">071</span>      jenaSettings.put("rdfXml.tab", isUseWhitespace() ? 2 : 0);<a name="line.71"></a>
-<span class="sourceLineNo">072</span>      jenaSettings.put("rdfXml.attributeQuoteChar", Character.toString(getQuoteChar()));<a name="line.72"></a>
-<span class="sourceLineNo">073</span>      jenaSettings.putAll(ctx.jenaSettings);<a name="line.73"></a>
-<span class="sourceLineNo">074</span>      ObjectMap p = getProperties();<a name="line.74"></a>
-<span class="sourceLineNo">075</span>      if (p.isEmpty()) {<a name="line.75"></a>
-<span class="sourceLineNo">076</span>         this.rdfLanguage = ctx.rdfLanguage;<a name="line.76"></a>
-<span class="sourceLineNo">077</span>         this.juneauNs = ctx.juneauNs;<a name="line.77"></a>
-<span class="sourceLineNo">078</span>         this.juneauBpNs = ctx.juneauBpNs;<a name="line.78"></a>
-<span class="sourceLineNo">079</span>         this.addLiteralTypes = ctx.addLiteralTypes;<a name="line.79"></a>
-<span class="sourceLineNo">080</span>         this.addRootProperty = ctx.addRootProperty;<a name="line.80"></a>
-<span class="sourceLineNo">081</span>         this.collectionFormat = ctx.collectionFormat;<a name="line.81"></a>
-<span class="sourceLineNo">082</span>         this.looseCollections = ctx.looseCollections;<a name="line.82"></a>
-<span class="sourceLineNo">083</span>         this.useXmlNamespaces = ctx.useXmlNamespaces;<a name="line.83"></a>
-<span class="sourceLineNo">084</span>         this.autoDetectNamespaces = ctx.autoDetectNamespaces;<a name="line.84"></a>
-<span class="sourceLineNo">085</span>         this.namespaces = ctx.namespaces;<a name="line.85"></a>
-<span class="sourceLineNo">086</span>         addBeanTypeProperties = ctx.addBeanTypeProperties;<a name="line.86"></a>
-<span class="sourceLineNo">087</span>      } else {<a name="line.87"></a>
-<span class="sourceLineNo">088</span>         this.rdfLanguage = p.getString(RDF_language, ctx.rdfLanguage);<a name="line.88"></a>
-<span class="sourceLineNo">089</span>         this.juneauNs = (p.containsKey(RDF_juneauNs) ? NamespaceFactory.parseNamespace(p.get(RDF_juneauNs)) : ctx.juneauNs);<a name="line.89"></a>
-<span class="sourceLineNo">090</span>         this.juneauBpNs = (p.containsKey(RDF_juneauBpNs) ? NamespaceFactory.parseNamespace(p.get(RDF_juneauBpNs)) : ctx.juneauBpNs);<a name="line.90"></a>
-<span class="sourceLineNo">091</span>         this.addLiteralTypes = p.getBoolean(RDF_addLiteralTypes, ctx.addLiteralTypes);<a name="line.91"></a>
-<span class="sourceLineNo">092</span>         this.addRootProperty = p.getBoolean(RDF_addRootProperty, ctx.addRootProperty);<a name="line.92"></a>
-<span class="sourceLineNo">093</span>         for (Map.Entry&lt;String,Object&gt; e : p.entrySet()) {<a name="line.93"></a>
-<span class="sourceLineNo">094</span>            String key = e.getKey();<a name="line.94"></a>
-<span class="sourceLineNo">095</span>            if (key.startsWith("Rdf.jena."))<a name="line.95"></a>
-<span class="sourceLineNo">096</span>               jenaSettings.put(key.substring(9), e.getValue());<a name="line.96"></a>
-<span class="sourceLineNo">097</span>         }<a name="line.97"></a>
-<span class="sourceLineNo">098</span>         this.collectionFormat = RdfCollectionFormat.valueOf(p.getString(RDF_collectionFormat, "DEFAULT"));<a name="line.98"></a>
-<span class="sourceLineNo">099</span>         this.looseCollections = p.getBoolean(RDF_looseCollections, ctx.looseCollections);<a name="line.99"></a>
-<span class="sourceLineNo">100</span>         this.useXmlNamespaces = p.getBoolean(RDF_useXmlNamespaces, ctx.useXmlNamespaces);<a name="line.100"></a>
-<span class="sourceLineNo">101</span>         this.autoDetectNamespaces = p.getBoolean(RDF_autoDetectNamespaces, ctx.autoDetectNamespaces);<a name="line.101"></a>
-<span class="sourceLineNo">102</span>         this.namespaces = p.getWithDefault(RDF_namespaces, ctx.namespaces, Namespace[].class);<a name="line.102"></a>
-<span class="sourceLineNo">103</span>         addBeanTypeProperties = p.getBoolean(RDF_addBeanTypeProperties, ctx.addBeanTypeProperties);<a name="line.103"></a>
-<span class="sourceLineNo">104</span>      }<a name="line.104"></a>
-<span class="sourceLineNo">105</span>      this.model = ModelFactory.createDefaultModel();<a name="line.105"></a>
-<span class="sourceLineNo">106</span>      addModelPrefix(juneauNs);<a name="line.106"></a>
-<span class="sourceLineNo">107</span>      addModelPrefix(juneauBpNs);<a name="line.107"></a>
-<span class="sourceLineNo">108</span>      for (Namespace ns : this.namespaces)<a name="line.108"></a>
-<span class="sourceLineNo">109</span>         addModelPrefix(ns);<a name="line.109"></a>
-<span class="sourceLineNo">110</span>      this.pRoot = model.createProperty(juneauNs.getUri(), RDF_juneauNs_ROOT);<a name="line.110"></a>
-<span class="sourceLineNo">111</span>      this.pValue = model.createProperty(juneauNs.getUri(), RDF_juneauNs_VALUE);<a name="line.111"></a>
-<span class="sourceLineNo">112</span>      writer = model.getWriter(rdfLanguage);<a name="line.112"></a>
-<span class="sourceLineNo">113</span><a name="line.113"></a>
-<span class="sourceLineNo">114</span>      // Only apply properties with this prefix!<a name="line.114"></a>
-<span class="sourceLineNo">115</span>      String propPrefix = RdfCommonContext.LANG_PROP_MAP.get(rdfLanguage);<a name="line.115"></a>
-<span class="sourceLineNo">116</span>      if (propPrefix == null)<a name="line.116"></a>
-<span class="sourceLineNo">117</span>         throw new FormattedRuntimeException("Unknown RDF language encountered: ''{0}''", rdfLanguage);<a name="line.117"></a>
-<span class="sourceLineNo">118</span><a name="line.118"></a>
-<span class="sourceLineNo">119</span>      for (Map.Entry&lt;String,Object&gt; e : jenaSettings.entrySet())<a name="line.119"></a>
-<span class="sourceLineNo">120</span>         if (e.getKey().startsWith(propPrefix))<a name="line.120"></a>
-<span class="sourceLineNo">121</span>            writer.setProperty(e.getKey().substring(propPrefix.length()), e.getValue());<a name="line.121"></a>
-<span class="sourceLineNo">122</span>   }<a name="line.122"></a>
-<span class="sourceLineNo">123</span><a name="line.123"></a>
-<span class="sourceLineNo">124</span>   /*<a name="line.124"></a>
-<span class="sourceLineNo">125</span>    * Adds the specified namespace as a model prefix.<a name="line.125"></a>
-<span class="sourceLineNo">126</span>    */<a name="line.126"></a>
-<span class="sourceLineNo">127</span>   private void addModelPrefix(Namespace ns) {<a name="line.127"></a>
-<span class="sourceLineNo">128</span>      model.setNsPrefix(ns.getName(), ns.getUri());<a name="line.128"></a>
-<span class="sourceLineNo">129</span>   }<a name="line.129"></a>
-<span class="sourceLineNo">130</span><a name="line.130"></a>
-<span class="sourceLineNo">131</span>   /**<a name="line.131"></a>
-<span class="sourceLineNo">132</span>    * Returns the {@link MsgPackSerializerContext#MSGPACK_addBeanTypeProperties} setting value for this session.<a name="line.132"></a>
-<span class="sourceLineNo">133</span>    *<a name="line.133"></a>
-<span class="sourceLineNo">134</span>    * @return The {@link MsgPackSerializerContext#MSGPACK_addBeanTypeProperties} setting value for this session.<a name="line.134"></a>
-<span class="sourceLineNo">135</span>    */<a name="line.135"></a>
-<span class="sourceLineNo">136</span>   @Override /* SerializerSession */<a name="line.136"></a>
-<span class="sourceLineNo">137</span>   public final boolean isAddBeanTypeProperties() {<a name="line.137"></a>
-<span class="sourceLineNo">138</span>      return addBeanTypeProperties;<a name="line.138"></a>
-<span class="sourceLineNo">139</span>   }<a name="line.139"></a>
-<span class="sourceLineNo">140</span><a name="line.140"></a>
-<span class="sourceLineNo">141</span>   /*<a name="line.141"></a>
-<span class="sourceLineNo">142</span>    * XML-encodes the specified string using the {@link XmlUtils#escapeText(Object)} method.<a name="line.142"></a>
-<span class="sourceLineNo">143</span>    */<a name="line.143"></a>
-<span class="sourceLineNo">144</span>   private String encodeTextInvalidChars(Object o) {<a name="line.144"></a>
-<span class="sourceLineNo">145</span>      if (o == null)<a name="line.145"></a>
-<span class="sourceLineNo">146</span>         return null;<a name="line.146"></a>
-<span class="sourceLineNo">147</span>      String s = toString(o);<a name="line.147"></a>
-<span class="sourceLineNo">148</span>      return XmlUtils.escapeText(s);<a name="line.148"></a>
-<span class="sourceLineNo">149</span>   }<a name="line.149"></a>
-<span class="sourceLineNo">150</span><a name="line.150"></a>
-<span class="sourceLineNo">151</span>   /*<a name="line.151"></a>
-<span class="sourceLineNo">152</span>    * XML-encoded the specified element name using the {@link XmlUtils#encodeElementName(Object)} method.<a name="line.152"></a>
-<span class="sourceLineNo">153</span>    */<a name="line.153"></a>
-<span class="sourceLineNo">154</span>   private String encodeElementName(Object o) {<a name="line.154"></a>
-<span class="sourceLineNo">155</span>      return XmlUtils.encodeElementName(toString(o));<a name="line.155"></a>
-<span class="sourceLineNo">156</span>   }<a name="line.156"></a>
-<span class="sourceLineNo">157</span>   <a name="line.157"></a>
-<span class="sourceLineNo">158</span>   @Override /* Serializer */<a name="line.158"></a>
-<span class="sourceLineNo">159</span>   protected void doSerialize(SerializerPipe out, Object o) throws Exception {<a name="line.159"></a>
-<span class="sourceLineNo">160</span><a name="line.160"></a>
-<span class="sourceLineNo">161</span>      Resource r = null;<a name="line.161"></a>
-<span class="sourceLineNo">162</span><a name="line.162"></a>
-<span class="sourceLineNo">163</span>      ClassMeta&lt;?&gt; cm = getClassMetaForObject(o);<a name="line.163"></a>
-<span class="sourceLineNo">164</span>      if (looseCollections &amp;&amp; cm != null &amp;&amp; cm.isCollectionOrArray()) {<a name="line.164"></a>
-<span class="sourceLineNo">165</span>         Collection c = sort(cm.isCollection() ? (Collection)o : toList(cm.getInnerClass(), o));<a name="line.165"></a>
-<span class="sourceLineNo">166</span>         for (Object o2 : c)<a name="line.166"></a>
-<span class="sourceLineNo">167</span>            serializeAnything(o2, false, object(), "root", null, null);<a name="line.167"></a>
-<span class="sourceLineNo">168</span>      } else {<a name="line.168"></a>
-<span class="sourceLineNo">169</span>         RDFNode n = serializeAnything(o, false, getExpectedRootType(o), "root", null, null);<a name="line.169"></a>
-<span class="sourceLineNo">170</span>         if (n.isLiteral()) {<a name="line.170"></a>
-<span class="sourceLineNo">171</span>            r = model.createResource();<a name="line.171"></a>
-<span class="sourceLineNo">172</span>            r.addProperty(pValue, n);<a name="line.172"></a>
-<span class="sourceLineNo">173</span>         } else {<a name="line.173"></a>
-<span class="sourceLineNo">174</span>            r = n.asResource();<a name="line.174"></a>
-<span class="sourceLineNo">175</span>         }<a name="line.175"></a>
-<span class="sourceLineNo">176</span><a name="line.176"></a>
-<span class="sourceLineNo">177</span>         if (addRootProperty)<a name="line.177"></a>
-<span class="sourceLineNo">178</span>            r.addProperty(pRoot, "true");<a name="line.178"></a>
-<span class="sourceLineNo">179</span>      }<a name="line.179"></a>
-<span class="sourceLineNo">180</span><a name="line.180"></a>
-<span class="sourceLineNo">181</span>      writer.write(model, out.getWriter(), "http://unknown/");<a name="line.181"></a>
-<span class="sourceLineNo">182</span>   }<a name="line.182"></a>
-<span class="sourceLineNo">183</span><a name="line.183"></a>
-<span class="sourceLineNo">184</span>   private RDFNode serializeAnything(Object o, boolean isURI, ClassMeta&lt;?&gt; eType, <a name="line.184"></a>
-<span class="sourceLineNo">185</span>         String attrName, BeanPropertyMeta bpm, Resource parentResource) throws Exception {<a name="line.185"></a>
-<span class="sourceLineNo">186</span>      Model m = model;<a name="line.186"></a>
-<span class="sourceLineNo">187</span><a name="line.187"></a>
-<span class="sourceLineNo">188</span>      ClassMeta&lt;?&gt; aType = null;       // The actual type<a name="line.188"></a>
-<span class="sourceLineNo">189</span>      ClassMeta&lt;?&gt; wType = null;       // The wrapped type<a name="line.189"></a>
-<span class="sourceLineNo">190</span>      ClassMeta&lt;?&gt; sType = object();   // The serialized type<a name="line.190"></a>
-<span class="sourceLineNo">191</span><a name="line.191"></a>
-<span class="sourceLineNo">192</span>      aType = push(attrName, o, eType);<a name="line.192"></a>
-<span class="sourceLineNo">193</span><a name="line.193"></a>
-<span class="sourceLineNo">194</span>      if (eType == null)<a name="line.194"></a>
-<span class="sourceLineNo">195</span>         eType = object();<a name="line.195"></a>
-<span class="sourceLineNo">196</span><a name="line.196"></a>
-<span class="sourceLineNo">197</span>      // Handle recursion<a name="line.197"></a>
-<span class="sourceLineNo">198</span>      if (aType == null) {<a name="line.198"></a>
-<span class="sourceLineNo">199</span>         o = null;<a name="line.199"></a>
-<span class="sourceLineNo">200</span>         aType = object();<a name="line.200"></a>
-<span class="sourceLineNo">201</span>      }<a name="line.201"></a>
-<span class="sourceLineNo">202</span><a name="line.202"></a>
-<span class="sourceLineNo">203</span>      if (o != null) {<a name="line.203"></a>
-<span class="sourceLineNo">204</span><a name="line.204"></a>
-<span class="sourceLineNo">205</span>         if (aType.isDelegate()) {<a name="line.205"></a>
-<span class="sourceLineNo">206</span>            wType = aType;<a name="line.206"></a>
-<span class="sourceLineNo">207</span>            aType = ((Delegate)o).getClassMeta();<a name="line.207"></a>
-<span class="sourceLineNo">208</span>         }<a name="line.208"></a>
-<span class="sourceLineNo">209</span><a name="line.209"></a>
-<span class="sourceLineNo">210</span>         sType = aType.getSerializedClassMeta();<a name="line.210"></a>
-<span class="sourceLineNo">211</span><a name="line.211"></a>
-<span class="sourceLineNo">212</span>         // Swap if necessary<a name="line.212"></a>
-<span class="sourceLineNo">213</span>         PojoSwap swap = aType.getPojoSwap();<a name="line.213"></a>
-<span class="sourceLineNo">214</span>         if (swap != null) {<a name="line.214"></a>
-<span class="sourceLineNo">215</span>            o = swap.swap(this, o);<a name="line.215"></a>
-<span class="sourceLineNo">216</span><a name="line.216"></a>
-<span class="sourceLineNo">217</span>            // If the getSwapClass() method returns Object, we need to figure out<a name="line.217"></a>
-<span class="sourceLineNo">218</span>            // the actual type now.<a name="line.218"></a>
-<span class="sourceLineNo">219</span>            if (sType.isObject())<a name="line.219"></a>
-<span class="sourceLineNo">220</span>               sType = getClassMetaForObject(o);<a name="line.220"></a>
-<span class="sourceLineNo">221</span>         }<a name="line.221"></a>
-<span class="sourceLineNo">222</span>      } else {<a name="line.222"></a>
-<span class="sourceLineNo">223</span>         sType = eType.getSerializedClassMeta();<a name="line.223"></a>
-<span class="sourceLineNo">224</span>      }<a name="line.224"></a>
-<span class="sourceLineNo">225</span><a name="line.225"></a>
-<span class="sourceLineNo">226</span>      String typeName = getBeanTypeName(eType, aType, bpm);<a name="line.226"></a>
-<span class="sourceLineNo">227</span><a name="line.227"></a>
-<span class="sourceLineNo">228</span>      RDFNode n = null;<a name="line.228"></a>
-<span class="sourceLineNo">229</span><a name="line.229"></a>
-<span class="sourceLineNo">230</span>      if (o == null || sType.isChar() &amp;&amp; ((Character)o).charValue() == 0) {<a name="line.230"></a>
-<span class="sourceLineNo">231</span>         if (bpm != null) {<a name="line.231"></a>
-<span class="sourceLineNo">232</span>            if (! isTrimNulls()) {<a name="line.232"></a>
-<span class="sourceLineNo">233</span>               n = m.createResource(RDF_NIL);<a name="line.233"></a>
-<span class="sourceLineNo">234</span>            }<a name="line.234"></a>
-<span class="sourceLineNo">235</span>         } else {<a name="line.235"></a>
-<span class="sourceLineNo">236</span>            n = m.createResource(RDF_NIL);<a name="line.236"></a>
-<span class="sourceLineNo">237</span>         }<a name="line.237"></a>
-<span class="sourceLineNo">238</span><a name="line.238"></a>
-<span class="sourceLineNo">239</span>      } else if (sType.isUri() || isURI) {<a name="line.239"></a>
-<span class="sourceLineNo">240</span>         // Note that RDF URIs must be absolute to be valid!<a name="line.240"></a>
-<span class="sourceLineNo">241</span>         String uri = getUri(o, null);<a name="line.241"></a>
-<span class="sourceLineNo">242</span>         if (StringUtils.isAbsoluteUri(uri))<a name="line.242"></a>
-<span class="sourceLineNo">243</span>            n = m.createResource(uri);<a name="line.243"></a>
-<span class="sourceLineNo">244</span>         else<a name="line.244"></a>
-<span class="sourceLineNo">245</span>            n = m.createLiteral(encodeTextInvalidChars(uri));<a name="line.245"></a>
-<span class="sourceLineNo">246</span><a name="line.246"></a>
-<span class="sourceLineNo">247</span>      } else if (sType.isCharSequence() || sType.isChar()) {<a name="line.247"></a>
-<span class="sourceLineNo">248</span>         n = m.createLiteral(encodeTextInvalidChars(o));<a name="line.248"></a>
-<span class="sourceLineNo">249</span><a name="line.249"></a>
-<span class="sourceLineNo">250</span>      } else if (sType.isNumber() || sType.isBoolean()) {<a name="line.250"></a>
-<span class="sourceLineNo">251</span>         if (! addLiteralTypes)<a name="line.251"></a>
-<span class="sourceLineNo">252</span>            n = m.createLiteral(o.toString());<a name="line.252"></a>
-<span class="sourceLineNo">253</span>         else<a name="line.253"></a>
-<span class="sourceLineNo">254</span>            n = m.createTypedLiteral(o);<a name="line.254"></a>
-<span class="sourceLineNo">255</span><a name="line.255"></a>
-<span class="sourceLineNo">256</span>      } else if (sType.isMap() || (wType != null &amp;&amp; wType.isMap())) {<a name="line.256"></a>
-<span class="sourceLineNo">257</span>         if (o instanceof BeanMap) {<a name="line.257"></a>
-<span class="sourceLineNo">258</span>            BeanMap bm = (BeanMap)o;<a name="line.258"></a>
-<span class="sourceLineNo">259</span>            Object uri = null;<a name="line.259"></a>
-<span class="sourceLineNo">260</span>            RdfBeanMeta rbm = (RdfBeanMeta)bm.getMeta().getExtendedMeta(RdfBeanMeta.class);<a name="line.260"></a>
-<span class="sourceLineNo">261</span>            if (rbm.hasBeanUri())<a name="line.261"></a>
-<span class="sourceLineNo">262</span>               uri = rbm.getBeanUriProperty().get(bm, null);<a name="line.262"></a>
-<span class="sourceLineNo">263</span>            String uri2 = getUri(uri, null);<a name="line.263"></a>
-<span class="sourceLineNo">264</span>            n = m.createResource(uri2);<a name="line.264"></a>
-<span class="sourceLineNo">265</span>            serializeBeanMap(bm, (Resource)n, typeName);<a name="line.265"></a>
-<span class="sourceLineNo">266</span>         } else {<a name="line.266"></a>
-<span class="sourceLineNo">267</span>            Map m2 = (Map)o;<a name="line.267"></a>
-<span class="sourceLineNo">268</span>            n = m.createResource();<a name="line.268"></a>
-<span class="sourceLineNo">269</span>            serializeMap(m2, (Resource)n, sType);<a name="line.269"></a>
-<span class="sourceLineNo">270</span>         }<a name="line.270"></a>
-<span class="sourceLineNo">271</span><a name="line.271"></a>
-<span class="sourceLineNo">272</span>      } else if (sType.isBean()) {<a name="line.272"></a>
-<span class="sourceLineNo">273</span>         BeanMap bm = toBeanMap(o);<a name="line.273"></a>
-<span class="sourceLineNo">274</span>         Object uri = null;<a name="line.274"></a>
-<span class="sourceLineNo">275</span>         RdfBeanMeta rbm = (RdfBeanMeta)bm.getMeta().getExtendedMeta(RdfBeanMeta.class);<a name="line.275"></a>
-<span class="sourceLineNo">276</span>         if (rbm.hasBeanUri())<a name="line.276"></a>
-<span class="sourceLineNo">277</span>            uri = rbm.getBeanUriProperty().get(bm, null);<a name="line.277"></a>
-<span class="sourceLineNo">278</span>         String uri2 = getUri(uri, null);<a name="line.278"></a>
-<span class="sourceLineNo">279</span>         n = m.createResource(uri2);<a name="line.279"></a>
-<span class="sourceLineNo">280</span>         serializeBeanMap(bm, (Resource)n, typeName);<a name="line.280"></a>
-<span class="sourceLineNo">281</span><a name="line.281"></a>
-<span class="sourceLineNo">282</span>      } else if (sType.isCollectionOrArray() || (wType != null &amp;&amp; wType.isCollection())) {<a name="line.282"></a>
-<span class="sourceLineNo">283</span>         Collection c = sort(sType.isCollection() ? (Collection)o : toList(sType.getInnerClass(), o));<a name="line.283"></a>
-<span class="sourceLineNo">284</span>         RdfCollectionFormat f = collectionFormat;<a name="line.284"></a>
-<span class="sourceLineNo">285</span>         RdfClassMeta rcm = sType.getExtendedMeta(RdfClassMeta.class);<a name="line.285"></a>
-<span class="sourceLineNo">286</span>         if (rcm.getCollectionFormat() != RdfCollectionFormat.DEFAULT)<a name="line.286"></a>
-<span class="sourceLineNo">287</span>            f = rcm.getCollectionFormat();<a name="line.287"></a>
-<span class="sourceLineNo">288</span>         if (bpm != null &amp;&amp; bpm.getExtendedMeta(RdfBeanPropertyMeta.class).getCollectionFormat() != RdfCollectionFormat.DEFAULT)<a name="line.288"></a>
-<span class="sourceLineNo">289</span>            f = bpm.getExtendedMeta(RdfBeanPropertyMeta.class).getCollectionFormat();<a name="line.289"></a>
-<span class="sourceLineNo">290</span>         switch (f) {<a name="line.290"></a>
-<span class="sourceLineNo">291</span>            case BAG: n = serializeToContainer(c, eType, m.createBag()); break;<a name="line.291"></a>
-<span class="sourceLineNo">292</span>            case LIST: n = serializeToList(c, eType); break;<a name="line.292"></a>
-<span class="sourceLineNo">293</span>            case MULTI_VALUED: serializeToMultiProperties(c, eType, bpm, attrName, parentResource); break;<a name="line.293"></a>
-<span class="sourceLineNo">294</span>            default: n = serializeToContainer(c, eType, m.createSeq());<a name="line.294"></a>
-<span class="sourceLineNo">295</span>         }<a name="line.295"></a>
-<span class="sourceLineNo">296</span>      } else {<a name="line.296"></a>
-<span class="sourceLineNo">297</span>         n = m.createLiteral(encodeTextInvalidChars(toString(o)));<a name="line.297"></a>
-<span class="sourceLineNo">298</span>      }<a name="line.298"></a>
-<span class="sourceLineNo">299</span><a name="line.299"></a>
-<span class="sourceLineNo">300</span>      pop();<a name="line.300"></a>
-<span class="sourceLineNo">301</span><a name="line.301"></a>
-<span class="sourceLineNo">302</span>      return n;<a name="line.302"></a>
-<span class="sourceLineNo">303</span>   }<a name="line.303"></a>
+<span class="sourceLineNo">066</span>    */<a name="line.66"></a>
+<span class="sourceLineNo">067</span>   protected RdfSerializerSession(RdfSerializerContext ctx, SerializerSessionArgs args) {<a name="line.67"></a>
+<span class="sourceLineNo">068</span>      super(ctx, args);<a name="line.68"></a>
+<span class="sourceLineNo">069</span>      ObjectMap jenaSettings = new ObjectMap();<a name="line.69"></a>
+<span class="sourceLineNo">070</span>      jenaSettings.put("rdfXml.tab", isUseWhitespace() ? 2 : 0);<a name="line.70"></a>
+<span class="sourceLineNo">071</span>      jenaSettings.put("rdfXml.attributeQuoteChar", Character.toString(getQuoteChar()));<a name="line.71"></a>
+<span class="sourceLineNo">072</span>      jenaSettings.putAll(ctx.jenaSettings);<a name="line.72"></a>
+<span class="sourceLineNo">073</span>      ObjectMap p = getProperties();<a name="line.73"></a>
+<span class="sourceLineNo">074</span>      if (p.isEmpty()) {<a name="line.74"></a>
+<span class="sourceLineNo">075</span>         this.rdfLanguage = ctx.rdfLanguage;<a name="line.75"></a>
+<span class="sourceLineNo">076</span>         this.juneauNs = ctx.juneauNs;<a name="line.76"></a>
+<span class="sourceLineNo">077</span>         this.juneauBpNs = ctx.juneauBpNs;<a name="line.77"></a>
+<span class="sourceLineNo">078</span>         this.addLiteralTypes = ctx.addLiteralTypes;<a name="line.78"></a>
+<span class="sourceLineNo">079</span>         this.addRootProperty = ctx.addRootProperty;<a name="line.79"></a>
+<span class="sourceLineNo">080</span>         this.collectionFormat = ctx.collectionFormat;<a name="line.80"></a>
+<span class="sourceLineNo">081</span>         this.looseCollections = ctx.looseCollections;<a name="line.81"></a>
+<span class="sourceLineNo">082</span>         this.useXmlNamespaces = ctx.useXmlNamespaces;<a name="line.82"></a>
+<span class="sourceLineNo">083</span>         this.autoDetectNamespaces = ctx.autoDetectNamespaces;<a name="line.83"></a>
+<span class="sourceLineNo">084</span>         this.namespaces = ctx.namespaces;<a name="line.84"></a>
+<span class="sourceLineNo">085</span>         addBeanTypeProperties = ctx.addBeanTypeProperties;<a name="line.85"></a>
+<span class="sourceLineNo">086</span>      } else {<a name="line.86"></a>
+<span class="sourceLineNo">087</span>         this.rdfLanguage = p.getString(RDF_language, ctx.rdfLanguage);<a name="line.87"></a>
+<span class="sourceLineNo">088</span>         this.juneauNs = (p.containsKey(RDF_juneauNs) ? NamespaceFactory.parseNamespace(p.get(RDF_juneauNs)) : ctx.juneauNs);<a name="line.88"></a>
+<span class="sourceLineNo">089</span>         this.juneauBpNs = (p.containsKey(RDF_juneauBpNs) ? NamespaceFactory.parseNamespace(p.get(RDF_juneauBpNs)) : ctx.juneauBpNs);<a name="line.89"></a>
+<span class="sourceLineNo">090</span>         this.addLiteralTypes = p.getBoolean(RDF_addLiteralTypes, ctx.addLiteralTypes);<a name="line.90"></a>
+<span class="sourceLineNo">091</span>         this.addRootProperty = p.getBoolean(RDF_addRootProperty, ctx.addRootProperty);<a name="line.91"></a>
+<span class="sourceLineNo">092</span>         for (Map.Entry&lt;String,Object&gt; e : p.entrySet()) {<a name="line.92"></a>
+<span class="sourceLineNo">093</span>            String key = e.getKey();<a name="line.93"></a>
+<span class="sourceLineNo">094</span>            if (key.startsWith("Rdf.jena."))<a name="line.94"></a>
+<span class="sourceLineNo">095</span>               jenaSettings.put(key.substring(9), e.getValue());<a name="line.95"></a>
+<span class="sourceLineNo">096</span>         }<a name="line.96"></a>
+<span class="sourceLineNo">097</span>         this.collectionFormat = RdfCollectionFormat.valueOf(p.getString(RDF_collectionFormat, "DEFAULT"));<a name="line.97"></a>
+<span class="sourceLineNo">098</span>         this.looseCollections = p.getBoolean(RDF_looseCollections, ctx.looseCollections);<a name="line.98"></a>
+<span class="sourceLineNo">099</span>         this.useXmlNamespaces = p.getBoolean(RDF_useXmlNamespaces, ctx.useXmlNamespaces);<a name="line.99"></a>
+<span class="sourceLineNo">100</span>         this.autoDetectNamespaces = p.getBoolean(RDF_autoDetectNamespaces, ctx.autoDetectNamespaces);<a name="line.100"></a>
+<span class="sourceLineNo">101</span>         this.namespaces = p.getWithDefault(RDF_namespaces, ctx.namespaces, Namespace[].class);<a name="line.101"></a>
+<span class="sourceLineNo">102</span>         addBeanTypeProperties = p.getBoolean(RDF_addBeanTypeProperties, ctx.addBeanTypeProperties);<a name="line.102"></a>
+<span class="sourceLineNo">103</span>      }<a name="line.103"></a>
+<span class="sourceLineNo">104</span>      this.model = ModelFactory.createDefaultModel();<a name="line.104"></a>
+<span class="sourceLineNo">105</span>      addModelPrefix(juneauNs);<a name="line.105"></a>
+<span class="sourceLineNo">106</span>      addModelPrefix(juneauBpNs);<a name="line.106"></a>
+<span class="sourceLineNo">107</span>      for (Namespace ns : this.namespaces)<a name="line.107"></a>
+<span class="sourceLineNo">108</span>         addModelPrefix(ns);<a name="line.108"></a>
+<span class="sourceLineNo">109</span>      this.pRoot = model.createProperty(juneauNs.getUri(), RDF_juneauNs_ROOT);<a name="line.109"></a>
+<span class="sourceLineNo">110</span>      this.pValue = model.createProperty(juneauNs.getUri(), RDF_juneauNs_VALUE);<a name="line.110"></a>
+<span class="sourceLineNo">111</span>      writer = model.getWriter(rdfLanguage);<a name="line.111"></a>
+<span class="sourceLineNo">112</span><a name="line.112"></a>
+<span class="sourceLineNo">113</span>      // Only apply properties with this prefix!<a name="line.113"></a>
+<span class="sourceLineNo">114</span>      String propPrefix = RdfCommonContext.LANG_PROP_MAP.get(rdfLanguage);<a name="line.114"></a>
+<span class="sourceLineNo">115</span>      if (propPrefix == null)<a name="line.115"></a>
+<span class="sourceLineNo">116</span>         throw new FormattedRuntimeException("Unknown RDF language encountered: ''{0}''", rdfLanguage);<a name="line.116"></a>
+<span class="sourceLineNo">117</span><a name="line.117"></a>
+<span class="sourceLineNo">118</span>      for (Map.Entry&lt;String,Object&gt; e : jenaSettings.entrySet())<a name="line.118"></a>
+<span class="sourceLineNo">119</span>         if (e.getKey().startsWith(propPrefix))<a name="line.119"></a>
+<span class="sourceLineNo">120</span>            writer.setProperty(e.getKey().substring(propPrefix.length()), e.getValue());<a name="line.120"></a>
+<span class="sourceLineNo">121</span>   }<a name="line.121"></a>
+<span class="sourceLineNo">122</span><a name="line.122"></a>
+<span class="sourceLineNo">123</span>   /*<a name="line.123"></a>
+<span class="sourceLineNo">124</span>    * Adds the specified namespace as a model prefix.<a name="line.124"></a>
+<span class="sourceLineNo">125</span>    */<a name="line.125"></a>
+<span class="sourceLineNo">126</span>   private void addModelPrefix(Namespace ns) {<a name="line.126"></a>
+<span class="sourceLineNo">127</span>      model.setNsPrefix(ns.getName(), ns.getUri());<a name="line.127"></a>
+<span class="sourceLineNo">128</span>   }<a name="line.128"></a>
+<span class="sourceLineNo">129</span><a name="line.129"></a>
+<span class="sourceLineNo">130</span>   /**<a name="line.130"></a>
+<span class="sourceLineNo">131</span>    * Returns the {@link MsgPackSerializerContext#MSGPACK_addBeanTypeProperties} setting value for this session.<a name="line.131"></a>
+<span class="sourceLineNo">132</span>    *<a name="line.132"></a>
+<span class="sourceLineNo">133</span>    * @return The {@link MsgPackSerializerContext#MSGPACK_addBeanTypeProperties} setting value for this session.<a name="line.133"></a>
+<span class="sourceLineNo">134</span>    */<a name="line.134"></a>
+<span class="sourceLineNo">135</span>   @Override /* SerializerSession */<a name="line.135"></a>
+<span class="sourceLineNo">136</span>   public final boolean isAddBeanTypeProperties() {<a name="line.136"></a>
+<span class="sourceLineNo">137</span>      return addBeanTypeProperties;<a name="line.137"></a>
+<span class="sourceLineNo">138</span>   }<a name="line.138"></a>
+<span class="sourceLineNo">139</span><a name="line.139"></a>
+<span class="sourceLineNo">140</span>   /*<a name="line.140"></a>
+<span class="sourceLineNo">141</span>    * XML-encodes the specified string using the {@link XmlUtils#escapeText(Object)} method.<a name="line.141"></a>
+<span class="sourceLineNo">142</span>    */<a name="line.142"></a>
+<span class="sourceLineNo">143</span>   private String encodeTextInvalidChars(Object o) {<a name="line.143"></a>
+<span class="sourceLineNo">144</span>      if (o == null)<a name="line.144"></a>
+<span class="sourceLineNo">145</span>         return null;<a name="line.145"></a>
+<span class="sourceLineNo">146</span>      String s = toString(o);<a name="line.146"></a>
+<span class="sourceLineNo">147</span>      return XmlUtils.escapeText(s);<a name="line.147"></a>
+<span class="sourceLineNo">148</span>   }<a name="line.148"></a>
+<span class="sourceLineNo">149</span><a name="line.149"></a>
+<span class="sourceLineNo">150</span>   /*<a name="line.150"></a>
+<span class="sourceLineNo">151</span>    * XML-encoded the specified element name using the {@link XmlUtils#encodeElementName(Object)} method.<a name="line.151"></a>
+<span class="sourceLineNo">152</span>    */<a name="line.152"></a>
+<span class="sourceLineNo">153</span>   private String encodeElementName(Object o) {<a name="line.153"></a>
+<span class="sourceLineNo">154</span>      return XmlUtils.encodeElementName(toString(o));<a name="line.154"></a>
+<span class="sourceLineNo">155</span>   }<a name="line.155"></a>
+<span class="sourceLineNo">156</span>   <a name="line.156"></a>
+<span class="sourceLineNo">157</span>   @Override /* Serializer */<a name="line.157"></a>
+<span class="sourceLineNo">158</span>   protected void doSerialize(SerializerPipe out, Object o) throws Exception {<a name="line.158"></a>
+<span class="sourceLineNo">159</span><a name="line.159"></a>
+<span class="sourceLineNo">160</span>      Resource r = null;<a name="line.160"></a>
+<span class="sourceLineNo">161</span><a name="line.161"></a>
+<span class="sourceLineNo">162</span>      ClassMeta&lt;?&gt; cm = getClassMetaForObject(o);<a name="line.162"></a>
+<span class="sourceLineNo">163</span>      if (looseCollections &amp;&amp; cm != null &amp;&amp; cm.isCollectionOrArray()) {<a name="line.163"></a>
+<span class="sourceLineNo">164</span>         Collection c = sort(cm.isCollection() ? (Collection)o : toList(cm.getInnerClass(), o));<a name="line.164"></a>
+<span class="sourceLineNo">165</span>         for (Object o2 : c)<a name="line.165"></a>
+<span class="sourceLineNo">166</span>            serializeAnything(o2, false, object(), "root", null, null);<a name="line.166"></a>
+<span class="sourceLineNo">167</span>      } else {<a name="line.167"></a>
+<span class="sourceLineNo">168</span>         RDFNode n = serializeAnything(o, false, getExpectedRootType(o), "root", null, null);<a name="line.168"></a>
+<span class="sourceLineNo">169</span>         if (n.isLiteral()) {<a name="line.169"></a>
+<span class="sourceLineNo">170</span>            r = model.createResource();<a name="line.170"></a>
+<span class="sourceLineNo">171</span>            r.addProperty(pValue, n);<a name="line.171"></a>
+<span class="sourceLineNo">172</span>         } else {<a name="line.172"></a>
+<span class="sourceLineNo">173</span>            r = n.asResource();<a name="line.173"></a>
+<span class="sourceLineNo">174</span>         }<a name="line.174"></a>
+<span class="sourceLineNo">175</span><a name="line.175"></a>
+<span class="sourceLineNo">176</span>         if (addRootProperty)<a name="line.176"></a>
+<span class="sourceLineNo">177</span>            r.addProperty(pRoot, "true");<a name="line.177"></a>
+<span class="sourceLineNo">178</span>      }<a name="line.178"></a>
+<span class="sourceLineNo">179</span><a name="line.179"></a>
+<span class="sourceLineNo">180</span>      writer.write(model, out.getWriter(), "http://unknown/");<a name="line.180"></a>
+<span class="sourceLineNo">181</span>   }<a name="line.181"></a>
+<span class="sourceLineNo">182</span><a name="line.182"></a>
+<span class="sourceLineNo">183</span>   private RDFNode serializeAnything(Object o, boolean isURI, ClassMeta&lt;?&gt; eType, <a name="line.183"></a>
+<span class="sourceLineNo">184</span>         String attrName, BeanPropertyMeta bpm, Resource parentResource) throws Exception {<a name="line.184"></a>
+<span class="sourceLineNo">185</span>      Model m = model;<a name="line.185"></a>
+<span class="sourceLineNo">186</span><a name="line.186"></a>
+<span class="sourceLineNo">187</span>      ClassMeta&lt;?&gt; aType = null;       // The actual type<a name="line.187"></a>
+<span class="sourceLineNo">188</span>      ClassMeta&lt;?&gt; wType = null;       // The wrapped type<a name="line.188"></a>
+<span class="sourceLineNo">189</span>      ClassMeta&lt;?&gt; sType = object();   // The serialized type<a name="line.189"></a>
+<span class="sourceLineNo">190</span><a name="line.190"></a>
+<span class="sourceLineNo">191</span>      aType = push(attrName, o, eType);<a name="line.191"></a>
+<span class="sourceLineNo">192</span><a name="line.192"></a>
+<span class="sourceLineNo">193</span>      if (eType == null)<a name="line.193"></a>
+<span class="sourceLineNo">194</span>         eType = object();<a name="line.194"></a>
+<span class="sourceLineNo">195</span><a name="line.195"></a>
+<span class="sourceLineNo">196</span>      // Handle recursion<a name="line.196"></a>
+<span class="sourceLineNo">197</span>      if (aType == null) {<a name="line.197"></a>
+<span class="sourceLineNo">198</span>         o = null;<a name="line.198"></a>
+<span class="sourceLineNo">199</span>         aType = object();<a name="line.199"></a>
+<span class="sourceLineNo">200</span>      }<a name="line.200"></a>
+<span class="sourceLineNo">201</span><a name="line.201"></a>
+<span class="sourceLineNo">202</span>      if (o != null) {<a name="line.202"></a>
+<span class="sourceLineNo">203</span><a name="line.203"></a>
+<span class="sourceLineNo">204</span>         if (aType.isDelegate()) {<a name="line.204"></a>
+<span class="sourceLineNo">205</span>            wType = aType;<a name="line.205"></a>
+<span class="sourceLineNo">206</span>            aType = ((Delegate)o).getClassMeta();<a name="line.206"></a>
+<span class="sourceLineNo">207</span>         }<a name="line.207"></a>
+<span class="sourceLineNo">208</span><a name="line.208"></a>
+<span class="sourceLineNo">209</span>         sType = aType.getSerializedClassMeta();<a name="line.209"></a>
+<span class="sourceLineNo">210</span><a name="line.210"></a>
+<span class="sourceLineNo">211</span>         // Swap if necessary<a name="line.211"></a>
+<span class="sourceLineNo">212</span>         PojoSwap swap = aType.getPojoSwap();<a name="line.212"></a>
+<span class="sourceLineNo">213</span>         if (swap != null) {<a name="line.213"></a>
+<span class="sourceLineNo">214</span>            o = swap.swap(this, o);<a name="line.214"></a>
+<span class="sourceLineNo">215</span><a name="line.215"></a>
+<span class="sourceLineNo">216</span>            // If the getSwapClass() method returns Object, we need to figure out<a name="line.216"></a>
+<span class="sourceLineNo">217</span>            // the actual type now.<a name="line.217"></a>
+<span class="sourceLineNo">218</span>            if (sType.isObject())<a name="line.218"></a>
+<span class="sourceLineNo">219</span>               sType = getClassMetaForObject(o);<a name="line.219"></a>
+<span class="sourceLineNo">220</span>         }<a name="line.220"></a>
+<span class="sourceLineNo">221</span>      } else {<a name="line.221"></a>
+<span class="sourceLineNo">222</span>         sType = eType.getSerializedClassMeta();<a name="line.222"></a>
+<span class="sourceLineNo">223</span>      }<a name="line.223"></a>
+<span class="sourceLineNo">224</span><a name="line.224"></a>
+<span class="sourceLineNo">225</span>      String typeName = getBeanTypeName(eType, aType, bpm);<a name="line.225"></a>
+<span class="sourceLineNo">226</span><a name="line.226"></a>
+<span class="sourceLineNo">227</span>      RDFNode n = null;<a name="line.227"></a>
+<span class="sourceLineNo">228</span><a name="line.228"></a>
+<span class="sourceLineNo">229</span>      if (o == null || sType.isChar() &amp;&amp; ((Character)o).charValue() == 0) {<a name="line.229"></a>
+<span class="sourceLineNo">230</span>         if (bpm != null) {<a name="line.230"></a>
+<span class="sourceLineNo">231</span>            if (! isTrimNulls()) {<a name="line.231"></a>
+<span class="sourceLineNo">232</span>               n = m.createResource(RDF_NIL);<a name="line.232"></a>
+<span class="sourceLineNo">233</span>            }<a name="line.233"></a>
+<span class="sourceLineNo">234</span>         } else {<a name="line.234"></a>
+<span class="sourceLineNo">235</span>            n = m.createResource(RDF_NIL);<a name="line.235"></a>
+<span class="sourceLineNo">236</span>         }<a name="line.236"></a>
+<span class="sourceLineNo">237</span><a name="line.237"></a>
+<span class="sourceLineNo">238</span>      } else if (sType.isUri() || isURI) {<a name="line.238"></a>
+<span class="sourceLineNo">239</span>         // Note that RDF URIs must be absolute to be valid!<a name="line.239"></a>
+<span class="sourceLineNo">240</span>         String uri = getUri(o, null);<a name="line.240"></a>
+<span class="sourceLineNo">241</span>         if (StringUtils.isAbsoluteUri(uri))<a name="line.241"></a>
+<span class="sourceLineNo">242</span>            n = m.createResource(uri);<a name="line.242"></a>
+<span class="sourceLineNo">243</span>         else<a name="line.243"></a>
+<span class="sourceLineNo">244</span>            n = m.createLiteral(encodeTextInvalidChars(uri));<a name="line.244"></a>
+<span class="sourceLineNo">245</span><a name="line.245"></a>
+<span class="sourceLineNo">246</span>      } else if (sType.isCharSequence() || sType.isChar()) {<a name="line.246"></a>
+<span class="sourceLineNo">247</span>         n = m.createLiteral(encodeTextInvalidChars(o));<a name="line.247"></a>
+<span class="sourceLineNo">248</span><a name="line.248"></a>
+<span class="sourceLineNo">249</span>      } else if (sType.isNumber() || sType.isBoolean()) {<a name="line.249"></a>
+<span class="sourceLineNo">250</span>         if (! addLiteralTypes)<a name="line.250"></a>
+<span class="sourceLineNo">251</span>            n = m.createLiteral(o.toString());<a name="line.251"></a>
+<span class="sourceLineNo">252</span>         else<a name="line.252"></a>
+<span class="sourceLineNo">253</span>            n = m.createTypedLiteral(o);<a name="line.253"></a>
+<span class="sourceLineNo">254</span><a name="line.254"></a>
+<span class="sourceLineNo">255</span>      } else if (sType.isMap() || (wType != null &amp;&amp; wType.isMap())) {<a name="line.255"></a>
+<span class="sourceLineNo">256</span>         if (o instanceof BeanMap) {<a name="line.256"></a>
+<span class="sourceLineNo">257</span>            BeanMap bm = (BeanMap)o;<a name="line.257"></a>
+<span class="sourceLineNo">258</span>            Object uri = null;<a name="line.258"></a>
+<span class="sourceLineNo">259</span>            RdfBeanMeta rbm = (RdfBeanMeta)bm.getMeta().getExtendedMeta(RdfBeanMeta.class);<a name="line.259"></a>
+<span class="sourceLineNo">260</span>            if (rbm.hasBeanUri())<a name="line.260"></a>
+<span class="sourceLineNo">261</span>               uri = rbm.getBeanUriProperty().get(bm, null);<a name="line.261"></a>
+<span class="sourceLineNo">262</span>            String uri2 = getUri(uri, null);<a name="line.262"></a>
+<span class="sourceLineNo">263</span>            n = m.createResource(uri2);<a name="line.263"></a>
+<span class="sourceLineNo">264</span>            serializeBeanMap(bm, (Resource)n, typeName);<a name="line.264"></a>
+<span class="sourceLineNo">265</span>         } else {<a name="line.265"></a>
+<span class="sourceLineNo">266</span>            Map m2 = (Map)o;<a name="line.266"></a>
+<span class="sourceLineNo">267</span>            n = m.createResource();<a name="line.267"></a>
+<span class="sourceLineNo">268</span>            serializeMap(m2, (Resource)n, sType);<a name="line.268"></a>
+<span class="sourceLineNo">269</span>         }<a name="line.269"></a>
+<span class="sourceLineNo">270</span><a name="line.270"></a>
+<span class="sourceLineNo">271</span>      } else if (sType.isBean()) {<a name="line.271"></a>
+<span class="sourceLineNo">272</span>         BeanMap bm = toBeanMap(o);<a name="line.272"></a>
+<span class="sourceLineNo">273</span>         Object uri = null;<a name="line.273"></a>
+<span class="sourceLineNo">274</span>         RdfBeanMeta rbm = (RdfBeanMeta)bm.getMeta().getExtendedMeta(RdfBeanMeta.class);<a name="line.274"></a>
+<span class="sourceLineNo">275</span>         if (rbm.hasBeanUri())<a name="line.275"></a>
+<span class="sourceLineNo">276</span>            uri = rbm.getBeanUriProperty().get(bm, null);<a name="line.276"></a>
+<span class="sourceLineNo">277</span>         String uri2 = getUri(uri, null);<a name="line.277"></a>
+<span class="sourceLineNo">278</span>         n = m.createResource(uri2);<a name="line.278"></a>
+<span class="sourceLineNo">279</span>         serializeBeanMap(bm, (Resource)n, typeName);<a name="line.279"></a>
+<span class="sourceLineNo">280</span><a name="line.280"></a>
+<span class="sourceLineNo">281</span>      } else if (sType.isCollectionOrArray() || (wType != null &amp;&amp; wType.isCollection())) {<a name="line.281"></a>
+<span class="sourceLineNo">282</span>         Collection c = sort(sType.isCollection() ? (Collection)o : toList(sType.getInnerClass(), o));<a name="line.282"></a>
+<span class="sourceLineNo">283</span>         RdfCollectionFormat f = collectionFormat;<a name="line.283"></a>
+<span class="sourceLineNo">284</span>         RdfClassMeta rcm = sType.getExtendedMeta(RdfClassMeta.class);<a name="line.284"></a>
+<span class="sourceLineNo">285</span>         if (rcm.getCollectionFormat() != RdfCollectionFormat.DEFAULT)<a name="line.285"></a>
+<span class="sourceLineNo">286</span>            f = rcm.getCollectionFormat();<a name="line.286"></a>
+<span class="sourceLineNo">287</span>         if (bpm != null &amp;&amp; bpm.getExtendedMeta(RdfBeanPropertyMeta.class).getCollectionFormat() != RdfCollectionFormat.DEFAULT)<a name="line.287"></a>
+<span class="sourceLineNo">288</span>            f = bpm.getExtendedMeta(RdfBeanPropertyMeta.class).getCollectionFormat();<a name="line.288"></a>
+<span class="sourceLineNo">289</span>         switch (f) {<a name="line.289"></a>
+<span class="sourceLineNo">290</span>            case BAG: n = serializeToContainer(c, eType, m.createBag()); break;<a name="line.290"></a>
+<span class="sourceLineNo">291</span>            case LIST: n = serializeToList(c, eType); break;<a name="line.291"></a>
+<span class="sourceLineNo">292</span>            case MULTI_VALUED: serializeToMultiProperties(c, eType, bpm, attrName, parentResource); break;<a name="line.292"></a>
+<span class="sourceLineNo">293</span>            default: n = serializeToContainer(c, eType, m.createSeq());<a name="line.293"></a>
+<span class="sourceLineNo">294</span>         }<a name="line.294"></a>
+<span class="sourceLineNo">295</span>      <a name="line.295"></a>
+<span class="sourceLineNo">296</span>      } else if (sType.isReader() || sType.isInputStream()) {<a name="line.296"></a>
+<span class="sourceLineNo">297</span>         n = m.createLiteral(encodeTextInvalidChars(IOUtils.read(o)));<a name="line.297"></a>
+<span class="sourceLineNo">298</span>      <a name="line.298"></a>
+<span class="sourceLineNo">299</span>      } else {<a name="line.299"></a>
+<span class="sourceLineNo">300</span>         n = m.createLiteral(encodeTextInvalidChars(toString(o)));<a name="line.300"></a>
+<span class="sourceLineNo">301</span>      }<a name="line.301"></a>
+<span class="sourceLineNo">302</span><a name="line.302"></a>
+<span class="sourceLineNo">303</span>      pop();<a name="line.303"></a>
 <span class="sourceLineNo">304</span><a name="line.304"></a>
-<span class="sourceLineNo">305</span>   private String getUri(Object uri, Object uri2) {<a name="line.305"></a>
-<span class="sourceLineNo">306</span>      String s = null;<a name="line.306"></a>
-<span class="sourceLineNo">307</span>      if (uri != null)<a name="line.307"></a>
-<span class="sourceLineNo">308</span>         s = uri.toString();<a name="line.308"></a>
-<span class="sourceLineNo">309</span>      if ((s == null || s.isEmpty()) &amp;&amp; uri2 != null)<a name="line.309"></a>
-<span class="sourceLineNo">310</span>         s = uri2.toString();<a name="line.310"></a>
-<span class="sourceLineNo">311</span>      if (s == null)<a name="line.311"></a>
-<span class="sourceLineNo">312</span>         return null;<a name="line.312"></a>
-<span class="sourceLineNo">313</span>      return getUriResolver().resolve(s);<a name="line.313"></a>
-<span class="sourceLineNo">314</span>   }<a name="line.314"></a>
-<span class="sourceLineNo">315</span><a name="line.315"></a>
-<span class="sourceLineNo">316</span>   private void serializeMap(Map m, Resource r, ClassMeta&lt;?&gt; type) throws Exception {<a name="line.316"></a>
-<span class="sourceLineNo">317</span><a name="line.317"></a>
-<span class="sourceLineNo">318</span>      m = sort(m);<a name="line.318"></a>
-<span class="sourceLineNo">319</span><a name="line.319"></a>
-<span class="sourceLineNo">320</span>      ClassMeta&lt;?&gt; keyType = type.getKeyType(), valueType = type.getValueType();<a name="line.320"></a>
-<span class="sourceLineNo">321</span><a name="line.321"></a>
-<span class="sourceLineNo">322</span>      ArrayList&lt;Map.Entry&lt;Object,Object&gt;&gt; l = new ArrayList&lt;Map.Entry&lt;Object,Object&gt;&gt;(m.entrySet());<a name="line.322"></a>
-<span class="sourceLineNo">323</span>      Collections.reverse(l);<a name="line.323"></a>
-<span class="sourceLineNo">324</span>      for (Map.Entry&lt;Object,Object&gt; me : l) {<a name="line.324"></a>
-<span class="sourceLineNo">325</span>         Object value = me.getValue();<a name="line.325"></a>
-<span class="sourceLineNo">326</span><a name="line.326"></a>
-<span class="sourceLineNo">327</span>         Object key = generalize(me.getKey(), keyType);<a name="line.327"></a>
-<span class="sourceLineNo">328</span><a name="line.328"></a>
-<span class="sourceLineNo">329</span>         Namespace ns = juneauBpNs;<a name="line.329"></a>
-<span class="sourceLineNo">330</span>         Property p = model.createProperty(ns.getUri(), encodeElementName(toString(key)));<a name="line.330"></a>
-<span class="sourceLineNo">331</span>         RDFNode n = serializeAnything(value, false, valueType, key == null ? null : toString(key), null, r);<a name="line.331"></a>
-<span class="sourceLineNo">332</span>         if (n != null)<a name="line.332"></a>
-<span class="sourceLineNo">333</span>            r.addProperty(p, n);<a name="line.333"></a>
-<span class="sourceLineNo">334</span>      }<a name="line.334"></a>
-<span class="sourceLineNo">335</span>   }<a name="line.335"></a>
-<span class="sourceLineNo">336</span><a name="line.336"></a>
-<span class="sourceLineNo">337</span>   private void serializeBeanMap(BeanMap&lt;?&gt; m, Resource r, String typeName) throws Exception {<a name="line.337"></a>
-<span class="sourceLineNo">338</span>      List&lt;BeanPropertyValue&gt; l = m.getValues(isTrimNulls(), typeName != null ? createBeanTypeNameProperty(m, typeName) : null);<a name="line.338"></a>
-<span class="sourceLineNo">339</span>      Collections.reverse(l);<a name="line.339"></a>
-<span class="sourceLineNo">340</span>      for (BeanPropertyValue bpv : l) {<a name="line.340"></a>
-<span class="sourceLineNo">341</span>         BeanPropertyMeta pMeta = bpv.getMeta();<a name="line.341"></a>
-<span class="sourceLineNo">342</span>         ClassMeta&lt;?&gt; cMeta = pMeta.getClassMeta();<a name="line.342"></a>
-<span class="sourceLineNo">343</span><a name="line.343"></a>
-<span class="sourceLineNo">344</span>         if (pMeta.getExtendedMeta(RdfBeanPropertyMeta.class).isBeanUri())<a name="line.344"></a>
-<span class="sourceLineNo">345</span>            continue;<a name="line.345"></a>
+<span class="sourceLineNo">305</span>      return n;<a name="line.305"></a>
+<span class="sourceLineNo">306</span>   }<a name="line.306"></a>
+<span class="sourceLineNo">307</span><a name="line.307"></a>
+<span class="sourceLineNo">308</span>   private String getUri(Object uri, Object uri2) {<a name="line.308"></a>
+<span class="sourceLineNo">309</span>      String s = null;<a name="line.309"></a>
+<span class="sourceLineNo">310</span>      if (uri != null)<a name="line.310"></a>
+<span class="sourceLineNo">311</span>         s = uri.toString();<a name="line.311"></a>
+<span class="sourceLineNo">312</span>      if ((s == null || s.isEmpty()) &amp;&amp; uri2 != null)<a name="line.312"></a>
+<span class="sourceLineNo">313</span>         s = uri2.toString();<a name="line.313"></a>
+<span class="sourceLineNo">314</span>      if (s == null)<a name="line.314"></a>
+<span class="sourceLineNo">315</span>         return null;<a name="line.315"></a>
+<span class="sourceLineNo">316</span>      return getUriResolver().resolve(s);<a name="line.316"></a>
+<span class="sourceLineNo">317</span>   }<a name="line.317"></a>
+<span class="sourceLineNo">318</span><a name="line.318"></a>
+<span class="sourceLineNo">319</span>   private void serializeMap(Map m, Resource r, ClassMeta&lt;?&gt; type) throws Exception {<a name="line.319"></a>
+<span class="sourceLineNo">320</span><a name="line.320"></a>
+<span class="sourceLineNo">321</span>      m = sort(m);<a name="line.321"></a>
+<span class="sourceLineNo">322</span><a name="line.322"></a>
+<span class="sourceLineNo">323</span>      ClassMeta&lt;?&gt; keyType = type.getKeyType(), valueType = type.getValueType();<a name="line.323"></a>
+<span class="sourceLineNo">324</span><a name="line.324"></a>
+<span class="sourceLineNo">325</span>      ArrayList&lt;Map.Entry&lt;Object,Object&gt;&gt; l = new ArrayList&lt;Map.Entry&lt;Object,Object&gt;&gt;(m.entrySet());<a name="line.325"></a>
+<span class="sourceLineNo">326</span>      Collections.reverse(l);<a name="line.326"></a>
+<span class="sourceLineNo">327</span>      for (Map.Entry&lt;Object,Object&gt; me : l) {<a name="line.327"></a>
+<span class="sourceLineNo">328</span>         Object value = me.getValue();<a name="line.328"></a>
+<span class="sourceLineNo">329</span><a name="line.329"></a>
+<span class="sourceLineNo">330</span>         Object key = generalize(me.getKey(), keyType);<a name="line.330"></a>
+<span class="sourceLineNo">331</span><a name="line.331"></a>
+<span class="sourceLineNo">332</span>         Namespace ns = juneauBpNs;<a name="line.332"></a>
+<span class="sourceLineNo">333</span>         Property p = model.createProperty(ns.getUri(), encodeElementName(toString(key)));<a name="line.333"></a>
+<span class="sourceLineNo">334</span>         RDFNode n = serializeAnything(value, false, valueType, key == null ? null : toString(key), null, r);<a name="line.334"></a>
+<span class="sourceLineNo">335</span>         if (n != null)<a name="line.335"></a>
+<span class="sourceLineNo">336</span>            r.addProperty(p, n);<a name="line.336"></a>
+<span class="sourceLineNo">337</span>      }<a name="line.337"></a>
+<span class="sourceLineNo">338</span>   }<a name="line.338"></a>
+<span class="sourceLineNo">339</span><a name="line.339"></a>
+<span class="sourceLineNo">340</span>   private void serializeBeanMap(BeanMap&lt;?&gt; m, Resource r, String typeName) throws Exception {<a name="line.340"></a>
+<span class="sourceLineNo">341</span>      List&lt;BeanPropertyValue&gt; l = m.getValues(isTrimNulls(), typeName != null ? createBeanTypeNameProperty(m, typeName) : null);<a name="line.341"></a>
+<span class="sourceLineNo">342</span>      Collections.reverse(l);<a name="line.342"></a>
+<span class="sourceLineNo">343</span>      for (BeanPropertyValue bpv : l) {<a name="line.343"></a>
+<span class="sourceLineNo">344</span>         BeanPropertyMeta pMeta = bpv.getMeta();<a name="line.344"></a>
+<span class="sourceLineNo">345</span>         ClassMeta&lt;?&gt; cMeta = pMeta.getClassMeta();<a name="line.345"></a>
 <span class="sourceLineNo">346</span><a name="line.346"></a>
-<span class="sourceLineNo">347</span>         String key = bpv.getName();<a name="line.347"></a>
-<span class="sourceLineNo">348</span>         Object value = bpv.getValue();<a name="line.348"></a>
-<span class="sourceLineNo">349</span>         Throwable t = bpv.getThrown();<a name="line.349"></a>
-<span class="sourceLineNo">350</span>         if (t != null)<a name="line.350"></a>
-<span class="sourceLineNo">351</span>            onBeanGetterException(pMeta, t);<a name="line.351"></a>
-<span class="sourceLineNo">352</span><a name="line.352"></a>
-<span class="sourceLineNo">353</span>         if (canIgnoreValue(cMeta, key, value))<a name="line.353"></a>
-<span class="sourceLineNo">354</span>            continue;<a name="line.354"></a>
+<span class="sourceLineNo">347</span>         if (pMeta.getExtendedMeta(RdfBeanPropertyMeta.class).isBeanUri())<a name="line.347"></a>
+<span class="sourceLineNo">348</span>            continue;<a name="line.348"></a>
+<span class="sourceLineNo">349</span><a name="line.349"></a>
+<span class="sourceLineNo">350</span>         String key = bpv.getName();<a name="line.350"></a>
+<span class="sourceLineNo">351</span>         Object value = bpv.getValue();<a name="line.351"></a>
+<span class="sourceLineNo">352</span>         Throwable t = bpv.getThrown();<a name="line.352"></a>
+<span class="sourceLineNo">353</span>         if (t != null)<a name="line.353"></a>
+<span class="sourceLineNo">354</span>            onBeanGetterException(pMeta, t);<a name="line.354"></a>
 <span class="sourceLineNo">355</span><a name="line.355"></a>
-<span class="sourceLineNo">356</span>         BeanPropertyMeta bpm = bpv.getMeta();<a name="line.356"></a>
-<span class="sourceLineNo">357</span>         Namespace ns = bpm.getExtendedMeta(RdfBeanPropertyMeta.class).getNamespace();<a name="line.357"></a>
-<span class="sourceLineNo">358</span>         if (ns == null &amp;&amp; useXmlNamespaces)<a name="line.358"></a>
-<span class="sourceLineNo">359</span>            ns = bpm.getExtendedMeta(XmlBeanPropertyMeta.class).getNamespace();<a name="line.359"></a>
-<span class="sourceLineNo">360</span>         if (ns == null)<a name="line.360"></a>
-<span class="sourceLineNo">361</span>            ns = juneauBpNs;<a name="line.361"></a>
-<span class="sourceLineNo">362</span>         else if (autoDetectNamespaces)<a name="line.362"></a>
-<span class="sourceLineNo">363</span>            addModelPrefix(ns);<a name="line.363"></a>
-<span class="sourceLineNo">364</span><a name="line.364"></a>
-<span class="sourceLineNo">365</span>         Property p = model.createProperty(ns.getUri(), encodeElementName(key));<a name="line.365"></a>
-<span class="sourceLineNo">366</span>         RDFNode n = serializeAnything(value, pMeta.isUri(), cMeta, key, pMeta, r);<a name="line.366"></a>
-<span class="sourceLineNo">367</span>         if (n != null)<a name="line.367"></a>
-<span class="sourceLineNo">368</span>            r.addProperty(p, n);<a name="line.368"></a>
-<span class="sourceLineNo">369</span>      }<a name="line.369"></a>
-<span class="sourceLineNo">370</span>   }<a name="line.370"></a>
-<span class="sourceLineNo">371</span><a name="line.371"></a>
-<span class="sourceLineNo">372</span><a name="line.372"></a>
-<span class="sourceLineNo">373</span>   private Container serializeToContainer(Collection c, ClassMeta&lt;?&gt; type, Container list) throws Exception {<a name="line.373"></a>
+<span class="sourceLineNo">356</span>         if (canIgnoreValue(cMeta, key, value))<a name="line.356"></a>
+<span class="sourceLineNo">357</span>            continue;<a name="line.357"></a>
+<span class="sourceLineNo">358</span><a name="line.358"></a>
+<span class="sourceLineNo">359</span>         BeanPropertyMeta bpm = bpv.getMeta();<a name="line.359"></a>
+<span class="sourceLineNo">360</span>         Namespace ns = bpm.getExtendedMeta(RdfBeanPropertyMeta.class).getNamespace();<a name="line.360"></a>
+<span class="sourceLineNo">361</span>         if (ns == null &amp;&amp; useXmlNamespaces)<a name="line.361"></a>
+<span class="sourceLineNo">362</span>            ns = bpm.getExtendedMeta(XmlBeanPropertyMeta.class).getNamespace();<a name="line.362"></a>
+<span class="sourceLineNo">363</span>         if (ns == null)<a name="line.363"></a>
+<span class="sourceLineNo">364</span>            ns = juneauBpNs;<a name="line.364"></a>
+<span class="sourceLineNo">365</span>         else if (autoDetectNamespaces)<a name="line.365"></a>
+<span class="sourceLineNo">366</span>            addModelPrefix(ns);<a name="line.366"></a>
+<span class="sourceLineNo">367</span><a name="line.367"></a>
+<span class="sourceLineNo">368</span>         Property p = model.createProperty(ns.getUri(), encodeElementName(key));<a name="line.368"></a>
+<span class="sourceLineNo">369</span>         RDFNode n = serializeAnything(value, pMeta.isUri(), cMeta, key, pMeta, r);<a name="line.369"></a>
+<span class="sourceLineNo">370</span>         if (n != null)<a name="line.370"></a>
+<span class="sourceLineNo">371</span>            r.addProperty(p, n);<a name="line.371"></a>
+<span class="sourceLineNo">372</span>      }<a name="line.372"></a>
+<span class="sourceLineNo">373</span>   }<a name="line.373"></a>
 <span class="sourceLineNo">374</span><a name="line.374"></a>
-<span class="sourceLineNo">375</span>      ClassMeta&lt;?&gt; elementType = type.getElementType();<a name="line.375"></a>
-<span class="sourceLineNo">376</span>      for (Object e : c) {<a name="line.376"></a>
-<span class="sourceLineNo">377</span>         RDFNode n = serializeAnything(e, false, elementType, null, null, null);<a name="line.377"></a>
-<span class="sourceLineNo">378</span>         list = list.add(n);<a name="line.378"></a>
-<span class="sourceLineNo">379</span>      }<a name="line.379"></a>
-<span class="sourceLineNo">380</span>      return list;<a name="line.380"></a>
-<span class="sourceLineNo">381</span>   }<a name="line.381"></a>
-<span class="sourceLineNo">382</span><a name="line.382"></a>
-<span class="sourceLineNo">383</span>   private RDFList serializeToList(Collection c, ClassMeta&lt;?&gt; type) throws Exception {<a name="line.383"></a>
-<span class="sourceLineNo">384</span>      ClassMeta&lt;?&gt; elementType = type.getElementType();<a name="line.384"></a>
-<span class="sourceLineNo">385</span>      List&lt;RDFNode&gt; l = new ArrayList&lt;RDFNode&gt;(c.size());<a name="line.385"></a>
-<span class="sourceLineNo">386</span>      for (Object e : c) {<a name="line.386"></a>
-<span class="sourceLineNo">387</span>         l.add(serializeAnything(e, false, elementType, null, null, null));<a name="line.387"></a>
-<span class="sourceLineNo">388</span>      }<a name="line.388"></a>
-<span class="sourceLineNo">389</span>      return model.createList(l.iterator());<a name="line.389"></a>
-<span class="sourceLineNo">390</span>   }<a name="line.390"></a>
-<span class="sourceLineNo">391</span><a name="line.391"></a>
-<span class="sourceLineNo">392</span>   private void serializeToMultiProperties(Collection c, ClassMeta&lt;?&gt; sType, <a name="line.392"></a>
-<span class="sourceLineNo">393</span>         BeanPropertyMeta bpm, String attrName, Resource parentResource) throws Exception {<a name="line.393"></a>
-<span class="sourceLineNo">394</span>      ClassMeta&lt;?&gt; elementType = sType.getElementType();<a name="line.394"></a>
-<span class="sourceLineNo">395</span>      for (Object e : c) {<a name="line.395"></a>
-<span class="sourceLineNo">396</span>         Namespace ns = null;<a name="line.396"></a>
-<span class="sourceLineNo">397</span>         if (bpm != null) {<a name="line.397"></a>
-<span class="sourceLineNo">398</span>            ns = bpm.getExtendedMeta(RdfBeanPropertyMeta.class).getNamespace();<a name="line.398"></a>
-<span class="sourceLineNo">399</span>            if (ns == null &amp;&amp; useXmlNamespaces)<a name="line.399"></a>
-<span class="sourceLineNo">400</span>               ns = bpm.getExtendedMeta(XmlBeanPropertyMeta.class).getNamespace();<a name="line.400"></a>
-<span class="sourceLineNo">401</span>         }<a name="line.401"></a>
-<span class="sourceLineNo">402</span>         if (ns == null)<a name="line.402"></a>
-<span class="sourceLineNo">403</span>            ns = juneauBpNs;<a name="line.403"></a>
-<span class="sourceLineNo">404</span>         else if (autoDetectNamespaces)<a name="line.404"></a>
-<span class="sourceLineNo">405</span>            addModelPrefix(ns);<a name="line.405"></a>
-<span class="sourceLineNo">406</span>         RDFNode n2 = serializeAnything(e, false, elementType, null, null, null);<a name="line.406"></a>
-<span class="sourceLineNo">407</span>         Property p = model.createProperty(ns.getUri(), encodeElementName(attrName));<a name="line.407"></a>
-<span class="sourceLineNo">408</span>         parentResource.addProperty(p, n2);<a name="line.408"></a>
-<span class="sourceLineNo">409</span>      }<a name="line.409"></a>
-<span class="sourceLineNo">410</span>   }<a name="line.410"></a>
-<span class="sourceLineNo">411</span>}<a name="line.411"></a>
+<span class="sourceLineNo">375</span><a name="line.375"></a>
+<span class="sourceLineNo">376</span>   private Container serializeToContainer(Collection c, ClassMeta&lt;?&gt; type, Container list) throws Exception {<a name="line.376"></a>
+<span class="sourceLineNo">377</span><a name="line.377"></a>
+<span class="sourceLineNo">378</span>      ClassMeta&lt;?&gt; elementType = type.getElementType();<a name="line.378"></a>
+<span class="sourceLineNo">379</span>      for (Object e : c) {<a name="line.379"></a>
+<span class="sourceLineNo">380</span>         RDFNode n = serializeAnything(e, false, elementType, null, null, null);<a name="line.380"></a>
+<span class="sourceLineNo">381</span>         list = list.add(n);<a name="line.381"></a>
+<span class="sourceLineNo">382</span>      }<a name="line.382"></a>
+<span class="sourceLineNo">383</span>      return list;<a name="line.383"></a>
+<span class="sourceLineNo">384</span>   }<a name="line.384"></a>
+<span class="sourceLineNo">385</span><a name="line.385"></a>
+<span class="sourceLineNo">386</span>   private RDFList serializeToList(Collection c, ClassMeta&lt;?&gt; type) throws Exception {<a name="line.386"></a>
+<span class="sourceLineNo">387</span>      ClassMeta&lt;?&gt; elementType = type.getElementType();<a name="line.387"></a>
+<span class="sourceLineNo">388</span>      List&lt;RDFNode&gt; l = new ArrayList&lt;RDFNode&gt;(c.size());<a name="line.388"></a>
+<span class="sourceLineNo">389</span>      for (Object e : c) {<a name="line.389"></a>
+<span class="sourceLineNo">390</span>         l.add(serializeAnything(e, false, elementType, null, null, null));<a name="line.390"></a>
+<span class="sourceLineNo">391</span>      }<a name="line.391"></a>
+<span class="sourceLineNo">392</span>      return model.createList(l.iterator());<a name="line.392"></a>
+<span class="sourceLineNo">393</span>   }<a name="line.393"></a>
+<span class="sourceLineNo">394</span><a name="line.394"></a>
+<span class="sourceLineNo">395</span>   private void serializeToMultiProperties(Collection c, ClassMeta&lt;?&gt; sType, <a name="line.395"></a>
+<span class="sourceLineNo">396</span>         BeanPropertyMeta bpm, String attrName, Resource parentResource) throws Exception {<a name="line.396"></a>
+<span class="sourceLineNo">397</span>      ClassMeta&lt;?&gt; elementType = sType.getElementType();<a name="line.397"></a>
+<span class="sourceLineNo">398</span>      for (Object e : c) {<a name="line.398"></a>
+<span class="sourceLineNo">399</span>         Namespace ns = null;<a name="line.399"></a>
+<span class="sourceLineNo">400</span>         if (bpm != null) {<a name="line.400"></a>
+<span class="sourceLineNo">401</span>            ns = bpm.getExtendedMeta(RdfBeanPropertyMeta.class).getNamespace();<a name="line.401"></a>
+<span class="sourceLineNo">402</span>            if (ns == null &amp;&amp; useXmlNamespaces)<a name="line.402"></a>
+<span class="sourceLineNo">403</span>               ns = bpm.getExtendedMeta(XmlBeanPropertyMeta.class).getNamespace();<a name="line.403"></a>
+<span class="sourceLineNo">404</span>         }<a name="line.404"></a>
+<span class="sourceLineNo">405</span>         if (ns == null)<a name="line.405"></a>
+<span class="sourceLineNo">406</span>            ns = juneauBpNs;<a name="line.406"></a>
+<span class="sourceLineNo">407</span>         else if (autoDetectNamespaces)<a name="line.407"></a>
+<span class="sourceLineNo">408</span>            addModelPrefix(ns);<a name="line.408"></a>
+<span class="sourceLineNo">409</span>         RDFNode n2 = serializeAnything(e, false, elementType, null, null, null);<a name="line.409"></a>
+<span class="sourceLineNo">410</span>         Property p = model.createProperty(ns.getUri(), encodeElementName(attrName));<a name="line.410"></a>
+<span class="sourceLineNo">411</span>         parentResource.addProperty(p, n2);<a name="line.411"></a>
+<span class="sourceLineNo">412</span>      }<a name="line.412"></a>
+<span class="sourceLineNo">413</span>   }<a name="line.413"></a>
+<span class="sourceLineNo">414</span>}<a name="line.414"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/jso/JsoParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/jso/JsoParser.html b/content/site/apidocs/src-html/org/apache/juneau/jso/JsoParser.html
index ec184fd..811e3c3 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/jso/JsoParser.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/jso/JsoParser.html
@@ -23,42 +23,40 @@
 <span class="sourceLineNo">015</span>import java.io.*;<a name="line.15"></a>
 <span class="sourceLineNo">016</span><a name="line.16"></a>
 <span class="sourceLineNo">017</span>import org.apache.juneau.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span>import org.apache.juneau.annotation.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.parser.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span><a name="line.20"></a>
-<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
-<span class="sourceLineNo">022</span> * Parses POJOs from HTTP responses as Java {@link ObjectInputStream ObjectInputStreams}.<a name="line.22"></a>
-<span class="sourceLineNo">023</span> *<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * Consumes &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/x-java-serialized-object&lt;/code&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> */<a name="line.27"></a>
-<span class="sourceLineNo">028</span>@Consumes("application/x-java-serialized-object")<a name="line.28"></a>
-<span class="sourceLineNo">029</span>public final class JsoParser extends InputStreamParser {<a name="line.29"></a>
-<span class="sourceLineNo">030</span><a name="line.30"></a>
-<span class="sourceLineNo">031</span>   /** Default parser, all default settings.*/<a name="line.31"></a>
-<span class="sourceLineNo">032</span>   public static final JsoParser DEFAULT = new JsoParser(PropertyStore.create());<a name="line.32"></a>
-<span class="sourceLineNo">033</span><a name="line.33"></a>
-<span class="sourceLineNo">034</span><a name="line.34"></a>
-<span class="sourceLineNo">035</span>   /**<a name="line.35"></a>
-<span class="sourceLineNo">036</span>    * Constructor.<a name="line.36"></a>
-<span class="sourceLineNo">037</span>    *<a name="line.37"></a>
-<span class="sourceLineNo">038</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.38"></a>
-<span class="sourceLineNo">039</span>    */<a name="line.39"></a>
-<span class="sourceLineNo">040</span>   public JsoParser(PropertyStore propertyStore) {<a name="line.40"></a>
-<span class="sourceLineNo">041</span>      super(propertyStore);<a name="line.41"></a>
-<span class="sourceLineNo">042</span>   }<a name="line.42"></a>
-<span class="sourceLineNo">043</span><a name="line.43"></a>
-<span class="sourceLineNo">044</span>   @Override /* CoreObject */<a name="line.44"></a>
-<span class="sourceLineNo">045</span>   public JsoParserBuilder builder() {<a name="line.45"></a>
-<span class="sourceLineNo">046</span>      return new JsoParserBuilder(propertyStore);<a name="line.46"></a>
-<span class="sourceLineNo">047</span>   }<a name="line.47"></a>
-<span class="sourceLineNo">048</span><a name="line.48"></a>
-<span class="sourceLineNo">049</span>   @Override /* Parser */<a name="line.49"></a>
-<span class="sourceLineNo">050</span>   public InputStreamParserSession createSession(ParserSessionArgs args) {<a name="line.50"></a>
-<span class="sourceLineNo">051</span>      return new JsoParserSession(args);<a name="line.51"></a>
-<span class="sourceLineNo">052</span>   }<a name="line.52"></a>
-<span class="sourceLineNo">053</span>}<a name="line.53"></a>
+<span class="sourceLineNo">018</span>import org.apache.juneau.parser.*;<a name="line.18"></a>
+<span class="sourceLineNo">019</span><a name="line.19"></a>
+<span class="sourceLineNo">020</span>/**<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * Parses POJOs from HTTP responses as Java {@link ObjectInputStream ObjectInputStreams}.<a name="line.21"></a>
+<span class="sourceLineNo">022</span> *<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * Consumes &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/x-java-serialized-object&lt;/code&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> */<a name="line.26"></a>
+<span class="sourceLineNo">027</span>public final class JsoParser extends InputStreamParser {<a name="line.27"></a>
+<span class="sourceLineNo">028</span><a name="line.28"></a>
+<span class="sourceLineNo">029</span>   /** Default parser, all default settings.*/<a name="line.29"></a>
+<span class="sourceLineNo">030</span>   public static final JsoParser DEFAULT = new JsoParser(PropertyStore.create());<a name="line.30"></a>
+<span class="sourceLineNo">031</span><a name="line.31"></a>
+<span class="sourceLineNo">032</span><a name="line.32"></a>
+<span class="sourceLineNo">033</span>   /**<a name="line.33"></a>
+<span class="sourceLineNo">034</span>    * Constructor.<a name="line.34"></a>
+<span class="sourceLineNo">035</span>    *<a name="line.35"></a>
+<span class="sourceLineNo">036</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.36"></a>
+<span class="sourceLineNo">037</span>    */<a name="line.37"></a>
+<span class="sourceLineNo">038</span>   public JsoParser(PropertyStore propertyStore) {<a name="line.38"></a>
+<span class="sourceLineNo">039</span>      super(propertyStore, "application/x-java-serialized-object");<a name="line.39"></a>
+<span class="sourceLineNo">040</span>   }<a name="line.40"></a>
+<span class="sourceLineNo">041</span><a name="line.41"></a>
+<span class="sourceLineNo">042</span>   @Override /* CoreObject */<a name="line.42"></a>
+<span class="sourceLineNo">043</span>   public JsoParserBuilder builder() {<a name="line.43"></a>
+<span class="sourceLineNo">044</span>      return new JsoParserBuilder(propertyStore);<a name="line.44"></a>
+<span class="sourceLineNo">045</span>   }<a name="line.45"></a>
+<span class="sourceLineNo">046</span><a name="line.46"></a>
+<span class="sourceLineNo">047</span>   @Override /* Parser */<a name="line.47"></a>
+<span class="sourceLineNo">048</span>   public InputStreamParserSession createSession(ParserSessionArgs args) {<a name="line.48"></a>
+<span class="sourceLineNo">049</span>      return new JsoParserSession(args);<a name="line.49"></a>
+<span class="sourceLineNo">050</span>   }<a name="line.50"></a>
+<span class="sourceLineNo">051</span>}<a name="line.51"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/jso/JsoSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/jso/JsoSerializer.html b/content/site/apidocs/src-html/org/apache/juneau/jso/JsoSerializer.html
index 01433cf..6f65e85 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/jso/JsoSerializer.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/jso/JsoSerializer.html
@@ -23,47 +23,45 @@
 <span class="sourceLineNo">015</span>import java.io.*;<a name="line.15"></a>
 <span class="sourceLineNo">016</span><a name="line.16"></a>
 <span class="sourceLineNo">017</span>import org.apache.juneau.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span>import org.apache.juneau.annotation.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.serializer.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span><a name="line.20"></a>
-<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
-<span class="sourceLineNo">022</span> * Serializes POJOs to HTTP responses as Java Serialized Object {@link ObjectOutputStream ObjectOutputStreams}.<a name="line.22"></a>
-<span class="sourceLineNo">023</span> *<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;application/x-java-serialized-object&lt;/code&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * &lt;p&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/x-java-serialized-object&lt;/code&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> */<a name="line.30"></a>
-<span class="sourceLineNo">031</span>@Produces("application/x-java-serialized-object")<a name="line.31"></a>
-<span class="sourceLineNo">032</span>public class JsoSerializer extends OutputStreamSerializer {<a name="line.32"></a>
-<span class="sourceLineNo">033</span><a name="line.33"></a>
-<span class="sourceLineNo">034</span>   /** Default serializer, all default settings.*/<a name="line.34"></a>
-<span class="sourceLineNo">035</span>   public static final JsoSerializer DEFAULT = new JsoSerializer(PropertyStore.create());<a name="line.35"></a>
+<span class="sourceLineNo">018</span>import org.apache.juneau.serializer.*;<a name="line.18"></a>
+<span class="sourceLineNo">019</span><a name="line.19"></a>
+<span class="sourceLineNo">020</span>/**<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * Serializes POJOs to HTTP responses as Java Serialized Object {@link ObjectOutputStream ObjectOutputStreams}.<a name="line.21"></a>
+<span class="sourceLineNo">022</span> *<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;application/x-java-serialized-object&lt;/code&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * &lt;p&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/x-java-serialized-object&lt;/code&gt;<a name="line.28"></a>
+<span class="sourceLineNo">029</span> */<a name="line.29"></a>
+<span class="sourceLineNo">030</span>public class JsoSerializer extends OutputStreamSerializer {<a name="line.30"></a>
+<span class="sourceLineNo">031</span><a name="line.31"></a>
+<span class="sourceLineNo">032</span>   /** Default serializer, all default settings.*/<a name="line.32"></a>
+<span class="sourceLineNo">033</span>   public static final JsoSerializer DEFAULT = new JsoSerializer(PropertyStore.create());<a name="line.33"></a>
+<span class="sourceLineNo">034</span><a name="line.34"></a>
+<span class="sourceLineNo">035</span>   private final SerializerContext ctx;<a name="line.35"></a>
 <span class="sourceLineNo">036</span><a name="line.36"></a>
-<span class="sourceLineNo">037</span>   private final SerializerContext ctx;<a name="line.37"></a>
-<span class="sourceLineNo">038</span><a name="line.38"></a>
-<span class="sourceLineNo">039</span>   /**<a name="line.39"></a>
-<span class="sourceLineNo">040</span>    * Constructor.<a name="line.40"></a>
-<span class="sourceLineNo">041</span>    *<a name="line.41"></a>
-<span class="sourceLineNo">042</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.42"></a>
-<span class="sourceLineNo">043</span>    */<a name="line.43"></a>
-<span class="sourceLineNo">044</span>   public JsoSerializer(PropertyStore propertyStore) {<a name="line.44"></a>
-<span class="sourceLineNo">045</span>      super(propertyStore);<a name="line.45"></a>
-<span class="sourceLineNo">046</span>      this.ctx = createContext(SerializerContext.class);<a name="line.46"></a>
-<span class="sourceLineNo">047</span>   }<a name="line.47"></a>
-<span class="sourceLineNo">048</span><a name="line.48"></a>
-<span class="sourceLineNo">049</span>   @Override /* CoreObject */<a name="line.49"></a>
-<span class="sourceLineNo">050</span>   public JsoSerializerBuilder builder() {<a name="line.50"></a>
-<span class="sourceLineNo">051</span>      return new JsoSerializerBuilder(propertyStore);<a name="line.51"></a>
-<span class="sourceLineNo">052</span>   }<a name="line.52"></a>
-<span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>   @Override /* Serializer */<a name="line.54"></a>
-<span class="sourceLineNo">055</span>   public OutputStreamSerializerSession createSession(SerializerSessionArgs args) {<a name="line.55"></a>
-<span class="sourceLineNo">056</span>      return new JsoSerializerSession(ctx, args);<a name="line.56"></a>
-<span class="sourceLineNo">057</span>   }<a name="line.57"></a>
-<span class="sourceLineNo">058</span>}<a name="line.58"></a>
+<span class="sourceLineNo">037</span>   /**<a name="line.37"></a>
+<span class="sourceLineNo">038</span>    * Constructor.<a name="line.38"></a>
+<span class="sourceLineNo">039</span>    *<a name="line.39"></a>
+<span class="sourceLineNo">040</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.40"></a>
+<span class="sourceLineNo">041</span>    */<a name="line.41"></a>
+<span class="sourceLineNo">042</span>   public JsoSerializer(PropertyStore propertyStore) {<a name="line.42"></a>
+<span class="sourceLineNo">043</span>      super(propertyStore, "application/x-java-serialized-object");<a name="line.43"></a>
+<span class="sourceLineNo">044</span>      this.ctx = createContext(SerializerContext.class);<a name="line.44"></a>
+<span class="sourceLineNo">045</span>   }<a name="line.45"></a>
+<span class="sourceLineNo">046</span><a name="line.46"></a>
+<span class="sourceLineNo">047</span>   @Override /* CoreObject */<a name="line.47"></a>
+<span class="sourceLineNo">048</span>   public JsoSerializerBuilder builder() {<a name="line.48"></a>
+<span class="sourceLineNo">049</span>      return new JsoSerializerBuilder(propertyStore);<a name="line.49"></a>
+<span class="sourceLineNo">050</span>   }<a name="line.50"></a>
+<span class="sourceLineNo">051</span><a name="line.51"></a>
+<span class="sourceLineNo">052</span>   @Override /* Serializer */<a name="line.52"></a>
+<span class="sourceLineNo">053</span>   public OutputStreamSerializerSession createSession(SerializerSessionArgs args) {<a name="line.53"></a>
+<span class="sourceLineNo">054</span>      return new JsoSerializerSession(ctx, args);<a name="line.54"></a>
+<span class="sourceLineNo">055</span>   }<a name="line.55"></a>
+<span class="sourceLineNo">056</span>}<a name="line.56"></a>
 
 
 


[49/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/html/HtmlStrippedDocSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/html/HtmlStrippedDocSerializer.html b/content/site/apidocs/org/apache/juneau/html/HtmlStrippedDocSerializer.html
index cf3c0e6..8ea4eac 100644
--- a/content/site/apidocs/org/apache/juneau/html/HtmlStrippedDocSerializer.html
+++ b/content/site/apidocs/org/apache/juneau/html/HtmlStrippedDocSerializer.html
@@ -137,9 +137,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="text/html+stripped",
-          <a href="../../../../org/apache/juneau/annotation/Produces.html#contentType--">contentType</a>="text/html")
-public class <a href="../../../../src-html/org/apache/juneau/html/HtmlStrippedDocSerializer.html#line.36">HtmlStrippedDocSerializer</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/html/HtmlStrippedDocSerializer.html#line.34">HtmlStrippedDocSerializer</a>
 extends <a href="../../../../org/apache/juneau/html/HtmlSerializer.html" title="class in org.apache.juneau.html">HtmlSerializer</a></pre>
 <div class="block">Serializes POJOs to HTTP responses as stripped HTML.
 
@@ -228,6 +226,13 @@ extends <a href="../../../../org/apache/juneau/html/HtmlSerializer.html" title="
 <div class="block">Constructor.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/html/HtmlStrippedDocSerializer.html#HtmlStrippedDocSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">HtmlStrippedDocSerializer</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                         <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+                         <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</code>
+<div class="block">Constructor.</div>
+</td>
+</tr>
 </table>
 </li>
 </ul>
@@ -269,7 +274,7 @@ extends <a href="../../../../org/apache/juneau/html/HtmlSerializer.html" title="
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -302,14 +307,43 @@ extends <a href="../../../../org/apache/juneau/html/HtmlSerializer.html" title="
 <a name="HtmlStrippedDocSerializer-org.apache.juneau.PropertyStore-">
 <!--   -->
 </a>
+<ul class="blockList">
+<li class="blockList">
+<h4>HtmlStrippedDocSerializer</h4>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlStrippedDocSerializer.html#line.41">HtmlStrippedDocSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<div class="block">Constructor.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+</dl>
+</li>
+</ul>
+<a name="HtmlStrippedDocSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">
+<!--   -->
+</a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>HtmlStrippedDocSerializer</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlStrippedDocSerializer.html#line.43">HtmlStrippedDocSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlStrippedDocSerializer.html#line.66">HtmlStrippedDocSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                                 <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+                                 <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+<dd><code>produces</code> - The media type that this serializer produces.</dd>
+<dd><code>accept</code> - The accept media types that the serializer can handle.
+   <p>
+   Can contain meta-characters per the <code>media-type</code> specification of
+   <a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1">RFC2616/14.1</a>
+   <p>
+   If empty, then assumes the only media type supported is <code>produces</code>.
+   <p>
+   For example, if this serializer produces <js>"application/json"</js> but should handle media types of
+   <js>"application/json"</js> and <js>"text/json"</js>, then the arguments should be:
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"application/json"</js>, <js>"text/json"</js>);</code>
+   <br>...or...
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"*&#8203;/json"</js>);</code></dd>
 </dl>
 </li>
 </ul>
@@ -327,7 +361,7 @@ extends <a href="../../../../org/apache/juneau/html/HtmlSerializer.html" title="
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlStrippedDocSerializer.html#line.48">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/html/HtmlStrippedDocSerializer.html#line.71">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession-org.apache.juneau.serializer.SerializerSessionArgs-">Serializer</a></code></span></div>
 <div class="block">Create the session object used for actual serialization of objects.</div>
 <dl>
@@ -337,8 +371,7 @@ extends <a href="../../../../org/apache/juneau/html/HtmlSerializer.html" title="
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and serializer
-   contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   contexts.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The new session object.
    <br>Note that you must call <a href="../../../../org/apache/juneau/BeanSession.html#close--"><code>BeanSession.close()</code></a> on this object to perform any necessary

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/http/ContentType.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/http/ContentType.html b/content/site/apidocs/org/apache/juneau/http/ContentType.html
index 3920e8a..68507eb 100644
--- a/content/site/apidocs/org/apache/juneau/http/ContentType.html
+++ b/content/site/apidocs/org/apache/juneau/http/ContentType.html
@@ -203,7 +203,7 @@ extends <a href="../../../../org/apache/juneau/http/MediaType.html" title="class
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.http.<a href="../../../../org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a></h3>
-<code><a href="../../../../org/apache/juneau/http/MediaType.html#compareTo-org.apache.juneau.http.MediaType-">compareTo</a>, <a href="../../../../org/apache/juneau/http/MediaType.html#equals-java.lang.Object-">equals</a>, <a href="../../../../org/apache/juneau/http/MediaType.html#getParameters--">getParameters</a>, <a href="../../../../org/apache/juneau/http/MediaType.html#getSubType--">getSubType</a>, <a href="../../../../org/apache/juneau/http/MediaType.html#getSubTypes--">getSubTypes</a>, <a href="../../../../org/apache/juneau/http/MediaType.html#getType--">getType</a>, <a href="../../../../org/apache/juneau/http/MediaType.html#hashCode--">hashCode</a>, <a href="../../../../org/apache/juneau/http/MediaType.html#match-org.apache.juneau.http.MediaType-">match</a>, <a href="../../../../org/apache/juneau/http/MediaType.html#matches-org.apache.juneau.http.MediaType-">matches</a>, <a href="../../../../org/apache/juneau/http/MediaType.html#toString--">toString</a></code></li>
+<code><a href="../../../../org/apache/juneau/http/MediaType.html#compareTo-org.apache.juneau.http.MediaType-">compareTo</a>, <a href="../../../../org/apache/juneau/http/MediaType.html#equals-java.lang.Object-">equals</a>, <a href="../../../../org/apache/juneau/http/MediaType.html#getParameters--">getParameters</a>, <a href="../../../../org/apache/juneau/http/MediaType.html#getSubType--">getSubType</a>, <a href="../../../../org/apache/juneau/http/MediaType.html#getSubTypes--">getSubTypes</a>, <a href="../../../../org/apache/juneau/http/MediaType.html#getType--">getType</a>, <a href="../../../../org/apache/juneau/http/MediaType.html#hashCode--">hashCode</a>, <a href="../../../../org/apache/juneau/http/MediaType.html#hasSubType-java.lang.String-">hasSubType</a>, <a href="../../../../org/apache/juneau/http/MediaType.html#match-org.apache.juneau.http.MediaType-">match</a>, <a href="../../../../org/apache/juneau/http/MediaType.html#matches-org.apache.juneau.http.MediaType-">matches</a>, <
 a href="../../../../org/apache/juneau/http/MediaType.html#toString--">toString</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/http/MediaType.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/http/MediaType.html b/content/site/apidocs/org/apache/juneau/http/MediaType.html
index bf603d8..fb8c4b8 100644
--- a/content/site/apidocs/org/apache/juneau/http/MediaType.html
+++ b/content/site/apidocs/org/apache/juneau/http/MediaType.html
@@ -18,7 +18,7 @@
     catch(err) {
     }
 //-->
-var methods = {"i0":10,"i1":10,"i2":9,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10};
+var methods = {"i0":10,"i1":10,"i2":9,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10};
 var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -291,18 +291,24 @@ implements <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparabl
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/http/MediaType.html#hashCode--">hashCode</a></span>()</code>&nbsp;</td>
 </tr>
 <tr id="i8" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/http/MediaType.html#hasSubType-java.lang.String-">hasSubType</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;st)</code>
+<div class="block">Returns <jk>true</jk> if the subtype contains the specified <js>'+'</js> delimited subtype value.</div>
+</td>
+</tr>
+<tr id="i9" class="rowColor">
 <td class="colFirst"><code>int</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/http/MediaType.html#match-org.apache.juneau.http.MediaType-">match</a></span>(<a href="../../../../org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a>&nbsp;o)</code>
 <div class="block">Returns a match metric against the specified media type where a larger number represents a better match.</div>
 </td>
 </tr>
-<tr id="i9" class="rowColor">
+<tr id="i10" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/http/MediaType.html#matches-org.apache.juneau.http.MediaType-">matches</a></span>(<a href="../../../../org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a>&nbsp;o)</code>
 <div class="block">Returns <jk>true</jk> if this media type is a match for the specified media type.</div>
 </td>
 </tr>
-<tr id="i10" class="altColor">
+<tr id="i11" class="rowColor">
 <td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/http/MediaType.html#toString--">toString</a></span>()</code>&nbsp;</td>
 </tr>
@@ -513,7 +519,7 @@ implements <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparabl
 <ul class="blockList">
 <li class="blockList">
 <h4>getType</h4>
-<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/http/MediaType.html#line.160">getType</a>()</pre>
+<pre>public final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/http/MediaType.html#line.160">getType</a>()</pre>
 <div class="block">Returns the <js>'type'</js> fragment of the <js>'type/subType'</js> string.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -527,7 +533,7 @@ implements <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparabl
 <ul class="blockList">
 <li class="blockList">
 <h4>getSubType</h4>
-<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/http/MediaType.html#line.169">getSubType</a>()</pre>
+<pre>public final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/http/MediaType.html#line.169">getSubType</a>()</pre>
 <div class="block">Returns the <js>'subType'</js> fragment of the <js>'type/subType'</js> string.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -535,13 +541,30 @@ implements <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparabl
 </dl>
 </li>
 </ul>
+<a name="hasSubType-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>hasSubType</h4>
+<pre>public final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/http/MediaType.html#line.181">hasSubType</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;st)</pre>
+<div class="block">Returns <jk>true</jk> if the subtype contains the specified <js>'+'</js> delimited subtype value.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>st</code> - The subtype string.
+   Case is ignored.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd><jk>true</jk> if the subtype contains the specified subtype string.</dd>
+</dl>
+</li>
+</ul>
 <a name="getSubTypes--">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>getSubTypes</h4>
-<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/http/MediaType.html#line.182">getSubTypes</a>()</pre>
+<pre>public final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/http/MediaType.html#line.198">getSubTypes</a>()</pre>
 <div class="block">Returns the subtypes broken down by fragments delimited by <js>"'"</js>.
 
  <P>
@@ -559,7 +582,7 @@ implements <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparabl
 <ul class="blockList">
 <li class="blockList">
 <h4>matches</h4>
-<pre>public final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/http/MediaType.html#line.201">matches</a>(<a href="../../../../org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a>&nbsp;o)</pre>
+<pre>public final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/http/MediaType.html#line.217">matches</a>(<a href="../../../../org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a>&nbsp;o)</pre>
 <div class="block">Returns <jk>true</jk> if this media type is a match for the specified media type.
 
  <p>
@@ -584,7 +607,7 @@ implements <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparabl
 <ul class="blockList">
 <li class="blockList">
 <h4>match</h4>
-<pre>public final&nbsp;int&nbsp;<a href="../../../../src-html/org/apache/juneau/http/MediaType.html#line.225">match</a>(<a href="../../../../org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a>&nbsp;o)</pre>
+<pre>public final&nbsp;int&nbsp;<a href="../../../../src-html/org/apache/juneau/http/MediaType.html#line.241">match</a>(<a href="../../../../org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a>&nbsp;o)</pre>
 <div class="block">Returns a match metric against the specified media type where a larger number represents a better match.
 
  <ul>
@@ -614,7 +637,7 @@ implements <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparabl
 <ul class="blockList">
 <li class="blockList">
 <h4>getParameters</h4>
-<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/http/MediaType.html#line.270">getParameters</a>()</pre>
+<pre>public final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/http/MediaType.html#line.286">getParameters</a>()</pre>
 <div class="block">Returns the additional parameters on this media type.
 
  <p>
@@ -632,7 +655,7 @@ implements <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparabl
 <ul class="blockList">
 <li class="blockList">
 <h4>toString</h4>
-<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/http/MediaType.html#line.275">toString</a>()</pre>
+<pre>public final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/http/MediaType.html#line.291">toString</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
@@ -645,7 +668,7 @@ implements <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparabl
 <ul class="blockList">
 <li class="blockList">
 <h4>hashCode</h4>
-<pre>public&nbsp;int&nbsp;<a href="../../../../src-html/org/apache/juneau/http/MediaType.html#line.286">hashCode</a>()</pre>
+<pre>public final&nbsp;int&nbsp;<a href="../../../../src-html/org/apache/juneau/http/MediaType.html#line.302">hashCode</a>()</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
@@ -658,7 +681,7 @@ implements <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparabl
 <ul class="blockList">
 <li class="blockList">
 <h4>equals</h4>
-<pre>public&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/http/MediaType.html#line.291">equals</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</pre>
+<pre>public final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/http/MediaType.html#line.307">equals</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
@@ -671,7 +694,7 @@ implements <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparabl
 <ul class="blockListLast">
 <li class="blockList">
 <h4>compareTo</h4>
-<pre>public&nbsp;int&nbsp;<a href="../../../../src-html/org/apache/juneau/http/MediaType.html#line.296">compareTo</a>(<a href="../../../../org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a>&nbsp;o)</pre>
+<pre>public final&nbsp;int&nbsp;<a href="../../../../src-html/org/apache/juneau/http/MediaType.html#line.312">compareTo</a>(<a href="../../../../org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a>&nbsp;o)</pre>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html?is-external=true#compareTo-T-" title="class or interface in java.lang">compareTo</a></code>&nbsp;in interface&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;<a href="../../../../org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a>&gt;</code></dd>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/internal/IOUtils.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/internal/IOUtils.html b/content/site/apidocs/org/apache/juneau/internal/IOUtils.html
index 3d222a8..73c60ea 100644
--- a/content/site/apidocs/org/apache/juneau/internal/IOUtils.html
+++ b/content/site/apidocs/org/apache/juneau/internal/IOUtils.html
@@ -18,7 +18,7 @@
     catch(err) {
     }
 //-->
-var methods = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9,"i7":9,"i8":9,"i9":9,"i10":9,"i11":9,"i12":9,"i13":9,"i14":9,"i15":9,"i16":9,"i17":9,"i18":9,"i19":9,"i20":9,"i21":9,"i22":9,"i23":9};
+var methods = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9,"i7":9,"i8":9,"i9":9,"i10":9,"i11":9,"i12":9,"i13":9,"i14":9,"i15":9,"i16":9,"i17":9,"i18":9,"i19":9,"i20":9,"i21":9,"i22":9,"i23":9,"i24":9,"i25":9,"i26":9,"i27":9};
 var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -108,7 +108,7 @@ var activeTableTab = "activeTableTab";
 <li class="blockList">
 <hr>
 <br>
-<pre>public final class <a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.25">IOUtils</a>
+<pre>public final class <a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.26">IOUtils</a>
 extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
 <div class="block">Various I/O related utility methods.</div>
 </li>
@@ -235,43 +235,64 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 </tr>
 <tr id="i11" class="rowColor">
 <td class="colFirst"><code>static void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/internal/IOUtils.html#pipe-java.io.InputStream-java.io.OutputStream-">pipe</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;in,
+    <a href="http://docs.oracle.com/javase/7/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;out)</code>
+<div class="block">Pipes the contents of the specified streams.</div>
+</td>
+</tr>
+<tr id="i12" class="altColor">
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/internal/IOUtils.html#pipe-java.lang.Object-java.io.OutputStream-">pipe</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;in,
+    <a href="http://docs.oracle.com/javase/7/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;out)</code>
+<div class="block">Pipes the contents of the specified object into the output stream.</div>
+</td>
+</tr>
+<tr id="i13" class="rowColor">
+<td class="colFirst"><code>static void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/internal/IOUtils.html#pipe-java.lang.Object-java.io.Writer-">pipe</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;in,
+    <a href="http://docs.oracle.com/javase/7/docs/api/java/io/Writer.html?is-external=true" title="class or interface in java.io">Writer</a>&nbsp;out)</code>
+<div class="block">Pipes the contents of the specified object into the writer.</div>
+</td>
+</tr>
+<tr id="i14" class="altColor">
+<td class="colFirst"><code>static void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/internal/IOUtils.html#pipe-java.io.Reader-java.io.Writer-">pipe</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Reader.html?is-external=true" title="class or interface in java.io">Reader</a>&nbsp;in,
     <a href="http://docs.oracle.com/javase/7/docs/api/java/io/Writer.html?is-external=true" title="class or interface in java.io">Writer</a>&nbsp;out)</code>
 <div class="block">Pipes the contents of the specified reader into the writer.</div>
 </td>
 </tr>
-<tr id="i12" class="altColor">
+<tr id="i15" class="rowColor">
 <td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/internal/IOUtils.html#read-java.io.File-">read</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/File.html?is-external=true" title="class or interface in java.io">File</a>&nbsp;in)</code>
 <div class="block">Reads the contents of a file into a string.</div>
 </td>
 </tr>
-<tr id="i13" class="rowColor">
+<tr id="i16" class="altColor">
 <td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/internal/IOUtils.html#read-java.io.InputStream-">read</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;in)</code>
 <div class="block">Reads the contents of an input stream into a string using the system default charset.</div>
 </td>
 </tr>
-<tr id="i14" class="altColor">
+<tr id="i17" class="rowColor">
 <td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/internal/IOUtils.html#read-java.io.InputStream-java.nio.charset.Charset-">read</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;in,
     <a href="http://docs.oracle.com/javase/7/docs/api/java/nio/charset/Charset.html?is-external=true" title="class or interface in java.nio.charset">Charset</a>&nbsp;cs)</code>
 <div class="block">Reads the contents of an input stream into a string using the specified charset.</div>
 </td>
 </tr>
-<tr id="i15" class="rowColor">
+<tr id="i18" class="altColor">
 <td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/internal/IOUtils.html#read-java.lang.Object-">read</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</code>
 <div class="block">Reads the specified object to a <code>String</code>.</div>
 </td>
 </tr>
-<tr id="i16" class="altColor">
+<tr id="i19" class="rowColor">
 <td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/internal/IOUtils.html#read-java.io.Reader-">read</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Reader.html?is-external=true" title="class or interface in java.io">Reader</a>&nbsp;in)</code>
 <div class="block">Reads the contents of a reader into a string.</div>
 </td>
 </tr>
-<tr id="i17" class="rowColor">
+<tr id="i20" class="altColor">
 <td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/internal/IOUtils.html#read-java.io.Reader-int-int-">read</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Reader.html?is-external=true" title="class or interface in java.io">Reader</a>&nbsp;in,
     int&nbsp;length,
@@ -279,39 +300,45 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <div class="block">Reads the specified input into a <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang"><code>String</code></a> until the end of the input is reached.</div>
 </td>
 </tr>
-<tr id="i18" class="altColor">
+<tr id="i21" class="rowColor">
 <td class="colFirst"><code>static byte[]</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/internal/IOUtils.html#readBytes-java.io.File-">readBytes</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/File.html?is-external=true" title="class or interface in java.io">File</a>&nbsp;f)</code>
 <div class="block">Reads a raw stream of bytes from the specified file.</div>
 </td>
 </tr>
-<tr id="i19" class="rowColor">
+<tr id="i22" class="altColor">
 <td class="colFirst"><code>static byte[]</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/internal/IOUtils.html#readBytes-java.io.InputStream-int-">readBytes</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;in,
          int&nbsp;bufferSize)</code>
 <div class="block">Read the specified input stream into a byte array and closes the stream.</div>
 </td>
 </tr>
-<tr id="i20" class="altColor">
+<tr id="i23" class="rowColor">
 <td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/internal/IOUtils.html#readFile-java.lang.String-">readFile</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;path)</code>
 <div class="block">Reads the contents of a file into a string.</div>
 </td>
 </tr>
-<tr id="i21" class="rowColor">
+<tr id="i24" class="altColor">
 <td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/internal/IOUtils.html#toInputStream-java.lang.Object-">toInputStream</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</code>
 <div class="block">Converts an object to an <code>InputStream</code>.</div>
 </td>
 </tr>
-<tr id="i22" class="altColor">
+<tr id="i25" class="rowColor">
+<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/io/Reader.html?is-external=true" title="class or interface in java.io">Reader</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/internal/IOUtils.html#toReader-java.lang.Object-">toReader</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)</code>
+<div class="block">Converts an object to a <code>Reader</code>.</div>
+</td>
+</tr>
+<tr id="i26" class="altColor">
 <td class="colFirst"><code>static int</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/internal/IOUtils.html#write-java.io.File-java.io.InputStream-">write</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/File.html?is-external=true" title="class or interface in java.io">File</a>&nbsp;out,
      <a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;in)</code>
 <div class="block">Writes the contents of the specified <code>InputStream</code> to the specified file.</div>
 </td>
 </tr>
-<tr id="i23" class="rowColor">
+<tr id="i27" class="rowColor">
 <td class="colFirst"><code>static int</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/internal/IOUtils.html#write-java.io.File-java.io.Reader-">write</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/File.html?is-external=true" title="class or interface in java.io">File</a>&nbsp;out,
      <a href="http://docs.oracle.com/javase/7/docs/api/java/io/Reader.html?is-external=true" title="class or interface in java.io">Reader</a>&nbsp;in)</code>
@@ -346,7 +373,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockListLast">
 <li class="blockList">
 <h4>UTF8</h4>
-<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/nio/charset/Charset.html?is-external=true" title="class or interface in java.nio.charset">Charset</a> <a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.28">UTF8</a></pre>
+<pre>public static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/nio/charset/Charset.html?is-external=true" title="class or interface in java.nio.charset">Charset</a> <a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.29">UTF8</a></pre>
 <div class="block">UTF-8 charset</div>
 </li>
 </ul>
@@ -364,7 +391,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockListLast">
 <li class="blockList">
 <h4>IOUtils</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.25">IOUtils</a>()</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.26">IOUtils</a>()</pre>
 </li>
 </ul>
 </li>
@@ -381,7 +408,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>readFile</h4>
-<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.37">readFile</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;path)
+<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.38">readFile</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;path)
                        throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Reads the contents of a file into a string.</div>
 <dl>
@@ -400,7 +427,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>read</h4>
-<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.48">read</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/File.html?is-external=true" title="class or interface in java.io">File</a>&nbsp;in)
+<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.49">read</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/File.html?is-external=true" title="class or interface in java.io">File</a>&nbsp;in)
                    throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Reads the contents of a file into a string.</div>
 <dl>
@@ -419,7 +446,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>read</h4>
-<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.72">read</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
+<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.73">read</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
                    throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Reads the specified object to a <code>String</code>.
 
@@ -448,7 +475,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>write</h4>
-<pre>public static&nbsp;int&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.94">write</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/File.html?is-external=true" title="class or interface in java.io">File</a>&nbsp;out,
+<pre>public static&nbsp;int&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.95">write</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/File.html?is-external=true" title="class or interface in java.io">File</a>&nbsp;out,
                         <a href="http://docs.oracle.com/javase/7/docs/api/java/io/Reader.html?is-external=true" title="class or interface in java.io">Reader</a>&nbsp;in)
                  throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Writes the contents of the specified <code>Reader</code> to the specified file.</div>
@@ -469,7 +496,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>write</h4>
-<pre>public static&nbsp;int&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.113">write</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/File.html?is-external=true" title="class or interface in java.io">File</a>&nbsp;out,
+<pre>public static&nbsp;int&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.114">write</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/File.html?is-external=true" title="class or interface in java.io">File</a>&nbsp;out,
                         <a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;in)
                  throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Writes the contents of the specified <code>InputStream</code> to the specified file.</div>
@@ -490,7 +517,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>read</h4>
-<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.131">read</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Reader.html?is-external=true" title="class or interface in java.io">Reader</a>&nbsp;in)
+<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.132">read</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Reader.html?is-external=true" title="class or interface in java.io">Reader</a>&nbsp;in)
                    throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Reads the contents of a reader into a string.</div>
 <dl>
@@ -509,7 +536,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>read</h4>
-<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.143">read</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;in,
+<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.144">read</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;in,
                           <a href="http://docs.oracle.com/javase/7/docs/api/java/nio/charset/Charset.html?is-external=true" title="class or interface in java.nio.charset">Charset</a>&nbsp;cs)
                    throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Reads the contents of an input stream into a string using the specified charset.</div>
@@ -530,7 +557,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>read</h4>
-<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.156">read</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;in)
+<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.157">read</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;in)
                    throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Reads the contents of an input stream into a string using the system default charset.</div>
 <dl>
@@ -549,7 +576,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>readBytes</h4>
-<pre>public static&nbsp;byte[]&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.170">readBytes</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;in,
+<pre>public static&nbsp;byte[]&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.171">readBytes</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;in,
                                int&nbsp;bufferSize)
                         throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Read the specified input stream into a byte array and closes the stream.</div>
@@ -570,7 +597,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>readBytes</h4>
-<pre>public static&nbsp;byte[]&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.195">readBytes</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/File.html?is-external=true" title="class or interface in java.io">File</a>&nbsp;f)
+<pre>public static&nbsp;byte[]&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.196">readBytes</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/File.html?is-external=true" title="class or interface in java.io">File</a>&nbsp;f)
                         throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Reads a raw stream of bytes from the specified file.</div>
 <dl>
@@ -589,7 +616,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>read</h4>
-<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.223">read</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Reader.html?is-external=true" title="class or interface in java.io">Reader</a>&nbsp;in,
+<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.224">read</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Reader.html?is-external=true" title="class or interface in java.io">Reader</a>&nbsp;in,
                           int&nbsp;length,
                           int&nbsp;bufferSize)
                    throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
@@ -619,7 +646,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>pipe</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.249">pipe</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Reader.html?is-external=true" title="class or interface in java.io">Reader</a>&nbsp;in,
+<pre>public static&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.252">pipe</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Reader.html?is-external=true" title="class or interface in java.io">Reader</a>&nbsp;in,
                         <a href="http://docs.oracle.com/javase/7/docs/api/java/io/Writer.html?is-external=true" title="class or interface in java.io">Writer</a>&nbsp;out)
                  throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Pipes the contents of the specified reader into the writer.
@@ -635,13 +662,81 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 </dl>
 </li>
 </ul>
+<a name="pipe-java.lang.Object-java.io.Writer-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>pipe</h4>
+<pre>public static&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.271">pipe</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;in,
+                        <a href="http://docs.oracle.com/javase/7/docs/api/java/io/Writer.html?is-external=true" title="class or interface in java.io">Writer</a>&nbsp;out)
+                 throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<div class="block">Pipes the contents of the specified object into the writer.
+
+ <p>
+ The reader is closed, the writer is not.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>in</code> - The input to pipe from.
+   Can be any of the types defined by <a href="../../../../org/apache/juneau/internal/IOUtils.html#toReader-java.lang.Object-"><code>toReader(Object)</code></a>.</dd>
+<dd><code>out</code> - The writer to pipe to.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="pipe-java.io.InputStream-java.io.OutputStream-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>pipe</h4>
+<pre>public static&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.287">pipe</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;in,
+                        <a href="http://docs.oracle.com/javase/7/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;out)
+                 throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<div class="block">Pipes the contents of the specified streams.
+
+ <p>
+ The input stream is closed, the output stream is not.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>in</code> - The reader to pipe from.</dd>
+<dd><code>out</code> - The writer to pipe to.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="pipe-java.lang.Object-java.io.OutputStream-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>pipe</h4>
+<pre>public static&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.306">pipe</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;in,
+                        <a href="http://docs.oracle.com/javase/7/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;out)
+                 throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<div class="block">Pipes the contents of the specified object into the output stream.
+
+ <p>
+ The input stream is closed, the output stream is not.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>in</code> - The input to pipe from.
+   Can be any of the types defined by <a href="../../../../org/apache/juneau/internal/IOUtils.html#toInputStream-java.lang.Object-"><code>toInputStream(Object)</code></a>.</dd>
+<dd><code>out</code> - The writer to pipe to.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
+</dl>
+</li>
+</ul>
 <a name="getBufferedReader-java.io.Reader-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>getBufferedReader</h4>
-<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Reader.html?is-external=true" title="class or interface in java.io">Reader</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.263">getBufferedReader</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Reader.html?is-external=true" title="class or interface in java.io">Reader</a>&nbsp;r)</pre>
+<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Reader.html?is-external=true" title="class or interface in java.io">Reader</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.318">getBufferedReader</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Reader.html?is-external=true" title="class or interface in java.io">Reader</a>&nbsp;r)</pre>
 <div class="block">Wraps the specified reader in a buffered reader.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -658,7 +753,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>count</h4>
-<pre>public static&nbsp;long&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.276">count</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;is)
+<pre>public static&nbsp;long&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.331">count</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;is)
                   throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Counts the number of bytes in the input stream and then closes the stream.</div>
 <dl>
@@ -677,7 +772,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>count</h4>
-<pre>public static&nbsp;long&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.296">count</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Reader.html?is-external=true" title="class or interface in java.io">Reader</a>&nbsp;r)
+<pre>public static&nbsp;long&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.351">count</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Reader.html?is-external=true" title="class or interface in java.io">Reader</a>&nbsp;r)
                   throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Counts the number of characters in the reader and then closes the reader.</div>
 <dl>
@@ -696,7 +791,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>getBufferSize</h4>
-<pre>public static&nbsp;int&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.318">getBufferSize</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;contentLength)</pre>
+<pre>public static&nbsp;int&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.373">getBufferSize</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;contentLength)</pre>
 <div class="block">Given the specified <js>"Content-Length"</js> header value, return an appropriate buffer size.
 
  <p>
@@ -715,7 +810,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>closeQuietly</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.342">closeQuietly</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;is)</pre>
+<pre>public static&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.397">closeQuietly</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;is)</pre>
 <div class="block">Close input stream and ignore any exceptions.
 
  <p>
@@ -732,7 +827,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>closeQuietly</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.357">closeQuietly</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;os)</pre>
+<pre>public static&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.412">closeQuietly</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/OutputStream.html?is-external=true" title="class or interface in java.io">OutputStream</a>&nbsp;os)</pre>
 <div class="block">Close output stream and ignore any exceptions.
 
  <p>
@@ -749,7 +844,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>closeQuietly</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.372">closeQuietly</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Reader.html?is-external=true" title="class or interface in java.io">Reader</a>&nbsp;r)</pre>
+<pre>public static&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.427">closeQuietly</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Reader.html?is-external=true" title="class or interface in java.io">Reader</a>&nbsp;r)</pre>
 <div class="block">Close reader and ignore any exceptions.
 
  <p>
@@ -766,7 +861,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>closeQuietly</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.387">closeQuietly</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Writer.html?is-external=true" title="class or interface in java.io">Writer</a>&nbsp;w)</pre>
+<pre>public static&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.442">closeQuietly</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Writer.html?is-external=true" title="class or interface in java.io">Writer</a>&nbsp;w)</pre>
 <div class="block">Close writer and ignore any exceptions.
 
  <p>
@@ -783,7 +878,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>closeQuietly</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.399">closeQuietly</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;o)</pre>
+<pre>public static&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.454">closeQuietly</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;o)</pre>
 <div class="block">Quietly close all specified input streams, output streams, readers, and writers.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -797,7 +892,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>flush</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.420">flush</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;o)
+<pre>public static&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.475">flush</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;o)
                   throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Flushes multiple output streams and writers in a single call.</div>
 <dl>
@@ -815,7 +910,7 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 <ul class="blockList">
 <li class="blockList">
 <h4>close</h4>
-<pre>public static&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.444">close</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;o)
+<pre>public static&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.499">close</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;o)
                   throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Close all specified input streams, output streams, readers, and writers.</div>
 <dl>
@@ -827,13 +922,42 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
 </dl>
 </li>
 </ul>
+<a name="toReader-java.lang.Object-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>toReader</h4>
+<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/io/Reader.html?is-external=true" title="class or interface in java.io">Reader</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.537">toReader</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
+                       throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
+<div class="block">Converts an object to a <code>Reader</code>.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>o</code> - The object to convert to a reader.
+   Can be any of the following:
+   <ul>
+      <li><a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io"><code>InputStream</code></a>
+      <li><a href="http://docs.oracle.com/javase/7/docs/api/java/io/Reader.html?is-external=true" title="class or interface in java.io"><code>Reader</code></a>
+      <li><a href="http://docs.oracle.com/javase/7/docs/api/java/io/File.html?is-external=true" title="class or interface in java.io"><code>File</code></a>
+      <li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang"><code>CharSequence</code></a>
+      <li><code><jk>byte</jk>[]</code>
+      <li><code><jk>null</jk></code> - Returns <jk>null</jk>.
+   </ul></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>The object converted to a reader.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - If file could not be read.</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - If invalid object passed in.</dd>
+</dl>
+</li>
+</ul>
 <a name="toInputStream-java.lang.Object-">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>toInputStream</h4>
-<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.482">toInputStream</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
+<pre>public static&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/internal/IOUtils.html#line.571">toInputStream</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o)
                                  throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
 <div class="block">Converts an object to an <code>InputStream</code>.</div>
 <dl>
@@ -846,12 +970,13 @@ extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?
       <li><a href="http://docs.oracle.com/javase/7/docs/api/java/io/File.html?is-external=true" title="class or interface in java.io"><code>File</code></a>
       <li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/CharSequence.html?is-external=true" title="class or interface in java.lang"><code>CharSequence</code></a> - Converted to UTF-8 stream.
       <li><code><jk>byte</jk>[]</code>
-      <li><code><jk>null</jk></code> - Returns null.
+      <li><code><jk>null</jk></code> - Returns <jk>null</jk>.
    </ul></dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The object converted to an input stream.</dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - If invalid object passed in or file could not be read.</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - If file could not be read.</dd>
+<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - If invalid object passed in.</dd>
 </dl>
 </li>
 </ul>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/jena/RdfParser.N3.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/jena/RdfParser.N3.html b/content/site/apidocs/org/apache/juneau/jena/RdfParser.N3.html
index 2edd0d2..db5f6e8 100644
--- a/content/site/apidocs/org/apache/juneau/jena/RdfParser.N3.html
+++ b/content/site/apidocs/org/apache/juneau/jena/RdfParser.N3.html
@@ -126,8 +126,7 @@
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation">@Consumes</a>(<a href="../../../../org/apache/juneau/annotation/Consumes.html#value--">value</a>="text/n3")
-public static class <a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.108">RdfParser.N3</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.102">RdfParser.N3</a>
 extends <a href="../../../../org/apache/juneau/jena/RdfParser.html" title="class in org.apache.juneau.jena">RdfParser</a></pre>
 <div class="block">Consumes N3 input</div>
 </li>
@@ -217,7 +216,7 @@ extends <a href="../../../../org/apache/juneau/jena/RdfParser.html" title="class
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.parser.<a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser">Parser</a></h3>
-<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-java.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apac
 he/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
+<code><a href="../../../../org/apache/juneau/parser/Parser.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-j
 ava.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -253,7 +252,7 @@ extends <a href="../../../../org/apache/juneau/jena/RdfParser.html" title="class
 <ul class="blockListLast">
 <li class="blockList">
 <h4>N3</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfParser.N3.html#line.115">N3</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfParser.N3.html#line.109">N3</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/jena/RdfParser.NTriple.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/jena/RdfParser.NTriple.html b/content/site/apidocs/org/apache/juneau/jena/RdfParser.NTriple.html
index 7208db6..7dd971d 100644
--- a/content/site/apidocs/org/apache/juneau/jena/RdfParser.NTriple.html
+++ b/content/site/apidocs/org/apache/juneau/jena/RdfParser.NTriple.html
@@ -126,8 +126,7 @@
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation">@Consumes</a>(<a href="../../../../org/apache/juneau/annotation/Consumes.html#value--">value</a>="text/n-triple")
-public static class <a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.80">RdfParser.NTriple</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/jena/RdfParser.html#line.76">RdfParser.NTriple</a>
 extends <a href="../../../../org/apache/juneau/jena/RdfParser.html" title="class in org.apache.juneau.jena">RdfParser</a></pre>
 <div class="block">Consumes N-Triple input</div>
 </li>
@@ -217,7 +216,7 @@ extends <a href="../../../../org/apache/juneau/jena/RdfParser.html" title="class
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.parser.<a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser">Parser</a></h3>
-<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-java.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apac
 he/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
+<code><a href="../../../../org/apache/juneau/parser/Parser.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-j
 ava.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -253,7 +252,7 @@ extends <a href="../../../../org/apache/juneau/jena/RdfParser.html" title="class
 <ul class="blockListLast">
 <li class="blockList">
 <h4>NTriple</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfParser.NTriple.html#line.87">NTriple</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/jena/RdfParser.NTriple.html#line.83">NTriple</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>


[41/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.html b/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.html
index 7207ae8..fc95579 100644
--- a/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.html
+++ b/content/site/apidocs/org/apache/juneau/xml/XmlSerializer.html
@@ -127,8 +127,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="text/xml")
-public class <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.125">XmlSerializer</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.123">XmlSerializer</a>
 extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html" title="class in org.apache.juneau.serializer">WriterSerializer</a></pre>
 <div class="block">Serializes POJO models to XML.
 
@@ -354,6 +353,13 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <div class="block">Constructor.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/xml/XmlSerializer.html#XmlSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">XmlSerializer</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+             <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+             <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</code>
+<div class="block">Constructor.</div>
+</td>
+</tr>
 </table>
 </li>
 </ul>
@@ -401,7 +407,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -437,7 +443,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a> <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.128">DEFAULT</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a> <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.126">DEFAULT</a></pre>
 <div class="block">Default serializer without namespaces.</div>
 </li>
 </ul>
@@ -447,7 +453,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_SQ</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a> <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.131">DEFAULT_SQ</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a> <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.129">DEFAULT_SQ</a></pre>
 <div class="block">Default serializer without namespaces, with single quotes.</div>
 </li>
 </ul>
@@ -457,7 +463,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_SQ_READABLE</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a> <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.134">DEFAULT_SQ_READABLE</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a> <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.132">DEFAULT_SQ_READABLE</a></pre>
 <div class="block">Default serializer without namespaces, with single quotes, whitespace added.</div>
 </li>
 </ul>
@@ -467,7 +473,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_NS</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a> <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.137">DEFAULT_NS</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a> <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.135">DEFAULT_NS</a></pre>
 <div class="block">Default serializer, all default settings.</div>
 </li>
 </ul>
@@ -477,7 +483,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_NS_SQ</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a> <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.140">DEFAULT_NS_SQ</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a> <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.138">DEFAULT_NS_SQ</a></pre>
 <div class="block">Default serializer, single quotes.</div>
 </li>
 </ul>
@@ -487,7 +493,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DEFAULT_NS_SQ_READABLE</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a> <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.143">DEFAULT_NS_SQ_READABLE</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a> <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.141">DEFAULT_NS_SQ_READABLE</a></pre>
 <div class="block">Default serializer, single quotes, whitespace added.</div>
 </li>
 </ul>
@@ -502,14 +508,43 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <a name="XmlSerializer-org.apache.juneau.PropertyStore-">
 <!--   -->
 </a>
+<ul class="blockList">
+<li class="blockList">
+<h4>XmlSerializer</h4>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.220">XmlSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<div class="block">Constructor.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+</dl>
+</li>
+</ul>
+<a name="XmlSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">
+<!--   -->
+</a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>XmlSerializer</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.222">XmlSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.245">XmlSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                     <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+                     <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+<dd><code>produces</code> - The media type that this serializer produces.</dd>
+<dd><code>accept</code> - The accept media types that the serializer can handle.
+   <p>
+   Can contain meta-characters per the <code>media-type</code> specification of
+   <a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1">RFC2616/14.1</a>
+   <p>
+   If empty, then assumes the only media type supported is <code>produces</code>.
+   <p>
+   For example, if this serializer produces <js>"application/json"</js> but should handle media types of
+   <js>"application/json"</js> and <js>"text/json"</js>, then the arguments should be:
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"application/json"</js>, <js>"text/json"</js>);</code>
+   <br>...or...
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"*&#8203;/json"</js>);</code></dd>
 </dl>
 </li>
 </ul>
@@ -527,7 +562,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>builder</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/xml/XmlSerializerBuilder.html" title="class in org.apache.juneau.xml">XmlSerializerBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.228">builder</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/xml/XmlSerializerBuilder.html" title="class in org.apache.juneau.xml">XmlSerializerBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.251">builder</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/CoreObject.html#builder--">CoreObject</a></code></span></div>
 <div class="block">Creates a new builder class for this object so that a new object can be created that expands upon the current
  object's settings.</div>
@@ -545,7 +580,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>getSchemaSerializer</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.237">getSchemaSerializer</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.260">getSchemaSerializer</a>()</pre>
 <div class="block">Returns the schema serializer based on the settings of this serializer.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -559,7 +594,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.244">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/xml/XmlSerializer.html#line.267">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession-org.apache.juneau.serializer.SerializerSessionArgs-">Serializer</a></code></span></div>
 <div class="block">Create the session object used for actual serialization of objects.</div>
 <dl>
@@ -569,8 +604,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and serializer
-   contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   contexts.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The new session object.
    <br>Note that you must call <a href="../../../../org/apache/juneau/BeanSession.html#close--"><code>BeanSession.close()</code></a> on this object to perform any necessary

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/xml/XmlSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/xml/XmlSerializerSession.html b/content/site/apidocs/org/apache/juneau/xml/XmlSerializerSession.html
index dbd52d7..67594b3 100644
--- a/content/site/apidocs/org/apache/juneau/xml/XmlSerializerSession.html
+++ b/content/site/apidocs/org/apache/juneau/xml/XmlSerializerSession.html
@@ -132,7 +132,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre>public class <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializerSession.html#line.40">XmlSerializerSession</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/xml/XmlSerializerSession.html#line.41">XmlSerializerSession</a>
 extends <a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a></pre>
 <div class="block">Session object that lives for the duration of a single use of <a href="../../../../org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml"><code>XmlSerializer</code></a>.
 
@@ -306,8 +306,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializerSessio
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and
-   serializer contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   serializer contexts.</dd>
 </dl>
 </li>
 </ul>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/overview-summary.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/overview-summary.html b/content/site/apidocs/overview-summary.html
index dfaea93..4c62fee 100644
--- a/content/site/apidocs/overview-summary.html
+++ b/content/site/apidocs/overview-summary.html
@@ -442,8 +442,10 @@
       <li><p><a class='doclink' href='#Core.Transforms'>Transforms</a></p>
       <ol>
          <li><p><a class='doclink' href='#Core.PojoSwaps'>PojoSwaps</a></p>
+         <li><p><a class='doclink' href='#Core.PojoAnnotation'>@Pojo annotation</a></p>
          <li><p><a class='doclink' href='#Core.SwapMethods'>Swap methods</a></p>
          <li><p><a class='doclink' href='#Core.BeanFilters'>BeanFilters and @Bean annotations</a></p>
+         <li><p><a class='doclink' href='#Core.SerializingReadersAndInputStreams'>Serializing Readers and InputStreams</a></p>
       </ol>
       <li><p><a class='doclink' href='#Core.BeanDictionaries'>Bean Name and Dictionaries</a></p>
       <ol>
@@ -1273,8 +1275,35 @@
       </div>
    
       <!-- ======================================================================================================== -->
+      <a id="Core.PojoAnnotation"></a>
+      <h4 class='topic' onclick='toggle(this)'>2.6.2 - @Pojo annotation</h4>
+      <div class='topic'>
+         <p>
+            <a href="org/apache/juneau/annotation/Pojo.html" title="annotation in org.apache.juneau.annotation"><code>@Pojo</code></a> can be used to associate a swap class using an 
+            annotation.
+            This is often cleaner than using the builder <code>pojoSwaps()</code> method since you can keep
+            your swap class near your POJO class. 
+         </p>
+         <p class='bcode'>
+   <ja>@Pojo</ja>(swap=MyPojoSwap.<jk>class</jk>)
+   <jk>public class</jk> MyPojo {
+      ...
+   }
+   
+   <jc>// Sample swap for converting MyPojo classes to a simple string.</jc>
+   <jk>public class</jk> MyPojoSwap <jk>extends</jk> PojoSwap&lt;MyPojo,String&gt; {
+      
+      <ja>@Override</ja>
+      <jk>public</jk> String swap(BeanSession session, MyPojo o) {
+         <jk>return</jk> o.toSomeSerializableForm();
+      }
+   }
+         </p>
+      </div>
+
+      <!-- ======================================================================================================== -->
       <a id="Core.SwapMethods"></a>
-      <h4 class='topic' onclick='toggle(this)'>2.6.2 - Swap methods</h4>
+      <h4 class='topic' onclick='toggle(this)'>2.6.3 - Swap methods</h4>
       <div class='topic'>
          <p>
             Various methods can be defined on a class directly to affect how it gets serialized.
@@ -1417,7 +1446,7 @@
 
       <!-- ======================================================================================================== -->
       <a id="Core.BeanFilters"></a>
-      <h4 class='topic' onclick='toggle(this)'>2.6.3 - BeanFilters and @Bean annotations</h4>
+      <h4 class='topic' onclick='toggle(this)'>2.6.4 - BeanFilters and @Bean annotations</h4>
       <div class='topic'>
          <p>
             <a href="org/apache/juneau/transform/BeanFilter.html" title="class in org.apache.juneau.transform"><code>BeanFilters</code></a> are used to control aspects of how beans are 
@@ -1499,6 +1528,55 @@
          </ul>
       </div>
 
+      <!-- ======================================================================================================== -->
+      <a id="Core.SerializingReadersAndInputStreams"></a>
+      <h4 class='topic' onclick='toggle(this)'>2.6.5 - Serializing Readers and InputStreams</h4>
+      <div class='topic'>
+         <p>
+            Juneau serializers treat instances of Readers and InputStreams special by simply serializing their
+            contents directly to the output stream or writer.
+            This allows you to embed fully customized serializer output.
+         </p>
+         <p class='bcode'>
+   <jk>public class</jk> MyBean {
+      <jk>public</jk> Reader f1 = <jk>new</jk> StringReader(<js>"{'foo':'bar'}"</js>); 
+   }  
+   
+   <jc>// Produces "{f1:{'foo':'bar'}}"</jc>
+   String json = JsonSerializer.<jsf>DEFAULT_LAX</jsf>.toString(<jk>new</jk> MyBean());
+         </p>        
+         <p>
+            Note that if you're serializing Readers and InputStreams, it's up to you to make sure you're producing
+            valid output (in this case JSON).
+         </p>
+         <p>
+            A more typical scenario where this is useful is by using swaps to convert POJOs to Readers whose 
+            contents are determined via the <a href="org/apache/juneau/BeanSession.html#getMediaType--"><code>BeanSession.getMediaType()</code></a> method.
+            <br>In the following example, we're customizing the JSON output for a particular bean type, but leaving
+            all other renditions as-is:
+         </p>        
+         <p class='bcode'>
+   <ja>@Pojo</ja>(swap=MyBeanSwap.<jk>class</jk>)
+   <jk>public class</jk> MyBean {...}
+   
+   <jk>public class</jk> MyBeanSwap <jk>extends</jk> PojoSwap&lt;MyBean,Object&gt; {
+      <jk>public</jk> Object swap(BeanSession session, MyPojo o) <jk>throws</jk> Exception {
+         MediaType mt = session.getMediaType();
+         <jk>if</jk> (mt.hasSubType(<js>"json"</js>))
+            <jk>return new</jk> StringReader(<js>"{myPojo:'foobar'}"</js>);  <jc>// Custom JSON output</jc>
+         <jk>return</jk> o;  <jc>// Otherwise serialize it as a normal bean</jc>
+      }
+   }
+         </p>  
+         <ul class='doctree'>
+            <li class='info'>
+               Due to the nature of the RDF serializers, Readers and InputStreams are serialized as literals,
+               not as RDF text.
+               This is due to the fact that the RDF serializers use a DOM for serialization, so we don't have
+               access to the underlying stream.
+         </ul>
+      </div>
+      
    </div>
    
    <!-- ======================================================================================================== -->
@@ -1746,8 +1824,8 @@
             <td style='text-align:center'>2a</td>
             <td>
                <b>With standard keys/values</b>
-               <br>Map keys are group [1, 4a, 5a] objects.
-               <br>Map, Collection, and array values are group [1, 2, 3ac, 4a, 5a] objects.  
+               <br>Map keys are group [1, 4a, 6a] objects.
+               <br>Map, Collection, and array values are group [1, 2, 3ac, 4a, 6a] objects.  
             </td>
             <td>
                <ul class='normal'>
@@ -1764,8 +1842,8 @@
             <td style='text-align:center'>2b</td>
             <td>
                <b>With non-standard keys/values</b>
-               <br>Map keys are group [2, 3, 4b, 5b, 6] objects.
-               <br>Map, Collection, and array values are group [3b, 4b, 5b, 6] objects.   
+               <br>Map keys are group [2, 3, 4b, 5, 6b, 7] objects.
+               <br>Map, Collection, and array values are group [3b, 4b, 5, 6b, 7] objects.   
             </td>
             <td>
                <ul class='normal'>
@@ -1789,7 +1867,7 @@
                <b>With standard properties</b>
                <br>These are beans that have no-arg constructors and one or more properties defined by public getter 
                and setter methods or public fields.
-               <br>Property values are group [1, 2, 3ac, 4a, 5a] objects.
+               <br>Property values are group [1, 2, 3ac, 4a, 6a] objects.
             </td>
             <td>&nbsp;</td>
             <td style='background-color:lightgreen;text-align:center'><b>yes</b></td>
@@ -1800,7 +1878,7 @@
             <td>
                <b>With non-standard properties or not true beans</b>
                <br>These include true beans that have no-arg constructors and one or more properties defined by getter 
-               and setter methods or properties, but property types include group [3b, 4b, 5b, 6] objects.
+               and setter methods or properties, but property types include group [3b, 4b, 5, 6b, 7] objects.
                <br>This also includes classes that look like beans but aren't true beans.  
                For example, classes that have getters but not setters, or classes without no-arg constructors. 
             </td>
@@ -1812,7 +1890,7 @@
             <td style='text-align:center'>3c</td>
             <td>
                <b>Virtual beans</b>
-               <br>These are unimplemented bean interfaces with properties of type [1, 2, 3ac, 4a, 5a] objects.
+               <br>These are unimplemented bean interfaces with properties of type [1, 2, 3ac, 4a, 6a] objects.
                <br>Parsers will automatically  create interface proxies on top of BeanMap instances.  
             </td>
             <td>&nbsp;</td>
@@ -1868,6 +1946,22 @@
          <tr class='dark bb' style='background-color:lightyellow'>
             <td style='text-align:center'>5</td>
             <td>
+               <b>Readers and InputStreams</b>
+               <br>Contents are serialized directly to the output stream or writer.
+            </td>
+            <td>              
+               <ul class='normal'>
+                  <li><code>FileInputStream</code>
+                  <li><code>StringReader</code>
+               </ul>
+            </td>
+            <td style='background-color:lightgreen;text-align:center'><b>yes</b></td>
+            <td style='background-color:salmon;text-align:center'><b>no</b></td>
+         </tr>    
+
+         <tr class='dark bb' style='background-color:lightyellow'>
+            <td style='text-align:center'>6</td>
+            <td>
                <b>Non-serializable objects with standard methods for converting to a serializable form</b><br>
             </td>
             <td>&nbsp;</td>
@@ -1875,7 +1969,7 @@
             <td>&nbsp;</td>
          </tr>    
          <tr class='light bb' style='background-color:lightyellow'>
-            <td style='text-align:center'>5a</td>
+            <td style='text-align:center'>6a</td>
             <td>
                Classes with a method that converts it to a serializable form:
                <ul>
@@ -1913,7 +2007,7 @@
             <td style='background-color:lightgreen;text-align:center'><b>yes</b></td>
          </tr>    
          <tr class='light bb' style='background-color:lightyellow'>
-            <td style='text-align:center'>5b</td>
+            <td style='text-align:center'>6b</td>
             <td>
                Classes that only have a method to convert to a serializable form:
                <ul>
@@ -1927,7 +2021,7 @@
             <td style='background-color:salmon;text-align:center'><b>no</b></td>
          </tr>       
          <tr class='dark' style='background-color:lightyellow'>
-            <td style='text-align:center'>6</td>
+            <td style='text-align:center'>7</td>
             <td>
                <b>All other objects</b>
                <br>Anything that doesn't fall into one of the groups above are simply converted to <code>Strings</code> 
@@ -7249,6 +7343,29 @@
          <li>
             Serializers can now serialize to <a href="http://docs.oracle.com/javase/7/docs/api/java/util/StringBuilder.html?is-external=true" title="class or interface in java.util"><code>StringBuilders</code></a>.
          <li>
+            Serializers now serialize the contents of <a href="http://docs.oracle.com/javase/7/docs/api/java/io/Reader.html?is-external=true" title="class or interface in java.io"><code>Readers</code></a> and <a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io"><code>InputStreams</code></a>
+            directly to the output stream or writer.
+            <br>When used with conjunction with <code>PojoSwaps</code>, this can be used to provide customized
+            output for specific content types.
+            <p class='bcode'>
+   <ja>@Pojo</ja>(swap=MyBeanSwap.<jk>class</jk>)
+   <jk>public class</jk> MyBean {...}
+   
+   <jk>public class</jk> MyBeanSwap <jk>extends</jk> PojoSwap&lt;MyBean,Object&gt; {
+      <jk>public</jk> Object swap(BeanSession session, MyPojo o) <jk>throws</jk> Exception {
+         MediaType mt = session.getMediaType();
+         <jk>if</jk> (mt.hasSubType(<js>"json"</js>))
+            <jk>return new</jk> StringReader(<js>"{foo:'bar'}"</js>);  <jc>// Custom JSON output</jc>
+         <jk>return</jk> o; <jc>// Otherwise treat as normal bean</jc>
+      }
+   }
+   
+   <jc>// Produces "{foo:'bar'}"</jc>
+   String json = JsonSerializer.<jsf>DEFAULT_LAX</jsf>.toString(<jk>new</jk> MyBean());
+            </p>
+            <br>This feature helps with the implementation of language-agnostic template support such as for
+            using FreeMaker to serialize POJOs to HTML.
+         <li>
             <a href="org/apache/juneau/serializer/SerializerSession.html" title="class in org.apache.juneau.serializer"><code>SerializerSession</code></a> and <a href="org/apache/juneau/parser/ParserSession.html" title="class in org.apache.juneau.parser"><code>ParserSession</code></a>
             objects are now reusable if used within the same thread.
             <p class='bcode'>
@@ -7308,6 +7425,18 @@
                <li><a href="org/apache/juneau/utils/PojoRest.html#getWithDefault-java.lang.String-T-java.lang.Class-"><code>getWithDefault(String,Object,Class)</code></a>
                <li><a href="org/apache/juneau/utils/PojoRest.html#getWithDefault-java.lang.String-T-java.lang.reflect.Type-java.lang.reflect.Type...-"><code>getWithDefault(String,Object,Type,Type...)</code></a>
             </ul>
+         <li>
+            Fixed bug where <a href="org/apache/juneau/BeanSession.html#getMediaType--"><code>BeanSession.getMediaType()</code></a> wasn't returning <jk>.
+         <li>
+            Eliminated the <ja>@Consumes</ja> and <ja>@Produces</ja> annotations.
+            <br>The supported media types are now passed in through the constructors.
+            <br>This was changed to eliminate a performance issue where a field could not be set as final because
+            the call to <code>getClass()</code> to retrieve the annotation value could not be called before calling
+            the <code><jk>super</jk>()</code> method.
+         <li>
+            New doc: <a class='doclink' href='#Core.PojoAnnotation'>2.6.2 - @Pojo annotation</a>
+         <li>
+            New doc: <a class='doclink' href='#Core.SerializingReadersAndInputStreams'>2.6.5 - Serializing Readers and InputStreams</a>
       </ul>
       
       <h6 class='topic'>org.apache.juneau.rest</h6>
@@ -10880,11 +11009,11 @@
             Refer to <a class='doclink' href='org/apache/juneau/rest/jaxrs/package-summary.html#TOC'>org.apache.juneau.rest.jaxrs</a> for information.
          </li>
          <li>
-            New <a href="org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation"><code>@Produces</code></a> annotation in place of <code>ISerializer.getMediaTypes()</code> for specifying what media types a serializer produces.<br>
+            New <code><del>@Produces</del></code> annotation in place of <code>ISerializer.getMediaTypes()</code> for specifying what media types a serializer produces.<br>
             Available when subclassing from <a href="org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer"><code>Serializer</code></a>.
          </li>
          <li>
-            New <a href="org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation"><code>@Consumes</code></a> annotation in place of <code>IParser.getMediaTypes()</code> for specifying what media types a parser consumes.<br>
+            New <code><del>@Consumes</del></code> annotation in place of <code>IParser.getMediaTypes()</code> for specifying what media types a parser consumes.<br>
             Available when subclassing from <a href="org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser"><code>Parser</code></a>.
          </li>
       </ul>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/overview-tree.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/overview-tree.html b/content/site/apidocs/overview-tree.html
index 2e8b9f8..28648ff 100644
--- a/content/site/apidocs/overview-tree.html
+++ b/content/site/apidocs/overview-tree.html
@@ -1422,12 +1422,10 @@
 <ul>
 <li type="circle">org.apache.juneau.annotation.<a href="org/apache/juneau/annotation/URI.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">URI</span></a> (implements java.lang.annotation.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Annotation.html?is-external=true" title="class or interface in java.lang.annotation">Annotation</a>)</li>
 <li type="circle">org.apache.juneau.annotation.<a href="org/apache/juneau/annotation/ThreadSafe.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">ThreadSafe</span></a> (implements java.lang.annotation.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Annotation.html?is-external=true" title="class or interface in java.lang.annotation">Annotation</a>)</li>
-<li type="circle">org.apache.juneau.annotation.<a href="org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Produces</span></a> (implements java.lang.annotation.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Annotation.html?is-external=true" title="class or interface in java.lang.annotation">Annotation</a>)</li>
 <li type="circle">org.apache.juneau.annotation.<a href="org/apache/juneau/annotation/Pojo.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Pojo</span></a> (implements java.lang.annotation.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Annotation.html?is-external=true" title="class or interface in java.lang.annotation">Annotation</a>)</li>
 <li type="circle">org.apache.juneau.annotation.<a href="org/apache/juneau/annotation/ParentProperty.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">ParentProperty</span></a> (implements java.lang.annotation.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Annotation.html?is-external=true" title="class or interface in java.lang.annotation">Annotation</a>)</li>
 <li type="circle">org.apache.juneau.annotation.<a href="org/apache/juneau/annotation/Overrideable.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Overrideable</span></a> (implements java.lang.annotation.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Annotation.html?is-external=true" title="class or interface in java.lang.annotation">Annotation</a>)</li>
 <li type="circle">org.apache.juneau.annotation.<a href="org/apache/juneau/annotation/NameProperty.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">NameProperty</span></a> (implements java.lang.annotation.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Annotation.html?is-external=true" title="class or interface in java.lang.annotation">Annotation</a>)</li>
-<li type="circle">org.apache.juneau.annotation.<a href="org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Consumes</span></a> (implements java.lang.annotation.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Annotation.html?is-external=true" title="class or interface in java.lang.annotation">Annotation</a>)</li>
 <li type="circle">org.apache.juneau.annotation.<a href="org/apache/juneau/annotation/BeanProperty.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">BeanProperty</span></a> (implements java.lang.annotation.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Annotation.html?is-external=true" title="class or interface in java.lang.annotation">Annotation</a>)</li>
 <li type="circle">org.apache.juneau.annotation.<a href="org/apache/juneau/annotation/BeanParam.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">BeanParam</span></a> (implements java.lang.annotation.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Annotation.html?is-external=true" title="class or interface in java.lang.annotation">Annotation</a>)</li>
 <li type="circle">org.apache.juneau.annotation.<a href="org/apache/juneau/annotation/BeanIgnore.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">BeanIgnore</span></a> (implements java.lang.annotation.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Annotation.html?is-external=true" title="class or interface in java.lang.annotation">Annotation</a>)</li>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/annotation/Consumes.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/annotation/Consumes.html b/content/site/apidocs/src-html/org/apache/juneau/annotation/Consumes.html
deleted file mode 100644
index 09b7e5b..0000000
--- a/content/site/apidocs/src-html/org/apache/juneau/annotation/Consumes.html
+++ /dev/null
@@ -1,144 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<html lang="en">
-<head>
-<title>Source code</title>
-<link rel="stylesheet" type="text/css" href="../../../../../javadoc.css" title="Style">
-</head>
-<body>
-<div class="sourceContainer">
-<pre><span class="sourceLineNo">001</span>// ***************************************************************************************************************************<a name="line.1"></a>
-<span class="sourceLineNo">002</span>// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *<a name="line.2"></a>
-<span class="sourceLineNo">003</span>// * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *<a name="line.3"></a>
-<span class="sourceLineNo">004</span>// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *<a name="line.4"></a>
-<span class="sourceLineNo">005</span>// * with the License.  You may obtain a copy of the License at                                                              *<a name="line.5"></a>
-<span class="sourceLineNo">006</span>// *                                                                                                                         *<a name="line.6"></a>
-<span class="sourceLineNo">007</span>// *  http://www.apache.org/licenses/LICENSE-2.0                                                                             *<a name="line.7"></a>
-<span class="sourceLineNo">008</span>// *                                                                                                                         *<a name="line.8"></a>
-<span class="sourceLineNo">009</span>// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *<a name="line.9"></a>
-<span class="sourceLineNo">010</span>// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *<a name="line.10"></a>
-<span class="sourceLineNo">011</span>// * specific language governing permissions and limitations under the License.                                              *<a name="line.11"></a>
-<span class="sourceLineNo">012</span>// ***************************************************************************************************************************<a name="line.12"></a>
-<span class="sourceLineNo">013</span>package org.apache.juneau.annotation;<a name="line.13"></a>
-<span class="sourceLineNo">014</span><a name="line.14"></a>
-<span class="sourceLineNo">015</span>import static java.lang.annotation.ElementType.*;<a name="line.15"></a>
-<span class="sourceLineNo">016</span>import static java.lang.annotation.RetentionPolicy.*;<a name="line.16"></a>
-<span class="sourceLineNo">017</span><a name="line.17"></a>
-<span class="sourceLineNo">018</span>import java.lang.annotation.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span><a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.parser.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span><a name="line.21"></a>
-<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * Annotation used on subclasses of {@link Parser} to identify the media types that it consumes.<a name="line.23"></a>
-<span class="sourceLineNo">024</span> *<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.25"></a>
-<span class="sourceLineNo">026</span> *<a name="line.26"></a>
-<span class="sourceLineNo">027</span> * Provides a way to define the contents of {@link Parser#getMediaTypes()} through an annotation.<a name="line.27"></a>
-<span class="sourceLineNo">028</span> *<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * &lt;p&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * The {@link Parser#getMediaTypes()} default implementation gathers the media types by looking for this annotation.<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * It should be noted that this annotation is optional and that the {@link Parser#getMediaTypes()} method can be<a name="line.31"></a>
-<span class="sourceLineNo">032</span> * overridden by subclasses to return the media types programmatically.<a name="line.32"></a>
-<span class="sourceLineNo">033</span> *<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *<a name="line.35"></a>
-<span class="sourceLineNo">036</span> * Standard example:<a name="line.36"></a>
-<span class="sourceLineNo">037</span> * &lt;p class='bcode'&gt;<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;ja&gt;@Consumes&lt;/ja&gt;(&lt;js&gt;"application/json,text/json"&lt;/js&gt;)<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *    &lt;jk&gt;public class&lt;/jk&gt; JsonParser &lt;jk&gt;extends&lt;/jk&gt; ReaderParser {...}<a name="line.39"></a>
-<span class="sourceLineNo">040</span> * &lt;/p&gt;<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *<a name="line.41"></a>
-<span class="sourceLineNo">042</span> * &lt;p&gt;<a name="line.42"></a>
-<span class="sourceLineNo">043</span> * The media types can also be &lt;code&gt;media-range&lt;/code&gt; values per<a name="line.43"></a>
-<span class="sourceLineNo">044</span> * &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;.<a name="line.44"></a>
-<span class="sourceLineNo">045</span> *<a name="line.45"></a>
-<span class="sourceLineNo">046</span> * &lt;p class='bcode'&gt;<a name="line.46"></a>
-<span class="sourceLineNo">047</span> *    &lt;jc&gt;// Consumes any text&lt;/jc&gt;<a name="line.47"></a>
-<span class="sourceLineNo">048</span> *    &lt;ja&gt;@Consumes&lt;/ja&gt;(&lt;js&gt;"text\/*"&lt;/js&gt;)<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *    &lt;jk&gt;public class&lt;/jk&gt; AnythingParser &lt;jk&gt;extends&lt;/jk&gt; ReaderParser {...}<a name="line.49"></a>
-<span class="sourceLineNo">050</span> *<a name="line.50"></a>
-<span class="sourceLineNo">051</span> *    &lt;jc&gt;// Consumes anything&lt;/jc&gt;<a name="line.51"></a>
-<span class="sourceLineNo">052</span> *    &lt;ja&gt;@Consumes&lt;/ja&gt;(&lt;js&gt;"*\/*"&lt;/js&gt;)<a name="line.52"></a>
-<span class="sourceLineNo">053</span> *    &lt;jk&gt;public class&lt;/jk&gt; AnythingParser &lt;jk&gt;extends&lt;/jk&gt; ReaderParser {...}<a name="line.53"></a>
-<span class="sourceLineNo">054</span> * &lt;/p&gt;<a name="line.54"></a>
-<span class="sourceLineNo">055</span> */<a name="line.55"></a>
-<span class="sourceLineNo">056</span>@Documented<a name="line.56"></a>
-<span class="sourceLineNo">057</span>@Target(TYPE)<a name="line.57"></a>
-<span class="sourceLineNo">058</span>@Retention(RUNTIME)<a name="line.58"></a>
-<span class="sourceLineNo">059</span>@Inherited<a name="line.59"></a>
-<span class="sourceLineNo">060</span>public @interface Consumes {<a name="line.60"></a>
-<span class="sourceLineNo">061</span><a name="line.61"></a>
-<span class="sourceLineNo">062</span>   /**<a name="line.62"></a>
-<span class="sourceLineNo">063</span>    * A comma-delimited list of media types that the parser can handle.<a name="line.63"></a>
-<span class="sourceLineNo">064</span>    *<a name="line.64"></a>
-<span class="sourceLineNo">065</span>    * &lt;p&gt;<a name="line.65"></a>
-<span class="sourceLineNo">066</span>    * Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.66"></a>
-<span class="sourceLineNo">067</span>    * &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.67"></a>
-<span class="sourceLineNo">068</span>    *<a name="line.68"></a>
-<span class="sourceLineNo">069</span>    * @return The media types that the parser can handle.<a name="line.69"></a>
-<span class="sourceLineNo">070</span>    */<a name="line.70"></a>
-<span class="sourceLineNo">071</span>   String value() default "";<a name="line.71"></a>
-<span class="sourceLineNo">072</span>}<a name="line.72"></a>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-</pre>
-</div>
-</body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/annotation/Produces.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/annotation/Produces.html b/content/site/apidocs/src-html/org/apache/juneau/annotation/Produces.html
deleted file mode 100644
index 85dc4be..0000000
--- a/content/site/apidocs/src-html/org/apache/juneau/annotation/Produces.html
+++ /dev/null
@@ -1,157 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<html lang="en">
-<head>
-<title>Source code</title>
-<link rel="stylesheet" type="text/css" href="../../../../../javadoc.css" title="Style">
-</head>
-<body>
-<div class="sourceContainer">
-<pre><span class="sourceLineNo">001</span>// ***************************************************************************************************************************<a name="line.1"></a>
-<span class="sourceLineNo">002</span>// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *<a name="line.2"></a>
-<span class="sourceLineNo">003</span>// * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *<a name="line.3"></a>
-<span class="sourceLineNo">004</span>// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *<a name="line.4"></a>
-<span class="sourceLineNo">005</span>// * with the License.  You may obtain a copy of the License at                                                              *<a name="line.5"></a>
-<span class="sourceLineNo">006</span>// *                                                                                                                         *<a name="line.6"></a>
-<span class="sourceLineNo">007</span>// *  http://www.apache.org/licenses/LICENSE-2.0                                                                             *<a name="line.7"></a>
-<span class="sourceLineNo">008</span>// *                                                                                                                         *<a name="line.8"></a>
-<span class="sourceLineNo">009</span>// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *<a name="line.9"></a>
-<span class="sourceLineNo">010</span>// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *<a name="line.10"></a>
-<span class="sourceLineNo">011</span>// * specific language governing permissions and limitations under the License.                                              *<a name="line.11"></a>
-<span class="sourceLineNo">012</span>// ***************************************************************************************************************************<a name="line.12"></a>
-<span class="sourceLineNo">013</span>package org.apache.juneau.annotation;<a name="line.13"></a>
-<span class="sourceLineNo">014</span><a name="line.14"></a>
-<span class="sourceLineNo">015</span>import static java.lang.annotation.ElementType.*;<a name="line.15"></a>
-<span class="sourceLineNo">016</span>import static java.lang.annotation.RetentionPolicy.*;<a name="line.16"></a>
-<span class="sourceLineNo">017</span><a name="line.17"></a>
-<span class="sourceLineNo">018</span>import java.lang.annotation.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span><a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span><a name="line.21"></a>
-<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * Annotation used on subclasses of {@link Serializer} to identify the media types that it produces.<a name="line.23"></a>
-<span class="sourceLineNo">024</span> *<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.25"></a>
-<span class="sourceLineNo">026</span> *<a name="line.26"></a>
-<span class="sourceLineNo">027</span> * Provides a way to define the contents of {@link Serializer#getMediaTypes()} through an annotation.<a name="line.27"></a>
-<span class="sourceLineNo">028</span> *<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * &lt;p&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * The {@link Serializer#getMediaTypes()} default implementation gathers the media types by looking for this annotation.<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * &lt;br&gt;It should be noted that this annotation is optional and that the {@link Serializer#getMediaTypes()} method can<a name="line.31"></a>
-<span class="sourceLineNo">032</span> * be overridden by subclasses to return the media types programmatically.<a name="line.32"></a>
-<span class="sourceLineNo">033</span> *<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *<a name="line.35"></a>
-<span class="sourceLineNo">036</span> * Standard example:<a name="line.36"></a>
-<span class="sourceLineNo">037</span> * &lt;p class='bcode'&gt;<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;ja&gt;@Produces&lt;/ja&gt;(&lt;js&gt;"application/json,text/json"&lt;/js&gt;)<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *    &lt;jk&gt;public class&lt;/jk&gt; JsonSerializer &lt;jk&gt;extends&lt;/jk&gt; WriterSerializer {...}<a name="line.39"></a>
-<span class="sourceLineNo">040</span> * &lt;/p&gt;<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *<a name="line.41"></a>
-<span class="sourceLineNo">042</span> * &lt;p&gt;<a name="line.42"></a>
-<span class="sourceLineNo">043</span> * The media types can also be &lt;code&gt;media-range&lt;/code&gt; values per<a name="line.43"></a>
-<span class="sourceLineNo">044</span> * &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;.<a name="line.44"></a>
-<span class="sourceLineNo">045</span> * &lt;br&gt;When meta-characters are used, you should specify the {@link #contentType()} value to indicate the real media type<a name="line.45"></a>
-<span class="sourceLineNo">046</span> * value that can be set on the &lt;code&gt;Content-Type&lt;/code&gt; response header.<a name="line.46"></a>
-<span class="sourceLineNo">047</span> *<a name="line.47"></a>
-<span class="sourceLineNo">048</span> * &lt;p class='bcode'&gt;<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *    &lt;jc&gt;// Produces any text&lt;/jc&gt;<a name="line.49"></a>
-<span class="sourceLineNo">050</span> *    &lt;ja&gt;@Produces&lt;/ja&gt;(value=&lt;js&gt;"text\/*"&lt;/js&gt;, contentType=&lt;js&gt;"text/plain"&lt;/js&gt;)<a name="line.50"></a>
-<span class="sourceLineNo">051</span> *    &lt;jk&gt;public class&lt;/jk&gt; AnythingSerializer &lt;jk&gt;extends&lt;/jk&gt; WriterSerializer {...}<a name="line.51"></a>
-<span class="sourceLineNo">052</span> *<a name="line.52"></a>
-<span class="sourceLineNo">053</span> *    &lt;jc&gt;// Produces anything&lt;/jc&gt;<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *    &lt;ja&gt;@Produces&lt;/ja&gt;(value=&lt;js&gt;"*\/*"&lt;/js&gt;, contentType=&lt;js&gt;"text/plain"&lt;/js&gt;)<a name="line.54"></a>
-<span class="sourceLineNo">055</span> *    &lt;jk&gt;public class&lt;/jk&gt; AnythingSerializer &lt;jk&gt;extends&lt;/jk&gt; WriterSerializer {...}<a name="line.55"></a>
-<span class="sourceLineNo">056</span> * &lt;/p&gt;<a name="line.56"></a>
-<span class="sourceLineNo">057</span> */<a name="line.57"></a>
-<span class="sourceLineNo">058</span>@Documented<a name="line.58"></a>
-<span class="sourceLineNo">059</span>@Target(TYPE)<a name="line.59"></a>
-<span class="sourceLineNo">060</span>@Retention(RUNTIME)<a name="line.60"></a>
-<span class="sourceLineNo">061</span>@Inherited<a name="line.61"></a>
-<span class="sourceLineNo">062</span>public @interface Produces {<a name="line.62"></a>
-<span class="sourceLineNo">063</span><a name="line.63"></a>
-<span class="sourceLineNo">064</span>   /**<a name="line.64"></a>
-<span class="sourceLineNo">065</span>    * A comma-delimited list of the media types that the serializer can handle.<a name="line.65"></a>
-<span class="sourceLineNo">066</span>    *<a name="line.66"></a>
-<span class="sourceLineNo">067</span>    * &lt;p&gt;<a name="line.67"></a>
-<span class="sourceLineNo">068</span>    * Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.68"></a>
-<span class="sourceLineNo">069</span>    * &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.69"></a>
-<span class="sourceLineNo">070</span>    *<a name="line.70"></a>
-<span class="sourceLineNo">071</span>    * @return The media types that the parser can handle.<a name="line.71"></a>
-<span class="sourceLineNo">072</span>    */<a name="line.72"></a>
-<span class="sourceLineNo">073</span>   String value() default "";<a name="line.73"></a>
-<span class="sourceLineNo">074</span><a name="line.74"></a>
-<span class="sourceLineNo">075</span>   /**<a name="line.75"></a>
-<span class="sourceLineNo">076</span>    * The content type that this serializer produces.<a name="line.76"></a>
-<span class="sourceLineNo">077</span>    *<a name="line.77"></a>
-<span class="sourceLineNo">078</span>    * &lt;p&gt;<a name="line.78"></a>
-<span class="sourceLineNo">079</span>    * Can be used to override the &lt;code&gt;Content-Type&lt;/code&gt; response type if the media types are<a name="line.79"></a>
-<span class="sourceLineNo">080</span>    * &lt;code&gt;media-ranges&lt;/code&gt; with meta-characters, or the &lt;code&gt;Content-Type&lt;/code&gt; differs from the media type for some reason.<a name="line.80"></a>
-<span class="sourceLineNo">081</span>    *<a name="line.81"></a>
-<span class="sourceLineNo">082</span>    * @return The content type that this serializer produces, or blank if no overriding value exists.<a name="line.82"></a>
-<span class="sourceLineNo">083</span>    */<a name="line.83"></a>
-<span class="sourceLineNo">084</span>   String contentType() default "";<a name="line.84"></a>
-<span class="sourceLineNo">085</span>}<a name="line.85"></a>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-</pre>
-</div>
-</body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/csv/CsvParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/csv/CsvParser.html b/content/site/apidocs/src-html/org/apache/juneau/csv/CsvParser.html
index 2e45f13..830909c 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/csv/CsvParser.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/csv/CsvParser.html
@@ -21,40 +21,38 @@
 <span class="sourceLineNo">013</span>package org.apache.juneau.csv;<a name="line.13"></a>
 <span class="sourceLineNo">014</span><a name="line.14"></a>
 <span class="sourceLineNo">015</span>import org.apache.juneau.*;<a name="line.15"></a>
-<span class="sourceLineNo">016</span>import org.apache.juneau.annotation.*;<a name="line.16"></a>
-<span class="sourceLineNo">017</span>import org.apache.juneau.parser.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span><a name="line.18"></a>
-<span class="sourceLineNo">019</span>/**<a name="line.19"></a>
-<span class="sourceLineNo">020</span> * TODO - Work in progress.  CSV parser.<a name="line.20"></a>
-<span class="sourceLineNo">021</span> */<a name="line.21"></a>
-<span class="sourceLineNo">022</span>@Consumes("text/csv")<a name="line.22"></a>
-<span class="sourceLineNo">023</span>public class CsvParser extends ReaderParser {<a name="line.23"></a>
-<span class="sourceLineNo">024</span><a name="line.24"></a>
-<span class="sourceLineNo">025</span>   /** Default parser, all default settings.*/<a name="line.25"></a>
-<span class="sourceLineNo">026</span>   public static final CsvParser DEFAULT = new CsvParser(PropertyStore.create());<a name="line.26"></a>
+<span class="sourceLineNo">016</span>import org.apache.juneau.parser.*;<a name="line.16"></a>
+<span class="sourceLineNo">017</span><a name="line.17"></a>
+<span class="sourceLineNo">018</span>/**<a name="line.18"></a>
+<span class="sourceLineNo">019</span> * TODO - Work in progress.  CSV parser.<a name="line.19"></a>
+<span class="sourceLineNo">020</span> */<a name="line.20"></a>
+<span class="sourceLineNo">021</span>public class CsvParser extends ReaderParser {<a name="line.21"></a>
+<span class="sourceLineNo">022</span><a name="line.22"></a>
+<span class="sourceLineNo">023</span>   /** Default parser, all default settings.*/<a name="line.23"></a>
+<span class="sourceLineNo">024</span>   public static final CsvParser DEFAULT = new CsvParser(PropertyStore.create());<a name="line.24"></a>
+<span class="sourceLineNo">025</span><a name="line.25"></a>
+<span class="sourceLineNo">026</span>   private final CsvParserContext ctx;<a name="line.26"></a>
 <span class="sourceLineNo">027</span><a name="line.27"></a>
-<span class="sourceLineNo">028</span>   private final CsvParserContext ctx;<a name="line.28"></a>
-<span class="sourceLineNo">029</span><a name="line.29"></a>
-<span class="sourceLineNo">030</span>   /**<a name="line.30"></a>
-<span class="sourceLineNo">031</span>    * Constructor.<a name="line.31"></a>
-<span class="sourceLineNo">032</span>    *<a name="line.32"></a>
-<span class="sourceLineNo">033</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.33"></a>
-<span class="sourceLineNo">034</span>    */<a name="line.34"></a>
-<span class="sourceLineNo">035</span>   public CsvParser(PropertyStore propertyStore) {<a name="line.35"></a>
-<span class="sourceLineNo">036</span>      super(propertyStore);<a name="line.36"></a>
-<span class="sourceLineNo">037</span>      this.ctx = createContext(CsvParserContext.class);<a name="line.37"></a>
-<span class="sourceLineNo">038</span>   }<a name="line.38"></a>
-<span class="sourceLineNo">039</span><a name="line.39"></a>
-<span class="sourceLineNo">040</span>   @Override /* CoreObject */<a name="line.40"></a>
-<span class="sourceLineNo">041</span>   public CsvParserBuilder builder() {<a name="line.41"></a>
-<span class="sourceLineNo">042</span>      return new CsvParserBuilder(propertyStore);<a name="line.42"></a>
-<span class="sourceLineNo">043</span>   }<a name="line.43"></a>
-<span class="sourceLineNo">044</span><a name="line.44"></a>
-<span class="sourceLineNo">045</span>   @Override /* Parser */<a name="line.45"></a>
-<span class="sourceLineNo">046</span>   public ReaderParserSession createSession(ParserSessionArgs args) {<a name="line.46"></a>
-<span class="sourceLineNo">047</span>      return new CsvParserSession(ctx, args);<a name="line.47"></a>
-<span class="sourceLineNo">048</span>   }<a name="line.48"></a>
-<span class="sourceLineNo">049</span>}<a name="line.49"></a>
+<span class="sourceLineNo">028</span>   /**<a name="line.28"></a>
+<span class="sourceLineNo">029</span>    * Constructor.<a name="line.29"></a>
+<span class="sourceLineNo">030</span>    *<a name="line.30"></a>
+<span class="sourceLineNo">031</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.31"></a>
+<span class="sourceLineNo">032</span>    */<a name="line.32"></a>
+<span class="sourceLineNo">033</span>   public CsvParser(PropertyStore propertyStore) {<a name="line.33"></a>
+<span class="sourceLineNo">034</span>      super(propertyStore, "text/csv");<a name="line.34"></a>
+<span class="sourceLineNo">035</span>      this.ctx = createContext(CsvParserContext.class);<a name="line.35"></a>
+<span class="sourceLineNo">036</span>   }<a name="line.36"></a>
+<span class="sourceLineNo">037</span><a name="line.37"></a>
+<span class="sourceLineNo">038</span>   @Override /* CoreObject */<a name="line.38"></a>
+<span class="sourceLineNo">039</span>   public CsvParserBuilder builder() {<a name="line.39"></a>
+<span class="sourceLineNo">040</span>      return new CsvParserBuilder(propertyStore);<a name="line.40"></a>
+<span class="sourceLineNo">041</span>   }<a name="line.41"></a>
+<span class="sourceLineNo">042</span><a name="line.42"></a>
+<span class="sourceLineNo">043</span>   @Override /* Parser */<a name="line.43"></a>
+<span class="sourceLineNo">044</span>   public ReaderParserSession createSession(ParserSessionArgs args) {<a name="line.44"></a>
+<span class="sourceLineNo">045</span>      return new CsvParserSession(ctx, args);<a name="line.45"></a>
+<span class="sourceLineNo">046</span>   }<a name="line.46"></a>
+<span class="sourceLineNo">047</span>}<a name="line.47"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/csv/CsvSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/csv/CsvSerializer.html b/content/site/apidocs/src-html/org/apache/juneau/csv/CsvSerializer.html
index d4b5b3a..45d2531 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/csv/CsvSerializer.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/csv/CsvSerializer.html
@@ -21,40 +21,38 @@
 <span class="sourceLineNo">013</span>package org.apache.juneau.csv;<a name="line.13"></a>
 <span class="sourceLineNo">014</span><a name="line.14"></a>
 <span class="sourceLineNo">015</span>import org.apache.juneau.*;<a name="line.15"></a>
-<span class="sourceLineNo">016</span>import org.apache.juneau.annotation.*;<a name="line.16"></a>
-<span class="sourceLineNo">017</span>import org.apache.juneau.serializer.*;<a name="line.17"></a>
-<span class="sourceLineNo">018</span><a name="line.18"></a>
-<span class="sourceLineNo">019</span>/**<a name="line.19"></a>
-<span class="sourceLineNo">020</span> * TODO - Work in progress.  CSV serializer.<a name="line.20"></a>
-<span class="sourceLineNo">021</span> */<a name="line.21"></a>
-<span class="sourceLineNo">022</span>@Produces("text/csv")<a name="line.22"></a>
-<span class="sourceLineNo">023</span>public final class CsvSerializer extends WriterSerializer {<a name="line.23"></a>
-<span class="sourceLineNo">024</span><a name="line.24"></a>
-<span class="sourceLineNo">025</span>   /** Default serializer, all default settings.*/<a name="line.25"></a>
-<span class="sourceLineNo">026</span>   public static final CsvSerializer DEFAULT = new CsvSerializer(PropertyStore.create());<a name="line.26"></a>
+<span class="sourceLineNo">016</span>import org.apache.juneau.serializer.*;<a name="line.16"></a>
+<span class="sourceLineNo">017</span><a name="line.17"></a>
+<span class="sourceLineNo">018</span>/**<a name="line.18"></a>
+<span class="sourceLineNo">019</span> * TODO - Work in progress.  CSV serializer.<a name="line.19"></a>
+<span class="sourceLineNo">020</span> */<a name="line.20"></a>
+<span class="sourceLineNo">021</span>public final class CsvSerializer extends WriterSerializer {<a name="line.21"></a>
+<span class="sourceLineNo">022</span><a name="line.22"></a>
+<span class="sourceLineNo">023</span>   /** Default serializer, all default settings.*/<a name="line.23"></a>
+<span class="sourceLineNo">024</span>   public static final CsvSerializer DEFAULT = new CsvSerializer(PropertyStore.create());<a name="line.24"></a>
+<span class="sourceLineNo">025</span><a name="line.25"></a>
+<span class="sourceLineNo">026</span>   private final CsvSerializerContext ctx;<a name="line.26"></a>
 <span class="sourceLineNo">027</span><a name="line.27"></a>
-<span class="sourceLineNo">028</span>   private final CsvSerializerContext ctx;<a name="line.28"></a>
-<span class="sourceLineNo">029</span><a name="line.29"></a>
-<span class="sourceLineNo">030</span>   /**<a name="line.30"></a>
-<span class="sourceLineNo">031</span>    * Constructor.<a name="line.31"></a>
-<span class="sourceLineNo">032</span>    *<a name="line.32"></a>
-<span class="sourceLineNo">033</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.33"></a>
-<span class="sourceLineNo">034</span>    */<a name="line.34"></a>
-<span class="sourceLineNo">035</span>   public CsvSerializer(PropertyStore propertyStore) {<a name="line.35"></a>
-<span class="sourceLineNo">036</span>      super(propertyStore);<a name="line.36"></a>
-<span class="sourceLineNo">037</span>      this.ctx = createContext(CsvSerializerContext.class);<a name="line.37"></a>
-<span class="sourceLineNo">038</span>   }<a name="line.38"></a>
-<span class="sourceLineNo">039</span><a name="line.39"></a>
-<span class="sourceLineNo">040</span>   @Override /* CoreObject */<a name="line.40"></a>
-<span class="sourceLineNo">041</span>   public CsvSerializerBuilder builder() {<a name="line.41"></a>
-<span class="sourceLineNo">042</span>      return new CsvSerializerBuilder(propertyStore);<a name="line.42"></a>
-<span class="sourceLineNo">043</span>   }<a name="line.43"></a>
-<span class="sourceLineNo">044</span><a name="line.44"></a>
-<span class="sourceLineNo">045</span>   @Override /* Serializer */<a name="line.45"></a>
-<span class="sourceLineNo">046</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.46"></a>
-<span class="sourceLineNo">047</span>      return new CsvSerializerSession(ctx, args);<a name="line.47"></a>
-<span class="sourceLineNo">048</span>   }<a name="line.48"></a>
-<span class="sourceLineNo">049</span>}<a name="line.49"></a>
+<span class="sourceLineNo">028</span>   /**<a name="line.28"></a>
+<span class="sourceLineNo">029</span>    * Constructor.<a name="line.29"></a>
+<span class="sourceLineNo">030</span>    *<a name="line.30"></a>
+<span class="sourceLineNo">031</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.31"></a>
+<span class="sourceLineNo">032</span>    */<a name="line.32"></a>
+<span class="sourceLineNo">033</span>   public CsvSerializer(PropertyStore propertyStore) {<a name="line.33"></a>
+<span class="sourceLineNo">034</span>      super(propertyStore, "text/csv");<a name="line.34"></a>
+<span class="sourceLineNo">035</span>      this.ctx = createContext(CsvSerializerContext.class);<a name="line.35"></a>
+<span class="sourceLineNo">036</span>   }<a name="line.36"></a>
+<span class="sourceLineNo">037</span><a name="line.37"></a>
+<span class="sourceLineNo">038</span>   @Override /* CoreObject */<a name="line.38"></a>
+<span class="sourceLineNo">039</span>   public CsvSerializerBuilder builder() {<a name="line.39"></a>
+<span class="sourceLineNo">040</span>      return new CsvSerializerBuilder(propertyStore);<a name="line.40"></a>
+<span class="sourceLineNo">041</span>   }<a name="line.41"></a>
+<span class="sourceLineNo">042</span><a name="line.42"></a>
+<span class="sourceLineNo">043</span>   @Override /* Serializer */<a name="line.43"></a>
+<span class="sourceLineNo">044</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.44"></a>
+<span class="sourceLineNo">045</span>      return new CsvSerializerSession(ctx, args);<a name="line.45"></a>
+<span class="sourceLineNo">046</span>   }<a name="line.46"></a>
+<span class="sourceLineNo">047</span>}<a name="line.47"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/csv/CsvSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/csv/CsvSerializerSession.html b/content/site/apidocs/src-html/org/apache/juneau/csv/CsvSerializerSession.html
index 69e91b6..951d459 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/csv/CsvSerializerSession.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/csv/CsvSerializerSession.html
@@ -46,66 +46,65 @@
 <span class="sourceLineNo">038</span>    *    These specify session-level information such as locale and URI context.<a name="line.38"></a>
 <span class="sourceLineNo">039</span>    *    It also include session-level properties that override the properties defined on the bean and<a name="line.39"></a>
 <span class="sourceLineNo">040</span>    *    serializer contexts.<a name="line.40"></a>
-<span class="sourceLineNo">041</span>    *    &lt;br&gt;If &lt;jk&gt;null&lt;/jk&gt;, defaults to {@link SerializerSessionArgs#DEFAULT}.<a name="line.41"></a>
-<span class="sourceLineNo">042</span>    */<a name="line.42"></a>
-<span class="sourceLineNo">043</span>   protected CsvSerializerSession(CsvSerializerContext ctx, SerializerSessionArgs args) {<a name="line.43"></a>
-<span class="sourceLineNo">044</span>      super(ctx, args);<a name="line.44"></a>
-<span class="sourceLineNo">045</span>   }<a name="line.45"></a>
-<span class="sourceLineNo">046</span><a name="line.46"></a>
-<span class="sourceLineNo">047</span>   @Override /* SerializerSession */<a name="line.47"></a>
-<span class="sourceLineNo">048</span>   protected final void doSerialize(SerializerPipe out, Object o) throws Exception {<a name="line.48"></a>
-<span class="sourceLineNo">049</span>      Writer w = out.getWriter();<a name="line.49"></a>
-<span class="sourceLineNo">050</span>      ClassMeta&lt;?&gt; cm = getClassMetaForObject(o);<a name="line.50"></a>
-<span class="sourceLineNo">051</span>      Collection&lt;?&gt; l = null;<a name="line.51"></a>
-<span class="sourceLineNo">052</span>      if (cm.isArray()) {<a name="line.52"></a>
-<span class="sourceLineNo">053</span>         l = Arrays.asList((Object[])o);<a name="line.53"></a>
-<span class="sourceLineNo">054</span>      } else {<a name="line.54"></a>
-<span class="sourceLineNo">055</span>         l = (Collection&lt;?&gt;)o;<a name="line.55"></a>
-<span class="sourceLineNo">056</span>      }<a name="line.56"></a>
-<span class="sourceLineNo">057</span>      // TODO - Doesn't support DynaBeans.<a name="line.57"></a>
-<span class="sourceLineNo">058</span>      if (l.size() &gt; 0) {<a name="line.58"></a>
-<span class="sourceLineNo">059</span>         ClassMeta&lt;?&gt; entryType = getClassMetaForObject(l.iterator().next());<a name="line.59"></a>
-<span class="sourceLineNo">060</span>         if (entryType.isBean()) {<a name="line.60"></a>
-<span class="sourceLineNo">061</span>            BeanMeta&lt;?&gt; bm = entryType.getBeanMeta();<a name="line.61"></a>
-<span class="sourceLineNo">062</span>            int i = 0;<a name="line.62"></a>
-<span class="sourceLineNo">063</span>            for (BeanPropertyMeta pm : bm.getPropertyMetas()) {<a name="line.63"></a>
-<span class="sourceLineNo">064</span>               if (i++ &gt; 0)<a name="line.64"></a>
-<span class="sourceLineNo">065</span>                  w.append(',');<a name="line.65"></a>
-<span class="sourceLineNo">066</span>               append(w, pm.getName());<a name="line.66"></a>
-<span class="sourceLineNo">067</span>            }<a name="line.67"></a>
-<span class="sourceLineNo">068</span>            w.append('\n');<a name="line.68"></a>
-<span class="sourceLineNo">069</span>            for (Object o2 : l) {<a name="line.69"></a>
-<span class="sourceLineNo">070</span>               i = 0;<a name="line.70"></a>
-<span class="sourceLineNo">071</span>               BeanMap&lt;?&gt; bean = toBeanMap(o2);<a name="line.71"></a>
-<span class="sourceLineNo">072</span>               for (BeanPropertyMeta pm : bm.getPropertyMetas()) {<a name="line.72"></a>
-<span class="sourceLineNo">073</span>                  if (i++ &gt; 0)<a name="line.73"></a>
-<span class="sourceLineNo">074</span>                     w.append(',');<a name="line.74"></a>
-<span class="sourceLineNo">075</span>                  append(w, pm.get(bean, pm.getName()));<a name="line.75"></a>
-<span class="sourceLineNo">076</span>               }<a name="line.76"></a>
-<span class="sourceLineNo">077</span>               w.append('\n');<a name="line.77"></a>
-<span class="sourceLineNo">078</span>            }<a name="line.78"></a>
-<span class="sourceLineNo">079</span>         }<a name="line.79"></a>
-<span class="sourceLineNo">080</span>      }<a name="line.80"></a>
-<span class="sourceLineNo">081</span>   }<a name="line.81"></a>
-<span class="sourceLineNo">082</span><a name="line.82"></a>
-<span class="sourceLineNo">083</span>   private static void append(Writer w, Object o) throws IOException {<a name="line.83"></a>
-<span class="sourceLineNo">084</span>      if (o == null)<a name="line.84"></a>
-<span class="sourceLineNo">085</span>         w.append("null");<a name="line.85"></a>
-<span class="sourceLineNo">086</span>      else {<a name="line.86"></a>
-<span class="sourceLineNo">087</span>         String s = o.toString();<a name="line.87"></a>
-<span class="sourceLineNo">088</span>         boolean mustQuote = false;<a name="line.88"></a>
-<span class="sourceLineNo">089</span>         for (int i = 0; i &lt; s.length() &amp;&amp; ! mustQuote; i++) {<a name="line.89"></a>
-<span class="sourceLineNo">090</span>            char c = s.charAt(i);<a name="line.90"></a>
-<span class="sourceLineNo">091</span>            if (Character.isWhitespace(c) || c == ',')<a name="line.91"></a>
-<span class="sourceLineNo">092</span>               mustQuote = true;<a name="line.92"></a>
-<span class="sourceLineNo">093</span>         }<a name="line.93"></a>
-<span class="sourceLineNo">094</span>         if (mustQuote)<a name="line.94"></a>
-<span class="sourceLineNo">095</span>            w.append('"').append(s).append('"');<a name="line.95"></a>
-<span class="sourceLineNo">096</span>         else<a name="line.96"></a>
-<span class="sourceLineNo">097</span>            w.append(s);<a name="line.97"></a>
-<span class="sourceLineNo">098</span>      }<a name="line.98"></a>
-<span class="sourceLineNo">099</span>   }<a name="line.99"></a>
-<span class="sourceLineNo">100</span>}<a name="line.100"></a>
+<span class="sourceLineNo">041</span>    */<a name="line.41"></a>
+<span class="sourceLineNo">042</span>   protected CsvSerializerSession(CsvSerializerContext ctx, SerializerSessionArgs args) {<a name="line.42"></a>
+<span class="sourceLineNo">043</span>      super(ctx, args);<a name="line.43"></a>
+<span class="sourceLineNo">044</span>   }<a name="line.44"></a>
+<span class="sourceLineNo">045</span><a name="line.45"></a>
+<span class="sourceLineNo">046</span>   @Override /* SerializerSession */<a name="line.46"></a>
+<span class="sourceLineNo">047</span>   protected final void doSerialize(SerializerPipe out, Object o) throws Exception {<a name="line.47"></a>
+<span class="sourceLineNo">048</span>      Writer w = out.getWriter();<a name="line.48"></a>
+<span class="sourceLineNo">049</span>      ClassMeta&lt;?&gt; cm = getClassMetaForObject(o);<a name="line.49"></a>
+<span class="sourceLineNo">050</span>      Collection&lt;?&gt; l = null;<a name="line.50"></a>
+<span class="sourceLineNo">051</span>      if (cm.isArray()) {<a name="line.51"></a>
+<span class="sourceLineNo">052</span>         l = Arrays.asList((Object[])o);<a name="line.52"></a>
+<span class="sourceLineNo">053</span>      } else {<a name="line.53"></a>
+<span class="sourceLineNo">054</span>         l = (Collection&lt;?&gt;)o;<a name="line.54"></a>
+<span class="sourceLineNo">055</span>      }<a name="line.55"></a>
+<span class="sourceLineNo">056</span>      // TODO - Doesn't support DynaBeans.<a name="line.56"></a>
+<span class="sourceLineNo">057</span>      if (l.size() &gt; 0) {<a name="line.57"></a>
+<span class="sourceLineNo">058</span>         ClassMeta&lt;?&gt; entryType = getClassMetaForObject(l.iterator().next());<a name="line.58"></a>
+<span class="sourceLineNo">059</span>         if (entryType.isBean()) {<a name="line.59"></a>
+<span class="sourceLineNo">060</span>            BeanMeta&lt;?&gt; bm = entryType.getBeanMeta();<a name="line.60"></a>
+<span class="sourceLineNo">061</span>            int i = 0;<a name="line.61"></a>
+<span class="sourceLineNo">062</span>            for (BeanPropertyMeta pm : bm.getPropertyMetas()) {<a name="line.62"></a>
+<span class="sourceLineNo">063</span>               if (i++ &gt; 0)<a name="line.63"></a>
+<span class="sourceLineNo">064</span>                  w.append(',');<a name="line.64"></a>
+<span class="sourceLineNo">065</span>               append(w, pm.getName());<a name="line.65"></a>
+<span class="sourceLineNo">066</span>            }<a name="line.66"></a>
+<span class="sourceLineNo">067</span>            w.append('\n');<a name="line.67"></a>
+<span class="sourceLineNo">068</span>            for (Object o2 : l) {<a name="line.68"></a>
+<span class="sourceLineNo">069</span>               i = 0;<a name="line.69"></a>
+<span class="sourceLineNo">070</span>               BeanMap&lt;?&gt; bean = toBeanMap(o2);<a name="line.70"></a>
+<span class="sourceLineNo">071</span>               for (BeanPropertyMeta pm : bm.getPropertyMetas()) {<a name="line.71"></a>
+<span class="sourceLineNo">072</span>                  if (i++ &gt; 0)<a name="line.72"></a>
+<span class="sourceLineNo">073</span>                     w.append(',');<a name="line.73"></a>
+<span class="sourceLineNo">074</span>                  append(w, pm.get(bean, pm.getName()));<a name="line.74"></a>
+<span class="sourceLineNo">075</span>               }<a name="line.75"></a>
+<span class="sourceLineNo">076</span>               w.append('\n');<a name="line.76"></a>
+<span class="sourceLineNo">077</span>            }<a name="line.77"></a>
+<span class="sourceLineNo">078</span>         }<a name="line.78"></a>
+<span class="sourceLineNo">079</span>      }<a name="line.79"></a>
+<span class="sourceLineNo">080</span>   }<a name="line.80"></a>
+<span class="sourceLineNo">081</span><a name="line.81"></a>
+<span class="sourceLineNo">082</span>   private static void append(Writer w, Object o) throws IOException {<a name="line.82"></a>
+<span class="sourceLineNo">083</span>      if (o == null)<a name="line.83"></a>
+<span class="sourceLineNo">084</span>         w.append("null");<a name="line.84"></a>
+<span class="sourceLineNo">085</span>      else {<a name="line.85"></a>
+<span class="sourceLineNo">086</span>         String s = o.toString();<a name="line.86"></a>
+<span class="sourceLineNo">087</span>         boolean mustQuote = false;<a name="line.87"></a>
+<span class="sourceLineNo">088</span>         for (int i = 0; i &lt; s.length() &amp;&amp; ! mustQuote; i++) {<a name="line.88"></a>
+<span class="sourceLineNo">089</span>            char c = s.charAt(i);<a name="line.89"></a>
+<span class="sourceLineNo">090</span>            if (Character.isWhitespace(c) || c == ',')<a name="line.90"></a>
+<span class="sourceLineNo">091</span>               mustQuote = true;<a name="line.91"></a>
+<span class="sourceLineNo">092</span>         }<a name="line.92"></a>
+<span class="sourceLineNo">093</span>         if (mustQuote)<a name="line.93"></a>
+<span class="sourceLineNo">094</span>            w.append('"').append(s).append('"');<a name="line.94"></a>
+<span class="sourceLineNo">095</span>         else<a name="line.95"></a>
+<span class="sourceLineNo">096</span>            w.append(s);<a name="line.96"></a>
+<span class="sourceLineNo">097</span>      }<a name="line.97"></a>
+<span class="sourceLineNo">098</span>   }<a name="line.98"></a>
+<span class="sourceLineNo">099</span>}<a name="line.99"></a>
 
 
 


[51/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
Update javadocs.

Project: http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/commit/2ead32d5
Tree: http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/tree/2ead32d5
Diff: http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/diff/2ead32d5

Branch: refs/heads/asf-site
Commit: 2ead32d5a2537fa2613b54c8235a2b3396bb1079
Parents: fe5928f
Author: JamesBognar <ja...@apache.org>
Authored: Sun Aug 27 18:19:23 2017 -0400
Committer: JamesBognar <ja...@apache.org>
Committed: Sun Aug 27 18:19:23 2017 -0400

----------------------------------------------------------------------
 content/site/apidocs/allclasses-frame.html      |    2 -
 content/site/apidocs/allclasses-noframe.html    |    2 -
 content/site/apidocs/index-all.html             |  120 +-
 .../apache/juneau/annotation/BeanProperty.html  |    4 +-
 .../org/apache/juneau/annotation/Consumes.html  |  261 ---
 .../apache/juneau/annotation/NameProperty.html  |    4 +-
 .../org/apache/juneau/annotation/Pojo.html      |    4 +-
 .../org/apache/juneau/annotation/Produces.html  |  294 ----
 .../apache/juneau/annotation/ThreadSafe.html    |    4 +-
 .../apache/juneau/annotation/package-frame.html |    2 -
 .../juneau/annotation/package-summary.html      |   18 +-
 .../apache/juneau/annotation/package-tree.html  |    2 -
 .../org/apache/juneau/csv/CsvParser.html        |   13 +-
 .../org/apache/juneau/csv/CsvSerializer.html    |   16 +-
 .../apache/juneau/csv/CsvSerializerSession.html |    7 +-
 .../apache/juneau/html/HtmlDocSerializer.html   |   50 +-
 .../org/apache/juneau/html/HtmlParser.html      |   13 +-
 .../juneau/html/HtmlSchemaDocSerializer.html    |   51 +-
 .../apache/juneau/html/HtmlSerializer.Sq.html   |    6 +-
 .../juneau/html/HtmlSerializer.SqReadable.html  |    6 +-
 .../org/apache/juneau/html/HtmlSerializer.html  |   58 +-
 .../juneau/html/HtmlSerializerSession.html      |   21 +-
 .../juneau/html/HtmlStrippedDocSerializer.html  |   49 +-
 .../org/apache/juneau/http/ContentType.html     |    2 +-
 .../org/apache/juneau/http/MediaType.html       |   49 +-
 .../org/apache/juneau/internal/IOUtils.html     |  209 ++-
 .../org/apache/juneau/jena/RdfParser.N3.html    |    7 +-
 .../apache/juneau/jena/RdfParser.NTriple.html   |    7 +-
 .../apache/juneau/jena/RdfParser.Turtle.html    |    7 +-
 .../org/apache/juneau/jena/RdfParser.Xml.html   |    7 +-
 .../org/apache/juneau/jena/RdfParser.html       |   26 +-
 .../apache/juneau/jena/RdfSerializer.N3.html    |    7 +-
 .../juneau/jena/RdfSerializer.NTriple.html      |    7 +-
 .../juneau/jena/RdfSerializer.Turtle.html       |    7 +-
 .../apache/juneau/jena/RdfSerializer.Xml.html   |    7 +-
 .../juneau/jena/RdfSerializer.XmlAbbrev.html    |    8 +-
 .../org/apache/juneau/jena/RdfSerializer.html   |   46 +-
 .../juneau/jena/RdfSerializerSession.html       |    9 +-
 .../org/apache/juneau/jso/JsoParser.html        |   13 +-
 .../org/apache/juneau/jso/JsoSerializer.html    |   16 +-
 .../apache/juneau/jso/JsoSerializerSession.html |    9 +-
 .../apache/juneau/json/JsonParser.Strict.html   |    6 +-
 .../org/apache/juneau/json/JsonParser.html      |   37 +-
 .../juneau/json/JsonSchemaSerializer.html       |   11 +-
 .../json/JsonSchemaSerializerSession.html       |    7 +-
 .../juneau/json/JsonSerializer.Readable.html    |    6 +-
 .../juneau/json/JsonSerializer.Simple.html      |    8 +-
 .../json/JsonSerializer.SimpleReadable.html     |    6 +-
 .../json/JsonSerializer.SimpleReadableSafe.html |    6 +-
 .../org/apache/juneau/json/JsonSerializer.html  |   62 +-
 .../juneau/json/JsonSerializerSession.html      |    9 +-
 .../apache/juneau/msgpack/MsgPackParser.html    |   13 +-
 .../juneau/msgpack/MsgPackSerializer.html       |   16 +-
 .../msgpack/MsgPackSerializerSession.html       |    5 +-
 .../apache/juneau/parser/InputStreamParser.html |   24 +-
 .../org/apache/juneau/parser/Parser.html        |   87 +-
 .../org/apache/juneau/parser/ParserSession.html |   52 +-
 .../apache/juneau/parser/ParserSessionArgs.html |   49 +-
 .../org/apache/juneau/parser/ReaderParser.html  |   24 +-
 .../apache/juneau/parser/package-summary.html   |    6 +-
 .../juneau/plaintext/PlainTextParser.html       |   38 +-
 .../juneau/plaintext/PlainTextSerializer.html   |   52 +-
 .../plaintext/PlainTextSerializerSession.html   |    7 +-
 .../org/apache/juneau/rest/package-summary.html |    6 +-
 .../juneau/rest/response/DefaultHandler.html    |    8 +-
 .../serializer/OutputStreamSerializer.html      |   48 +-
 .../OutputStreamSerializerSession.html          |   11 +-
 .../apache/juneau/serializer/Serializer.html    |   84 +-
 .../juneau/serializer/SerializerSession.html    |   89 +-
 .../serializer/SerializerSessionArgs.html       |   49 +-
 .../juneau/serializer/WriterSerializer.html     |   52 +-
 .../serializer/WriterSerializerSession.html     |   11 +-
 .../juneau/serializer/package-summary.html      |    6 +-
 .../apache/juneau/soap/SoapXmlSerializer.html   |   13 +-
 .../juneau/soap/SoapXmlSerializerSession.html   |    9 +-
 .../apache/juneau/uon/UonParser.Decoding.html   |    6 +-
 .../org/apache/juneau/uon/UonParser.html        |   39 +-
 .../org/apache/juneau/uon/UonParserSession.html |   41 +-
 .../juneau/uon/UonSerializer.Encoding.html      |    6 +-
 .../juneau/uon/UonSerializer.Readable.html      |    6 +-
 .../org/apache/juneau/uon/UonSerializer.html    |   56 +-
 .../apache/juneau/uon/UonSerializerSession.html |    5 +-
 .../juneau/urlencoding/UrlEncodingParser.html   |   17 +-
 .../UrlEncodingSerializer.Expanded.html         |    8 +-
 .../UrlEncodingSerializer.PlainText.html        |    6 +-
 .../UrlEncodingSerializer.Readable.html         |    6 +-
 .../urlencoding/UrlEncodingSerializer.html      |   60 +-
 .../UrlEncodingSerializerSession.html           |    5 +-
 .../apache/juneau/xml/XmlDocSerializer.Ns.html  |    8 +-
 .../org/apache/juneau/xml/XmlDocSerializer.html |   11 +-
 .../juneau/xml/XmlDocSerializerSession.html     |    7 +-
 .../org/apache/juneau/xml/XmlParser.html        |   35 +-
 .../juneau/xml/XmlSchemaDocSerializer.html      |    5 +-
 .../xml/XmlSchemaDocSerializerSession.html      |    7 +-
 .../apache/juneau/xml/XmlSchemaSerializer.html  |   13 +-
 .../juneau/xml/XmlSchemaSerializerSession.html  |    9 +-
 .../org/apache/juneau/xml/XmlSerializer.Ns.html |    8 +-
 .../apache/juneau/xml/XmlSerializer.NsSq.html   |    6 +-
 .../juneau/xml/XmlSerializer.NsSqReadable.html  |    6 +-
 .../org/apache/juneau/xml/XmlSerializer.Sq.html |    6 +-
 .../juneau/xml/XmlSerializer.SqReadable.html    |    6 +-
 .../org/apache/juneau/xml/XmlSerializer.html    |   64 +-
 .../apache/juneau/xml/XmlSerializerSession.html |    5 +-
 content/site/apidocs/overview-summary.html      |  157 +-
 content/site/apidocs/overview-tree.html         |    2 -
 .../org/apache/juneau/annotation/Consumes.html  |  144 --
 .../org/apache/juneau/annotation/Produces.html  |  157 --
 .../org/apache/juneau/csv/CsvParser.html        |   64 +-
 .../org/apache/juneau/csv/CsvSerializer.html    |   64 +-
 .../apache/juneau/csv/CsvSerializerSession.html |  119 +-
 .../apache/juneau/html/HtmlDocSerializer.html   |  121 +-
 .../org/apache/juneau/html/HtmlParser.html      |  104 +-
 .../juneau/html/HtmlSchemaDocSerializer.html    |  114 +-
 .../apache/juneau/html/HtmlSerializer.Sq.html   |  398 ++---
 .../juneau/html/HtmlSerializer.SqReadable.html  |  398 ++---
 .../org/apache/juneau/html/HtmlSerializer.html  |  398 ++---
 .../juneau/html/HtmlSerializerSession.html      | 1439 ++++++++--------
 .../juneau/html/HtmlStrippedDocSerializer.html  |   95 +-
 .../org/apache/juneau/http/MediaType.html       |  258 +--
 .../org/apache/juneau/internal/IOUtils.html     | 1031 ++++++------
 .../org/apache/juneau/jena/RdfParser.N3.html    |  235 ++-
 .../apache/juneau/jena/RdfParser.NTriple.html   |  235 ++-
 .../apache/juneau/jena/RdfParser.Turtle.html    |  235 ++-
 .../org/apache/juneau/jena/RdfParser.Xml.html   |  235 ++-
 .../org/apache/juneau/jena/RdfParser.html       |  235 ++-
 .../apache/juneau/jena/RdfParserBuilder.html    |    2 +-
 .../apache/juneau/jena/RdfSerializer.N3.html    |  283 ++--
 .../juneau/jena/RdfSerializer.NTriple.html      |  283 ++--
 .../juneau/jena/RdfSerializer.Turtle.html       |  283 ++--
 .../apache/juneau/jena/RdfSerializer.Xml.html   |  283 ++--
 .../juneau/jena/RdfSerializer.XmlAbbrev.html    |  283 ++--
 .../org/apache/juneau/jena/RdfSerializer.html   |  283 ++--
 .../juneau/jena/RdfSerializerBuilder.html       |    2 +-
 .../juneau/jena/RdfSerializerSession.html       |  687 ++++----
 .../org/apache/juneau/jso/JsoParser.html        |   70 +-
 .../org/apache/juneau/jso/JsoSerializer.html    |   78 +-
 .../apache/juneau/jso/JsoSerializerSession.html |   29 +-
 .../apache/juneau/json/JsonParser.Strict.html   |  282 ++--
 .../org/apache/juneau/json/JsonParser.html      |  282 ++--
 .../juneau/json/JsonSchemaSerializer.html       |   58 +-
 .../json/JsonSchemaSerializerSession.html       |  173 +-
 .../juneau/json/JsonSerializer.Readable.html    |  449 ++---
 .../juneau/json/JsonSerializer.Simple.html      |  449 ++---
 .../json/JsonSerializer.SimpleReadable.html     |  449 ++---
 .../json/JsonSerializer.SimpleReadableSafe.html |  449 ++---
 .../org/apache/juneau/json/JsonSerializer.html  |  449 ++---
 .../juneau/json/JsonSerializerSession.html      |  293 ++--
 .../apache/juneau/msgpack/MsgPackParser.html    |   90 +-
 .../juneau/msgpack/MsgPackSerializer.html       |   96 +-
 .../msgpack/MsgPackSerializerSession.html       |  214 +--
 .../apache/juneau/parser/InputStreamParser.html |   65 +-
 .../org/apache/juneau/parser/Parser.html        |  911 +++++-----
 .../org/apache/juneau/parser/ParserSession.html | 1374 ++++++++--------
 .../apache/juneau/parser/ParserSessionArgs.html |   67 +-
 .../org/apache/juneau/parser/ReaderParser.html  |   65 +-
 .../juneau/plaintext/PlainTextParser.html       |  125 +-
 .../juneau/plaintext/PlainTextSerializer.html   |  139 +-
 .../plaintext/PlainTextSerializerSession.html   |   21 +-
 .../juneau/rest/response/DefaultHandler.html    |  147 +-
 .../serializer/OutputStreamSerializer.html      |  135 +-
 .../OutputStreamSerializerSession.html          |   69 +-
 .../apache/juneau/serializer/Serializer.html    |  372 ++---
 .../juneau/serializer/SerializerSession.html    | 1551 +++++++++---------
 .../serializer/SerializerSessionArgs.html       |   69 +-
 .../juneau/serializer/WriterSerializer.html     |  191 +--
 .../serializer/WriterSerializerSession.html     |   69 +-
 .../apache/juneau/soap/SoapXmlSerializer.html   |   88 +-
 .../juneau/soap/SoapXmlSerializerSession.html   |   65 +-
 .../apache/juneau/uon/UonParser.Decoding.html   |  165 +-
 .../org/apache/juneau/uon/UonParser.html        |  165 +-
 .../org/apache/juneau/uon/UonParserSession.html | 1368 +++++++--------
 .../juneau/uon/UonSerializer.Encoding.html      |  382 +++--
 .../juneau/uon/UonSerializer.Readable.html      |  382 +++--
 .../org/apache/juneau/uon/UonSerializer.html    |  382 +++--
 .../apache/juneau/uon/UonSerializerSession.html |  239 +--
 .../juneau/urlencoding/UrlEncodingParser.html   |  356 ++--
 .../UrlEncodingSerializer.Expanded.html         |  524 +++---
 .../UrlEncodingSerializer.PlainText.html        |  524 +++---
 .../UrlEncodingSerializer.Readable.html         |  524 +++---
 .../urlencoding/UrlEncodingSerializer.html      |  524 +++---
 .../UrlEncodingSerializerSession.html           |  292 ++--
 .../apache/juneau/xml/XmlDocSerializer.Ns.html  |   96 +-
 .../org/apache/juneau/xml/XmlDocSerializer.html |   96 +-
 .../juneau/xml/XmlDocSerializerSession.html     |   33 +-
 .../org/apache/juneau/xml/XmlParser.html        |  111 +-
 .../xml/XmlSchemaDocSerializerSession.html      |   33 +-
 .../apache/juneau/xml/XmlSchemaSerializer.html  |   82 +-
 .../juneau/xml/XmlSchemaSerializerSession.html  |  995 ++++++-----
 .../org/apache/juneau/xml/XmlSerializer.Ns.html |  475 +++---
 .../apache/juneau/xml/XmlSerializer.NsSq.html   |  475 +++---
 .../juneau/xml/XmlSerializer.NsSqReadable.html  |  475 +++---
 .../org/apache/juneau/xml/XmlSerializer.Sq.html |  475 +++---
 .../juneau/xml/XmlSerializer.SqReadable.html    |  475 +++---
 .../org/apache/juneau/xml/XmlSerializer.html    |  475 +++---
 .../apache/juneau/xml/XmlSerializerSession.html |  833 +++++-----
 195 files changed, 16168 insertions(+), 15672 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/allclasses-frame.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/allclasses-frame.html b/content/site/apidocs/allclasses-frame.html
index 2e1051a..e7f12aa 100644
--- a/content/site/apidocs/allclasses-frame.html
+++ b/content/site/apidocs/allclasses-frame.html
@@ -144,7 +144,6 @@
 <li><a href="org/apache/juneau/http/Connection.html" title="class in org.apache.juneau.http" target="classFrame">Connection</a></li>
 <li><a href="org/apache/juneau/http/Constants.html" title="class in org.apache.juneau.http" target="classFrame">Constants</a></li>
 <li><a href="org/apache/juneau/jena/Constants.html" title="class in org.apache.juneau.jena" target="classFrame">Constants</a></li>
-<li><a href="org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation" target="classFrame">Consumes</a></li>
 <li><a href="org/apache/juneau/dto/swagger/Contact.html" title="class in org.apache.juneau.dto.swagger" target="classFrame">Contact</a></li>
 <li><a href="org/apache/juneau/dto/atom/Content.html" title="class in org.apache.juneau.dto.atom" target="classFrame">Content</a></li>
 <li><a href="org/apache/juneau/http/ContentEncoding.html" title="class in org.apache.juneau.http" target="classFrame">ContentEncoding</a></li>
@@ -486,7 +485,6 @@
 <li><a href="org/apache/juneau/dto/html5/Pre.html" title="class in org.apache.juneau.dto.html5" target="classFrame">Pre</a></li>
 <li><a href="org/apache/juneau/utils/ProcBuilder.html" title="class in org.apache.juneau.utils" target="classFrame">ProcBuilder</a></li>
 <li><a href="org/apache/juneau/utils/ProcBuilder.Matcher.html" title="class in org.apache.juneau.utils" target="classFrame">ProcBuilder.Matcher</a></li>
-<li><a href="org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation" target="classFrame">Produces</a></li>
 <li><a href="org/apache/juneau/dto/html5/Progress.html" title="class in org.apache.juneau.dto.html5" target="classFrame">Progress</a></li>
 <li><a href="org/apache/juneau/rest/annotation/Properties.html" title="annotation in org.apache.juneau.rest.annotation" target="classFrame">Properties</a></li>
 <li><a href="org/apache/juneau/rest/annotation/Property.html" title="annotation in org.apache.juneau.rest.annotation" target="classFrame">Property</a></li>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/allclasses-noframe.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/allclasses-noframe.html b/content/site/apidocs/allclasses-noframe.html
index 05b9365..5e35a6b 100644
--- a/content/site/apidocs/allclasses-noframe.html
+++ b/content/site/apidocs/allclasses-noframe.html
@@ -144,7 +144,6 @@
 <li><a href="org/apache/juneau/http/Connection.html" title="class in org.apache.juneau.http">Connection</a></li>
 <li><a href="org/apache/juneau/http/Constants.html" title="class in org.apache.juneau.http">Constants</a></li>
 <li><a href="org/apache/juneau/jena/Constants.html" title="class in org.apache.juneau.jena">Constants</a></li>
-<li><a href="org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation">Consumes</a></li>
 <li><a href="org/apache/juneau/dto/swagger/Contact.html" title="class in org.apache.juneau.dto.swagger">Contact</a></li>
 <li><a href="org/apache/juneau/dto/atom/Content.html" title="class in org.apache.juneau.dto.atom">Content</a></li>
 <li><a href="org/apache/juneau/http/ContentEncoding.html" title="class in org.apache.juneau.http">ContentEncoding</a></li>
@@ -486,7 +485,6 @@
 <li><a href="org/apache/juneau/dto/html5/Pre.html" title="class in org.apache.juneau.dto.html5">Pre</a></li>
 <li><a href="org/apache/juneau/utils/ProcBuilder.html" title="class in org.apache.juneau.utils">ProcBuilder</a></li>
 <li><a href="org/apache/juneau/utils/ProcBuilder.Matcher.html" title="class in org.apache.juneau.utils">ProcBuilder.Matcher</a></li>
-<li><a href="org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">Produces</a></li>
 <li><a href="org/apache/juneau/dto/html5/Progress.html" title="class in org.apache.juneau.dto.html5">Progress</a></li>
 <li><a href="org/apache/juneau/rest/annotation/Properties.html" title="annotation in org.apache.juneau.rest.annotation">Properties</a></li>
 <li><a href="org/apache/juneau/rest/annotation/Property.html" title="annotation in org.apache.juneau.rest.annotation">Property</a></li>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/index-all.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/index-all.html b/content/site/apidocs/index-all.html
index 8aac34c..ad57076 100644
--- a/content/site/apidocs/index-all.html
+++ b/content/site/apidocs/index-all.html
@@ -4595,10 +4595,6 @@
 <dd>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
 </dd>
-<dt><a href="org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Consumes</span></a> - Annotation Type in <a href="org/apache/juneau/annotation/package-summary.html">org.apache.juneau.annotation</a></dt>
-<dd>
-<div class="block">Annotation used on subclasses of <a href="org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser"><code>Parser</code></a> to identify the media types that it consumes.</div>
-</dd>
 <dt><span class="memberNameLink"><a href="org/apache/juneau/dto/swagger/Operation.html#consumes-org.apache.juneau.http.MediaType...-">consumes(MediaType...)</a></span> - Method in class org.apache.juneau.dto.swagger.<a href="org/apache/juneau/dto/swagger/Operation.html" title="class in org.apache.juneau.dto.swagger">Operation</a></dt>
 <dd>
 <div class="block">Synonym for <a href="org/apache/juneau/dto/swagger/Operation.html#addConsumes-org.apache.juneau.http.MediaType...-"><code>Operation.addConsumes(MediaType...)</code></a>.</div>
@@ -5000,6 +4996,14 @@
 <dd>
 <div class="block">Creates a read-only context object of the specified type using the context factory on this class.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/parser/Parser.html#createDefaultSessionArgs--">createDefaultSessionArgs()</a></span> - Method in class org.apache.juneau.parser.<a href="org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser">Parser</a></dt>
+<dd>
+<div class="block">Creates the session arguments object that gets passed to the <a href="org/apache/juneau/parser/Parser.html#createSession-org.apache.juneau.parser.ParserSessionArgs-"><code>Parser.createSession(ParserSessionArgs)</code></a> method.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs()</a></span> - Method in class org.apache.juneau.serializer.<a href="org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></dt>
+<dd>
+<div class="block">Creates the session arguments object that gets passed to the <a href="org/apache/juneau/serializer/Serializer.html#createSession-org.apache.juneau.serializer.SerializerSessionArgs-"><code>Serializer.createSession(SerializerSessionArgs)</code></a> method.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/juneau/rest/client/RestClientBuilder.html#createHttpClient--">createHttpClient()</a></span> - Method in class org.apache.juneau.rest.client.<a href="org/apache/juneau/rest/client/RestClientBuilder.html" title="class in org.apache.juneau.rest.client">RestClientBuilder</a></dt>
 <dd>
 <div class="block">Creates an instance of an <code>HttpClient</code> to be used to handle all HTTP communications with the target server.</div>
@@ -5690,10 +5694,6 @@
 <dd>
 <div class="block">Default context with all default values.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/juneau/parser/ParserSessionArgs.html#DEFAULT">DEFAULT</a></span> - Static variable in class org.apache.juneau.parser.<a href="org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a></dt>
-<dd>
-<div class="block">Default session arguments.</div>
-</dd>
 <dt><span class="memberNameLink"><a href="org/apache/juneau/plaintext/PlainTextParser.html#DEFAULT">DEFAULT</a></span> - Static variable in class org.apache.juneau.plaintext.<a href="org/apache/juneau/plaintext/PlainTextParser.html" title="class in org.apache.juneau.plaintext">PlainTextParser</a></dt>
 <dd>
 <div class="block">Default parser, all default settings.</div>
@@ -5718,10 +5718,6 @@
 <dd>
 <div class="block">Default context with all default values.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT">DEFAULT</a></span> - Static variable in class org.apache.juneau.serializer.<a href="org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a></dt>
-<dd>
-<div class="block">Default session arguments.</div>
-</dd>
 <dt><span class="memberNameLink"><a href="org/apache/juneau/svl/VarResolver.html#DEFAULT">DEFAULT</a></span> - Static variable in class org.apache.juneau.svl.<a href="org/apache/juneau/svl/VarResolver.html" title="class in org.apache.juneau.svl">VarResolver</a></dt>
 <dd>
 <div class="block">Default string variable resolver with support for system properties and environment variables:
@@ -10070,11 +10066,11 @@
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes()</a></span> - Method in class org.apache.juneau.parser.<a href="org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser">Parser</a></dt>
 <dd>
-<div class="block">Returns the media types handled based on the value of the <a href="org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation"><code>Consumes</code></a> annotation on the parser class.</div>
+<div class="block">Returns the media types handled based on the values passed to the <code>consumes</code> constructor parameter.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes()</a></span> - Method in class org.apache.juneau.serializer.<a href="org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></dt>
 <dd>
-<div class="block">Returns the media types handled based on the value of the <a href="org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation"><code>Produces</code></a> annotation on the serializer class.</div>
+<div class="block">Returns the media types handled based on the value of the <code>accept</code> parameter passed into the constructor.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/juneau/rest/RestRequest.html#getMessage-java.lang.String-java.lang.Object...-">getMessage(String, Object...)</a></span> - Method in class org.apache.juneau.rest.<a href="org/apache/juneau/rest/RestRequest.html" title="class in org.apache.juneau.rest">RestRequest</a></dt>
 <dd>
@@ -10726,11 +10722,7 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType()</a></span> - Method in class org.apache.juneau.parser.<a href="org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser">Parser</a></dt>
 <dd>
-<div class="block">Returns the first media type specified on this parser via the <a href="org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation"><code>Consumes</code></a> annotation.</div>
-</dd>
-<dt><span class="memberNameLink"><a href="org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType()</a></span> - Method in class org.apache.juneau.serializer.<a href="org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></dt>
-<dd>
-<div class="block">Returns the first media type specified on this serializer via the <a href="org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation"><code>Produces</code></a> annotation.</div>
+<div class="block">Returns the first media type handled based on the values passed to the <code>consumes</code> constructor parameter.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/juneau/ClassMeta.html#getPrimitiveDefault--">getPrimitiveDefault()</a></span> - Method in class org.apache.juneau.<a href="org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a></dt>
 <dd>
@@ -12462,6 +12454,10 @@
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/juneau/html/HtmlDocTemplateBasic.html#hasStyle-org.apache.juneau.html.HtmlDocSerializerSession-">hasStyle(HtmlDocSerializerSession)</a></span> - Method in class org.apache.juneau.html.<a href="org/apache/juneau/html/HtmlDocTemplateBasic.html" title="class in org.apache.juneau.html">HtmlDocTemplateBasic</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/http/MediaType.html#hasSubType-java.lang.String-">hasSubType(String)</a></span> - Method in class org.apache.juneau.http.<a href="org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a></dt>
+<dd>
+<div class="block">Returns <jk>true</jk> if the subtype contains the specified <js>'+'</js> delimited subtype value.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/juneau/http/Accept.html#hasSubtypePart-java.lang.String-">hasSubtypePart(String)</a></span> - Method in class org.apache.juneau.http.<a href="org/apache/juneau/http/Accept.html" title="class in org.apache.juneau.http">Accept</a></dt>
 <dd>
 <div class="block">Convenience method for searching through all of the subtypes of all the media ranges in this header for the
@@ -12951,6 +12947,10 @@
 <dd>
 <div class="block">Constructor.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/html/HtmlDocSerializer.html#HtmlDocSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">HtmlDocSerializer(PropertyStore, String, String...)</a></span> - Constructor for class org.apache.juneau.html.<a href="org/apache/juneau/html/HtmlDocSerializer.html" title="class in org.apache.juneau.html">HtmlDocSerializer</a></dt>
+<dd>
+<div class="block">Constructor.</div>
+</dd>
 <dt><a href="org/apache/juneau/html/HtmlDocSerializerContext.html" title="class in org.apache.juneau.html"><span class="typeNameLink">HtmlDocSerializerContext</span></a> - Class in <a href="org/apache/juneau/html/package-summary.html">org.apache.juneau.html</a></dt>
 <dd>
 <div class="block">Properties associated with the <a href="org/apache/juneau/html/HtmlDocSerializer.html" title="class in org.apache.juneau.html"><code>HtmlDocSerializer</code></a> class.</div>
@@ -13069,6 +13069,10 @@
 <dd>
 <div class="block">Constructor.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/html/HtmlSchemaDocSerializer.html#HtmlSchemaDocSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">HtmlSchemaDocSerializer(PropertyStore, String, String...)</a></span> - Constructor for class org.apache.juneau.html.<a href="org/apache/juneau/html/HtmlSchemaDocSerializer.html" title="class in org.apache.juneau.html">HtmlSchemaDocSerializer</a></dt>
+<dd>
+<div class="block">Constructor.</div>
+</dd>
 <dt><a href="org/apache/juneau/html/HtmlSchemaDocSerializerSession.html" title="class in org.apache.juneau.html"><span class="typeNameLink">HtmlSchemaDocSerializerSession</span></a> - Class in <a href="org/apache/juneau/html/package-summary.html">org.apache.juneau.html</a></dt>
 <dd>
 <div class="block">Context object that lives for the duration of a single serialization of <a href="org/apache/juneau/html/HtmlSchemaDocSerializer.html" title="class in org.apache.juneau.html"><code>HtmlSchemaDocSerializer</code></a> and its subclasses.</div>
@@ -13085,6 +13089,10 @@
 <dd>
 <div class="block">Constructor.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/html/HtmlSerializer.html#HtmlSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">HtmlSerializer(PropertyStore, String, String...)</a></span> - Constructor for class org.apache.juneau.html.<a href="org/apache/juneau/html/HtmlSerializer.html" title="class in org.apache.juneau.html">HtmlSerializer</a></dt>
+<dd>
+<div class="block">Constructor.</div>
+</dd>
 <dt><a href="org/apache/juneau/html/HtmlSerializer.Sq.html" title="class in org.apache.juneau.html"><span class="typeNameLink">HtmlSerializer.Sq</span></a> - Class in <a href="org/apache/juneau/html/package-summary.html">org.apache.juneau.html</a></dt>
 <dd>
 <div class="block">Default serializer, single quotes.</div>
@@ -13129,6 +13137,10 @@
 <dd>
 <div class="block">Constructor.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/html/HtmlStrippedDocSerializer.html#HtmlStrippedDocSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">HtmlStrippedDocSerializer(PropertyStore, String, String...)</a></span> - Constructor for class org.apache.juneau.html.<a href="org/apache/juneau/html/HtmlStrippedDocSerializer.html" title="class in org.apache.juneau.html">HtmlStrippedDocSerializer</a></dt>
+<dd>
+<div class="block">Constructor.</div>
+</dd>
 <dt><a href="org/apache/juneau/html/HtmlStrippedDocSerializerSession.html" title="class in org.apache.juneau.html"><span class="typeNameLink">HtmlStrippedDocSerializerSession</span></a> - Class in <a href="org/apache/juneau/html/package-summary.html">org.apache.juneau.html</a></dt>
 <dd>
 <div class="block">Session object that lives for the duration of a single use of <a href="org/apache/juneau/html/HtmlStrippedDocSerializer.html" title="class in org.apache.juneau.html"><code>HtmlStrippedDocSerializer</code></a>.</div>
@@ -14414,7 +14426,7 @@
 <dd>
 <div class="block">Subclass of <a href="org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser"><code>Parser</code></a> for byte-based parsers.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/juneau/parser/InputStreamParser.html#InputStreamParser-org.apache.juneau.PropertyStore-">InputStreamParser(PropertyStore)</a></span> - Constructor for class org.apache.juneau.parser.<a href="org/apache/juneau/parser/InputStreamParser.html" title="class in org.apache.juneau.parser">InputStreamParser</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/parser/InputStreamParser.html#InputStreamParser-org.apache.juneau.PropertyStore-java.lang.String...-">InputStreamParser(PropertyStore, String...)</a></span> - Constructor for class org.apache.juneau.parser.<a href="org/apache/juneau/parser/InputStreamParser.html" title="class in org.apache.juneau.parser">InputStreamParser</a></dt>
 <dd>
 <div class="block">Constructor.</div>
 </dd>
@@ -15278,6 +15290,10 @@
 <dd>
 <div class="block">Constructor.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/json/JsonParser.html#JsonParser-org.apache.juneau.PropertyStore-java.lang.String...-">JsonParser(PropertyStore, String...)</a></span> - Constructor for class org.apache.juneau.json.<a href="org/apache/juneau/json/JsonParser.html" title="class in org.apache.juneau.json">JsonParser</a></dt>
+<dd>
+<div class="block">Constructor.</div>
+</dd>
 <dt><a href="org/apache/juneau/json/JsonParser.Strict.html" title="class in org.apache.juneau.json"><span class="typeNameLink">JsonParser.Strict</span></a> - Class in <a href="org/apache/juneau/json/package-summary.html">org.apache.juneau.json</a></dt>
 <dd>
 <div class="block">Default parser, strict mode.</div>
@@ -15346,6 +15362,10 @@
 <dd>
 <div class="block">Constructor.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/json/JsonSerializer.html#JsonSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">JsonSerializer(PropertyStore, String, String...)</a></span> - Constructor for class org.apache.juneau.json.<a href="org/apache/juneau/json/JsonSerializer.html" title="class in org.apache.juneau.json">JsonSerializer</a></dt>
+<dd>
+<div class="block">Constructor.</div>
+</dd>
 <dt><a href="org/apache/juneau/json/JsonSerializer.Readable.html" title="class in org.apache.juneau.json"><span class="typeNameLink">JsonSerializer.Readable</span></a> - Class in <a href="org/apache/juneau/json/package-summary.html">org.apache.juneau.json</a></dt>
 <dd>
 <div class="block">Default serializer, with whitespace.</div>
@@ -18482,7 +18502,7 @@
 <dd>
 <div class="block">Subclass of <a href="org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer"><code>Serializer</code></a> for byte-based serializers.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/juneau/serializer/OutputStreamSerializer.html#OutputStreamSerializer-org.apache.juneau.PropertyStore-">OutputStreamSerializer(PropertyStore)</a></span> - Constructor for class org.apache.juneau.serializer.<a href="org/apache/juneau/serializer/OutputStreamSerializer.html" title="class in org.apache.juneau.serializer">OutputStreamSerializer</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/serializer/OutputStreamSerializer.html#OutputStreamSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">OutputStreamSerializer(PropertyStore, String, String...)</a></span> - Constructor for class org.apache.juneau.serializer.<a href="org/apache/juneau/serializer/OutputStreamSerializer.html" title="class in org.apache.juneau.serializer">OutputStreamSerializer</a></dt>
 <dd>
 <div class="block">Constructor.</div>
 </dd>
@@ -19045,6 +19065,18 @@
 <dd>
 <div class="block">Pipes the contents of the specified reader into the writer.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/internal/IOUtils.html#pipe-java.lang.Object-java.io.Writer-">pipe(Object, Writer)</a></span> - Static method in class org.apache.juneau.internal.<a href="org/apache/juneau/internal/IOUtils.html" title="class in org.apache.juneau.internal">IOUtils</a></dt>
+<dd>
+<div class="block">Pipes the contents of the specified object into the writer.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/internal/IOUtils.html#pipe-java.io.InputStream-java.io.OutputStream-">pipe(InputStream, OutputStream)</a></span> - Static method in class org.apache.juneau.internal.<a href="org/apache/juneau/internal/IOUtils.html" title="class in org.apache.juneau.internal">IOUtils</a></dt>
+<dd>
+<div class="block">Pipes the contents of the specified streams.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/internal/IOUtils.html#pipe-java.lang.Object-java.io.OutputStream-">pipe(Object, OutputStream)</a></span> - Static method in class org.apache.juneau.internal.<a href="org/apache/juneau/internal/IOUtils.html" title="class in org.apache.juneau.internal">IOUtils</a></dt>
+<dd>
+<div class="block">Pipes the contents of the specified object into the output stream.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/juneau/rest/client/RestCall.html#pipeTo-java.io.Writer-">pipeTo(Writer)</a></span> - Method in class org.apache.juneau.rest.client.<a href="org/apache/juneau/rest/client/RestCall.html" title="class in org.apache.juneau.rest.client">RestCall</a></dt>
 <dd>
 <div class="block">Pipes the request output to the specified writer when <a href="org/apache/juneau/rest/client/RestCall.html#run--"><code>RestCall.run()</code></a> is called.</div>
@@ -19117,6 +19149,10 @@
 <dd>
 <div class="block">Constructor.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/plaintext/PlainTextParser.html#PlainTextParser-org.apache.juneau.PropertyStore-java.lang.String...-">PlainTextParser(PropertyStore, String...)</a></span> - Constructor for class org.apache.juneau.plaintext.<a href="org/apache/juneau/plaintext/PlainTextParser.html" title="class in org.apache.juneau.plaintext">PlainTextParser</a></dt>
+<dd>
+<div class="block">Constructor.</div>
+</dd>
 <dt><a href="org/apache/juneau/plaintext/PlainTextParserBuilder.html" title="class in org.apache.juneau.plaintext"><span class="typeNameLink">PlainTextParserBuilder</span></a> - Class in <a href="org/apache/juneau/plaintext/package-summary.html">org.apache.juneau.plaintext</a></dt>
 <dd>
 <div class="block">Builder class for building instances of plain-text parsers.</div>
@@ -19149,6 +19185,10 @@
 <dd>
 <div class="block">Constructor.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/plaintext/PlainTextSerializer.html#PlainTextSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">PlainTextSerializer(PropertyStore, String, String...)</a></span> - Constructor for class org.apache.juneau.plaintext.<a href="org/apache/juneau/plaintext/PlainTextSerializer.html" title="class in org.apache.juneau.plaintext">PlainTextSerializer</a></dt>
+<dd>
+<div class="block">Constructor.</div>
+</dd>
 <dt><a href="org/apache/juneau/plaintext/PlainTextSerializerBuilder.html" title="class in org.apache.juneau.plaintext"><span class="typeNameLink">PlainTextSerializerBuilder</span></a> - Class in <a href="org/apache/juneau/plaintext/package-summary.html">org.apache.juneau.plaintext</a></dt>
 <dd>
 <div class="block">Builder class for building instances of plain-text serializers.</div>
@@ -19462,10 +19502,6 @@
 <dd>
 <div class="block">Process the specified line.</div>
 </dd>
-<dt><a href="org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Produces</span></a> - Annotation Type in <a href="org/apache/juneau/annotation/package-summary.html">org.apache.juneau.annotation</a></dt>
-<dd>
-<div class="block">Annotation used on subclasses of <a href="org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer"><code>Serializer</code></a> to identify the media types that it produces.</div>
-</dd>
 <dt><span class="memberNameLink"><a href="org/apache/juneau/dto/swagger/Operation.html#produces-org.apache.juneau.http.MediaType...-">produces(MediaType...)</a></span> - Method in class org.apache.juneau.dto.swagger.<a href="org/apache/juneau/dto/swagger/Operation.html" title="class in org.apache.juneau.dto.swagger">Operation</a></dt>
 <dd>
 <div class="block">Synonym for <a href="org/apache/juneau/dto/swagger/Operation.html#addProduces-org.apache.juneau.http.MediaType...-"><code>Operation.addProduces(MediaType...)</code></a>.</div>
@@ -20379,7 +20415,7 @@
 <dd>
 <div class="block">Parses RDF into POJOs.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/juneau/jena/RdfParser.html#RdfParser-org.apache.juneau.PropertyStore-">RdfParser(PropertyStore)</a></span> - Constructor for class org.apache.juneau.jena.<a href="org/apache/juneau/jena/RdfParser.html" title="class in org.apache.juneau.jena">RdfParser</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/jena/RdfParser.html#RdfParser-org.apache.juneau.PropertyStore-java.lang.String...-">RdfParser(PropertyStore, String...)</a></span> - Constructor for class org.apache.juneau.jena.<a href="org/apache/juneau/jena/RdfParser.html" title="class in org.apache.juneau.jena">RdfParser</a></dt>
 <dd>
 <div class="block">Constructor.</div>
 </dd>
@@ -20435,7 +20471,7 @@
 <dd>
 <div class="block">Serializes POJOs to RDF.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/juneau/jena/RdfSerializer.html#RdfSerializer-org.apache.juneau.PropertyStore-">RdfSerializer(PropertyStore)</a></span> - Constructor for class org.apache.juneau.jena.<a href="org/apache/juneau/jena/RdfSerializer.html" title="class in org.apache.juneau.jena">RdfSerializer</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/jena/RdfSerializer.html#RdfSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">RdfSerializer(PropertyStore, String, String...)</a></span> - Constructor for class org.apache.juneau.jena.<a href="org/apache/juneau/jena/RdfSerializer.html" title="class in org.apache.juneau.jena">RdfSerializer</a></dt>
 <dd>
 <div class="block">Constructor.</div>
 </dd>
@@ -20575,7 +20611,7 @@
 <dd>
 <div class="block">Subclass of <a href="org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser"><code>Parser</code></a> for characters-based parsers.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/juneau/parser/ReaderParser.html#ReaderParser-org.apache.juneau.PropertyStore-">ReaderParser(PropertyStore)</a></span> - Constructor for class org.apache.juneau.parser.<a href="org/apache/juneau/parser/ReaderParser.html" title="class in org.apache.juneau.parser">ReaderParser</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/parser/ReaderParser.html#ReaderParser-org.apache.juneau.PropertyStore-java.lang.String...-">ReaderParser(PropertyStore, String...)</a></span> - Constructor for class org.apache.juneau.parser.<a href="org/apache/juneau/parser/ReaderParser.html" title="class in org.apache.juneau.parser">ReaderParser</a></dt>
 <dd>
 <div class="block">Constructor.</div>
 </dd>
@@ -26903,6 +26939,10 @@
 <dd>
 <div class="block">Utility method that converts the current event on the XML stream to something human-readable for debug purposes.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/internal/IOUtils.html#toReader-java.lang.Object-">toReader(Object)</a></span> - Static method in class org.apache.juneau.internal.<a href="org/apache/juneau/internal/IOUtils.html" title="class in org.apache.juneau.internal">IOUtils</a></dt>
+<dd>
+<div class="block">Converts an object to a <code>Reader</code>.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/juneau/rest/UrlPathPattern.html#toRegEx--">toRegEx()</a></span> - Method in class org.apache.juneau.rest.<a href="org/apache/juneau/rest/UrlPathPattern.html" title="class in org.apache.juneau.rest">UrlPathPattern</a></dt>
 <dd>
 <div class="block">Returns this path pattern as the compiled regular expression.</div>
@@ -27743,6 +27783,10 @@
 <dd>
 <div class="block">Constructor.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/uon/UonParser.html#UonParser-org.apache.juneau.PropertyStore-java.lang.String...-">UonParser(PropertyStore, String...)</a></span> - Constructor for class org.apache.juneau.uon.<a href="org/apache/juneau/uon/UonParser.html" title="class in org.apache.juneau.uon">UonParser</a></dt>
+<dd>
+<div class="block">Constructor.</div>
+</dd>
 <dt><a href="org/apache/juneau/uon/UonParser.Decoding.html" title="class in org.apache.juneau.uon"><span class="typeNameLink">UonParser.Decoding</span></a> - Class in <a href="org/apache/juneau/uon/package-summary.html">org.apache.juneau.uon</a></dt>
 <dd>
 <div class="block">Default parser, decoding.</div>
@@ -27775,7 +27819,7 @@
 <dd>
 <div class="block">Create a new session using properties specified in the context.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/juneau/uon/UonParserSession.html#UonParserSession-org.apache.juneau.uon.UonParserContext-">UonParserSession(UonParserContext)</a></span> - Constructor for class org.apache.juneau.uon.<a href="org/apache/juneau/uon/UonParserSession.html" title="class in org.apache.juneau.uon">UonParserSession</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/uon/UonParserSession.html#UonParserSession-org.apache.juneau.uon.UonParserContext-org.apache.juneau.parser.ParserSessionArgs-boolean-">UonParserSession(UonParserContext, ParserSessionArgs, boolean)</a></span> - Constructor for class org.apache.juneau.uon.<a href="org/apache/juneau/uon/UonParserSession.html" title="class in org.apache.juneau.uon">UonParserSession</a></dt>
 <dd>
 <div class="block">Create a specialized parser session for parsing URL parameters.</div>
 </dd>
@@ -27795,6 +27839,10 @@
 <dd>
 <div class="block">Constructor.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/uon/UonSerializer.html#UonSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">UonSerializer(PropertyStore, String, String...)</a></span> - Constructor for class org.apache.juneau.uon.<a href="org/apache/juneau/uon/UonSerializer.html" title="class in org.apache.juneau.uon">UonSerializer</a></dt>
+<dd>
+<div class="block">Constructor.</div>
+</dd>
 <dt><a href="org/apache/juneau/uon/UonSerializer.Encoding.html" title="class in org.apache.juneau.uon"><span class="typeNameLink">UonSerializer.Encoding</span></a> - Class in <a href="org/apache/juneau/uon/package-summary.html">org.apache.juneau.uon</a></dt>
 <dd>
 <div class="block">Equivalent to <code><jk>new</jk> UonSerializerBuilder().encoding().build();</code>.</div>
@@ -28179,6 +28227,10 @@
 <dd>
 <div class="block">Constructor.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/urlencoding/UrlEncodingSerializer.html#UrlEncodingSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">UrlEncodingSerializer(PropertyStore, String, String...)</a></span> - Constructor for class org.apache.juneau.urlencoding.<a href="org/apache/juneau/urlencoding/UrlEncodingSerializer.html" title="class in org.apache.juneau.urlencoding">UrlEncodingSerializer</a></dt>
+<dd>
+<div class="block">Constructor.</div>
+</dd>
 <dt><a href="org/apache/juneau/urlencoding/UrlEncodingSerializer.Expanded.html" title="class in org.apache.juneau.urlencoding"><span class="typeNameLink">UrlEncodingSerializer.Expanded</span></a> - Class in <a href="org/apache/juneau/urlencoding/package-summary.html">org.apache.juneau.urlencoding</a></dt>
 <dd>
 <div class="block">Equivalent to <code><jk>new</jk> UrlEncodingSerializerBuilder().expandedParams(<jk>true</jk>).build();</code>.</div>
@@ -28968,7 +29020,7 @@ the order they are declared.</div>
 <dd>
 <div class="block">Subclass of <a href="org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer"><code>Serializer</code></a> for character-based serializers.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/juneau/serializer/WriterSerializer.html#WriterSerializer-org.apache.juneau.PropertyStore-">WriterSerializer(PropertyStore)</a></span> - Constructor for class org.apache.juneau.serializer.<a href="org/apache/juneau/serializer/WriterSerializer.html" title="class in org.apache.juneau.serializer">WriterSerializer</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/serializer/WriterSerializer.html#WriterSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">WriterSerializer(PropertyStore, String, String...)</a></span> - Constructor for class org.apache.juneau.serializer.<a href="org/apache/juneau/serializer/WriterSerializer.html" title="class in org.apache.juneau.serializer">WriterSerializer</a></dt>
 <dd>
 <div class="block">Constructor.</div>
 </dd>
@@ -29231,6 +29283,10 @@ the order they are declared.</div>
 <dd>
 <div class="block">Constructor.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/xml/XmlParser.html#XmlParser-org.apache.juneau.PropertyStore-java.lang.String...-">XmlParser(PropertyStore, String...)</a></span> - Constructor for class org.apache.juneau.xml.<a href="org/apache/juneau/xml/XmlParser.html" title="class in org.apache.juneau.xml">XmlParser</a></dt>
+<dd>
+<div class="block">Constructor.</div>
+</dd>
 <dt><a href="org/apache/juneau/xml/XmlParserBuilder.html" title="class in org.apache.juneau.xml"><span class="typeNameLink">XmlParserBuilder</span></a> - Class in <a href="org/apache/juneau/xml/package-summary.html">org.apache.juneau.xml</a></dt>
 <dd>
 <div class="block">Builder class for building XML parsers.</div>
@@ -29323,6 +29379,10 @@ the order they are declared.</div>
 <dd>
 <div class="block">Constructor.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/juneau/xml/XmlSerializer.html#XmlSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">XmlSerializer(PropertyStore, String, String...)</a></span> - Constructor for class org.apache.juneau.xml.<a href="org/apache/juneau/xml/XmlSerializer.html" title="class in org.apache.juneau.xml">XmlSerializer</a></dt>
+<dd>
+<div class="block">Constructor.</div>
+</dd>
 <dt><a href="org/apache/juneau/xml/XmlSerializer.Ns.html" title="class in org.apache.juneau.xml"><span class="typeNameLink">XmlSerializer.Ns</span></a> - Class in <a href="org/apache/juneau/xml/package-summary.html">org.apache.juneau.xml</a></dt>
 <dd>
 <div class="block">Default serializer without namespaces.</div>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/annotation/BeanProperty.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/annotation/BeanProperty.html b/content/site/apidocs/org/apache/juneau/annotation/BeanProperty.html
index 6720765..e2c606e 100644
--- a/content/site/apidocs/org/apache/juneau/annotation/BeanProperty.html
+++ b/content/site/apidocs/org/apache/juneau/annotation/BeanProperty.html
@@ -43,7 +43,7 @@
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../org/apache/juneau/annotation/BeanParam.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/juneau/annotation/NameProperty.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../index.html?org/apache/juneau/annotation/BeanProperty.html" target="_top">Frames</a></li>
@@ -567,7 +567,7 @@ public @interface <a href="../../../../src-html/org/apache/juneau/annotation/Bea
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../org/apache/juneau/annotation/BeanParam.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/juneau/annotation/NameProperty.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../index.html?org/apache/juneau/annotation/BeanProperty.html" target="_top">Frames</a></li>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/annotation/Consumes.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/annotation/Consumes.html b/content/site/apidocs/org/apache/juneau/annotation/Consumes.html
deleted file mode 100644
index bc62b91..0000000
--- a/content/site/apidocs/org/apache/juneau/annotation/Consumes.html
+++ /dev/null
@@ -1,261 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<!-- NewPage -->
-<html lang="en">
-<head>
-<!-- Generated by javadoc -->
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Consumes (Apache Juneau (incubating) 6.3.2-incubating-SNAPSHOT)</title>
-<link rel="stylesheet" type="text/css" href="../../../../javadoc.css" title="Style">
-<script type="text/javascript" src="../../../../script.js"></script>
-</head>
-<body>
-<script type="text/javascript"><!--
-    try {
-        if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Consumes (Apache Juneau (incubating) 6.3.2-incubating-SNAPSHOT)";
-        }
-    }
-    catch(err) {
-    }
-//-->
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-<!-- ========= START OF TOP NAVBAR ======= -->
-<div class="topNav"><a name="navbar.top">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
-<a name="navbar.top.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../../../overview-summary.html">Overview</a></li>
-<li><a href="package-summary.html">Package</a></li>
-<li class="navBarCell1Rev">Class</li>
-<li><a href="package-tree.html">Tree</a></li>
-<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../../../index-all.html">Index</a></li>
-<li><a href="../../../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList">
-<li><a href="../../../../org/apache/juneau/annotation/BeanProperty.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../org/apache/juneau/annotation/NameProperty.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
-</ul>
-<ul class="navList">
-<li><a href="../../../../index.html?org/apache/juneau/annotation/Consumes.html" target="_top">Frames</a></li>
-<li><a href="Consumes.html" target="_top">No&nbsp;Frames</a></li>
-</ul>
-<ul class="navList" id="allclasses_navbar_top">
-<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_top");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-</div>
-<div>
-<ul class="subNavList">
-<li>Summary:&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li>Required&nbsp;|&nbsp;</li>
-<li><a href="#annotation.type.optional.element.summary">Optional</a></li>
-</ul>
-<ul class="subNavList">
-<li>Detail:&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li><a href="#annotation.type.element.detail">Element</a></li>
-</ul>
-</div>
-<a name="skip.navbar.top">
-<!--   -->
-</a></div>
-<!-- ========= END OF TOP NAVBAR ========= -->
-<!-- ======== START OF CLASS DATA ======== -->
-<div class="header">
-<div class="subTitle">org.apache.juneau.annotation</div>
-<h2 title="Annotation Type Consumes" class="title">Annotation Type Consumes</h2>
-</div>
-<div class="contentContainer">
-<div class="description">
-<ul class="blockList">
-<li class="blockList">
-<hr>
-<br>
-<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Documented.html?is-external=true" title="class or interface in java.lang.annotation">@Documented</a>
- <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Target.html?is-external=true" title="class or interface in java.lang.annotation">@Target</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Target.html?is-external=true#value--" title="class or interface in java.lang.annotation">value</a>=<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/ElementType.html?is-external=true#TYPE" title="class or interface in java.lang.annotation">TYPE</a>)
- <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Retention.html?is-external=true" title="class or interface in java.lang.annotation">@Retention</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Retention.html?is-external=true#value--" title="class or interface in java.lang.annotation">value</a>=<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/RetentionPolicy.html?is-external=true#RUNTIME" title="class or interface in java.lang.annotation">RUNTIME</a>)
- <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Inherited.html?is-external=true" title="class or interface in java.lang.annotation">@Inherited</a>
-public @interface <a href="../../../../src-html/org/apache/juneau/annotation/Consumes.html#line.60">Consumes</a></pre>
-<div class="block">Annotation used on subclasses of <a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser"><code>Parser</code></a> to identify the media types that it consumes.
-
- <h5 class='section'>Description:</h5>
-
- Provides a way to define the contents of <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--"><code>Parser.getMediaTypes()</code></a> through an annotation.
-
- <p>
- The <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--"><code>Parser.getMediaTypes()</code></a> default implementation gathers the media types by looking for this annotation.
- It should be noted that this annotation is optional and that the <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--"><code>Parser.getMediaTypes()</code></a> method can be
- overridden by subclasses to return the media types programmatically.
-
- <h5 class='section'>Example:</h5>
-
- Standard example:
- <p class='bcode'>
-   <ja>@Consumes</ja>(<js>"application/json,text/json"</js>)
-   <jk>public class</jk> JsonParser <jk>extends</jk> ReaderParser {...}
- </p>
-
- <p>
- The media types can also be <code>media-range</code> values per
- <a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1">RFC2616/14.1</a>.
-
- <p class='bcode'>
-   <jc>// Consumes any text</jc>
-   <ja>@Consumes</ja>(<js>"text\/*"</js>)
-   <jk>public class</jk> AnythingParser <jk>extends</jk> ReaderParser {...}
-
-   <jc>// Consumes anything</jc>
-   <ja>@Consumes</ja>(<js>"*\/*"</js>)
-   <jk>public class</jk> AnythingParser <jk>extends</jk> ReaderParser {...}
- </p></div>
-</li>
-</ul>
-</div>
-<div class="summary">
-<ul class="blockList">
-<li class="blockList">
-<!-- =========== ANNOTATION TYPE OPTIONAL MEMBER SUMMARY =========== -->
-<ul class="blockList">
-<li class="blockList"><a name="annotation.type.optional.element.summary">
-<!--   -->
-</a>
-<h3>Optional Element Summary</h3>
-<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Optional Element Summary table, listing optional elements, and an explanation">
-<caption><span>Optional Elements</span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colLast" scope="col">Optional Element and Description</th>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/annotation/Consumes.html#value--">value</a></span></code>
-<div class="block">A comma-delimited list of media types that the parser can handle.</div>
-</td>
-</tr>
-</table>
-</li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="details">
-<ul class="blockList">
-<li class="blockList">
-<!-- ============ ANNOTATION TYPE MEMBER DETAIL =========== -->
-<ul class="blockList">
-<li class="blockList"><a name="annotation.type.element.detail">
-<!--   -->
-</a>
-<h3>Element Detail</h3>
-<a name="value--">
-<!--   -->
-</a>
-<ul class="blockListLast">
-<li class="blockList">
-<h4>value</h4>
-<pre>public abstract&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/annotation/Consumes.html#line.71">value</a></pre>
-<div class="block">A comma-delimited list of media types that the parser can handle.
-
- <p>
- Can contain meta-characters per the <code>media-type</code> specification of
- <a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1">RFC2616/14.1</a></div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>The media types that the parser can handle.</dd>
-</dl>
-<dl>
-<dt>Default:</dt>
-<dd>""</dd>
-</dl>
-</li>
-</ul>
-</li>
-</ul>
-</li>
-</ul>
-</div>
-</div>
-<!-- ========= END OF CLASS DATA ========= -->
-<!-- ======= START OF BOTTOM NAVBAR ====== -->
-<div class="bottomNav"><a name="navbar.bottom">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
-<a name="navbar.bottom.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../../../overview-summary.html">Overview</a></li>
-<li><a href="package-summary.html">Package</a></li>
-<li class="navBarCell1Rev">Class</li>
-<li><a href="package-tree.html">Tree</a></li>
-<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../../../index-all.html">Index</a></li>
-<li><a href="../../../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList">
-<li><a href="../../../../org/apache/juneau/annotation/BeanProperty.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../org/apache/juneau/annotation/NameProperty.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
-</ul>
-<ul class="navList">
-<li><a href="../../../../index.html?org/apache/juneau/annotation/Consumes.html" target="_top">Frames</a></li>
-<li><a href="Consumes.html" target="_top">No&nbsp;Frames</a></li>
-</ul>
-<ul class="navList" id="allclasses_navbar_bottom">
-<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_bottom");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-</div>
-<div>
-<ul class="subNavList">
-<li>Summary:&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li>Required&nbsp;|&nbsp;</li>
-<li><a href="#annotation.type.optional.element.summary">Optional</a></li>
-</ul>
-<ul class="subNavList">
-<li>Detail:&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li><a href="#annotation.type.element.detail">Element</a></li>
-</ul>
-</div>
-<a name="skip.navbar.bottom">
-<!--   -->
-</a></div>
-<!-- ======== END OF BOTTOM NAVBAR ======= -->
-<p class="legalCopy"><small>Copyright &#169; 2017 <a href="http://www.apache.org/">Apache</a>. All rights reserved.</small></p>
-</body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/annotation/NameProperty.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/annotation/NameProperty.html b/content/site/apidocs/org/apache/juneau/annotation/NameProperty.html
index 6cbbb44..7f11689 100644
--- a/content/site/apidocs/org/apache/juneau/annotation/NameProperty.html
+++ b/content/site/apidocs/org/apache/juneau/annotation/NameProperty.html
@@ -42,7 +42,7 @@
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/juneau/annotation/BeanProperty.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../org/apache/juneau/annotation/Null.html" title="class in org.apache.juneau.annotation"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
@@ -151,7 +151,7 @@ public @interface <a href="../../../../src-html/org/apache/juneau/annotation/Nam
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/juneau/annotation/BeanProperty.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../org/apache/juneau/annotation/Null.html" title="class in org.apache.juneau.annotation"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/annotation/Pojo.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/annotation/Pojo.html b/content/site/apidocs/org/apache/juneau/annotation/Pojo.html
index c039405..e63d609 100644
--- a/content/site/apidocs/org/apache/juneau/annotation/Pojo.html
+++ b/content/site/apidocs/org/apache/juneau/annotation/Pojo.html
@@ -43,7 +43,7 @@
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../org/apache/juneau/annotation/ParentProperty.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/juneau/annotation/ThreadSafe.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../index.html?org/apache/juneau/annotation/Pojo.html" target="_top">Frames</a></li>
@@ -228,7 +228,7 @@ public @interface <a href="../../../../src-html/org/apache/juneau/annotation/Poj
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../org/apache/juneau/annotation/ParentProperty.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/juneau/annotation/ThreadSafe.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../index.html?org/apache/juneau/annotation/Pojo.html" target="_top">Frames</a></li>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/annotation/Produces.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/annotation/Produces.html b/content/site/apidocs/org/apache/juneau/annotation/Produces.html
deleted file mode 100644
index 7756333..0000000
--- a/content/site/apidocs/org/apache/juneau/annotation/Produces.html
+++ /dev/null
@@ -1,294 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<!-- NewPage -->
-<html lang="en">
-<head>
-<!-- Generated by javadoc -->
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<title>Produces (Apache Juneau (incubating) 6.3.2-incubating-SNAPSHOT)</title>
-<link rel="stylesheet" type="text/css" href="../../../../javadoc.css" title="Style">
-<script type="text/javascript" src="../../../../script.js"></script>
-</head>
-<body>
-<script type="text/javascript"><!--
-    try {
-        if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Produces (Apache Juneau (incubating) 6.3.2-incubating-SNAPSHOT)";
-        }
-    }
-    catch(err) {
-    }
-//-->
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-<!-- ========= START OF TOP NAVBAR ======= -->
-<div class="topNav"><a name="navbar.top">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
-<a name="navbar.top.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../../../overview-summary.html">Overview</a></li>
-<li><a href="package-summary.html">Package</a></li>
-<li class="navBarCell1Rev">Class</li>
-<li><a href="package-tree.html">Tree</a></li>
-<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../../../index-all.html">Index</a></li>
-<li><a href="../../../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList">
-<li><a href="../../../../org/apache/juneau/annotation/Pojo.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../org/apache/juneau/annotation/ThreadSafe.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
-</ul>
-<ul class="navList">
-<li><a href="../../../../index.html?org/apache/juneau/annotation/Produces.html" target="_top">Frames</a></li>
-<li><a href="Produces.html" target="_top">No&nbsp;Frames</a></li>
-</ul>
-<ul class="navList" id="allclasses_navbar_top">
-<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_top");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-</div>
-<div>
-<ul class="subNavList">
-<li>Summary:&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li>Required&nbsp;|&nbsp;</li>
-<li><a href="#annotation.type.optional.element.summary">Optional</a></li>
-</ul>
-<ul class="subNavList">
-<li>Detail:&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li><a href="#annotation.type.element.detail">Element</a></li>
-</ul>
-</div>
-<a name="skip.navbar.top">
-<!--   -->
-</a></div>
-<!-- ========= END OF TOP NAVBAR ========= -->
-<!-- ======== START OF CLASS DATA ======== -->
-<div class="header">
-<div class="subTitle">org.apache.juneau.annotation</div>
-<h2 title="Annotation Type Produces" class="title">Annotation Type Produces</h2>
-</div>
-<div class="contentContainer">
-<div class="description">
-<ul class="blockList">
-<li class="blockList">
-<hr>
-<br>
-<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Documented.html?is-external=true" title="class or interface in java.lang.annotation">@Documented</a>
- <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Target.html?is-external=true" title="class or interface in java.lang.annotation">@Target</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Target.html?is-external=true#value--" title="class or interface in java.lang.annotation">value</a>=<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/ElementType.html?is-external=true#TYPE" title="class or interface in java.lang.annotation">TYPE</a>)
- <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Retention.html?is-external=true" title="class or interface in java.lang.annotation">@Retention</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Retention.html?is-external=true#value--" title="class or interface in java.lang.annotation">value</a>=<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/RetentionPolicy.html?is-external=true#RUNTIME" title="class or interface in java.lang.annotation">RUNTIME</a>)
- <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Inherited.html?is-external=true" title="class or interface in java.lang.annotation">@Inherited</a>
-public @interface <a href="../../../../src-html/org/apache/juneau/annotation/Produces.html#line.62">Produces</a></pre>
-<div class="block">Annotation used on subclasses of <a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer"><code>Serializer</code></a> to identify the media types that it produces.
-
- <h5 class='section'>Description:</h5>
-
- Provides a way to define the contents of <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--"><code>Serializer.getMediaTypes()</code></a> through an annotation.
-
- <p>
- The <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--"><code>Serializer.getMediaTypes()</code></a> default implementation gathers the media types by looking for this annotation.
- <br>It should be noted that this annotation is optional and that the <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--"><code>Serializer.getMediaTypes()</code></a> method can
- be overridden by subclasses to return the media types programmatically.
-
- <h5 class='section'>Example:</h5>
-
- Standard example:
- <p class='bcode'>
-   <ja>@Produces</ja>(<js>"application/json,text/json"</js>)
-   <jk>public class</jk> JsonSerializer <jk>extends</jk> WriterSerializer {...}
- </p>
-
- <p>
- The media types can also be <code>media-range</code> values per
- <a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1">RFC2616/14.1</a>.
- <br>When meta-characters are used, you should specify the <a href="../../../../org/apache/juneau/annotation/Produces.html#contentType--"><code>contentType()</code></a> value to indicate the real media type
- value that can be set on the <code>Content-Type</code> response header.
-
- <p class='bcode'>
-   <jc>// Produces any text</jc>
-   <ja>@Produces</ja>(value=<js>"text\/*"</js>, contentType=<js>"text/plain"</js>)
-   <jk>public class</jk> AnythingSerializer <jk>extends</jk> WriterSerializer {...}
-
-   <jc>// Produces anything</jc>
-   <ja>@Produces</ja>(value=<js>"*\/*"</js>, contentType=<js>"text/plain"</js>)
-   <jk>public class</jk> AnythingSerializer <jk>extends</jk> WriterSerializer {...}
- </p></div>
-</li>
-</ul>
-</div>
-<div class="summary">
-<ul class="blockList">
-<li class="blockList">
-<!-- =========== ANNOTATION TYPE OPTIONAL MEMBER SUMMARY =========== -->
-<ul class="blockList">
-<li class="blockList"><a name="annotation.type.optional.element.summary">
-<!--   -->
-</a>
-<h3>Optional Element Summary</h3>
-<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Optional Element Summary table, listing optional elements, and an explanation">
-<caption><span>Optional Elements</span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colLast" scope="col">Optional Element and Description</th>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/annotation/Produces.html#contentType--">contentType</a></span></code>
-<div class="block">The content type that this serializer produces.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a></span></code>
-<div class="block">A comma-delimited list of the media types that the serializer can handle.</div>
-</td>
-</tr>
-</table>
-</li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="details">
-<ul class="blockList">
-<li class="blockList">
-<!-- ============ ANNOTATION TYPE MEMBER DETAIL =========== -->
-<ul class="blockList">
-<li class="blockList"><a name="annotation.type.element.detail">
-<!--   -->
-</a>
-<h3>Element Detail</h3>
-<a name="value--">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>value</h4>
-<pre>public abstract&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/annotation/Produces.html#line.73">value</a></pre>
-<div class="block">A comma-delimited list of the media types that the serializer can handle.
-
- <p>
- Can contain meta-characters per the <code>media-type</code> specification of
- <a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1">RFC2616/14.1</a></div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>The media types that the parser can handle.</dd>
-</dl>
-<dl>
-<dt>Default:</dt>
-<dd>""</dd>
-</dl>
-</li>
-</ul>
-</li>
-</ul>
-<ul class="blockList">
-<li class="blockList"><a name="contentType--">
-<!--   -->
-</a>
-<ul class="blockListLast">
-<li class="blockList">
-<h4>contentType</h4>
-<pre>public abstract&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/annotation/Produces.html#line.84">contentType</a></pre>
-<div class="block">The content type that this serializer produces.
-
- <p>
- Can be used to override the <code>Content-Type</code> response type if the media types are
- <code>media-ranges</code> with meta-characters, or the <code>Content-Type</code> differs from the media type for some reason.</div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>The content type that this serializer produces, or blank if no overriding value exists.</dd>
-</dl>
-<dl>
-<dt>Default:</dt>
-<dd>""</dd>
-</dl>
-</li>
-</ul>
-</li>
-</ul>
-</li>
-</ul>
-</div>
-</div>
-<!-- ========= END OF CLASS DATA ========= -->
-<!-- ======= START OF BOTTOM NAVBAR ====== -->
-<div class="bottomNav"><a name="navbar.bottom">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
-<a name="navbar.bottom.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../../../overview-summary.html">Overview</a></li>
-<li><a href="package-summary.html">Package</a></li>
-<li class="navBarCell1Rev">Class</li>
-<li><a href="package-tree.html">Tree</a></li>
-<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../../../index-all.html">Index</a></li>
-<li><a href="../../../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList">
-<li><a href="../../../../org/apache/juneau/annotation/Pojo.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../org/apache/juneau/annotation/ThreadSafe.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
-</ul>
-<ul class="navList">
-<li><a href="../../../../index.html?org/apache/juneau/annotation/Produces.html" target="_top">Frames</a></li>
-<li><a href="Produces.html" target="_top">No&nbsp;Frames</a></li>
-</ul>
-<ul class="navList" id="allclasses_navbar_bottom">
-<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_bottom");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-</div>
-<div>
-<ul class="subNavList">
-<li>Summary:&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li>Required&nbsp;|&nbsp;</li>
-<li><a href="#annotation.type.optional.element.summary">Optional</a></li>
-</ul>
-<ul class="subNavList">
-<li>Detail:&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li><a href="#annotation.type.element.detail">Element</a></li>
-</ul>
-</div>
-<a name="skip.navbar.bottom">
-<!--   -->
-</a></div>
-<!-- ======== END OF BOTTOM NAVBAR ======= -->
-<p class="legalCopy"><small>Copyright &#169; 2017 <a href="http://www.apache.org/">Apache</a>. All rights reserved.</small></p>
-</body>
-</html>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/annotation/ThreadSafe.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/annotation/ThreadSafe.html b/content/site/apidocs/org/apache/juneau/annotation/ThreadSafe.html
index 2672050..326f861 100644
--- a/content/site/apidocs/org/apache/juneau/annotation/ThreadSafe.html
+++ b/content/site/apidocs/org/apache/juneau/annotation/ThreadSafe.html
@@ -42,7 +42,7 @@
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/juneau/annotation/Pojo.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../org/apache/juneau/annotation/URI.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
@@ -125,7 +125,7 @@ public @interface <a href="../../../../src-html/org/apache/juneau/annotation/Thr
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../org/apache/juneau/annotation/Pojo.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../org/apache/juneau/annotation/URI.html" title="annotation in org.apache.juneau.annotation"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/annotation/package-frame.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/annotation/package-frame.html b/content/site/apidocs/org/apache/juneau/annotation/package-frame.html
index 8ca3f6c..701b524 100644
--- a/content/site/apidocs/org/apache/juneau/annotation/package-frame.html
+++ b/content/site/apidocs/org/apache/juneau/annotation/package-frame.html
@@ -22,12 +22,10 @@
 <li><a href="BeanIgnore.html" title="annotation in org.apache.juneau.annotation" target="classFrame">BeanIgnore</a></li>
 <li><a href="BeanParam.html" title="annotation in org.apache.juneau.annotation" target="classFrame">BeanParam</a></li>
 <li><a href="BeanProperty.html" title="annotation in org.apache.juneau.annotation" target="classFrame">BeanProperty</a></li>
-<li><a href="Consumes.html" title="annotation in org.apache.juneau.annotation" target="classFrame">Consumes</a></li>
 <li><a href="NameProperty.html" title="annotation in org.apache.juneau.annotation" target="classFrame">NameProperty</a></li>
 <li><a href="Overrideable.html" title="annotation in org.apache.juneau.annotation" target="classFrame">Overrideable</a></li>
 <li><a href="ParentProperty.html" title="annotation in org.apache.juneau.annotation" target="classFrame">ParentProperty</a></li>
 <li><a href="Pojo.html" title="annotation in org.apache.juneau.annotation" target="classFrame">Pojo</a></li>
-<li><a href="Produces.html" title="annotation in org.apache.juneau.annotation" target="classFrame">Produces</a></li>
 <li><a href="ThreadSafe.html" title="annotation in org.apache.juneau.annotation" target="classFrame">ThreadSafe</a></li>
 <li><a href="URI.html" title="annotation in org.apache.juneau.annotation" target="classFrame">URI</a></li>
 </ul>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/annotation/package-summary.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/annotation/package-summary.html b/content/site/apidocs/org/apache/juneau/annotation/package-summary.html
index 1cc0cac..f07c60d 100644
--- a/content/site/apidocs/org/apache/juneau/annotation/package-summary.html
+++ b/content/site/apidocs/org/apache/juneau/annotation/package-summary.html
@@ -133,41 +133,29 @@
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation">Consumes</a></td>
-<td class="colLast">
-<div class="block">Annotation used on subclasses of <a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser"><code>Parser</code></a> to identify the media types that it consumes.</div>
-</td>
-</tr>
-<tr class="altColor">
 <td class="colFirst"><a href="../../../../org/apache/juneau/annotation/NameProperty.html" title="annotation in org.apache.juneau.annotation">NameProperty</a></td>
 <td class="colLast">
 <div class="block">Identifies a setter as a method for setting the name of a POJO as it's known by its parent object.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../org/apache/juneau/annotation/Overrideable.html" title="annotation in org.apache.juneau.annotation">Overrideable</a></td>
 <td class="colLast">
 <div class="block">Identifies a method as specifically designed to be overridden and augmented.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../org/apache/juneau/annotation/ParentProperty.html" title="annotation in org.apache.juneau.annotation">ParentProperty</a></td>
 <td class="colLast">
 <div class="block">Identifies a setter as a method for adding a parent reference to a child object.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../org/apache/juneau/annotation/Pojo.html" title="annotation in org.apache.juneau.annotation">Pojo</a></td>
 <td class="colLast">
 <div class="block">Used to tailor how POJOs get interpreted by the framework.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">Produces</a></td>
-<td class="colLast">
-<div class="block">Annotation used on subclasses of <a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer"><code>Serializer</code></a> to identify the media types that it produces.</div>
-</td>
-</tr>
 <tr class="rowColor">
 <td class="colFirst"><a href="../../../../org/apache/juneau/annotation/ThreadSafe.html" title="annotation in org.apache.juneau.annotation">ThreadSafe</a></td>
 <td class="colLast">


[09/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html b/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html
index 4377968..1edde7a 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html
@@ -29,256 +29,280 @@
 <span class="sourceLineNo">021</span>import java.net.*;<a name="line.21"></a>
 <span class="sourceLineNo">022</span><a name="line.22"></a>
 <span class="sourceLineNo">023</span>import org.apache.juneau.*;<a name="line.23"></a>
-<span class="sourceLineNo">024</span>import org.apache.juneau.annotation.*;<a name="line.24"></a>
-<span class="sourceLineNo">025</span>import org.apache.juneau.serializer.*;<a name="line.25"></a>
-<span class="sourceLineNo">026</span>import org.apache.juneau.uon.*;<a name="line.26"></a>
-<span class="sourceLineNo">027</span><a name="line.27"></a>
-<span class="sourceLineNo">028</span>/**<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * Serializes POJO models to URL-encoded notation with UON-encoded values (a notation for URL-encoded query paramter values).<a name="line.29"></a>
-<span class="sourceLineNo">030</span> *<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;application/x-www-form-urlencoded&lt;/code&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * &lt;p&gt;<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/x-www-form-urlencoded&lt;/code&gt;<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *<a name="line.36"></a>
-<span class="sourceLineNo">037</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *<a name="line.38"></a>
-<span class="sourceLineNo">039</span> * This serializer provides several serialization options.  Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.39"></a>
-<span class="sourceLineNo">040</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *<a name="line.41"></a>
-<span class="sourceLineNo">042</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *<a name="line.43"></a>
-<span class="sourceLineNo">044</span> * This class has the following properties associated with it:<a name="line.44"></a>
-<span class="sourceLineNo">045</span> * &lt;ul&gt;<a name="line.45"></a>
-<span class="sourceLineNo">046</span> *    &lt;li&gt;{@link UonSerializerContext}<a name="line.46"></a>
-<span class="sourceLineNo">047</span> *    &lt;li&gt;{@link BeanContext}<a name="line.47"></a>
-<span class="sourceLineNo">048</span> * &lt;/ul&gt;<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *<a name="line.49"></a>
-<span class="sourceLineNo">050</span> * &lt;p&gt;<a name="line.50"></a>
-<span class="sourceLineNo">051</span> * The following shows a sample object defined in Javascript:<a name="line.51"></a>
-<span class="sourceLineNo">052</span> * &lt;p class='bcode'&gt;<a name="line.52"></a>
-<span class="sourceLineNo">053</span> *    {<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *       id: 1,<a name="line.54"></a>
-<span class="sourceLineNo">055</span> *       name: &lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.55"></a>
-<span class="sourceLineNo">056</span> *       uri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.56"></a>
-<span class="sourceLineNo">057</span> *       addressBookUri: &lt;js&gt;'http://sample/addressBook'&lt;/js&gt;,<a name="line.57"></a>
-<span class="sourceLineNo">058</span> *       birthDate: &lt;js&gt;'1946-08-12T00:00:00Z'&lt;/js&gt;,<a name="line.58"></a>
-<span class="sourceLineNo">059</span> *       otherIds: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.59"></a>
-<span class="sourceLineNo">060</span> *       addresses: [<a name="line.60"></a>
-<span class="sourceLineNo">061</span> *          {<a name="line.61"></a>
-<span class="sourceLineNo">062</span> *             uri: &lt;js&gt;'http://sample/addressBook/address/1'&lt;/js&gt;,<a name="line.62"></a>
-<span class="sourceLineNo">063</span> *             personUri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.63"></a>
-<span class="sourceLineNo">064</span> *             id: 1,<a name="line.64"></a>
-<span class="sourceLineNo">065</span> *             street: &lt;js&gt;'100 Main Street'&lt;/js&gt;,<a name="line.65"></a>
-<span class="sourceLineNo">066</span> *             city: &lt;js&gt;'Anywhereville'&lt;/js&gt;,<a name="line.66"></a>
-<span class="sourceLineNo">067</span> *             state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.67"></a>
-<span class="sourceLineNo">068</span> *             zip: 12345,<a name="line.68"></a>
-<span class="sourceLineNo">069</span> *             isCurrent: &lt;jk&gt;true&lt;/jk&gt;,<a name="line.69"></a>
-<span class="sourceLineNo">070</span> *          }<a name="line.70"></a>
-<span class="sourceLineNo">071</span> *       ]<a name="line.71"></a>
-<span class="sourceLineNo">072</span> *    }<a name="line.72"></a>
-<span class="sourceLineNo">073</span> * &lt;/p&gt;<a name="line.73"></a>
-<span class="sourceLineNo">074</span> *<a name="line.74"></a>
-<span class="sourceLineNo">075</span> * &lt;p&gt;<a name="line.75"></a>
-<span class="sourceLineNo">076</span> * Using the "strict" syntax defined in this document, the equivalent URL-encoded notation would be as follows:<a name="line.76"></a>
-<span class="sourceLineNo">077</span> * &lt;p class='bcode'&gt;<a name="line.77"></a>
-<span class="sourceLineNo">078</span> *    &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;<a name="line.78"></a>
-<span class="sourceLineNo">079</span> *    &amp;amp;&lt;ua&gt;name&lt;/ua&gt;=&lt;us&gt;'John+Smith'&lt;/us&gt;,<a name="line.79"></a>
-<span class="sourceLineNo">080</span> *    &amp;amp;&lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *    &amp;amp;&lt;ua&gt;addressBookUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook&lt;/us&gt;,<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *    &amp;amp;&lt;ua&gt;birthDate&lt;/ua&gt;=&lt;us&gt;1946-08-12T00:00:00Z&lt;/us&gt;,<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *    &amp;amp;&lt;ua&gt;otherIds&lt;/ua&gt;=&lt;uk&gt;null&lt;/uk&gt;,<a name="line.83"></a>
-<span class="sourceLineNo">084</span> *    &amp;amp;&lt;ua&gt;addresses&lt;/ua&gt;=@(<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *       (<a name="line.85"></a>
-<span class="sourceLineNo">086</span> *          &lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/address/1&lt;/us&gt;,<a name="line.86"></a>
-<span class="sourceLineNo">087</span> *          &lt;ua&gt;personUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *          &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;,<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *          &lt;ua&gt;street&lt;/ua&gt;=&lt;us&gt;'100+Main+Street'&lt;/us&gt;,<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *          &lt;ua&gt;city&lt;/ua&gt;=&lt;us&gt;Anywhereville&lt;/us&gt;,<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *          &lt;ua&gt;state&lt;/ua&gt;=&lt;us&gt;NY&lt;/us&gt;,<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *          &lt;ua&gt;zip&lt;/ua&gt;=&lt;un&gt;12345&lt;/un&gt;,<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *          &lt;ua&gt;isCurrent&lt;/ua&gt;=&lt;uk&gt;true&lt;/uk&gt;<a name="line.93"></a>
-<span class="sourceLineNo">094</span> *       )<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *    )<a name="line.95"></a>
-<span class="sourceLineNo">096</span> * &lt;/p&gt;<a name="line.96"></a>
-<span class="sourceLineNo">097</span> *<a name="line.97"></a>
-<span class="sourceLineNo">098</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.98"></a>
-<span class="sourceLineNo">099</span> * &lt;p class='bcode'&gt;<a name="line.99"></a>
-<span class="sourceLineNo">100</span> *    &lt;jc&gt;// Serialize a Map&lt;/jc&gt;<a name="line.100"></a>
-<span class="sourceLineNo">101</span> *    Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{a:'b',c:1,d:false,e:['f',1,false],g:{h:'i'}}"&lt;/js&gt;);<a name="line.101"></a>
-<span class="sourceLineNo">102</span> *<a name="line.102"></a>
-<span class="sourceLineNo">103</span> *    &lt;jc&gt;// Serialize to value equivalent to JSON.&lt;/jc&gt;<a name="line.103"></a>
-<span class="sourceLineNo">104</span> *    &lt;jc&gt;// Produces "a=b&amp;amp;c=1&amp;amp;d=false&amp;amp;e=@(f,1,false)&amp;amp;g=(h=i)"&lt;/jc&gt;<a name="line.104"></a>
-<span class="sourceLineNo">105</span> *    String s = UrlEncodingSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.105"></a>
-<span class="sourceLineNo">106</span> *<a name="line.106"></a>
-<span class="sourceLineNo">107</span> *    &lt;jc&gt;// Serialize a bean&lt;/jc&gt;<a name="line.107"></a>
-<span class="sourceLineNo">108</span> *    &lt;jk&gt;public class&lt;/jk&gt; Person {<a name="line.108"></a>
-<span class="sourceLineNo">109</span> *       &lt;jk&gt;public&lt;/jk&gt; Person(String s);<a name="line.109"></a>
-<span class="sourceLineNo">110</span> *       &lt;jk&gt;public&lt;/jk&gt; String getName();<a name="line.110"></a>
-<span class="sourceLineNo">111</span> *       &lt;jk&gt;public int&lt;/jk&gt; getAge();<a name="line.111"></a>
-<span class="sourceLineNo">112</span> *       &lt;jk&gt;public&lt;/jk&gt; Address getAddress();<a name="line.112"></a>
-<span class="sourceLineNo">113</span> *       &lt;jk&gt;public boolean&lt;/jk&gt; deceased;<a name="line.113"></a>
-<span class="sourceLineNo">114</span> *    }<a name="line.114"></a>
-<span class="sourceLineNo">115</span> *<a name="line.115"></a>
-<span class="sourceLineNo">116</span> *    &lt;jk&gt;public class&lt;/jk&gt; Address {<a name="line.116"></a>
-<span class="sourceLineNo">117</span> *       &lt;jk&gt;public&lt;/jk&gt; String getStreet();<a name="line.117"></a>
-<span class="sourceLineNo">118</span> *       &lt;jk&gt;public&lt;/jk&gt; String getCity();<a name="line.118"></a>
-<span class="sourceLineNo">119</span> *       &lt;jk&gt;public&lt;/jk&gt; String getState();<a name="line.119"></a>
-<span class="sourceLineNo">120</span> *       &lt;jk&gt;public int&lt;/jk&gt; getZip();<a name="line.120"></a>
-<span class="sourceLineNo">121</span> *    }<a name="line.121"></a>
-<span class="sourceLineNo">122</span> *<a name="line.122"></a>
-<span class="sourceLineNo">123</span> *    Person p = &lt;jk&gt;new&lt;/jk&gt; Person(&lt;js&gt;"John Doe"&lt;/js&gt;, 23, &lt;js&gt;"123 Main St"&lt;/js&gt;, &lt;js&gt;"Anywhere"&lt;/js&gt;, &lt;js&gt;"NY"&lt;/js&gt;, 12345, &lt;jk&gt;false&lt;/jk&gt;);<a name="line.123"></a>
-<span class="sourceLineNo">124</span> *<a name="line.124"></a>
-<span class="sourceLineNo">125</span> *    &lt;jc&gt;// Produces "name=John+Doe&amp;amp;age=23&amp;amp;address=(street='123+Main+St',city=Anywhere,state=NY,zip=12345)&amp;amp;deceased=false"&lt;/jc&gt;<a name="line.125"></a>
-<span class="sourceLineNo">126</span> *    String s = UrlEncodingSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.126"></a>
-<span class="sourceLineNo">127</span> * &lt;/p&gt;<a name="line.127"></a>
-<span class="sourceLineNo">128</span> */<a name="line.128"></a>
-<span class="sourceLineNo">129</span>@Produces("application/x-www-form-urlencoded")<a name="line.129"></a>
-<span class="sourceLineNo">130</span>@SuppressWarnings("hiding")<a name="line.130"></a>
-<span class="sourceLineNo">131</span>public class UrlEncodingSerializer extends UonSerializer implements PartSerializer {<a name="line.131"></a>
-<span class="sourceLineNo">132</span><a name="line.132"></a>
-<span class="sourceLineNo">133</span>   /** Reusable instance of {@link UrlEncodingSerializer}, all default settings. */<a name="line.133"></a>
-<span class="sourceLineNo">134</span>   public static final UrlEncodingSerializer DEFAULT = new UrlEncodingSerializer(PropertyStore.create());<a name="line.134"></a>
-<span class="sourceLineNo">135</span><a name="line.135"></a>
-<span class="sourceLineNo">136</span>   /** Reusable instance of {@link UrlEncodingSerializer.PlainText}. */<a name="line.136"></a>
-<span class="sourceLineNo">137</span>   public static final UrlEncodingSerializer DEFAULT_PLAINTEXT = new PlainText(PropertyStore.create());<a name="line.137"></a>
-<span class="sourceLineNo">138</span><a name="line.138"></a>
-<span class="sourceLineNo">139</span>   /** Reusable instance of {@link UrlEncodingSerializer.Expanded}. */<a name="line.139"></a>
-<span class="sourceLineNo">140</span>   public static final UrlEncodingSerializer DEFAULT_EXPANDED = new Expanded(PropertyStore.create());<a name="line.140"></a>
-<span class="sourceLineNo">141</span><a name="line.141"></a>
-<span class="sourceLineNo">142</span>   /** Reusable instance of {@link UrlEncodingSerializer.Readable}. */<a name="line.142"></a>
-<span class="sourceLineNo">143</span>   public static final UrlEncodingSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.143"></a>
-<span class="sourceLineNo">144</span><a name="line.144"></a>
-<span class="sourceLineNo">145</span>   /**<a name="line.145"></a>
-<span class="sourceLineNo">146</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().expandedParams(&lt;jk&gt;true&lt;/jk&gt;).build();&lt;/code&gt;.<a name="line.146"></a>
-<span class="sourceLineNo">147</span>    */<a name="line.147"></a>
-<span class="sourceLineNo">148</span>   @Produces(value="application/x-www-form-urlencoded",contentType="application/x-www-form-urlencoded")<a name="line.148"></a>
-<span class="sourceLineNo">149</span>   public static class Expanded extends UrlEncodingSerializer {<a name="line.149"></a>
-<span class="sourceLineNo">150</span><a name="line.150"></a>
-<span class="sourceLineNo">151</span>      /**<a name="line.151"></a>
-<span class="sourceLineNo">152</span>       * Constructor.<a name="line.152"></a>
-<span class="sourceLineNo">153</span>       *<a name="line.153"></a>
-<span class="sourceLineNo">154</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.154"></a>
-<span class="sourceLineNo">155</span>       */<a name="line.155"></a>
-<span class="sourceLineNo">156</span>      public Expanded(PropertyStore propertyStore) {<a name="line.156"></a>
-<span class="sourceLineNo">157</span>         super(propertyStore.copy().append(URLENC_expandedParams, true));<a name="line.157"></a>
-<span class="sourceLineNo">158</span>      }<a name="line.158"></a>
-<span class="sourceLineNo">159</span>   }<a name="line.159"></a>
-<span class="sourceLineNo">160</span><a name="line.160"></a>
-<span class="sourceLineNo">161</span>   /**<a name="line.161"></a>
-<span class="sourceLineNo">162</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().useWhitespace(&lt;jk&gt;true&lt;/jk&gt;).build();&lt;/code&gt;.<a name="line.162"></a>
-<span class="sourceLineNo">163</span>    */<a name="line.163"></a>
-<span class="sourceLineNo">164</span>   public static class Readable extends UrlEncodingSerializer {<a name="line.164"></a>
-<span class="sourceLineNo">165</span><a name="line.165"></a>
-<span class="sourceLineNo">166</span>      /**<a name="line.166"></a>
-<span class="sourceLineNo">167</span>       * Constructor.<a name="line.167"></a>
-<span class="sourceLineNo">168</span>       *<a name="line.168"></a>
-<span class="sourceLineNo">169</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.169"></a>
-<span class="sourceLineNo">170</span>       */<a name="line.170"></a>
-<span class="sourceLineNo">171</span>      public Readable(PropertyStore propertyStore) {<a name="line.171"></a>
-<span class="sourceLineNo">172</span>         super(propertyStore.copy().append(SERIALIZER_useWhitespace, true));<a name="line.172"></a>
-<span class="sourceLineNo">173</span>      }<a name="line.173"></a>
-<span class="sourceLineNo">174</span>   }<a name="line.174"></a>
-<span class="sourceLineNo">175</span><a name="line.175"></a>
-<span class="sourceLineNo">176</span>   /**<a name="line.176"></a>
-<span class="sourceLineNo">177</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().plainTextParts().build();&lt;/code&gt;.<a name="line.177"></a>
-<span class="sourceLineNo">178</span>    */<a name="line.178"></a>
-<span class="sourceLineNo">179</span>   public static class PlainText extends UrlEncodingSerializer {<a name="line.179"></a>
-<span class="sourceLineNo">180</span><a name="line.180"></a>
-<span class="sourceLineNo">181</span>      /**<a name="line.181"></a>
-<span class="sourceLineNo">182</span>       * Constructor.<a name="line.182"></a>
-<span class="sourceLineNo">183</span>       *<a name="line.183"></a>
-<span class="sourceLineNo">184</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.184"></a>
-<span class="sourceLineNo">185</span>       */<a name="line.185"></a>
-<span class="sourceLineNo">186</span>      public PlainText(PropertyStore propertyStore) {<a name="line.186"></a>
-<span class="sourceLineNo">187</span>         super(propertyStore.copy().append(UON_paramFormat, "PLAINTEXT"));<a name="line.187"></a>
-<span class="sourceLineNo">188</span>      }<a name="line.188"></a>
-<span class="sourceLineNo">189</span>   }<a name="line.189"></a>
-<span class="sourceLineNo">190</span><a name="line.190"></a>
-<span class="sourceLineNo">191</span>   private final UrlEncodingSerializerContext ctx;<a name="line.191"></a>
-<span class="sourceLineNo">192</span><a name="line.192"></a>
-<span class="sourceLineNo">193</span>   /**<a name="line.193"></a>
-<span class="sourceLineNo">194</span>    * Constructor.<a name="line.194"></a>
-<span class="sourceLineNo">195</span>    *<a name="line.195"></a>
-<span class="sourceLineNo">196</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.196"></a>
-<span class="sourceLineNo">197</span>    */<a name="line.197"></a>
-<span class="sourceLineNo">198</span>   public UrlEncodingSerializer(PropertyStore propertyStore) {<a name="line.198"></a>
-<span class="sourceLineNo">199</span>      super(propertyStore.copy().append(UON_encodeChars, true));<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      this.ctx = createContext(UrlEncodingSerializerContext.class);<a name="line.200"></a>
-<span class="sourceLineNo">201</span>   }<a name="line.201"></a>
-<span class="sourceLineNo">202</span><a name="line.202"></a>
-<span class="sourceLineNo">203</span>   @Override /* CoreObject */<a name="line.203"></a>
-<span class="sourceLineNo">204</span>   public UrlEncodingSerializerBuilder builder() {<a name="line.204"></a>
-<span class="sourceLineNo">205</span>      return new UrlEncodingSerializerBuilder(propertyStore);<a name="line.205"></a>
-<span class="sourceLineNo">206</span>   }<a name="line.206"></a>
-<span class="sourceLineNo">207</span><a name="line.207"></a>
-<span class="sourceLineNo">208</span><a name="line.208"></a>
-<span class="sourceLineNo">209</span>   //--------------------------------------------------------------------------------<a name="line.209"></a>
-<span class="sourceLineNo">210</span>   // Methods for constructing individual parameter values.<a name="line.210"></a>
-<span class="sourceLineNo">211</span>   //--------------------------------------------------------------------------------<a name="line.211"></a>
-<span class="sourceLineNo">212</span><a name="line.212"></a>
-<span class="sourceLineNo">213</span>   /**<a name="line.213"></a>
-<span class="sourceLineNo">214</span>    * Converts the specified object to a string using this serializers {@link BeanSession#convertToType(Object, Class)}<a name="line.214"></a>
-<span class="sourceLineNo">215</span>    * method and runs {@link URLEncoder#encode(String,String)} against the results.<a name="line.215"></a>
-<span class="sourceLineNo">216</span>    *<a name="line.216"></a>
-<span class="sourceLineNo">217</span>    * &lt;p&gt;<a name="line.217"></a>
-<span class="sourceLineNo">218</span>    * Useful for constructing URL parts.<a name="line.218"></a>
-<span class="sourceLineNo">219</span>    *<a name="line.219"></a>
-<span class="sourceLineNo">220</span>    * @param o The object to serialize.<a name="line.220"></a>
-<span class="sourceLineNo">221</span>    * @param urlEncode<a name="line.221"></a>
-<span class="sourceLineNo">222</span>    *    URL-encode the string if necessary.<a name="line.222"></a>
-<span class="sourceLineNo">223</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then uses the value of the {@link UonSerializerContext#UON_encodeChars} setting.<a name="line.223"></a>
-<span class="sourceLineNo">224</span>    * @param plainTextParams<a name="line.224"></a>
-<span class="sourceLineNo">225</span>    *    Whether we're using plain-text params.<a name="line.225"></a>
-<span class="sourceLineNo">226</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then uses the value from the {@link UrlEncodingSerializerContext#URLENC_paramFormat} setting.<a name="line.226"></a>
-<span class="sourceLineNo">227</span>    * @return The serialized object.<a name="line.227"></a>
-<span class="sourceLineNo">228</span>    */<a name="line.228"></a>
-<span class="sourceLineNo">229</span>   private String serializePart(Object o, Boolean urlEncode, Boolean plainTextParams) {<a name="line.229"></a>
-<span class="sourceLineNo">230</span>      try {<a name="line.230"></a>
-<span class="sourceLineNo">231</span>         // Shortcut for simple types.<a name="line.231"></a>
-<span class="sourceLineNo">232</span>         ClassMeta&lt;?&gt; cm = getBeanContext().getClassMetaForObject(o);<a name="line.232"></a>
-<span class="sourceLineNo">233</span>         if (cm != null) {<a name="line.233"></a>
-<span class="sourceLineNo">234</span>            if (cm.isNumber() || cm.isBoolean())<a name="line.234"></a>
-<span class="sourceLineNo">235</span>               return o.toString();<a name="line.235"></a>
-<span class="sourceLineNo">236</span>            if (cm.isCharSequence()) {<a name="line.236"></a>
-<span class="sourceLineNo">237</span>               String s = o.toString();<a name="line.237"></a>
-<span class="sourceLineNo">238</span>               boolean ptt = (plainTextParams != null ? plainTextParams : ctx.plainTextParams());<a name="line.238"></a>
-<span class="sourceLineNo">239</span>               if (ptt || s.isEmpty() || ! UonUtils.needsQuotes(s))<a name="line.239"></a>
-<span class="sourceLineNo">240</span>                  return (urlEncode ? urlEncode(s) : s);<a name="line.240"></a>
-<span class="sourceLineNo">241</span>            }<a name="line.241"></a>
-<span class="sourceLineNo">242</span>         }<a name="line.242"></a>
-<span class="sourceLineNo">243</span><a name="line.243"></a>
-<span class="sourceLineNo">244</span>         StringWriter w = new StringWriter();<a name="line.244"></a>
-<span class="sourceLineNo">245</span>         UonSerializerSession s = new UonSerializerSession(ctx, urlEncode, SerializerSessionArgs.DEFAULT);<a name="line.245"></a>
-<span class="sourceLineNo">246</span>         s.serialize(w, o);<a name="line.246"></a>
-<span class="sourceLineNo">247</span>         return w.toString();<a name="line.247"></a>
-<span class="sourceLineNo">248</span>      } catch (Exception e) {<a name="line.248"></a>
-<span class="sourceLineNo">249</span>         throw new RuntimeException(e);<a name="line.249"></a>
-<span class="sourceLineNo">250</span>      }<a name="line.250"></a>
-<span class="sourceLineNo">251</span>   }<a name="line.251"></a>
-<span class="sourceLineNo">252</span><a name="line.252"></a>
-<span class="sourceLineNo">253</span><a name="line.253"></a>
-<span class="sourceLineNo">254</span>   //--------------------------------------------------------------------------------<a name="line.254"></a>
-<span class="sourceLineNo">255</span>   // Entry point methods<a name="line.255"></a>
-<span class="sourceLineNo">256</span>   //--------------------------------------------------------------------------------<a name="line.256"></a>
-<span class="sourceLineNo">257</span><a name="line.257"></a>
-<span class="sourceLineNo">258</span>   @Override /* Serializer */<a name="line.258"></a>
-<span class="sourceLineNo">259</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.259"></a>
-<span class="sourceLineNo">260</span>      return new UrlEncodingSerializerSession(ctx, null, args);<a name="line.260"></a>
-<span class="sourceLineNo">261</span>   }<a name="line.261"></a>
-<span class="sourceLineNo">262</span><a name="line.262"></a>
-<span class="sourceLineNo">263</span>   @Override /* PartSerializer */<a name="line.263"></a>
-<span class="sourceLineNo">264</span>   public String serialize(PartType type, Object value) {<a name="line.264"></a>
-<span class="sourceLineNo">265</span>      switch(type) {<a name="line.265"></a>
-<span class="sourceLineNo">266</span>         case HEADER: return serializePart(value, false, true);<a name="line.266"></a>
-<span class="sourceLineNo">267</span>         case FORM_DATA: return serializePart(value, false, null);<a name="line.267"></a>
-<span class="sourceLineNo">268</span>         case PATH: return serializePart(value, false, null);<a name="line.268"></a>
-<span class="sourceLineNo">269</span>         case QUERY: return serializePart(value, false, null);<a name="line.269"></a>
-<span class="sourceLineNo">270</span>         default: return toString(value);<a name="line.270"></a>
-<span class="sourceLineNo">271</span>      }<a name="line.271"></a>
-<span class="sourceLineNo">272</span>   }<a name="line.272"></a>
-<span class="sourceLineNo">273</span>}<a name="line.273"></a>
+<span class="sourceLineNo">024</span>import org.apache.juneau.serializer.*;<a name="line.24"></a>
+<span class="sourceLineNo">025</span>import org.apache.juneau.uon.*;<a name="line.25"></a>
+<span class="sourceLineNo">026</span><a name="line.26"></a>
+<span class="sourceLineNo">027</span>/**<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * Serializes POJO models to URL-encoded notation with UON-encoded values (a notation for URL-encoded query paramter values).<a name="line.28"></a>
+<span class="sourceLineNo">029</span> *<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;application/x-www-form-urlencoded&lt;/code&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * &lt;p&gt;<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/x-www-form-urlencoded&lt;/code&gt;<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *<a name="line.35"></a>
+<span class="sourceLineNo">036</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * This serializer provides several serialization options.  Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.38"></a>
+<span class="sourceLineNo">039</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *<a name="line.40"></a>
+<span class="sourceLineNo">041</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *<a name="line.42"></a>
+<span class="sourceLineNo">043</span> * This class has the following properties associated with it:<a name="line.43"></a>
+<span class="sourceLineNo">044</span> * &lt;ul&gt;<a name="line.44"></a>
+<span class="sourceLineNo">045</span> *    &lt;li&gt;{@link UonSerializerContext}<a name="line.45"></a>
+<span class="sourceLineNo">046</span> *    &lt;li&gt;{@link BeanContext}<a name="line.46"></a>
+<span class="sourceLineNo">047</span> * &lt;/ul&gt;<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *<a name="line.48"></a>
+<span class="sourceLineNo">049</span> * &lt;p&gt;<a name="line.49"></a>
+<span class="sourceLineNo">050</span> * The following shows a sample object defined in Javascript:<a name="line.50"></a>
+<span class="sourceLineNo">051</span> * &lt;p class='bcode'&gt;<a name="line.51"></a>
+<span class="sourceLineNo">052</span> *    {<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *       id: 1,<a name="line.53"></a>
+<span class="sourceLineNo">054</span> *       name: &lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.54"></a>
+<span class="sourceLineNo">055</span> *       uri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.55"></a>
+<span class="sourceLineNo">056</span> *       addressBookUri: &lt;js&gt;'http://sample/addressBook'&lt;/js&gt;,<a name="line.56"></a>
+<span class="sourceLineNo">057</span> *       birthDate: &lt;js&gt;'1946-08-12T00:00:00Z'&lt;/js&gt;,<a name="line.57"></a>
+<span class="sourceLineNo">058</span> *       otherIds: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.58"></a>
+<span class="sourceLineNo">059</span> *       addresses: [<a name="line.59"></a>
+<span class="sourceLineNo">060</span> *          {<a name="line.60"></a>
+<span class="sourceLineNo">061</span> *             uri: &lt;js&gt;'http://sample/addressBook/address/1'&lt;/js&gt;,<a name="line.61"></a>
+<span class="sourceLineNo">062</span> *             personUri: &lt;js&gt;'http://sample/addressBook/person/1'&lt;/js&gt;,<a name="line.62"></a>
+<span class="sourceLineNo">063</span> *             id: 1,<a name="line.63"></a>
+<span class="sourceLineNo">064</span> *             street: &lt;js&gt;'100 Main Street'&lt;/js&gt;,<a name="line.64"></a>
+<span class="sourceLineNo">065</span> *             city: &lt;js&gt;'Anywhereville'&lt;/js&gt;,<a name="line.65"></a>
+<span class="sourceLineNo">066</span> *             state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.66"></a>
+<span class="sourceLineNo">067</span> *             zip: 12345,<a name="line.67"></a>
+<span class="sourceLineNo">068</span> *             isCurrent: &lt;jk&gt;true&lt;/jk&gt;,<a name="line.68"></a>
+<span class="sourceLineNo">069</span> *          }<a name="line.69"></a>
+<span class="sourceLineNo">070</span> *       ]<a name="line.70"></a>
+<span class="sourceLineNo">071</span> *    }<a name="line.71"></a>
+<span class="sourceLineNo">072</span> * &lt;/p&gt;<a name="line.72"></a>
+<span class="sourceLineNo">073</span> *<a name="line.73"></a>
+<span class="sourceLineNo">074</span> * &lt;p&gt;<a name="line.74"></a>
+<span class="sourceLineNo">075</span> * Using the "strict" syntax defined in this document, the equivalent URL-encoded notation would be as follows:<a name="line.75"></a>
+<span class="sourceLineNo">076</span> * &lt;p class='bcode'&gt;<a name="line.76"></a>
+<span class="sourceLineNo">077</span> *    &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;<a name="line.77"></a>
+<span class="sourceLineNo">078</span> *    &amp;amp;&lt;ua&gt;name&lt;/ua&gt;=&lt;us&gt;'John+Smith'&lt;/us&gt;,<a name="line.78"></a>
+<span class="sourceLineNo">079</span> *    &amp;amp;&lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *    &amp;amp;&lt;ua&gt;addressBookUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook&lt;/us&gt;,<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *    &amp;amp;&lt;ua&gt;birthDate&lt;/ua&gt;=&lt;us&gt;1946-08-12T00:00:00Z&lt;/us&gt;,<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *    &amp;amp;&lt;ua&gt;otherIds&lt;/ua&gt;=&lt;uk&gt;null&lt;/uk&gt;,<a name="line.82"></a>
+<span class="sourceLineNo">083</span> *    &amp;amp;&lt;ua&gt;addresses&lt;/ua&gt;=@(<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *       (<a name="line.84"></a>
+<span class="sourceLineNo">085</span> *          &lt;ua&gt;uri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/address/1&lt;/us&gt;,<a name="line.85"></a>
+<span class="sourceLineNo">086</span> *          &lt;ua&gt;personUri&lt;/ua&gt;=&lt;us&gt;http://sample/addressBook/person/1&lt;/us&gt;,<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *          &lt;ua&gt;id&lt;/ua&gt;=&lt;un&gt;1&lt;/un&gt;,<a name="line.87"></a>
+<span class="sourceLineNo">088</span> *          &lt;ua&gt;street&lt;/ua&gt;=&lt;us&gt;'100+Main+Street'&lt;/us&gt;,<a name="line.88"></a>
+<span class="sourceLineNo">089</span> *          &lt;ua&gt;city&lt;/ua&gt;=&lt;us&gt;Anywhereville&lt;/us&gt;,<a name="line.89"></a>
+<span class="sourceLineNo">090</span> *          &lt;ua&gt;state&lt;/ua&gt;=&lt;us&gt;NY&lt;/us&gt;,<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *          &lt;ua&gt;zip&lt;/ua&gt;=&lt;un&gt;12345&lt;/un&gt;,<a name="line.91"></a>
+<span class="sourceLineNo">092</span> *          &lt;ua&gt;isCurrent&lt;/ua&gt;=&lt;uk&gt;true&lt;/uk&gt;<a name="line.92"></a>
+<span class="sourceLineNo">093</span> *       )<a name="line.93"></a>
+<span class="sourceLineNo">094</span> *    )<a name="line.94"></a>
+<span class="sourceLineNo">095</span> * &lt;/p&gt;<a name="line.95"></a>
+<span class="sourceLineNo">096</span> *<a name="line.96"></a>
+<span class="sourceLineNo">097</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.97"></a>
+<span class="sourceLineNo">098</span> * &lt;p class='bcode'&gt;<a name="line.98"></a>
+<span class="sourceLineNo">099</span> *    &lt;jc&gt;// Serialize a Map&lt;/jc&gt;<a name="line.99"></a>
+<span class="sourceLineNo">100</span> *    Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{a:'b',c:1,d:false,e:['f',1,false],g:{h:'i'}}"&lt;/js&gt;);<a name="line.100"></a>
+<span class="sourceLineNo">101</span> *<a name="line.101"></a>
+<span class="sourceLineNo">102</span> *    &lt;jc&gt;// Serialize to value equivalent to JSON.&lt;/jc&gt;<a name="line.102"></a>
+<span class="sourceLineNo">103</span> *    &lt;jc&gt;// Produces "a=b&amp;amp;c=1&amp;amp;d=false&amp;amp;e=@(f,1,false)&amp;amp;g=(h=i)"&lt;/jc&gt;<a name="line.103"></a>
+<span class="sourceLineNo">104</span> *    String s = UrlEncodingSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.104"></a>
+<span class="sourceLineNo">105</span> *<a name="line.105"></a>
+<span class="sourceLineNo">106</span> *    &lt;jc&gt;// Serialize a bean&lt;/jc&gt;<a name="line.106"></a>
+<span class="sourceLineNo">107</span> *    &lt;jk&gt;public class&lt;/jk&gt; Person {<a name="line.107"></a>
+<span class="sourceLineNo">108</span> *       &lt;jk&gt;public&lt;/jk&gt; Person(String s);<a name="line.108"></a>
+<span class="sourceLineNo">109</span> *       &lt;jk&gt;public&lt;/jk&gt; String getName();<a name="line.109"></a>
+<span class="sourceLineNo">110</span> *       &lt;jk&gt;public int&lt;/jk&gt; getAge();<a name="line.110"></a>
+<span class="sourceLineNo">111</span> *       &lt;jk&gt;public&lt;/jk&gt; Address getAddress();<a name="line.111"></a>
+<span class="sourceLineNo">112</span> *       &lt;jk&gt;public boolean&lt;/jk&gt; deceased;<a name="line.112"></a>
+<span class="sourceLineNo">113</span> *    }<a name="line.113"></a>
+<span class="sourceLineNo">114</span> *<a name="line.114"></a>
+<span class="sourceLineNo">115</span> *    &lt;jk&gt;public class&lt;/jk&gt; Address {<a name="line.115"></a>
+<span class="sourceLineNo">116</span> *       &lt;jk&gt;public&lt;/jk&gt; String getStreet();<a name="line.116"></a>
+<span class="sourceLineNo">117</span> *       &lt;jk&gt;public&lt;/jk&gt; String getCity();<a name="line.117"></a>
+<span class="sourceLineNo">118</span> *       &lt;jk&gt;public&lt;/jk&gt; String getState();<a name="line.118"></a>
+<span class="sourceLineNo">119</span> *       &lt;jk&gt;public int&lt;/jk&gt; getZip();<a name="line.119"></a>
+<span class="sourceLineNo">120</span> *    }<a name="line.120"></a>
+<span class="sourceLineNo">121</span> *<a name="line.121"></a>
+<span class="sourceLineNo">122</span> *    Person p = &lt;jk&gt;new&lt;/jk&gt; Person(&lt;js&gt;"John Doe"&lt;/js&gt;, 23, &lt;js&gt;"123 Main St"&lt;/js&gt;, &lt;js&gt;"Anywhere"&lt;/js&gt;, &lt;js&gt;"NY"&lt;/js&gt;, 12345, &lt;jk&gt;false&lt;/jk&gt;);<a name="line.122"></a>
+<span class="sourceLineNo">123</span> *<a name="line.123"></a>
+<span class="sourceLineNo">124</span> *    &lt;jc&gt;// Produces "name=John+Doe&amp;amp;age=23&amp;amp;address=(street='123+Main+St',city=Anywhere,state=NY,zip=12345)&amp;amp;deceased=false"&lt;/jc&gt;<a name="line.124"></a>
+<span class="sourceLineNo">125</span> *    String s = UrlEncodingSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(s);<a name="line.125"></a>
+<span class="sourceLineNo">126</span> * &lt;/p&gt;<a name="line.126"></a>
+<span class="sourceLineNo">127</span> */<a name="line.127"></a>
+<span class="sourceLineNo">128</span>@SuppressWarnings("hiding")<a name="line.128"></a>
+<span class="sourceLineNo">129</span>public class UrlEncodingSerializer extends UonSerializer implements PartSerializer {<a name="line.129"></a>
+<span class="sourceLineNo">130</span><a name="line.130"></a>
+<span class="sourceLineNo">131</span>   /** Reusable instance of {@link UrlEncodingSerializer}, all default settings. */<a name="line.131"></a>
+<span class="sourceLineNo">132</span>   public static final UrlEncodingSerializer DEFAULT = new UrlEncodingSerializer(PropertyStore.create());<a name="line.132"></a>
+<span class="sourceLineNo">133</span><a name="line.133"></a>
+<span class="sourceLineNo">134</span>   /** Reusable instance of {@link UrlEncodingSerializer.PlainText}. */<a name="line.134"></a>
+<span class="sourceLineNo">135</span>   public static final UrlEncodingSerializer DEFAULT_PLAINTEXT = new PlainText(PropertyStore.create());<a name="line.135"></a>
+<span class="sourceLineNo">136</span><a name="line.136"></a>
+<span class="sourceLineNo">137</span>   /** Reusable instance of {@link UrlEncodingSerializer.Expanded}. */<a name="line.137"></a>
+<span class="sourceLineNo">138</span>   public static final UrlEncodingSerializer DEFAULT_EXPANDED = new Expanded(PropertyStore.create());<a name="line.138"></a>
+<span class="sourceLineNo">139</span><a name="line.139"></a>
+<span class="sourceLineNo">140</span>   /** Reusable instance of {@link UrlEncodingSerializer.Readable}. */<a name="line.140"></a>
+<span class="sourceLineNo">141</span>   public static final UrlEncodingSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.141"></a>
+<span class="sourceLineNo">142</span><a name="line.142"></a>
+<span class="sourceLineNo">143</span>   /**<a name="line.143"></a>
+<span class="sourceLineNo">144</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().expandedParams(&lt;jk&gt;true&lt;/jk&gt;).build();&lt;/code&gt;.<a name="line.144"></a>
+<span class="sourceLineNo">145</span>    */<a name="line.145"></a>
+<span class="sourceLineNo">146</span>   public static class Expanded extends UrlEncodingSerializer {<a name="line.146"></a>
+<span class="sourceLineNo">147</span><a name="line.147"></a>
+<span class="sourceLineNo">148</span>      /**<a name="line.148"></a>
+<span class="sourceLineNo">149</span>       * Constructor.<a name="line.149"></a>
+<span class="sourceLineNo">150</span>       *<a name="line.150"></a>
+<span class="sourceLineNo">151</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.151"></a>
+<span class="sourceLineNo">152</span>       */<a name="line.152"></a>
+<span class="sourceLineNo">153</span>      public Expanded(PropertyStore propertyStore) {<a name="line.153"></a>
+<span class="sourceLineNo">154</span>         super(propertyStore.copy().append(URLENC_expandedParams, true));<a name="line.154"></a>
+<span class="sourceLineNo">155</span>      }<a name="line.155"></a>
+<span class="sourceLineNo">156</span>   }<a name="line.156"></a>
+<span class="sourceLineNo">157</span><a name="line.157"></a>
+<span class="sourceLineNo">158</span>   /**<a name="line.158"></a>
+<span class="sourceLineNo">159</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().useWhitespace(&lt;jk&gt;true&lt;/jk&gt;).build();&lt;/code&gt;.<a name="line.159"></a>
+<span class="sourceLineNo">160</span>    */<a name="line.160"></a>
+<span class="sourceLineNo">161</span>   public static class Readable extends UrlEncodingSerializer {<a name="line.161"></a>
+<span class="sourceLineNo">162</span><a name="line.162"></a>
+<span class="sourceLineNo">163</span>      /**<a name="line.163"></a>
+<span class="sourceLineNo">164</span>       * Constructor.<a name="line.164"></a>
+<span class="sourceLineNo">165</span>       *<a name="line.165"></a>
+<span class="sourceLineNo">166</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.166"></a>
+<span class="sourceLineNo">167</span>       */<a name="line.167"></a>
+<span class="sourceLineNo">168</span>      public Readable(PropertyStore propertyStore) {<a name="line.168"></a>
+<span class="sourceLineNo">169</span>         super(propertyStore.copy().append(SERIALIZER_useWhitespace, true));<a name="line.169"></a>
+<span class="sourceLineNo">170</span>      }<a name="line.170"></a>
+<span class="sourceLineNo">171</span>   }<a name="line.171"></a>
+<span class="sourceLineNo">172</span><a name="line.172"></a>
+<span class="sourceLineNo">173</span>   /**<a name="line.173"></a>
+<span class="sourceLineNo">174</span>    * Equivalent to &lt;code&gt;&lt;jk&gt;new&lt;/jk&gt; UrlEncodingSerializerBuilder().plainTextParts().build();&lt;/code&gt;.<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    */<a name="line.175"></a>
+<span class="sourceLineNo">176</span>   public static class PlainText extends UrlEncodingSerializer {<a name="line.176"></a>
+<span class="sourceLineNo">177</span><a name="line.177"></a>
+<span class="sourceLineNo">178</span>      /**<a name="line.178"></a>
+<span class="sourceLineNo">179</span>       * Constructor.<a name="line.179"></a>
+<span class="sourceLineNo">180</span>       *<a name="line.180"></a>
+<span class="sourceLineNo">181</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.181"></a>
+<span class="sourceLineNo">182</span>       */<a name="line.182"></a>
+<span class="sourceLineNo">183</span>      public PlainText(PropertyStore propertyStore) {<a name="line.183"></a>
+<span class="sourceLineNo">184</span>         super(propertyStore.copy().append(UON_paramFormat, "PLAINTEXT"));<a name="line.184"></a>
+<span class="sourceLineNo">185</span>      }<a name="line.185"></a>
+<span class="sourceLineNo">186</span>   }<a name="line.186"></a>
+<span class="sourceLineNo">187</span><a name="line.187"></a>
+<span class="sourceLineNo">188</span>   private final UrlEncodingSerializerContext ctx;<a name="line.188"></a>
+<span class="sourceLineNo">189</span><a name="line.189"></a>
+<span class="sourceLineNo">190</span>   /**<a name="line.190"></a>
+<span class="sourceLineNo">191</span>    * Constructor.<a name="line.191"></a>
+<span class="sourceLineNo">192</span>    *<a name="line.192"></a>
+<span class="sourceLineNo">193</span>    * @param propertyStore<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    *    The property store containing all the settings for this object.<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    */<a name="line.195"></a>
+<span class="sourceLineNo">196</span>   public UrlEncodingSerializer(PropertyStore propertyStore) {<a name="line.196"></a>
+<span class="sourceLineNo">197</span>      this(propertyStore, "application/x-www-form-urlencoded");<a name="line.197"></a>
+<span class="sourceLineNo">198</span>   }<a name="line.198"></a>
+<span class="sourceLineNo">199</span><a name="line.199"></a>
+<span class="sourceLineNo">200</span>   /**<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    * Constructor.<a name="line.201"></a>
+<span class="sourceLineNo">202</span>    *<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    * @param propertyStore<a name="line.203"></a>
+<span class="sourceLineNo">204</span>    *    The property store containing all the settings for this object.<a name="line.204"></a>
+<span class="sourceLineNo">205</span>    * @param produces<a name="line.205"></a>
+<span class="sourceLineNo">206</span>    *    The media type that this serializer produces.<a name="line.206"></a>
+<span class="sourceLineNo">207</span>    * @param accept<a name="line.207"></a>
+<span class="sourceLineNo">208</span>    *    The accept media types that the serializer can handle.<a name="line.208"></a>
+<span class="sourceLineNo">209</span>    *    &lt;p&gt;<a name="line.209"></a>
+<span class="sourceLineNo">210</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.210"></a>
+<span class="sourceLineNo">211</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>    *    &lt;p&gt;<a name="line.212"></a>
+<span class="sourceLineNo">213</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.213"></a>
+<span class="sourceLineNo">214</span>    *    &lt;p&gt;<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.216"></a>
+<span class="sourceLineNo">217</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.217"></a>
+<span class="sourceLineNo">218</span>    *    &lt;br&gt;...or...<a name="line.218"></a>
+<span class="sourceLineNo">219</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.219"></a>
+<span class="sourceLineNo">220</span>    */<a name="line.220"></a>
+<span class="sourceLineNo">221</span>   public UrlEncodingSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.221"></a>
+<span class="sourceLineNo">222</span>      super(propertyStore.copy().append(UON_encodeChars, true), produces, accept);<a name="line.222"></a>
+<span class="sourceLineNo">223</span>      this.ctx = createContext(UrlEncodingSerializerContext.class);<a name="line.223"></a>
+<span class="sourceLineNo">224</span>   }<a name="line.224"></a>
+<span class="sourceLineNo">225</span><a name="line.225"></a>
+<span class="sourceLineNo">226</span><a name="line.226"></a>
+<span class="sourceLineNo">227</span>   @Override /* CoreObject */<a name="line.227"></a>
+<span class="sourceLineNo">228</span>   public UrlEncodingSerializerBuilder builder() {<a name="line.228"></a>
+<span class="sourceLineNo">229</span>      return new UrlEncodingSerializerBuilder(propertyStore);<a name="line.229"></a>
+<span class="sourceLineNo">230</span>   }<a name="line.230"></a>
+<span class="sourceLineNo">231</span><a name="line.231"></a>
+<span class="sourceLineNo">232</span><a name="line.232"></a>
+<span class="sourceLineNo">233</span>   //--------------------------------------------------------------------------------<a name="line.233"></a>
+<span class="sourceLineNo">234</span>   // Methods for constructing individual parameter values.<a name="line.234"></a>
+<span class="sourceLineNo">235</span>   //--------------------------------------------------------------------------------<a name="line.235"></a>
+<span class="sourceLineNo">236</span><a name="line.236"></a>
+<span class="sourceLineNo">237</span>   /**<a name="line.237"></a>
+<span class="sourceLineNo">238</span>    * Converts the specified object to a string using this serializers {@link BeanSession#convertToType(Object, Class)}<a name="line.238"></a>
+<span class="sourceLineNo">239</span>    * method and runs {@link URLEncoder#encode(String,String)} against the results.<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    *<a name="line.240"></a>
+<span class="sourceLineNo">241</span>    * &lt;p&gt;<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    * Useful for constructing URL parts.<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    *<a name="line.243"></a>
+<span class="sourceLineNo">244</span>    * @param o The object to serialize.<a name="line.244"></a>
+<span class="sourceLineNo">245</span>    * @param urlEncode<a name="line.245"></a>
+<span class="sourceLineNo">246</span>    *    URL-encode the string if necessary.<a name="line.246"></a>
+<span class="sourceLineNo">247</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then uses the value of the {@link UonSerializerContext#UON_encodeChars} setting.<a name="line.247"></a>
+<span class="sourceLineNo">248</span>    * @param plainTextParams<a name="line.248"></a>
+<span class="sourceLineNo">249</span>    *    Whether we're using plain-text params.<a name="line.249"></a>
+<span class="sourceLineNo">250</span>    *    If &lt;jk&gt;null&lt;/jk&gt;, then uses the value from the {@link UrlEncodingSerializerContext#URLENC_paramFormat} setting.<a name="line.250"></a>
+<span class="sourceLineNo">251</span>    * @return The serialized object.<a name="line.251"></a>
+<span class="sourceLineNo">252</span>    */<a name="line.252"></a>
+<span class="sourceLineNo">253</span>   private String serializePart(Object o, Boolean urlEncode, Boolean plainTextParams) {<a name="line.253"></a>
+<span class="sourceLineNo">254</span>      try {<a name="line.254"></a>
+<span class="sourceLineNo">255</span>         // Shortcut for simple types.<a name="line.255"></a>
+<span class="sourceLineNo">256</span>         ClassMeta&lt;?&gt; cm = getBeanContext().getClassMetaForObject(o);<a name="line.256"></a>
+<span class="sourceLineNo">257</span>         if (cm != null) {<a name="line.257"></a>
+<span class="sourceLineNo">258</span>            if (cm.isNumber() || cm.isBoolean())<a name="line.258"></a>
+<span class="sourceLineNo">259</span>               return o.toString();<a name="line.259"></a>
+<span class="sourceLineNo">260</span>            if (cm.isCharSequence()) {<a name="line.260"></a>
+<span class="sourceLineNo">261</span>               String s = o.toString();<a name="line.261"></a>
+<span class="sourceLineNo">262</span>               boolean ptt = (plainTextParams != null ? plainTextParams : ctx.plainTextParams());<a name="line.262"></a>
+<span class="sourceLineNo">263</span>               if (ptt || s.isEmpty() || ! UonUtils.needsQuotes(s))<a name="line.263"></a>
+<span class="sourceLineNo">264</span>                  return (urlEncode ? urlEncode(s) : s);<a name="line.264"></a>
+<span class="sourceLineNo">265</span>            }<a name="line.265"></a>
+<span class="sourceLineNo">266</span>         }<a name="line.266"></a>
+<span class="sourceLineNo">267</span><a name="line.267"></a>
+<span class="sourceLineNo">268</span>         StringWriter w = new StringWriter();<a name="line.268"></a>
+<span class="sourceLineNo">269</span>         UonSerializerSession s = new UonSerializerSession(ctx, urlEncode, createDefaultSessionArgs());<a name="line.269"></a>
+<span class="sourceLineNo">270</span>         s.serialize(w, o);<a name="line.270"></a>
+<span class="sourceLineNo">271</span>         return w.toString();<a name="line.271"></a>
+<span class="sourceLineNo">272</span>      } catch (Exception e) {<a name="line.272"></a>
+<span class="sourceLineNo">273</span>         throw new RuntimeException(e);<a name="line.273"></a>
+<span class="sourceLineNo">274</span>      }<a name="line.274"></a>
+<span class="sourceLineNo">275</span>   }<a name="line.275"></a>
+<span class="sourceLineNo">276</span><a name="line.276"></a>
+<span class="sourceLineNo">277</span><a name="line.277"></a>
+<span class="sourceLineNo">278</span>   //--------------------------------------------------------------------------------<a name="line.278"></a>
+<span class="sourceLineNo">279</span>   // Entry point methods<a name="line.279"></a>
+<span class="sourceLineNo">280</span>   //--------------------------------------------------------------------------------<a name="line.280"></a>
+<span class="sourceLineNo">281</span><a name="line.281"></a>
+<span class="sourceLineNo">282</span>   @Override /* Serializer */<a name="line.282"></a>
+<span class="sourceLineNo">283</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.283"></a>
+<span class="sourceLineNo">284</span>      return new UrlEncodingSerializerSession(ctx, null, args);<a name="line.284"></a>
+<span class="sourceLineNo">285</span>   }<a name="line.285"></a>
+<span class="sourceLineNo">286</span><a name="line.286"></a>
+<span class="sourceLineNo">287</span>   @Override /* PartSerializer */<a name="line.287"></a>
+<span class="sourceLineNo">288</span>   public String serialize(PartType type, Object value) {<a name="line.288"></a>
+<span class="sourceLineNo">289</span>      switch(type) {<a name="line.289"></a>
+<span class="sourceLineNo">290</span>         case HEADER: return serializePart(value, false, true);<a name="line.290"></a>
+<span class="sourceLineNo">291</span>         case FORM_DATA: return serializePart(value, false, null);<a name="line.291"></a>
+<span class="sourceLineNo">292</span>         case PATH: return serializePart(value, false, null);<a name="line.292"></a>
+<span class="sourceLineNo">293</span>         case QUERY: return serializePart(value, false, null);<a name="line.293"></a>
+<span class="sourceLineNo">294</span>         default: return toString(value);<a name="line.294"></a>
+<span class="sourceLineNo">295</span>      }<a name="line.295"></a>
+<span class="sourceLineNo">296</span>   }<a name="line.296"></a>
+<span class="sourceLineNo">297</span>}<a name="line.297"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializerSession.html b/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializerSession.html
index cc10cf8..41894f0 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializerSession.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/urlencoding/UrlEncodingSerializerSession.html
@@ -26,35 +26,35 @@
 <span class="sourceLineNo">018</span>import java.util.*;<a name="line.18"></a>
 <span class="sourceLineNo">019</span><a name="line.19"></a>
 <span class="sourceLineNo">020</span>import org.apache.juneau.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span>import org.apache.juneau.serializer.*;<a name="line.21"></a>
-<span class="sourceLineNo">022</span>import org.apache.juneau.transform.*;<a name="line.22"></a>
-<span class="sourceLineNo">023</span>import org.apache.juneau.uon.*;<a name="line.23"></a>
-<span class="sourceLineNo">024</span><a name="line.24"></a>
-<span class="sourceLineNo">025</span>/**<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * Session object that lives for the duration of a single use of {@link UrlEncodingSerializer}.<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * &lt;p&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * This class is NOT thread safe.<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * It is typically discarded after one-time use although it can be reused within the same thread.<a name="line.30"></a>
-<span class="sourceLineNo">031</span> */<a name="line.31"></a>
-<span class="sourceLineNo">032</span>@SuppressWarnings({ "rawtypes", "unchecked" })<a name="line.32"></a>
-<span class="sourceLineNo">033</span>public class UrlEncodingSerializerSession extends UonSerializerSession {<a name="line.33"></a>
-<span class="sourceLineNo">034</span><a name="line.34"></a>
-<span class="sourceLineNo">035</span>   private final boolean expandedParams;<a name="line.35"></a>
-<span class="sourceLineNo">036</span><a name="line.36"></a>
-<span class="sourceLineNo">037</span>   /**<a name="line.37"></a>
-<span class="sourceLineNo">038</span>    * Constructor.<a name="line.38"></a>
-<span class="sourceLineNo">039</span>    *<a name="line.39"></a>
-<span class="sourceLineNo">040</span>    * @param ctx<a name="line.40"></a>
-<span class="sourceLineNo">041</span>    *    The context creating this session object.<a name="line.41"></a>
-<span class="sourceLineNo">042</span>    *    The context contains all the configuration settings for this object.<a name="line.42"></a>
-<span class="sourceLineNo">043</span>    * @param encode Override the {@link UonSerializerContext#UON_encodeChars} setting.<a name="line.43"></a>
-<span class="sourceLineNo">044</span>    * @param args<a name="line.44"></a>
-<span class="sourceLineNo">045</span>    *    Runtime arguments.<a name="line.45"></a>
-<span class="sourceLineNo">046</span>    *    These specify session-level information such as locale and URI context.<a name="line.46"></a>
-<span class="sourceLineNo">047</span>    *    It also include session-level properties that override the properties defined on the bean and<a name="line.47"></a>
-<span class="sourceLineNo">048</span>    *    serializer contexts.<a name="line.48"></a>
-<span class="sourceLineNo">049</span>    *    &lt;br&gt;If &lt;jk&gt;null&lt;/jk&gt;, defaults to {@link SerializerSessionArgs#DEFAULT}.<a name="line.49"></a>
+<span class="sourceLineNo">021</span>import org.apache.juneau.internal.*;<a name="line.21"></a>
+<span class="sourceLineNo">022</span>import org.apache.juneau.serializer.*;<a name="line.22"></a>
+<span class="sourceLineNo">023</span>import org.apache.juneau.transform.*;<a name="line.23"></a>
+<span class="sourceLineNo">024</span>import org.apache.juneau.uon.*;<a name="line.24"></a>
+<span class="sourceLineNo">025</span><a name="line.25"></a>
+<span class="sourceLineNo">026</span>/**<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * Session object that lives for the duration of a single use of {@link UrlEncodingSerializer}.<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;p&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * This class is NOT thread safe.<a name="line.30"></a>
+<span class="sourceLineNo">031</span> * It is typically discarded after one-time use although it can be reused within the same thread.<a name="line.31"></a>
+<span class="sourceLineNo">032</span> */<a name="line.32"></a>
+<span class="sourceLineNo">033</span>@SuppressWarnings({ "rawtypes", "unchecked" })<a name="line.33"></a>
+<span class="sourceLineNo">034</span>public class UrlEncodingSerializerSession extends UonSerializerSession {<a name="line.34"></a>
+<span class="sourceLineNo">035</span><a name="line.35"></a>
+<span class="sourceLineNo">036</span>   private final boolean expandedParams;<a name="line.36"></a>
+<span class="sourceLineNo">037</span><a name="line.37"></a>
+<span class="sourceLineNo">038</span>   /**<a name="line.38"></a>
+<span class="sourceLineNo">039</span>    * Constructor.<a name="line.39"></a>
+<span class="sourceLineNo">040</span>    *<a name="line.40"></a>
+<span class="sourceLineNo">041</span>    * @param ctx<a name="line.41"></a>
+<span class="sourceLineNo">042</span>    *    The context creating this session object.<a name="line.42"></a>
+<span class="sourceLineNo">043</span>    *    The context contains all the configuration settings for this object.<a name="line.43"></a>
+<span class="sourceLineNo">044</span>    * @param encode Override the {@link UonSerializerContext#UON_encodeChars} setting.<a name="line.44"></a>
+<span class="sourceLineNo">045</span>    * @param args<a name="line.45"></a>
+<span class="sourceLineNo">046</span>    *    Runtime arguments.<a name="line.46"></a>
+<span class="sourceLineNo">047</span>    *    These specify session-level information such as locale and URI context.<a name="line.47"></a>
+<span class="sourceLineNo">048</span>    *    It also include session-level properties that override the properties defined on the bean and<a name="line.48"></a>
+<span class="sourceLineNo">049</span>    *    serializer contexts.<a name="line.49"></a>
 <span class="sourceLineNo">050</span>    */<a name="line.50"></a>
 <span class="sourceLineNo">051</span>   protected UrlEncodingSerializerSession(UrlEncodingSerializerContext ctx, Boolean encode, SerializerSessionArgs args) {<a name="line.51"></a>
 <span class="sourceLineNo">052</span>      super(ctx, encode, args);<a name="line.52"></a>
@@ -136,133 +136,135 @@
 <span class="sourceLineNo">128</span>      } else if (sType.isCollection() || sType.isArray()) {<a name="line.128"></a>
 <span class="sourceLineNo">129</span>         Map m = sType.isCollection() ? getCollectionMap((Collection)o) : getCollectionMap(o);<a name="line.129"></a>
 <span class="sourceLineNo">130</span>         serializeCollectionMap(out, m, getClassMeta(Map.class, Integer.class, Object.class));<a name="line.130"></a>
-<span class="sourceLineNo">131</span>      } else {<a name="line.131"></a>
-<span class="sourceLineNo">132</span>         // All other types can't be serialized as key/value pairs, so we create a<a name="line.132"></a>
-<span class="sourceLineNo">133</span>         // mock key/value pair with a "_value" key.<a name="line.133"></a>
-<span class="sourceLineNo">134</span>         out.append("_value=");<a name="line.134"></a>
-<span class="sourceLineNo">135</span>         super.serializeAnything(out, o, null, null, null);<a name="line.135"></a>
-<span class="sourceLineNo">136</span>      }<a name="line.136"></a>
-<span class="sourceLineNo">137</span><a name="line.137"></a>
-<span class="sourceLineNo">138</span>      pop();<a name="line.138"></a>
-<span class="sourceLineNo">139</span>      return out;<a name="line.139"></a>
-<span class="sourceLineNo">140</span>   }<a name="line.140"></a>
-<span class="sourceLineNo">141</span><a name="line.141"></a>
-<span class="sourceLineNo">142</span>   /*<a name="line.142"></a>
-<span class="sourceLineNo">143</span>    * Converts a Collection into an integer-indexed map.<a name="line.143"></a>
-<span class="sourceLineNo">144</span>    */<a name="line.144"></a>
-<span class="sourceLineNo">145</span>   private static Map&lt;Integer,Object&gt; getCollectionMap(Collection&lt;?&gt; c) {<a name="line.145"></a>
-<span class="sourceLineNo">146</span>      Map&lt;Integer,Object&gt; m = new TreeMap&lt;Integer,Object&gt;();<a name="line.146"></a>
-<span class="sourceLineNo">147</span>      int i = 0;<a name="line.147"></a>
-<span class="sourceLineNo">148</span>      for (Object o : c)<a name="line.148"></a>
-<span class="sourceLineNo">149</span>         m.put(i++, o);<a name="line.149"></a>
-<span class="sourceLineNo">150</span>      return m;<a name="line.150"></a>
-<span class="sourceLineNo">151</span>   }<a name="line.151"></a>
-<span class="sourceLineNo">152</span><a name="line.152"></a>
-<span class="sourceLineNo">153</span>   /*<a name="line.153"></a>
-<span class="sourceLineNo">154</span>    * Converts an array into an integer-indexed map.<a name="line.154"></a>
-<span class="sourceLineNo">155</span>    */<a name="line.155"></a>
-<span class="sourceLineNo">156</span>   private static Map&lt;Integer,Object&gt; getCollectionMap(Object array) {<a name="line.156"></a>
-<span class="sourceLineNo">157</span>      Map&lt;Integer,Object&gt; m = new TreeMap&lt;Integer,Object&gt;();<a name="line.157"></a>
-<span class="sourceLineNo">158</span>      for (int i = 0; i &lt; Array.getLength(array); i++)<a name="line.158"></a>
-<span class="sourceLineNo">159</span>         m.put(i, Array.get(array, i));<a name="line.159"></a>
-<span class="sourceLineNo">160</span>      return m;<a name="line.160"></a>
-<span class="sourceLineNo">161</span>   }<a name="line.161"></a>
-<span class="sourceLineNo">162</span><a name="line.162"></a>
-<span class="sourceLineNo">163</span>   private SerializerWriter serializeMap(UonWriter out, Map m, ClassMeta&lt;?&gt; type) throws Exception {<a name="line.163"></a>
+<span class="sourceLineNo">131</span>      } else if (sType.isReader() || sType.isInputStream()) {<a name="line.131"></a>
+<span class="sourceLineNo">132</span>         IOUtils.pipe(o, out);<a name="line.132"></a>
+<span class="sourceLineNo">133</span>      } else {<a name="line.133"></a>
+<span class="sourceLineNo">134</span>         // All other types can't be serialized as key/value pairs, so we create a<a name="line.134"></a>
+<span class="sourceLineNo">135</span>         // mock key/value pair with a "_value" key.<a name="line.135"></a>
+<span class="sourceLineNo">136</span>         out.append("_value=");<a name="line.136"></a>
+<span class="sourceLineNo">137</span>         super.serializeAnything(out, o, null, null, null);<a name="line.137"></a>
+<span class="sourceLineNo">138</span>      }<a name="line.138"></a>
+<span class="sourceLineNo">139</span><a name="line.139"></a>
+<span class="sourceLineNo">140</span>      pop();<a name="line.140"></a>
+<span class="sourceLineNo">141</span>      return out;<a name="line.141"></a>
+<span class="sourceLineNo">142</span>   }<a name="line.142"></a>
+<span class="sourceLineNo">143</span><a name="line.143"></a>
+<span class="sourceLineNo">144</span>   /*<a name="line.144"></a>
+<span class="sourceLineNo">145</span>    * Converts a Collection into an integer-indexed map.<a name="line.145"></a>
+<span class="sourceLineNo">146</span>    */<a name="line.146"></a>
+<span class="sourceLineNo">147</span>   private static Map&lt;Integer,Object&gt; getCollectionMap(Collection&lt;?&gt; c) {<a name="line.147"></a>
+<span class="sourceLineNo">148</span>      Map&lt;Integer,Object&gt; m = new TreeMap&lt;Integer,Object&gt;();<a name="line.148"></a>
+<span class="sourceLineNo">149</span>      int i = 0;<a name="line.149"></a>
+<span class="sourceLineNo">150</span>      for (Object o : c)<a name="line.150"></a>
+<span class="sourceLineNo">151</span>         m.put(i++, o);<a name="line.151"></a>
+<span class="sourceLineNo">152</span>      return m;<a name="line.152"></a>
+<span class="sourceLineNo">153</span>   }<a name="line.153"></a>
+<span class="sourceLineNo">154</span><a name="line.154"></a>
+<span class="sourceLineNo">155</span>   /*<a name="line.155"></a>
+<span class="sourceLineNo">156</span>    * Converts an array into an integer-indexed map.<a name="line.156"></a>
+<span class="sourceLineNo">157</span>    */<a name="line.157"></a>
+<span class="sourceLineNo">158</span>   private static Map&lt;Integer,Object&gt; getCollectionMap(Object array) {<a name="line.158"></a>
+<span class="sourceLineNo">159</span>      Map&lt;Integer,Object&gt; m = new TreeMap&lt;Integer,Object&gt;();<a name="line.159"></a>
+<span class="sourceLineNo">160</span>      for (int i = 0; i &lt; Array.getLength(array); i++)<a name="line.160"></a>
+<span class="sourceLineNo">161</span>         m.put(i, Array.get(array, i));<a name="line.161"></a>
+<span class="sourceLineNo">162</span>      return m;<a name="line.162"></a>
+<span class="sourceLineNo">163</span>   }<a name="line.163"></a>
 <span class="sourceLineNo">164</span><a name="line.164"></a>
-<span class="sourceLineNo">165</span>      m = sort(m);<a name="line.165"></a>
+<span class="sourceLineNo">165</span>   private SerializerWriter serializeMap(UonWriter out, Map m, ClassMeta&lt;?&gt; type) throws Exception {<a name="line.165"></a>
 <span class="sourceLineNo">166</span><a name="line.166"></a>
-<span class="sourceLineNo">167</span>      ClassMeta&lt;?&gt; keyType = type.getKeyType(), valueType = type.getValueType();<a name="line.167"></a>
+<span class="sourceLineNo">167</span>      m = sort(m);<a name="line.167"></a>
 <span class="sourceLineNo">168</span><a name="line.168"></a>
-<span class="sourceLineNo">169</span>      boolean addAmp = false;<a name="line.169"></a>
+<span class="sourceLineNo">169</span>      ClassMeta&lt;?&gt; keyType = type.getKeyType(), valueType = type.getValueType();<a name="line.169"></a>
 <span class="sourceLineNo">170</span><a name="line.170"></a>
-<span class="sourceLineNo">171</span>      for (Map.Entry e : (Set&lt;Map.Entry&gt;)m.entrySet()) {<a name="line.171"></a>
-<span class="sourceLineNo">172</span>         Object key = generalize(e.getKey(), keyType);<a name="line.172"></a>
-<span class="sourceLineNo">173</span>         Object value = e.getValue();<a name="line.173"></a>
-<span class="sourceLineNo">174</span><a name="line.174"></a>
-<span class="sourceLineNo">175</span>         if (shouldUseExpandedParams(value)) {<a name="line.175"></a>
-<span class="sourceLineNo">176</span>            Iterator i = value instanceof Collection ? ((Collection)value).iterator() : iterator(value);<a name="line.176"></a>
-<span class="sourceLineNo">177</span>            while (i.hasNext()) {<a name="line.177"></a>
-<span class="sourceLineNo">178</span>               if (addAmp)<a name="line.178"></a>
-<span class="sourceLineNo">179</span>                  out.cr(indent).append('&amp;');<a name="line.179"></a>
-<span class="sourceLineNo">180</span>               out.appendObject(key, true).append('=');<a name="line.180"></a>
-<span class="sourceLineNo">181</span>               super.serializeAnything(out, i.next(), null, (key == null ? null : key.toString()), null);<a name="line.181"></a>
-<span class="sourceLineNo">182</span>               addAmp = true;<a name="line.182"></a>
-<span class="sourceLineNo">183</span>            }<a name="line.183"></a>
-<span class="sourceLineNo">184</span>         } else {<a name="line.184"></a>
-<span class="sourceLineNo">185</span>            if (addAmp)<a name="line.185"></a>
-<span class="sourceLineNo">186</span>               out.cr(indent).append('&amp;');<a name="line.186"></a>
-<span class="sourceLineNo">187</span>            out.appendObject(key, true).append('=');<a name="line.187"></a>
-<span class="sourceLineNo">188</span>            super.serializeAnything(out, value, valueType, (key == null ? null : key.toString()), null);<a name="line.188"></a>
-<span class="sourceLineNo">189</span>            addAmp = true;<a name="line.189"></a>
-<span class="sourceLineNo">190</span>         }<a name="line.190"></a>
-<span class="sourceLineNo">191</span>      }<a name="line.191"></a>
-<span class="sourceLineNo">192</span><a name="line.192"></a>
-<span class="sourceLineNo">193</span>      return out;<a name="line.193"></a>
-<span class="sourceLineNo">194</span>   }<a name="line.194"></a>
-<span class="sourceLineNo">195</span><a name="line.195"></a>
-<span class="sourceLineNo">196</span>   private SerializerWriter serializeCollectionMap(UonWriter out, Map m, ClassMeta&lt;?&gt; type) throws Exception {<a name="line.196"></a>
+<span class="sourceLineNo">171</span>      boolean addAmp = false;<a name="line.171"></a>
+<span class="sourceLineNo">172</span><a name="line.172"></a>
+<span class="sourceLineNo">173</span>      for (Map.Entry e : (Set&lt;Map.Entry&gt;)m.entrySet()) {<a name="line.173"></a>
+<span class="sourceLineNo">174</span>         Object key = generalize(e.getKey(), keyType);<a name="line.174"></a>
+<span class="sourceLineNo">175</span>         Object value = e.getValue();<a name="line.175"></a>
+<span class="sourceLineNo">176</span><a name="line.176"></a>
+<span class="sourceLineNo">177</span>         if (shouldUseExpandedParams(value)) {<a name="line.177"></a>
+<span class="sourceLineNo">178</span>            Iterator i = value instanceof Collection ? ((Collection)value).iterator() : iterator(value);<a name="line.178"></a>
+<span class="sourceLineNo">179</span>            while (i.hasNext()) {<a name="line.179"></a>
+<span class="sourceLineNo">180</span>               if (addAmp)<a name="line.180"></a>
+<span class="sourceLineNo">181</span>                  out.cr(indent).append('&amp;');<a name="line.181"></a>
+<span class="sourceLineNo">182</span>               out.appendObject(key, true).append('=');<a name="line.182"></a>
+<span class="sourceLineNo">183</span>               super.serializeAnything(out, i.next(), null, (key == null ? null : key.toString()), null);<a name="line.183"></a>
+<span class="sourceLineNo">184</span>               addAmp = true;<a name="line.184"></a>
+<span class="sourceLineNo">185</span>            }<a name="line.185"></a>
+<span class="sourceLineNo">186</span>         } else {<a name="line.186"></a>
+<span class="sourceLineNo">187</span>            if (addAmp)<a name="line.187"></a>
+<span class="sourceLineNo">188</span>               out.cr(indent).append('&amp;');<a name="line.188"></a>
+<span class="sourceLineNo">189</span>            out.appendObject(key, true).append('=');<a name="line.189"></a>
+<span class="sourceLineNo">190</span>            super.serializeAnything(out, value, valueType, (key == null ? null : key.toString()), null);<a name="line.190"></a>
+<span class="sourceLineNo">191</span>            addAmp = true;<a name="line.191"></a>
+<span class="sourceLineNo">192</span>         }<a name="line.192"></a>
+<span class="sourceLineNo">193</span>      }<a name="line.193"></a>
+<span class="sourceLineNo">194</span><a name="line.194"></a>
+<span class="sourceLineNo">195</span>      return out;<a name="line.195"></a>
+<span class="sourceLineNo">196</span>   }<a name="line.196"></a>
 <span class="sourceLineNo">197</span><a name="line.197"></a>
-<span class="sourceLineNo">198</span>      ClassMeta&lt;?&gt; valueType = type.getValueType();<a name="line.198"></a>
+<span class="sourceLineNo">198</span>   private SerializerWriter serializeCollectionMap(UonWriter out, Map m, ClassMeta&lt;?&gt; type) throws Exception {<a name="line.198"></a>
 <span class="sourceLineNo">199</span><a name="line.199"></a>
-<span class="sourceLineNo">200</span>      boolean addAmp = false;<a name="line.200"></a>
+<span class="sourceLineNo">200</span>      ClassMeta&lt;?&gt; valueType = type.getValueType();<a name="line.200"></a>
 <span class="sourceLineNo">201</span><a name="line.201"></a>
-<span class="sourceLineNo">202</span>      for (Map.Entry e : (Set&lt;Map.Entry&gt;)m.entrySet()) {<a name="line.202"></a>
-<span class="sourceLineNo">203</span>         if (addAmp)<a name="line.203"></a>
-<span class="sourceLineNo">204</span>            out.cr(indent).append('&amp;');<a name="line.204"></a>
-<span class="sourceLineNo">205</span>         out.append(e.getKey()).append('=');<a name="line.205"></a>
-<span class="sourceLineNo">206</span>         super.serializeAnything(out, e.getValue(), valueType, null, null);<a name="line.206"></a>
-<span class="sourceLineNo">207</span>         addAmp = true;<a name="line.207"></a>
-<span class="sourceLineNo">208</span>      }<a name="line.208"></a>
-<span class="sourceLineNo">209</span><a name="line.209"></a>
-<span class="sourceLineNo">210</span>      return out;<a name="line.210"></a>
-<span class="sourceLineNo">211</span>   }<a name="line.211"></a>
-<span class="sourceLineNo">212</span><a name="line.212"></a>
-<span class="sourceLineNo">213</span>   private SerializerWriter serializeBeanMap(UonWriter out, BeanMap&lt;?&gt; m, String typeName) throws Exception {<a name="line.213"></a>
-<span class="sourceLineNo">214</span>      boolean addAmp = false;<a name="line.214"></a>
-<span class="sourceLineNo">215</span><a name="line.215"></a>
-<span class="sourceLineNo">216</span>      for (BeanPropertyValue p : m.getValues(isTrimNulls(), typeName != null ? createBeanTypeNameProperty(m, typeName) : null)) {<a name="line.216"></a>
-<span class="sourceLineNo">217</span>         BeanPropertyMeta pMeta = p.getMeta();<a name="line.217"></a>
-<span class="sourceLineNo">218</span>         ClassMeta&lt;?&gt; cMeta = p.getClassMeta();<a name="line.218"></a>
-<span class="sourceLineNo">219</span><a name="line.219"></a>
-<span class="sourceLineNo">220</span>         String key = p.getName();<a name="line.220"></a>
-<span class="sourceLineNo">221</span>         Object value = p.getValue();<a name="line.221"></a>
-<span class="sourceLineNo">222</span>         Throwable t = p.getThrown();<a name="line.222"></a>
-<span class="sourceLineNo">223</span>         if (t != null)<a name="line.223"></a>
-<span class="sourceLineNo">224</span>            onBeanGetterException(pMeta, t);<a name="line.224"></a>
-<span class="sourceLineNo">225</span><a name="line.225"></a>
-<span class="sourceLineNo">226</span>         if (canIgnoreValue(cMeta, key, value))<a name="line.226"></a>
-<span class="sourceLineNo">227</span>            continue;<a name="line.227"></a>
-<span class="sourceLineNo">228</span><a name="line.228"></a>
-<span class="sourceLineNo">229</span>         if (value != null &amp;&amp; shouldUseExpandedParams(pMeta)) {<a name="line.229"></a>
-<span class="sourceLineNo">230</span>            // Transformed object array bean properties may be transformed resulting in ArrayLists,<a name="line.230"></a>
-<span class="sourceLineNo">231</span>            // so we need to check type if we think it's an array.<a name="line.231"></a>
-<span class="sourceLineNo">232</span>            Iterator i = (cMeta.isCollection() || value instanceof Collection) ? ((Collection)value).iterator() : iterator(value);<a name="line.232"></a>
-<span class="sourceLineNo">233</span>            while (i.hasNext()) {<a name="line.233"></a>
-<span class="sourceLineNo">234</span>               if (addAmp)<a name="line.234"></a>
-<span class="sourceLineNo">235</span>                  out.cr(indent).append('&amp;');<a name="line.235"></a>
-<span class="sourceLineNo">236</span><a name="line.236"></a>
-<span class="sourceLineNo">237</span>               out.appendObject(key, true).append('=');<a name="line.237"></a>
+<span class="sourceLineNo">202</span>      boolean addAmp = false;<a name="line.202"></a>
+<span class="sourceLineNo">203</span><a name="line.203"></a>
+<span class="sourceLineNo">204</span>      for (Map.Entry e : (Set&lt;Map.Entry&gt;)m.entrySet()) {<a name="line.204"></a>
+<span class="sourceLineNo">205</span>         if (addAmp)<a name="line.205"></a>
+<span class="sourceLineNo">206</span>            out.cr(indent).append('&amp;');<a name="line.206"></a>
+<span class="sourceLineNo">207</span>         out.append(e.getKey()).append('=');<a name="line.207"></a>
+<span class="sourceLineNo">208</span>         super.serializeAnything(out, e.getValue(), valueType, null, null);<a name="line.208"></a>
+<span class="sourceLineNo">209</span>         addAmp = true;<a name="line.209"></a>
+<span class="sourceLineNo">210</span>      }<a name="line.210"></a>
+<span class="sourceLineNo">211</span><a name="line.211"></a>
+<span class="sourceLineNo">212</span>      return out;<a name="line.212"></a>
+<span class="sourceLineNo">213</span>   }<a name="line.213"></a>
+<span class="sourceLineNo">214</span><a name="line.214"></a>
+<span class="sourceLineNo">215</span>   private SerializerWriter serializeBeanMap(UonWriter out, BeanMap&lt;?&gt; m, String typeName) throws Exception {<a name="line.215"></a>
+<span class="sourceLineNo">216</span>      boolean addAmp = false;<a name="line.216"></a>
+<span class="sourceLineNo">217</span><a name="line.217"></a>
+<span class="sourceLineNo">218</span>      for (BeanPropertyValue p : m.getValues(isTrimNulls(), typeName != null ? createBeanTypeNameProperty(m, typeName) : null)) {<a name="line.218"></a>
+<span class="sourceLineNo">219</span>         BeanPropertyMeta pMeta = p.getMeta();<a name="line.219"></a>
+<span class="sourceLineNo">220</span>         ClassMeta&lt;?&gt; cMeta = p.getClassMeta();<a name="line.220"></a>
+<span class="sourceLineNo">221</span><a name="line.221"></a>
+<span class="sourceLineNo">222</span>         String key = p.getName();<a name="line.222"></a>
+<span class="sourceLineNo">223</span>         Object value = p.getValue();<a name="line.223"></a>
+<span class="sourceLineNo">224</span>         Throwable t = p.getThrown();<a name="line.224"></a>
+<span class="sourceLineNo">225</span>         if (t != null)<a name="line.225"></a>
+<span class="sourceLineNo">226</span>            onBeanGetterException(pMeta, t);<a name="line.226"></a>
+<span class="sourceLineNo">227</span><a name="line.227"></a>
+<span class="sourceLineNo">228</span>         if (canIgnoreValue(cMeta, key, value))<a name="line.228"></a>
+<span class="sourceLineNo">229</span>            continue;<a name="line.229"></a>
+<span class="sourceLineNo">230</span><a name="line.230"></a>
+<span class="sourceLineNo">231</span>         if (value != null &amp;&amp; shouldUseExpandedParams(pMeta)) {<a name="line.231"></a>
+<span class="sourceLineNo">232</span>            // Transformed object array bean properties may be transformed resulting in ArrayLists,<a name="line.232"></a>
+<span class="sourceLineNo">233</span>            // so we need to check type if we think it's an array.<a name="line.233"></a>
+<span class="sourceLineNo">234</span>            Iterator i = (cMeta.isCollection() || value instanceof Collection) ? ((Collection)value).iterator() : iterator(value);<a name="line.234"></a>
+<span class="sourceLineNo">235</span>            while (i.hasNext()) {<a name="line.235"></a>
+<span class="sourceLineNo">236</span>               if (addAmp)<a name="line.236"></a>
+<span class="sourceLineNo">237</span>                  out.cr(indent).append('&amp;');<a name="line.237"></a>
 <span class="sourceLineNo">238</span><a name="line.238"></a>
-<span class="sourceLineNo">239</span>               super.serializeAnything(out, i.next(), cMeta.getElementType(), key, pMeta);<a name="line.239"></a>
+<span class="sourceLineNo">239</span>               out.appendObject(key, true).append('=');<a name="line.239"></a>
 <span class="sourceLineNo">240</span><a name="line.240"></a>
-<span class="sourceLineNo">241</span>               addAmp = true;<a name="line.241"></a>
-<span class="sourceLineNo">242</span>            }<a name="line.242"></a>
-<span class="sourceLineNo">243</span>         } else {<a name="line.243"></a>
-<span class="sourceLineNo">244</span>            if (addAmp)<a name="line.244"></a>
-<span class="sourceLineNo">245</span>               out.cr(indent).append('&amp;');<a name="line.245"></a>
-<span class="sourceLineNo">246</span><a name="line.246"></a>
-<span class="sourceLineNo">247</span>            out.appendObject(key, true).append('=');<a name="line.247"></a>
+<span class="sourceLineNo">241</span>               super.serializeAnything(out, i.next(), cMeta.getElementType(), key, pMeta);<a name="line.241"></a>
+<span class="sourceLineNo">242</span><a name="line.242"></a>
+<span class="sourceLineNo">243</span>               addAmp = true;<a name="line.243"></a>
+<span class="sourceLineNo">244</span>            }<a name="line.244"></a>
+<span class="sourceLineNo">245</span>         } else {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>            if (addAmp)<a name="line.246"></a>
+<span class="sourceLineNo">247</span>               out.cr(indent).append('&amp;');<a name="line.247"></a>
 <span class="sourceLineNo">248</span><a name="line.248"></a>
-<span class="sourceLineNo">249</span>            super.serializeAnything(out, value, cMeta, key, pMeta);<a name="line.249"></a>
+<span class="sourceLineNo">249</span>            out.appendObject(key, true).append('=');<a name="line.249"></a>
 <span class="sourceLineNo">250</span><a name="line.250"></a>
-<span class="sourceLineNo">251</span>            addAmp = true;<a name="line.251"></a>
-<span class="sourceLineNo">252</span>         }<a name="line.252"></a>
-<span class="sourceLineNo">253</span><a name="line.253"></a>
-<span class="sourceLineNo">254</span>      }<a name="line.254"></a>
-<span class="sourceLineNo">255</span>      return out;<a name="line.255"></a>
-<span class="sourceLineNo">256</span>   }<a name="line.256"></a>
-<span class="sourceLineNo">257</span>}<a name="line.257"></a>
+<span class="sourceLineNo">251</span>            super.serializeAnything(out, value, cMeta, key, pMeta);<a name="line.251"></a>
+<span class="sourceLineNo">252</span><a name="line.252"></a>
+<span class="sourceLineNo">253</span>            addAmp = true;<a name="line.253"></a>
+<span class="sourceLineNo">254</span>         }<a name="line.254"></a>
+<span class="sourceLineNo">255</span><a name="line.255"></a>
+<span class="sourceLineNo">256</span>      }<a name="line.256"></a>
+<span class="sourceLineNo">257</span>      return out;<a name="line.257"></a>
+<span class="sourceLineNo">258</span>   }<a name="line.258"></a>
+<span class="sourceLineNo">259</span>}<a name="line.259"></a>
 
 
 


[27/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.Simple.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.Simple.html b/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.Simple.html
index 4484c96..3a31851 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.Simple.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/json/JsonSerializer.Simple.html
@@ -25,222 +25,247 @@
 <span class="sourceLineNo">017</span>import java.util.*;<a name="line.17"></a>
 <span class="sourceLineNo">018</span><a name="line.18"></a>
 <span class="sourceLineNo">019</span>import org.apache.juneau.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.annotation.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span>import org.apache.juneau.serializer.*;<a name="line.21"></a>
-<span class="sourceLineNo">022</span><a name="line.22"></a>
-<span class="sourceLineNo">023</span>/**<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * Serializes POJO models to JSON.<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;application/json, text/json&lt;/code&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * &lt;p&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/json&lt;/code&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> *<a name="line.31"></a>
-<span class="sourceLineNo">032</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.32"></a>
-<span class="sourceLineNo">033</span> *<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * The conversion is as follows...<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * &lt;ul class='spaced-list'&gt;<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *    &lt;li&gt;<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *       Maps (e.g. {@link HashMap HashMaps}, {@link TreeMap TreeMaps}) are converted to JSON objects.<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *       Collections (e.g. {@link HashSet HashSets}, {@link LinkedList LinkedLists}) and Java arrays are converted to<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *       JSON arrays.<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *    &lt;li&gt;<a name="line.41"></a>
-<span class="sourceLineNo">042</span> *       {@link String Strings} are converted to JSON strings.<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *    &lt;li&gt;<a name="line.43"></a>
-<span class="sourceLineNo">044</span> *       {@link Number Numbers} (e.g. {@link Integer}, {@link Long}, {@link Double}) are converted to JSON numbers.<a name="line.44"></a>
-<span class="sourceLineNo">045</span> *    &lt;li&gt;<a name="line.45"></a>
-<span class="sourceLineNo">046</span> *       {@link Boolean Booleans} are converted to JSON booleans.<a name="line.46"></a>
-<span class="sourceLineNo">047</span> *    &lt;li&gt;<a name="line.47"></a>
-<span class="sourceLineNo">048</span> *       {@code nulls} are converted to JSON nulls.<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *    &lt;li&gt;<a name="line.49"></a>
-<span class="sourceLineNo">050</span> *       {@code arrays} are converted to JSON arrays.<a name="line.50"></a>
-<span class="sourceLineNo">051</span> *    &lt;li&gt;<a name="line.51"></a>
-<span class="sourceLineNo">052</span> *       {@code beans} are converted to JSON objects.<a name="line.52"></a>
-<span class="sourceLineNo">053</span> * &lt;/ul&gt;<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *<a name="line.54"></a>
-<span class="sourceLineNo">055</span> * &lt;p&gt;<a name="line.55"></a>
-<span class="sourceLineNo">056</span> * The types above are considered "JSON-primitive" object types.<a name="line.56"></a>
-<span class="sourceLineNo">057</span> * Any non-JSON-primitive object types are transformed into JSON-primitive object types through<a name="line.57"></a>
-<span class="sourceLineNo">058</span> * {@link org.apache.juneau.transform.PojoSwap PojoSwaps} associated through the<a name="line.58"></a>
-<span class="sourceLineNo">059</span> * {@link CoreObjectBuilder#pojoSwaps(Class...)} method.<a name="line.59"></a>
-<span class="sourceLineNo">060</span> * Several default transforms are provided for transforming Dates, Enums, Iterators, etc...<a name="line.60"></a>
-<span class="sourceLineNo">061</span> *<a name="line.61"></a>
-<span class="sourceLineNo">062</span> * &lt;p&gt;<a name="line.62"></a>
-<span class="sourceLineNo">063</span> * This serializer provides several serialization options.<a name="line.63"></a>
-<span class="sourceLineNo">064</span> * Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.64"></a>
-<span class="sourceLineNo">065</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.65"></a>
-<span class="sourceLineNo">066</span> *<a name="line.66"></a>
-<span class="sourceLineNo">067</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.67"></a>
-<span class="sourceLineNo">068</span> *<a name="line.68"></a>
-<span class="sourceLineNo">069</span> * This class has the following properties associated with it:<a name="line.69"></a>
-<span class="sourceLineNo">070</span> * &lt;ul&gt;<a name="line.70"></a>
-<span class="sourceLineNo">071</span> *    &lt;li&gt;{@link JsonSerializerContext}<a name="line.71"></a>
-<span class="sourceLineNo">072</span> *    &lt;li&gt;{@link SerializerContext}<a name="line.72"></a>
-<span class="sourceLineNo">073</span> *    &lt;li&gt;{@link BeanContext}<a name="line.73"></a>
-<span class="sourceLineNo">074</span> * &lt;/ul&gt;<a name="line.74"></a>
-<span class="sourceLineNo">075</span> *<a name="line.75"></a>
-<span class="sourceLineNo">076</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.76"></a>
-<span class="sourceLineNo">077</span> *<a name="line.77"></a>
-<span class="sourceLineNo">078</span> * The following direct subclasses are provided for convenience:<a name="line.78"></a>
-<span class="sourceLineNo">079</span> * &lt;ul class='spaced-list'&gt;<a name="line.79"></a>
-<span class="sourceLineNo">080</span> *    &lt;li&gt;<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *       {@link Simple} - Default serializer, single quotes, simple mode.<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *    &lt;li&gt;<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *       {@link SimpleReadable} - Default serializer, single quotes, simple mode, with whitespace.<a name="line.83"></a>
-<span class="sourceLineNo">084</span> * &lt;/ul&gt;<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *<a name="line.85"></a>
-<span class="sourceLineNo">086</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.86"></a>
-<span class="sourceLineNo">087</span> * &lt;p class='bcode'&gt;<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *    &lt;jc&gt;// Use one of the default serializers to serialize a POJO&lt;/jc&gt;<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *    String json = JsonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(someObject);<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *    &lt;jc&gt;// Create a custom serializer for lax syntax using single quote characters&lt;/jc&gt;<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *    JsonSerializer serializer = &lt;jk&gt;new&lt;/jk&gt; JsonSerializerBuilder().simple().sq().build();<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *<a name="line.93"></a>
-<span class="sourceLineNo">094</span> *    &lt;jc&gt;// Clone an existing serializer and modify it to use single-quotes&lt;/jc&gt;<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *    JsonSerializer serializer = JsonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.builder().sq().build();<a name="line.95"></a>
-<span class="sourceLineNo">096</span> *<a name="line.96"></a>
-<span class="sourceLineNo">097</span> *    &lt;jc&gt;// Serialize a POJO to JSON&lt;/jc&gt;<a name="line.97"></a>
-<span class="sourceLineNo">098</span> *    String json = serializer.serialize(someObject);<a name="line.98"></a>
-<span class="sourceLineNo">099</span> * &lt;/p&gt;<a name="line.99"></a>
-<span class="sourceLineNo">100</span> */<a name="line.100"></a>
-<span class="sourceLineNo">101</span>@Produces("application/json,text/json")<a name="line.101"></a>
-<span class="sourceLineNo">102</span>public class JsonSerializer extends WriterSerializer {<a name="line.102"></a>
-<span class="sourceLineNo">103</span><a name="line.103"></a>
-<span class="sourceLineNo">104</span>   /** Default serializer, all default settings.*/<a name="line.104"></a>
-<span class="sourceLineNo">105</span>   public static final JsonSerializer DEFAULT = new JsonSerializer(PropertyStore.create());<a name="line.105"></a>
-<span class="sourceLineNo">106</span><a name="line.106"></a>
-<span class="sourceLineNo">107</span>   /** Default serializer, all default settings.*/<a name="line.107"></a>
-<span class="sourceLineNo">108</span>   public static final JsonSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.108"></a>
-<span class="sourceLineNo">109</span><a name="line.109"></a>
-<span class="sourceLineNo">110</span>   /** Default serializer, single quotes, simple mode. */<a name="line.110"></a>
-<span class="sourceLineNo">111</span>   public static final JsonSerializer DEFAULT_LAX = new Simple(PropertyStore.create());<a name="line.111"></a>
-<span class="sourceLineNo">112</span><a name="line.112"></a>
-<span class="sourceLineNo">113</span>   /** Default serializer, single quotes, simple mode, with whitespace. */<a name="line.113"></a>
-<span class="sourceLineNo">114</span>   public static final JsonSerializer DEFAULT_LAX_READABLE = new SimpleReadable(PropertyStore.create());<a name="line.114"></a>
-<span class="sourceLineNo">115</span><a name="line.115"></a>
-<span class="sourceLineNo">116</span>   /**<a name="line.116"></a>
-<span class="sourceLineNo">117</span>    * Default serializer, single quotes, simple mode, with whitespace and recursion detection.<a name="line.117"></a>
-<span class="sourceLineNo">118</span>    * Note that recursion detection introduces a small performance penalty.<a name="line.118"></a>
-<span class="sourceLineNo">119</span>    */<a name="line.119"></a>
-<span class="sourceLineNo">120</span>   public static final JsonSerializer DEFAULT_LAX_READABLE_SAFE = new SimpleReadableSafe(PropertyStore.create());<a name="line.120"></a>
-<span class="sourceLineNo">121</span><a name="line.121"></a>
-<span class="sourceLineNo">122</span><a name="line.122"></a>
-<span class="sourceLineNo">123</span>   /** Default serializer, with whitespace. */<a name="line.123"></a>
-<span class="sourceLineNo">124</span>   public static class Readable extends JsonSerializer {<a name="line.124"></a>
-<span class="sourceLineNo">125</span><a name="line.125"></a>
-<span class="sourceLineNo">126</span>      /**<a name="line.126"></a>
-<span class="sourceLineNo">127</span>       * Constructor.<a name="line.127"></a>
-<span class="sourceLineNo">128</span>       *<a name="line.128"></a>
-<span class="sourceLineNo">129</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.129"></a>
-<span class="sourceLineNo">130</span>       */<a name="line.130"></a>
-<span class="sourceLineNo">131</span>      public Readable(PropertyStore propertyStore) {<a name="line.131"></a>
-<span class="sourceLineNo">132</span>         super(<a name="line.132"></a>
-<span class="sourceLineNo">133</span>            propertyStore.copy()<a name="line.133"></a>
-<span class="sourceLineNo">134</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.134"></a>
-<span class="sourceLineNo">135</span>         );<a name="line.135"></a>
-<span class="sourceLineNo">136</span>      }<a name="line.136"></a>
-<span class="sourceLineNo">137</span>   }<a name="line.137"></a>
-<span class="sourceLineNo">138</span><a name="line.138"></a>
-<span class="sourceLineNo">139</span>   /** Default serializer, single quotes, simple mode. */<a name="line.139"></a>
-<span class="sourceLineNo">140</span>   @Produces(value="application/json+simple,text/json+simple",contentType="application/json")<a name="line.140"></a>
-<span class="sourceLineNo">141</span>   public static class Simple extends JsonSerializer {<a name="line.141"></a>
-<span class="sourceLineNo">142</span><a name="line.142"></a>
-<span class="sourceLineNo">143</span>      /**<a name="line.143"></a>
-<span class="sourceLineNo">144</span>       * Constructor.<a name="line.144"></a>
-<span class="sourceLineNo">145</span>       *<a name="line.145"></a>
-<span class="sourceLineNo">146</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.146"></a>
-<span class="sourceLineNo">147</span>       */<a name="line.147"></a>
-<span class="sourceLineNo">148</span>      public Simple(PropertyStore propertyStore) {<a name="line.148"></a>
-<span class="sourceLineNo">149</span>         super(<a name="line.149"></a>
-<span class="sourceLineNo">150</span>            propertyStore.copy()<a name="line.150"></a>
-<span class="sourceLineNo">151</span>            .append(JSON_simpleMode, true)<a name="line.151"></a>
-<span class="sourceLineNo">152</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.152"></a>
-<span class="sourceLineNo">153</span>         );<a name="line.153"></a>
-<span class="sourceLineNo">154</span>      }<a name="line.154"></a>
-<span class="sourceLineNo">155</span>   }<a name="line.155"></a>
-<span class="sourceLineNo">156</span><a name="line.156"></a>
-<span class="sourceLineNo">157</span>   /** Default serializer, single quotes, simple mode, with whitespace. */<a name="line.157"></a>
-<span class="sourceLineNo">158</span>   public static class SimpleReadable extends JsonSerializer {<a name="line.158"></a>
-<span class="sourceLineNo">159</span><a name="line.159"></a>
-<span class="sourceLineNo">160</span>      /**<a name="line.160"></a>
-<span class="sourceLineNo">161</span>       * Constructor.<a name="line.161"></a>
-<span class="sourceLineNo">162</span>       *<a name="line.162"></a>
-<span class="sourceLineNo">163</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.163"></a>
-<span class="sourceLineNo">164</span>       */<a name="line.164"></a>
-<span class="sourceLineNo">165</span>      public SimpleReadable(PropertyStore propertyStore) {<a name="line.165"></a>
-<span class="sourceLineNo">166</span>         super(<a name="line.166"></a>
-<span class="sourceLineNo">167</span>            propertyStore.copy()<a name="line.167"></a>
-<span class="sourceLineNo">168</span>            .append(JSON_simpleMode, true)<a name="line.168"></a>
-<span class="sourceLineNo">169</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.169"></a>
-<span class="sourceLineNo">170</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.170"></a>
-<span class="sourceLineNo">171</span>         );<a name="line.171"></a>
-<span class="sourceLineNo">172</span>      }<a name="line.172"></a>
-<span class="sourceLineNo">173</span>   }<a name="line.173"></a>
-<span class="sourceLineNo">174</span><a name="line.174"></a>
-<span class="sourceLineNo">175</span>   /**<a name="line.175"></a>
-<span class="sourceLineNo">176</span>    * Default serializer, single quotes, simple mode, with whitespace and recursion detection.<a name="line.176"></a>
-<span class="sourceLineNo">177</span>    * Note that recursion detection introduces a small performance penalty.<a name="line.177"></a>
-<span class="sourceLineNo">178</span>    */<a name="line.178"></a>
-<span class="sourceLineNo">179</span>   public static class SimpleReadableSafe extends JsonSerializer {<a name="line.179"></a>
-<span class="sourceLineNo">180</span><a name="line.180"></a>
-<span class="sourceLineNo">181</span>      /**<a name="line.181"></a>
-<span class="sourceLineNo">182</span>       * Constructor.<a name="line.182"></a>
-<span class="sourceLineNo">183</span>       *<a name="line.183"></a>
-<span class="sourceLineNo">184</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.184"></a>
-<span class="sourceLineNo">185</span>       */<a name="line.185"></a>
-<span class="sourceLineNo">186</span>      public SimpleReadableSafe(PropertyStore propertyStore) {<a name="line.186"></a>
-<span class="sourceLineNo">187</span>         super(<a name="line.187"></a>
-<span class="sourceLineNo">188</span>            propertyStore.copy()<a name="line.188"></a>
-<span class="sourceLineNo">189</span>            .append(JSON_simpleMode, true)<a name="line.189"></a>
-<span class="sourceLineNo">190</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.190"></a>
-<span class="sourceLineNo">191</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.191"></a>
-<span class="sourceLineNo">192</span>            .append(SERIALIZER_detectRecursions, true)<a name="line.192"></a>
-<span class="sourceLineNo">193</span>         );<a name="line.193"></a>
-<span class="sourceLineNo">194</span>      }<a name="line.194"></a>
-<span class="sourceLineNo">195</span>   }<a name="line.195"></a>
+<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
+<span class="sourceLineNo">021</span><a name="line.21"></a>
+<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * Serializes POJO models to JSON.<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;application/json, text/json&lt;/code&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * &lt;p&gt;<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;application/json&lt;/code&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> *<a name="line.30"></a>
+<span class="sourceLineNo">031</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.31"></a>
+<span class="sourceLineNo">032</span> *<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * The conversion is as follows...<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * &lt;ul class='spaced-list'&gt;<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *    &lt;li&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *       Maps (e.g. {@link HashMap HashMaps}, {@link TreeMap TreeMaps}) are converted to JSON objects.<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;<a name="line.37"></a>
+<span class="sourceLineNo">038</span> *       Collections (e.g. {@link HashSet HashSets}, {@link LinkedList LinkedLists}) and Java arrays are converted to<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *       JSON arrays.<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *    &lt;li&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span> *       {@link String Strings} are converted to JSON strings.<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *    &lt;li&gt;<a name="line.42"></a>
+<span class="sourceLineNo">043</span> *       {@link Number Numbers} (e.g. {@link Integer}, {@link Long}, {@link Double}) are converted to JSON numbers.<a name="line.43"></a>
+<span class="sourceLineNo">044</span> *    &lt;li&gt;<a name="line.44"></a>
+<span class="sourceLineNo">045</span> *       {@link Boolean Booleans} are converted to JSON booleans.<a name="line.45"></a>
+<span class="sourceLineNo">046</span> *    &lt;li&gt;<a name="line.46"></a>
+<span class="sourceLineNo">047</span> *       {@code nulls} are converted to JSON nulls.<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *    &lt;li&gt;<a name="line.48"></a>
+<span class="sourceLineNo">049</span> *       {@code arrays} are converted to JSON arrays.<a name="line.49"></a>
+<span class="sourceLineNo">050</span> *    &lt;li&gt;<a name="line.50"></a>
+<span class="sourceLineNo">051</span> *       {@code beans} are converted to JSON objects.<a name="line.51"></a>
+<span class="sourceLineNo">052</span> * &lt;/ul&gt;<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *<a name="line.53"></a>
+<span class="sourceLineNo">054</span> * &lt;p&gt;<a name="line.54"></a>
+<span class="sourceLineNo">055</span> * The types above are considered "JSON-primitive" object types.<a name="line.55"></a>
+<span class="sourceLineNo">056</span> * Any non-JSON-primitive object types are transformed into JSON-primitive object types through<a name="line.56"></a>
+<span class="sourceLineNo">057</span> * {@link org.apache.juneau.transform.PojoSwap PojoSwaps} associated through the<a name="line.57"></a>
+<span class="sourceLineNo">058</span> * {@link CoreObjectBuilder#pojoSwaps(Class...)} method.<a name="line.58"></a>
+<span class="sourceLineNo">059</span> * Several default transforms are provided for transforming Dates, Enums, Iterators, etc...<a name="line.59"></a>
+<span class="sourceLineNo">060</span> *<a name="line.60"></a>
+<span class="sourceLineNo">061</span> * &lt;p&gt;<a name="line.61"></a>
+<span class="sourceLineNo">062</span> * This serializer provides several serialization options.<a name="line.62"></a>
+<span class="sourceLineNo">063</span> * Typically, one of the predefined DEFAULT serializers will be sufficient.<a name="line.63"></a>
+<span class="sourceLineNo">064</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.64"></a>
+<span class="sourceLineNo">065</span> *<a name="line.65"></a>
+<span class="sourceLineNo">066</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.66"></a>
+<span class="sourceLineNo">067</span> *<a name="line.67"></a>
+<span class="sourceLineNo">068</span> * This class has the following properties associated with it:<a name="line.68"></a>
+<span class="sourceLineNo">069</span> * &lt;ul&gt;<a name="line.69"></a>
+<span class="sourceLineNo">070</span> *    &lt;li&gt;{@link JsonSerializerContext}<a name="line.70"></a>
+<span class="sourceLineNo">071</span> *    &lt;li&gt;{@link SerializerContext}<a name="line.71"></a>
+<span class="sourceLineNo">072</span> *    &lt;li&gt;{@link BeanContext}<a name="line.72"></a>
+<span class="sourceLineNo">073</span> * &lt;/ul&gt;<a name="line.73"></a>
+<span class="sourceLineNo">074</span> *<a name="line.74"></a>
+<span class="sourceLineNo">075</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.75"></a>
+<span class="sourceLineNo">076</span> *<a name="line.76"></a>
+<span class="sourceLineNo">077</span> * The following direct subclasses are provided for convenience:<a name="line.77"></a>
+<span class="sourceLineNo">078</span> * &lt;ul class='spaced-list'&gt;<a name="line.78"></a>
+<span class="sourceLineNo">079</span> *    &lt;li&gt;<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *       {@link Simple} - Default serializer, single quotes, simple mode.<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *    &lt;li&gt;<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *       {@link SimpleReadable} - Default serializer, single quotes, simple mode, with whitespace.<a name="line.82"></a>
+<span class="sourceLineNo">083</span> * &lt;/ul&gt;<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *<a name="line.84"></a>
+<span class="sourceLineNo">085</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.85"></a>
+<span class="sourceLineNo">086</span> * &lt;p class='bcode'&gt;<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *    &lt;jc&gt;// Use one of the default serializers to serialize a POJO&lt;/jc&gt;<a name="line.87"></a>
+<span class="sourceLineNo">088</span> *    String json = JsonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(someObject);<a name="line.88"></a>
+<span class="sourceLineNo">089</span> *<a name="line.89"></a>
+<span class="sourceLineNo">090</span> *    &lt;jc&gt;// Create a custom serializer for lax syntax using single quote characters&lt;/jc&gt;<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *    JsonSerializer serializer = &lt;jk&gt;new&lt;/jk&gt; JsonSerializerBuilder().simple().sq().build();<a name="line.91"></a>
+<span class="sourceLineNo">092</span> *<a name="line.92"></a>
+<span class="sourceLineNo">093</span> *    &lt;jc&gt;// Clone an existing serializer and modify it to use single-quotes&lt;/jc&gt;<a name="line.93"></a>
+<span class="sourceLineNo">094</span> *    JsonSerializer serializer = JsonSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.builder().sq().build();<a name="line.94"></a>
+<span class="sourceLineNo">095</span> *<a name="line.95"></a>
+<span class="sourceLineNo">096</span> *    &lt;jc&gt;// Serialize a POJO to JSON&lt;/jc&gt;<a name="line.96"></a>
+<span class="sourceLineNo">097</span> *    String json = serializer.serialize(someObject);<a name="line.97"></a>
+<span class="sourceLineNo">098</span> * &lt;/p&gt;<a name="line.98"></a>
+<span class="sourceLineNo">099</span> */<a name="line.99"></a>
+<span class="sourceLineNo">100</span>public class JsonSerializer extends WriterSerializer {<a name="line.100"></a>
+<span class="sourceLineNo">101</span><a name="line.101"></a>
+<span class="sourceLineNo">102</span>   /** Default serializer, all default settings.*/<a name="line.102"></a>
+<span class="sourceLineNo">103</span>   public static final JsonSerializer DEFAULT = new JsonSerializer(PropertyStore.create());<a name="line.103"></a>
+<span class="sourceLineNo">104</span><a name="line.104"></a>
+<span class="sourceLineNo">105</span>   /** Default serializer, all default settings.*/<a name="line.105"></a>
+<span class="sourceLineNo">106</span>   public static final JsonSerializer DEFAULT_READABLE = new Readable(PropertyStore.create());<a name="line.106"></a>
+<span class="sourceLineNo">107</span><a name="line.107"></a>
+<span class="sourceLineNo">108</span>   /** Default serializer, single quotes, simple mode. */<a name="line.108"></a>
+<span class="sourceLineNo">109</span>   public static final JsonSerializer DEFAULT_LAX = new Simple(PropertyStore.create());<a name="line.109"></a>
+<span class="sourceLineNo">110</span><a name="line.110"></a>
+<span class="sourceLineNo">111</span>   /** Default serializer, single quotes, simple mode, with whitespace. */<a name="line.111"></a>
+<span class="sourceLineNo">112</span>   public static final JsonSerializer DEFAULT_LAX_READABLE = new SimpleReadable(PropertyStore.create());<a name="line.112"></a>
+<span class="sourceLineNo">113</span><a name="line.113"></a>
+<span class="sourceLineNo">114</span>   /**<a name="line.114"></a>
+<span class="sourceLineNo">115</span>    * Default serializer, single quotes, simple mode, with whitespace and recursion detection.<a name="line.115"></a>
+<span class="sourceLineNo">116</span>    * Note that recursion detection introduces a small performance penalty.<a name="line.116"></a>
+<span class="sourceLineNo">117</span>    */<a name="line.117"></a>
+<span class="sourceLineNo">118</span>   public static final JsonSerializer DEFAULT_LAX_READABLE_SAFE = new SimpleReadableSafe(PropertyStore.create());<a name="line.118"></a>
+<span class="sourceLineNo">119</span><a name="line.119"></a>
+<span class="sourceLineNo">120</span><a name="line.120"></a>
+<span class="sourceLineNo">121</span>   /** Default serializer, with whitespace. */<a name="line.121"></a>
+<span class="sourceLineNo">122</span>   public static class Readable extends JsonSerializer {<a name="line.122"></a>
+<span class="sourceLineNo">123</span><a name="line.123"></a>
+<span class="sourceLineNo">124</span>      /**<a name="line.124"></a>
+<span class="sourceLineNo">125</span>       * Constructor.<a name="line.125"></a>
+<span class="sourceLineNo">126</span>       *<a name="line.126"></a>
+<span class="sourceLineNo">127</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.127"></a>
+<span class="sourceLineNo">128</span>       */<a name="line.128"></a>
+<span class="sourceLineNo">129</span>      public Readable(PropertyStore propertyStore) {<a name="line.129"></a>
+<span class="sourceLineNo">130</span>         super(<a name="line.130"></a>
+<span class="sourceLineNo">131</span>            propertyStore.copy()<a name="line.131"></a>
+<span class="sourceLineNo">132</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.132"></a>
+<span class="sourceLineNo">133</span>         );<a name="line.133"></a>
+<span class="sourceLineNo">134</span>      }<a name="line.134"></a>
+<span class="sourceLineNo">135</span>   }<a name="line.135"></a>
+<span class="sourceLineNo">136</span><a name="line.136"></a>
+<span class="sourceLineNo">137</span>   /** Default serializer, single quotes, simple mode. */<a name="line.137"></a>
+<span class="sourceLineNo">138</span>   public static class Simple extends JsonSerializer {<a name="line.138"></a>
+<span class="sourceLineNo">139</span><a name="line.139"></a>
+<span class="sourceLineNo">140</span>      /**<a name="line.140"></a>
+<span class="sourceLineNo">141</span>       * Constructor.<a name="line.141"></a>
+<span class="sourceLineNo">142</span>       *<a name="line.142"></a>
+<span class="sourceLineNo">143</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.143"></a>
+<span class="sourceLineNo">144</span>       */<a name="line.144"></a>
+<span class="sourceLineNo">145</span>      public Simple(PropertyStore propertyStore) {<a name="line.145"></a>
+<span class="sourceLineNo">146</span>         super(<a name="line.146"></a>
+<span class="sourceLineNo">147</span>            propertyStore.copy()<a name="line.147"></a>
+<span class="sourceLineNo">148</span>               .append(JSON_simpleMode, true)<a name="line.148"></a>
+<span class="sourceLineNo">149</span>               .append(SERIALIZER_quoteChar, '\''),<a name="line.149"></a>
+<span class="sourceLineNo">150</span>            "application/json",<a name="line.150"></a>
+<span class="sourceLineNo">151</span>            "application/json+simple", "text/json+simple"<a name="line.151"></a>
+<span class="sourceLineNo">152</span>         );<a name="line.152"></a>
+<span class="sourceLineNo">153</span>      }<a name="line.153"></a>
+<span class="sourceLineNo">154</span>   }<a name="line.154"></a>
+<span class="sourceLineNo">155</span><a name="line.155"></a>
+<span class="sourceLineNo">156</span>   /** Default serializer, single quotes, simple mode, with whitespace. */<a name="line.156"></a>
+<span class="sourceLineNo">157</span>   public static class SimpleReadable extends JsonSerializer {<a name="line.157"></a>
+<span class="sourceLineNo">158</span><a name="line.158"></a>
+<span class="sourceLineNo">159</span>      /**<a name="line.159"></a>
+<span class="sourceLineNo">160</span>       * Constructor.<a name="line.160"></a>
+<span class="sourceLineNo">161</span>       *<a name="line.161"></a>
+<span class="sourceLineNo">162</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.162"></a>
+<span class="sourceLineNo">163</span>       */<a name="line.163"></a>
+<span class="sourceLineNo">164</span>      public SimpleReadable(PropertyStore propertyStore) {<a name="line.164"></a>
+<span class="sourceLineNo">165</span>         super(<a name="line.165"></a>
+<span class="sourceLineNo">166</span>            propertyStore.copy()<a name="line.166"></a>
+<span class="sourceLineNo">167</span>            .append(JSON_simpleMode, true)<a name="line.167"></a>
+<span class="sourceLineNo">168</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.168"></a>
+<span class="sourceLineNo">169</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.169"></a>
+<span class="sourceLineNo">170</span>         );<a name="line.170"></a>
+<span class="sourceLineNo">171</span>      }<a name="line.171"></a>
+<span class="sourceLineNo">172</span>   }<a name="line.172"></a>
+<span class="sourceLineNo">173</span><a name="line.173"></a>
+<span class="sourceLineNo">174</span>   /**<a name="line.174"></a>
+<span class="sourceLineNo">175</span>    * Default serializer, single quotes, simple mode, with whitespace and recursion detection.<a name="line.175"></a>
+<span class="sourceLineNo">176</span>    * Note that recursion detection introduces a small performance penalty.<a name="line.176"></a>
+<span class="sourceLineNo">177</span>    */<a name="line.177"></a>
+<span class="sourceLineNo">178</span>   public static class SimpleReadableSafe extends JsonSerializer {<a name="line.178"></a>
+<span class="sourceLineNo">179</span><a name="line.179"></a>
+<span class="sourceLineNo">180</span>      /**<a name="line.180"></a>
+<span class="sourceLineNo">181</span>       * Constructor.<a name="line.181"></a>
+<span class="sourceLineNo">182</span>       *<a name="line.182"></a>
+<span class="sourceLineNo">183</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.183"></a>
+<span class="sourceLineNo">184</span>       */<a name="line.184"></a>
+<span class="sourceLineNo">185</span>      public SimpleReadableSafe(PropertyStore propertyStore) {<a name="line.185"></a>
+<span class="sourceLineNo">186</span>         super(<a name="line.186"></a>
+<span class="sourceLineNo">187</span>            propertyStore.copy()<a name="line.187"></a>
+<span class="sourceLineNo">188</span>            .append(JSON_simpleMode, true)<a name="line.188"></a>
+<span class="sourceLineNo">189</span>            .append(SERIALIZER_quoteChar, '\'')<a name="line.189"></a>
+<span class="sourceLineNo">190</span>            .append(SERIALIZER_useWhitespace, true)<a name="line.190"></a>
+<span class="sourceLineNo">191</span>            .append(SERIALIZER_detectRecursions, true)<a name="line.191"></a>
+<span class="sourceLineNo">192</span>         );<a name="line.192"></a>
+<span class="sourceLineNo">193</span>      }<a name="line.193"></a>
+<span class="sourceLineNo">194</span>   }<a name="line.194"></a>
+<span class="sourceLineNo">195</span><a name="line.195"></a>
 <span class="sourceLineNo">196</span><a name="line.196"></a>
-<span class="sourceLineNo">197</span><a name="line.197"></a>
-<span class="sourceLineNo">198</span>   final JsonSerializerContext ctx;<a name="line.198"></a>
-<span class="sourceLineNo">199</span>   private volatile JsonSchemaSerializer schemaSerializer;<a name="line.199"></a>
-<span class="sourceLineNo">200</span><a name="line.200"></a>
-<span class="sourceLineNo">201</span>   /**<a name="line.201"></a>
-<span class="sourceLineNo">202</span>    * Constructor.<a name="line.202"></a>
-<span class="sourceLineNo">203</span>    *<a name="line.203"></a>
-<span class="sourceLineNo">204</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.204"></a>
+<span class="sourceLineNo">197</span>   final JsonSerializerContext ctx;<a name="line.197"></a>
+<span class="sourceLineNo">198</span>   private volatile JsonSchemaSerializer schemaSerializer;<a name="line.198"></a>
+<span class="sourceLineNo">199</span><a name="line.199"></a>
+<span class="sourceLineNo">200</span>   /**<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    * Constructor.<a name="line.201"></a>
+<span class="sourceLineNo">202</span>    *<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    * @param propertyStore<a name="line.203"></a>
+<span class="sourceLineNo">204</span>    *    The property store containing all the settings for this object.<a name="line.204"></a>
 <span class="sourceLineNo">205</span>    */<a name="line.205"></a>
 <span class="sourceLineNo">206</span>   public JsonSerializer(PropertyStore propertyStore) {<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      super(propertyStore);<a name="line.207"></a>
-<span class="sourceLineNo">208</span>      this.ctx = createContext(JsonSerializerContext.class);<a name="line.208"></a>
-<span class="sourceLineNo">209</span>   }<a name="line.209"></a>
-<span class="sourceLineNo">210</span><a name="line.210"></a>
-<span class="sourceLineNo">211</span>   @Override /* CoreObject */<a name="line.211"></a>
-<span class="sourceLineNo">212</span>   public JsonSerializerBuilder builder() {<a name="line.212"></a>
-<span class="sourceLineNo">213</span>      return new JsonSerializerBuilder(propertyStore);<a name="line.213"></a>
-<span class="sourceLineNo">214</span>   }<a name="line.214"></a>
-<span class="sourceLineNo">215</span><a name="line.215"></a>
-<span class="sourceLineNo">216</span>   /**<a name="line.216"></a>
-<span class="sourceLineNo">217</span>    * Returns the schema serializer based on the settings of this serializer.<a name="line.217"></a>
-<span class="sourceLineNo">218</span>    *<a name="line.218"></a>
-<span class="sourceLineNo">219</span>    * @return The schema serializer.<a name="line.219"></a>
-<span class="sourceLineNo">220</span>    */<a name="line.220"></a>
-<span class="sourceLineNo">221</span>   public JsonSchemaSerializer getSchemaSerializer() {<a name="line.221"></a>
-<span class="sourceLineNo">222</span>      if (schemaSerializer == null)<a name="line.222"></a>
-<span class="sourceLineNo">223</span>         schemaSerializer = new JsonSchemaSerializer(propertyStore);<a name="line.223"></a>
-<span class="sourceLineNo">224</span>      return schemaSerializer;<a name="line.224"></a>
-<span class="sourceLineNo">225</span>   }<a name="line.225"></a>
-<span class="sourceLineNo">226</span><a name="line.226"></a>
-<span class="sourceLineNo">227</span>   //--------------------------------------------------------------------------------<a name="line.227"></a>
-<span class="sourceLineNo">228</span>   // Entry point methods<a name="line.228"></a>
-<span class="sourceLineNo">229</span>   //--------------------------------------------------------------------------------<a name="line.229"></a>
-<span class="sourceLineNo">230</span><a name="line.230"></a>
-<span class="sourceLineNo">231</span>   @Override /* Serializer */<a name="line.231"></a>
-<span class="sourceLineNo">232</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.232"></a>
-<span class="sourceLineNo">233</span>      return new JsonSerializerSession(ctx, args);<a name="line.233"></a>
+<span class="sourceLineNo">207</span>      this(propertyStore, "application/json", "application/json", "text/json");<a name="line.207"></a>
+<span class="sourceLineNo">208</span>   }<a name="line.208"></a>
+<span class="sourceLineNo">209</span><a name="line.209"></a>
+<span class="sourceLineNo">210</span>   /**<a name="line.210"></a>
+<span class="sourceLineNo">211</span>    * Constructor.<a name="line.211"></a>
+<span class="sourceLineNo">212</span>    *<a name="line.212"></a>
+<span class="sourceLineNo">213</span>    * @param propertyStore<a name="line.213"></a>
+<span class="sourceLineNo">214</span>    *    The property store containing all the settings for this object.<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    * @param produces<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    *    The media type that this serializer produces.<a name="line.216"></a>
+<span class="sourceLineNo">217</span>    * @param accept<a name="line.217"></a>
+<span class="sourceLineNo">218</span>    *    The accept media types that the serializer can handle.<a name="line.218"></a>
+<span class="sourceLineNo">219</span>    *    &lt;p&gt;<a name="line.219"></a>
+<span class="sourceLineNo">220</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.220"></a>
+<span class="sourceLineNo">221</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.221"></a>
+<span class="sourceLineNo">222</span>    *    &lt;p&gt;<a name="line.222"></a>
+<span class="sourceLineNo">223</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.223"></a>
+<span class="sourceLineNo">224</span>    *    &lt;p&gt;<a name="line.224"></a>
+<span class="sourceLineNo">225</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.225"></a>
+<span class="sourceLineNo">226</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.226"></a>
+<span class="sourceLineNo">227</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.227"></a>
+<span class="sourceLineNo">228</span>    *    &lt;br&gt;...or...<a name="line.228"></a>
+<span class="sourceLineNo">229</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.229"></a>
+<span class="sourceLineNo">230</span>    */<a name="line.230"></a>
+<span class="sourceLineNo">231</span>   public JsonSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.231"></a>
+<span class="sourceLineNo">232</span>      super(propertyStore, produces, accept);<a name="line.232"></a>
+<span class="sourceLineNo">233</span>      this.ctx = createContext(JsonSerializerContext.class);<a name="line.233"></a>
 <span class="sourceLineNo">234</span>   }<a name="line.234"></a>
-<span class="sourceLineNo">235</span>}<a name="line.235"></a>
+<span class="sourceLineNo">235</span><a name="line.235"></a>
+<span class="sourceLineNo">236</span>   @Override /* CoreObject */<a name="line.236"></a>
+<span class="sourceLineNo">237</span>   public JsonSerializerBuilder builder() {<a name="line.237"></a>
+<span class="sourceLineNo">238</span>      return new JsonSerializerBuilder(propertyStore);<a name="line.238"></a>
+<span class="sourceLineNo">239</span>   }<a name="line.239"></a>
+<span class="sourceLineNo">240</span><a name="line.240"></a>
+<span class="sourceLineNo">241</span>   /**<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    * Returns the schema serializer based on the settings of this serializer.<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    *<a name="line.243"></a>
+<span class="sourceLineNo">244</span>    * @return The schema serializer.<a name="line.244"></a>
+<span class="sourceLineNo">245</span>    */<a name="line.245"></a>
+<span class="sourceLineNo">246</span>   public JsonSchemaSerializer getSchemaSerializer() {<a name="line.246"></a>
+<span class="sourceLineNo">247</span>      if (schemaSerializer == null)<a name="line.247"></a>
+<span class="sourceLineNo">248</span>         schemaSerializer = new JsonSchemaSerializer(propertyStore);<a name="line.248"></a>
+<span class="sourceLineNo">249</span>      return schemaSerializer;<a name="line.249"></a>
+<span class="sourceLineNo">250</span>   }<a name="line.250"></a>
+<span class="sourceLineNo">251</span><a name="line.251"></a>
+<span class="sourceLineNo">252</span>   //--------------------------------------------------------------------------------<a name="line.252"></a>
+<span class="sourceLineNo">253</span>   // Entry point methods<a name="line.253"></a>
+<span class="sourceLineNo">254</span>   //--------------------------------------------------------------------------------<a name="line.254"></a>
+<span class="sourceLineNo">255</span><a name="line.255"></a>
+<span class="sourceLineNo">256</span>   @Override /* Serializer */<a name="line.256"></a>
+<span class="sourceLineNo">257</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.257"></a>
+<span class="sourceLineNo">258</span>      return new JsonSerializerSession(ctx, args);<a name="line.258"></a>
+<span class="sourceLineNo">259</span>   }<a name="line.259"></a>
+<span class="sourceLineNo">260</span>}<a name="line.260"></a>
 
 
 



[04/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.NsSqReadable.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.NsSqReadable.html b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.NsSqReadable.html
index 957e688..1f13575 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.NsSqReadable.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.NsSqReadable.html
@@ -24,235 +24,258 @@
 <span class="sourceLineNo">016</span>import static org.apache.juneau.xml.XmlSerializerContext.*;<a name="line.16"></a>
 <span class="sourceLineNo">017</span><a name="line.17"></a>
 <span class="sourceLineNo">018</span>import org.apache.juneau.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.annotation.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.json.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span>import org.apache.juneau.serializer.*;<a name="line.21"></a>
-<span class="sourceLineNo">022</span><a name="line.22"></a>
-<span class="sourceLineNo">023</span>/**<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * Serializes POJO models to XML.<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * &lt;p&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * See the {@link JsonSerializer} class for details on how Java models map to JSON.<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *<a name="line.36"></a>
-<span class="sourceLineNo">037</span> * &lt;p&gt;<a name="line.37"></a>
-<span class="sourceLineNo">038</span> * For example, the following JSON...<a name="line.38"></a>
-<span class="sourceLineNo">039</span> * &lt;p class='bcode'&gt;<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *    {<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *       name:&lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.41"></a>
-<span class="sourceLineNo">042</span> *       address: {<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *          streetAddress: &lt;js&gt;'21 2nd Street'&lt;/js&gt;,<a name="line.43"></a>
-<span class="sourceLineNo">044</span> *          city: &lt;js&gt;'New York'&lt;/js&gt;,<a name="line.44"></a>
-<span class="sourceLineNo">045</span> *          state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.45"></a>
-<span class="sourceLineNo">046</span> *          postalCode: &lt;js&gt;10021&lt;/js&gt;<a name="line.46"></a>
-<span class="sourceLineNo">047</span> *       },<a name="line.47"></a>
-<span class="sourceLineNo">048</span> *       phoneNumbers: [<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *          &lt;js&gt;'212 555-1111'&lt;/js&gt;,<a name="line.49"></a>
-<span class="sourceLineNo">050</span> *          &lt;js&gt;'212 555-2222'&lt;/js&gt;<a name="line.50"></a>
-<span class="sourceLineNo">051</span> *       ],<a name="line.51"></a>
-<span class="sourceLineNo">052</span> *       additionalInfo: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.52"></a>
-<span class="sourceLineNo">053</span> *       remote: &lt;jk&gt;false&lt;/jk&gt;,<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *       height: &lt;js&gt;62.4&lt;/js&gt;,<a name="line.54"></a>
-<span class="sourceLineNo">055</span> *       &lt;js&gt;'fico score'&lt;/js&gt;:  &lt;js&gt;' &amp;gt; 640'&lt;/js&gt;<a name="line.55"></a>
-<span class="sourceLineNo">056</span> *    }<a name="line.56"></a>
-<span class="sourceLineNo">057</span> * &lt;p&gt;<a name="line.57"></a>
-<span class="sourceLineNo">058</span> *    ...maps to the following XML using the default serializer...<a name="line.58"></a>
-<span class="sourceLineNo">059</span> * &lt;p class='bcode'&gt;<a name="line.59"></a>
-<span class="sourceLineNo">060</span> *    &lt;xt&gt;&amp;lt;object&amp;gt;&lt;/xt&gt;<a name="line.60"></a>
-<span class="sourceLineNo">061</span> *       &lt;xt&gt;&amp;lt;name&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.61"></a>
-<span class="sourceLineNo">062</span> *       &lt;xt&gt;&amp;lt;address&amp;gt;&lt;/xt&gt;<a name="line.62"></a>
-<span class="sourceLineNo">063</span> *          &lt;xt&gt;&amp;lt;streetAddress&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.63"></a>
-<span class="sourceLineNo">064</span> *          &lt;xt&gt;&amp;lt;city&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.64"></a>
-<span class="sourceLineNo">065</span> *          &lt;xt&gt;&amp;lt;state&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.65"></a>
-<span class="sourceLineNo">066</span> *          &lt;xt&gt;&amp;lt;postalCode&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.66"></a>
-<span class="sourceLineNo">067</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.67"></a>
-<span class="sourceLineNo">068</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.68"></a>
-<span class="sourceLineNo">069</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.69"></a>
-<span class="sourceLineNo">070</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.70"></a>
-<span class="sourceLineNo">071</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.71"></a>
-<span class="sourceLineNo">072</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.72"></a>
-<span class="sourceLineNo">073</span> *       &lt;xt&gt;&amp;lt;remote&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.73"></a>
-<span class="sourceLineNo">074</span> *       &lt;xt&gt;&amp;lt;height&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.74"></a>
-<span class="sourceLineNo">075</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.75"></a>
-<span class="sourceLineNo">076</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.76"></a>
-<span class="sourceLineNo">077</span> *<a name="line.77"></a>
-<span class="sourceLineNo">078</span> * &lt;p&gt;<a name="line.78"></a>
-<span class="sourceLineNo">079</span> * An additional "add-json-properties" mode is also provided to prevent loss of JSON data types...<a name="line.79"></a>
-<span class="sourceLineNo">080</span> * &lt;p class='bcode'&gt;<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *       &lt;xt&gt;&amp;lt;name&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *       &lt;xt&gt;&amp;lt;address&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'object'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *          &lt;xt&gt;&amp;lt;streetAddress&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.83"></a>
-<span class="sourceLineNo">084</span> *          &lt;xt&gt;&amp;lt;city&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *          &lt;xt&gt;&amp;lt;state&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.85"></a>
-<span class="sourceLineNo">086</span> *          &lt;xt&gt;&amp;lt;postalCode&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.86"></a>
-<span class="sourceLineNo">087</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'array'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *       &lt;xt&gt;&amp;lt;remote&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'boolean'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.93"></a>
-<span class="sourceLineNo">094</span> *       &lt;xt&gt;&amp;lt;height&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.95"></a>
-<span class="sourceLineNo">096</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.96"></a>
-<span class="sourceLineNo">097</span> * &lt;/p&gt;<a name="line.97"></a>
-<span class="sourceLineNo">098</span> *<a name="line.98"></a>
-<span class="sourceLineNo">099</span> * &lt;p&gt;<a name="line.99"></a>
-<span class="sourceLineNo">100</span> * This serializer provides several serialization options.<a name="line.100"></a>
-<span class="sourceLineNo">101</span> * Typically, one of the predefined &lt;jsf&gt;DEFAULT&lt;/jsf&gt; serializers will be sufficient.<a name="line.101"></a>
-<span class="sourceLineNo">102</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.102"></a>
-<span class="sourceLineNo">103</span> *<a name="line.103"></a>
-<span class="sourceLineNo">104</span> * &lt;p&gt;<a name="line.104"></a>
-<span class="sourceLineNo">105</span> * If an attribute name contains any non-valid XML element characters, they will be escaped using standard<a name="line.105"></a>
-<span class="sourceLineNo">106</span> * {@code _x####_} notation.<a name="line.106"></a>
-<span class="sourceLineNo">107</span> *<a name="line.107"></a>
-<span class="sourceLineNo">108</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.108"></a>
-<span class="sourceLineNo">109</span> *<a name="line.109"></a>
-<span class="sourceLineNo">110</span> * This class has the following properties associated with it:<a name="line.110"></a>
-<span class="sourceLineNo">111</span> * &lt;ul&gt;<a name="line.111"></a>
-<span class="sourceLineNo">112</span> *    &lt;li&gt;{@link XmlSerializerContext}<a name="line.112"></a>
-<span class="sourceLineNo">113</span> *    &lt;li&gt;{@link BeanContext}<a name="line.113"></a>
-<span class="sourceLineNo">114</span> * &lt;/ul&gt;<a name="line.114"></a>
-<span class="sourceLineNo">115</span> *<a name="line.115"></a>
-<span class="sourceLineNo">116</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.116"></a>
-<span class="sourceLineNo">117</span> *<a name="line.117"></a>
-<span class="sourceLineNo">118</span> * The following direct subclasses are provided for convenience:<a name="line.118"></a>
-<span class="sourceLineNo">119</span> * &lt;ul&gt;<a name="line.119"></a>
-<span class="sourceLineNo">120</span> *    &lt;li&gt;{@link Sq} - Default serializer, single quotes.<a name="line.120"></a>
-<span class="sourceLineNo">121</span> *    &lt;li&gt;{@link SqReadable} - Default serializer, single quotes, whitespace added.<a name="line.121"></a>
-<span class="sourceLineNo">122</span> * &lt;/ul&gt;<a name="line.122"></a>
-<span class="sourceLineNo">123</span> */<a name="line.123"></a>
-<span class="sourceLineNo">124</span>@Produces("text/xml")<a name="line.124"></a>
-<span class="sourceLineNo">125</span>public class XmlSerializer extends WriterSerializer {<a name="line.125"></a>
-<span class="sourceLineNo">126</span><a name="line.126"></a>
-<span class="sourceLineNo">127</span>   /** Default serializer without namespaces. */<a name="line.127"></a>
-<span class="sourceLineNo">128</span>   public static final XmlSerializer DEFAULT = new XmlSerializer(PropertyStore.create());<a name="line.128"></a>
-<span class="sourceLineNo">129</span><a name="line.129"></a>
-<span class="sourceLineNo">130</span>   /** Default serializer without namespaces, with single quotes. */<a name="line.130"></a>
-<span class="sourceLineNo">131</span>   public static final XmlSerializer DEFAULT_SQ = new Sq(PropertyStore.create());<a name="line.131"></a>
-<span class="sourceLineNo">132</span><a name="line.132"></a>
-<span class="sourceLineNo">133</span>   /** Default serializer without namespaces, with single quotes, whitespace added. */<a name="line.133"></a>
-<span class="sourceLineNo">134</span>   public static final XmlSerializer DEFAULT_SQ_READABLE = new SqReadable(PropertyStore.create());<a name="line.134"></a>
-<span class="sourceLineNo">135</span><a name="line.135"></a>
-<span class="sourceLineNo">136</span>   /** Default serializer, all default settings. */<a name="line.136"></a>
-<span class="sourceLineNo">137</span>   public static final XmlSerializer DEFAULT_NS = new Ns(PropertyStore.create());<a name="line.137"></a>
-<span class="sourceLineNo">138</span><a name="line.138"></a>
-<span class="sourceLineNo">139</span>   /** Default serializer, single quotes. */<a name="line.139"></a>
-<span class="sourceLineNo">140</span>   public static final XmlSerializer DEFAULT_NS_SQ = new NsSq(PropertyStore.create());<a name="line.140"></a>
-<span class="sourceLineNo">141</span><a name="line.141"></a>
-<span class="sourceLineNo">142</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.142"></a>
-<span class="sourceLineNo">143</span>   public static final XmlSerializer DEFAULT_NS_SQ_READABLE = new NsSqReadable(PropertyStore.create());<a name="line.143"></a>
-<span class="sourceLineNo">144</span><a name="line.144"></a>
-<span class="sourceLineNo">145</span><a name="line.145"></a>
-<span class="sourceLineNo">146</span>   /** Default serializer, single quotes. */<a name="line.146"></a>
-<span class="sourceLineNo">147</span>   public static class Sq extends XmlSerializer {<a name="line.147"></a>
-<span class="sourceLineNo">148</span><a name="line.148"></a>
-<span class="sourceLineNo">149</span>      /**<a name="line.149"></a>
-<span class="sourceLineNo">150</span>       * Constructor.<a name="line.150"></a>
-<span class="sourceLineNo">151</span>       *<a name="line.151"></a>
-<span class="sourceLineNo">152</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.152"></a>
-<span class="sourceLineNo">153</span>       */<a name="line.153"></a>
-<span class="sourceLineNo">154</span>      public Sq(PropertyStore propertyStore) {<a name="line.154"></a>
-<span class="sourceLineNo">155</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\''));<a name="line.155"></a>
-<span class="sourceLineNo">156</span>      }<a name="line.156"></a>
-<span class="sourceLineNo">157</span>   }<a name="line.157"></a>
-<span class="sourceLineNo">158</span><a name="line.158"></a>
-<span class="sourceLineNo">159</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.159"></a>
-<span class="sourceLineNo">160</span>   public static class SqReadable extends XmlSerializer {<a name="line.160"></a>
-<span class="sourceLineNo">161</span><a name="line.161"></a>
-<span class="sourceLineNo">162</span>      /**<a name="line.162"></a>
-<span class="sourceLineNo">163</span>       * Constructor.<a name="line.163"></a>
-<span class="sourceLineNo">164</span>       *<a name="line.164"></a>
-<span class="sourceLineNo">165</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.165"></a>
-<span class="sourceLineNo">166</span>       */<a name="line.166"></a>
-<span class="sourceLineNo">167</span>      public SqReadable(PropertyStore propertyStore) {<a name="line.167"></a>
-<span class="sourceLineNo">168</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\'').append(SERIALIZER_useWhitespace, true));<a name="line.168"></a>
-<span class="sourceLineNo">169</span>      }<a name="line.169"></a>
-<span class="sourceLineNo">170</span>   }<a name="line.170"></a>
-<span class="sourceLineNo">171</span><a name="line.171"></a>
-<span class="sourceLineNo">172</span>   /** Default serializer without namespaces. */<a name="line.172"></a>
-<span class="sourceLineNo">173</span>   @Produces(value="text/xml+simple",contentType="text/xml")<a name="line.173"></a>
-<span class="sourceLineNo">174</span>   public static class Ns extends XmlSerializer {<a name="line.174"></a>
-<span class="sourceLineNo">175</span><a name="line.175"></a>
-<span class="sourceLineNo">176</span>      /**<a name="line.176"></a>
-<span class="sourceLineNo">177</span>       * Constructor.<a name="line.177"></a>
-<span class="sourceLineNo">178</span>       *<a name="line.178"></a>
-<span class="sourceLineNo">179</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.179"></a>
-<span class="sourceLineNo">180</span>       */<a name="line.180"></a>
-<span class="sourceLineNo">181</span>      public Ns(PropertyStore propertyStore) {<a name="line.181"></a>
-<span class="sourceLineNo">182</span>         super(propertyStore.copy().append(XML_enableNamespaces, true));<a name="line.182"></a>
-<span class="sourceLineNo">183</span>      }<a name="line.183"></a>
-<span class="sourceLineNo">184</span>   }<a name="line.184"></a>
+<span class="sourceLineNo">019</span>import org.apache.juneau.json.*;<a name="line.19"></a>
+<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
+<span class="sourceLineNo">021</span><a name="line.21"></a>
+<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * Serializes POJO models to XML.<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;p&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * See the {@link JsonSerializer} class for details on how Java models map to JSON.<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *<a name="line.35"></a>
+<span class="sourceLineNo">036</span> * &lt;p&gt;<a name="line.36"></a>
+<span class="sourceLineNo">037</span> * For example, the following JSON...<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * &lt;p class='bcode'&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *    {<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *       name:&lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.40"></a>
+<span class="sourceLineNo">041</span> *       address: {<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *          streetAddress: &lt;js&gt;'21 2nd Street'&lt;/js&gt;,<a name="line.42"></a>
+<span class="sourceLineNo">043</span> *          city: &lt;js&gt;'New York'&lt;/js&gt;,<a name="line.43"></a>
+<span class="sourceLineNo">044</span> *          state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.44"></a>
+<span class="sourceLineNo">045</span> *          postalCode: &lt;js&gt;10021&lt;/js&gt;<a name="line.45"></a>
+<span class="sourceLineNo">046</span> *       },<a name="line.46"></a>
+<span class="sourceLineNo">047</span> *       phoneNumbers: [<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *          &lt;js&gt;'212 555-1111'&lt;/js&gt;,<a name="line.48"></a>
+<span class="sourceLineNo">049</span> *          &lt;js&gt;'212 555-2222'&lt;/js&gt;<a name="line.49"></a>
+<span class="sourceLineNo">050</span> *       ],<a name="line.50"></a>
+<span class="sourceLineNo">051</span> *       additionalInfo: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.51"></a>
+<span class="sourceLineNo">052</span> *       remote: &lt;jk&gt;false&lt;/jk&gt;,<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *       height: &lt;js&gt;62.4&lt;/js&gt;,<a name="line.53"></a>
+<span class="sourceLineNo">054</span> *       &lt;js&gt;'fico score'&lt;/js&gt;:  &lt;js&gt;' &amp;gt; 640'&lt;/js&gt;<a name="line.54"></a>
+<span class="sourceLineNo">055</span> *    }<a name="line.55"></a>
+<span class="sourceLineNo">056</span> * &lt;p&gt;<a name="line.56"></a>
+<span class="sourceLineNo">057</span> *    ...maps to the following XML using the default serializer...<a name="line.57"></a>
+<span class="sourceLineNo">058</span> * &lt;p class='bcode'&gt;<a name="line.58"></a>
+<span class="sourceLineNo">059</span> *    &lt;xt&gt;&amp;lt;object&amp;gt;&lt;/xt&gt;<a name="line.59"></a>
+<span class="sourceLineNo">060</span> *       &lt;xt&gt;&amp;lt;name&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.60"></a>
+<span class="sourceLineNo">061</span> *       &lt;xt&gt;&amp;lt;address&amp;gt;&lt;/xt&gt;<a name="line.61"></a>
+<span class="sourceLineNo">062</span> *          &lt;xt&gt;&amp;lt;streetAddress&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.62"></a>
+<span class="sourceLineNo">063</span> *          &lt;xt&gt;&amp;lt;city&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.63"></a>
+<span class="sourceLineNo">064</span> *          &lt;xt&gt;&amp;lt;state&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.64"></a>
+<span class="sourceLineNo">065</span> *          &lt;xt&gt;&amp;lt;postalCode&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.65"></a>
+<span class="sourceLineNo">066</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.66"></a>
+<span class="sourceLineNo">067</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.67"></a>
+<span class="sourceLineNo">068</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.68"></a>
+<span class="sourceLineNo">069</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.69"></a>
+<span class="sourceLineNo">070</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.70"></a>
+<span class="sourceLineNo">071</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.71"></a>
+<span class="sourceLineNo">072</span> *       &lt;xt&gt;&amp;lt;remote&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.72"></a>
+<span class="sourceLineNo">073</span> *       &lt;xt&gt;&amp;lt;height&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.73"></a>
+<span class="sourceLineNo">074</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.74"></a>
+<span class="sourceLineNo">075</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.75"></a>
+<span class="sourceLineNo">076</span> *<a name="line.76"></a>
+<span class="sourceLineNo">077</span> * &lt;p&gt;<a name="line.77"></a>
+<span class="sourceLineNo">078</span> * An additional "add-json-properties" mode is also provided to prevent loss of JSON data types...<a name="line.78"></a>
+<span class="sourceLineNo">079</span> * &lt;p class='bcode'&gt;<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *       &lt;xt&gt;&amp;lt;name&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *       &lt;xt&gt;&amp;lt;address&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'object'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *          &lt;xt&gt;&amp;lt;streetAddress&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.82"></a>
+<span class="sourceLineNo">083</span> *          &lt;xt&gt;&amp;lt;city&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *          &lt;xt&gt;&amp;lt;state&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.84"></a>
+<span class="sourceLineNo">085</span> *          &lt;xt&gt;&amp;lt;postalCode&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.85"></a>
+<span class="sourceLineNo">086</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'array'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.87"></a>
+<span class="sourceLineNo">088</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.88"></a>
+<span class="sourceLineNo">089</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.89"></a>
+<span class="sourceLineNo">090</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.91"></a>
+<span class="sourceLineNo">092</span> *       &lt;xt&gt;&amp;lt;remote&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'boolean'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.92"></a>
+<span class="sourceLineNo">093</span> *       &lt;xt&gt;&amp;lt;height&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.93"></a>
+<span class="sourceLineNo">094</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.94"></a>
+<span class="sourceLineNo">095</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.95"></a>
+<span class="sourceLineNo">096</span> * &lt;/p&gt;<a name="line.96"></a>
+<span class="sourceLineNo">097</span> *<a name="line.97"></a>
+<span class="sourceLineNo">098</span> * &lt;p&gt;<a name="line.98"></a>
+<span class="sourceLineNo">099</span> * This serializer provides several serialization options.<a name="line.99"></a>
+<span class="sourceLineNo">100</span> * Typically, one of the predefined &lt;jsf&gt;DEFAULT&lt;/jsf&gt; serializers will be sufficient.<a name="line.100"></a>
+<span class="sourceLineNo">101</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.101"></a>
+<span class="sourceLineNo">102</span> *<a name="line.102"></a>
+<span class="sourceLineNo">103</span> * &lt;p&gt;<a name="line.103"></a>
+<span class="sourceLineNo">104</span> * If an attribute name contains any non-valid XML element characters, they will be escaped using standard<a name="line.104"></a>
+<span class="sourceLineNo">105</span> * {@code _x####_} notation.<a name="line.105"></a>
+<span class="sourceLineNo">106</span> *<a name="line.106"></a>
+<span class="sourceLineNo">107</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.107"></a>
+<span class="sourceLineNo">108</span> *<a name="line.108"></a>
+<span class="sourceLineNo">109</span> * This class has the following properties associated with it:<a name="line.109"></a>
+<span class="sourceLineNo">110</span> * &lt;ul&gt;<a name="line.110"></a>
+<span class="sourceLineNo">111</span> *    &lt;li&gt;{@link XmlSerializerContext}<a name="line.111"></a>
+<span class="sourceLineNo">112</span> *    &lt;li&gt;{@link BeanContext}<a name="line.112"></a>
+<span class="sourceLineNo">113</span> * &lt;/ul&gt;<a name="line.113"></a>
+<span class="sourceLineNo">114</span> *<a name="line.114"></a>
+<span class="sourceLineNo">115</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.115"></a>
+<span class="sourceLineNo">116</span> *<a name="line.116"></a>
+<span class="sourceLineNo">117</span> * The following direct subclasses are provided for convenience:<a name="line.117"></a>
+<span class="sourceLineNo">118</span> * &lt;ul&gt;<a name="line.118"></a>
+<span class="sourceLineNo">119</span> *    &lt;li&gt;{@link Sq} - Default serializer, single quotes.<a name="line.119"></a>
+<span class="sourceLineNo">120</span> *    &lt;li&gt;{@link SqReadable} - Default serializer, single quotes, whitespace added.<a name="line.120"></a>
+<span class="sourceLineNo">121</span> * &lt;/ul&gt;<a name="line.121"></a>
+<span class="sourceLineNo">122</span> */<a name="line.122"></a>
+<span class="sourceLineNo">123</span>public class XmlSerializer extends WriterSerializer {<a name="line.123"></a>
+<span class="sourceLineNo">124</span><a name="line.124"></a>
+<span class="sourceLineNo">125</span>   /** Default serializer without namespaces. */<a name="line.125"></a>
+<span class="sourceLineNo">126</span>   public static final XmlSerializer DEFAULT = new XmlSerializer(PropertyStore.create());<a name="line.126"></a>
+<span class="sourceLineNo">127</span><a name="line.127"></a>
+<span class="sourceLineNo">128</span>   /** Default serializer without namespaces, with single quotes. */<a name="line.128"></a>
+<span class="sourceLineNo">129</span>   public static final XmlSerializer DEFAULT_SQ = new Sq(PropertyStore.create());<a name="line.129"></a>
+<span class="sourceLineNo">130</span><a name="line.130"></a>
+<span class="sourceLineNo">131</span>   /** Default serializer without namespaces, with single quotes, whitespace added. */<a name="line.131"></a>
+<span class="sourceLineNo">132</span>   public static final XmlSerializer DEFAULT_SQ_READABLE = new SqReadable(PropertyStore.create());<a name="line.132"></a>
+<span class="sourceLineNo">133</span><a name="line.133"></a>
+<span class="sourceLineNo">134</span>   /** Default serializer, all default settings. */<a name="line.134"></a>
+<span class="sourceLineNo">135</span>   public static final XmlSerializer DEFAULT_NS = new Ns(PropertyStore.create());<a name="line.135"></a>
+<span class="sourceLineNo">136</span><a name="line.136"></a>
+<span class="sourceLineNo">137</span>   /** Default serializer, single quotes. */<a name="line.137"></a>
+<span class="sourceLineNo">138</span>   public static final XmlSerializer DEFAULT_NS_SQ = new NsSq(PropertyStore.create());<a name="line.138"></a>
+<span class="sourceLineNo">139</span><a name="line.139"></a>
+<span class="sourceLineNo">140</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.140"></a>
+<span class="sourceLineNo">141</span>   public static final XmlSerializer DEFAULT_NS_SQ_READABLE = new NsSqReadable(PropertyStore.create());<a name="line.141"></a>
+<span class="sourceLineNo">142</span><a name="line.142"></a>
+<span class="sourceLineNo">143</span><a name="line.143"></a>
+<span class="sourceLineNo">144</span>   /** Default serializer, single quotes. */<a name="line.144"></a>
+<span class="sourceLineNo">145</span>   public static class Sq extends XmlSerializer {<a name="line.145"></a>
+<span class="sourceLineNo">146</span><a name="line.146"></a>
+<span class="sourceLineNo">147</span>      /**<a name="line.147"></a>
+<span class="sourceLineNo">148</span>       * Constructor.<a name="line.148"></a>
+<span class="sourceLineNo">149</span>       *<a name="line.149"></a>
+<span class="sourceLineNo">150</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.150"></a>
+<span class="sourceLineNo">151</span>       */<a name="line.151"></a>
+<span class="sourceLineNo">152</span>      public Sq(PropertyStore propertyStore) {<a name="line.152"></a>
+<span class="sourceLineNo">153</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\''));<a name="line.153"></a>
+<span class="sourceLineNo">154</span>      }<a name="line.154"></a>
+<span class="sourceLineNo">155</span>   }<a name="line.155"></a>
+<span class="sourceLineNo">156</span><a name="line.156"></a>
+<span class="sourceLineNo">157</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.157"></a>
+<span class="sourceLineNo">158</span>   public static class SqReadable extends XmlSerializer {<a name="line.158"></a>
+<span class="sourceLineNo">159</span><a name="line.159"></a>
+<span class="sourceLineNo">160</span>      /**<a name="line.160"></a>
+<span class="sourceLineNo">161</span>       * Constructor.<a name="line.161"></a>
+<span class="sourceLineNo">162</span>       *<a name="line.162"></a>
+<span class="sourceLineNo">163</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.163"></a>
+<span class="sourceLineNo">164</span>       */<a name="line.164"></a>
+<span class="sourceLineNo">165</span>      public SqReadable(PropertyStore propertyStore) {<a name="line.165"></a>
+<span class="sourceLineNo">166</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\'').append(SERIALIZER_useWhitespace, true));<a name="line.166"></a>
+<span class="sourceLineNo">167</span>      }<a name="line.167"></a>
+<span class="sourceLineNo">168</span>   }<a name="line.168"></a>
+<span class="sourceLineNo">169</span><a name="line.169"></a>
+<span class="sourceLineNo">170</span>   /** Default serializer without namespaces. */<a name="line.170"></a>
+<span class="sourceLineNo">171</span>   public static class Ns extends XmlSerializer {<a name="line.171"></a>
+<span class="sourceLineNo">172</span><a name="line.172"></a>
+<span class="sourceLineNo">173</span>      /**<a name="line.173"></a>
+<span class="sourceLineNo">174</span>       * Constructor.<a name="line.174"></a>
+<span class="sourceLineNo">175</span>       *<a name="line.175"></a>
+<span class="sourceLineNo">176</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.176"></a>
+<span class="sourceLineNo">177</span>       */<a name="line.177"></a>
+<span class="sourceLineNo">178</span>      public Ns(PropertyStore propertyStore) {<a name="line.178"></a>
+<span class="sourceLineNo">179</span>         super(propertyStore.copy().append(XML_enableNamespaces, true), "text/xml", "text/xml+simple");<a name="line.179"></a>
+<span class="sourceLineNo">180</span>      }<a name="line.180"></a>
+<span class="sourceLineNo">181</span>   }<a name="line.181"></a>
+<span class="sourceLineNo">182</span><a name="line.182"></a>
+<span class="sourceLineNo">183</span>   /** Default serializer without namespaces, single quotes. */<a name="line.183"></a>
+<span class="sourceLineNo">184</span>   public static class NsSq extends XmlSerializer {<a name="line.184"></a>
 <span class="sourceLineNo">185</span><a name="line.185"></a>
-<span class="sourceLineNo">186</span>   /** Default serializer without namespaces, single quotes. */<a name="line.186"></a>
-<span class="sourceLineNo">187</span>   public static class NsSq extends XmlSerializer {<a name="line.187"></a>
-<span class="sourceLineNo">188</span><a name="line.188"></a>
-<span class="sourceLineNo">189</span>      /**<a name="line.189"></a>
-<span class="sourceLineNo">190</span>       * Constructor.<a name="line.190"></a>
-<span class="sourceLineNo">191</span>       *<a name="line.191"></a>
-<span class="sourceLineNo">192</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.192"></a>
-<span class="sourceLineNo">193</span>       */<a name="line.193"></a>
-<span class="sourceLineNo">194</span>      public NsSq(PropertyStore propertyStore) {<a name="line.194"></a>
-<span class="sourceLineNo">195</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\''));<a name="line.195"></a>
-<span class="sourceLineNo">196</span>      }<a name="line.196"></a>
-<span class="sourceLineNo">197</span>   }<a name="line.197"></a>
+<span class="sourceLineNo">186</span>      /**<a name="line.186"></a>
+<span class="sourceLineNo">187</span>       * Constructor.<a name="line.187"></a>
+<span class="sourceLineNo">188</span>       *<a name="line.188"></a>
+<span class="sourceLineNo">189</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.189"></a>
+<span class="sourceLineNo">190</span>       */<a name="line.190"></a>
+<span class="sourceLineNo">191</span>      public NsSq(PropertyStore propertyStore) {<a name="line.191"></a>
+<span class="sourceLineNo">192</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\''));<a name="line.192"></a>
+<span class="sourceLineNo">193</span>      }<a name="line.193"></a>
+<span class="sourceLineNo">194</span>   }<a name="line.194"></a>
+<span class="sourceLineNo">195</span><a name="line.195"></a>
+<span class="sourceLineNo">196</span>   /** Default serializer without namespaces, single quotes, with whitespace. */<a name="line.196"></a>
+<span class="sourceLineNo">197</span>   public static class NsSqReadable extends XmlSerializer {<a name="line.197"></a>
 <span class="sourceLineNo">198</span><a name="line.198"></a>
-<span class="sourceLineNo">199</span>   /** Default serializer without namespaces, single quotes, with whitespace. */<a name="line.199"></a>
-<span class="sourceLineNo">200</span>   public static class NsSqReadable extends XmlSerializer {<a name="line.200"></a>
-<span class="sourceLineNo">201</span><a name="line.201"></a>
-<span class="sourceLineNo">202</span>      /**<a name="line.202"></a>
-<span class="sourceLineNo">203</span>       * Constructor.<a name="line.203"></a>
-<span class="sourceLineNo">204</span>       *<a name="line.204"></a>
-<span class="sourceLineNo">205</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.205"></a>
-<span class="sourceLineNo">206</span>       */<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      public NsSqReadable(PropertyStore propertyStore) {<a name="line.207"></a>
-<span class="sourceLineNo">208</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\'')<a name="line.208"></a>
-<span class="sourceLineNo">209</span>            .append(SERIALIZER_useWhitespace, true));<a name="line.209"></a>
-<span class="sourceLineNo">210</span>      }<a name="line.210"></a>
-<span class="sourceLineNo">211</span>   }<a name="line.211"></a>
-<span class="sourceLineNo">212</span><a name="line.212"></a>
+<span class="sourceLineNo">199</span>      /**<a name="line.199"></a>
+<span class="sourceLineNo">200</span>       * Constructor.<a name="line.200"></a>
+<span class="sourceLineNo">201</span>       *<a name="line.201"></a>
+<span class="sourceLineNo">202</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.202"></a>
+<span class="sourceLineNo">203</span>       */<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      public NsSqReadable(PropertyStore propertyStore) {<a name="line.204"></a>
+<span class="sourceLineNo">205</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\'')<a name="line.205"></a>
+<span class="sourceLineNo">206</span>            .append(SERIALIZER_useWhitespace, true));<a name="line.206"></a>
+<span class="sourceLineNo">207</span>      }<a name="line.207"></a>
+<span class="sourceLineNo">208</span>   }<a name="line.208"></a>
+<span class="sourceLineNo">209</span><a name="line.209"></a>
+<span class="sourceLineNo">210</span><a name="line.210"></a>
+<span class="sourceLineNo">211</span>   final XmlSerializerContext ctx;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>   private volatile XmlSchemaSerializer schemaSerializer;<a name="line.212"></a>
 <span class="sourceLineNo">213</span><a name="line.213"></a>
-<span class="sourceLineNo">214</span>   final XmlSerializerContext ctx;<a name="line.214"></a>
-<span class="sourceLineNo">215</span>   private volatile XmlSchemaSerializer schemaSerializer;<a name="line.215"></a>
-<span class="sourceLineNo">216</span><a name="line.216"></a>
-<span class="sourceLineNo">217</span>   /**<a name="line.217"></a>
-<span class="sourceLineNo">218</span>    * Constructor.<a name="line.218"></a>
-<span class="sourceLineNo">219</span>    *<a name="line.219"></a>
-<span class="sourceLineNo">220</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.220"></a>
-<span class="sourceLineNo">221</span>    */<a name="line.221"></a>
-<span class="sourceLineNo">222</span>   public XmlSerializer(PropertyStore propertyStore) {<a name="line.222"></a>
-<span class="sourceLineNo">223</span>      super(propertyStore);<a name="line.223"></a>
-<span class="sourceLineNo">224</span>      this.ctx = createContext(XmlSerializerContext.class);<a name="line.224"></a>
-<span class="sourceLineNo">225</span>   }<a name="line.225"></a>
-<span class="sourceLineNo">226</span><a name="line.226"></a>
-<span class="sourceLineNo">227</span>   @Override /* CoreObject */<a name="line.227"></a>
-<span class="sourceLineNo">228</span>   public XmlSerializerBuilder builder() {<a name="line.228"></a>
-<span class="sourceLineNo">229</span>      return new XmlSerializerBuilder(propertyStore);<a name="line.229"></a>
-<span class="sourceLineNo">230</span>   }<a name="line.230"></a>
-<span class="sourceLineNo">231</span><a name="line.231"></a>
-<span class="sourceLineNo">232</span><a name="line.232"></a>
-<span class="sourceLineNo">233</span>   /**<a name="line.233"></a>
-<span class="sourceLineNo">234</span>    * Returns the schema serializer based on the settings of this serializer.<a name="line.234"></a>
-<span class="sourceLineNo">235</span>    * @return The schema serializer.<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    */<a name="line.236"></a>
-<span class="sourceLineNo">237</span>   public XmlSerializer getSchemaSerializer() {<a name="line.237"></a>
-<span class="sourceLineNo">238</span>      if (schemaSerializer == null)<a name="line.238"></a>
-<span class="sourceLineNo">239</span>         schemaSerializer = new XmlSchemaSerializer(propertyStore);<a name="line.239"></a>
-<span class="sourceLineNo">240</span>      return schemaSerializer;<a name="line.240"></a>
-<span class="sourceLineNo">241</span>   }<a name="line.241"></a>
-<span class="sourceLineNo">242</span><a name="line.242"></a>
-<span class="sourceLineNo">243</span>   @Override /* Serializer */<a name="line.243"></a>
-<span class="sourceLineNo">244</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.244"></a>
-<span class="sourceLineNo">245</span>      return new XmlSerializerSession(ctx, args);<a name="line.245"></a>
-<span class="sourceLineNo">246</span>   }<a name="line.246"></a>
-<span class="sourceLineNo">247</span>}<a name="line.247"></a>
+<span class="sourceLineNo">214</span>   /**<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    * Constructor.<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    *<a name="line.216"></a>
+<span class="sourceLineNo">217</span>    * @param propertyStore<a name="line.217"></a>
+<span class="sourceLineNo">218</span>    *    The property store containing all the settings for this object.<a name="line.218"></a>
+<span class="sourceLineNo">219</span>    */<a name="line.219"></a>
+<span class="sourceLineNo">220</span>   public XmlSerializer(PropertyStore propertyStore) {<a name="line.220"></a>
+<span class="sourceLineNo">221</span>      this(propertyStore, "text/xml");<a name="line.221"></a>
+<span class="sourceLineNo">222</span>   }<a name="line.222"></a>
+<span class="sourceLineNo">223</span><a name="line.223"></a>
+<span class="sourceLineNo">224</span>   /**<a name="line.224"></a>
+<span class="sourceLineNo">225</span>    * Constructor.<a name="line.225"></a>
+<span class="sourceLineNo">226</span>    *<a name="line.226"></a>
+<span class="sourceLineNo">227</span>    * @param propertyStore<a name="line.227"></a>
+<span class="sourceLineNo">228</span>    *    The property store containing all the settings for this object.<a name="line.228"></a>
+<span class="sourceLineNo">229</span>    * @param produces<a name="line.229"></a>
+<span class="sourceLineNo">230</span>    *    The media type that this serializer produces.<a name="line.230"></a>
+<span class="sourceLineNo">231</span>    * @param accept<a name="line.231"></a>
+<span class="sourceLineNo">232</span>    *    The accept media types that the serializer can handle.<a name="line.232"></a>
+<span class="sourceLineNo">233</span>    *    &lt;p&gt;<a name="line.233"></a>
+<span class="sourceLineNo">234</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.235"></a>
+<span class="sourceLineNo">236</span>    *    &lt;p&gt;<a name="line.236"></a>
+<span class="sourceLineNo">237</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.237"></a>
+<span class="sourceLineNo">238</span>    *    &lt;p&gt;<a name="line.238"></a>
+<span class="sourceLineNo">239</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.240"></a>
+<span class="sourceLineNo">241</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    *    &lt;br&gt;...or...<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.243"></a>
+<span class="sourceLineNo">244</span>    */<a name="line.244"></a>
+<span class="sourceLineNo">245</span>   public XmlSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>      super(propertyStore, produces, accept);<a name="line.246"></a>
+<span class="sourceLineNo">247</span>      this.ctx = createContext(XmlSerializerContext.class);<a name="line.247"></a>
+<span class="sourceLineNo">248</span>   }<a name="line.248"></a>
+<span class="sourceLineNo">249</span><a name="line.249"></a>
+<span class="sourceLineNo">250</span>   @Override /* CoreObject */<a name="line.250"></a>
+<span class="sourceLineNo">251</span>   public XmlSerializerBuilder builder() {<a name="line.251"></a>
+<span class="sourceLineNo">252</span>      return new XmlSerializerBuilder(propertyStore);<a name="line.252"></a>
+<span class="sourceLineNo">253</span>   }<a name="line.253"></a>
+<span class="sourceLineNo">254</span><a name="line.254"></a>
+<span class="sourceLineNo">255</span><a name="line.255"></a>
+<span class="sourceLineNo">256</span>   /**<a name="line.256"></a>
+<span class="sourceLineNo">257</span>    * Returns the schema serializer based on the settings of this serializer.<a name="line.257"></a>
+<span class="sourceLineNo">258</span>    * @return The schema serializer.<a name="line.258"></a>
+<span class="sourceLineNo">259</span>    */<a name="line.259"></a>
+<span class="sourceLineNo">260</span>   public XmlSerializer getSchemaSerializer() {<a name="line.260"></a>
+<span class="sourceLineNo">261</span>      if (schemaSerializer == null)<a name="line.261"></a>
+<span class="sourceLineNo">262</span>         schemaSerializer = new XmlSchemaSerializer(propertyStore);<a name="line.262"></a>
+<span class="sourceLineNo">263</span>      return schemaSerializer;<a name="line.263"></a>
+<span class="sourceLineNo">264</span>   }<a name="line.264"></a>
+<span class="sourceLineNo">265</span><a name="line.265"></a>
+<span class="sourceLineNo">266</span>   @Override /* Serializer */<a name="line.266"></a>
+<span class="sourceLineNo">267</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.267"></a>
+<span class="sourceLineNo">268</span>      return new XmlSerializerSession(ctx, args);<a name="line.268"></a>
+<span class="sourceLineNo">269</span>   }<a name="line.269"></a>
+<span class="sourceLineNo">270</span>}<a name="line.270"></a>
 
 
 


[34/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.N3.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.N3.html b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.N3.html
index 035f6e1..e3995fc 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.N3.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.N3.html
@@ -24,130 +24,125 @@
 <span class="sourceLineNo">016</span>import static org.apache.juneau.jena.RdfCommonContext.*;<a name="line.16"></a>
 <span class="sourceLineNo">017</span><a name="line.17"></a>
 <span class="sourceLineNo">018</span>import org.apache.juneau.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.annotation.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.parser.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span><a name="line.21"></a>
-<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * Parses RDF into POJOs.<a name="line.23"></a>
-<span class="sourceLineNo">024</span> *<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * <a name="line.26"></a>
-<span class="sourceLineNo">027</span> * Refer to &lt;a class="doclink" href="package-summary.html#ParserConfigurableProperties"&gt;Configurable Properties&lt;/a&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * for the entire list of configurable properties.<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * <a name="line.31"></a>
-<span class="sourceLineNo">032</span> * The following direct subclasses are provided for language-specific parsers:<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;ul class='spaced-list'&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *    &lt;li&gt;<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *       {@link RdfParser.Xml} - RDF/XML and RDF/XML-ABBREV.<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *    &lt;li&gt;<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *       {@link RdfParser.NTriple} - N-TRIPLE.<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *       {@link RdfParser.Turtle} - TURTLE.<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *    &lt;li&gt;<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *       {@link RdfParser.N3} - N3.<a name="line.41"></a>
-<span class="sourceLineNo">042</span> * &lt;/ul&gt;<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *<a name="line.43"></a>
-<span class="sourceLineNo">044</span> * &lt;h5 class='section'&gt;Additional information:&lt;/h5&gt;<a name="line.44"></a>
-<span class="sourceLineNo">045</span> * <a name="line.45"></a>
-<span class="sourceLineNo">046</span> * See &lt;a class="doclink" href="package-summary.html#TOC"&gt;RDF Overview&lt;/a&gt; for an overview of RDF support in Juneau.<a name="line.46"></a>
-<span class="sourceLineNo">047</span> */<a name="line.47"></a>
-<span class="sourceLineNo">048</span>@Consumes(value="text/xml+rdf")<a name="line.48"></a>
-<span class="sourceLineNo">049</span>public class RdfParser extends ReaderParser {<a name="line.49"></a>
-<span class="sourceLineNo">050</span><a name="line.50"></a>
-<span class="sourceLineNo">051</span>   /** Default XML parser, all default settings.*/<a name="line.51"></a>
-<span class="sourceLineNo">052</span>   public static final RdfParser DEFAULT_XML = new RdfParser(PropertyStore.create());<a name="line.52"></a>
-<span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>   /** Default Turtle parser, all default settings.*/<a name="line.54"></a>
-<span class="sourceLineNo">055</span>   public static final RdfParser DEFAULT_TURTLE = new Turtle(PropertyStore.create());<a name="line.55"></a>
-<span class="sourceLineNo">056</span><a name="line.56"></a>
-<span class="sourceLineNo">057</span>   /** Default N-Triple parser, all default settings.*/<a name="line.57"></a>
-<span class="sourceLineNo">058</span>   public static final RdfParser DEFAULT_NTRIPLE = new NTriple(PropertyStore.create());<a name="line.58"></a>
-<span class="sourceLineNo">059</span><a name="line.59"></a>
-<span class="sourceLineNo">060</span>   /** Default N3 parser, all default settings.*/<a name="line.60"></a>
-<span class="sourceLineNo">061</span>   public static final RdfParser DEFAULT_N3 = new N3(PropertyStore.create());<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span><a name="line.63"></a>
-<span class="sourceLineNo">064</span>   /** Consumes RDF/XML input */<a name="line.64"></a>
-<span class="sourceLineNo">065</span>   @Consumes("text/xml+rdf")<a name="line.65"></a>
-<span class="sourceLineNo">066</span>   public static class Xml extends RdfParser {<a name="line.66"></a>
-<span class="sourceLineNo">067</span><a name="line.67"></a>
-<span class="sourceLineNo">068</span>      /**<a name="line.68"></a>
-<span class="sourceLineNo">069</span>       * Constructor.<a name="line.69"></a>
-<span class="sourceLineNo">070</span>       * <a name="line.70"></a>
-<span class="sourceLineNo">071</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.71"></a>
-<span class="sourceLineNo">072</span>       */<a name="line.72"></a>
-<span class="sourceLineNo">073</span>      public Xml(PropertyStore propertyStore) {<a name="line.73"></a>
-<span class="sourceLineNo">074</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML));<a name="line.74"></a>
-<span class="sourceLineNo">075</span>      }<a name="line.75"></a>
-<span class="sourceLineNo">076</span>   }<a name="line.76"></a>
+<span class="sourceLineNo">019</span>import org.apache.juneau.parser.*;<a name="line.19"></a>
+<span class="sourceLineNo">020</span><a name="line.20"></a>
+<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
+<span class="sourceLineNo">022</span> * Parses RDF into POJOs.<a name="line.22"></a>
+<span class="sourceLineNo">023</span> *<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * <a name="line.25"></a>
+<span class="sourceLineNo">026</span> * Refer to &lt;a class="doclink" href="package-summary.html#ParserConfigurableProperties"&gt;Configurable Properties&lt;/a&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * for the entire list of configurable properties.<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * <a name="line.30"></a>
+<span class="sourceLineNo">031</span> * The following direct subclasses are provided for language-specific parsers:<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;ul class='spaced-list'&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *    &lt;li&gt;<a name="line.33"></a>
+<span class="sourceLineNo">034</span> *       {@link RdfParser.Xml} - RDF/XML and RDF/XML-ABBREV.<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *    &lt;li&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *       {@link RdfParser.NTriple} - N-TRIPLE.<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;<a name="line.37"></a>
+<span class="sourceLineNo">038</span> *       {@link RdfParser.Turtle} - TURTLE.<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *    &lt;li&gt;<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *       {@link RdfParser.N3} - N3.<a name="line.40"></a>
+<span class="sourceLineNo">041</span> * &lt;/ul&gt;<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *<a name="line.42"></a>
+<span class="sourceLineNo">043</span> * &lt;h5 class='section'&gt;Additional information:&lt;/h5&gt;<a name="line.43"></a>
+<span class="sourceLineNo">044</span> * <a name="line.44"></a>
+<span class="sourceLineNo">045</span> * See &lt;a class="doclink" href="package-summary.html#TOC"&gt;RDF Overview&lt;/a&gt; for an overview of RDF support in Juneau.<a name="line.45"></a>
+<span class="sourceLineNo">046</span> */<a name="line.46"></a>
+<span class="sourceLineNo">047</span>public class RdfParser extends ReaderParser {<a name="line.47"></a>
+<span class="sourceLineNo">048</span><a name="line.48"></a>
+<span class="sourceLineNo">049</span>   /** Default XML parser, all default settings.*/<a name="line.49"></a>
+<span class="sourceLineNo">050</span>   public static final RdfParser DEFAULT_XML = new Xml(PropertyStore.create());<a name="line.50"></a>
+<span class="sourceLineNo">051</span><a name="line.51"></a>
+<span class="sourceLineNo">052</span>   /** Default Turtle parser, all default settings.*/<a name="line.52"></a>
+<span class="sourceLineNo">053</span>   public static final RdfParser DEFAULT_TURTLE = new Turtle(PropertyStore.create());<a name="line.53"></a>
+<span class="sourceLineNo">054</span><a name="line.54"></a>
+<span class="sourceLineNo">055</span>   /** Default N-Triple parser, all default settings.*/<a name="line.55"></a>
+<span class="sourceLineNo">056</span>   public static final RdfParser DEFAULT_NTRIPLE = new NTriple(PropertyStore.create());<a name="line.56"></a>
+<span class="sourceLineNo">057</span><a name="line.57"></a>
+<span class="sourceLineNo">058</span>   /** Default N3 parser, all default settings.*/<a name="line.58"></a>
+<span class="sourceLineNo">059</span>   public static final RdfParser DEFAULT_N3 = new N3(PropertyStore.create());<a name="line.59"></a>
+<span class="sourceLineNo">060</span><a name="line.60"></a>
+<span class="sourceLineNo">061</span><a name="line.61"></a>
+<span class="sourceLineNo">062</span>   /** Consumes RDF/XML input */<a name="line.62"></a>
+<span class="sourceLineNo">063</span>   public static class Xml extends RdfParser {<a name="line.63"></a>
+<span class="sourceLineNo">064</span><a name="line.64"></a>
+<span class="sourceLineNo">065</span>      /**<a name="line.65"></a>
+<span class="sourceLineNo">066</span>       * Constructor.<a name="line.66"></a>
+<span class="sourceLineNo">067</span>       * <a name="line.67"></a>
+<span class="sourceLineNo">068</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.68"></a>
+<span class="sourceLineNo">069</span>       */<a name="line.69"></a>
+<span class="sourceLineNo">070</span>      public Xml(PropertyStore propertyStore) {<a name="line.70"></a>
+<span class="sourceLineNo">071</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML), "text/xml+rdf");<a name="line.71"></a>
+<span class="sourceLineNo">072</span>      }<a name="line.72"></a>
+<span class="sourceLineNo">073</span>   }<a name="line.73"></a>
+<span class="sourceLineNo">074</span><a name="line.74"></a>
+<span class="sourceLineNo">075</span>   /** Consumes N-Triple input */<a name="line.75"></a>
+<span class="sourceLineNo">076</span>   public static class NTriple extends RdfParser {<a name="line.76"></a>
 <span class="sourceLineNo">077</span><a name="line.77"></a>
-<span class="sourceLineNo">078</span>   /** Consumes N-Triple input */<a name="line.78"></a>
-<span class="sourceLineNo">079</span>   @Consumes(value="text/n-triple")<a name="line.79"></a>
-<span class="sourceLineNo">080</span>   public static class NTriple extends RdfParser {<a name="line.80"></a>
-<span class="sourceLineNo">081</span><a name="line.81"></a>
-<span class="sourceLineNo">082</span>      /**<a name="line.82"></a>
-<span class="sourceLineNo">083</span>       * Constructor.<a name="line.83"></a>
-<span class="sourceLineNo">084</span>       * <a name="line.84"></a>
-<span class="sourceLineNo">085</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.85"></a>
-<span class="sourceLineNo">086</span>       */<a name="line.86"></a>
-<span class="sourceLineNo">087</span>      public NTriple(PropertyStore propertyStore) {<a name="line.87"></a>
-<span class="sourceLineNo">088</span>         super(propertyStore.copy().append(RDF_language, LANG_NTRIPLE));<a name="line.88"></a>
-<span class="sourceLineNo">089</span>      }<a name="line.89"></a>
-<span class="sourceLineNo">090</span>   }<a name="line.90"></a>
-<span class="sourceLineNo">091</span><a name="line.91"></a>
-<span class="sourceLineNo">092</span>   /** Consumes Turtle input */<a name="line.92"></a>
-<span class="sourceLineNo">093</span>   @Consumes(value="text/turtle")<a name="line.93"></a>
-<span class="sourceLineNo">094</span>   public static class Turtle extends RdfParser {<a name="line.94"></a>
-<span class="sourceLineNo">095</span><a name="line.95"></a>
-<span class="sourceLineNo">096</span>      /**<a name="line.96"></a>
-<span class="sourceLineNo">097</span>       * Constructor.<a name="line.97"></a>
-<span class="sourceLineNo">098</span>       * <a name="line.98"></a>
-<span class="sourceLineNo">099</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.99"></a>
-<span class="sourceLineNo">100</span>       */<a name="line.100"></a>
-<span class="sourceLineNo">101</span>      public Turtle(PropertyStore propertyStore) {<a name="line.101"></a>
-<span class="sourceLineNo">102</span>         super(propertyStore.copy().append(RDF_language, LANG_TURTLE));<a name="line.102"></a>
-<span class="sourceLineNo">103</span>      }<a name="line.103"></a>
-<span class="sourceLineNo">104</span>   }<a name="line.104"></a>
-<span class="sourceLineNo">105</span><a name="line.105"></a>
-<span class="sourceLineNo">106</span>   /** Consumes N3 input */<a name="line.106"></a>
-<span class="sourceLineNo">107</span>   @Consumes(value="text/n3")<a name="line.107"></a>
-<span class="sourceLineNo">108</span>   public static class N3 extends RdfParser {<a name="line.108"></a>
-<span class="sourceLineNo">109</span><a name="line.109"></a>
-<span class="sourceLineNo">110</span>      /**<a name="line.110"></a>
-<span class="sourceLineNo">111</span>       * Constructor.<a name="line.111"></a>
-<span class="sourceLineNo">112</span>       * <a name="line.112"></a>
-<span class="sourceLineNo">113</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.113"></a>
-<span class="sourceLineNo">114</span>       */<a name="line.114"></a>
-<span class="sourceLineNo">115</span>      public N3(PropertyStore propertyStore) {<a name="line.115"></a>
-<span class="sourceLineNo">116</span>         super(propertyStore.copy().append(RDF_language, LANG_N3));<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      }<a name="line.117"></a>
-<span class="sourceLineNo">118</span>   }<a name="line.118"></a>
-<span class="sourceLineNo">119</span><a name="line.119"></a>
-<span class="sourceLineNo">120</span><a name="line.120"></a>
-<span class="sourceLineNo">121</span>   private final RdfParserContext ctx;<a name="line.121"></a>
-<span class="sourceLineNo">122</span><a name="line.122"></a>
-<span class="sourceLineNo">123</span>   /**<a name="line.123"></a>
-<span class="sourceLineNo">124</span>    * Constructor.<a name="line.124"></a>
-<span class="sourceLineNo">125</span>    * <a name="line.125"></a>
-<span class="sourceLineNo">126</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.126"></a>
-<span class="sourceLineNo">127</span>    */<a name="line.127"></a>
-<span class="sourceLineNo">128</span>   public RdfParser(PropertyStore propertyStore) {<a name="line.128"></a>
-<span class="sourceLineNo">129</span>      super(propertyStore);<a name="line.129"></a>
-<span class="sourceLineNo">130</span>      this.ctx = createContext(RdfParserContext.class);<a name="line.130"></a>
+<span class="sourceLineNo">078</span>      /**<a name="line.78"></a>
+<span class="sourceLineNo">079</span>       * Constructor.<a name="line.79"></a>
+<span class="sourceLineNo">080</span>       * <a name="line.80"></a>
+<span class="sourceLineNo">081</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.81"></a>
+<span class="sourceLineNo">082</span>       */<a name="line.82"></a>
+<span class="sourceLineNo">083</span>      public NTriple(PropertyStore propertyStore) {<a name="line.83"></a>
+<span class="sourceLineNo">084</span>         super(propertyStore.copy().append(RDF_language, LANG_NTRIPLE), "text/n-triple");<a name="line.84"></a>
+<span class="sourceLineNo">085</span>      }<a name="line.85"></a>
+<span class="sourceLineNo">086</span>   }<a name="line.86"></a>
+<span class="sourceLineNo">087</span><a name="line.87"></a>
+<span class="sourceLineNo">088</span>   /** Consumes Turtle input */<a name="line.88"></a>
+<span class="sourceLineNo">089</span>   public static class Turtle extends RdfParser {<a name="line.89"></a>
+<span class="sourceLineNo">090</span><a name="line.90"></a>
+<span class="sourceLineNo">091</span>      /**<a name="line.91"></a>
+<span class="sourceLineNo">092</span>       * Constructor.<a name="line.92"></a>
+<span class="sourceLineNo">093</span>       * <a name="line.93"></a>
+<span class="sourceLineNo">094</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.94"></a>
+<span class="sourceLineNo">095</span>       */<a name="line.95"></a>
+<span class="sourceLineNo">096</span>      public Turtle(PropertyStore propertyStore) {<a name="line.96"></a>
+<span class="sourceLineNo">097</span>         super(propertyStore.copy().append(RDF_language, LANG_TURTLE), "text/turtle");<a name="line.97"></a>
+<span class="sourceLineNo">098</span>      }<a name="line.98"></a>
+<span class="sourceLineNo">099</span>   }<a name="line.99"></a>
+<span class="sourceLineNo">100</span><a name="line.100"></a>
+<span class="sourceLineNo">101</span>   /** Consumes N3 input */<a name="line.101"></a>
+<span class="sourceLineNo">102</span>   public static class N3 extends RdfParser {<a name="line.102"></a>
+<span class="sourceLineNo">103</span><a name="line.103"></a>
+<span class="sourceLineNo">104</span>      /**<a name="line.104"></a>
+<span class="sourceLineNo">105</span>       * Constructor.<a name="line.105"></a>
+<span class="sourceLineNo">106</span>       * <a name="line.106"></a>
+<span class="sourceLineNo">107</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.107"></a>
+<span class="sourceLineNo">108</span>       */<a name="line.108"></a>
+<span class="sourceLineNo">109</span>      public N3(PropertyStore propertyStore) {<a name="line.109"></a>
+<span class="sourceLineNo">110</span>         super(propertyStore.copy().append(RDF_language, LANG_N3), "text/n3");<a name="line.110"></a>
+<span class="sourceLineNo">111</span>      }<a name="line.111"></a>
+<span class="sourceLineNo">112</span>   }<a name="line.112"></a>
+<span class="sourceLineNo">113</span><a name="line.113"></a>
+<span class="sourceLineNo">114</span><a name="line.114"></a>
+<span class="sourceLineNo">115</span>   private final RdfParserContext ctx;<a name="line.115"></a>
+<span class="sourceLineNo">116</span><a name="line.116"></a>
+<span class="sourceLineNo">117</span>   /**<a name="line.117"></a>
+<span class="sourceLineNo">118</span>    * Constructor.<a name="line.118"></a>
+<span class="sourceLineNo">119</span>    * <a name="line.119"></a>
+<span class="sourceLineNo">120</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.120"></a>
+<span class="sourceLineNo">121</span>    * @param consumes The list of media types that this parser consumes (e.g. &lt;js&gt;"application/json"&lt;/js&gt;).<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    */<a name="line.122"></a>
+<span class="sourceLineNo">123</span>   public RdfParser(PropertyStore propertyStore, String...consumes) {<a name="line.123"></a>
+<span class="sourceLineNo">124</span>      super(propertyStore, consumes);<a name="line.124"></a>
+<span class="sourceLineNo">125</span>      this.ctx = createContext(RdfParserContext.class);<a name="line.125"></a>
+<span class="sourceLineNo">126</span>   }<a name="line.126"></a>
+<span class="sourceLineNo">127</span>   <a name="line.127"></a>
+<span class="sourceLineNo">128</span>   @Override /* CoreObject */<a name="line.128"></a>
+<span class="sourceLineNo">129</span>   public RdfParserBuilder builder() {<a name="line.129"></a>
+<span class="sourceLineNo">130</span>      return new RdfParserBuilder(propertyStore);<a name="line.130"></a>
 <span class="sourceLineNo">131</span>   }<a name="line.131"></a>
 <span class="sourceLineNo">132</span><a name="line.132"></a>
-<span class="sourceLineNo">133</span>   @Override /* CoreObject */<a name="line.133"></a>
-<span class="sourceLineNo">134</span>   public RdfParserBuilder builder() {<a name="line.134"></a>
-<span class="sourceLineNo">135</span>      return new RdfParserBuilder(propertyStore);<a name="line.135"></a>
+<span class="sourceLineNo">133</span>   @Override /* Parser */<a name="line.133"></a>
+<span class="sourceLineNo">134</span>   public ReaderParserSession createSession(ParserSessionArgs args) {<a name="line.134"></a>
+<span class="sourceLineNo">135</span>      return new RdfParserSession(ctx, args);<a name="line.135"></a>
 <span class="sourceLineNo">136</span>   }<a name="line.136"></a>
-<span class="sourceLineNo">137</span><a name="line.137"></a>
-<span class="sourceLineNo">138</span>   @Override /* Parser */<a name="line.138"></a>
-<span class="sourceLineNo">139</span>   public ReaderParserSession createSession(ParserSessionArgs args) {<a name="line.139"></a>
-<span class="sourceLineNo">140</span>      return new RdfParserSession(ctx, args);<a name="line.140"></a>
-<span class="sourceLineNo">141</span>   }<a name="line.141"></a>
-<span class="sourceLineNo">142</span>}<a name="line.142"></a>
+<span class="sourceLineNo">137</span>}<a name="line.137"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.NTriple.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.NTriple.html b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.NTriple.html
index 035f6e1..e3995fc 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.NTriple.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.NTriple.html
@@ -24,130 +24,125 @@
 <span class="sourceLineNo">016</span>import static org.apache.juneau.jena.RdfCommonContext.*;<a name="line.16"></a>
 <span class="sourceLineNo">017</span><a name="line.17"></a>
 <span class="sourceLineNo">018</span>import org.apache.juneau.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.annotation.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.parser.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span><a name="line.21"></a>
-<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * Parses RDF into POJOs.<a name="line.23"></a>
-<span class="sourceLineNo">024</span> *<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * <a name="line.26"></a>
-<span class="sourceLineNo">027</span> * Refer to &lt;a class="doclink" href="package-summary.html#ParserConfigurableProperties"&gt;Configurable Properties&lt;/a&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * for the entire list of configurable properties.<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * <a name="line.31"></a>
-<span class="sourceLineNo">032</span> * The following direct subclasses are provided for language-specific parsers:<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;ul class='spaced-list'&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *    &lt;li&gt;<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *       {@link RdfParser.Xml} - RDF/XML and RDF/XML-ABBREV.<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *    &lt;li&gt;<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *       {@link RdfParser.NTriple} - N-TRIPLE.<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *       {@link RdfParser.Turtle} - TURTLE.<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *    &lt;li&gt;<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *       {@link RdfParser.N3} - N3.<a name="line.41"></a>
-<span class="sourceLineNo">042</span> * &lt;/ul&gt;<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *<a name="line.43"></a>
-<span class="sourceLineNo">044</span> * &lt;h5 class='section'&gt;Additional information:&lt;/h5&gt;<a name="line.44"></a>
-<span class="sourceLineNo">045</span> * <a name="line.45"></a>
-<span class="sourceLineNo">046</span> * See &lt;a class="doclink" href="package-summary.html#TOC"&gt;RDF Overview&lt;/a&gt; for an overview of RDF support in Juneau.<a name="line.46"></a>
-<span class="sourceLineNo">047</span> */<a name="line.47"></a>
-<span class="sourceLineNo">048</span>@Consumes(value="text/xml+rdf")<a name="line.48"></a>
-<span class="sourceLineNo">049</span>public class RdfParser extends ReaderParser {<a name="line.49"></a>
-<span class="sourceLineNo">050</span><a name="line.50"></a>
-<span class="sourceLineNo">051</span>   /** Default XML parser, all default settings.*/<a name="line.51"></a>
-<span class="sourceLineNo">052</span>   public static final RdfParser DEFAULT_XML = new RdfParser(PropertyStore.create());<a name="line.52"></a>
-<span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>   /** Default Turtle parser, all default settings.*/<a name="line.54"></a>
-<span class="sourceLineNo">055</span>   public static final RdfParser DEFAULT_TURTLE = new Turtle(PropertyStore.create());<a name="line.55"></a>
-<span class="sourceLineNo">056</span><a name="line.56"></a>
-<span class="sourceLineNo">057</span>   /** Default N-Triple parser, all default settings.*/<a name="line.57"></a>
-<span class="sourceLineNo">058</span>   public static final RdfParser DEFAULT_NTRIPLE = new NTriple(PropertyStore.create());<a name="line.58"></a>
-<span class="sourceLineNo">059</span><a name="line.59"></a>
-<span class="sourceLineNo">060</span>   /** Default N3 parser, all default settings.*/<a name="line.60"></a>
-<span class="sourceLineNo">061</span>   public static final RdfParser DEFAULT_N3 = new N3(PropertyStore.create());<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span><a name="line.63"></a>
-<span class="sourceLineNo">064</span>   /** Consumes RDF/XML input */<a name="line.64"></a>
-<span class="sourceLineNo">065</span>   @Consumes("text/xml+rdf")<a name="line.65"></a>
-<span class="sourceLineNo">066</span>   public static class Xml extends RdfParser {<a name="line.66"></a>
-<span class="sourceLineNo">067</span><a name="line.67"></a>
-<span class="sourceLineNo">068</span>      /**<a name="line.68"></a>
-<span class="sourceLineNo">069</span>       * Constructor.<a name="line.69"></a>
-<span class="sourceLineNo">070</span>       * <a name="line.70"></a>
-<span class="sourceLineNo">071</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.71"></a>
-<span class="sourceLineNo">072</span>       */<a name="line.72"></a>
-<span class="sourceLineNo">073</span>      public Xml(PropertyStore propertyStore) {<a name="line.73"></a>
-<span class="sourceLineNo">074</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML));<a name="line.74"></a>
-<span class="sourceLineNo">075</span>      }<a name="line.75"></a>
-<span class="sourceLineNo">076</span>   }<a name="line.76"></a>
+<span class="sourceLineNo">019</span>import org.apache.juneau.parser.*;<a name="line.19"></a>
+<span class="sourceLineNo">020</span><a name="line.20"></a>
+<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
+<span class="sourceLineNo">022</span> * Parses RDF into POJOs.<a name="line.22"></a>
+<span class="sourceLineNo">023</span> *<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * <a name="line.25"></a>
+<span class="sourceLineNo">026</span> * Refer to &lt;a class="doclink" href="package-summary.html#ParserConfigurableProperties"&gt;Configurable Properties&lt;/a&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * for the entire list of configurable properties.<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * <a name="line.30"></a>
+<span class="sourceLineNo">031</span> * The following direct subclasses are provided for language-specific parsers:<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;ul class='spaced-list'&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *    &lt;li&gt;<a name="line.33"></a>
+<span class="sourceLineNo">034</span> *       {@link RdfParser.Xml} - RDF/XML and RDF/XML-ABBREV.<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *    &lt;li&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *       {@link RdfParser.NTriple} - N-TRIPLE.<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;<a name="line.37"></a>
+<span class="sourceLineNo">038</span> *       {@link RdfParser.Turtle} - TURTLE.<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *    &lt;li&gt;<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *       {@link RdfParser.N3} - N3.<a name="line.40"></a>
+<span class="sourceLineNo">041</span> * &lt;/ul&gt;<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *<a name="line.42"></a>
+<span class="sourceLineNo">043</span> * &lt;h5 class='section'&gt;Additional information:&lt;/h5&gt;<a name="line.43"></a>
+<span class="sourceLineNo">044</span> * <a name="line.44"></a>
+<span class="sourceLineNo">045</span> * See &lt;a class="doclink" href="package-summary.html#TOC"&gt;RDF Overview&lt;/a&gt; for an overview of RDF support in Juneau.<a name="line.45"></a>
+<span class="sourceLineNo">046</span> */<a name="line.46"></a>
+<span class="sourceLineNo">047</span>public class RdfParser extends ReaderParser {<a name="line.47"></a>
+<span class="sourceLineNo">048</span><a name="line.48"></a>
+<span class="sourceLineNo">049</span>   /** Default XML parser, all default settings.*/<a name="line.49"></a>
+<span class="sourceLineNo">050</span>   public static final RdfParser DEFAULT_XML = new Xml(PropertyStore.create());<a name="line.50"></a>
+<span class="sourceLineNo">051</span><a name="line.51"></a>
+<span class="sourceLineNo">052</span>   /** Default Turtle parser, all default settings.*/<a name="line.52"></a>
+<span class="sourceLineNo">053</span>   public static final RdfParser DEFAULT_TURTLE = new Turtle(PropertyStore.create());<a name="line.53"></a>
+<span class="sourceLineNo">054</span><a name="line.54"></a>
+<span class="sourceLineNo">055</span>   /** Default N-Triple parser, all default settings.*/<a name="line.55"></a>
+<span class="sourceLineNo">056</span>   public static final RdfParser DEFAULT_NTRIPLE = new NTriple(PropertyStore.create());<a name="line.56"></a>
+<span class="sourceLineNo">057</span><a name="line.57"></a>
+<span class="sourceLineNo">058</span>   /** Default N3 parser, all default settings.*/<a name="line.58"></a>
+<span class="sourceLineNo">059</span>   public static final RdfParser DEFAULT_N3 = new N3(PropertyStore.create());<a name="line.59"></a>
+<span class="sourceLineNo">060</span><a name="line.60"></a>
+<span class="sourceLineNo">061</span><a name="line.61"></a>
+<span class="sourceLineNo">062</span>   /** Consumes RDF/XML input */<a name="line.62"></a>
+<span class="sourceLineNo">063</span>   public static class Xml extends RdfParser {<a name="line.63"></a>
+<span class="sourceLineNo">064</span><a name="line.64"></a>
+<span class="sourceLineNo">065</span>      /**<a name="line.65"></a>
+<span class="sourceLineNo">066</span>       * Constructor.<a name="line.66"></a>
+<span class="sourceLineNo">067</span>       * <a name="line.67"></a>
+<span class="sourceLineNo">068</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.68"></a>
+<span class="sourceLineNo">069</span>       */<a name="line.69"></a>
+<span class="sourceLineNo">070</span>      public Xml(PropertyStore propertyStore) {<a name="line.70"></a>
+<span class="sourceLineNo">071</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML), "text/xml+rdf");<a name="line.71"></a>
+<span class="sourceLineNo">072</span>      }<a name="line.72"></a>
+<span class="sourceLineNo">073</span>   }<a name="line.73"></a>
+<span class="sourceLineNo">074</span><a name="line.74"></a>
+<span class="sourceLineNo">075</span>   /** Consumes N-Triple input */<a name="line.75"></a>
+<span class="sourceLineNo">076</span>   public static class NTriple extends RdfParser {<a name="line.76"></a>
 <span class="sourceLineNo">077</span><a name="line.77"></a>
-<span class="sourceLineNo">078</span>   /** Consumes N-Triple input */<a name="line.78"></a>
-<span class="sourceLineNo">079</span>   @Consumes(value="text/n-triple")<a name="line.79"></a>
-<span class="sourceLineNo">080</span>   public static class NTriple extends RdfParser {<a name="line.80"></a>
-<span class="sourceLineNo">081</span><a name="line.81"></a>
-<span class="sourceLineNo">082</span>      /**<a name="line.82"></a>
-<span class="sourceLineNo">083</span>       * Constructor.<a name="line.83"></a>
-<span class="sourceLineNo">084</span>       * <a name="line.84"></a>
-<span class="sourceLineNo">085</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.85"></a>
-<span class="sourceLineNo">086</span>       */<a name="line.86"></a>
-<span class="sourceLineNo">087</span>      public NTriple(PropertyStore propertyStore) {<a name="line.87"></a>
-<span class="sourceLineNo">088</span>         super(propertyStore.copy().append(RDF_language, LANG_NTRIPLE));<a name="line.88"></a>
-<span class="sourceLineNo">089</span>      }<a name="line.89"></a>
-<span class="sourceLineNo">090</span>   }<a name="line.90"></a>
-<span class="sourceLineNo">091</span><a name="line.91"></a>
-<span class="sourceLineNo">092</span>   /** Consumes Turtle input */<a name="line.92"></a>
-<span class="sourceLineNo">093</span>   @Consumes(value="text/turtle")<a name="line.93"></a>
-<span class="sourceLineNo">094</span>   public static class Turtle extends RdfParser {<a name="line.94"></a>
-<span class="sourceLineNo">095</span><a name="line.95"></a>
-<span class="sourceLineNo">096</span>      /**<a name="line.96"></a>
-<span class="sourceLineNo">097</span>       * Constructor.<a name="line.97"></a>
-<span class="sourceLineNo">098</span>       * <a name="line.98"></a>
-<span class="sourceLineNo">099</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.99"></a>
-<span class="sourceLineNo">100</span>       */<a name="line.100"></a>
-<span class="sourceLineNo">101</span>      public Turtle(PropertyStore propertyStore) {<a name="line.101"></a>
-<span class="sourceLineNo">102</span>         super(propertyStore.copy().append(RDF_language, LANG_TURTLE));<a name="line.102"></a>
-<span class="sourceLineNo">103</span>      }<a name="line.103"></a>
-<span class="sourceLineNo">104</span>   }<a name="line.104"></a>
-<span class="sourceLineNo">105</span><a name="line.105"></a>
-<span class="sourceLineNo">106</span>   /** Consumes N3 input */<a name="line.106"></a>
-<span class="sourceLineNo">107</span>   @Consumes(value="text/n3")<a name="line.107"></a>
-<span class="sourceLineNo">108</span>   public static class N3 extends RdfParser {<a name="line.108"></a>
-<span class="sourceLineNo">109</span><a name="line.109"></a>
-<span class="sourceLineNo">110</span>      /**<a name="line.110"></a>
-<span class="sourceLineNo">111</span>       * Constructor.<a name="line.111"></a>
-<span class="sourceLineNo">112</span>       * <a name="line.112"></a>
-<span class="sourceLineNo">113</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.113"></a>
-<span class="sourceLineNo">114</span>       */<a name="line.114"></a>
-<span class="sourceLineNo">115</span>      public N3(PropertyStore propertyStore) {<a name="line.115"></a>
-<span class="sourceLineNo">116</span>         super(propertyStore.copy().append(RDF_language, LANG_N3));<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      }<a name="line.117"></a>
-<span class="sourceLineNo">118</span>   }<a name="line.118"></a>
-<span class="sourceLineNo">119</span><a name="line.119"></a>
-<span class="sourceLineNo">120</span><a name="line.120"></a>
-<span class="sourceLineNo">121</span>   private final RdfParserContext ctx;<a name="line.121"></a>
-<span class="sourceLineNo">122</span><a name="line.122"></a>
-<span class="sourceLineNo">123</span>   /**<a name="line.123"></a>
-<span class="sourceLineNo">124</span>    * Constructor.<a name="line.124"></a>
-<span class="sourceLineNo">125</span>    * <a name="line.125"></a>
-<span class="sourceLineNo">126</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.126"></a>
-<span class="sourceLineNo">127</span>    */<a name="line.127"></a>
-<span class="sourceLineNo">128</span>   public RdfParser(PropertyStore propertyStore) {<a name="line.128"></a>
-<span class="sourceLineNo">129</span>      super(propertyStore);<a name="line.129"></a>
-<span class="sourceLineNo">130</span>      this.ctx = createContext(RdfParserContext.class);<a name="line.130"></a>
+<span class="sourceLineNo">078</span>      /**<a name="line.78"></a>
+<span class="sourceLineNo">079</span>       * Constructor.<a name="line.79"></a>
+<span class="sourceLineNo">080</span>       * <a name="line.80"></a>
+<span class="sourceLineNo">081</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.81"></a>
+<span class="sourceLineNo">082</span>       */<a name="line.82"></a>
+<span class="sourceLineNo">083</span>      public NTriple(PropertyStore propertyStore) {<a name="line.83"></a>
+<span class="sourceLineNo">084</span>         super(propertyStore.copy().append(RDF_language, LANG_NTRIPLE), "text/n-triple");<a name="line.84"></a>
+<span class="sourceLineNo">085</span>      }<a name="line.85"></a>
+<span class="sourceLineNo">086</span>   }<a name="line.86"></a>
+<span class="sourceLineNo">087</span><a name="line.87"></a>
+<span class="sourceLineNo">088</span>   /** Consumes Turtle input */<a name="line.88"></a>
+<span class="sourceLineNo">089</span>   public static class Turtle extends RdfParser {<a name="line.89"></a>
+<span class="sourceLineNo">090</span><a name="line.90"></a>
+<span class="sourceLineNo">091</span>      /**<a name="line.91"></a>
+<span class="sourceLineNo">092</span>       * Constructor.<a name="line.92"></a>
+<span class="sourceLineNo">093</span>       * <a name="line.93"></a>
+<span class="sourceLineNo">094</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.94"></a>
+<span class="sourceLineNo">095</span>       */<a name="line.95"></a>
+<span class="sourceLineNo">096</span>      public Turtle(PropertyStore propertyStore) {<a name="line.96"></a>
+<span class="sourceLineNo">097</span>         super(propertyStore.copy().append(RDF_language, LANG_TURTLE), "text/turtle");<a name="line.97"></a>
+<span class="sourceLineNo">098</span>      }<a name="line.98"></a>
+<span class="sourceLineNo">099</span>   }<a name="line.99"></a>
+<span class="sourceLineNo">100</span><a name="line.100"></a>
+<span class="sourceLineNo">101</span>   /** Consumes N3 input */<a name="line.101"></a>
+<span class="sourceLineNo">102</span>   public static class N3 extends RdfParser {<a name="line.102"></a>
+<span class="sourceLineNo">103</span><a name="line.103"></a>
+<span class="sourceLineNo">104</span>      /**<a name="line.104"></a>
+<span class="sourceLineNo">105</span>       * Constructor.<a name="line.105"></a>
+<span class="sourceLineNo">106</span>       * <a name="line.106"></a>
+<span class="sourceLineNo">107</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.107"></a>
+<span class="sourceLineNo">108</span>       */<a name="line.108"></a>
+<span class="sourceLineNo">109</span>      public N3(PropertyStore propertyStore) {<a name="line.109"></a>
+<span class="sourceLineNo">110</span>         super(propertyStore.copy().append(RDF_language, LANG_N3), "text/n3");<a name="line.110"></a>
+<span class="sourceLineNo">111</span>      }<a name="line.111"></a>
+<span class="sourceLineNo">112</span>   }<a name="line.112"></a>
+<span class="sourceLineNo">113</span><a name="line.113"></a>
+<span class="sourceLineNo">114</span><a name="line.114"></a>
+<span class="sourceLineNo">115</span>   private final RdfParserContext ctx;<a name="line.115"></a>
+<span class="sourceLineNo">116</span><a name="line.116"></a>
+<span class="sourceLineNo">117</span>   /**<a name="line.117"></a>
+<span class="sourceLineNo">118</span>    * Constructor.<a name="line.118"></a>
+<span class="sourceLineNo">119</span>    * <a name="line.119"></a>
+<span class="sourceLineNo">120</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.120"></a>
+<span class="sourceLineNo">121</span>    * @param consumes The list of media types that this parser consumes (e.g. &lt;js&gt;"application/json"&lt;/js&gt;).<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    */<a name="line.122"></a>
+<span class="sourceLineNo">123</span>   public RdfParser(PropertyStore propertyStore, String...consumes) {<a name="line.123"></a>
+<span class="sourceLineNo">124</span>      super(propertyStore, consumes);<a name="line.124"></a>
+<span class="sourceLineNo">125</span>      this.ctx = createContext(RdfParserContext.class);<a name="line.125"></a>
+<span class="sourceLineNo">126</span>   }<a name="line.126"></a>
+<span class="sourceLineNo">127</span>   <a name="line.127"></a>
+<span class="sourceLineNo">128</span>   @Override /* CoreObject */<a name="line.128"></a>
+<span class="sourceLineNo">129</span>   public RdfParserBuilder builder() {<a name="line.129"></a>
+<span class="sourceLineNo">130</span>      return new RdfParserBuilder(propertyStore);<a name="line.130"></a>
 <span class="sourceLineNo">131</span>   }<a name="line.131"></a>
 <span class="sourceLineNo">132</span><a name="line.132"></a>
-<span class="sourceLineNo">133</span>   @Override /* CoreObject */<a name="line.133"></a>
-<span class="sourceLineNo">134</span>   public RdfParserBuilder builder() {<a name="line.134"></a>
-<span class="sourceLineNo">135</span>      return new RdfParserBuilder(propertyStore);<a name="line.135"></a>
+<span class="sourceLineNo">133</span>   @Override /* Parser */<a name="line.133"></a>
+<span class="sourceLineNo">134</span>   public ReaderParserSession createSession(ParserSessionArgs args) {<a name="line.134"></a>
+<span class="sourceLineNo">135</span>      return new RdfParserSession(ctx, args);<a name="line.135"></a>
 <span class="sourceLineNo">136</span>   }<a name="line.136"></a>
-<span class="sourceLineNo">137</span><a name="line.137"></a>
-<span class="sourceLineNo">138</span>   @Override /* Parser */<a name="line.138"></a>
-<span class="sourceLineNo">139</span>   public ReaderParserSession createSession(ParserSessionArgs args) {<a name="line.139"></a>
-<span class="sourceLineNo">140</span>      return new RdfParserSession(ctx, args);<a name="line.140"></a>
-<span class="sourceLineNo">141</span>   }<a name="line.141"></a>
-<span class="sourceLineNo">142</span>}<a name="line.142"></a>
+<span class="sourceLineNo">137</span>}<a name="line.137"></a>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.Turtle.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.Turtle.html b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.Turtle.html
index 035f6e1..e3995fc 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.Turtle.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/jena/RdfParser.Turtle.html
@@ -24,130 +24,125 @@
 <span class="sourceLineNo">016</span>import static org.apache.juneau.jena.RdfCommonContext.*;<a name="line.16"></a>
 <span class="sourceLineNo">017</span><a name="line.17"></a>
 <span class="sourceLineNo">018</span>import org.apache.juneau.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.annotation.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.parser.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span><a name="line.21"></a>
-<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
-<span class="sourceLineNo">023</span> * Parses RDF into POJOs.<a name="line.23"></a>
-<span class="sourceLineNo">024</span> *<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * <a name="line.26"></a>
-<span class="sourceLineNo">027</span> * Refer to &lt;a class="doclink" href="package-summary.html#ParserConfigurableProperties"&gt;Configurable Properties&lt;/a&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * for the entire list of configurable properties.<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * <a name="line.31"></a>
-<span class="sourceLineNo">032</span> * The following direct subclasses are provided for language-specific parsers:<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;ul class='spaced-list'&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *    &lt;li&gt;<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *       {@link RdfParser.Xml} - RDF/XML and RDF/XML-ABBREV.<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *    &lt;li&gt;<a name="line.36"></a>
-<span class="sourceLineNo">037</span> *       {@link RdfParser.NTriple} - N-TRIPLE.<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *       {@link RdfParser.Turtle} - TURTLE.<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *    &lt;li&gt;<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *       {@link RdfParser.N3} - N3.<a name="line.41"></a>
-<span class="sourceLineNo">042</span> * &lt;/ul&gt;<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *<a name="line.43"></a>
-<span class="sourceLineNo">044</span> * &lt;h5 class='section'&gt;Additional information:&lt;/h5&gt;<a name="line.44"></a>
-<span class="sourceLineNo">045</span> * <a name="line.45"></a>
-<span class="sourceLineNo">046</span> * See &lt;a class="doclink" href="package-summary.html#TOC"&gt;RDF Overview&lt;/a&gt; for an overview of RDF support in Juneau.<a name="line.46"></a>
-<span class="sourceLineNo">047</span> */<a name="line.47"></a>
-<span class="sourceLineNo">048</span>@Consumes(value="text/xml+rdf")<a name="line.48"></a>
-<span class="sourceLineNo">049</span>public class RdfParser extends ReaderParser {<a name="line.49"></a>
-<span class="sourceLineNo">050</span><a name="line.50"></a>
-<span class="sourceLineNo">051</span>   /** Default XML parser, all default settings.*/<a name="line.51"></a>
-<span class="sourceLineNo">052</span>   public static final RdfParser DEFAULT_XML = new RdfParser(PropertyStore.create());<a name="line.52"></a>
-<span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>   /** Default Turtle parser, all default settings.*/<a name="line.54"></a>
-<span class="sourceLineNo">055</span>   public static final RdfParser DEFAULT_TURTLE = new Turtle(PropertyStore.create());<a name="line.55"></a>
-<span class="sourceLineNo">056</span><a name="line.56"></a>
-<span class="sourceLineNo">057</span>   /** Default N-Triple parser, all default settings.*/<a name="line.57"></a>
-<span class="sourceLineNo">058</span>   public static final RdfParser DEFAULT_NTRIPLE = new NTriple(PropertyStore.create());<a name="line.58"></a>
-<span class="sourceLineNo">059</span><a name="line.59"></a>
-<span class="sourceLineNo">060</span>   /** Default N3 parser, all default settings.*/<a name="line.60"></a>
-<span class="sourceLineNo">061</span>   public static final RdfParser DEFAULT_N3 = new N3(PropertyStore.create());<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span><a name="line.63"></a>
-<span class="sourceLineNo">064</span>   /** Consumes RDF/XML input */<a name="line.64"></a>
-<span class="sourceLineNo">065</span>   @Consumes("text/xml+rdf")<a name="line.65"></a>
-<span class="sourceLineNo">066</span>   public static class Xml extends RdfParser {<a name="line.66"></a>
-<span class="sourceLineNo">067</span><a name="line.67"></a>
-<span class="sourceLineNo">068</span>      /**<a name="line.68"></a>
-<span class="sourceLineNo">069</span>       * Constructor.<a name="line.69"></a>
-<span class="sourceLineNo">070</span>       * <a name="line.70"></a>
-<span class="sourceLineNo">071</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.71"></a>
-<span class="sourceLineNo">072</span>       */<a name="line.72"></a>
-<span class="sourceLineNo">073</span>      public Xml(PropertyStore propertyStore) {<a name="line.73"></a>
-<span class="sourceLineNo">074</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML));<a name="line.74"></a>
-<span class="sourceLineNo">075</span>      }<a name="line.75"></a>
-<span class="sourceLineNo">076</span>   }<a name="line.76"></a>
+<span class="sourceLineNo">019</span>import org.apache.juneau.parser.*;<a name="line.19"></a>
+<span class="sourceLineNo">020</span><a name="line.20"></a>
+<span class="sourceLineNo">021</span>/**<a name="line.21"></a>
+<span class="sourceLineNo">022</span> * Parses RDF into POJOs.<a name="line.22"></a>
+<span class="sourceLineNo">023</span> *<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * <a name="line.25"></a>
+<span class="sourceLineNo">026</span> * Refer to &lt;a class="doclink" href="package-summary.html#ParserConfigurableProperties"&gt;Configurable Properties&lt;/a&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * for the entire list of configurable properties.<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * <a name="line.30"></a>
+<span class="sourceLineNo">031</span> * The following direct subclasses are provided for language-specific parsers:<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;ul class='spaced-list'&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *    &lt;li&gt;<a name="line.33"></a>
+<span class="sourceLineNo">034</span> *       {@link RdfParser.Xml} - RDF/XML and RDF/XML-ABBREV.<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *    &lt;li&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *       {@link RdfParser.NTriple} - N-TRIPLE.<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;<a name="line.37"></a>
+<span class="sourceLineNo">038</span> *       {@link RdfParser.Turtle} - TURTLE.<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *    &lt;li&gt;<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *       {@link RdfParser.N3} - N3.<a name="line.40"></a>
+<span class="sourceLineNo">041</span> * &lt;/ul&gt;<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *<a name="line.42"></a>
+<span class="sourceLineNo">043</span> * &lt;h5 class='section'&gt;Additional information:&lt;/h5&gt;<a name="line.43"></a>
+<span class="sourceLineNo">044</span> * <a name="line.44"></a>
+<span class="sourceLineNo">045</span> * See &lt;a class="doclink" href="package-summary.html#TOC"&gt;RDF Overview&lt;/a&gt; for an overview of RDF support in Juneau.<a name="line.45"></a>
+<span class="sourceLineNo">046</span> */<a name="line.46"></a>
+<span class="sourceLineNo">047</span>public class RdfParser extends ReaderParser {<a name="line.47"></a>
+<span class="sourceLineNo">048</span><a name="line.48"></a>
+<span class="sourceLineNo">049</span>   /** Default XML parser, all default settings.*/<a name="line.49"></a>
+<span class="sourceLineNo">050</span>   public static final RdfParser DEFAULT_XML = new Xml(PropertyStore.create());<a name="line.50"></a>
+<span class="sourceLineNo">051</span><a name="line.51"></a>
+<span class="sourceLineNo">052</span>   /** Default Turtle parser, all default settings.*/<a name="line.52"></a>
+<span class="sourceLineNo">053</span>   public static final RdfParser DEFAULT_TURTLE = new Turtle(PropertyStore.create());<a name="line.53"></a>
+<span class="sourceLineNo">054</span><a name="line.54"></a>
+<span class="sourceLineNo">055</span>   /** Default N-Triple parser, all default settings.*/<a name="line.55"></a>
+<span class="sourceLineNo">056</span>   public static final RdfParser DEFAULT_NTRIPLE = new NTriple(PropertyStore.create());<a name="line.56"></a>
+<span class="sourceLineNo">057</span><a name="line.57"></a>
+<span class="sourceLineNo">058</span>   /** Default N3 parser, all default settings.*/<a name="line.58"></a>
+<span class="sourceLineNo">059</span>   public static final RdfParser DEFAULT_N3 = new N3(PropertyStore.create());<a name="line.59"></a>
+<span class="sourceLineNo">060</span><a name="line.60"></a>
+<span class="sourceLineNo">061</span><a name="line.61"></a>
+<span class="sourceLineNo">062</span>   /** Consumes RDF/XML input */<a name="line.62"></a>
+<span class="sourceLineNo">063</span>   public static class Xml extends RdfParser {<a name="line.63"></a>
+<span class="sourceLineNo">064</span><a name="line.64"></a>
+<span class="sourceLineNo">065</span>      /**<a name="line.65"></a>
+<span class="sourceLineNo">066</span>       * Constructor.<a name="line.66"></a>
+<span class="sourceLineNo">067</span>       * <a name="line.67"></a>
+<span class="sourceLineNo">068</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.68"></a>
+<span class="sourceLineNo">069</span>       */<a name="line.69"></a>
+<span class="sourceLineNo">070</span>      public Xml(PropertyStore propertyStore) {<a name="line.70"></a>
+<span class="sourceLineNo">071</span>         super(propertyStore.copy().append(RDF_language, LANG_RDF_XML), "text/xml+rdf");<a name="line.71"></a>
+<span class="sourceLineNo">072</span>      }<a name="line.72"></a>
+<span class="sourceLineNo">073</span>   }<a name="line.73"></a>
+<span class="sourceLineNo">074</span><a name="line.74"></a>
+<span class="sourceLineNo">075</span>   /** Consumes N-Triple input */<a name="line.75"></a>
+<span class="sourceLineNo">076</span>   public static class NTriple extends RdfParser {<a name="line.76"></a>
 <span class="sourceLineNo">077</span><a name="line.77"></a>
-<span class="sourceLineNo">078</span>   /** Consumes N-Triple input */<a name="line.78"></a>
-<span class="sourceLineNo">079</span>   @Consumes(value="text/n-triple")<a name="line.79"></a>
-<span class="sourceLineNo">080</span>   public static class NTriple extends RdfParser {<a name="line.80"></a>
-<span class="sourceLineNo">081</span><a name="line.81"></a>
-<span class="sourceLineNo">082</span>      /**<a name="line.82"></a>
-<span class="sourceLineNo">083</span>       * Constructor.<a name="line.83"></a>
-<span class="sourceLineNo">084</span>       * <a name="line.84"></a>
-<span class="sourceLineNo">085</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.85"></a>
-<span class="sourceLineNo">086</span>       */<a name="line.86"></a>
-<span class="sourceLineNo">087</span>      public NTriple(PropertyStore propertyStore) {<a name="line.87"></a>
-<span class="sourceLineNo">088</span>         super(propertyStore.copy().append(RDF_language, LANG_NTRIPLE));<a name="line.88"></a>
-<span class="sourceLineNo">089</span>      }<a name="line.89"></a>
-<span class="sourceLineNo">090</span>   }<a name="line.90"></a>
-<span class="sourceLineNo">091</span><a name="line.91"></a>
-<span class="sourceLineNo">092</span>   /** Consumes Turtle input */<a name="line.92"></a>
-<span class="sourceLineNo">093</span>   @Consumes(value="text/turtle")<a name="line.93"></a>
-<span class="sourceLineNo">094</span>   public static class Turtle extends RdfParser {<a name="line.94"></a>
-<span class="sourceLineNo">095</span><a name="line.95"></a>
-<span class="sourceLineNo">096</span>      /**<a name="line.96"></a>
-<span class="sourceLineNo">097</span>       * Constructor.<a name="line.97"></a>
-<span class="sourceLineNo">098</span>       * <a name="line.98"></a>
-<span class="sourceLineNo">099</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.99"></a>
-<span class="sourceLineNo">100</span>       */<a name="line.100"></a>
-<span class="sourceLineNo">101</span>      public Turtle(PropertyStore propertyStore) {<a name="line.101"></a>
-<span class="sourceLineNo">102</span>         super(propertyStore.copy().append(RDF_language, LANG_TURTLE));<a name="line.102"></a>
-<span class="sourceLineNo">103</span>      }<a name="line.103"></a>
-<span class="sourceLineNo">104</span>   }<a name="line.104"></a>
-<span class="sourceLineNo">105</span><a name="line.105"></a>
-<span class="sourceLineNo">106</span>   /** Consumes N3 input */<a name="line.106"></a>
-<span class="sourceLineNo">107</span>   @Consumes(value="text/n3")<a name="line.107"></a>
-<span class="sourceLineNo">108</span>   public static class N3 extends RdfParser {<a name="line.108"></a>
-<span class="sourceLineNo">109</span><a name="line.109"></a>
-<span class="sourceLineNo">110</span>      /**<a name="line.110"></a>
-<span class="sourceLineNo">111</span>       * Constructor.<a name="line.111"></a>
-<span class="sourceLineNo">112</span>       * <a name="line.112"></a>
-<span class="sourceLineNo">113</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.113"></a>
-<span class="sourceLineNo">114</span>       */<a name="line.114"></a>
-<span class="sourceLineNo">115</span>      public N3(PropertyStore propertyStore) {<a name="line.115"></a>
-<span class="sourceLineNo">116</span>         super(propertyStore.copy().append(RDF_language, LANG_N3));<a name="line.116"></a>
-<span class="sourceLineNo">117</span>      }<a name="line.117"></a>
-<span class="sourceLineNo">118</span>   }<a name="line.118"></a>
-<span class="sourceLineNo">119</span><a name="line.119"></a>
-<span class="sourceLineNo">120</span><a name="line.120"></a>
-<span class="sourceLineNo">121</span>   private final RdfParserContext ctx;<a name="line.121"></a>
-<span class="sourceLineNo">122</span><a name="line.122"></a>
-<span class="sourceLineNo">123</span>   /**<a name="line.123"></a>
-<span class="sourceLineNo">124</span>    * Constructor.<a name="line.124"></a>
-<span class="sourceLineNo">125</span>    * <a name="line.125"></a>
-<span class="sourceLineNo">126</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.126"></a>
-<span class="sourceLineNo">127</span>    */<a name="line.127"></a>
-<span class="sourceLineNo">128</span>   public RdfParser(PropertyStore propertyStore) {<a name="line.128"></a>
-<span class="sourceLineNo">129</span>      super(propertyStore);<a name="line.129"></a>
-<span class="sourceLineNo">130</span>      this.ctx = createContext(RdfParserContext.class);<a name="line.130"></a>
+<span class="sourceLineNo">078</span>      /**<a name="line.78"></a>
+<span class="sourceLineNo">079</span>       * Constructor.<a name="line.79"></a>
+<span class="sourceLineNo">080</span>       * <a name="line.80"></a>
+<span class="sourceLineNo">081</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.81"></a>
+<span class="sourceLineNo">082</span>       */<a name="line.82"></a>
+<span class="sourceLineNo">083</span>      public NTriple(PropertyStore propertyStore) {<a name="line.83"></a>
+<span class="sourceLineNo">084</span>         super(propertyStore.copy().append(RDF_language, LANG_NTRIPLE), "text/n-triple");<a name="line.84"></a>
+<span class="sourceLineNo">085</span>      }<a name="line.85"></a>
+<span class="sourceLineNo">086</span>   }<a name="line.86"></a>
+<span class="sourceLineNo">087</span><a name="line.87"></a>
+<span class="sourceLineNo">088</span>   /** Consumes Turtle input */<a name="line.88"></a>
+<span class="sourceLineNo">089</span>   public static class Turtle extends RdfParser {<a name="line.89"></a>
+<span class="sourceLineNo">090</span><a name="line.90"></a>
+<span class="sourceLineNo">091</span>      /**<a name="line.91"></a>
+<span class="sourceLineNo">092</span>       * Constructor.<a name="line.92"></a>
+<span class="sourceLineNo">093</span>       * <a name="line.93"></a>
+<span class="sourceLineNo">094</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.94"></a>
+<span class="sourceLineNo">095</span>       */<a name="line.95"></a>
+<span class="sourceLineNo">096</span>      public Turtle(PropertyStore propertyStore) {<a name="line.96"></a>
+<span class="sourceLineNo">097</span>         super(propertyStore.copy().append(RDF_language, LANG_TURTLE), "text/turtle");<a name="line.97"></a>
+<span class="sourceLineNo">098</span>      }<a name="line.98"></a>
+<span class="sourceLineNo">099</span>   }<a name="line.99"></a>
+<span class="sourceLineNo">100</span><a name="line.100"></a>
+<span class="sourceLineNo">101</span>   /** Consumes N3 input */<a name="line.101"></a>
+<span class="sourceLineNo">102</span>   public static class N3 extends RdfParser {<a name="line.102"></a>
+<span class="sourceLineNo">103</span><a name="line.103"></a>
+<span class="sourceLineNo">104</span>      /**<a name="line.104"></a>
+<span class="sourceLineNo">105</span>       * Constructor.<a name="line.105"></a>
+<span class="sourceLineNo">106</span>       * <a name="line.106"></a>
+<span class="sourceLineNo">107</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.107"></a>
+<span class="sourceLineNo">108</span>       */<a name="line.108"></a>
+<span class="sourceLineNo">109</span>      public N3(PropertyStore propertyStore) {<a name="line.109"></a>
+<span class="sourceLineNo">110</span>         super(propertyStore.copy().append(RDF_language, LANG_N3), "text/n3");<a name="line.110"></a>
+<span class="sourceLineNo">111</span>      }<a name="line.111"></a>
+<span class="sourceLineNo">112</span>   }<a name="line.112"></a>
+<span class="sourceLineNo">113</span><a name="line.113"></a>
+<span class="sourceLineNo">114</span><a name="line.114"></a>
+<span class="sourceLineNo">115</span>   private final RdfParserContext ctx;<a name="line.115"></a>
+<span class="sourceLineNo">116</span><a name="line.116"></a>
+<span class="sourceLineNo">117</span>   /**<a name="line.117"></a>
+<span class="sourceLineNo">118</span>    * Constructor.<a name="line.118"></a>
+<span class="sourceLineNo">119</span>    * <a name="line.119"></a>
+<span class="sourceLineNo">120</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.120"></a>
+<span class="sourceLineNo">121</span>    * @param consumes The list of media types that this parser consumes (e.g. &lt;js&gt;"application/json"&lt;/js&gt;).<a name="line.121"></a>
+<span class="sourceLineNo">122</span>    */<a name="line.122"></a>
+<span class="sourceLineNo">123</span>   public RdfParser(PropertyStore propertyStore, String...consumes) {<a name="line.123"></a>
+<span class="sourceLineNo">124</span>      super(propertyStore, consumes);<a name="line.124"></a>
+<span class="sourceLineNo">125</span>      this.ctx = createContext(RdfParserContext.class);<a name="line.125"></a>
+<span class="sourceLineNo">126</span>   }<a name="line.126"></a>
+<span class="sourceLineNo">127</span>   <a name="line.127"></a>
+<span class="sourceLineNo">128</span>   @Override /* CoreObject */<a name="line.128"></a>
+<span class="sourceLineNo">129</span>   public RdfParserBuilder builder() {<a name="line.129"></a>
+<span class="sourceLineNo">130</span>      return new RdfParserBuilder(propertyStore);<a name="line.130"></a>
 <span class="sourceLineNo">131</span>   }<a name="line.131"></a>
 <span class="sourceLineNo">132</span><a name="line.132"></a>
-<span class="sourceLineNo">133</span>   @Override /* CoreObject */<a name="line.133"></a>
-<span class="sourceLineNo">134</span>   public RdfParserBuilder builder() {<a name="line.134"></a>
-<span class="sourceLineNo">135</span>      return new RdfParserBuilder(propertyStore);<a name="line.135"></a>
+<span class="sourceLineNo">133</span>   @Override /* Parser */<a name="line.133"></a>
+<span class="sourceLineNo">134</span>   public ReaderParserSession createSession(ParserSessionArgs args) {<a name="line.134"></a>
+<span class="sourceLineNo">135</span>      return new RdfParserSession(ctx, args);<a name="line.135"></a>
 <span class="sourceLineNo">136</span>   }<a name="line.136"></a>
-<span class="sourceLineNo">137</span><a name="line.137"></a>
-<span class="sourceLineNo">138</span>   @Override /* Parser */<a name="line.138"></a>
-<span class="sourceLineNo">139</span>   public ReaderParserSession createSession(ParserSessionArgs args) {<a name="line.139"></a>
-<span class="sourceLineNo">140</span>      return new RdfParserSession(ctx, args);<a name="line.140"></a>
-<span class="sourceLineNo">141</span>   }<a name="line.141"></a>
-<span class="sourceLineNo">142</span>}<a name="line.142"></a>
+<span class="sourceLineNo">137</span>}<a name="line.137"></a>
 
 
 


[46/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/parser/Parser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/parser/Parser.html b/content/site/apidocs/org/apache/juneau/parser/Parser.html
index 2f52975..33260fc 100644
--- a/content/site/apidocs/org/apache/juneau/parser/Parser.html
+++ b/content/site/apidocs/org/apache/juneau/parser/Parser.html
@@ -18,7 +18,7 @@
     catch(err) {
     }
 //-->
-var methods = {"i0":10,"i1":10,"i2":6,"i3":10,"i4":10,"i5":6,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10};
+var methods = {"i0":10,"i1":10,"i2":10,"i3":6,"i4":10,"i5":10,"i6":6,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10};
 var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -117,17 +117,10 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre>public abstract class <a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.144">Parser</a>
+<pre>public abstract class <a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.133">Parser</a>
 extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in org.apache.juneau">CoreObject</a></pre>
 <div class="block">Parent class for all Juneau parsers.
 
- <h6 class='topic'>@Consumes annotation</h6>
-
- The media types that this parser can handle is specified through the <a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation"><code>@Consumes</code></a> annotation.
-
- <p>
- However, the media types can also be specified programmatically by overriding the <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--"><code>getMediaTypes()</code></a> method.
-
  <h6 class='topic'>Valid data conversions</h6>
 
  Parsers can parse any parsable POJO types, as specified in the <a class="doclink"
@@ -273,43 +266,49 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 </td>
 </tr>
 <tr id="i1" class="rowColor">
+<td class="colFirst"><code>protected <a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/parser/Parser.html#createDefaultSessionArgs--">createDefaultSessionArgs</a></span>()</code>
+<div class="block">Creates the session arguments object that gets passed to the <a href="../../../../org/apache/juneau/parser/Parser.html#createSession-org.apache.juneau.parser.ParserSessionArgs-"><code>createSession(ParserSessionArgs)</code></a> method.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
 <td class="colFirst"><code><a href="../../../../org/apache/juneau/parser/ParserSession.html" title="class in org.apache.juneau.parser">ParserSession</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a></span>()</code>
 <div class="block">Create a basic session object without overriding properties or specifying <code>javaMethod</code>.</div>
 </td>
 </tr>
-<tr id="i2" class="altColor">
+<tr id="i3" class="rowColor">
 <td class="colFirst"><code>abstract <a href="../../../../org/apache/juneau/parser/ParserSession.html" title="class in org.apache.juneau.parser">ParserSession</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/parser/Parser.html#createSession-org.apache.juneau.parser.ParserSessionArgs-">createSession</a></span>(<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</code>
 <div class="block">Create the session object that will be passed in to the parse method.</div>
 </td>
 </tr>
-<tr id="i3" class="rowColor">
+<tr id="i4" class="altColor">
 <td class="colFirst"><code><a href="../../../../org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a>[]</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a></span>()</code>
-<div class="block">Returns the media types handled based on the value of the <a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation"><code>Consumes</code></a> annotation on the parser class.</div>
+<div class="block">Returns the media types handled based on the values passed to the <code>consumes</code> constructor parameter.</div>
 </td>
 </tr>
-<tr id="i4" class="altColor">
+<tr id="i5" class="rowColor">
 <td class="colFirst"><code><a href="../../../../org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a></span>()</code>
-<div class="block">Returns the first media type specified on this parser via the <a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation"><code>Consumes</code></a> annotation.</div>
+<div class="block">Returns the first media type handled based on the values passed to the <code>consumes</code> constructor parameter.</div>
 </td>
 </tr>
-<tr id="i5" class="rowColor">
+<tr id="i6" class="altColor">
 <td class="colFirst"><code>abstract boolean</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/parser/Parser.html#isReaderParser--">isReaderParser</a></span>()</code>
 <div class="block">Returns <jk>true</jk> if this parser subclasses from <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="class in org.apache.juneau.parser"><code>ReaderParser</code></a>.</div>
 </td>
 </tr>
-<tr id="i6" class="altColor">
+<tr id="i7" class="rowColor">
 <td class="colFirst"><code>&lt;T&gt;&nbsp;T</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
      <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;T&gt;&nbsp;type)</code>
 <div class="block">Same as <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-"><code>parse(Object, Type, Type...)</code></a> except optimized for a non-parameterized class.</div>
 </td>
 </tr>
-<tr id="i7" class="rowColor">
+<tr id="i8" class="altColor">
 <td class="colFirst"><code>&lt;T&gt;&nbsp;T</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
      <a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;T&gt;&nbsp;type)</code>
@@ -317,7 +316,7 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
  object.</div>
 </td>
 </tr>
-<tr id="i8" class="altColor">
+<tr id="i9" class="rowColor">
 <td class="colFirst"><code>&lt;T&gt;&nbsp;T</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
      <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>&nbsp;type,
@@ -325,7 +324,7 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 <div class="block">Parses input into the specified object type.</div>
 </td>
 </tr>
-<tr id="i9" class="rowColor">
+<tr id="i10" class="altColor">
 <td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>[]&nbsp;argTypes)</code>
@@ -333,7 +332,7 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
  argument.</div>
 </td>
 </tr>
-<tr id="i10" class="altColor">
+<tr id="i11" class="rowColor">
 <td class="colFirst"><code>&lt;E&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;E&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-java.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
                    <a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;E&gt;&nbsp;c,
@@ -341,7 +340,7 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 <div class="block">Parses the contents of the specified reader and loads the results into the specified collection.</div>
 </td>
 </tr>
-<tr id="i11" class="rowColor">
+<tr id="i12" class="altColor">
 <td class="colFirst"><code>&lt;K,V&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;K,V&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
             <a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;K,V&gt;&nbsp;m,
@@ -385,7 +384,7 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>builder</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/parser/ParserBuilder.html" title="class in org.apache.juneau.parser">ParserBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.165">builder</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/parser/ParserBuilder.html" title="class in org.apache.juneau.parser">ParserBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.149">builder</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/CoreObject.html#builder--">CoreObject</a></code></span></div>
 <div class="block">Creates a new builder class for this object so that a new object can be created that expands upon the current
  object's settings.</div>
@@ -403,7 +402,7 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>isReaderParser</h4>
-<pre>public abstract&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.179">isReaderParser</a>()</pre>
+<pre>public abstract&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.163">isReaderParser</a>()</pre>
 <div class="block">Returns <jk>true</jk> if this parser subclasses from <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="class in org.apache.juneau.parser"><code>ReaderParser</code></a>.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -417,7 +416,7 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public abstract&nbsp;<a href="../../../../org/apache/juneau/parser/ParserSession.html" title="class in org.apache.juneau.parser">ParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.192">createSession</a>(<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</pre>
+<pre>public abstract&nbsp;<a href="../../../../org/apache/juneau/parser/ParserSession.html" title="class in org.apache.juneau.parser">ParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.176">createSession</a>(<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</pre>
 <div class="block">Create the session object that will be passed in to the parse method.
 
  <p>
@@ -437,7 +436,7 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>parse</h4>
-<pre>public final&nbsp;&lt;T&gt;&nbsp;T&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.275">parse</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
+<pre>public final&nbsp;&lt;T&gt;&nbsp;T&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.259">parse</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
                          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>&nbsp;type,
                          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>...&nbsp;args)
                   throws <a href="../../../../org/apache/juneau/parser/ParseException.html" title="class in org.apache.juneau.parser">ParseException</a></pre>
@@ -525,7 +524,7 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>parse</h4>
-<pre>public final&nbsp;&lt;T&gt;&nbsp;T&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.319">parse</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
+<pre>public final&nbsp;&lt;T&gt;&nbsp;T&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.303">parse</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
                          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;T&gt;&nbsp;type)
                   throws <a href="../../../../org/apache/juneau/parser/ParseException.html" title="class in org.apache.juneau.parser">ParseException</a></pre>
 <div class="block">Same as <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-"><code>parse(Object, Type, Type...)</code></a> except optimized for a non-parameterized class.
@@ -572,7 +571,7 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>parse</h4>
-<pre>public final&nbsp;&lt;T&gt;&nbsp;T&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.344">parse</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
+<pre>public final&nbsp;&lt;T&gt;&nbsp;T&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.328">parse</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
                          <a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;T&gt;&nbsp;type)
                   throws <a href="../../../../org/apache/juneau/parser/ParseException.html" title="class in org.apache.juneau.parser">ParseException</a></pre>
 <div class="block">Same as <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-"><code>parse(Object, Type, Type...)</code></a> except the type has already been converted into a <a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau"><code>ClassMeta</code></a>
@@ -600,7 +599,7 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public final&nbsp;<a href="../../../../org/apache/juneau/parser/ParserSession.html" title="class in org.apache.juneau.parser">ParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.361">createSession</a>()</pre>
+<pre>public final&nbsp;<a href="../../../../org/apache/juneau/parser/ParserSession.html" title="class in org.apache.juneau.parser">ParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.345">createSession</a>()</pre>
 <div class="block">Create a basic session object without overriding properties or specifying <code>javaMethod</code>.
 
  <p>
@@ -611,13 +610,28 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 </dl>
 </li>
 </ul>
+<a name="createDefaultSessionArgs--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>createDefaultSessionArgs</h4>
+<pre>protected final&nbsp;<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.356">createDefaultSessionArgs</a>()</pre>
+<div class="block">Creates the session arguments object that gets passed to the <a href="../../../../org/apache/juneau/parser/Parser.html#createSession-org.apache.juneau.parser.ParserSessionArgs-"><code>createSession(ParserSessionArgs)</code></a> method.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>A new default session arguments object.
+   <p>The arguments can be modified before passing to the <a href="../../../../org/apache/juneau/parser/Parser.html#createSession-org.apache.juneau.parser.ParserSessionArgs-"><code>createSession(ParserSessionArgs)</code></a>.</dd>
+</dl>
+</li>
+</ul>
 <a name="parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>parseIntoMap</h4>
-<pre>public final&nbsp;&lt;K,V&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;K,V&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.394">parseIntoMap</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
+<pre>public final&nbsp;&lt;K,V&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;K,V&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.388">parseIntoMap</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
                                          <a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;K,V&gt;&nbsp;m,
                                          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>&nbsp;keyType,
                                          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>&nbsp;valueType)
@@ -657,7 +671,7 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>parseIntoCollection</h4>
-<pre>public final&nbsp;&lt;E&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;E&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.423">parseIntoCollection</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
+<pre>public final&nbsp;&lt;E&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;E&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.417">parseIntoCollection</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
                                                    <a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;E&gt;&nbsp;c,
                                                    <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>&nbsp;elementType)
                                             throws <a href="../../../../org/apache/juneau/parser/ParseException.html" title="class in org.apache.juneau.parser">ParseException</a></pre>
@@ -691,7 +705,7 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>parseArgs</h4>
-<pre>public final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.453">parseArgs</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
+<pre>public final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.447">parseArgs</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
                                 <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>[]&nbsp;argTypes)
                          throws <a href="../../../../org/apache/juneau/parser/ParseException.html" title="class in org.apache.juneau.parser">ParseException</a></pre>
 <div class="block">Parses the specified array input with each entry in the object defined by the <code>argTypes</code>
@@ -724,11 +738,8 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>getMediaTypes</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a>[]&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.477">getMediaTypes</a>()</pre>
-<div class="block">Returns the media types handled based on the value of the <a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation"><code>Consumes</code></a> annotation on the parser class.
-
- <p>
- This method can be overridden by subclasses to determine the media types programmatically.</div>
+<pre>public final&nbsp;<a href="../../../../org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a>[]&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.468">getMediaTypes</a>()</pre>
+<div class="block">Returns the media types handled based on the values passed to the <code>consumes</code> constructor parameter.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The list of media types.  Never <jk>null</jk>.</dd>
@@ -741,8 +752,8 @@ extends <a href="../../../../org/apache/juneau/CoreObject.html" title="class in
 <ul class="blockListLast">
 <li class="blockList">
 <h4>getPrimaryMediaType</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.486">getPrimaryMediaType</a>()</pre>
-<div class="block">Returns the first media type specified on this parser via the <a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation"><code>Consumes</code></a> annotation.</div>
+<pre>public final&nbsp;<a href="../../../../org/apache/juneau/http/MediaType.html" title="class in org.apache.juneau.http">MediaType</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/Parser.html#line.477">getPrimaryMediaType</a>()</pre>
+<div class="block">Returns the first media type handled based on the values passed to the <code>consumes</code> constructor parameter.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The media type.</dd>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/parser/ParserSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/parser/ParserSession.html b/content/site/apidocs/org/apache/juneau/parser/ParserSession.html
index f6fd602..7636b4e 100644
--- a/content/site/apidocs/org/apache/juneau/parser/ParserSession.html
+++ b/content/site/apidocs/org/apache/juneau/parser/ParserSession.html
@@ -426,7 +426,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>doParse</h4>
-<pre>protected abstract&nbsp;&lt;T&gt;&nbsp;T&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.100">doParse</a>(<a href="../../../../org/apache/juneau/parser/ParserPipe.html" title="class in org.apache.juneau.parser">ParserPipe</a>&nbsp;pipe,
+<pre>protected abstract&nbsp;&lt;T&gt;&nbsp;T&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.98">doParse</a>(<a href="../../../../org/apache/juneau/parser/ParserPipe.html" title="class in org.apache.juneau.parser">ParserPipe</a>&nbsp;pipe,
                                  <a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;T&gt;&nbsp;type)
                           throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block">Workhorse method.  Subclasses are expected to implement this method.</div>
@@ -452,7 +452,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>isReaderParser</h4>
-<pre>public abstract&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.107">isReaderParser</a>()</pre>
+<pre>public abstract&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.105">isReaderParser</a>()</pre>
 <div class="block">Returns <jk>true</jk> if this parser subclasses from <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="class in org.apache.juneau.parser"><code>ReaderParser</code></a>.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -466,7 +466,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>createPipe</h4>
-<pre>public final&nbsp;<a href="../../../../org/apache/juneau/parser/ParserPipe.html" title="class in org.apache.juneau.parser">ParserPipe</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.142">createPipe</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input)</pre>
+<pre>public final&nbsp;<a href="../../../../org/apache/juneau/parser/ParserPipe.html" title="class in org.apache.juneau.parser">ParserPipe</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.140">createPipe</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input)</pre>
 <div class="block">Wraps the specified input object into a <a href="../../../../org/apache/juneau/parser/ParserPipe.html" title="class in org.apache.juneau.parser"><code>ParserPipe</code></a> object so that it can be easily converted into
  a stream or reader.</div>
 <dl>
@@ -502,7 +502,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>getLastLocation</h4>
-<pre>public final&nbsp;<a href="../../../../org/apache/juneau/ObjectMap.html" title="class in org.apache.juneau">ObjectMap</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.151">getLastLocation</a>()</pre>
+<pre>public final&nbsp;<a href="../../../../org/apache/juneau/ObjectMap.html" title="class in org.apache.juneau">ObjectMap</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.149">getLastLocation</a>()</pre>
 <div class="block">Returns information used to determine at what location in the parse a failure occurred.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -516,7 +516,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>getJavaMethod</h4>
-<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.169">getJavaMethod</a>()</pre>
+<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.167">getJavaMethod</a>()</pre>
 <div class="block">Returns the Java method that invoked this parser.
 
  <p>
@@ -534,7 +534,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>getOuter</h4>
-<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.181">getOuter</a>()</pre>
+<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.179">getOuter</a>()</pre>
 <div class="block">Returns the outer object used for instantiating top-level non-static member classes.
 
  <p>
@@ -551,7 +551,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>setCurrentProperty</h4>
-<pre>protected final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.190">setCurrentProperty</a>(<a href="../../../../org/apache/juneau/BeanPropertyMeta.html" title="class in org.apache.juneau">BeanPropertyMeta</a>&nbsp;currentProperty)</pre>
+<pre>protected final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.188">setCurrentProperty</a>(<a href="../../../../org/apache/juneau/BeanPropertyMeta.html" title="class in org.apache.juneau">BeanPropertyMeta</a>&nbsp;currentProperty)</pre>
 <div class="block">Sets the current bean property being parsed for proper error messages.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -565,7 +565,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>setCurrentClass</h4>
-<pre>protected final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.199">setCurrentClass</a>(<a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;currentClass)</pre>
+<pre>protected final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.197">setCurrentClass</a>(<a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;currentClass)</pre>
 <div class="block">Sets the current class being parsed for proper error messages.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -579,7 +579,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>isTrimStrings</h4>
-<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.208">isTrimStrings</a>()</pre>
+<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.206">isTrimStrings</a>()</pre>
 <div class="block">Returns the <a href="../../../../org/apache/juneau/parser/ParserContext.html#PARSER_trimStrings"><code>ParserContext.PARSER_trimStrings</code></a> setting value for this session.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -593,7 +593,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>isStrict</h4>
-<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.217">isStrict</a>()</pre>
+<pre>protected final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.215">isStrict</a>()</pre>
 <div class="block">Returns the <a href="../../../../org/apache/juneau/parser/ParserContext.html#PARSER_strict"><code>ParserContext.PARSER_strict</code></a> setting value for this session.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -609,7 +609,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>trim</h4>
-<pre>protected final&nbsp;&lt;K&gt;&nbsp;K&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.228">trim</a>(K&nbsp;o)</pre>
+<pre>protected final&nbsp;&lt;K&gt;&nbsp;K&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.226">trim</a>(K&nbsp;o)</pre>
 <div class="block">Trims the specified object if it's a <code>String</code> and <a href="../../../../org/apache/juneau/parser/ParserSession.html#isTrimStrings--"><code>isTrimStrings()</code></a> returns <jk>true</jk>.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -625,7 +625,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>trim</h4>
-<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.241">trim</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;s)</pre>
+<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.239">trim</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;s)</pre>
 <div class="block">Trims the specified string if <a href="../../../../org/apache/juneau/parser/ParserSession.html#isTrimStrings--"><code>isTrimStrings()</code></a> returns <jk>true</jk>.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -641,7 +641,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>cast</h4>
-<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.256">cast</a>(<a href="../../../../org/apache/juneau/ObjectMap.html" title="class in org.apache.juneau">ObjectMap</a>&nbsp;m,
+<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.254">cast</a>(<a href="../../../../org/apache/juneau/ObjectMap.html" title="class in org.apache.juneau">ObjectMap</a>&nbsp;m,
                             <a href="../../../../org/apache/juneau/BeanPropertyMeta.html" title="class in org.apache.juneau">BeanPropertyMeta</a>&nbsp;pMeta,
                             <a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;eType)</pre>
 <div class="block">Converts the specified <code>ObjectMap</code> into a bean identified by the <js>"_type"</js> property in the map.</div>
@@ -661,7 +661,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>getClassMeta</h4>
-<pre>protected final&nbsp;<a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.295">getClassMeta</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;typeName,
+<pre>protected final&nbsp;<a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.293">getClassMeta</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;typeName,
                                           <a href="../../../../org/apache/juneau/BeanPropertyMeta.html" title="class in org.apache.juneau">BeanPropertyMeta</a>&nbsp;pMeta,
                                           <a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;eType)</pre>
 <div class="block">Give the specified dictionary name, resolve it to a class.</div>
@@ -681,7 +681,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>onUnknownProperty</h4>
-<pre>protected final&nbsp;&lt;T&gt;&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.330">onUnknownProperty</a>(<a href="../../../../org/apache/juneau/parser/ParserPipe.html" title="class in org.apache.juneau.parser">ParserPipe</a>&nbsp;pipe,
+<pre>protected final&nbsp;&lt;T&gt;&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.328">onUnknownProperty</a>(<a href="../../../../org/apache/juneau/parser/ParserPipe.html" title="class in org.apache.juneau.parser">ParserPipe</a>&nbsp;pipe,
                                            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;propertyName,
                                            <a href="../../../../org/apache/juneau/BeanMap.html" title="class in org.apache.juneau">BeanMap</a>&lt;T&gt;&nbsp;beanMap,
                                            int&nbsp;line,
@@ -709,7 +709,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>parse</h4>
-<pre>public final&nbsp;&lt;T&gt;&nbsp;T&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.419">parse</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
+<pre>public final&nbsp;&lt;T&gt;&nbsp;T&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.417">parse</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
                          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>&nbsp;type,
                          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>...&nbsp;args)
                   throws <a href="../../../../org/apache/juneau/parser/ParseException.html" title="class in org.apache.juneau.parser">ParseException</a></pre>
@@ -797,7 +797,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>parse</h4>
-<pre>public final&nbsp;&lt;T&gt;&nbsp;T&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.463">parse</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
+<pre>public final&nbsp;&lt;T&gt;&nbsp;T&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.461">parse</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
                          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;T&gt;&nbsp;type)
                   throws <a href="../../../../org/apache/juneau/parser/ParseException.html" title="class in org.apache.juneau.parser">ParseException</a></pre>
 <div class="block">Same as <a href="../../../../org/apache/juneau/parser/ParserSession.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-"><code>parse(Object, Type, Type...)</code></a> except optimized for a non-parameterized class.
@@ -844,7 +844,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>parse</h4>
-<pre>public final&nbsp;&lt;T&gt;&nbsp;T&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.488">parse</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
+<pre>public final&nbsp;&lt;T&gt;&nbsp;T&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.486">parse</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
                          <a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;T&gt;&nbsp;type)
                   throws <a href="../../../../org/apache/juneau/parser/ParseException.html" title="class in org.apache.juneau.parser">ParseException</a></pre>
 <div class="block">Same as <a href="../../../../org/apache/juneau/parser/ParserSession.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-"><code>parse(Object, Type, Type...)</code></a> except the type has already been converted into a <a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau"><code>ClassMeta</code></a>
@@ -872,7 +872,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>parseIntoMap</h4>
-<pre>public final&nbsp;&lt;K,V&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;K,V&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.553">parseIntoMap</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
+<pre>public final&nbsp;&lt;K,V&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;K,V&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.551">parseIntoMap</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
                                          <a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;K,V&gt;&nbsp;m,
                                          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>&nbsp;keyType,
                                          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>&nbsp;valueType)
@@ -912,7 +912,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>doParseIntoMap</h4>
-<pre>protected&nbsp;&lt;K,V&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;K,V&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.579">doParseIntoMap</a>(<a href="../../../../org/apache/juneau/parser/ParserPipe.html" title="class in org.apache.juneau.parser">ParserPipe</a>&nbsp;pipe,
+<pre>protected&nbsp;&lt;K,V&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;K,V&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.577">doParseIntoMap</a>(<a href="../../../../org/apache/juneau/parser/ParserPipe.html" title="class in org.apache.juneau.parser">ParserPipe</a>&nbsp;pipe,
                                         <a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;K,V&gt;&nbsp;m,
                                         <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>&nbsp;keyType,
                                         <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>&nbsp;valueType)
@@ -940,7 +940,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>parseIntoCollection</h4>
-<pre>public final&nbsp;&lt;E&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;E&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.603">parseIntoCollection</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
+<pre>public final&nbsp;&lt;E&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;E&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.601">parseIntoCollection</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
                                                    <a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;E&gt;&nbsp;c,
                                                    <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>&nbsp;elementType)
                                             throws <a href="../../../../org/apache/juneau/parser/ParseException.html" title="class in org.apache.juneau.parser">ParseException</a></pre>
@@ -974,7 +974,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>doParseIntoCollection</h4>
-<pre>protected&nbsp;&lt;E&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;E&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.634">doParseIntoCollection</a>(<a href="../../../../org/apache/juneau/parser/ParserPipe.html" title="class in org.apache.juneau.parser">ParserPipe</a>&nbsp;pipe,
+<pre>protected&nbsp;&lt;E&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;E&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.632">doParseIntoCollection</a>(<a href="../../../../org/apache/juneau/parser/ParserPipe.html" title="class in org.apache.juneau.parser">ParserPipe</a>&nbsp;pipe,
                                                   <a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;E&gt;&nbsp;c,
                                                   <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>&nbsp;elementType)
                                            throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
@@ -1000,7 +1000,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>parseArgs</h4>
-<pre>public final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.659">parseArgs</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
+<pre>public final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>[]&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.657">parseArgs</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;input,
                                 <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>[]&nbsp;argTypes)
                          throws <a href="../../../../org/apache/juneau/parser/ParseException.html" title="class in org.apache.juneau.parser">ParseException</a></pre>
 <div class="block">Parses the specified array input with each entry in the object defined by the <code>argTypes</code>
@@ -1033,7 +1033,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>convertAttrToType</h4>
-<pre>protected final&nbsp;&lt;T&gt;&nbsp;T&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.691">convertAttrToType</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;outer,
+<pre>protected final&nbsp;&lt;T&gt;&nbsp;T&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.689">convertAttrToType</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;outer,
                                         <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;s,
                                         <a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;T&gt;&nbsp;type)
                                  throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
@@ -1059,7 +1059,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockList">
 <li class="blockList">
 <h4>setParent</h4>
-<pre>protected static final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.732">setParent</a>(<a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;cm,
+<pre>protected static final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.730">setParent</a>(<a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;cm,
                                       <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o,
                                       <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;parent)
                                throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
@@ -1081,7 +1081,7 @@ extends <a href="../../../../org/apache/juneau/BeanSession.html" title="class in
 <ul class="blockListLast">
 <li class="blockList">
 <h4>setName</h4>
-<pre>protected static final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.746">setName</a>(<a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;cm,
+<pre>protected static final&nbsp;void&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSession.html#line.744">setName</a>(<a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;?&gt;&nbsp;cm,
                                     <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;o,
                                     <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;name)
                              throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/parser/ParserSessionArgs.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/parser/ParserSessionArgs.html b/content/site/apidocs/org/apache/juneau/parser/ParserSessionArgs.html
index f086d61..ff3bb6b 100644
--- a/content/site/apidocs/org/apache/juneau/parser/ParserSessionArgs.html
+++ b/content/site/apidocs/org/apache/juneau/parser/ParserSessionArgs.html
@@ -68,13 +68,13 @@
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
 <li>Nested&nbsp;|&nbsp;</li>
-<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#methods.inherited.from.class.java.lang.Object">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
-<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
 <li>Method</li>
 </ul>
@@ -121,27 +121,6 @@ extends <a href="../../../../org/apache/juneau/BeanSessionArgs.html" title="clas
 <div class="summary">
 <ul class="blockList">
 <li class="blockList">
-<!-- =========== FIELD SUMMARY =========== -->
-<ul class="blockList">
-<li class="blockList"><a name="field.summary">
-<!--   -->
-</a>
-<h3>Field Summary</h3>
-<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
-<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colLast" scope="col">Field and Description</th>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>protected static <a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html#DEFAULT">DEFAULT</a></span></code>
-<div class="block">Default session arguments.</div>
-</td>
-</tr>
-</table>
-</li>
-</ul>
 <!-- ======== CONSTRUCTOR SUMMARY ======== -->
 <ul class="blockList">
 <li class="blockList"><a name="constructor.summary">
@@ -187,24 +166,6 @@ extends <a href="../../../../org/apache/juneau/BeanSessionArgs.html" title="clas
 <div class="details">
 <ul class="blockList">
 <li class="blockList">
-<!-- ============ FIELD DETAIL =========== -->
-<ul class="blockList">
-<li class="blockList"><a name="field.detail">
-<!--   -->
-</a>
-<h3>Field Detail</h3>
-<a name="DEFAULT">
-<!--   -->
-</a>
-<ul class="blockListLast">
-<li class="blockList">
-<h4>DEFAULT</h4>
-<pre>protected static final&nbsp;<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a> <a href="../../../../src-html/org/apache/juneau/parser/ParserSessionArgs.html#line.29">DEFAULT</a></pre>
-<div class="block">Default session arguments.</div>
-</li>
-</ul>
-</li>
-</ul>
 <!-- ========= CONSTRUCTOR DETAIL ======== -->
 <ul class="blockList">
 <li class="blockList"><a name="constructor.detail">
@@ -217,7 +178,7 @@ extends <a href="../../../../org/apache/juneau/BeanSessionArgs.html" title="clas
 <ul class="blockListLast">
 <li class="blockList">
 <h4>ParserSessionArgs</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSessionArgs.html#line.56">ParserSessionArgs</a>(<a href="../../../../org/apache/juneau/ObjectMap.html" title="class in org.apache.juneau">ObjectMap</a>&nbsp;properties,
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ParserSessionArgs.html#line.51">ParserSessionArgs</a>(<a href="../../../../org/apache/juneau/ObjectMap.html" title="class in org.apache.juneau">ObjectMap</a>&nbsp;properties,
                          <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a>&nbsp;javaMethod,
                          <a href="http://docs.oracle.com/javase/7/docs/api/java/util/Locale.html?is-external=true" title="class or interface in java.util">Locale</a>&nbsp;locale,
                          <a href="http://docs.oracle.com/javase/7/docs/api/java/util/TimeZone.html?is-external=true" title="class or interface in java.util">TimeZone</a>&nbsp;timeZone,
@@ -294,13 +255,13 @@ extends <a href="../../../../org/apache/juneau/BeanSessionArgs.html" title="clas
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
 <li>Nested&nbsp;|&nbsp;</li>
-<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#methods.inherited.from.class.java.lang.Object">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
-<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
 <li>Method</li>
 </ul>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/parser/ReaderParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/parser/ReaderParser.html b/content/site/apidocs/org/apache/juneau/parser/ReaderParser.html
index 41eddca..e8d8af1 100644
--- a/content/site/apidocs/org/apache/juneau/parser/ReaderParser.html
+++ b/content/site/apidocs/org/apache/juneau/parser/ReaderParser.html
@@ -122,7 +122,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre>public abstract class <a href="../../../../src-html/org/apache/juneau/parser/ReaderParser.html#line.36">ReaderParser</a>
+<pre>public abstract class <a href="../../../../src-html/org/apache/juneau/parser/ReaderParser.html#line.28">ReaderParser</a>
 extends <a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser">Parser</a></pre>
 <div class="block">Subclass of <a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser"><code>Parser</code></a> for characters-based parsers.
 
@@ -132,14 +132,7 @@ extends <a href="../../../../org/apache/juneau/parser/Parser.html" title="class
  It has 1 abstract method to implement...
  <ul>
    <li><code>parse(ParserSession, ClassMeta)</code>
- </ul>
-
- <h6 class='topic'>@Consumes annotation</h6>
-
- The media types that this parser can handle is specified through the <a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation"><code>@Consumes</code></a> annotation.
-
- <p>
- However, the media types can also be specified programmatically by overriding the <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--"><code>Parser.getMediaTypes()</code></a> method.</div>
+ </ul></div>
 </li>
 </ul>
 </div>
@@ -175,7 +168,8 @@ extends <a href="../../../../org/apache/juneau/parser/Parser.html" title="class
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected </code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/parser/ReaderParser.html#ReaderParser-org.apache.juneau.PropertyStore-">ReaderParser</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</code>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/parser/ReaderParser.html#ReaderParser-org.apache.juneau.PropertyStore-java.lang.String...-">ReaderParser</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;consumes)</code>
 <div class="block">Constructor.</div>
 </td>
 </tr>
@@ -206,7 +200,7 @@ extends <a href="../../../../org/apache/juneau/parser/Parser.html" title="class
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.parser.<a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser">Parser</a></h3>
-<code><a href="../../../../org/apache/juneau/parser/Parser.html#builder--">builder</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession-org.apache.juneau.parser.ParserSessionArgs-">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.T
 ype:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-java.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
+<code><a href="../../../../org/apache/juneau/parser/Parser.html#builder--">builder</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession-org.apache.juneau.parser.ParserSessionArgs-">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-"
 >parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-java.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -236,17 +230,19 @@ extends <a href="../../../../org/apache/juneau/parser/Parser.html" title="class
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
-<a name="ReaderParser-org.apache.juneau.PropertyStore-">
+<a name="ReaderParser-org.apache.juneau.PropertyStore-java.lang.String...-">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>ReaderParser</h4>
-<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ReaderParser.html#line.43">ReaderParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ReaderParser.html#line.36">ReaderParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                       <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;consumes)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+<dd><code>consumes</code> - The list of media types that this parser consumes (e.g. <js>"application/json"</js>, <js>"*&#8203;/json"</js>).</dd>
 </dl>
 </li>
 </ul>
@@ -264,7 +260,7 @@ extends <a href="../../../../org/apache/juneau/parser/Parser.html" title="class
 <ul class="blockListLast">
 <li class="blockList">
 <h4>isReaderParser</h4>
-<pre>public final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ReaderParser.html#line.48">isReaderParser</a>()</pre>
+<pre>public final&nbsp;boolean&nbsp;<a href="../../../../src-html/org/apache/juneau/parser/ReaderParser.html#line.41">isReaderParser</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/parser/Parser.html#isReaderParser--">Parser</a></code></span></div>
 <div class="block">Returns <jk>true</jk> if this parser subclasses from <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="class in org.apache.juneau.parser"><code>ReaderParser</code></a>.</div>
 <dl>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/parser/package-summary.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/parser/package-summary.html b/content/site/apidocs/org/apache/juneau/parser/package-summary.html
index 4aacd2b..4744e4d 100644
--- a/content/site/apidocs/org/apache/juneau/parser/package-summary.html
+++ b/content/site/apidocs/org/apache/juneau/parser/package-summary.html
@@ -293,15 +293,13 @@
    <p>
       Defining a new parser is quite simple if you subclass directly from <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="class in org.apache.juneau.parser"><code>ReaderParser</code></a> 
       or <a href="../../../../org/apache/juneau/parser/InputStreamParser.html" title="class in org.apache.juneau.parser"><code>InputStreamParser</code></a>.  
-      In each case, you simply need to implement a single method and specify a 
-      <a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation"><code>Consumes</code></a> annotation.
+      In each case, you simply need to implement a single method .
    </p>
    <p>
       The following example shows a simple parser that converts input streams to images using standard JRE classes.
    </p>
    <p class='bcode'>
    <jd>/** Parser for converting byte streams to images */</jd>
-   <ja>@Consumes</ja>(<js>"image/png,image/jpeg"</js>)
    <jk>public class</jk> ImageParser <jk>extends</jk> InputStreamParser {
 
       <jd>/**
@@ -309,7 +307,7 @@
        * <ja>@param</ja> propertyStore The property store containing all the settings for this object.
        */</jd>
       <jk>public</jk> ImageParser(PropertyStore propertyStore) {
-         <jk>super</jk>(propertyStore);
+         <jk>super</jk>(propertyStore, <js>"image/png"</js>, <js>"image/jpeg"</js>);
       }
 
       <ja>@Override</ja> <jc>/* Parser */</jc>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/plaintext/PlainTextParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/plaintext/PlainTextParser.html b/content/site/apidocs/org/apache/juneau/plaintext/PlainTextParser.html
index e0199a5..85c11c4 100644
--- a/content/site/apidocs/org/apache/juneau/plaintext/PlainTextParser.html
+++ b/content/site/apidocs/org/apache/juneau/plaintext/PlainTextParser.html
@@ -123,8 +123,7 @@ var activeTableTab = "activeTableTab";
 <li class="blockList">
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation">@Consumes</a>(<a href="../../../../org/apache/juneau/annotation/Consumes.html#value--">value</a>="text/plain")
-public class <a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextParser.html#line.48">PlainTextParser</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextParser.html#line.46">PlainTextParser</a>
 extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="class in org.apache.juneau.parser">ReaderParser</a></pre>
 <div class="block">Parsers HTTP plain text request bodies into <a class="doclink" href="../../../../overview-summary.html#Core.PojoCategories">Group 5</a>
  POJOs.
@@ -201,6 +200,12 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <div class="block">Constructor.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/plaintext/PlainTextParser.html#PlainTextParser-org.apache.juneau.PropertyStore-java.lang.String...-">PlainTextParser</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+               <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;consumes)</code>
+<div class="block">Constructor.</div>
+</td>
+</tr>
 </table>
 </li>
 </ul>
@@ -242,7 +247,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.parser.<a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser">Parser</a></h3>
-<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-java.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apac
 he/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
+<code><a href="../../../../org/apache/juneau/parser/Parser.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-j
 ava.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -278,7 +283,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DEFAULT</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/plaintext/PlainTextParser.html" title="class in org.apache.juneau.plaintext">PlainTextParser</a> <a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextParser.html#line.51">DEFAULT</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/plaintext/PlainTextParser.html" title="class in org.apache.juneau.plaintext">PlainTextParser</a> <a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextParser.html#line.49">DEFAULT</a></pre>
 <div class="block">Default parser, all default settings.</div>
 </li>
 </ul>
@@ -293,14 +298,33 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <a name="PlainTextParser-org.apache.juneau.PropertyStore-">
 <!--   -->
 </a>
+<ul class="blockList">
+<li class="blockList">
+<h4>PlainTextParser</h4>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextParser.html#line.57">PlainTextParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<div class="block">Constructor.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+</dl>
+</li>
+</ul>
+<a name="PlainTextParser-org.apache.juneau.PropertyStore-java.lang.String...-">
+<!--   -->
+</a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>PlainTextParser</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextParser.html#line.59">PlainTextParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextParser.html#line.70">PlainTextParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                       <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;consumes)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+<dd><code>consumes</code> - The media types that this parser consumes.
+   <p>
+   Can contain meta-characters per the <code>media-type</code> specification of
+   <a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1">RFC2616/14.1</a></dd>
 </dl>
 </li>
 </ul>
@@ -318,7 +342,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockList">
 <li class="blockList">
 <h4>builder</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/plaintext/PlainTextParserBuilder.html" title="class in org.apache.juneau.plaintext">PlainTextParserBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextParser.html#line.64">builder</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/plaintext/PlainTextParserBuilder.html" title="class in org.apache.juneau.plaintext">PlainTextParserBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextParser.html#line.75">builder</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/CoreObject.html#builder--">CoreObject</a></code></span></div>
 <div class="block">Creates a new builder class for this object so that a new object can be created that expands upon the current
  object's settings.</div>
@@ -336,7 +360,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/parser/ReaderParserSession.html" title="class in org.apache.juneau.parser">ReaderParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextParser.html#line.69">createSession</a>(<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/parser/ReaderParserSession.html" title="class in org.apache.juneau.parser">ReaderParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/plaintext/PlainTextParser.html#line.80">createSession</a>(<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession-org.apache.juneau.parser.ParserSessionArgs-">Parser</a></code></span></div>
 <div class="block">Create the session object that will be passed in to the parse method.
 


[16/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/uon/UonParserSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/uon/UonParserSession.html b/content/site/apidocs/src-html/org/apache/juneau/uon/UonParserSession.html
index def4de6..eb343d0 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/uon/UonParserSession.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/uon/UonParserSession.html
@@ -76,699 +76,705 @@
 <span class="sourceLineNo">068</span>    * The main difference is that characters are never decoded, and the {@link UonParserContext#UON_decodeChars}<a name="line.68"></a>
 <span class="sourceLineNo">069</span>    * property is always ignored.<a name="line.69"></a>
 <span class="sourceLineNo">070</span>    *<a name="line.70"></a>
-<span class="sourceLineNo">071</span>    * @param ctx The context to copy setting from.<a name="line.71"></a>
-<span class="sourceLineNo">072</span>    */<a name="line.72"></a>
-<span class="sourceLineNo">073</span>   protected UonParserSession(UonParserContext ctx) {<a name="line.73"></a>
-<span class="sourceLineNo">074</span>      super(ctx, null);<a name="line.74"></a>
-<span class="sourceLineNo">075</span>      decodeChars = false;<a name="line.75"></a>
-<span class="sourceLineNo">076</span>   }<a name="line.76"></a>
-<span class="sourceLineNo">077</span><a name="line.77"></a>
-<span class="sourceLineNo">078</span>   @Override /* ParserSession */<a name="line.78"></a>
-<span class="sourceLineNo">079</span>   protected &lt;T&gt; T doParse(ParserPipe pipe, ClassMeta&lt;T&gt; type) throws Exception {<a name="line.79"></a>
-<span class="sourceLineNo">080</span>      UonReader r = getUonReader(pipe, decodeChars);<a name="line.80"></a>
-<span class="sourceLineNo">081</span>      T o = parseAnything(type, r, getOuter(), true, null);<a name="line.81"></a>
-<span class="sourceLineNo">082</span>      validateEnd(r);<a name="line.82"></a>
-<span class="sourceLineNo">083</span>      return o;<a name="line.83"></a>
-<span class="sourceLineNo">084</span>   }<a name="line.84"></a>
-<span class="sourceLineNo">085</span><a name="line.85"></a>
-<span class="sourceLineNo">086</span>   @Override /* ReaderParserSession */<a name="line.86"></a>
-<span class="sourceLineNo">087</span>   protected &lt;K,V&gt; Map&lt;K,V&gt; doParseIntoMap(ParserPipe pipe, Map&lt;K,V&gt; m, Type keyType, Type valueType) throws Exception {<a name="line.87"></a>
-<span class="sourceLineNo">088</span>      UonReader r = getUonReader(pipe, decodeChars);<a name="line.88"></a>
-<span class="sourceLineNo">089</span>      m = parseIntoMap(r, m, (ClassMeta&lt;K&gt;)getClassMeta(keyType), (ClassMeta&lt;V&gt;)getClassMeta(valueType), null);<a name="line.89"></a>
-<span class="sourceLineNo">090</span>      validateEnd(r);<a name="line.90"></a>
-<span class="sourceLineNo">091</span>      return m;<a name="line.91"></a>
-<span class="sourceLineNo">092</span>   }<a name="line.92"></a>
-<span class="sourceLineNo">093</span><a name="line.93"></a>
-<span class="sourceLineNo">094</span>   @Override /* ReaderParserSession */<a name="line.94"></a>
-<span class="sourceLineNo">095</span>   protected &lt;E&gt; Collection&lt;E&gt; doParseIntoCollection(ParserPipe pipe, Collection&lt;E&gt; c, Type elementType) throws Exception {<a name="line.95"></a>
-<span class="sourceLineNo">096</span>      UonReader r = getUonReader(pipe, decodeChars);<a name="line.96"></a>
-<span class="sourceLineNo">097</span>      c = parseIntoCollection(r, c, (ClassMeta&lt;E&gt;)getClassMeta(elementType), false, null);<a name="line.97"></a>
-<span class="sourceLineNo">098</span>      validateEnd(r);<a name="line.98"></a>
-<span class="sourceLineNo">099</span>      return c;<a name="line.99"></a>
-<span class="sourceLineNo">100</span>   }<a name="line.100"></a>
-<span class="sourceLineNo">101</span><a name="line.101"></a>
-<span class="sourceLineNo">102</span>   /**<a name="line.102"></a>
-<span class="sourceLineNo">103</span>    * Workhorse method.<a name="line.103"></a>
-<span class="sourceLineNo">104</span>    *<a name="line.104"></a>
-<span class="sourceLineNo">105</span>    * @param eType The class type being parsed, or &lt;jk&gt;null&lt;/jk&gt; if unknown.<a name="line.105"></a>
-<span class="sourceLineNo">106</span>    * @param r The reader being parsed.<a name="line.106"></a>
-<span class="sourceLineNo">107</span>    * @param outer The outer object (for constructing nested inner classes).<a name="line.107"></a>
-<span class="sourceLineNo">108</span>    * @param isUrlParamValue<a name="line.108"></a>
-<span class="sourceLineNo">109</span>    *    If &lt;jk&gt;true&lt;/jk&gt;, then we're parsing a top-level URL-encoded value which is treated a bit different than the<a name="line.109"></a>
-<span class="sourceLineNo">110</span>    *    default case.<a name="line.110"></a>
-<span class="sourceLineNo">111</span>    * @param pMeta The current bean property being parsed.<a name="line.111"></a>
-<span class="sourceLineNo">112</span>    * @return The parsed object.<a name="line.112"></a>
-<span class="sourceLineNo">113</span>    * @throws Exception<a name="line.113"></a>
-<span class="sourceLineNo">114</span>    */<a name="line.114"></a>
-<span class="sourceLineNo">115</span>   public &lt;T&gt; T parseAnything(ClassMeta&lt;T&gt; eType, UonReader r, Object outer, boolean isUrlParamValue, BeanPropertyMeta pMeta) throws Exception {<a name="line.115"></a>
-<span class="sourceLineNo">116</span><a name="line.116"></a>
-<span class="sourceLineNo">117</span>      if (eType == null)<a name="line.117"></a>
-<span class="sourceLineNo">118</span>         eType = (ClassMeta&lt;T&gt;)object();<a name="line.118"></a>
-<span class="sourceLineNo">119</span>      PojoSwap&lt;T,Object&gt; transform = (PojoSwap&lt;T,Object&gt;)eType.getPojoSwap();<a name="line.119"></a>
-<span class="sourceLineNo">120</span>      ClassMeta&lt;?&gt; sType = eType.getSerializedClassMeta();<a name="line.120"></a>
-<span class="sourceLineNo">121</span><a name="line.121"></a>
-<span class="sourceLineNo">122</span>      Object o = null;<a name="line.122"></a>
-<span class="sourceLineNo">123</span><a name="line.123"></a>
-<span class="sourceLineNo">124</span>      int c = r.peekSkipWs();<a name="line.124"></a>
-<span class="sourceLineNo">125</span><a name="line.125"></a>
-<span class="sourceLineNo">126</span>      if (c == -1 || c == AMP) {<a name="line.126"></a>
-<span class="sourceLineNo">127</span>         // If parameter is blank and it's an array or collection, return an empty list.<a name="line.127"></a>
-<span class="sourceLineNo">128</span>         if (sType.isCollectionOrArray())<a name="line.128"></a>
-<span class="sourceLineNo">129</span>            o = sType.newInstance();<a name="line.129"></a>
-<span class="sourceLineNo">130</span>         else if (sType.isString() || sType.isObject())<a name="line.130"></a>
-<span class="sourceLineNo">131</span>            o = "";<a name="line.131"></a>
-<span class="sourceLineNo">132</span>         else if (sType.isPrimitive())<a name="line.132"></a>
-<span class="sourceLineNo">133</span>            o = sType.getPrimitiveDefault();<a name="line.133"></a>
-<span class="sourceLineNo">134</span>         // Otherwise, leave null.<a name="line.134"></a>
-<span class="sourceLineNo">135</span>      } else if (sType.isVoid()) {<a name="line.135"></a>
-<span class="sourceLineNo">136</span>         String s = parseString(r, isUrlParamValue);<a name="line.136"></a>
-<span class="sourceLineNo">137</span>         if (s != null)<a name="line.137"></a>
-<span class="sourceLineNo">138</span>            throw new ParseException(loc(r), "Expected ''null'' for void value, but was ''{0}''.", s);<a name="line.138"></a>
-<span class="sourceLineNo">139</span>      } else if (sType.isObject()) {<a name="line.139"></a>
-<span class="sourceLineNo">140</span>         if (c == '(') {<a name="line.140"></a>
-<span class="sourceLineNo">141</span>            ObjectMap m = new ObjectMap(this);<a name="line.141"></a>
-<span class="sourceLineNo">142</span>            parseIntoMap(r, m, string(), object(), pMeta);<a name="line.142"></a>
-<span class="sourceLineNo">143</span>            o = cast(m, pMeta, eType);<a name="line.143"></a>
-<span class="sourceLineNo">144</span>         } else if (c == '@') {<a name="line.144"></a>
-<span class="sourceLineNo">145</span>            Collection l = new ObjectList(this);<a name="line.145"></a>
-<span class="sourceLineNo">146</span>            o = parseIntoCollection(r, l, sType, isUrlParamValue, pMeta);<a name="line.146"></a>
-<span class="sourceLineNo">147</span>         } else {<a name="line.147"></a>
-<span class="sourceLineNo">148</span>            String s = parseString(r, isUrlParamValue);<a name="line.148"></a>
-<span class="sourceLineNo">149</span>            if (c != '\'') {<a name="line.149"></a>
-<span class="sourceLineNo">150</span>               if ("true".equals(s) || "false".equals(s))<a name="line.150"></a>
-<span class="sourceLineNo">151</span>                  o = Boolean.valueOf(s);<a name="line.151"></a>
-<span class="sourceLineNo">152</span>               else if (! "null".equals(s)) {<a name="line.152"></a>
-<span class="sourceLineNo">153</span>                  if (isNumeric(s))<a name="line.153"></a>
-<span class="sourceLineNo">154</span>                     o = StringUtils.parseNumber(s, Number.class);<a name="line.154"></a>
-<span class="sourceLineNo">155</span>                  else<a name="line.155"></a>
-<span class="sourceLineNo">156</span>                     o = s;<a name="line.156"></a>
-<span class="sourceLineNo">157</span>               }<a name="line.157"></a>
-<span class="sourceLineNo">158</span>            } else {<a name="line.158"></a>
-<span class="sourceLineNo">159</span>               o = s;<a name="line.159"></a>
-<span class="sourceLineNo">160</span>            }<a name="line.160"></a>
-<span class="sourceLineNo">161</span>         }<a name="line.161"></a>
-<span class="sourceLineNo">162</span>      } else if (sType.isBoolean()) {<a name="line.162"></a>
-<span class="sourceLineNo">163</span>         o = parseBoolean(r);<a name="line.163"></a>
-<span class="sourceLineNo">164</span>      } else if (sType.isCharSequence()) {<a name="line.164"></a>
-<span class="sourceLineNo">165</span>         o = parseString(r, isUrlParamValue);<a name="line.165"></a>
-<span class="sourceLineNo">166</span>      } else if (sType.isChar()) {<a name="line.166"></a>
-<span class="sourceLineNo">167</span>         String s = parseString(r, isUrlParamValue);<a name="line.167"></a>
-<span class="sourceLineNo">168</span>         o = s == null ? null : s.charAt(0);<a name="line.168"></a>
-<span class="sourceLineNo">169</span>      } else if (sType.isNumber()) {<a name="line.169"></a>
-<span class="sourceLineNo">170</span>         o = parseNumber(r, (Class&lt;? extends Number&gt;)sType.getInnerClass());<a name="line.170"></a>
-<span class="sourceLineNo">171</span>      } else if (sType.isMap()) {<a name="line.171"></a>
-<span class="sourceLineNo">172</span>         Map m = (sType.canCreateNewInstance(outer) ? (Map)sType.newInstance(outer) : new ObjectMap(this));<a name="line.172"></a>
-<span class="sourceLineNo">173</span>         o = parseIntoMap(r, m, sType.getKeyType(), sType.getValueType(), pMeta);<a name="line.173"></a>
-<span class="sourceLineNo">174</span>      } else if (sType.isCollection()) {<a name="line.174"></a>
-<span class="sourceLineNo">175</span>         if (c == '(') {<a name="line.175"></a>
-<span class="sourceLineNo">176</span>            ObjectMap m = new ObjectMap(this);<a name="line.176"></a>
-<span class="sourceLineNo">177</span>            parseIntoMap(r, m, string(), object(), pMeta);<a name="line.177"></a>
-<span class="sourceLineNo">178</span>            // Handle case where it's a collection, but serialized as a map with a _type or _value key.<a name="line.178"></a>
-<span class="sourceLineNo">179</span>            if (m.containsKey(getBeanTypePropertyName(sType)))<a name="line.179"></a>
-<span class="sourceLineNo">180</span>               o = cast(m, pMeta, eType);<a name="line.180"></a>
-<span class="sourceLineNo">181</span>            // Handle case where it's a collection, but only a single value was specified.<a name="line.181"></a>
-<span class="sourceLineNo">182</span>            else {<a name="line.182"></a>
-<span class="sourceLineNo">183</span>               Collection l = (<a name="line.183"></a>
-<span class="sourceLineNo">184</span>                  sType.canCreateNewInstance(outer)<a name="line.184"></a>
-<span class="sourceLineNo">185</span>                  ? (Collection)sType.newInstance(outer)<a name="line.185"></a>
-<span class="sourceLineNo">186</span>                  : new ObjectList(this)<a name="line.186"></a>
-<span class="sourceLineNo">187</span>               );<a name="line.187"></a>
-<span class="sourceLineNo">188</span>               l.add(m.cast(sType.getElementType()));<a name="line.188"></a>
-<span class="sourceLineNo">189</span>               o = l;<a name="line.189"></a>
-<span class="sourceLineNo">190</span>            }<a name="line.190"></a>
-<span class="sourceLineNo">191</span>         } else {<a name="line.191"></a>
-<span class="sourceLineNo">192</span>            Collection l = (<a name="line.192"></a>
-<span class="sourceLineNo">193</span>               sType.canCreateNewInstance(outer)<a name="line.193"></a>
-<span class="sourceLineNo">194</span>               ? (Collection)sType.newInstance(outer)<a name="line.194"></a>
-<span class="sourceLineNo">195</span>               : new ObjectList(this)<a name="line.195"></a>
-<span class="sourceLineNo">196</span>            );<a name="line.196"></a>
-<span class="sourceLineNo">197</span>            o = parseIntoCollection(r, l, sType, isUrlParamValue, pMeta);<a name="line.197"></a>
-<span class="sourceLineNo">198</span>         }<a name="line.198"></a>
-<span class="sourceLineNo">199</span>      } else if (sType.canCreateNewBean(outer)) {<a name="line.199"></a>
-<span class="sourceLineNo">200</span>         BeanMap m = newBeanMap(outer, sType.getInnerClass());<a name="line.200"></a>
-<span class="sourceLineNo">201</span>         m = parseIntoBeanMap(r, m);<a name="line.201"></a>
-<span class="sourceLineNo">202</span>         o = m == null ? null : m.getBean();<a name="line.202"></a>
-<span class="sourceLineNo">203</span>      } else if (sType.canCreateNewInstanceFromString(outer)) {<a name="line.203"></a>
-<span class="sourceLineNo">204</span>         String s = parseString(r, isUrlParamValue);<a name="line.204"></a>
-<span class="sourceLineNo">205</span>         if (s != null)<a name="line.205"></a>
-<span class="sourceLineNo">206</span>            o = sType.newInstanceFromString(outer, s);<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      } else if (sType.canCreateNewInstanceFromNumber(outer)) {<a name="line.207"></a>
-<span class="sourceLineNo">208</span>         o = sType.newInstanceFromNumber(this, outer, parseNumber(r, sType.getNewInstanceFromNumberClass()));<a name="line.208"></a>
-<span class="sourceLineNo">209</span>      } else if (sType.isArray() || sType.isArgs()) {<a name="line.209"></a>
-<span class="sourceLineNo">210</span>         if (c == '(') {<a name="line.210"></a>
-<span class="sourceLineNo">211</span>            ObjectMap m = new ObjectMap(this);<a name="line.211"></a>
-<span class="sourceLineNo">212</span>            parseIntoMap(r, m, string(), object(), pMeta);<a name="line.212"></a>
-<span class="sourceLineNo">213</span>            // Handle case where it's an array, but serialized as a map with a _type or _value key.<a name="line.213"></a>
-<span class="sourceLineNo">214</span>            if (m.containsKey(getBeanTypePropertyName(sType)))<a name="line.214"></a>
-<span class="sourceLineNo">215</span>               o = cast(m, pMeta, eType);<a name="line.215"></a>
-<span class="sourceLineNo">216</span>            // Handle case where it's an array, but only a single value was specified.<a name="line.216"></a>
-<span class="sourceLineNo">217</span>            else {<a name="line.217"></a>
-<span class="sourceLineNo">218</span>               ArrayList l = new ArrayList(1);<a name="line.218"></a>
-<span class="sourceLineNo">219</span>               l.add(m.cast(sType.getElementType()));<a name="line.219"></a>
-<span class="sourceLineNo">220</span>               o = toArray(sType, l);<a name="line.220"></a>
-<span class="sourceLineNo">221</span>            }<a name="line.221"></a>
-<span class="sourceLineNo">222</span>         } else {<a name="line.222"></a>
-<span class="sourceLineNo">223</span>            ArrayList l = (ArrayList)parseIntoCollection(r, new ArrayList(), sType, isUrlParamValue, pMeta);<a name="line.223"></a>
-<span class="sourceLineNo">224</span>            o = toArray(sType, l);<a name="line.224"></a>
-<span class="sourceLineNo">225</span>         }<a name="line.225"></a>
-<span class="sourceLineNo">226</span>      } else if (c == '(') {<a name="line.226"></a>
-<span class="sourceLineNo">227</span>         // It could be a non-bean with _type attribute.<a name="line.227"></a>
-<span class="sourceLineNo">228</span>         ObjectMap m = new ObjectMap(this);<a name="line.228"></a>
-<span class="sourceLineNo">229</span>         parseIntoMap(r, m, string(), object(), pMeta);<a name="line.229"></a>
-<span class="sourceLineNo">230</span>         if (m.containsKey(getBeanTypePropertyName(sType)))<a name="line.230"></a>
-<span class="sourceLineNo">231</span>            o = cast(m, pMeta, eType);<a name="line.231"></a>
-<span class="sourceLineNo">232</span>         else<a name="line.232"></a>
-<span class="sourceLineNo">233</span>            throw new ParseException(loc(r), "Class ''{0}'' could not be instantiated.  Reason: ''{1}''",<a name="line.233"></a>
-<span class="sourceLineNo">234</span>               sType.getInnerClass().getName(), sType.getNotABeanReason());<a name="line.234"></a>
-<span class="sourceLineNo">235</span>      } else if (c == 'n') {<a name="line.235"></a>
-<span class="sourceLineNo">236</span>         r.read();<a name="line.236"></a>
-<span class="sourceLineNo">237</span>         parseNull(r);<a name="line.237"></a>
-<span class="sourceLineNo">238</span>      } else {<a name="line.238"></a>
-<span class="sourceLineNo">239</span>         throw new ParseException(loc(r), "Class ''{0}'' could not be instantiated.  Reason: ''{1}''",<a name="line.239"></a>
-<span class="sourceLineNo">240</span>            sType.getInnerClass().getName(), sType.getNotABeanReason());<a name="line.240"></a>
-<span class="sourceLineNo">241</span>      }<a name="line.241"></a>
-<span class="sourceLineNo">242</span><a name="line.242"></a>
-<span class="sourceLineNo">243</span>      if (o == null &amp;&amp; sType.isPrimitive())<a name="line.243"></a>
-<span class="sourceLineNo">244</span>         o = sType.getPrimitiveDefault();<a name="line.244"></a>
-<span class="sourceLineNo">245</span>      if (transform != null &amp;&amp; o != null)<a name="line.245"></a>
-<span class="sourceLineNo">246</span>         o = transform.unswap(this, o, eType);<a name="line.246"></a>
-<span class="sourceLineNo">247</span><a name="line.247"></a>
-<span class="sourceLineNo">248</span>      if (outer != null)<a name="line.248"></a>
-<span class="sourceLineNo">249</span>         setParent(eType, o, outer);<a name="line.249"></a>
-<span class="sourceLineNo">250</span><a name="line.250"></a>
-<span class="sourceLineNo">251</span>      return (T)o;<a name="line.251"></a>
-<span class="sourceLineNo">252</span>   }<a name="line.252"></a>
+<span class="sourceLineNo">071</span>    * @param ctx<a name="line.71"></a>
+<span class="sourceLineNo">072</span>    *    The context creating this session object.<a name="line.72"></a>
+<span class="sourceLineNo">073</span>    *    The context contains all the configuration settings for this object.<a name="line.73"></a>
+<span class="sourceLineNo">074</span>    * @param args<a name="line.74"></a>
+<span class="sourceLineNo">075</span>    *    Runtime session arguments.<a name="line.75"></a>
+<span class="sourceLineNo">076</span>    * @param decodeChars<a name="line.76"></a>
+<span class="sourceLineNo">077</span>    *    Whether to decode characters.<a name="line.77"></a>
+<span class="sourceLineNo">078</span>    */<a name="line.78"></a>
+<span class="sourceLineNo">079</span>   protected UonParserSession(UonParserContext ctx, ParserSessionArgs args, boolean decodeChars) {<a name="line.79"></a>
+<span class="sourceLineNo">080</span>      super(ctx, args);<a name="line.80"></a>
+<span class="sourceLineNo">081</span>      this.decodeChars = decodeChars;<a name="line.81"></a>
+<span class="sourceLineNo">082</span>   }<a name="line.82"></a>
+<span class="sourceLineNo">083</span><a name="line.83"></a>
+<span class="sourceLineNo">084</span>   @Override /* ParserSession */<a name="line.84"></a>
+<span class="sourceLineNo">085</span>   protected &lt;T&gt; T doParse(ParserPipe pipe, ClassMeta&lt;T&gt; type) throws Exception {<a name="line.85"></a>
+<span class="sourceLineNo">086</span>      UonReader r = getUonReader(pipe, decodeChars);<a name="line.86"></a>
+<span class="sourceLineNo">087</span>      T o = parseAnything(type, r, getOuter(), true, null);<a name="line.87"></a>
+<span class="sourceLineNo">088</span>      validateEnd(r);<a name="line.88"></a>
+<span class="sourceLineNo">089</span>      return o;<a name="line.89"></a>
+<span class="sourceLineNo">090</span>   }<a name="line.90"></a>
+<span class="sourceLineNo">091</span><a name="line.91"></a>
+<span class="sourceLineNo">092</span>   @Override /* ReaderParserSession */<a name="line.92"></a>
+<span class="sourceLineNo">093</span>   protected &lt;K,V&gt; Map&lt;K,V&gt; doParseIntoMap(ParserPipe pipe, Map&lt;K,V&gt; m, Type keyType, Type valueType) throws Exception {<a name="line.93"></a>
+<span class="sourceLineNo">094</span>      UonReader r = getUonReader(pipe, decodeChars);<a name="line.94"></a>
+<span class="sourceLineNo">095</span>      m = parseIntoMap(r, m, (ClassMeta&lt;K&gt;)getClassMeta(keyType), (ClassMeta&lt;V&gt;)getClassMeta(valueType), null);<a name="line.95"></a>
+<span class="sourceLineNo">096</span>      validateEnd(r);<a name="line.96"></a>
+<span class="sourceLineNo">097</span>      return m;<a name="line.97"></a>
+<span class="sourceLineNo">098</span>   }<a name="line.98"></a>
+<span class="sourceLineNo">099</span><a name="line.99"></a>
+<span class="sourceLineNo">100</span>   @Override /* ReaderParserSession */<a name="line.100"></a>
+<span class="sourceLineNo">101</span>   protected &lt;E&gt; Collection&lt;E&gt; doParseIntoCollection(ParserPipe pipe, Collection&lt;E&gt; c, Type elementType) throws Exception {<a name="line.101"></a>
+<span class="sourceLineNo">102</span>      UonReader r = getUonReader(pipe, decodeChars);<a name="line.102"></a>
+<span class="sourceLineNo">103</span>      c = parseIntoCollection(r, c, (ClassMeta&lt;E&gt;)getClassMeta(elementType), false, null);<a name="line.103"></a>
+<span class="sourceLineNo">104</span>      validateEnd(r);<a name="line.104"></a>
+<span class="sourceLineNo">105</span>      return c;<a name="line.105"></a>
+<span class="sourceLineNo">106</span>   }<a name="line.106"></a>
+<span class="sourceLineNo">107</span><a name="line.107"></a>
+<span class="sourceLineNo">108</span>   /**<a name="line.108"></a>
+<span class="sourceLineNo">109</span>    * Workhorse method.<a name="line.109"></a>
+<span class="sourceLineNo">110</span>    *<a name="line.110"></a>
+<span class="sourceLineNo">111</span>    * @param eType The class type being parsed, or &lt;jk&gt;null&lt;/jk&gt; if unknown.<a name="line.111"></a>
+<span class="sourceLineNo">112</span>    * @param r The reader being parsed.<a name="line.112"></a>
+<span class="sourceLineNo">113</span>    * @param outer The outer object (for constructing nested inner classes).<a name="line.113"></a>
+<span class="sourceLineNo">114</span>    * @param isUrlParamValue<a name="line.114"></a>
+<span class="sourceLineNo">115</span>    *    If &lt;jk&gt;true&lt;/jk&gt;, then we're parsing a top-level URL-encoded value which is treated a bit different than the<a name="line.115"></a>
+<span class="sourceLineNo">116</span>    *    default case.<a name="line.116"></a>
+<span class="sourceLineNo">117</span>    * @param pMeta The current bean property being parsed.<a name="line.117"></a>
+<span class="sourceLineNo">118</span>    * @return The parsed object.<a name="line.118"></a>
+<span class="sourceLineNo">119</span>    * @throws Exception<a name="line.119"></a>
+<span class="sourceLineNo">120</span>    */<a name="line.120"></a>
+<span class="sourceLineNo">121</span>   public &lt;T&gt; T parseAnything(ClassMeta&lt;T&gt; eType, UonReader r, Object outer, boolean isUrlParamValue, BeanPropertyMeta pMeta) throws Exception {<a name="line.121"></a>
+<span class="sourceLineNo">122</span><a name="line.122"></a>
+<span class="sourceLineNo">123</span>      if (eType == null)<a name="line.123"></a>
+<span class="sourceLineNo">124</span>         eType = (ClassMeta&lt;T&gt;)object();<a name="line.124"></a>
+<span class="sourceLineNo">125</span>      PojoSwap&lt;T,Object&gt; transform = (PojoSwap&lt;T,Object&gt;)eType.getPojoSwap();<a name="line.125"></a>
+<span class="sourceLineNo">126</span>      ClassMeta&lt;?&gt; sType = eType.getSerializedClassMeta();<a name="line.126"></a>
+<span class="sourceLineNo">127</span><a name="line.127"></a>
+<span class="sourceLineNo">128</span>      Object o = null;<a name="line.128"></a>
+<span class="sourceLineNo">129</span><a name="line.129"></a>
+<span class="sourceLineNo">130</span>      int c = r.peekSkipWs();<a name="line.130"></a>
+<span class="sourceLineNo">131</span><a name="line.131"></a>
+<span class="sourceLineNo">132</span>      if (c == -1 || c == AMP) {<a name="line.132"></a>
+<span class="sourceLineNo">133</span>         // If parameter is blank and it's an array or collection, return an empty list.<a name="line.133"></a>
+<span class="sourceLineNo">134</span>         if (sType.isCollectionOrArray())<a name="line.134"></a>
+<span class="sourceLineNo">135</span>            o = sType.newInstance();<a name="line.135"></a>
+<span class="sourceLineNo">136</span>         else if (sType.isString() || sType.isObject())<a name="line.136"></a>
+<span class="sourceLineNo">137</span>            o = "";<a name="line.137"></a>
+<span class="sourceLineNo">138</span>         else if (sType.isPrimitive())<a name="line.138"></a>
+<span class="sourceLineNo">139</span>            o = sType.getPrimitiveDefault();<a name="line.139"></a>
+<span class="sourceLineNo">140</span>         // Otherwise, leave null.<a name="line.140"></a>
+<span class="sourceLineNo">141</span>      } else if (sType.isVoid()) {<a name="line.141"></a>
+<span class="sourceLineNo">142</span>         String s = parseString(r, isUrlParamValue);<a name="line.142"></a>
+<span class="sourceLineNo">143</span>         if (s != null)<a name="line.143"></a>
+<span class="sourceLineNo">144</span>            throw new ParseException(loc(r), "Expected ''null'' for void value, but was ''{0}''.", s);<a name="line.144"></a>
+<span class="sourceLineNo">145</span>      } else if (sType.isObject()) {<a name="line.145"></a>
+<span class="sourceLineNo">146</span>         if (c == '(') {<a name="line.146"></a>
+<span class="sourceLineNo">147</span>            ObjectMap m = new ObjectMap(this);<a name="line.147"></a>
+<span class="sourceLineNo">148</span>            parseIntoMap(r, m, string(), object(), pMeta);<a name="line.148"></a>
+<span class="sourceLineNo">149</span>            o = cast(m, pMeta, eType);<a name="line.149"></a>
+<span class="sourceLineNo">150</span>         } else if (c == '@') {<a name="line.150"></a>
+<span class="sourceLineNo">151</span>            Collection l = new ObjectList(this);<a name="line.151"></a>
+<span class="sourceLineNo">152</span>            o = parseIntoCollection(r, l, sType, isUrlParamValue, pMeta);<a name="line.152"></a>
+<span class="sourceLineNo">153</span>         } else {<a name="line.153"></a>
+<span class="sourceLineNo">154</span>            String s = parseString(r, isUrlParamValue);<a name="line.154"></a>
+<span class="sourceLineNo">155</span>            if (c != '\'') {<a name="line.155"></a>
+<span class="sourceLineNo">156</span>               if ("true".equals(s) || "false".equals(s))<a name="line.156"></a>
+<span class="sourceLineNo">157</span>                  o = Boolean.valueOf(s);<a name="line.157"></a>
+<span class="sourceLineNo">158</span>               else if (! "null".equals(s)) {<a name="line.158"></a>
+<span class="sourceLineNo">159</span>                  if (isNumeric(s))<a name="line.159"></a>
+<span class="sourceLineNo">160</span>                     o = StringUtils.parseNumber(s, Number.class);<a name="line.160"></a>
+<span class="sourceLineNo">161</span>                  else<a name="line.161"></a>
+<span class="sourceLineNo">162</span>                     o = s;<a name="line.162"></a>
+<span class="sourceLineNo">163</span>               }<a name="line.163"></a>
+<span class="sourceLineNo">164</span>            } else {<a name="line.164"></a>
+<span class="sourceLineNo">165</span>               o = s;<a name="line.165"></a>
+<span class="sourceLineNo">166</span>            }<a name="line.166"></a>
+<span class="sourceLineNo">167</span>         }<a name="line.167"></a>
+<span class="sourceLineNo">168</span>      } else if (sType.isBoolean()) {<a name="line.168"></a>
+<span class="sourceLineNo">169</span>         o = parseBoolean(r);<a name="line.169"></a>
+<span class="sourceLineNo">170</span>      } else if (sType.isCharSequence()) {<a name="line.170"></a>
+<span class="sourceLineNo">171</span>         o = parseString(r, isUrlParamValue);<a name="line.171"></a>
+<span class="sourceLineNo">172</span>      } else if (sType.isChar()) {<a name="line.172"></a>
+<span class="sourceLineNo">173</span>         String s = parseString(r, isUrlParamValue);<a name="line.173"></a>
+<span class="sourceLineNo">174</span>         o = s == null ? null : s.charAt(0);<a name="line.174"></a>
+<span class="sourceLineNo">175</span>      } else if (sType.isNumber()) {<a name="line.175"></a>
+<span class="sourceLineNo">176</span>         o = parseNumber(r, (Class&lt;? extends Number&gt;)sType.getInnerClass());<a name="line.176"></a>
+<span class="sourceLineNo">177</span>      } else if (sType.isMap()) {<a name="line.177"></a>
+<span class="sourceLineNo">178</span>         Map m = (sType.canCreateNewInstance(outer) ? (Map)sType.newInstance(outer) : new ObjectMap(this));<a name="line.178"></a>
+<span class="sourceLineNo">179</span>         o = parseIntoMap(r, m, sType.getKeyType(), sType.getValueType(), pMeta);<a name="line.179"></a>
+<span class="sourceLineNo">180</span>      } else if (sType.isCollection()) {<a name="line.180"></a>
+<span class="sourceLineNo">181</span>         if (c == '(') {<a name="line.181"></a>
+<span class="sourceLineNo">182</span>            ObjectMap m = new ObjectMap(this);<a name="line.182"></a>
+<span class="sourceLineNo">183</span>            parseIntoMap(r, m, string(), object(), pMeta);<a name="line.183"></a>
+<span class="sourceLineNo">184</span>            // Handle case where it's a collection, but serialized as a map with a _type or _value key.<a name="line.184"></a>
+<span class="sourceLineNo">185</span>            if (m.containsKey(getBeanTypePropertyName(sType)))<a name="line.185"></a>
+<span class="sourceLineNo">186</span>               o = cast(m, pMeta, eType);<a name="line.186"></a>
+<span class="sourceLineNo">187</span>            // Handle case where it's a collection, but only a single value was specified.<a name="line.187"></a>
+<span class="sourceLineNo">188</span>            else {<a name="line.188"></a>
+<span class="sourceLineNo">189</span>               Collection l = (<a name="line.189"></a>
+<span class="sourceLineNo">190</span>                  sType.canCreateNewInstance(outer)<a name="line.190"></a>
+<span class="sourceLineNo">191</span>                  ? (Collection)sType.newInstance(outer)<a name="line.191"></a>
+<span class="sourceLineNo">192</span>                  : new ObjectList(this)<a name="line.192"></a>
+<span class="sourceLineNo">193</span>               );<a name="line.193"></a>
+<span class="sourceLineNo">194</span>               l.add(m.cast(sType.getElementType()));<a name="line.194"></a>
+<span class="sourceLineNo">195</span>               o = l;<a name="line.195"></a>
+<span class="sourceLineNo">196</span>            }<a name="line.196"></a>
+<span class="sourceLineNo">197</span>         } else {<a name="line.197"></a>
+<span class="sourceLineNo">198</span>            Collection l = (<a name="line.198"></a>
+<span class="sourceLineNo">199</span>               sType.canCreateNewInstance(outer)<a name="line.199"></a>
+<span class="sourceLineNo">200</span>               ? (Collection)sType.newInstance(outer)<a name="line.200"></a>
+<span class="sourceLineNo">201</span>               : new ObjectList(this)<a name="line.201"></a>
+<span class="sourceLineNo">202</span>            );<a name="line.202"></a>
+<span class="sourceLineNo">203</span>            o = parseIntoCollection(r, l, sType, isUrlParamValue, pMeta);<a name="line.203"></a>
+<span class="sourceLineNo">204</span>         }<a name="line.204"></a>
+<span class="sourceLineNo">205</span>      } else if (sType.canCreateNewBean(outer)) {<a name="line.205"></a>
+<span class="sourceLineNo">206</span>         BeanMap m = newBeanMap(outer, sType.getInnerClass());<a name="line.206"></a>
+<span class="sourceLineNo">207</span>         m = parseIntoBeanMap(r, m);<a name="line.207"></a>
+<span class="sourceLineNo">208</span>         o = m == null ? null : m.getBean();<a name="line.208"></a>
+<span class="sourceLineNo">209</span>      } else if (sType.canCreateNewInstanceFromString(outer)) {<a name="line.209"></a>
+<span class="sourceLineNo">210</span>         String s = parseString(r, isUrlParamValue);<a name="line.210"></a>
+<span class="sourceLineNo">211</span>         if (s != null)<a name="line.211"></a>
+<span class="sourceLineNo">212</span>            o = sType.newInstanceFromString(outer, s);<a name="line.212"></a>
+<span class="sourceLineNo">213</span>      } else if (sType.canCreateNewInstanceFromNumber(outer)) {<a name="line.213"></a>
+<span class="sourceLineNo">214</span>         o = sType.newInstanceFromNumber(this, outer, parseNumber(r, sType.getNewInstanceFromNumberClass()));<a name="line.214"></a>
+<span class="sourceLineNo">215</span>      } else if (sType.isArray() || sType.isArgs()) {<a name="line.215"></a>
+<span class="sourceLineNo">216</span>         if (c == '(') {<a name="line.216"></a>
+<span class="sourceLineNo">217</span>            ObjectMap m = new ObjectMap(this);<a name="line.217"></a>
+<span class="sourceLineNo">218</span>            parseIntoMap(r, m, string(), object(), pMeta);<a name="line.218"></a>
+<span class="sourceLineNo">219</span>            // Handle case where it's an array, but serialized as a map with a _type or _value key.<a name="line.219"></a>
+<span class="sourceLineNo">220</span>            if (m.containsKey(getBeanTypePropertyName(sType)))<a name="line.220"></a>
+<span class="sourceLineNo">221</span>               o = cast(m, pMeta, eType);<a name="line.221"></a>
+<span class="sourceLineNo">222</span>            // Handle case where it's an array, but only a single value was specified.<a name="line.222"></a>
+<span class="sourceLineNo">223</span>            else {<a name="line.223"></a>
+<span class="sourceLineNo">224</span>               ArrayList l = new ArrayList(1);<a name="line.224"></a>
+<span class="sourceLineNo">225</span>               l.add(m.cast(sType.getElementType()));<a name="line.225"></a>
+<span class="sourceLineNo">226</span>               o = toArray(sType, l);<a name="line.226"></a>
+<span class="sourceLineNo">227</span>            }<a name="line.227"></a>
+<span class="sourceLineNo">228</span>         } else {<a name="line.228"></a>
+<span class="sourceLineNo">229</span>            ArrayList l = (ArrayList)parseIntoCollection(r, new ArrayList(), sType, isUrlParamValue, pMeta);<a name="line.229"></a>
+<span class="sourceLineNo">230</span>            o = toArray(sType, l);<a name="line.230"></a>
+<span class="sourceLineNo">231</span>         }<a name="line.231"></a>
+<span class="sourceLineNo">232</span>      } else if (c == '(') {<a name="line.232"></a>
+<span class="sourceLineNo">233</span>         // It could be a non-bean with _type attribute.<a name="line.233"></a>
+<span class="sourceLineNo">234</span>         ObjectMap m = new ObjectMap(this);<a name="line.234"></a>
+<span class="sourceLineNo">235</span>         parseIntoMap(r, m, string(), object(), pMeta);<a name="line.235"></a>
+<span class="sourceLineNo">236</span>         if (m.containsKey(getBeanTypePropertyName(sType)))<a name="line.236"></a>
+<span class="sourceLineNo">237</span>            o = cast(m, pMeta, eType);<a name="line.237"></a>
+<span class="sourceLineNo">238</span>         else<a name="line.238"></a>
+<span class="sourceLineNo">239</span>            throw new ParseException(loc(r), "Class ''{0}'' could not be instantiated.  Reason: ''{1}''",<a name="line.239"></a>
+<span class="sourceLineNo">240</span>               sType.getInnerClass().getName(), sType.getNotABeanReason());<a name="line.240"></a>
+<span class="sourceLineNo">241</span>      } else if (c == 'n') {<a name="line.241"></a>
+<span class="sourceLineNo">242</span>         r.read();<a name="line.242"></a>
+<span class="sourceLineNo">243</span>         parseNull(r);<a name="line.243"></a>
+<span class="sourceLineNo">244</span>      } else {<a name="line.244"></a>
+<span class="sourceLineNo">245</span>         throw new ParseException(loc(r), "Class ''{0}'' could not be instantiated.  Reason: ''{1}''",<a name="line.245"></a>
+<span class="sourceLineNo">246</span>            sType.getInnerClass().getName(), sType.getNotABeanReason());<a name="line.246"></a>
+<span class="sourceLineNo">247</span>      }<a name="line.247"></a>
+<span class="sourceLineNo">248</span><a name="line.248"></a>
+<span class="sourceLineNo">249</span>      if (o == null &amp;&amp; sType.isPrimitive())<a name="line.249"></a>
+<span class="sourceLineNo">250</span>         o = sType.getPrimitiveDefault();<a name="line.250"></a>
+<span class="sourceLineNo">251</span>      if (transform != null &amp;&amp; o != null)<a name="line.251"></a>
+<span class="sourceLineNo">252</span>         o = transform.unswap(this, o, eType);<a name="line.252"></a>
 <span class="sourceLineNo">253</span><a name="line.253"></a>
-<span class="sourceLineNo">254</span>   private &lt;K,V&gt; Map&lt;K,V&gt; parseIntoMap(UonReader r, Map&lt;K,V&gt; m, ClassMeta&lt;K&gt; keyType, ClassMeta&lt;V&gt; valueType,<a name="line.254"></a>
-<span class="sourceLineNo">255</span>         BeanPropertyMeta pMeta) throws Exception {<a name="line.255"></a>
+<span class="sourceLineNo">254</span>      if (outer != null)<a name="line.254"></a>
+<span class="sourceLineNo">255</span>         setParent(eType, o, outer);<a name="line.255"></a>
 <span class="sourceLineNo">256</span><a name="line.256"></a>
-<span class="sourceLineNo">257</span>      if (keyType == null)<a name="line.257"></a>
-<span class="sourceLineNo">258</span>         keyType = (ClassMeta&lt;K&gt;)string();<a name="line.258"></a>
+<span class="sourceLineNo">257</span>      return (T)o;<a name="line.257"></a>
+<span class="sourceLineNo">258</span>   }<a name="line.258"></a>
 <span class="sourceLineNo">259</span><a name="line.259"></a>
-<span class="sourceLineNo">260</span>      int c = r.read();<a name="line.260"></a>
-<span class="sourceLineNo">261</span>      if (c == -1 || c == AMP)<a name="line.261"></a>
-<span class="sourceLineNo">262</span>         return null;<a name="line.262"></a>
-<span class="sourceLineNo">263</span>      if (c == 'n')<a name="line.263"></a>
-<span class="sourceLineNo">264</span>         return (Map&lt;K,V&gt;)parseNull(r);<a name="line.264"></a>
-<span class="sourceLineNo">265</span>      if (c != '(')<a name="line.265"></a>
-<span class="sourceLineNo">266</span>         throw new ParseException(loc(r), "Expected '(' at beginning of object.");<a name="line.266"></a>
-<span class="sourceLineNo">267</span><a name="line.267"></a>
-<span class="sourceLineNo">268</span>      final int S1=1; // Looking for attrName start.<a name="line.268"></a>
-<span class="sourceLineNo">269</span>      final int S2=2; // Found attrName end, looking for =.<a name="line.269"></a>
-<span class="sourceLineNo">270</span>      final int S3=3; // Found =, looking for valStart.<a name="line.270"></a>
-<span class="sourceLineNo">271</span>      final int S4=4; // Looking for , or )<a name="line.271"></a>
-<span class="sourceLineNo">272</span>      boolean isInEscape = false;<a name="line.272"></a>
+<span class="sourceLineNo">260</span>   private &lt;K,V&gt; Map&lt;K,V&gt; parseIntoMap(UonReader r, Map&lt;K,V&gt; m, ClassMeta&lt;K&gt; keyType, ClassMeta&lt;V&gt; valueType,<a name="line.260"></a>
+<span class="sourceLineNo">261</span>         BeanPropertyMeta pMeta) throws Exception {<a name="line.261"></a>
+<span class="sourceLineNo">262</span><a name="line.262"></a>
+<span class="sourceLineNo">263</span>      if (keyType == null)<a name="line.263"></a>
+<span class="sourceLineNo">264</span>         keyType = (ClassMeta&lt;K&gt;)string();<a name="line.264"></a>
+<span class="sourceLineNo">265</span><a name="line.265"></a>
+<span class="sourceLineNo">266</span>      int c = r.read();<a name="line.266"></a>
+<span class="sourceLineNo">267</span>      if (c == -1 || c == AMP)<a name="line.267"></a>
+<span class="sourceLineNo">268</span>         return null;<a name="line.268"></a>
+<span class="sourceLineNo">269</span>      if (c == 'n')<a name="line.269"></a>
+<span class="sourceLineNo">270</span>         return (Map&lt;K,V&gt;)parseNull(r);<a name="line.270"></a>
+<span class="sourceLineNo">271</span>      if (c != '(')<a name="line.271"></a>
+<span class="sourceLineNo">272</span>         throw new ParseException(loc(r), "Expected '(' at beginning of object.");<a name="line.272"></a>
 <span class="sourceLineNo">273</span><a name="line.273"></a>
-<span class="sourceLineNo">274</span>      int state = S1;<a name="line.274"></a>
-<span class="sourceLineNo">275</span>      K currAttr = null;<a name="line.275"></a>
-<span class="sourceLineNo">276</span>      while (c != -1 &amp;&amp; c != AMP) {<a name="line.276"></a>
-<span class="sourceLineNo">277</span>         c = r.read();<a name="line.277"></a>
-<span class="sourceLineNo">278</span>         if (! isInEscape) {<a name="line.278"></a>
-<span class="sourceLineNo">279</span>            if (state == S1) {<a name="line.279"></a>
-<span class="sourceLineNo">280</span>               if (c == ')')<a name="line.280"></a>
-<span class="sourceLineNo">281</span>                  return m;<a name="line.281"></a>
-<span class="sourceLineNo">282</span>               if (Character.isWhitespace(c))<a name="line.282"></a>
-<span class="sourceLineNo">283</span>                  skipSpace(r);<a name="line.283"></a>
-<span class="sourceLineNo">284</span>               else {<a name="line.284"></a>
-<span class="sourceLineNo">285</span>                  r.unread();<a name="line.285"></a>
-<span class="sourceLineNo">286</span>                  Object attr = parseAttr(r, decodeChars);<a name="line.286"></a>
-<span class="sourceLineNo">287</span>                  currAttr = attr == null ? null : convertAttrToType(m, trim(attr.toString()), keyType);<a name="line.287"></a>
-<span class="sourceLineNo">288</span>                  state = S2;<a name="line.288"></a>
-<span class="sourceLineNo">289</span>                  c = 0; // Avoid isInEscape if c was '\'<a name="line.289"></a>
-<span class="sourceLineNo">290</span>               }<a name="line.290"></a>
-<span class="sourceLineNo">291</span>            } else if (state == S2) {<a name="line.291"></a>
-<span class="sourceLineNo">292</span>               if (c == EQ || c == '=')<a name="line.292"></a>
-<span class="sourceLineNo">293</span>                  state = S3;<a name="line.293"></a>
-<span class="sourceLineNo">294</span>               else if (c == -1 || c == ',' || c == ')' || c == AMP) {<a name="line.294"></a>
-<span class="sourceLineNo">295</span>                  if (currAttr == null) {<a name="line.295"></a>
-<span class="sourceLineNo">296</span>                     // Value was '%00'<a name="line.296"></a>
-<span class="sourceLineNo">297</span>                     r.unread();<a name="line.297"></a>
-<span class="sourceLineNo">298</span>                     return null;<a name="line.298"></a>
-<span class="sourceLineNo">299</span>                  }<a name="line.299"></a>
-<span class="sourceLineNo">300</span>                  m.put(currAttr, null);<a name="line.300"></a>
-<span class="sourceLineNo">301</span>                  if (c == ')' || c == -1 || c == AMP)<a name="line.301"></a>
-<span class="sourceLineNo">302</span>                     return m;<a name="line.302"></a>
-<span class="sourceLineNo">303</span>                  state = S1;<a name="line.303"></a>
-<span class="sourceLineNo">304</span>               }<a name="line.304"></a>
-<span class="sourceLineNo">305</span>            } else if (state == S3) {<a name="line.305"></a>
-<span class="sourceLineNo">306</span>               if (c == -1 || c == ',' || c == ')' || c == AMP) {<a name="line.306"></a>
-<span class="sourceLineNo">307</span>                  V value = convertAttrToType(m, "", valueType);<a name="line.307"></a>
-<span class="sourceLineNo">308</span>                  m.put(currAttr, value);<a name="line.308"></a>
-<span class="sourceLineNo">309</span>                  if (c == -1 || c == ')' || c == AMP)<a name="line.309"></a>
-<span class="sourceLineNo">310</span>                     return m;<a name="line.310"></a>
-<span class="sourceLineNo">311</span>                  state = S1;<a name="line.311"></a>
-<span class="sourceLineNo">312</span>               } else  {<a name="line.312"></a>
-<span class="sourceLineNo">313</span>                  V value = parseAnything(valueType, r.unread(), m, false, pMeta);<a name="line.313"></a>
-<span class="sourceLineNo">314</span>                  setName(valueType, value, currAttr);<a name="line.314"></a>
-<span class="sourceLineNo">315</span>                  m.put(currAttr, value);<a name="line.315"></a>
-<span class="sourceLineNo">316</span>                  state = S4;<a name="line.316"></a>
-<span class="sourceLineNo">317</span>                  c = 0; // Avoid isInEscape if c was '\'<a name="line.317"></a>
-<span class="sourceLineNo">318</span>               }<a name="line.318"></a>
-<span class="sourceLineNo">319</span>            } else if (state == S4) {<a name="line.319"></a>
-<span class="sourceLineNo">320</span>               if (c == ',')<a name="line.320"></a>
-<span class="sourceLineNo">321</span>                  state = S1;<a name="line.321"></a>
-<span class="sourceLineNo">322</span>               else if (c == ')' || c == -1 || c == AMP) {<a name="line.322"></a>
-<span class="sourceLineNo">323</span>                  return m;<a name="line.323"></a>
+<span class="sourceLineNo">274</span>      final int S1=1; // Looking for attrName start.<a name="line.274"></a>
+<span class="sourceLineNo">275</span>      final int S2=2; // Found attrName end, looking for =.<a name="line.275"></a>
+<span class="sourceLineNo">276</span>      final int S3=3; // Found =, looking for valStart.<a name="line.276"></a>
+<span class="sourceLineNo">277</span>      final int S4=4; // Looking for , or )<a name="line.277"></a>
+<span class="sourceLineNo">278</span>      boolean isInEscape = false;<a name="line.278"></a>
+<span class="sourceLineNo">279</span><a name="line.279"></a>
+<span class="sourceLineNo">280</span>      int state = S1;<a name="line.280"></a>
+<span class="sourceLineNo">281</span>      K currAttr = null;<a name="line.281"></a>
+<span class="sourceLineNo">282</span>      while (c != -1 &amp;&amp; c != AMP) {<a name="line.282"></a>
+<span class="sourceLineNo">283</span>         c = r.read();<a name="line.283"></a>
+<span class="sourceLineNo">284</span>         if (! isInEscape) {<a name="line.284"></a>
+<span class="sourceLineNo">285</span>            if (state == S1) {<a name="line.285"></a>
+<span class="sourceLineNo">286</span>               if (c == ')')<a name="line.286"></a>
+<span class="sourceLineNo">287</span>                  return m;<a name="line.287"></a>
+<span class="sourceLineNo">288</span>               if (Character.isWhitespace(c))<a name="line.288"></a>
+<span class="sourceLineNo">289</span>                  skipSpace(r);<a name="line.289"></a>
+<span class="sourceLineNo">290</span>               else {<a name="line.290"></a>
+<span class="sourceLineNo">291</span>                  r.unread();<a name="line.291"></a>
+<span class="sourceLineNo">292</span>                  Object attr = parseAttr(r, decodeChars);<a name="line.292"></a>
+<span class="sourceLineNo">293</span>                  currAttr = attr == null ? null : convertAttrToType(m, trim(attr.toString()), keyType);<a name="line.293"></a>
+<span class="sourceLineNo">294</span>                  state = S2;<a name="line.294"></a>
+<span class="sourceLineNo">295</span>                  c = 0; // Avoid isInEscape if c was '\'<a name="line.295"></a>
+<span class="sourceLineNo">296</span>               }<a name="line.296"></a>
+<span class="sourceLineNo">297</span>            } else if (state == S2) {<a name="line.297"></a>
+<span class="sourceLineNo">298</span>               if (c == EQ || c == '=')<a name="line.298"></a>
+<span class="sourceLineNo">299</span>                  state = S3;<a name="line.299"></a>
+<span class="sourceLineNo">300</span>               else if (c == -1 || c == ',' || c == ')' || c == AMP) {<a name="line.300"></a>
+<span class="sourceLineNo">301</span>                  if (currAttr == null) {<a name="line.301"></a>
+<span class="sourceLineNo">302</span>                     // Value was '%00'<a name="line.302"></a>
+<span class="sourceLineNo">303</span>                     r.unread();<a name="line.303"></a>
+<span class="sourceLineNo">304</span>                     return null;<a name="line.304"></a>
+<span class="sourceLineNo">305</span>                  }<a name="line.305"></a>
+<span class="sourceLineNo">306</span>                  m.put(currAttr, null);<a name="line.306"></a>
+<span class="sourceLineNo">307</span>                  if (c == ')' || c == -1 || c == AMP)<a name="line.307"></a>
+<span class="sourceLineNo">308</span>                     return m;<a name="line.308"></a>
+<span class="sourceLineNo">309</span>                  state = S1;<a name="line.309"></a>
+<span class="sourceLineNo">310</span>               }<a name="line.310"></a>
+<span class="sourceLineNo">311</span>            } else if (state == S3) {<a name="line.311"></a>
+<span class="sourceLineNo">312</span>               if (c == -1 || c == ',' || c == ')' || c == AMP) {<a name="line.312"></a>
+<span class="sourceLineNo">313</span>                  V value = convertAttrToType(m, "", valueType);<a name="line.313"></a>
+<span class="sourceLineNo">314</span>                  m.put(currAttr, value);<a name="line.314"></a>
+<span class="sourceLineNo">315</span>                  if (c == -1 || c == ')' || c == AMP)<a name="line.315"></a>
+<span class="sourceLineNo">316</span>                     return m;<a name="line.316"></a>
+<span class="sourceLineNo">317</span>                  state = S1;<a name="line.317"></a>
+<span class="sourceLineNo">318</span>               } else  {<a name="line.318"></a>
+<span class="sourceLineNo">319</span>                  V value = parseAnything(valueType, r.unread(), m, false, pMeta);<a name="line.319"></a>
+<span class="sourceLineNo">320</span>                  setName(valueType, value, currAttr);<a name="line.320"></a>
+<span class="sourceLineNo">321</span>                  m.put(currAttr, value);<a name="line.321"></a>
+<span class="sourceLineNo">322</span>                  state = S4;<a name="line.322"></a>
+<span class="sourceLineNo">323</span>                  c = 0; // Avoid isInEscape if c was '\'<a name="line.323"></a>
 <span class="sourceLineNo">324</span>               }<a name="line.324"></a>
-<span class="sourceLineNo">325</span>            }<a name="line.325"></a>
-<span class="sourceLineNo">326</span>         }<a name="line.326"></a>
-<span class="sourceLineNo">327</span>         isInEscape = isInEscape(c, r, isInEscape);<a name="line.327"></a>
-<span class="sourceLineNo">328</span>      }<a name="line.328"></a>
-<span class="sourceLineNo">329</span>      if (state == S1)<a name="line.329"></a>
-<span class="sourceLineNo">330</span>         throw new ParseException(loc(r), "Could not find attribute name on object.");<a name="line.330"></a>
-<span class="sourceLineNo">331</span>      if (state == S2)<a name="line.331"></a>
-<span class="sourceLineNo">332</span>         throw new ParseException(loc(r), "Could not find '=' following attribute name on object.");<a name="line.332"></a>
-<span class="sourceLineNo">333</span>      if (state == S3)<a name="line.333"></a>
-<span class="sourceLineNo">334</span>         throw new ParseException(loc(r), "Dangling '=' found in object entry");<a name="line.334"></a>
-<span class="sourceLineNo">335</span>      if (state == S4)<a name="line.335"></a>
-<span class="sourceLineNo">336</span>         throw new ParseException(loc(r), "Could not find ')' marking end of object.");<a name="line.336"></a>
-<span class="sourceLineNo">337</span><a name="line.337"></a>
-<span class="sourceLineNo">338</span>      return null; // Unreachable.<a name="line.338"></a>
-<span class="sourceLineNo">339</span>   }<a name="line.339"></a>
-<span class="sourceLineNo">340</span><a name="line.340"></a>
-<span class="sourceLineNo">341</span>   private &lt;E&gt; Collection&lt;E&gt; parseIntoCollection(UonReader r, Collection&lt;E&gt; l, ClassMeta&lt;E&gt; type, boolean isUrlParamValue, BeanPropertyMeta pMeta) throws Exception {<a name="line.341"></a>
-<span class="sourceLineNo">342</span><a name="line.342"></a>
-<span class="sourceLineNo">343</span>      int c = r.readSkipWs();<a name="line.343"></a>
-<span class="sourceLineNo">344</span>      if (c == -1 || c == AMP)<a name="line.344"></a>
-<span class="sourceLineNo">345</span>         return null;<a name="line.345"></a>
-<span class="sourceLineNo">346</span>      if (c == 'n')<a name="line.346"></a>
-<span class="sourceLineNo">347</span>         return (Collection&lt;E&gt;)parseNull(r);<a name="line.347"></a>
+<span class="sourceLineNo">325</span>            } else if (state == S4) {<a name="line.325"></a>
+<span class="sourceLineNo">326</span>               if (c == ',')<a name="line.326"></a>
+<span class="sourceLineNo">327</span>                  state = S1;<a name="line.327"></a>
+<span class="sourceLineNo">328</span>               else if (c == ')' || c == -1 || c == AMP) {<a name="line.328"></a>
+<span class="sourceLineNo">329</span>                  return m;<a name="line.329"></a>
+<span class="sourceLineNo">330</span>               }<a name="line.330"></a>
+<span class="sourceLineNo">331</span>            }<a name="line.331"></a>
+<span class="sourceLineNo">332</span>         }<a name="line.332"></a>
+<span class="sourceLineNo">333</span>         isInEscape = isInEscape(c, r, isInEscape);<a name="line.333"></a>
+<span class="sourceLineNo">334</span>      }<a name="line.334"></a>
+<span class="sourceLineNo">335</span>      if (state == S1)<a name="line.335"></a>
+<span class="sourceLineNo">336</span>         throw new ParseException(loc(r), "Could not find attribute name on object.");<a name="line.336"></a>
+<span class="sourceLineNo">337</span>      if (state == S2)<a name="line.337"></a>
+<span class="sourceLineNo">338</span>         throw new ParseException(loc(r), "Could not find '=' following attribute name on object.");<a name="line.338"></a>
+<span class="sourceLineNo">339</span>      if (state == S3)<a name="line.339"></a>
+<span class="sourceLineNo">340</span>         throw new ParseException(loc(r), "Dangling '=' found in object entry");<a name="line.340"></a>
+<span class="sourceLineNo">341</span>      if (state == S4)<a name="line.341"></a>
+<span class="sourceLineNo">342</span>         throw new ParseException(loc(r), "Could not find ')' marking end of object.");<a name="line.342"></a>
+<span class="sourceLineNo">343</span><a name="line.343"></a>
+<span class="sourceLineNo">344</span>      return null; // Unreachable.<a name="line.344"></a>
+<span class="sourceLineNo">345</span>   }<a name="line.345"></a>
+<span class="sourceLineNo">346</span><a name="line.346"></a>
+<span class="sourceLineNo">347</span>   private &lt;E&gt; Collection&lt;E&gt; parseIntoCollection(UonReader r, Collection&lt;E&gt; l, ClassMeta&lt;E&gt; type, boolean isUrlParamValue, BeanPropertyMeta pMeta) throws Exception {<a name="line.347"></a>
 <span class="sourceLineNo">348</span><a name="line.348"></a>
-<span class="sourceLineNo">349</span>      int argIndex = 0;<a name="line.349"></a>
-<span class="sourceLineNo">350</span><a name="line.350"></a>
-<span class="sourceLineNo">351</span>      // If we're parsing a top-level parameter, we're allowed to have comma-delimited lists outside parenthesis (e.g. "&amp;foo=1,2,3&amp;bar=a,b,c")<a name="line.351"></a>
-<span class="sourceLineNo">352</span>      // This is not allowed at lower levels since we use comma's as end delimiters.<a name="line.352"></a>
-<span class="sourceLineNo">353</span>      boolean isInParens = (c == '@');<a name="line.353"></a>
-<span class="sourceLineNo">354</span>      if (! isInParens) {<a name="line.354"></a>
-<span class="sourceLineNo">355</span>         if (isUrlParamValue)<a name="line.355"></a>
-<span class="sourceLineNo">356</span>            r.unread();<a name="line.356"></a>
-<span class="sourceLineNo">357</span>         else<a name="line.357"></a>
-<span class="sourceLineNo">358</span>            throw new ParseException(loc(r), "Could not find '(' marking beginning of collection.");<a name="line.358"></a>
-<span class="sourceLineNo">359</span>      } else {<a name="line.359"></a>
-<span class="sourceLineNo">360</span>         r.read();<a name="line.360"></a>
-<span class="sourceLineNo">361</span>      }<a name="line.361"></a>
-<span class="sourceLineNo">362</span><a name="line.362"></a>
-<span class="sourceLineNo">363</span>      if (isInParens) {<a name="line.363"></a>
-<span class="sourceLineNo">364</span>         final int S1=1; // Looking for starting of first entry.<a name="line.364"></a>
-<span class="sourceLineNo">365</span>         final int S2=2; // Looking for starting of subsequent entries.<a name="line.365"></a>
-<span class="sourceLineNo">366</span>         final int S3=3; // Looking for , or ) after first entry.<a name="line.366"></a>
-<span class="sourceLineNo">367</span><a name="line.367"></a>
-<span class="sourceLineNo">368</span>         int state = S1;<a name="line.368"></a>
-<span class="sourceLineNo">369</span>         while (c != -1 &amp;&amp; c != AMP) {<a name="line.369"></a>
-<span class="sourceLineNo">370</span>            c = r.read();<a name="line.370"></a>
-<span class="sourceLineNo">371</span>            if (state == S1 || state == S2) {<a name="line.371"></a>
-<span class="sourceLineNo">372</span>               if (c == ')') {<a name="line.372"></a>
-<span class="sourceLineNo">373</span>                  if (state == S2) {<a name="line.373"></a>
-<span class="sourceLineNo">374</span>                     l.add((E)parseAnything(type.isArgs() ? type.getArg(argIndex++) : type.getElementType(),<a name="line.374"></a>
-<span class="sourceLineNo">375</span>                           r.unread(), l, false, pMeta));<a name="line.375"></a>
-<span class="sourceLineNo">376</span>                     r.read();<a name="line.376"></a>
-<span class="sourceLineNo">377</span>                  }<a name="line.377"></a>
-<span class="sourceLineNo">378</span>                  return l;<a name="line.378"></a>
-<span class="sourceLineNo">379</span>               } else if (Character.isWhitespace(c)) {<a name="line.379"></a>
-<span class="sourceLineNo">380</span>                  skipSpace(r);<a name="line.380"></a>
-<span class="sourceLineNo">381</span>               } else {<a name="line.381"></a>
-<span class="sourceLineNo">382</span>                  l.add((E)parseAnything(type.isArgs() ? type.getArg(argIndex++) : type.getElementType(),<a name="line.382"></a>
-<span class="sourceLineNo">383</span>                        r.unread(), l, false, pMeta));<a name="line.383"></a>
-<span class="sourceLineNo">384</span>                  state = S3;<a name="line.384"></a>
-<span class="sourceLineNo">385</span>               }<a name="line.385"></a>
-<span class="sourceLineNo">386</span>            } else if (state == S3) {<a name="line.386"></a>
-<span class="sourceLineNo">387</span>               if (c == ',') {<a name="line.387"></a>
-<span class="sourceLineNo">388</span>                  state = S2;<a name="line.388"></a>
-<span class="sourceLineNo">389</span>               } else if (c == ')') {<a name="line.389"></a>
-<span class="sourceLineNo">390</span>                  return l;<a name="line.390"></a>
+<span class="sourceLineNo">349</span>      int c = r.readSkipWs();<a name="line.349"></a>
+<span class="sourceLineNo">350</span>      if (c == -1 || c == AMP)<a name="line.350"></a>
+<span class="sourceLineNo">351</span>         return null;<a name="line.351"></a>
+<span class="sourceLineNo">352</span>      if (c == 'n')<a name="line.352"></a>
+<span class="sourceLineNo">353</span>         return (Collection&lt;E&gt;)parseNull(r);<a name="line.353"></a>
+<span class="sourceLineNo">354</span><a name="line.354"></a>
+<span class="sourceLineNo">355</span>      int argIndex = 0;<a name="line.355"></a>
+<span class="sourceLineNo">356</span><a name="line.356"></a>
+<span class="sourceLineNo">357</span>      // If we're parsing a top-level parameter, we're allowed to have comma-delimited lists outside parenthesis (e.g. "&amp;foo=1,2,3&amp;bar=a,b,c")<a name="line.357"></a>
+<span class="sourceLineNo">358</span>      // This is not allowed at lower levels since we use comma's as end delimiters.<a name="line.358"></a>
+<span class="sourceLineNo">359</span>      boolean isInParens = (c == '@');<a name="line.359"></a>
+<span class="sourceLineNo">360</span>      if (! isInParens) {<a name="line.360"></a>
+<span class="sourceLineNo">361</span>         if (isUrlParamValue)<a name="line.361"></a>
+<span class="sourceLineNo">362</span>            r.unread();<a name="line.362"></a>
+<span class="sourceLineNo">363</span>         else<a name="line.363"></a>
+<span class="sourceLineNo">364</span>            throw new ParseException(loc(r), "Could not find '(' marking beginning of collection.");<a name="line.364"></a>
+<span class="sourceLineNo">365</span>      } else {<a name="line.365"></a>
+<span class="sourceLineNo">366</span>         r.read();<a name="line.366"></a>
+<span class="sourceLineNo">367</span>      }<a name="line.367"></a>
+<span class="sourceLineNo">368</span><a name="line.368"></a>
+<span class="sourceLineNo">369</span>      if (isInParens) {<a name="line.369"></a>
+<span class="sourceLineNo">370</span>         final int S1=1; // Looking for starting of first entry.<a name="line.370"></a>
+<span class="sourceLineNo">371</span>         final int S2=2; // Looking for starting of subsequent entries.<a name="line.371"></a>
+<span class="sourceLineNo">372</span>         final int S3=3; // Looking for , or ) after first entry.<a name="line.372"></a>
+<span class="sourceLineNo">373</span><a name="line.373"></a>
+<span class="sourceLineNo">374</span>         int state = S1;<a name="line.374"></a>
+<span class="sourceLineNo">375</span>         while (c != -1 &amp;&amp; c != AMP) {<a name="line.375"></a>
+<span class="sourceLineNo">376</span>            c = r.read();<a name="line.376"></a>
+<span class="sourceLineNo">377</span>            if (state == S1 || state == S2) {<a name="line.377"></a>
+<span class="sourceLineNo">378</span>               if (c == ')') {<a name="line.378"></a>
+<span class="sourceLineNo">379</span>                  if (state == S2) {<a name="line.379"></a>
+<span class="sourceLineNo">380</span>                     l.add((E)parseAnything(type.isArgs() ? type.getArg(argIndex++) : type.getElementType(),<a name="line.380"></a>
+<span class="sourceLineNo">381</span>                           r.unread(), l, false, pMeta));<a name="line.381"></a>
+<span class="sourceLineNo">382</span>                     r.read();<a name="line.382"></a>
+<span class="sourceLineNo">383</span>                  }<a name="line.383"></a>
+<span class="sourceLineNo">384</span>                  return l;<a name="line.384"></a>
+<span class="sourceLineNo">385</span>               } else if (Character.isWhitespace(c)) {<a name="line.385"></a>
+<span class="sourceLineNo">386</span>                  skipSpace(r);<a name="line.386"></a>
+<span class="sourceLineNo">387</span>               } else {<a name="line.387"></a>
+<span class="sourceLineNo">388</span>                  l.add((E)parseAnything(type.isArgs() ? type.getArg(argIndex++) : type.getElementType(),<a name="line.388"></a>
+<span class="sourceLineNo">389</span>                        r.unread(), l, false, pMeta));<a name="line.389"></a>
+<span class="sourceLineNo">390</span>                  state = S3;<a name="line.390"></a>
 <span class="sourceLineNo">391</span>               }<a name="line.391"></a>
-<span class="sourceLineNo">392</span>            }<a name="line.392"></a>
-<span class="sourceLineNo">393</span>         }<a name="line.393"></a>
-<span class="sourceLineNo">394</span>         if (state == S1 || state == S2)<a name="line.394"></a>
-<span class="sourceLineNo">395</span>            throw new ParseException(loc(r), "Could not find start of entry in array.");<a name="line.395"></a>
-<span class="sourceLineNo">396</span>         if (state == S3)<a name="line.396"></a>
-<span class="sourceLineNo">397</span>            throw new ParseException(loc(r), "Could not find end of entry in array.");<a name="line.397"></a>
-<span class="sourceLineNo">398</span><a name="line.398"></a>
-<span class="sourceLineNo">399</span>      } else {<a name="line.399"></a>
-<span class="sourceLineNo">400</span>         final int S1=1; // Looking for starting of entry.<a name="line.400"></a>
-<span class="sourceLineNo">401</span>         final int S2=2; // Looking for , or &amp; or END after first entry.<a name="line.401"></a>
-<span class="sourceLineNo">402</span><a name="line.402"></a>
-<span class="sourceLineNo">403</span>         int state = S1;<a name="line.403"></a>
-<span class="sourceLineNo">404</span>         while (c != -1 &amp;&amp; c != AMP) {<a name="line.404"></a>
-<span class="sourceLineNo">405</span>            c = r.read();<a name="line.405"></a>
-<span class="sourceLineNo">406</span>            if (state == S1) {<a name="line.406"></a>
-<span class="sourceLineNo">407</span>               if (Character.isWhitespace(c)) {<a name="line.407"></a>
-<span class="sourceLineNo">408</span>                  skipSpace(r);<a name="line.408"></a>
-<span class="sourceLineNo">409</span>               } else {<a name="line.409"></a>
-<span class="sourceLineNo">410</span>                  l.add((E)parseAnything(type.isArgs() ? type.getArg(argIndex++) : type.getElementType(),<a name="line.410"></a>
-<span class="sourceLineNo">411</span>                        r.unread(), l, false, pMeta));<a name="line.411"></a>
-<span class="sourceLineNo">412</span>                  state = S2;<a name="line.412"></a>
-<span class="sourceLineNo">413</span>               }<a name="line.413"></a>
-<span class="sourceLineNo">414</span>            } else if (state == S2) {<a name="line.414"></a>
-<span class="sourceLineNo">415</span>               if (c == ',') {<a name="line.415"></a>
-<span class="sourceLineNo">416</span>                  state = S1;<a name="line.416"></a>
-<span class="sourceLineNo">417</span>               } else if (Character.isWhitespace(c)) {<a name="line.417"></a>
-<span class="sourceLineNo">418</span>                  skipSpace(r);<a name="line.418"></a>
-<span class="sourceLineNo">419</span>               } else if (c == AMP || c == -1) {<a name="line.419"></a>
-<span class="sourceLineNo">420</span>                  r.unread();<a name="line.420"></a>
-<span class="sourceLineNo">421</span>                  return l;<a name="line.421"></a>
-<span class="sourceLineNo">422</span>               }<a name="line.422"></a>
-<span class="sourceLineNo">423</span>            }<a name="line.423"></a>
-<span class="sourceLineNo">424</span>         }<a name="line.424"></a>
-<span class="sourceLineNo">425</span>      }<a name="line.425"></a>
-<span class="sourceLineNo">426</span><a name="line.426"></a>
-<span class="sourceLineNo">427</span>      return null;  // Unreachable.<a name="line.427"></a>
-<span class="sourceLineNo">428</span>   }<a name="line.428"></a>
-<span class="sourceLineNo">429</span><a name="line.429"></a>
-<span class="sourceLineNo">430</span>   private &lt;T&gt; BeanMap&lt;T&gt; parseIntoBeanMap(UonReader r, BeanMap&lt;T&gt; m) throws Exception {<a name="line.430"></a>
-<span class="sourceLineNo">431</span><a name="line.431"></a>
-<span class="sourceLineNo">432</span>      int c = r.readSkipWs();<a name="line.432"></a>
-<span class="sourceLineNo">433</span>      if (c == -1 || c == AMP)<a name="line.433"></a>
-<span class="sourceLineNo">434</span>         return null;<a name="line.434"></a>
-<span class="sourceLineNo">435</span>      if (c == 'n')<a name="line.435"></a>
-<span class="sourceLineNo">436</span>         return (BeanMap&lt;T&gt;)parseNull(r);<a name="line.436"></a>
-<span class="sourceLineNo">437</span>      if (c != '(')<a name="line.437"></a>
-<span class="sourceLineNo">438</span>         throw new ParseException(loc(r), "Expected '(' at beginning of object.");<a name="line.438"></a>
-<span class="sourceLineNo">439</span><a name="line.439"></a>
-<span class="sourceLineNo">440</span>      final int S1=1; // Looking for attrName start.<a name="line.440"></a>
-<span class="sourceLineNo">441</span>      final int S2=2; // Found attrName end, looking for =.<a name="line.441"></a>
-<span class="sourceLineNo">442</span>      final int S3=3; // Found =, looking for valStart.<a name="line.442"></a>
-<span class="sourceLineNo">443</span>      final int S4=4; // Looking for , or }<a name="line.443"></a>
-<span class="sourceLineNo">444</span>      boolean isInEscape = false;<a name="line.444"></a>
+<span class="sourceLineNo">392</span>            } else if (state == S3) {<a name="line.392"></a>
+<span class="sourceLineNo">393</span>               if (c == ',') {<a name="line.393"></a>
+<span class="sourceLineNo">394</span>                  state = S2;<a name="line.394"></a>
+<span class="sourceLineNo">395</span>               } else if (c == ')') {<a name="line.395"></a>
+<span class="sourceLineNo">396</span>                  return l;<a name="line.396"></a>
+<span class="sourceLineNo">397</span>               }<a name="line.397"></a>
+<span class="sourceLineNo">398</span>            }<a name="line.398"></a>
+<span class="sourceLineNo">399</span>         }<a name="line.399"></a>
+<span class="sourceLineNo">400</span>         if (state == S1 || state == S2)<a name="line.400"></a>
+<span class="sourceLineNo">401</span>            throw new ParseException(loc(r), "Could not find start of entry in array.");<a name="line.401"></a>
+<span class="sourceLineNo">402</span>         if (state == S3)<a name="line.402"></a>
+<span class="sourceLineNo">403</span>            throw new ParseException(loc(r), "Could not find end of entry in array.");<a name="line.403"></a>
+<span class="sourceLineNo">404</span><a name="line.404"></a>
+<span class="sourceLineNo">405</span>      } else {<a name="line.405"></a>
+<span class="sourceLineNo">406</span>         final int S1=1; // Looking for starting of entry.<a name="line.406"></a>
+<span class="sourceLineNo">407</span>         final int S2=2; // Looking for , or &amp; or END after first entry.<a name="line.407"></a>
+<span class="sourceLineNo">408</span><a name="line.408"></a>
+<span class="sourceLineNo">409</span>         int state = S1;<a name="line.409"></a>
+<span class="sourceLineNo">410</span>         while (c != -1 &amp;&amp; c != AMP) {<a name="line.410"></a>
+<span class="sourceLineNo">411</span>            c = r.read();<a name="line.411"></a>
+<span class="sourceLineNo">412</span>            if (state == S1) {<a name="line.412"></a>
+<span class="sourceLineNo">413</span>               if (Character.isWhitespace(c)) {<a name="line.413"></a>
+<span class="sourceLineNo">414</span>                  skipSpace(r);<a name="line.414"></a>
+<span class="sourceLineNo">415</span>               } else {<a name="line.415"></a>
+<span class="sourceLineNo">416</span>                  l.add((E)parseAnything(type.isArgs() ? type.getArg(argIndex++) : type.getElementType(),<a name="line.416"></a>
+<span class="sourceLineNo">417</span>                        r.unread(), l, false, pMeta));<a name="line.417"></a>
+<span class="sourceLineNo">418</span>                  state = S2;<a name="line.418"></a>
+<span class="sourceLineNo">419</span>               }<a name="line.419"></a>
+<span class="sourceLineNo">420</span>            } else if (state == S2) {<a name="line.420"></a>
+<span class="sourceLineNo">421</span>               if (c == ',') {<a name="line.421"></a>
+<span class="sourceLineNo">422</span>                  state = S1;<a name="line.422"></a>
+<span class="sourceLineNo">423</span>               } else if (Character.isWhitespace(c)) {<a name="line.423"></a>
+<span class="sourceLineNo">424</span>                  skipSpace(r);<a name="line.424"></a>
+<span class="sourceLineNo">425</span>               } else if (c == AMP || c == -1) {<a name="line.425"></a>
+<span class="sourceLineNo">426</span>                  r.unread();<a name="line.426"></a>
+<span class="sourceLineNo">427</span>                  return l;<a name="line.427"></a>
+<span class="sourceLineNo">428</span>               }<a name="line.428"></a>
+<span class="sourceLineNo">429</span>            }<a name="line.429"></a>
+<span class="sourceLineNo">430</span>         }<a name="line.430"></a>
+<span class="sourceLineNo">431</span>      }<a name="line.431"></a>
+<span class="sourceLineNo">432</span><a name="line.432"></a>
+<span class="sourceLineNo">433</span>      return null;  // Unreachable.<a name="line.433"></a>
+<span class="sourceLineNo">434</span>   }<a name="line.434"></a>
+<span class="sourceLineNo">435</span><a name="line.435"></a>
+<span class="sourceLineNo">436</span>   private &lt;T&gt; BeanMap&lt;T&gt; parseIntoBeanMap(UonReader r, BeanMap&lt;T&gt; m) throws Exception {<a name="line.436"></a>
+<span class="sourceLineNo">437</span><a name="line.437"></a>
+<span class="sourceLineNo">438</span>      int c = r.readSkipWs();<a name="line.438"></a>
+<span class="sourceLineNo">439</span>      if (c == -1 || c == AMP)<a name="line.439"></a>
+<span class="sourceLineNo">440</span>         return null;<a name="line.440"></a>
+<span class="sourceLineNo">441</span>      if (c == 'n')<a name="line.441"></a>
+<span class="sourceLineNo">442</span>         return (BeanMap&lt;T&gt;)parseNull(r);<a name="line.442"></a>
+<span class="sourceLineNo">443</span>      if (c != '(')<a name="line.443"></a>
+<span class="sourceLineNo">444</span>         throw new ParseException(loc(r), "Expected '(' at beginning of object.");<a name="line.444"></a>
 <span class="sourceLineNo">445</span><a name="line.445"></a>
-<span class="sourceLineNo">446</span>      int state = S1;<a name="line.446"></a>
-<span class="sourceLineNo">447</span>      String currAttr = "";<a name="line.447"></a>
-<span class="sourceLineNo">448</span>      int currAttrLine = -1, currAttrCol = -1;<a name="line.448"></a>
-<span class="sourceLineNo">449</span>      while (c != -1 &amp;&amp; c != AMP) {<a name="line.449"></a>
-<span class="sourceLineNo">450</span>         c = r.read();<a name="line.450"></a>
-<span class="sourceLineNo">451</span>         if (! isInEscape) {<a name="line.451"></a>
-<span class="sourceLineNo">452</span>            if (state == S1) {<a name="line.452"></a>
-<span class="sourceLineNo">453</span>               if (c == ')' || c == -1 || c == AMP) {<a name="line.453"></a>
-<span class="sourceLineNo">454</span>                  return m;<a name="line.454"></a>
-<span class="sourceLineNo">455</span>               }<a name="line.455"></a>
-<span class="sourceLineNo">456</span>               if (Character.isWhitespace(c))<a name="line.456"></a>
-<span class="sourceLineNo">457</span>                  skipSpace(r);<a name="line.457"></a>
-<span class="sourceLineNo">458</span>               else {<a name="line.458"></a>
-<span class="sourceLineNo">459</span>                  r.unread();<a name="line.459"></a>
-<span class="sourceLineNo">460</span>                  currAttrLine= r.getLine();<a name="line.460"></a>
-<span class="sourceLineNo">461</span>                  currAttrCol = r.getColumn();<a name="line.461"></a>
-<span class="sourceLineNo">462</span>                  currAttr = parseAttrName(r, decodeChars);<a name="line.462"></a>
-<span class="sourceLineNo">463</span>                  if (currAttr == null)  // Value was '%00'<a name="line.463"></a>
-<span class="sourceLineNo">464</span>                     return null;<a name="line.464"></a>
-<span class="sourceLineNo">465</span>                  state = S2;<a name="line.465"></a>
-<span class="sourceLineNo">466</span>               }<a name="line.466"></a>
-<span class="sourceLineNo">467</span>            } else if (state == S2) {<a name="line.467"></a>
-<span class="sourceLineNo">468</span>               if (c == EQ || c == '=')<a name="line.468"></a>
-<span class="sourceLineNo">469</span>                  state = S3;<a name="line.469"></a>
-<span class="sourceLineNo">470</span>               else if (c == -1 || c == ',' || c == ')' || c == AMP) {<a name="line.470"></a>
-<span class="sourceLineNo">471</span>                  m.put(currAttr, null);<a name="line.471"></a>
-<span class="sourceLineNo">472</span>                  if (c == ')' || c == -1 || c == AMP)<a name="line.472"></a>
-<span class="sourceLineNo">473</span>                     return m;<a name="line.473"></a>
-<span class="sourceLineNo">474</span>                  state = S1;<a name="line.474"></a>
-<span class="sourceLineNo">475</span>               }<a name="line.475"></a>
-<span class="sourceLineNo">476</span>            } else if (state == S3) {<a name="line.476"></a>
-<span class="sourceLineNo">477</span>               if (c == -1 || c == ',' || c == ')' || c == AMP) {<a name="line.477"></a>
-<span class="sourceLineNo">478</span>                  if (! currAttr.equals(getBeanTypePropertyName(m.getClassMeta()))) {<a name="line.478"></a>
-<span class="sourceLineNo">479</span>                     BeanPropertyMeta pMeta = m.getPropertyMeta(currAttr);<a name="line.479"></a>
-<span class="sourceLineNo">480</span>                     if (pMeta == null) {<a name="line.480"></a>
-<span class="sourceLineNo">481</span>                        onUnknownProperty(r.getPipe(), currAttr, m, currAttrLine, currAttrCol);<a name="line.481"></a>
-<span class="sourceLineNo">482</span>                     } else {<a name="line.482"></a>
-<span class="sourceLineNo">483</span>                        Object value = convertToType("", pMeta.getClassMeta());<a name="line.483"></a>
-<span class="sourceLineNo">484</span>                        pMeta.set(m, currAttr, value);<a name="line.484"></a>
-<span class="sourceLineNo">485</span>                     }<a name="line.485"></a>
-<span class="sourceLineNo">486</span>                  }<a name="line.486"></a>
-<span class="sourceLineNo">487</span>                  if (c == -1 || c == ')' || c == AMP)<a name="line.487"></a>
-<span class="sourceLineNo">488</span>                     return m;<a name="line.488"></a>
-<span class="sourceLineNo">489</span>                  state = S1;<a name="line.489"></a>
-<span class="sourceLineNo">490</span>               } else {<a name="line.490"></a>
-<span class="sourceLineNo">491</span>                  if (! currAttr.equals(getBeanTypePropertyName(m.getClassMeta()))) {<a name="line.491"></a>
-<span class="sourceLineNo">492</span>                     BeanPropertyMeta pMeta = m.getPropertyMeta(currAttr);<a name="line.492"></a>
-<span class="sourceLineNo">493</span>                     if (pMeta == null) {<a name="line.493"></a>
-<span class="sourceLineNo">494</span>                        onUnknownProperty(r.getPipe(), currAttr, m, currAttrLine, currAttrCol);<a name="line.494"></a>
-<span class="sourceLineNo">495</span>                        parseAnything(object(), r.unread(), m.getBean(false), false, null); // Read content anyway to ignore it<a name="line.495"></a>
-<span class="sourceLineNo">496</span>                     } else {<a name="line.496"></a>
-<span class="sourceLineNo">497</span>                        setCurrentProperty(pMeta);<a name="line.497"></a>
-<span class="sourceLineNo">498</span>                        ClassMeta&lt;?&gt; cm = pMeta.getClassMeta();<a name="line.498"></a>
-<span class="sourceLineNo">499</span>                        Object value = parseAnything(cm, r.unread(), m.getBean(false), false, pMeta);<a name="line.499"></a>
-<span class="sourceLineNo">500</span>                        setName(cm, value, currAttr);<a name="line.500"></a>
-<span class="sourceLineNo">501</span>                        pMeta.set(m, currAttr, value);<a name="line.501"></a>
-<span class="sourceLineNo">502</span>                        setCurrentProperty(null);<a name="line.502"></a>
-<span class="sourceLineNo">503</span>                     }<a name="line.503"></a>
-<span class="sourceLineNo">504</span>                  }<a name="line.504"></a>
-<span class="sourceLineNo">505</span>                  state = S4;<a name="line.505"></a>
-<span class="sourceLineNo">506</span>               }<a name="line.506"></a>
-<span class="sourceLineNo">507</span>            } else if (state == S4) {<a name="line.507"></a>
-<span class="sourceLineNo">508</span>               if (c == ',')<a name="line.508"></a>
-<span class="sourceLineNo">509</span>                  state = S1;<a name="line.509"></a>
-<span class="sourceLineNo">510</span>               else if (c == ')' || c == -1 || c == AMP) {<a name="line.510"></a>
-<span class="sourceLineNo">511</span>                  return m;<a name="line.511"></a>
+<span class="sourceLineNo">446</span>      final int S1=1; // Looking for attrName start.<a name="line.446"></a>
+<span class="sourceLineNo">447</span>      final int S2=2; // Found attrName end, looking for =.<a name="line.447"></a>
+<span class="sourceLineNo">448</span>      final int S3=3; // Found =, looking for valStart.<a name="line.448"></a>
+<span class="sourceLineNo">449</span>      final int S4=4; // Looking for , or }<a name="line.449"></a>
+<span class="sourceLineNo">450</span>      boolean isInEscape = false;<a name="line.450"></a>
+<span class="sourceLineNo">451</span><a name="line.451"></a>
+<span class="sourceLineNo">452</span>      int state = S1;<a name="line.452"></a>
+<span class="sourceLineNo">453</span>      String currAttr = "";<a name="line.453"></a>
+<span class="sourceLineNo">454</span>      int currAttrLine = -1, currAttrCol = -1;<a name="line.454"></a>
+<span class="sourceLineNo">455</span>      while (c != -1 &amp;&amp; c != AMP) {<a name="line.455"></a>
+<span class="sourceLineNo">456</span>         c = r.read();<a name="line.456"></a>
+<span class="sourceLineNo">457</span>         if (! isInEscape) {<a name="line.457"></a>
+<span class="sourceLineNo">458</span>            if (state == S1) {<a name="line.458"></a>
+<span class="sourceLineNo">459</span>               if (c == ')' || c == -1 || c == AMP) {<a name="line.459"></a>
+<span class="sourceLineNo">460</span>                  return m;<a name="line.460"></a>
+<span class="sourceLineNo">461</span>               }<a name="line.461"></a>
+<span class="sourceLineNo">462</span>               if (Character.isWhitespace(c))<a name="line.462"></a>
+<span class="sourceLineNo">463</span>                  skipSpace(r);<a name="line.463"></a>
+<span class="sourceLineNo">464</span>               else {<a name="line.464"></a>
+<span class="sourceLineNo">465</span>                  r.unread();<a name="line.465"></a>
+<span class="sourceLineNo">466</span>                  currAttrLine= r.getLine();<a name="line.466"></a>
+<span class="sourceLineNo">467</span>                  currAttrCol = r.getColumn();<a name="line.467"></a>
+<span class="sourceLineNo">468</span>                  currAttr = parseAttrName(r, decodeChars);<a name="line.468"></a>
+<span class="sourceLineNo">469</span>                  if (currAttr == null)  // Value was '%00'<a name="line.469"></a>
+<span class="sourceLineNo">470</span>                     return null;<a name="line.470"></a>
+<span class="sourceLineNo">471</span>                  state = S2;<a name="line.471"></a>
+<span class="sourceLineNo">472</span>               }<a name="line.472"></a>
+<span class="sourceLineNo">473</span>            } else if (state == S2) {<a name="line.473"></a>
+<span class="sourceLineNo">474</span>               if (c == EQ || c == '=')<a name="line.474"></a>
+<span class="sourceLineNo">475</span>                  state = S3;<a name="line.475"></a>
+<span class="sourceLineNo">476</span>               else if (c == -1 || c == ',' || c == ')' || c == AMP) {<a name="line.476"></a>
+<span class="sourceLineNo">477</span>                  m.put(currAttr, null);<a name="line.477"></a>
+<span class="sourceLineNo">478</span>                  if (c == ')' || c == -1 || c == AMP)<a name="line.478"></a>
+<span class="sourceLineNo">479</span>                     return m;<a name="line.479"></a>
+<span class="sourceLineNo">480</span>                  state = S1;<a name="line.480"></a>
+<span class="sourceLineNo">481</span>               }<a name="line.481"></a>
+<span class="sourceLineNo">482</span>            } else if (state == S3) {<a name="line.482"></a>
+<span class="sourceLineNo">483</span>               if (c == -1 || c == ',' || c == ')' || c == AMP) {<a name="line.483"></a>
+<span class="sourceLineNo">484</span>                  if (! currAttr.equals(getBeanTypePropertyName(m.getClassMeta()))) {<a name="line.484"></a>
+<span class="sourceLineNo">485</span>                     BeanPropertyMeta pMeta = m.getPropertyMeta(currAttr);<a name="line.485"></a>
+<span class="sourceLineNo">486</span>                     if (pMeta == null) {<a name="line.486"></a>
+<span class="sourceLineNo">487</span>                        onUnknownProperty(r.getPipe(), currAttr, m, currAttrLine, currAttrCol);<a name="line.487"></a>
+<span class="sourceLineNo">488</span>                     } else {<a name="line.488"></a>
+<span class="sourceLineNo">489</span>                        Object value = convertToType("", pMeta.getClassMeta());<a name="line.489"></a>
+<span class="sourceLineNo">490</span>                        pMeta.set(m, currAttr, value);<a name="line.490"></a>
+<span class="sourceLineNo">491</span>                     }<a name="line.491"></a>
+<span class="sourceLineNo">492</span>                  }<a name="line.492"></a>
+<span class="sourceLineNo">493</span>                  if (c == -1 || c == ')' || c == AMP)<a name="line.493"></a>
+<span class="sourceLineNo">494</span>                     return m;<a name="line.494"></a>
+<span class="sourceLineNo">495</span>                  state = S1;<a name="line.495"></a>
+<span class="sourceLineNo">496</span>               } else {<a name="line.496"></a>
+<span class="sourceLineNo">497</span>                  if (! currAttr.equals(getBeanTypePropertyName(m.getClassMeta()))) {<a name="line.497"></a>
+<span class="sourceLineNo">498</span>                     BeanPropertyMeta pMeta = m.getPropertyMeta(currAttr);<a name="line.498"></a>
+<span class="sourceLineNo">499</span>                     if (pMeta == null) {<a name="line.499"></a>
+<span class="sourceLineNo">500</span>                        onUnknownProperty(r.getPipe(), currAttr, m, currAttrLine, currAttrCol);<a name="line.500"></a>
+<span class="sourceLineNo">501</span>                        parseAnything(object(), r.unread(), m.getBean(false), false, null); // Read content anyway to ignore it<a name="line.501"></a>
+<span class="sourceLineNo">502</span>                     } else {<a name="line.502"></a>
+<span class="sourceLineNo">503</span>                        setCurrentProperty(pMeta);<a name="line.503"></a>
+<span class="sourceLineNo">504</span>                        ClassMeta&lt;?&gt; cm = pMeta.getClassMeta();<a name="lin

<TRUNCATED>


[07/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSchemaSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSchemaSerializerSession.html b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSchemaSerializerSession.html
index 679f221..2ab742f 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSchemaSerializerSession.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSchemaSerializerSession.html
@@ -57,506 +57,505 @@
 <span class="sourceLineNo">049</span>    *    These specify session-level information such as locale and URI context.<a name="line.49"></a>
 <span class="sourceLineNo">050</span>    *    It also include session-level properties that override the properties defined on the bean and<a name="line.50"></a>
 <span class="sourceLineNo">051</span>    *    serializer contexts.<a name="line.51"></a>
-<span class="sourceLineNo">052</span>    *    &lt;br&gt;If &lt;jk&gt;null&lt;/jk&gt;, defaults to {@link SerializerSessionArgs#DEFAULT}.<a name="line.52"></a>
-<span class="sourceLineNo">053</span>    */<a name="line.53"></a>
-<span class="sourceLineNo">054</span>   protected XmlSchemaSerializerSession(XmlSerializerContext ctx, SerializerSessionArgs args) {<a name="line.54"></a>
-<span class="sourceLineNo">055</span>      super(ctx, args);<a name="line.55"></a>
-<span class="sourceLineNo">056</span>   }<a name="line.56"></a>
-<span class="sourceLineNo">057</span><a name="line.57"></a>
-<span class="sourceLineNo">058</span>   @Override /* SerializerSession */<a name="line.58"></a>
-<span class="sourceLineNo">059</span>   protected void doSerialize(SerializerPipe out, Object o) throws Exception {<a name="line.59"></a>
-<span class="sourceLineNo">060</span>      if (enableNamespaces &amp;&amp; autoDetectNamespaces)<a name="line.60"></a>
-<span class="sourceLineNo">061</span>         findNsfMappings(o);<a name="line.61"></a>
-<span class="sourceLineNo">062</span><a name="line.62"></a>
-<span class="sourceLineNo">063</span>      Namespace xs = xsNamespace;<a name="line.63"></a>
-<span class="sourceLineNo">064</span>      Namespace[] allNs = append(new Namespace[]{defaultNamespace}, namespaces);<a name="line.64"></a>
-<span class="sourceLineNo">065</span><a name="line.65"></a>
-<span class="sourceLineNo">066</span>      Schemas schemas = new Schemas(xs, defaultNamespace, allNs);<a name="line.66"></a>
-<span class="sourceLineNo">067</span>      schemas.process(o);<a name="line.67"></a>
-<span class="sourceLineNo">068</span>      schemas.serializeTo(out.getWriter());<a name="line.68"></a>
-<span class="sourceLineNo">069</span>   }<a name="line.69"></a>
-<span class="sourceLineNo">070</span><a name="line.70"></a>
-<span class="sourceLineNo">071</span>   /**<a name="line.71"></a>
-<span class="sourceLineNo">072</span>    * Returns an XML-Schema validator based on the output returned by {@link #doSerialize(SerializerPipe, Object)};<a name="line.72"></a>
-<span class="sourceLineNo">073</span>    *<a name="line.73"></a>
-<span class="sourceLineNo">074</span>    * @param out The target writer.<a name="line.74"></a>
-<span class="sourceLineNo">075</span>    * @param o The object to serialize.<a name="line.75"></a>
-<span class="sourceLineNo">076</span>    * @return The new validator.<a name="line.76"></a>
-<span class="sourceLineNo">077</span>    * @throws Exception If a problem was detected in the XML-Schema output produced by this serializer.<a name="line.77"></a>
-<span class="sourceLineNo">078</span>    */<a name="line.78"></a>
-<span class="sourceLineNo">079</span>   public Validator getValidator(SerializerPipe out, Object o) throws Exception {<a name="line.79"></a>
-<span class="sourceLineNo">080</span>      doSerialize(out, o);<a name="line.80"></a>
-<span class="sourceLineNo">081</span>      String xmlSchema = out.getWriter().toString();<a name="line.81"></a>
-<span class="sourceLineNo">082</span><a name="line.82"></a>
-<span class="sourceLineNo">083</span>      // create a SchemaFactory capable of understanding WXS schemas<a name="line.83"></a>
-<span class="sourceLineNo">084</span>      SchemaFactory factory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);<a name="line.84"></a>
-<span class="sourceLineNo">085</span><a name="line.85"></a>
-<span class="sourceLineNo">086</span>      if (xmlSchema.indexOf('\u0000') != -1) {<a name="line.86"></a>
-<span class="sourceLineNo">087</span><a name="line.87"></a>
-<span class="sourceLineNo">088</span>         // Break it up into a map of namespaceURI-&gt;schema document<a name="line.88"></a>
-<span class="sourceLineNo">089</span>         final Map&lt;String,String&gt; schemas = new HashMap&lt;String,String&gt;();<a name="line.89"></a>
-<span class="sourceLineNo">090</span>         String[] ss = xmlSchema.split("\u0000");<a name="line.90"></a>
-<span class="sourceLineNo">091</span>         xmlSchema = ss[0];<a name="line.91"></a>
-<span class="sourceLineNo">092</span>         for (String s : ss) {<a name="line.92"></a>
-<span class="sourceLineNo">093</span>            Matcher m = pTargetNs.matcher(s);<a name="line.93"></a>
-<span class="sourceLineNo">094</span>            if (m.find())<a name="line.94"></a>
-<span class="sourceLineNo">095</span>               schemas.put(m.group(1), s);<a name="line.95"></a>
-<span class="sourceLineNo">096</span>         }<a name="line.96"></a>
-<span class="sourceLineNo">097</span><a name="line.97"></a>
-<span class="sourceLineNo">098</span>         // Create a custom resolver<a name="line.98"></a>
-<span class="sourceLineNo">099</span>         factory.setResourceResolver(<a name="line.99"></a>
-<span class="sourceLineNo">100</span>            new LSResourceResolver() {<a name="line.100"></a>
-<span class="sourceLineNo">101</span><a name="line.101"></a>
-<span class="sourceLineNo">102</span>               @Override /* LSResourceResolver */<a name="line.102"></a>
-<span class="sourceLineNo">103</span>               public LSInput resolveResource(String type, String namespaceURI, String publicId, String systemId, String baseURI) {<a name="line.103"></a>
-<span class="sourceLineNo">104</span><a name="line.104"></a>
-<span class="sourceLineNo">105</span>                  String schema = schemas.get(namespaceURI);<a name="line.105"></a>
-<span class="sourceLineNo">106</span>                  if (schema == null)<a name="line.106"></a>
-<span class="sourceLineNo">107</span>                     throw new FormattedRuntimeException("No schema found for namespaceURI ''{0}''", namespaceURI);<a name="line.107"></a>
-<span class="sourceLineNo">108</span><a name="line.108"></a>
-<span class="sourceLineNo">109</span>                  try {<a name="line.109"></a>
-<span class="sourceLineNo">110</span>                     DOMImplementationRegistry registry = DOMImplementationRegistry.newInstance();<a name="line.110"></a>
-<span class="sourceLineNo">111</span>                     DOMImplementationLS domImplementationLS = (DOMImplementationLS)registry.getDOMImplementation("LS 3.0");<a name="line.111"></a>
-<span class="sourceLineNo">112</span>                     LSInput in = domImplementationLS.createLSInput();<a name="line.112"></a>
-<span class="sourceLineNo">113</span>                     in.setCharacterStream(new StringReader(schema));<a name="line.113"></a>
-<span class="sourceLineNo">114</span>                     in.setSystemId(systemId);<a name="line.114"></a>
-<span class="sourceLineNo">115</span>                     return in;<a name="line.115"></a>
-<span class="sourceLineNo">116</span><a name="line.116"></a>
-<span class="sourceLineNo">117</span>                  } catch (Exception e) {<a name="line.117"></a>
-<span class="sourceLineNo">118</span>                     throw new RuntimeException(e);<a name="line.118"></a>
-<span class="sourceLineNo">119</span>                  }<a name="line.119"></a>
-<span class="sourceLineNo">120</span>               }<a name="line.120"></a>
-<span class="sourceLineNo">121</span>            }<a name="line.121"></a>
-<span class="sourceLineNo">122</span>         );<a name="line.122"></a>
-<span class="sourceLineNo">123</span>      }<a name="line.123"></a>
-<span class="sourceLineNo">124</span>      return factory.newSchema(new StreamSource(new StringReader(xmlSchema))).newValidator();<a name="line.124"></a>
-<span class="sourceLineNo">125</span>   }<a name="line.125"></a>
-<span class="sourceLineNo">126</span><a name="line.126"></a>
-<span class="sourceLineNo">127</span>   private static Pattern pTargetNs = Pattern.compile("targetNamespace=['\"]([^'\"]+)['\"]");<a name="line.127"></a>
+<span class="sourceLineNo">052</span>    */<a name="line.52"></a>
+<span class="sourceLineNo">053</span>   protected XmlSchemaSerializerSession(XmlSerializerContext ctx, SerializerSessionArgs args) {<a name="line.53"></a>
+<span class="sourceLineNo">054</span>      super(ctx, args);<a name="line.54"></a>
+<span class="sourceLineNo">055</span>   }<a name="line.55"></a>
+<span class="sourceLineNo">056</span><a name="line.56"></a>
+<span class="sourceLineNo">057</span>   @Override /* SerializerSession */<a name="line.57"></a>
+<span class="sourceLineNo">058</span>   protected void doSerialize(SerializerPipe out, Object o) throws Exception {<a name="line.58"></a>
+<span class="sourceLineNo">059</span>      if (enableNamespaces &amp;&amp; autoDetectNamespaces)<a name="line.59"></a>
+<span class="sourceLineNo">060</span>         findNsfMappings(o);<a name="line.60"></a>
+<span class="sourceLineNo">061</span><a name="line.61"></a>
+<span class="sourceLineNo">062</span>      Namespace xs = xsNamespace;<a name="line.62"></a>
+<span class="sourceLineNo">063</span>      Namespace[] allNs = append(new Namespace[]{defaultNamespace}, namespaces);<a name="line.63"></a>
+<span class="sourceLineNo">064</span><a name="line.64"></a>
+<span class="sourceLineNo">065</span>      Schemas schemas = new Schemas(xs, defaultNamespace, allNs);<a name="line.65"></a>
+<span class="sourceLineNo">066</span>      schemas.process(o);<a name="line.66"></a>
+<span class="sourceLineNo">067</span>      schemas.serializeTo(out.getWriter());<a name="line.67"></a>
+<span class="sourceLineNo">068</span>   }<a name="line.68"></a>
+<span class="sourceLineNo">069</span><a name="line.69"></a>
+<span class="sourceLineNo">070</span>   /**<a name="line.70"></a>
+<span class="sourceLineNo">071</span>    * Returns an XML-Schema validator based on the output returned by {@link #doSerialize(SerializerPipe, Object)};<a name="line.71"></a>
+<span class="sourceLineNo">072</span>    *<a name="line.72"></a>
+<span class="sourceLineNo">073</span>    * @param out The target writer.<a name="line.73"></a>
+<span class="sourceLineNo">074</span>    * @param o The object to serialize.<a name="line.74"></a>
+<span class="sourceLineNo">075</span>    * @return The new validator.<a name="line.75"></a>
+<span class="sourceLineNo">076</span>    * @throws Exception If a problem was detected in the XML-Schema output produced by this serializer.<a name="line.76"></a>
+<span class="sourceLineNo">077</span>    */<a name="line.77"></a>
+<span class="sourceLineNo">078</span>   public Validator getValidator(SerializerPipe out, Object o) throws Exception {<a name="line.78"></a>
+<span class="sourceLineNo">079</span>      doSerialize(out, o);<a name="line.79"></a>
+<span class="sourceLineNo">080</span>      String xmlSchema = out.getWriter().toString();<a name="line.80"></a>
+<span class="sourceLineNo">081</span><a name="line.81"></a>
+<span class="sourceLineNo">082</span>      // create a SchemaFactory capable of understanding WXS schemas<a name="line.82"></a>
+<span class="sourceLineNo">083</span>      SchemaFactory factory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);<a name="line.83"></a>
+<span class="sourceLineNo">084</span><a name="line.84"></a>
+<span class="sourceLineNo">085</span>      if (xmlSchema.indexOf('\u0000') != -1) {<a name="line.85"></a>
+<span class="sourceLineNo">086</span><a name="line.86"></a>
+<span class="sourceLineNo">087</span>         // Break it up into a map of namespaceURI-&gt;schema document<a name="line.87"></a>
+<span class="sourceLineNo">088</span>         final Map&lt;String,String&gt; schemas = new HashMap&lt;String,String&gt;();<a name="line.88"></a>
+<span class="sourceLineNo">089</span>         String[] ss = xmlSchema.split("\u0000");<a name="line.89"></a>
+<span class="sourceLineNo">090</span>         xmlSchema = ss[0];<a name="line.90"></a>
+<span class="sourceLineNo">091</span>         for (String s : ss) {<a name="line.91"></a>
+<span class="sourceLineNo">092</span>            Matcher m = pTargetNs.matcher(s);<a name="line.92"></a>
+<span class="sourceLineNo">093</span>            if (m.find())<a name="line.93"></a>
+<span class="sourceLineNo">094</span>               schemas.put(m.group(1), s);<a name="line.94"></a>
+<span class="sourceLineNo">095</span>         }<a name="line.95"></a>
+<span class="sourceLineNo">096</span><a name="line.96"></a>
+<span class="sourceLineNo">097</span>         // Create a custom resolver<a name="line.97"></a>
+<span class="sourceLineNo">098</span>         factory.setResourceResolver(<a name="line.98"></a>
+<span class="sourceLineNo">099</span>            new LSResourceResolver() {<a name="line.99"></a>
+<span class="sourceLineNo">100</span><a name="line.100"></a>
+<span class="sourceLineNo">101</span>               @Override /* LSResourceResolver */<a name="line.101"></a>
+<span class="sourceLineNo">102</span>               public LSInput resolveResource(String type, String namespaceURI, String publicId, String systemId, String baseURI) {<a name="line.102"></a>
+<span class="sourceLineNo">103</span><a name="line.103"></a>
+<span class="sourceLineNo">104</span>                  String schema = schemas.get(namespaceURI);<a name="line.104"></a>
+<span class="sourceLineNo">105</span>                  if (schema == null)<a name="line.105"></a>
+<span class="sourceLineNo">106</span>                     throw new FormattedRuntimeException("No schema found for namespaceURI ''{0}''", namespaceURI);<a name="line.106"></a>
+<span class="sourceLineNo">107</span><a name="line.107"></a>
+<span class="sourceLineNo">108</span>                  try {<a name="line.108"></a>
+<span class="sourceLineNo">109</span>                     DOMImplementationRegistry registry = DOMImplementationRegistry.newInstance();<a name="line.109"></a>
+<span class="sourceLineNo">110</span>                     DOMImplementationLS domImplementationLS = (DOMImplementationLS)registry.getDOMImplementation("LS 3.0");<a name="line.110"></a>
+<span class="sourceLineNo">111</span>                     LSInput in = domImplementationLS.createLSInput();<a name="line.111"></a>
+<span class="sourceLineNo">112</span>                     in.setCharacterStream(new StringReader(schema));<a name="line.112"></a>
+<span class="sourceLineNo">113</span>                     in.setSystemId(systemId);<a name="line.113"></a>
+<span class="sourceLineNo">114</span>                     return in;<a name="line.114"></a>
+<span class="sourceLineNo">115</span><a name="line.115"></a>
+<span class="sourceLineNo">116</span>                  } catch (Exception e) {<a name="line.116"></a>
+<span class="sourceLineNo">117</span>                     throw new RuntimeException(e);<a name="line.117"></a>
+<span class="sourceLineNo">118</span>                  }<a name="line.118"></a>
+<span class="sourceLineNo">119</span>               }<a name="line.119"></a>
+<span class="sourceLineNo">120</span>            }<a name="line.120"></a>
+<span class="sourceLineNo">121</span>         );<a name="line.121"></a>
+<span class="sourceLineNo">122</span>      }<a name="line.122"></a>
+<span class="sourceLineNo">123</span>      return factory.newSchema(new StreamSource(new StringReader(xmlSchema))).newValidator();<a name="line.123"></a>
+<span class="sourceLineNo">124</span>   }<a name="line.124"></a>
+<span class="sourceLineNo">125</span><a name="line.125"></a>
+<span class="sourceLineNo">126</span>   private static Pattern pTargetNs = Pattern.compile("targetNamespace=['\"]([^'\"]+)['\"]");<a name="line.126"></a>
+<span class="sourceLineNo">127</span><a name="line.127"></a>
 <span class="sourceLineNo">128</span><a name="line.128"></a>
-<span class="sourceLineNo">129</span><a name="line.129"></a>
-<span class="sourceLineNo">130</span>   /* An instance of a global element, global attribute, or XML type to be serialized. */<a name="line.130"></a>
-<span class="sourceLineNo">131</span>   private static class QueueEntry {<a name="line.131"></a>
-<span class="sourceLineNo">132</span>      Namespace ns;<a name="line.132"></a>
-<span class="sourceLineNo">133</span>      String name;<a name="line.133"></a>
-<span class="sourceLineNo">134</span>      ClassMeta&lt;?&gt; cm;<a name="line.134"></a>
-<span class="sourceLineNo">135</span>      QueueEntry(Namespace ns, String name, ClassMeta&lt;?&gt; cm) {<a name="line.135"></a>
-<span class="sourceLineNo">136</span>         this.ns = ns;<a name="line.136"></a>
-<span class="sourceLineNo">137</span>         this.name = name;<a name="line.137"></a>
-<span class="sourceLineNo">138</span>         this.cm = cm;<a name="line.138"></a>
-<span class="sourceLineNo">139</span>      }<a name="line.139"></a>
-<span class="sourceLineNo">140</span>   }<a name="line.140"></a>
-<span class="sourceLineNo">141</span><a name="line.141"></a>
-<span class="sourceLineNo">142</span>   /* An encapsulation of all schemas present in the metamodel of the serialized object. */<a name="line.142"></a>
-<span class="sourceLineNo">143</span>   private class Schemas extends LinkedHashMap&lt;Namespace,Schema&gt; {<a name="line.143"></a>
-<span class="sourceLineNo">144</span><a name="line.144"></a>
-<span class="sourceLineNo">145</span>      private static final long serialVersionUID = 1L;<a name="line.145"></a>
-<span class="sourceLineNo">146</span><a name="line.146"></a>
-<span class="sourceLineNo">147</span>      private Namespace defaultNs;<a name="line.147"></a>
-<span class="sourceLineNo">148</span>      private LinkedList&lt;QueueEntry&gt;<a name="line.148"></a>
-<span class="sourceLineNo">149</span>         elementQueue = new LinkedList&lt;QueueEntry&gt;(),<a name="line.149"></a>
-<span class="sourceLineNo">150</span>         attributeQueue = new LinkedList&lt;QueueEntry&gt;(),<a name="line.150"></a>
-<span class="sourceLineNo">151</span>         typeQueue = new LinkedList&lt;QueueEntry&gt;();<a name="line.151"></a>
-<span class="sourceLineNo">152</span><a name="line.152"></a>
-<span class="sourceLineNo">153</span>      private Schemas(Namespace xs, Namespace defaultNs, Namespace[] allNs) throws IOException {<a name="line.153"></a>
-<span class="sourceLineNo">154</span>         this.defaultNs = defaultNs;<a name="line.154"></a>
-<span class="sourceLineNo">155</span>         for (Namespace ns : allNs)<a name="line.155"></a>
-<span class="sourceLineNo">156</span>            put(ns, new Schema(this, xs, ns, defaultNs, allNs));<a name="line.156"></a>
-<span class="sourceLineNo">157</span>      }<a name="line.157"></a>
-<span class="sourceLineNo">158</span><a name="line.158"></a>
-<span class="sourceLineNo">159</span>      private Schema getSchema(Namespace ns) {<a name="line.159"></a>
-<span class="sourceLineNo">160</span>         if (ns == null)<a name="line.160"></a>
-<span class="sourceLineNo">161</span>            ns = defaultNs;<a name="line.161"></a>
-<span class="sourceLineNo">162</span>         Schema s = get(ns);<a name="line.162"></a>
-<span class="sourceLineNo">163</span>         if (s == null)<a name="line.163"></a>
-<span class="sourceLineNo">164</span>            throw new FormattedRuntimeException("No schema defined for namespace ''{0}''", ns);<a name="line.164"></a>
-<span class="sourceLineNo">165</span>         return s;<a name="line.165"></a>
-<span class="sourceLineNo">166</span>      }<a name="line.166"></a>
-<span class="sourceLineNo">167</span><a name="line.167"></a>
-<span class="sourceLineNo">168</span>      private void process(Object o) throws IOException {<a name="line.168"></a>
-<span class="sourceLineNo">169</span>         ClassMeta&lt;?&gt; cm = getClassMetaForObject(o);<a name="line.169"></a>
-<span class="sourceLineNo">170</span>         Namespace ns = defaultNs;<a name="line.170"></a>
-<span class="sourceLineNo">171</span>         if (cm == null)<a name="line.171"></a>
-<span class="sourceLineNo">172</span>            queueElement(ns, "null", object());<a name="line.172"></a>
-<span class="sourceLineNo">173</span>         else {<a name="line.173"></a>
-<span class="sourceLineNo">174</span>            XmlClassMeta xmlMeta = cm.getExtendedMeta(XmlClassMeta.class);<a name="line.174"></a>
-<span class="sourceLineNo">175</span>            if (cm.getDictionaryName() != null &amp;&amp; xmlMeta.getNamespace() != null)<a name="line.175"></a>
-<span class="sourceLineNo">176</span>               ns = xmlMeta.getNamespace();<a name="line.176"></a>
-<span class="sourceLineNo">177</span>            queueElement(ns, cm.getDictionaryName(), cm);<a name="line.177"></a>
-<span class="sourceLineNo">178</span>         }<a name="line.178"></a>
-<span class="sourceLineNo">179</span>         processQueue();<a name="line.179"></a>
-<span class="sourceLineNo">180</span>      }<a name="line.180"></a>
+<span class="sourceLineNo">129</span>   /* An instance of a global element, global attribute, or XML type to be serialized. */<a name="line.129"></a>
+<span class="sourceLineNo">130</span>   private static class QueueEntry {<a name="line.130"></a>
+<span class="sourceLineNo">131</span>      Namespace ns;<a name="line.131"></a>
+<span class="sourceLineNo">132</span>      String name;<a name="line.132"></a>
+<span class="sourceLineNo">133</span>      ClassMeta&lt;?&gt; cm;<a name="line.133"></a>
+<span class="sourceLineNo">134</span>      QueueEntry(Namespace ns, String name, ClassMeta&lt;?&gt; cm) {<a name="line.134"></a>
+<span class="sourceLineNo">135</span>         this.ns = ns;<a name="line.135"></a>
+<span class="sourceLineNo">136</span>         this.name = name;<a name="line.136"></a>
+<span class="sourceLineNo">137</span>         this.cm = cm;<a name="line.137"></a>
+<span class="sourceLineNo">138</span>      }<a name="line.138"></a>
+<span class="sourceLineNo">139</span>   }<a name="line.139"></a>
+<span class="sourceLineNo">140</span><a name="line.140"></a>
+<span class="sourceLineNo">141</span>   /* An encapsulation of all schemas present in the metamodel of the serialized object. */<a name="line.141"></a>
+<span class="sourceLineNo">142</span>   private class Schemas extends LinkedHashMap&lt;Namespace,Schema&gt; {<a name="line.142"></a>
+<span class="sourceLineNo">143</span><a name="line.143"></a>
+<span class="sourceLineNo">144</span>      private static final long serialVersionUID = 1L;<a name="line.144"></a>
+<span class="sourceLineNo">145</span><a name="line.145"></a>
+<span class="sourceLineNo">146</span>      private Namespace defaultNs;<a name="line.146"></a>
+<span class="sourceLineNo">147</span>      private LinkedList&lt;QueueEntry&gt;<a name="line.147"></a>
+<span class="sourceLineNo">148</span>         elementQueue = new LinkedList&lt;QueueEntry&gt;(),<a name="line.148"></a>
+<span class="sourceLineNo">149</span>         attributeQueue = new LinkedList&lt;QueueEntry&gt;(),<a name="line.149"></a>
+<span class="sourceLineNo">150</span>         typeQueue = new LinkedList&lt;QueueEntry&gt;();<a name="line.150"></a>
+<span class="sourceLineNo">151</span><a name="line.151"></a>
+<span class="sourceLineNo">152</span>      private Schemas(Namespace xs, Namespace defaultNs, Namespace[] allNs) throws IOException {<a name="line.152"></a>
+<span class="sourceLineNo">153</span>         this.defaultNs = defaultNs;<a name="line.153"></a>
+<span class="sourceLineNo">154</span>         for (Namespace ns : allNs)<a name="line.154"></a>
+<span class="sourceLineNo">155</span>            put(ns, new Schema(this, xs, ns, defaultNs, allNs));<a name="line.155"></a>
+<span class="sourceLineNo">156</span>      }<a name="line.156"></a>
+<span class="sourceLineNo">157</span><a name="line.157"></a>
+<span class="sourceLineNo">158</span>      private Schema getSchema(Namespace ns) {<a name="line.158"></a>
+<span class="sourceLineNo">159</span>         if (ns == null)<a name="line.159"></a>
+<span class="sourceLineNo">160</span>            ns = defaultNs;<a name="line.160"></a>
+<span class="sourceLineNo">161</span>         Schema s = get(ns);<a name="line.161"></a>
+<span class="sourceLineNo">162</span>         if (s == null)<a name="line.162"></a>
+<span class="sourceLineNo">163</span>            throw new FormattedRuntimeException("No schema defined for namespace ''{0}''", ns);<a name="line.163"></a>
+<span class="sourceLineNo">164</span>         return s;<a name="line.164"></a>
+<span class="sourceLineNo">165</span>      }<a name="line.165"></a>
+<span class="sourceLineNo">166</span><a name="line.166"></a>
+<span class="sourceLineNo">167</span>      private void process(Object o) throws IOException {<a name="line.167"></a>
+<span class="sourceLineNo">168</span>         ClassMeta&lt;?&gt; cm = getClassMetaForObject(o);<a name="line.168"></a>
+<span class="sourceLineNo">169</span>         Namespace ns = defaultNs;<a name="line.169"></a>
+<span class="sourceLineNo">170</span>         if (cm == null)<a name="line.170"></a>
+<span class="sourceLineNo">171</span>            queueElement(ns, "null", object());<a name="line.171"></a>
+<span class="sourceLineNo">172</span>         else {<a name="line.172"></a>
+<span class="sourceLineNo">173</span>            XmlClassMeta xmlMeta = cm.getExtendedMeta(XmlClassMeta.class);<a name="line.173"></a>
+<span class="sourceLineNo">174</span>            if (cm.getDictionaryName() != null &amp;&amp; xmlMeta.getNamespace() != null)<a name="line.174"></a>
+<span class="sourceLineNo">175</span>               ns = xmlMeta.getNamespace();<a name="line.175"></a>
+<span class="sourceLineNo">176</span>            queueElement(ns, cm.getDictionaryName(), cm);<a name="line.176"></a>
+<span class="sourceLineNo">177</span>         }<a name="line.177"></a>
+<span class="sourceLineNo">178</span>         processQueue();<a name="line.178"></a>
+<span class="sourceLineNo">179</span>      }<a name="line.179"></a>
+<span class="sourceLineNo">180</span><a name="line.180"></a>
 <span class="sourceLineNo">181</span><a name="line.181"></a>
-<span class="sourceLineNo">182</span><a name="line.182"></a>
-<span class="sourceLineNo">183</span>      private void processQueue() throws IOException {<a name="line.183"></a>
-<span class="sourceLineNo">184</span>         boolean b;<a name="line.184"></a>
-<span class="sourceLineNo">185</span>         do {<a name="line.185"></a>
-<span class="sourceLineNo">186</span>            b = false;<a name="line.186"></a>
-<span class="sourceLineNo">187</span>            while (! elementQueue.isEmpty()) {<a name="line.187"></a>
-<span class="sourceLineNo">188</span>               QueueEntry q = elementQueue.removeFirst();<a name="line.188"></a>
-<span class="sourceLineNo">189</span>               b |= getSchema(q.ns).processElement(q.name, q.cm);<a name="line.189"></a>
-<span class="sourceLineNo">190</span>            }<a name="line.190"></a>
-<span class="sourceLineNo">191</span>            while (! typeQueue.isEmpty()) {<a name="line.191"></a>
-<span class="sourceLineNo">192</span>               QueueEntry q = typeQueue.removeFirst();<a name="line.192"></a>
-<span class="sourceLineNo">193</span>               b |= getSchema(q.ns).processType(q.name, q.cm);<a name="line.193"></a>
-<span class="sourceLineNo">194</span>            }<a name="line.194"></a>
-<span class="sourceLineNo">195</span>            while (! attributeQueue.isEmpty()) {<a name="line.195"></a>
-<span class="sourceLineNo">196</span>               QueueEntry q = attributeQueue.removeFirst();<a name="line.196"></a>
-<span class="sourceLineNo">197</span>               b |= getSchema(q.ns).processAttribute(q.name, q.cm);<a name="line.197"></a>
-<span class="sourceLineNo">198</span>            }<a name="line.198"></a>
-<span class="sourceLineNo">199</span>         } while (b);<a name="line.199"></a>
-<span class="sourceLineNo">200</span>      }<a name="line.200"></a>
-<span class="sourceLineNo">201</span><a name="line.201"></a>
-<span class="sourceLineNo">202</span>      private void queueElement(Namespace ns, String name, ClassMeta&lt;?&gt; cm) {<a name="line.202"></a>
-<span class="sourceLineNo">203</span>         elementQueue.add(new QueueEntry(ns, name, cm));<a name="line.203"></a>
-<span class="sourceLineNo">204</span>      }<a name="line.204"></a>
-<span class="sourceLineNo">205</span><a name="line.205"></a>
-<span class="sourceLineNo">206</span>      private void queueType(Namespace ns, String name, ClassMeta&lt;?&gt; cm) {<a name="line.206"></a>
-<span class="sourceLineNo">207</span>         if (name == null)<a name="line.207"></a>
-<span class="sourceLineNo">208</span>            name = XmlUtils.encodeElementName(cm);<a name="line.208"></a>
-<span class="sourceLineNo">209</span>         typeQueue.add(new QueueEntry(ns, name, cm));<a name="line.209"></a>
-<span class="sourceLineNo">210</span>      }<a name="line.210"></a>
-<span class="sourceLineNo">211</span><a name="line.211"></a>
-<span class="sourceLineNo">212</span>      private void queueAttribute(Namespace ns, String name, ClassMeta&lt;?&gt; cm) {<a name="line.212"></a>
-<span class="sourceLineNo">213</span>         attributeQueue.add(new QueueEntry(ns, name, cm));<a name="line.213"></a>
-<span class="sourceLineNo">214</span>      }<a name="line.214"></a>
-<span class="sourceLineNo">215</span><a name="line.215"></a>
-<span class="sourceLineNo">216</span>      private void serializeTo(Writer w) throws IOException {<a name="line.216"></a>
-<span class="sourceLineNo">217</span>         boolean b = false;<a name="line.217"></a>
-<span class="sourceLineNo">218</span>         for (Schema s : values()) {<a name="line.218"></a>
-<span class="sourceLineNo">219</span>            if (b)<a name="line.219"></a>
-<span class="sourceLineNo">220</span>               w.append('\u0000');<a name="line.220"></a>
-<span class="sourceLineNo">221</span>            w.append(s.toString());<a name="line.221"></a>
-<span class="sourceLineNo">222</span>            b = true;<a name="line.222"></a>
-<span class="sourceLineNo">223</span>         }<a name="line.223"></a>
-<span class="sourceLineNo">224</span>      }<a name="line.224"></a>
-<span class="sourceLineNo">225</span>   }<a name="line.225"></a>
-<span class="sourceLineNo">226</span><a name="line.226"></a>
-<span class="sourceLineNo">227</span>   /* An encapsulation of a single schema. */<a name="line.227"></a>
-<span class="sourceLineNo">228</span>   private class Schema {<a name="line.228"></a>
-<span class="sourceLineNo">229</span>      private StringWriter sw = new StringWriter();<a name="line.229"></a>
-<span class="sourceLineNo">230</span>      private XmlWriter w;<a name="line.230"></a>
-<span class="sourceLineNo">231</span>      private Namespace defaultNs, targetNs;<a name="line.231"></a>
-<span class="sourceLineNo">232</span>      private Schemas schemas;<a name="line.232"></a>
-<span class="sourceLineNo">233</span>      private Set&lt;String&gt;<a name="line.233"></a>
-<span class="sourceLineNo">234</span>         processedTypes = new HashSet&lt;String&gt;(),<a name="line.234"></a>
-<span class="sourceLineNo">235</span>         processedAttributes = new HashSet&lt;String&gt;(),<a name="line.235"></a>
-<span class="sourceLineNo">236</span>         processedElements = new HashSet&lt;String&gt;();<a name="line.236"></a>
-<span class="sourceLineNo">237</span><a name="line.237"></a>
-<span class="sourceLineNo">238</span>      public Schema(Schemas schemas, Namespace xs, Namespace targetNs, Namespace defaultNs, Namespace[] allNs) throws IOException {<a name="line.238"></a>
-<span class="sourceLineNo">239</span>         this.schemas = schemas;<a name="line.239"></a>
-<span class="sourceLineNo">240</span>         this.defaultNs = defaultNs;<a name="line.240"></a>
-<span class="sourceLineNo">241</span>         this.targetNs = targetNs;<a name="line.241"></a>
-<span class="sourceLineNo">242</span>         w = new XmlWriter(sw, isUseWhitespace(), getMaxIndent(), isTrimStrings(), getQuoteChar(), null, true, null);<a name="line.242"></a>
-<span class="sourceLineNo">243</span>         int i = indent;<a name="line.243"></a>
-<span class="sourceLineNo">244</span>         w.oTag(i, "schema");<a name="line.244"></a>
-<span class="sourceLineNo">245</span>         w.attr("xmlns", xs.getUri());<a name="line.245"></a>
-<span class="sourceLineNo">246</span>         w.attr("targetNamespace", targetNs.getUri());<a name="line.246"></a>
-<span class="sourceLineNo">247</span>         w.attr("elementFormDefault", "qualified");<a name="line.247"></a>
-<span class="sourceLineNo">248</span>         if (targetNs != defaultNs)<a name="line.248"></a>
-<span class="sourceLineNo">249</span>            w.attr("attributeFormDefault", "qualified");<a name="line.249"></a>
-<span class="sourceLineNo">250</span>         for (Namespace ns2 : allNs)<a name="line.250"></a>
-<span class="sourceLineNo">251</span>            w.attr("xmlns", ns2.name, ns2.uri);<a name="line.251"></a>
-<span class="sourceLineNo">252</span>         w.append('&gt;').nl(i);<a name="line.252"></a>
-<span class="sourceLineNo">253</span>         for (Namespace ns : allNs) {<a name="line.253"></a>
-<span class="sourceLineNo">254</span>            if (ns != targetNs) {<a name="line.254"></a>
-<span class="sourceLineNo">255</span>               w.oTag(i+1, "import")<a name="line.255"></a>
-<span class="sourceLineNo">256</span>                  .attr("namespace", ns.getUri())<a name="line.256"></a>
-<span class="sourceLineNo">257</span>                  .attr("schemaLocation", ns.getName()+".xsd")<a name="line.257"></a>
-<span class="sourceLineNo">258</span>                  .append("/&gt;").nl(i+1);<a name="line.258"></a>
-<span class="sourceLineNo">259</span>            }<a name="line.259"></a>
-<span class="sourceLineNo">260</span>         }<a name="line.260"></a>
-<span class="sourceLineNo">261</span>      }<a name="line.261"></a>
-<span class="sourceLineNo">262</span><a name="line.262"></a>
-<span class="sourceLineNo">263</span>      private boolean processElement(String name, ClassMeta&lt;?&gt; cm) throws IOException {<a name="line.263"></a>
-<span class="sourceLineNo">264</span>         if (processedElements.contains(name))<a name="line.264"></a>
-<span class="sourceLineNo">265</span>            return false;<a name="line.265"></a>
-<span class="sourceLineNo">266</span>         processedElements.add(name);<a name="line.266"></a>
-<span class="sourceLineNo">267</span><a name="line.267"></a>
-<span class="sourceLineNo">268</span>         ClassMeta&lt;?&gt; ft = cm.getSerializedClassMeta();<a name="line.268"></a>
-<span class="sourceLineNo">269</span>         if (name == null)<a name="line.269"></a>
-<span class="sourceLineNo">270</span>            name = getElementName(ft);<a name="line.270"></a>
-<span class="sourceLineNo">271</span>         Namespace ns = first(ft.getExtendedMeta(XmlClassMeta.class).getNamespace(), defaultNs);<a name="line.271"></a>
-<span class="sourceLineNo">272</span>         String type = getXmlType(ns, ft);<a name="line.272"></a>
-<span class="sourceLineNo">273</span><a name="line.273"></a>
-<span class="sourceLineNo">274</span>         w.oTag(indent+1, "element")<a name="line.274"></a>
-<span class="sourceLineNo">275</span>            .attr("name", XmlUtils.encodeElementName(name))<a name="line.275"></a>
-<span class="sourceLineNo">276</span>            .attr("type", type)<a name="line.276"></a>
-<span class="sourceLineNo">277</span>            .append('/').append('&gt;').nl(indent+1);<a name="line.277"></a>
-<span class="sourceLineNo">278</span><a name="line.278"></a>
-<span class="sourceLineNo">279</span>         schemas.queueType(ns, null, ft);<a name="line.279"></a>
-<span class="sourceLineNo">280</span>         schemas.processQueue();<a name="line.280"></a>
-<span class="sourceLineNo">281</span>         return true;<a name="line.281"></a>
-<span class="sourceLineNo">282</span>      }<a name="line.282"></a>
-<span class="sourceLineNo">283</span><a name="line.283"></a>
-<span class="sourceLineNo">284</span>      private boolean processAttribute(String name, ClassMeta&lt;?&gt; cm) throws IOException {<a name="line.284"></a>
-<span class="sourceLineNo">285</span>         if (processedAttributes.contains(name))<a name="line.285"></a>
-<span class="sourceLineNo">286</span>            return false;<a name="line.286"></a>
-<span class="sourceLineNo">287</span>         processedAttributes.add(name);<a name="line.287"></a>
-<span class="sourceLineNo">288</span><a name="line.288"></a>
-<span class="sourceLineNo">289</span>         String type = getXmlAttrType(cm);<a name="line.289"></a>
-<span class="sourceLineNo">290</span><a name="line.290"></a>
-<span class="sourceLineNo">291</span>         w.oTag(indent+1, "attribute")<a name="line.291"></a>
-<span class="sourceLineNo">292</span>            .attr("name", name)<a name="line.292"></a>
-<span class="sourceLineNo">293</span>            .attr("type", type)<a name="line.293"></a>
-<span class="sourceLineNo">294</span>            .append('/').append('&gt;').nl(indent+1);<a name="line.294"></a>
-<span class="sourceLineNo">295</span><a name="line.295"></a>
-<span class="sourceLineNo">296</span>         return true;<a name="line.296"></a>
-<span class="sourceLineNo">297</span>      }<a name="line.297"></a>
-<span class="sourceLineNo">298</span><a name="line.298"></a>
-<span class="sourceLineNo">299</span>      private boolean processType(String name, ClassMeta&lt;?&gt; cm) throws IOException {<a name="line.299"></a>
-<span class="sourceLineNo">300</span>         if (processedTypes.contains(name))<a name="line.300"></a>
-<span class="sourceLineNo">301</span>            return false;<a name="line.301"></a>
-<span class="sourceLineNo">302</span>         processedTypes.add(name);<a name="line.302"></a>
-<span class="sourceLineNo">303</span><a name="line.303"></a>
-<span class="sourceLineNo">304</span>         int i = indent + 1;<a name="line.304"></a>
-<span class="sourceLineNo">305</span><a name="line.305"></a>
-<span class="sourceLineNo">306</span>         cm = cm.getSerializedClassMeta();<a name="line.306"></a>
-<span class="sourceLineNo">307</span>         XmlBeanMeta xbm = cm.isBean() ? cm.getBeanMeta().getExtendedMeta(XmlBeanMeta.class) : null;<a name="line.307"></a>
-<span class="sourceLineNo">308</span><a name="line.308"></a>
-<span class="sourceLineNo">309</span>         w.oTag(i, "complexType")<a name="line.309"></a>
-<span class="sourceLineNo">310</span>            .attr("name", name);<a name="line.310"></a>
-<span class="sourceLineNo">311</span><a name="line.311"></a>
-<span class="sourceLineNo">312</span>         // This element can have mixed content if:<a name="line.312"></a>
-<span class="sourceLineNo">313</span>         //    1) It's a generic Object (so it can theoretically be anything)<a name="line.313"></a>
-<span class="sourceLineNo">314</span>         //    2) The bean has a property defined with @XmlFormat.CONTENT.<a name="line.314"></a>
-<span class="sourceLineNo">315</span>         if ((xbm != null &amp;&amp; (xbm.getContentFormat() != null &amp;&amp; xbm.getContentFormat().isOneOf(TEXT,TEXT_PWS,MIXED,MIXED_PWS,XMLTEXT))) || ! cm.isMapOrBean())<a name="line.315"></a>
-<span class="sourceLineNo">316</span>            w.attr("mixed", "true");<a name="line.316"></a>
-<span class="sourceLineNo">317</span><a name="line.317"></a>
-<span class="sourceLineNo">318</span>         w.cTag().nl(i);<a name="line.318"></a>
-<span class="sourceLineNo">319</span><a name="line.319"></a>
-<span class="sourceLineNo">320</span>         if (! (cm.isMapOrBean() || cm.isCollectionOrArray() || (cm.isAbstract() &amp;&amp; ! cm.isNumber()) || cm.isObject())) {<a name="line.320"></a>
-<span class="sourceLineNo">321</span>            w.oTag(i+1, "attribute").attr("name", getBeanTypePropertyName(cm)).attr("type", "string").ceTag().nl(i+1);<a name="line.321"></a>
-<span class="sourceLineNo">322</span><a name="line.322"></a>
-<span class="sourceLineNo">323</span>         } else {<a name="line.323"></a>
-<span class="sourceLineNo">324</span><a name="line.324"></a>
-<span class="sourceLineNo">325</span>            //----- Bean -----<a name="line.325"></a>
-<span class="sourceLineNo">326</span>            if (cm.isBean()) {<a name="line.326"></a>
-<span class="sourceLineNo">327</span>               BeanMeta&lt;?&gt; bm = cm.getBeanMeta();<a name="line.327"></a>
-<span class="sourceLineNo">328</span><a name="line.328"></a>
-<span class="sourceLineNo">329</span>               boolean hasChildElements = false;<a name="line.329"></a>
-<span class="sourceLineNo">330</span><a name="line.330"></a>
-<span class="sourceLineNo">331</span>               for (BeanPropertyMeta pMeta : bm.getPropertyMetas()) {<a name="line.331"></a>
-<span class="sourceLineNo">332</span>                  XmlFormat pMetaFormat = pMeta.getExtendedMeta(XmlBeanPropertyMeta.class).getXmlFormat();<a name="line.332"></a>
-<span class="sourceLineNo">333</span>                  if (pMetaFormat != XmlFormat.ATTR)<a name="line.333"></a>
-<span class="sourceLineNo">334</span>                     hasChildElements = true;<a name="line.334"></a>
-<span class="sourceLineNo">335</span>               }<a name="line.335"></a>
-<span class="sourceLineNo">336</span><a name="line.336"></a>
-<span class="sourceLineNo">337</span>               XmlBeanMeta xbm2 = bm.getExtendedMeta(XmlBeanMeta.class);<a name="line.337"></a>
-<span class="sourceLineNo">338</span>               if (xbm2.getContentProperty() != null &amp;&amp; xbm2.getContentFormat() == ELEMENTS) {<a name="line.338"></a>
-<span class="sourceLineNo">339</span>                  w.sTag(i+1, "sequence").nl(i+1);<a name="line.339"></a>
-<span class="sourceLineNo">340</span>                  w.oTag(i+2, "any")<a name="line.340"></a>
-<span class="sourceLineNo">341</span>                     .attr("processContents", "skip")<a name="line.341"></a>
-<span class="sourceLineNo">342</span>                     .attr("minOccurs", 0)<a name="line.342"></a>
-<span class="sourceLineNo">343</span>                     .ceTag().nl(i+2);<a name="line.343"></a>
-<span class="sourceLineNo">344</span>                  w.eTag(i+1, "sequence").nl(i+1);<a name="line.344"></a>
-<span class="sourceLineNo">345</span><a name="line.345"></a>
-<span class="sourceLineNo">346</span>               } else if (hasChildElements) {<a name="line.346"></a>
-<span class="sourceLineNo">347</span><a name="line.347"></a>
-<span class="sourceLineNo">348</span>                  boolean hasOtherNsElement = false;<a name="line.348"></a>
-<span class="sourceLineNo">349</span>                  boolean hasCollapsed = false;<a name="line.349"></a>
-<span class="sourceLineNo">350</span><a name="line.350"></a>
-<span class="sourceLineNo">351</span>                  for (BeanPropertyMeta pMeta : bm.getPropertyMetas()) {<a name="line.351"></a>
-<span class="sourceLineNo">352</span>                     XmlBeanPropertyMeta xmlMeta = pMeta.getExtendedMeta(XmlBeanPropertyMeta.class);<a name="line.352"></a>
-<span class="sourceLineNo">353</span>                     if (xmlMeta.getXmlFormat() != ATTR) {<a name="line.353"></a>
-<span class="sourceLineNo">354</span>                        if (xmlMeta.getNamespace() != null) {<a name="line.354"></a>
-<span class="sourceLineNo">355</span>                           ClassMeta&lt;?&gt; ct2 = pMeta.getClassMeta();<a name="line.355"></a>
-<span class="sourceLineNo">356</span>                           Namespace cNs = first(xmlMeta.getNamespace(), ct2.getExtendedMeta(XmlClassMeta.class).getNamespace(), cm.getExtendedMeta(XmlClassMeta.class).getNamespace(), defaultNs);<a name="line.356"></a>
-<span class="sourceLineNo">357</span>                           // Child element is in another namespace.<a name="line.357"></a>
-<span class="sourceLineNo">358</span>                           schemas.queueElement(cNs, pMeta.getName(), ct2);<a name="line.358"></a>
-<span class="sourceLineNo">359</span>                           hasOtherNsElement = true;<a name="line.359"></a>
-<span class="sourceLineNo">360</span>                        }<a name="line.360"></a>
-<span class="sourceLineNo">361</span>                        if (xmlMeta.getXmlFormat() == COLLAPSED)<a name="line.361"></a>
-<span class="sourceLineNo">362</span>                           hasCollapsed = true;<a name="line.362"></a>
-<span class="sourceLineNo">363</span>                     }<a name="line.363"></a>
-<span class="sourceLineNo">364</span>                  }<a name="line.364"></a>
-<span class="sourceLineNo">365</span><a name="line.365"></a>
-<span class="sourceLineNo">366</span>                  if (hasOtherNsElement || hasCollapsed) {<a name="line.366"></a>
-<span class="sourceLineNo">367</span>                     // If this bean has any child elements in another namespace,<a name="line.367"></a>
-<span class="sourceLineNo">368</span>                     // we need to add an &lt;any&gt; element.<a name="line.368"></a>
-<span class="sourceLineNo">369</span>                     w.oTag(i+1, "choice").attr("maxOccurs", "unbounded").cTag().nl(i+1);<a name="line.369"></a>
-<span class="sourceLineNo">370</span>                     w.oTag(i+2, "any")<a name="line.370"></a>
-<span class="sourceLineNo">371</span>                        .attr("processContents", "skip")<a name="line.371"></a>
-<span class="sourceLineNo">372</span>                        .attr("minOccurs", 0)<a name="line.372"></a>
-<span class="sourceLineNo">373</span>                        .ceTag().nl(i+2);<a name="line.373"></a>
-<span class="sourceLineNo">374</span>                     w.eTag(i+1, "choice").nl(i+1);<a name="line.374"></a>
-<span class="sourceLineNo">375</span><a name="line.375"></a>
-<span class="sourceLineNo">376</span>                  } else {<a name="line.376"></a>
-<span class="sourceLineNo">377</span>                     w.sTag(i+1, "all").nl(i+1);<a name="line.377"></a>
-<span class="sourceLineNo">378</span>                     for (BeanPropertyMeta pMeta : bm.getPropertyMetas()) {<a name="line.378"></a>
-<span class="sourceLineNo">379</span>                        XmlBeanPropertyMeta xmlMeta = pMeta.getExtendedMeta(XmlBeanPropertyMeta.class);<a name="line.379"></a>
-<span class="sourceLineNo">380</span>                        if (xmlMeta.getXmlFormat() != ATTR) {<a name="line.380"></a>
-<span class="sourceLineNo">381</span>                           boolean isCollapsed = xmlMeta.getXmlFormat() == COLLAPSED;<a name="line.381"></a>
-<span class="sourceLineNo">382</span>                           ClassMeta&lt;?&gt; ct2 = pMeta.getClassMeta();<a name="line.382"></a>
-<span class="sourceLineNo">383</span>                           String childName = pMeta.getName();<a name="line.383"></a>
-<span class="sourceLineNo">384</span>                           if (isCollapsed) {<a name="line.384"></a>
-<span class="sourceLineNo">385</span>                              if (xmlMeta.getChildName() != null)<a name="line.385"></a>
-<span class="sourceLineNo">386</span>                                 childName = xmlMeta.getChildName();<a name="line.386"></a>
-<span class="sourceLineNo">387</span>                              ct2 = pMeta.getClassMeta().getElementType();<a name="line.387"></a>
-<span class="sourceLineNo">388</span>                           }<a name="line.388"></a>
-<span class="sourceLineNo">389</span>                           Namespace cNs = first(xmlMeta.getNamespace(), ct2.getExtendedMeta(XmlClassMeta.class).getNamespace(), cm.getExtendedMeta(XmlClassMeta.class).getNamespace(), defaultNs);<a name="line.389"></a>
-<span class="sourceLineNo">390</span>                           if (xmlMeta.getNamespace() == null) {<a name="line.390"></a>
-<span class="sourceLineNo">391</span>                              w.oTag(i+2, "element")<a name="line.391"></a>
-<span class="sourceLineNo">392</span>                                 .attr("name", XmlUtils.encodeElementName(childName), false)<a name="line.392"></a>
-<span class="sourceLineNo">393</span>                                 .attr("type", getXmlType(cNs, ct2))<a name="line.393"></a>
-<span class="sourceLineNo">394</span>                                 .attr("minOccurs", 0);<a name="line.394"></a>
-<span class="sourceLineNo">395</span><a name="line.395"></a>
-<span class="sourceLineNo">396</span>                              w.ceTag().nl(i+2);<a name="line.396"></a>
-<span class="sourceLineNo">397</span>                           } else {<a name="line.397"></a>
-<span class="sourceLineNo">398</span>                              // Child element is in another namespace.<a name="line.398"></a>
-<span class="sourceLineNo">399</span>                              schemas.queueElement(cNs, pMeta.getName(), ct2);<a name="line.399"></a>
-<span class="sourceLineNo">400</span>                              hasOtherNsElement = true;<a name="line.400"></a>
-<span class="sourceLineNo">401</span>                           }<a name="line.401"></a>
-<span class="sourceLineNo">402</span><a name="line.402"></a>
-<span class="sourceLineNo">403</span>                        }<a name="line.403"></a>
-<span class="sourceLineNo">404</span>                     }<a name="line.404"></a>
-<span class="sourceLineNo">405</span>                     w.eTag(i+1, "all").nl(i+1);<a name="line.405"></a>
-<span class="sourceLineNo">406</span>                  }<a name="line.406"></a>
-<span class="sourceLineNo">407</span><a name="line.407"></a>
-<span class="sourceLineNo">408</span>               }<a name="line.408"></a>
-<span class="sourceLineNo">409</span><a name="line.409"></a>
-<span class="sourceLineNo">410</span>               for (BeanPropertyMeta pMeta : bm.getExtendedMeta(XmlBeanMeta.class).getAttrProperties().values()) {<a name="line.410"></a>
-<span class="sourceLineNo">411</span>                  Namespace pNs = pMeta.getExtendedMeta(XmlBeanPropertyMeta.class).getNamespace();<a name="line.411"></a>
-<span class="sourceLineNo">412</span>                  if (pNs == null)<a name="line.412"></a>
-<span class="sourceLineNo">413</span>                     pNs = defaultNs;<a name="line.413"></a>
-<span class="sourceLineNo">414</span><a name="line.414"></a>
-<span class="sourceLineNo">415</span>                  // If the bean attribute has a different namespace than the bean, then it needs to<a name="line.415"></a>
-<span class="sourceLineNo">416</span>                  // be added as a top-level entry in the appropriate schema file.<a name="line.416"></a>
-<span class="sourceLineNo">417</span>                  if (pNs != targetNs) {<a name="line.417"></a>
-<span class="sourceLineNo">418</span>                     schemas.queueAttribute(pNs, pMeta.getName(), pMeta.getClassMeta());<a name="line.418"></a>
-<span class="sourceLineNo">419</span>                     w.oTag(i+1, "attribute")<a name="line.419"></a>
-<span class="sourceLineNo">420</span>                        //.attr("name", pMeta.getName(), true)<a name="line.420"></a>
-<span class="sourceLineNo">421</span>                        .attr("ref", pNs.getName() + ':' + pMeta.getName())<a name="line.421"></a>
-<span class="sourceLineNo">422</span>                        .ceTag().nl(i+1);<a name="line.422"></a>
-<span class="sourceLineNo">423</span>                  }<a name="line.423"></a>
-<span class="sourceLineNo">424</span><a name="line.424"></a>
-<span class="sourceLineNo">425</span>                  // Otherwise, it's just a plain attribute of this bean.<a name="line.425"></a>
-<span class="sourceLineNo">426</span>                  else {<a name="line.426"></a>
-<span class="sourceLineNo">427</span>                     w.oTag(i+1, "attribute")<a name="line.427"></a>
-<span class="sourceLineNo">428</span>                        .attr("name", pMeta.getName(), true)<a name="line.428"></a>
-<span class="sourceLineNo">429</span>                        .attr("type", getXmlAttrType(pMeta.getClassMeta()))<a name="line.429"></a>
-<span class="sourceLineNo">430</span>                        .ceTag().nl(i+1);<a name="line.430"></a>
-<span class="sourceLineNo">431</span>                  }<a name="line.431"></a>
-<span class="sourceLineNo">432</span>               }<a name="line.432"></a>
-<span class="sourceLineNo">433</span><a name="line.433"></a>
-<span class="sourceLineNo">434</span>            //----- Collection -----<a name="line.434"></a>
-<span class="sourceLineNo">435</span>            } else if (cm.isCollectionOrArray()) {<a name="line.435"></a>
-<span class="sourceLineNo">436</span>               ClassMeta&lt;?&gt; elementType = cm.getElementType();<a name="line.436"></a>
-<span class="sourceLineNo">437</span>               if (elementType.isObject()) {<a name="line.437"></a>
-<span class="sourceLineNo">438</span>                  w.sTag(i+1, "sequence").nl(i+1);<a name="line.438"></a>
-<span class="sourceLineNo">439</span>                  w.oTag(i+2, "any")<a name="line.439"></a>
-<span class="sourceLineNo">440</span>                     .attr("processContents", "skip")<a name="line.440"></a>
-<span class="sourceLineNo">441</span>                     .attr("maxOccurs", "unbounded")<a name="line.441"></a>
-<span class="sourceLineNo">442</span>                     .attr("minOccurs", "0")<a name="line.442"></a>
-<span class="sourceLineNo">443</span>                     .ceTag().nl(i+2);<a name="line.443"></a>
-<span class="sourceLineNo">444</span>                  w.eTag(i+1, "sequence").nl(i+1);<a name="line.444"></a>
-<span class="sourceLineNo">445</span>               } else {<a name="line.445"></a>
-<span class="sourceLineNo">446</span>                  Namespace cNs = first(elementType.getExtendedMeta(XmlClassMeta.class).getNamespace(), cm.getExtendedMeta(XmlClassMeta.class).getNamespace(), defaultNs);<a name="line.446"></a>
-<span class="sourceLineNo">447</span>                  schemas.queueType(cNs, null, elementType);<a name="line.447"></a>
-<span class="sourceLineNo">448</span>                  w.sTag(i+1, "sequence").nl(i+1);<a name="line.448"></a>
-<span class="sourceLineNo">449</span>                  w.oTag(i+2, "any")<a name="line.449"></a>
-<span class="sourceLineNo">450</span>                     .attr("processContents", "skip")<a name="line.450"></a>
-<span class="sourceLineNo">451</span>                     .attr("maxOccurs", "unbounded")<a name="line.451"></a>
-<span class="sourceLineNo">452</span>                     .attr("minOccurs", "0")<a name="line.452"></a>
-<span class="sourceLineNo">453</span>                     .ceTag().nl(i+2);<a name="line.453"></a>
-<span class="sourceLineNo">454</span>                  w.eTag(i+1, "sequence").nl(i+1);<a name="line.454"></a>
-<span class="sourceLineNo">455</span>               }<a name="line.455"></a>
-<span class="sourceLineNo">456</span><a name="line.456"></a>
-<span class="sourceLineNo">457</span>            //----- Map -----<a name="line.457"></a>
-<span class="sourceLineNo">458</span>            } else if (cm.isMap() || cm.isAbstract() || cm.isObject()) {<a name="line.458"></a>
-<span class="sourceLineNo">459</span>               w.sTag(i+1, "sequence").nl(i+1);<a name="line.459"></a>
-<span class="sourceLineNo">460</span>               w.oTag(i+2, "any")<a name="line.460"></a>
-<span class="sourceLineNo">461</span>                  .attr("processContents", "skip")<a name="line.461"></a>
-<span class="sourceLineNo">462</span>                  .attr("maxOccurs", "unbounded")<a name="line.462"></a>
-<span class="sourceLineNo">463</span>                  .attr("minOccurs", "0")<a name="line.463"></a>
-<span class="sourceLineNo">464</span>                  .ceTag().nl(i+2);<a name="line.464"></a>
-<span class="sourceLineNo">465</span>               w.eTag(i+1, "sequence").nl(i+1);<a name="line.465"></a>
-<span class="sourceLineNo">466</span>            }<a name="line.466"></a>
-<span class="sourceLineNo">467</span><a name="line.467"></a>
-<span class="sourceLineNo">468</span>            w.oTag(i+1, "attribute")<a name="line.468"></a>
-<span class="sourceLineNo">469</span>               .attr("name", getBeanTypePropertyName(null))<a name="line.469"></a>
-<span class="sourceLineNo">470</span>               .attr("type", "string")<a name="line.470"></a>
-<span class="sourceLineNo">471</span>               .ceTag().nl(i+1);<a name="line.471"></a>
-<span class="sourceLineNo">472</span>         }<a name="line.472"></a>
-<span class="sourceLineNo">473</span><a name="line.473"></a>
-<span class="sourceLineNo">474</span>         w.eTag(i, "complexType").nl(i);<a name="line.474"></a>
-<span class="sourceLineNo">475</span>         schemas.processQueue();<a name="line.475"></a>
-<span class="sourceLineNo">476</span><a name="line.476"></a>
-<span class="sourceLineNo">477</span>         return true;<a name="line.477"></a>
-<span class="sourceLineNo">478</span>      }<a name="line.478"></a>
-<span class="sourceLineNo">479</span><a name="line.479"></a>
-<span class="sourceLineNo">480</span>      private String getElementName(ClassMeta&lt;?&gt; cm) {<a name="line.480"></a>
-<span class="sourceLineNo">481</span>         cm = cm.getSerializedClassMeta();<a name="line.481"></a>
-<span class="sourceLineNo">482</span>         String name = cm.getDictionaryName();<a name="line.482"></a>
-<span class="sourceLineNo">483</span><a name="line.483"></a>
-<span class="sourceLineNo">484</span>         if (name == null) {<a name="line.484"></a>
-<span class="sourceLineNo">485</span>            if (cm.isBoolean())<a name="line.485"></a>
-<span class="sourceLineNo">486</span>               name = "boolean";<a name="line.486"></a>
-<span class="sourceLineNo">487</span>            else if (cm.isNumber())<a name="line.487"></a>
-<span class="sourceLineNo">488</span>               name = "number";<a name="line.488"></a>
-<span class="sourceLineNo">489</span>            else if (cm.isCollectionOrArray())<a name="line.489"></a>
-<span class="sourceLineNo">490</span>               name = "array";<a name="line.490"></a>
-<span class="sourceLineNo">491</span>            else if (! (cm.isMapOrBean() || cm.isCollectionOrArray() || cm.isObject() || cm.isAbstract()))<a name="line.491"></a>
-<span class="sourceLineNo">492</span>               name = "string";<a name="line.492"></a>
-<span class="sourceLineNo">493</span>            else<a name="line.493"></a>
-<span class="sourceLineNo">494</span>               name = "object";<a name="line.494"></a>
-<span class="sourceLineNo">495</span>         }<a name="line.495"></a>
-<span class="sourceLineNo">496</span>         return name;<a name="line.496"></a>
-<span class="sourceLineNo">497</span>      }<a name="line.497"></a>
-<span class="sourceLineNo">498</span><a name="line.498"></a>
-<span class="sourceLineNo">499</span>      @Override /* Object */<a name="line.499"></a>
-<span class="sourceLineNo">500</span>      public String toString() {<a name="line.500"></a>
-<span class="sourceLineNo">501</span>         try {<a name="line.501"></a>
-<span class="sourceLineNo">502</span>            w.eTag(indent, "schema").nl(indent);<a name="line.502"></a>
-<span class="sourceLineNo">503</span>         } catch (IOException e) {<a name="line.503"></a>
-<span class="sourceLineNo">504</span>            throw new RuntimeException(e); // Shouldn't happen.<a name="line.504"></a>
-<span class="sourceLineNo">505</span>         }<a name="line.505"></a>
-<span class="sourceLineNo">506</span>         return sw.toString();<a name="line.506"></a>
-<span class="sourceLineNo">507</span>      }<a name="line.507"></a>
-<span class="sourceLineNo">508</span><a name="line.508"></a>
-<span class="sourceLineNo">509</span>      private String getXmlType(Namespace currentNs, ClassMeta&lt;?&gt; cm) {<a name="line.509"></a>
-<span class="sourceLineNo">510</span>         String name = null;<a name="line.510"></a>
-<span class="sourceLineNo">511</span>         cm = cm.getSerializedClassMeta();<a name="line.511"></a>
-<span class="sourceLineNo">512</span>         if (currentNs == targetNs) {<a name="line.512"></a>
-<span class="sourceLineNo">513</span>            if (cm.isPrimitive()) {<a name="line.513"></a>
-<span class="sourceLineNo">514</span>               if (cm.isBoolean())<a name="line.514"></a>
-<span class="sourceLineNo">515</span>                  name = "boolean";<a name="line.515"></a>
-<span class="sourceLineNo">516</span>               else if (cm.isNumber()) {<a name="line.516"></a>
-<span class="sourceLineNo">517</span>                  if (cm.isDecimal())<a name="line.517"></a>
-<span class="sourceLineNo">518</span>                     name = "decimal";<a name="line.518"></a>
-<span class="sourceLineNo">519</span>                  else<a name="line.519"></a>
-<span class="sourceLineNo">520</span>                     name = "integer";<a name="line.520"></a>
-<span class="sourceLineNo">521</span>               }<a name="line.521"></a>
-<span class="sourceLineNo">522</span>            }<a name="line.522"></a>
-<span class="sourceLineNo">523</span>         }<a name="line.523"></a>
-<span class="sourceLineNo">524</span>         if (name == null) {<a name="line.524"></a>
-<span class="sourceLineNo">525</span>            name = XmlUtils.encodeElementName(cm);<a name="line.525"></a>
-<span class="sourceLineNo">526</span>            schemas.queueType(currentNs, name, cm);<a name="line.526"></a>
-<span class="sourceLineNo">527</span>            return currentNs.getName() + ":" + name;<a name="line.527"></a>
-<span class="sourceLineNo">528</span>         }<a name="line.528"></a>
-<span class="sourceLineNo">529</span><a name="line.529"></a>
-<span class="sourceLineNo">530</span>         return name;<a name="line.530"></a>
-<span class="sourceLineNo">531</span>      }<a name="line.531"></a>
-<span class="sourceLineNo">532</span>   }<a name="line.532"></a>
-<span class="sourceLineNo">533</span><a name="line.533"></a>
-<span class="sourceLineNo">534</span>   private static &lt;T&gt; T first(T...tt) {<a name="line.534"></a>
-<span class="sourceLineNo">535</span>      for (T t : tt)<a name="line.535"></a>
-<span class="sourceLineNo">536</span>         if (t != null)<a name="line.536"></a>
-<span class="sourceLineNo">537</span>            return t;<a name="line.537"></a>
-<span class="sourceLineNo">538</span>      return null;<a name="line.538"></a>
-<span class="sourceLineNo">539</span>   }<a name="line.539"></a>
-<span class="sourceLineNo">540</span><a name="line.540"></a>
-<span class="sourceLineNo">541</span>   private static String getXmlAttrType(ClassMeta&lt;?&gt; cm) {<a name="line.541"></a>
-<span class="sourceLineNo">542</span>      if (cm.isBoolean())<a name="line.542"></a>
-<span class="sourceLineNo">543</span>         return "boolean";<a name="line.543"></a>
-<span class="sourceLineNo">544</span>      if (cm.isNumber()) {<a name="line.544"></a>
-<span class="sourceLineNo">545</span>         if (cm.isDecimal())<a name="line.545"></a>
-<span class="sourceLineNo">546</span>            return "decimal";<a name="line.546"></a>
-<span class="sourceLineNo">547</span>         return "integer";<a name="line.547"></a>
-<span class="sourceLineNo">548</span>      }<a name="line.548"></a>
-<span class="sourceLineNo">549</span>      return "string";<a name="line.549"></a>
-<span class="sourceLineNo">550</span>   }<a name="line.550"></a>
-<span class="sourceLineNo">551</span>}<a name="line.551"></a>
+<span class="sourceLineNo">182</span>      private void processQueue() throws IOException {<a name="line.182"></a>
+<span class="sourceLineNo">183</span>         boolean b;<a name="line.183"></a>
+<span class="sourceLineNo">184</span>         do {<a name="line.184"></a>
+<span class="sourceLineNo">185</span>            b = false;<a name="line.185"></a>
+<span class="sourceLineNo">186</span>            while (! elementQueue.isEmpty()) {<a name="line.186"></a>
+<span class="sourceLineNo">187</span>               QueueEntry q = elementQueue.removeFirst();<a name="line.187"></a>
+<span class="sourceLineNo">188</span>               b |= getSchema(q.ns).processElement(q.name, q.cm);<a name="line.188"></a>
+<span class="sourceLineNo">189</span>            }<a name="line.189"></a>
+<span class="sourceLineNo">190</span>            while (! typeQueue.isEmpty()) {<a name="line.190"></a>
+<span class="sourceLineNo">191</span>               QueueEntry q = typeQueue.removeFirst();<a name="line.191"></a>
+<span class="sourceLineNo">192</span>               b |= getSchema(q.ns).processType(q.name, q.cm);<a name="line.192"></a>
+<span class="sourceLineNo">193</span>            }<a name="line.193"></a>
+<span class="sourceLineNo">194</span>            while (! attributeQueue.isEmpty()) {<a name="line.194"></a>
+<span class="sourceLineNo">195</span>               QueueEntry q = attributeQueue.removeFirst();<a name="line.195"></a>
+<span class="sourceLineNo">196</span>               b |= getSchema(q.ns).processAttribute(q.name, q.cm);<a name="line.196"></a>
+<span class="sourceLineNo">197</span>            }<a name="line.197"></a>
+<span class="sourceLineNo">198</span>         } while (b);<a name="line.198"></a>
+<span class="sourceLineNo">199</span>      }<a name="line.199"></a>
+<span class="sourceLineNo">200</span><a name="line.200"></a>
+<span class="sourceLineNo">201</span>      private void queueElement(Namespace ns, String name, ClassMeta&lt;?&gt; cm) {<a name="line.201"></a>
+<span class="sourceLineNo">202</span>         elementQueue.add(new QueueEntry(ns, name, cm));<a name="line.202"></a>
+<span class="sourceLineNo">203</span>      }<a name="line.203"></a>
+<span class="sourceLineNo">204</span><a name="line.204"></a>
+<span class="sourceLineNo">205</span>      private void queueType(Namespace ns, String name, ClassMeta&lt;?&gt; cm) {<a name="line.205"></a>
+<span class="sourceLineNo">206</span>         if (name == null)<a name="line.206"></a>
+<span class="sourceLineNo">207</span>            name = XmlUtils.encodeElementName(cm);<a name="line.207"></a>
+<span class="sourceLineNo">208</span>         typeQueue.add(new QueueEntry(ns, name, cm));<a name="line.208"></a>
+<span class="sourceLineNo">209</span>      }<a name="line.209"></a>
+<span class="sourceLineNo">210</span><a name="line.210"></a>
+<span class="sourceLineNo">211</span>      private void queueAttribute(Namespace ns, String name, ClassMeta&lt;?&gt; cm) {<a name="line.211"></a>
+<span class="sourceLineNo">212</span>         attributeQueue.add(new QueueEntry(ns, name, cm));<a name="line.212"></a>
+<span class="sourceLineNo">213</span>      }<a name="line.213"></a>
+<span class="sourceLineNo">214</span><a name="line.214"></a>
+<span class="sourceLineNo">215</span>      private void serializeTo(Writer w) throws IOException {<a name="line.215"></a>
+<span class="sourceLineNo">216</span>         boolean b = false;<a name="line.216"></a>
+<span class="sourceLineNo">217</span>         for (Schema s : values()) {<a name="line.217"></a>
+<span class="sourceLineNo">218</span>            if (b)<a name="line.218"></a>
+<span class="sourceLineNo">219</span>               w.append('\u0000');<a name="line.219"></a>
+<span class="sourceLineNo">220</span>            w.append(s.toString());<a name="line.220"></a>
+<span class="sourceLineNo">221</span>            b = true;<a name="line.221"></a>
+<span class="sourceLineNo">222</span>         }<a name="line.222"></a>
+<span class="sourceLineNo">223</span>      }<a name="line.223"></a>
+<span class="sourceLineNo">224</span>   }<a name="line.224"></a>
+<span class="sourceLineNo">225</span><a name="line.225"></a>
+<span class="sourceLineNo">226</span>   /* An encapsulation of a single schema. */<a name="line.226"></a>
+<span class="sourceLineNo">227</span>   private class Schema {<a name="line.227"></a>
+<span class="sourceLineNo">228</span>      private StringWriter sw = new StringWriter();<a name="line.228"></a>
+<span class="sourceLineNo">229</span>      private XmlWriter w;<a name="line.229"></a>
+<span class="sourceLineNo">230</span>      private Namespace defaultNs, targetNs;<a name="line.230"></a>
+<span class="sourceLineNo">231</span>      private Schemas schemas;<a name="line.231"></a>
+<span class="sourceLineNo">232</span>      private Set&lt;String&gt;<a name="line.232"></a>
+<span class="sourceLineNo">233</span>         processedTypes = new HashSet&lt;String&gt;(),<a name="line.233"></a>
+<span class="sourceLineNo">234</span>         processedAttributes = new HashSet&lt;String&gt;(),<a name="line.234"></a>
+<span class="sourceLineNo">235</span>         processedElements = new HashSet&lt;String&gt;();<a name="line.235"></a>
+<span class="sourceLineNo">236</span><a name="line.236"></a>
+<span class="sourceLineNo">237</span>      public Schema(Schemas schemas, Namespace xs, Namespace targetNs, Namespace defaultNs, Namespace[] allNs) throws IOException {<a name="line.237"></a>
+<span class="sourceLineNo">238</span>         this.schemas = schemas;<a name="line.238"></a>
+<span class="sourceLineNo">239</span>         this.defaultNs = defaultNs;<a name="line.239"></a>
+<span class="sourceLineNo">240</span>         this.targetNs = targetNs;<a name="line.240"></a>
+<span class="sourceLineNo">241</span>         w = new XmlWriter(sw, isUseWhitespace(), getMaxIndent(), isTrimStrings(), getQuoteChar(), null, true, null);<a name="line.241"></a>
+<span class="sourceLineNo">242</span>         int i = indent;<a name="line.242"></a>
+<span class="sourceLineNo">243</span>         w.oTag(i, "schema");<a name="line.243"></a>
+<span class="sourceLineNo">244</span>         w.attr("xmlns", xs.getUri());<a name="line.244"></a>
+<span class="sourceLineNo">245</span>         w.attr("targetNamespace", targetNs.getUri());<a name="line.245"></a>
+<span class="sourceLineNo">246</span>         w.attr("elementFormDefault", "qualified");<a name="line.246"></a>
+<span class="sourceLineNo">247</span>         if (targetNs != defaultNs)<a name="line.247"></a>
+<span class="sourceLineNo">248</span>            w.attr("attributeFormDefault", "qualified");<a name="line.248"></a>
+<span class="sourceLineNo">249</span>         for (Namespace ns2 : allNs)<a name="line.249"></a>
+<span class="sourceLineNo">250</span>            w.attr("xmlns", ns2.name, ns2.uri);<a name="line.250"></a>
+<span class="sourceLineNo">251</span>         w.append('&gt;').nl(i);<a name="line.251"></a>
+<span class="sourceLineNo">252</span>         for (Namespace ns : allNs) {<a name="line.252"></a>
+<span class="sourceLineNo">253</span>            if (ns != targetNs) {<a name="line.253"></a>
+<span class="sourceLineNo">254</span>               w.oTag(i+1, "import")<a name="line.254"></a>
+<span class="sourceLineNo">255</span>                  .attr("namespace", ns.getUri())<a name="line.255"></a>
+<span class="sourceLineNo">256</span>                  .attr("schemaLocation", ns.getName()+".xsd")<a name="line.256"></a>
+<span class="sourceLineNo">257</span>                  .append("/&gt;").nl(i+1);<a name="line.257"></a>
+<span class="sourceLineNo">258</span>            }<a name="line.258"></a>
+<span class="sourceLineNo">259</span>         }<a name="line.259"></a>
+<span class="sourceLineNo">260</span>      }<a name="line.260"></a>
+<span class="sourceLineNo">261</span><a name="line.261"></a>
+<span class="sourceLineNo">262</span>      private boolean processElement(String name, ClassMeta&lt;?&gt; cm) throws IOException {<a name="line.262"></a>
+<span class="sourceLineNo">263</span>         if (processedElements.contains(name))<a name="line.263"></a>
+<span class="sourceLineNo">264</span>            return false;<a name="line.264"></a>
+<span class="sourceLineNo">265</span>         processedElements.add(name);<a name="line.265"></a>
+<span class="sourceLineNo">266</span><a name="line.266"></a>
+<span class="sourceLineNo">267</span>         ClassMeta&lt;?&gt; ft = cm.getSerializedClassMeta();<a name="line.267"></a>
+<span class="sourceLineNo">268</span>         if (name == null)<a name="line.268"></a>
+<span class="sourceLineNo">269</span>            name = getElementName(ft);<a name="line.269"></a>
+<span class="sourceLineNo">270</span>         Namespace ns = first(ft.getExtendedMeta(XmlClassMeta.class).getNamespace(), defaultNs);<a name="line.270"></a>
+<span class="sourceLineNo">271</span>         String type = getXmlType(ns, ft);<a name="line.271"></a>
+<span class="sourceLineNo">272</span><a name="line.272"></a>
+<span class="sourceLineNo">273</span>         w.oTag(indent+1, "element")<a name="line.273"></a>
+<span class="sourceLineNo">274</span>            .attr("name", XmlUtils.encodeElementName(name))<a name="line.274"></a>
+<span class="sourceLineNo">275</span>            .attr("type", type)<a name="line.275"></a>
+<span class="sourceLineNo">276</span>            .append('/').append('&gt;').nl(indent+1);<a name="line.276"></a>
+<span class="sourceLineNo">277</span><a name="line.277"></a>
+<span class="sourceLineNo">278</span>         schemas.queueType(ns, null, ft);<a name="line.278"></a>
+<span class="sourceLineNo">279</span>         schemas.processQueue();<a name="line.279"></a>
+<span class="sourceLineNo">280</span>         return true;<a name="line.280"></a>
+<span class="sourceLineNo">281</span>      }<a name="line.281"></a>
+<span class="sourceLineNo">282</span><a name="line.282"></a>
+<span class="sourceLineNo">283</span>      private boolean processAttribute(String name, ClassMeta&lt;?&gt; cm) throws IOException {<a name="line.283"></a>
+<span class="sourceLineNo">284</span>         if (processedAttributes.contains(name))<a name="line.284"></a>
+<span class="sourceLineNo">285</span>            return false;<a name="line.285"></a>
+<span class="sourceLineNo">286</span>         processedAttributes.add(name);<a name="line.286"></a>
+<span class="sourceLineNo">287</span><a name="line.287"></a>
+<span class="sourceLineNo">288</span>         String type = getXmlAttrType(cm);<a name="line.288"></a>
+<span class="sourceLineNo">289</span><a name="line.289"></a>
+<span class="sourceLineNo">290</span>         w.oTag(indent+1, "attribute")<a name="line.290"></a>
+<span class="sourceLineNo">291</span>            .attr("name", name)<a name="line.291"></a>
+<span class="sourceLineNo">292</span>            .attr("type", type)<a name="line.292"></a>
+<span class="sourceLineNo">293</span>            .append('/').append('&gt;').nl(indent+1);<a name="line.293"></a>
+<span class="sourceLineNo">294</span><a name="line.294"></a>
+<span class="sourceLineNo">295</span>         return true;<a name="line.295"></a>
+<span class="sourceLineNo">296</span>      }<a name="line.296"></a>
+<span class="sourceLineNo">297</span><a name="line.297"></a>
+<span class="sourceLineNo">298</span>      private boolean processType(String name, ClassMeta&lt;?&gt; cm) throws IOException {<a name="line.298"></a>
+<span class="sourceLineNo">299</span>         if (processedTypes.contains(name))<a name="line.299"></a>
+<span class="sourceLineNo">300</span>            return false;<a name="line.300"></a>
+<span class="sourceLineNo">301</span>         processedTypes.add(name);<a name="line.301"></a>
+<span class="sourceLineNo">302</span><a name="line.302"></a>
+<span class="sourceLineNo">303</span>         int i = indent + 1;<a name="line.303"></a>
+<span class="sourceLineNo">304</span><a name="line.304"></a>
+<span class="sourceLineNo">305</span>         cm = cm.getSerializedClassMeta();<a name="line.305"></a>
+<span class="sourceLineNo">306</span>         XmlBeanMeta xbm = cm.isBean() ? cm.getBeanMeta().getExtendedMeta(XmlBeanMeta.class) : null;<a name="line.306"></a>
+<span class="sourceLineNo">307</span><a name="line.307"></a>
+<span class="sourceLineNo">308</span>         w.oTag(i, "complexType")<a name="line.308"></a>
+<span class="sourceLineNo">309</span>            .attr("name", name);<a name="line.309"></a>
+<span class="sourceLineNo">310</span><a name="line.310"></a>
+<span class="sourceLineNo">311</span>         // This element can have mixed content if:<a name="line.311"></a>
+<span class="sourceLineNo">312</span>         //    1) It's a generic Object (so it can theoretically be anything)<a name="line.312"></a>
+<span class="sourceLineNo">313</span>         //    2) The bean has a property defined with @XmlFormat.CONTENT.<a name="line.313"></a>
+<span class="sourceLineNo">314</span>         if ((xbm != null &amp;&amp; (xbm.getContentFormat() != null &amp;&amp; xbm.getContentFormat().isOneOf(TEXT,TEXT_PWS,MIXED,MIXED_PWS,XMLTEXT))) || ! cm.isMapOrBean())<a name="line.314"></a>
+<span class="sourceLineNo">315</span>            w.attr("mixed", "true");<a name="line.315"></a>
+<span class="sourceLineNo">316</span><a name="line.316"></a>
+<span class="sourceLineNo">317</span>         w.cTag().nl(i);<a name="line.317"></a>
+<span class="sourceLineNo">318</span><a name="line.318"></a>
+<span class="sourceLineNo">319</span>         if (! (cm.isMapOrBean() || cm.isCollectionOrArray() || (cm.isAbstract() &amp;&amp; ! cm.isNumber()) || cm.isObject())) {<a name="line.319"></a>
+<span class="sourceLineNo">320</span>            w.oTag(i+1, "attribute").attr("name", getBeanTypePropertyName(cm)).attr("type", "string").ceTag().nl(i+1);<a name="line.320"></a>
+<span class="sourceLineNo">321</span><a name="line.321"></a>
+<span class="sourceLineNo">322</span>         } else {<a name="line.322"></a>
+<span class="sourceLineNo">323</span><a name="line.323"></a>
+<span class="sourceLineNo">324</span>            //----- Bean -----<a name="line.324"></a>
+<span class="sourceLineNo">325</span>            if (cm.isBean()) {<a name="line.325"></a>
+<span class="sourceLineNo">326</span>               BeanMeta&lt;?&gt; bm = cm.getBeanMeta();<a name="line.326"></a>
+<span class="sourceLineNo">327</span><a name="line.327"></a>
+<span class="sourceLineNo">328</span>               boolean hasChildElements = false;<a name="line.328"></a>
+<span class="sourceLineNo">329</span><a name="line.329"></a>
+<span class="sourceLineNo">330</span>               for (BeanPropertyMeta pMeta : bm.getPropertyMetas()) {<a name="line.330"></a>
+<span class="sourceLineNo">331</span>                  XmlFormat pMetaFormat = pMeta.getExtendedMeta(XmlBeanPropertyMeta.class).getXmlFormat();<a name="line.331"></a>
+<span class="sourceLineNo">332</span>                  if (pMetaFormat != XmlFormat.ATTR)<a name="line.332"></a>
+<span class="sourceLineNo">333</span>                     hasChildElements = true;<a name="line.333"></a>
+<span class="sourceLineNo">334</span>               }<a name="line.334"></a>
+<span class="sourceLineNo">335</span><a name="line.335"></a>
+<span class="sourceLineNo">336</span>               XmlBeanMeta xbm2 = bm.getExtendedMeta(XmlBeanMeta.class);<a name="line.336"></a>
+<span class="sourceLineNo">337</span>               if (xbm2.getContentProperty() != null &amp;&amp; xbm2.getContentFormat() == ELEMENTS) {<a name="line.337"></a>
+<span class="sourceLineNo">338</span>                  w.sTag(i+1, "sequence").nl(i+1);<a name="line.338"></a>
+<span class="sourceLineNo">339</span>                  w.oTag(i+2, "any")<a name="line.339"></a>
+<span class="sourceLineNo">340</span>                     .attr("processContents", "skip")<a name="line.340"></a>
+<span class="sourceLineNo">341</span>                     .attr("minOccurs", 0)<a name="line.341"></a>
+<span class="sourceLineNo">342</span>                     .ceTag().nl(i+2);<a name="line.342"></a>
+<span class="sourceLineNo">343</span>                  w.eTag(i+1, "sequence").nl(i+1);<a name="line.343"></a>
+<span class="sourceLineNo">344</span><a name="line.344"></a>
+<span class="sourceLineNo">345</span>               } else if (hasChildElements) {<a name="line.345"></a>
+<span class="sourceLineNo">346</span><a name="line.346"></a>
+<span class="sourceLineNo">347</span>                  boolean hasOtherNsElement = false;<a name="line.347"></a>
+<span class="sourceLineNo">348</span>                  boolean hasCollapsed = false;<a name="line.348"></a>
+<span class="sourceLineNo">349</span><a name="line.349"></a>
+<span class="sourceLineNo">350</span>                  for (BeanPropertyMeta pMeta : bm.getPropertyMetas()) {<a name="line.350"></a>
+<span class="sourceLineNo">351</span>                     XmlBeanPropertyMeta xmlMeta = pMeta.getExtendedMeta(XmlBeanPropertyMeta.class);<a name="line.351"></a>
+<span class="sourceLineNo">352</span>                     if (xmlMeta.getXmlFormat() != ATTR) {<a name="line.352"></a>
+<span class="sourceLineNo">353</span>                        if (xmlMeta.getNamespace() != null) {<a name="line.353"></a>
+<span class="sourceLineNo">354</span>                           ClassMeta&lt;?&gt; ct2 = pMeta.getClassMeta();<a name="line.354"></a>
+<span class="sourceLineNo">355</span>                           Namespace cNs = first(xmlMeta.getNamespace(), ct2.getExtendedMeta(XmlClassMeta.class).getNamespace(), cm.getExtendedMeta(XmlClassMeta.class).getNamespace(), defaultNs);<a name="line.355"></a>
+<span class="sourceLineNo">356</span>                           // Child element is in another namespace.<a name="line.356"></a>
+<span class="sourceLineNo">357</span>                           schemas.queueElement(cNs, pMeta.getName(), ct2);<a name="line.357"></a>
+<span class="sourceLineNo">358</span>                           hasOtherNsElement = true;<a name="line.358"></a>
+<span class="sourceLineNo">359</span>                        }<a name="line.359"></a>
+<span class="sourceLineNo">360</span>                        if (xmlMeta.getXmlFormat() == COLLAPSED)<a name="line.360"></a>
+<span class="sourceLineNo">361</span>                           hasCollapsed = true;<a name="line.361"></a>
+<span class="sourceLineNo">362</span>                     }<a name="line.362"></a>
+<span class="sourceLineNo">363</span>                  }<a name="line.363"></a>
+<span class="sourceLineNo">364</span><a name="line.364"></a>
+<span class="sourceLineNo">365</span>                  if (hasOtherNsElement || hasCollapsed) {<a name="line.365"></a>
+<span class="sourceLineNo">366</span>                     // If this bean has any child elements in another namespace,<a name="line.366"></a>
+<span class="sourceLineNo">367</span>                     // we need to add an &lt;any&gt; element.<a name="line.367"></a>
+<span class="sourceLineNo">368</span>                     w.oTag(i+1, "choice").attr("maxOccurs", "unbounded").cTag().nl(i+1);<a name="line.368"></a>
+<span class="sourceLineNo">369</span>                     w.oTag(i+2, "any")<a name="line.369"></a>
+<span class="sourceLineNo">370</span>                        .attr("processContents", "skip")<a name="line.370"></a>
+<span class="sourceLineNo">371</span>                        .attr("minOccurs", 0)<a name="line.371"></a>
+<span class="sourceLineNo">372</span>                        .ceTag().nl(i+2);<a name="line.372"></a>
+<span class="sourceLineNo">373</span>                     w.eTag(i+1, "choice").nl(i+1);<a name="line.373"></a>
+<span class="sourceLineNo">374</span><a name="line.374"></a>
+<span class="sourceLineNo">375</span>                  } else {<a name="line.375"></a>
+<span class="sourceLineNo">376</span>                     w.sTag(i+1, "all").nl(i+1);<a name="line.376"></a>
+<span class="sourceLineNo">377</span>                     for (BeanPropertyMeta pMeta : bm.getPropertyMetas()) {<a name="line.377"></a>
+<span class="sourceLineNo">378</span>                        XmlBeanPropertyMeta xmlMeta = pMeta.getExtendedMeta(XmlBeanPropertyMeta.class);<a name="line.378"></a>
+<span class="sourceLineNo">379</span>                        if (xmlMeta.getXmlFormat() != ATTR) {<a name="line.379"></a>
+<span class="sourceLineNo">380</span>                           boolean isCollapsed = xmlMeta.getXmlFormat() == COLLAPSED;<a name="line.380"></a>
+<span class="sourceLineNo">381</span>                           ClassMeta&lt;?&gt; ct2 = pMeta.getClassMeta();<a name="line.381"></a>
+<span class="sourceLineNo">382</span>                           String childName = pMeta.getName();<a name="line.382"></a>
+<span class="sourceLineNo">383</span>                           if (isCollapsed) {<a name="line.383"></a>
+<span class="sourceLineNo">384</span>                              if (xmlMeta.getChildName() != null)<a name="line.384"></a>
+<span class="sourceLineNo">385</span>                                 childName = xmlMeta.getChildName();<a name="line.385"></a>
+<span class="sourceLineNo">386</span>                              ct2 = pMeta.getClassMeta().getElementType();<a name="line.386"></a>
+<span class="sourceLineNo">387</span>                           }<a name="line.387"></a>
+<span class="sourceLineNo">388</span>                           Namespace cNs = first(xmlMeta.getNamespace(), ct2.getExtendedMeta(XmlClassMeta.class).getNamespace(), cm.getExtendedMeta(XmlClassMeta.class).getNamespace(), defaultNs);<a name="line.388"></a>
+<span class="sourceLineNo">389</span>                           if (xmlMeta.getNamespace() == null) {<a name="line.389"></a>
+<span class="sourceLineNo">390</span>                              w.oTag(i+2, "element")<a name="line.390"></a>
+<span class="sourceLineNo">391</span>                                 .attr("name", XmlUtils.encodeElementName(childName), false)<a name="line.391"></a>
+<span class="sourceLineNo">392</span>                                 .attr("type", getXmlType(cNs, ct2))<a name="line.392"></a>
+<span class="sourceLineNo">393</span>                                 .attr("minOccurs", 0);<a name="line.393"></a>
+<span class="sourceLineNo">394</span><a name="line.394"></a>
+<span class="sourceLineNo">395</span>                              w.ceTag().nl(i+2);<a name="line.395"></a>
+<span class="sourceLineNo">396</span>                           } else {<a name="line.396"></a>
+<span class="sourceLineNo">397</span>                              // Child element is in another namespace.<a name="line.397"></a>
+<span class="sourceLineNo">398</span>                              schemas.queueElement(cNs, pMeta.getName(), ct2);<a name="line.398"></a>
+<span class="sourceLineNo">399</span>                              hasOtherNsElement = true;<a name="line.399"></a>
+<span class="sourceLineNo">400</span>                           }<a name="line.400"></a>
+<span class="sourceLineNo">401</span><a name="line.401"></a>
+<span class="sourceLineNo">402</span>                        }<a name="line.402"></a>
+<span class="sourceLineNo">403</span>                     }<a name="line.403"></a>
+<span class="sourceLineNo">404</span>                     w.eTag(i+1, "all").nl(i+1);<a name="line.404"></a>
+<span class="sourceLineNo">405</span>                  }<a name="line.405"></a>
+<span class="sourceLineNo">406</span><a name="line.406"></a>
+<span class="sourceLineNo">407</span>               }<a name="line.407"></a>
+<span class="sourceLineNo">408</span><a name="line.408"></a>
+<span class="sourceLineNo">409</span>               for (BeanPropertyMeta pMeta : bm.getExtendedMeta(XmlBeanMeta.class).getAttrProperties().values()) {<a name="line.409"></a>
+<span class="sourceLineNo">410</span>                  Namespace pNs = pMeta.getExtendedMeta(XmlBeanPropertyMeta.class).getNamespace();<a name="line.410"></a>
+<span class="sourceLineNo">411</span>                  if (pNs == null)<a name="line.411"></a>
+<span class="sourceLineNo">412</span>                     pNs = defaultNs;<a name="line.412"></a>
+<span class="sourceLineNo">413</span><a name="line.413"></a>
+<span class="sourceLineNo">414</span>                  // If the bean attribute has a different namespace than the bean, then it needs to<a name="line.414"></a>
+<span class="sourceLineNo">415</span>                  // be added as a top-level entry in the appropriate schema file.<a name="line.415"></a>
+<span class="sourceLineNo">416</span>                  if (pNs != targetNs) {<a name="line.416"></a>
+<span class="sourceLineNo">417</span>                     schemas.queueAttribute(pNs, pMeta.getName(), pMeta.getClassMeta());<a name="line.417"></a>
+<span class="sourceLineNo">418</span>                     w.oTag(i+1, "attribute")<a name="line.418"></a>
+<span class="sourceLineNo">419</span>                        //.attr("name", pMeta.getName(), true)<a name="line.419"></a>
+<span class="sourceLineNo">420</span>                        .attr("ref", pNs.getName() + ':' + pMeta.getName())<a name="line.420"></a>
+<span class="sourceLineNo">421</span>                        .ceTag().nl(i+1);<a name="line.421"></a>
+<span class="sourceLineNo">422</span>                  }<a name="line.422"></a>
+<span class="sourceLineNo">423</span><a name="line.423"></a>
+<span class="sourceLineNo">424</span>                  // Otherw

<TRUNCATED>


[43/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/uon/UonParser.Decoding.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/uon/UonParser.Decoding.html b/content/site/apidocs/org/apache/juneau/uon/UonParser.Decoding.html
index ead809e..df4b999 100644
--- a/content/site/apidocs/org/apache/juneau/uon/UonParser.Decoding.html
+++ b/content/site/apidocs/org/apache/juneau/uon/UonParser.Decoding.html
@@ -126,7 +126,7 @@
 </dl>
 <hr>
 <br>
-<pre>public static class <a href="../../../../src-html/org/apache/juneau/uon/UonParser.html#line.52">UonParser.Decoding</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/uon/UonParser.html#line.50">UonParser.Decoding</a>
 extends <a href="../../../../org/apache/juneau/uon/UonParser.html" title="class in org.apache.juneau.uon">UonParser</a></pre>
 <div class="block">Default parser, decoding.</div>
 </li>
@@ -216,7 +216,7 @@ extends <a href="../../../../org/apache/juneau/uon/UonParser.html" title="class
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.parser.<a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser">Parser</a></h3>
-<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-java.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apac
 he/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
+<code><a href="../../../../org/apache/juneau/parser/Parser.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-j
 ava.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -252,7 +252,7 @@ extends <a href="../../../../org/apache/juneau/uon/UonParser.html" title="class
 <ul class="blockListLast">
 <li class="blockList">
 <h4>Decoding</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParser.Decoding.html#line.59">Decoding</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParser.Decoding.html#line.57">Decoding</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/uon/UonParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/uon/UonParser.html b/content/site/apidocs/org/apache/juneau/uon/UonParser.html
index 54db7f9..cd2ca51 100644
--- a/content/site/apidocs/org/apache/juneau/uon/UonParser.html
+++ b/content/site/apidocs/org/apache/juneau/uon/UonParser.html
@@ -127,8 +127,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation">@Consumes</a>(<a href="../../../../org/apache/juneau/annotation/Consumes.html#value--">value</a>="text/uon")
-public class <a href="../../../../src-html/org/apache/juneau/uon/UonParser.html#line.42">UonParser</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/uon/UonParser.html#line.40">UonParser</a>
 extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="class in org.apache.juneau.parser">ReaderParser</a></pre>
 <div class="block">Parses UON (a notation for URL-encoded query parameter values) text into POJO models.
 
@@ -225,6 +224,12 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <div class="block">Constructor.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/uon/UonParser.html#UonParser-org.apache.juneau.PropertyStore-java.lang.String...-">UonParser</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+         <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;consumes)</code>
+<div class="block">Constructor.</div>
+</td>
+</tr>
 </table>
 </li>
 </ul>
@@ -272,7 +277,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.parser.<a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser">Parser</a></h3>
-<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-java.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apac
 he/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
+<code><a href="../../../../org/apache/juneau/parser/Parser.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-j
 ava.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -308,7 +313,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/uon/UonParser.html" title="class in org.apache.juneau.uon">UonParser</a> <a href="../../../../src-html/org/apache/juneau/uon/UonParser.html#line.45">DEFAULT</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/uon/UonParser.html" title="class in org.apache.juneau.uon">UonParser</a> <a href="../../../../src-html/org/apache/juneau/uon/UonParser.html#line.43">DEFAULT</a></pre>
 <div class="block">Reusable instance of <a href="../../../../org/apache/juneau/uon/UonParser.html" title="class in org.apache.juneau.uon"><code>UonParser</code></a>, all default settings.</div>
 </li>
 </ul>
@@ -318,7 +323,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DEFAULT_DECODING</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/uon/UonParser.html" title="class in org.apache.juneau.uon">UonParser</a> <a href="../../../../src-html/org/apache/juneau/uon/UonParser.html#line.48">DEFAULT_DECODING</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/uon/UonParser.html" title="class in org.apache.juneau.uon">UonParser</a> <a href="../../../../src-html/org/apache/juneau/uon/UonParser.html#line.46">DEFAULT_DECODING</a></pre>
 <div class="block">Reusable instance of <a href="../../../../org/apache/juneau/uon/UonParser.html" title="class in org.apache.juneau.uon"><code>UonParser</code></a> with decodeChars set to true.</div>
 </li>
 </ul>
@@ -333,14 +338,30 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <a name="UonParser-org.apache.juneau.PropertyStore-">
 <!--   -->
 </a>
+<ul class="blockList">
+<li class="blockList">
+<h4>UonParser</h4>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParser.html#line.71">UonParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<div class="block">Constructor.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+</dl>
+</li>
+</ul>
+<a name="UonParser-org.apache.juneau.PropertyStore-java.lang.String...-">
+<!--   -->
+</a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>UonParser</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParser.html#line.72">UonParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParser.html#line.83">UonParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                 <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;consumes)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+<dd><code>consumes</code> - The list of media types that this parser consumes (e.g. <js>"application/json"</js>, <js>"*&#8203;/json"</js>).</dd>
 </dl>
 </li>
 </ul>
@@ -358,7 +379,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockList">
 <li class="blockList">
 <h4>builder</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/uon/UonParserBuilder.html" title="class in org.apache.juneau.uon">UonParserBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParser.html#line.78">builder</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/uon/UonParserBuilder.html" title="class in org.apache.juneau.uon">UonParserBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParser.html#line.89">builder</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/CoreObject.html#builder--">CoreObject</a></code></span></div>
 <div class="block">Creates a new builder class for this object so that a new object can be created that expands upon the current
  object's settings.</div>
@@ -376,7 +397,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockList">
 <li class="blockList">
 <h4>createParameterSession</h4>
-<pre>protected final&nbsp;<a href="../../../../org/apache/juneau/uon/UonParserSession.html" title="class in org.apache.juneau.uon">UonParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParser.html#line.87">createParameterSession</a>()</pre>
+<pre>protected final&nbsp;<a href="../../../../org/apache/juneau/uon/UonParserSession.html" title="class in org.apache.juneau.uon">UonParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParser.html#line.98">createParameterSession</a>()</pre>
 <div class="block">Create a UON parser session for parsing parameter values.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -390,7 +411,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParser.html" title="
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/uon/UonParserSession.html" title="class in org.apache.juneau.uon">UonParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParser.html#line.92">createSession</a>(<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/uon/UonParserSession.html" title="class in org.apache.juneau.uon">UonParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParser.html#line.103">createSession</a>(<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession-org.apache.juneau.parser.ParserSessionArgs-">Parser</a></code></span></div>
 <div class="block">Create the session object that will be passed in to the parse method.
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/uon/UonParserSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/uon/UonParserSession.html b/content/site/apidocs/org/apache/juneau/uon/UonParserSession.html
index 19e1d96..220fbc6 100644
--- a/content/site/apidocs/org/apache/juneau/uon/UonParserSession.html
+++ b/content/site/apidocs/org/apache/juneau/uon/UonParserSession.html
@@ -159,15 +159,17 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParserSession.html"
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>protected </code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/uon/UonParserSession.html#UonParserSession-org.apache.juneau.uon.UonParserContext-">UonParserSession</a></span>(<a href="../../../../org/apache/juneau/uon/UonParserContext.html" title="class in org.apache.juneau.uon">UonParserContext</a>&nbsp;ctx)</code>
-<div class="block">Create a specialized parser session for parsing URL parameters.</div>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/uon/UonParserSession.html#UonParserSession-org.apache.juneau.uon.UonParserContext-org.apache.juneau.parser.ParserSessionArgs-">UonParserSession</a></span>(<a href="../../../../org/apache/juneau/uon/UonParserContext.html" title="class in org.apache.juneau.uon">UonParserContext</a>&nbsp;ctx,
+                <a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</code>
+<div class="block">Create a new session using properties specified in the context.</div>
 </td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>protected </code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/uon/UonParserSession.html#UonParserSession-org.apache.juneau.uon.UonParserContext-org.apache.juneau.parser.ParserSessionArgs-">UonParserSession</a></span>(<a href="../../../../org/apache/juneau/uon/UonParserContext.html" title="class in org.apache.juneau.uon">UonParserContext</a>&nbsp;ctx,
-                <a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</code>
-<div class="block">Create a new session using properties specified in the context.</div>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/uon/UonParserSession.html#UonParserSession-org.apache.juneau.uon.UonParserContext-org.apache.juneau.parser.ParserSessionArgs-boolean-">UonParserSession</a></span>(<a href="../../../../org/apache/juneau/uon/UonParserContext.html" title="class in org.apache.juneau.uon">UonParserContext</a>&nbsp;ctx,
+                <a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args,
+                boolean&nbsp;decodeChars)</code>
+<div class="block">Create a specialized parser session for parsing URL parameters.</div>
 </td>
 </tr>
 </table>
@@ -320,13 +322,15 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParserSession.html"
 </dl>
 </li>
 </ul>
-<a name="UonParserSession-org.apache.juneau.uon.UonParserContext-">
+<a name="UonParserSession-org.apache.juneau.uon.UonParserContext-org.apache.juneau.parser.ParserSessionArgs-boolean-">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>UonParserSession</h4>
-<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParserSession.html#line.73">UonParserSession</a>(<a href="../../../../org/apache/juneau/uon/UonParserContext.html" title="class in org.apache.juneau.uon">UonParserContext</a>&nbsp;ctx)</pre>
+<pre>protected&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParserSession.html#line.79">UonParserSession</a>(<a href="../../../../org/apache/juneau/uon/UonParserContext.html" title="class in org.apache.juneau.uon">UonParserContext</a>&nbsp;ctx,
+                           <a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args,
+                           boolean&nbsp;decodeChars)</pre>
 <div class="block">Create a specialized parser session for parsing URL parameters.
 
  <p>
@@ -334,7 +338,10 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParserSession.html"
  property is always ignored.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>ctx</code> - The context to copy setting from.</dd>
+<dd><code>ctx</code> - The context creating this session object.
+   The context contains all the configuration settings for this object.</dd>
+<dd><code>args</code> - Runtime session arguments.</dd>
+<dd><code>decodeChars</code> - Whether to decode characters.</dd>
 </dl>
 </li>
 </ul>
@@ -352,7 +359,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParserSession.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>doParse</h4>
-<pre>protected&nbsp;&lt;T&gt;&nbsp;T&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParserSession.html#line.79">doParse</a>(<a href="../../../../org/apache/juneau/parser/ParserPipe.html" title="class in org.apache.juneau.parser">ParserPipe</a>&nbsp;pipe,
+<pre>protected&nbsp;&lt;T&gt;&nbsp;T&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParserSession.html#line.85">doParse</a>(<a href="../../../../org/apache/juneau/parser/ParserPipe.html" title="class in org.apache.juneau.parser">ParserPipe</a>&nbsp;pipe,
                         <a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;T&gt;&nbsp;type)
                  throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/parser/ParserSession.html#doParse-org.apache.juneau.parser.ParserPipe-org.apache.juneau.ClassMeta-">ParserSession</a></code></span></div>
@@ -381,7 +388,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParserSession.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>doParseIntoMap</h4>
-<pre>protected&nbsp;&lt;K,V&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;K,V&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParserSession.html#line.87">doParseIntoMap</a>(<a href="../../../../org/apache/juneau/parser/ParserPipe.html" title="class in org.apache.juneau.parser">ParserPipe</a>&nbsp;pipe,
+<pre>protected&nbsp;&lt;K,V&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;K,V&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParserSession.html#line.93">doParseIntoMap</a>(<a href="../../../../org/apache/juneau/parser/ParserPipe.html" title="class in org.apache.juneau.parser">ParserPipe</a>&nbsp;pipe,
                                         <a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;K,V&gt;&nbsp;m,
                                         <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>&nbsp;keyType,
                                         <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>&nbsp;valueType)
@@ -412,7 +419,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParserSession.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>doParseIntoCollection</h4>
-<pre>protected&nbsp;&lt;E&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;E&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParserSession.html#line.95">doParseIntoCollection</a>(<a href="../../../../org/apache/juneau/parser/ParserPipe.html" title="class in org.apache.juneau.parser">ParserPipe</a>&nbsp;pipe,
+<pre>protected&nbsp;&lt;E&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;E&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParserSession.html#line.101">doParseIntoCollection</a>(<a href="../../../../org/apache/juneau/parser/ParserPipe.html" title="class in org.apache.juneau.parser">ParserPipe</a>&nbsp;pipe,
                                                   <a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;E&gt;&nbsp;c,
                                                   <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/reflect/Type.html?is-external=true" title="class or interface in java.lang.reflect">Type</a>&nbsp;elementType)
                                            throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
@@ -441,7 +448,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParserSession.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>parseAnything</h4>
-<pre>public&nbsp;&lt;T&gt;&nbsp;T&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParserSession.html#line.115">parseAnything</a>(<a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;T&gt;&nbsp;eType,
+<pre>public&nbsp;&lt;T&gt;&nbsp;T&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParserSession.html#line.121">parseAnything</a>(<a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;T&gt;&nbsp;eType,
                            <a href="../../../../org/apache/juneau/uon/UonReader.html" title="class in org.apache.juneau.uon">UonReader</a>&nbsp;r,
                            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;outer,
                            boolean&nbsp;isUrlParamValue,
@@ -469,7 +476,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParserSession.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>parseAttr</h4>
-<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParserSession.html#line.544">parseAttr</a>(<a href="../../../../org/apache/juneau/uon/UonReader.html" title="class in org.apache.juneau.uon">UonReader</a>&nbsp;r,
+<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParserSession.html#line.550">parseAttr</a>(<a href="../../../../org/apache/juneau/uon/UonReader.html" title="class in org.apache.juneau.uon">UonReader</a>&nbsp;r,
                                  boolean&nbsp;encoded)
                           throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block">Convenience method for parsing an attribute from the specified parser.</div>
@@ -490,7 +497,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParserSession.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>parseAttrName</h4>
-<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParserSession.html#line.558">parseAttrName</a>(<a href="../../../../org/apache/juneau/uon/UonReader.html" title="class in org.apache.juneau.uon">UonReader</a>&nbsp;r,
+<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParserSession.html#line.564">parseAttrName</a>(<a href="../../../../org/apache/juneau/uon/UonReader.html" title="class in org.apache.juneau.uon">UonReader</a>&nbsp;r,
                                      boolean&nbsp;encoded)
                               throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block">Parses an attribute name from the specified reader.</div>
@@ -511,7 +518,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParserSession.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>parseString</h4>
-<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParserSession.html#line.628">parseString</a>(<a href="../../../../org/apache/juneau/uon/UonReader.html" title="class in org.apache.juneau.uon">UonReader</a>&nbsp;r,
+<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParserSession.html#line.634">parseString</a>(<a href="../../../../org/apache/juneau/uon/UonReader.html" title="class in org.apache.juneau.uon">UonReader</a>&nbsp;r,
                                    boolean&nbsp;isUrlParamValue)
                             throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block">Parses a string value from the specified reader.</div>
@@ -532,7 +539,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParserSession.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>loc</h4>
-<pre>protected final&nbsp;<a href="../../../../org/apache/juneau/ObjectMap.html" title="class in org.apache.juneau">ObjectMap</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParserSession.html#line.744">loc</a>(<a href="../../../../org/apache/juneau/uon/UonReader.html" title="class in org.apache.juneau.uon">UonReader</a>&nbsp;r)</pre>
+<pre>protected final&nbsp;<a href="../../../../org/apache/juneau/ObjectMap.html" title="class in org.apache.juneau">ObjectMap</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParserSession.html#line.750">loc</a>(<a href="../../../../org/apache/juneau/uon/UonReader.html" title="class in org.apache.juneau.uon">UonReader</a>&nbsp;r)</pre>
 <div class="block">Returns a map identifying the current parse location.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -548,7 +555,7 @@ extends <a href="../../../../org/apache/juneau/parser/ReaderParserSession.html"
 <ul class="blockListLast">
 <li class="blockList">
 <h4>getUonReader</h4>
-<pre>public final&nbsp;<a href="../../../../org/apache/juneau/uon/UonReader.html" title="class in org.apache.juneau.uon">UonReader</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParserSession.html#line.757">getUonReader</a>(<a href="../../../../org/apache/juneau/parser/ParserPipe.html" title="class in org.apache.juneau.parser">ParserPipe</a>&nbsp;pipe,
+<pre>public final&nbsp;<a href="../../../../org/apache/juneau/uon/UonReader.html" title="class in org.apache.juneau.uon">UonReader</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonParserSession.html#line.763">getUonReader</a>(<a href="../../../../org/apache/juneau/parser/ParserPipe.html" title="class in org.apache.juneau.parser">ParserPipe</a>&nbsp;pipe,
                                     boolean&nbsp;decodeChars)
                              throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block">Creates a <a href="../../../../org/apache/juneau/uon/UonReader.html" title="class in org.apache.juneau.uon"><code>UonReader</code></a> from the specified parser pipe.</div>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/uon/UonSerializer.Encoding.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/uon/UonSerializer.Encoding.html b/content/site/apidocs/org/apache/juneau/uon/UonSerializer.Encoding.html
index 9f591ba..b1af0bd 100644
--- a/content/site/apidocs/org/apache/juneau/uon/UonSerializer.Encoding.html
+++ b/content/site/apidocs/org/apache/juneau/uon/UonSerializer.Encoding.html
@@ -126,7 +126,7 @@
 </dl>
 <hr>
 <br>
-<pre>public static class <a href="../../../../src-html/org/apache/juneau/uon/UonSerializer.html#line.158">UonSerializer.Encoding</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/uon/UonSerializer.html#line.156">UonSerializer.Encoding</a>
 extends <a href="../../../../org/apache/juneau/uon/UonSerializer.html" title="class in org.apache.juneau.uon">UonSerializer</a></pre>
 <div class="block">Equivalent to <code><jk>new</jk> UonSerializerBuilder().encoding().build();</code>.</div>
 </li>
@@ -216,7 +216,7 @@ extends <a href="../../../../org/apache/juneau/uon/UonSerializer.html" title="cl
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -252,7 +252,7 @@ extends <a href="../../../../org/apache/juneau/uon/UonSerializer.html" title="cl
 <ul class="blockListLast">
 <li class="blockList">
 <h4>Encoding</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonSerializer.Encoding.html#line.165">Encoding</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonSerializer.Encoding.html#line.163">Encoding</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/uon/UonSerializer.Readable.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/uon/UonSerializer.Readable.html b/content/site/apidocs/org/apache/juneau/uon/UonSerializer.Readable.html
index 74345ae..0fd0276 100644
--- a/content/site/apidocs/org/apache/juneau/uon/UonSerializer.Readable.html
+++ b/content/site/apidocs/org/apache/juneau/uon/UonSerializer.Readable.html
@@ -126,7 +126,7 @@
 </dl>
 <hr>
 <br>
-<pre>public static class <a href="../../../../src-html/org/apache/juneau/uon/UonSerializer.html#line.143">UonSerializer.Readable</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/uon/UonSerializer.html#line.141">UonSerializer.Readable</a>
 extends <a href="../../../../org/apache/juneau/uon/UonSerializer.html" title="class in org.apache.juneau.uon">UonSerializer</a></pre>
 <div class="block">Equivalent to <code><jk>new</jk> UonSerializerBuilder().ws().build();</code>.</div>
 </li>
@@ -216,7 +216,7 @@ extends <a href="../../../../org/apache/juneau/uon/UonSerializer.html" title="cl
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -252,7 +252,7 @@ extends <a href="../../../../org/apache/juneau/uon/UonSerializer.html" title="cl
 <ul class="blockListLast">
 <li class="blockList">
 <h4>Readable</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonSerializer.Readable.html#line.150">Readable</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonSerializer.Readable.html#line.148">Readable</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/uon/UonSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/uon/UonSerializer.html b/content/site/apidocs/org/apache/juneau/uon/UonSerializer.html
index d74e0dd..6c951d1 100644
--- a/content/site/apidocs/org/apache/juneau/uon/UonSerializer.html
+++ b/content/site/apidocs/org/apache/juneau/uon/UonSerializer.html
@@ -127,8 +127,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="text/uon")
-public class <a href="../../../../src-html/org/apache/juneau/uon/UonSerializer.html#line.129">UonSerializer</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/uon/UonSerializer.html#line.127">UonSerializer</a>
 extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html" title="class in org.apache.juneau.serializer">WriterSerializer</a></pre>
 <div class="block">Serializes POJO models to UON (a notation for URL-encoded query parameter values).
 
@@ -323,6 +322,13 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <div class="block">Constructor.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/juneau/uon/UonSerializer.html#UonSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">UonSerializer</a></span>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+             <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+             <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</code>
+<div class="block">Constructor.</div>
+</td>
+</tr>
 </table>
 </li>
 </ul>
@@ -364,7 +370,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -400,7 +406,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/uon/UonSerializer.html" title="class in org.apache.juneau.uon">UonSerializer</a> <a href="../../../../src-html/org/apache/juneau/uon/UonSerializer.html#line.132">DEFAULT</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/uon/UonSerializer.html" title="class in org.apache.juneau.uon">UonSerializer</a> <a href="../../../../src-html/org/apache/juneau/uon/UonSerializer.html#line.130">DEFAULT</a></pre>
 <div class="block">Reusable instance of <a href="../../../../org/apache/juneau/uon/UonSerializer.html" title="class in org.apache.juneau.uon"><code>UonSerializer</code></a>, all default settings.</div>
 </li>
 </ul>
@@ -410,7 +416,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>DEFAULT_READABLE</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/uon/UonSerializer.html" title="class in org.apache.juneau.uon">UonSerializer</a> <a href="../../../../src-html/org/apache/juneau/uon/UonSerializer.html#line.135">DEFAULT_READABLE</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/uon/UonSerializer.html" title="class in org.apache.juneau.uon">UonSerializer</a> <a href="../../../../src-html/org/apache/juneau/uon/UonSerializer.html#line.133">DEFAULT_READABLE</a></pre>
 <div class="block">Reusable instance of <a href="../../../../org/apache/juneau/uon/UonSerializer.Readable.html" title="class in org.apache.juneau.uon"><code>UonSerializer.Readable</code></a>.</div>
 </li>
 </ul>
@@ -420,7 +426,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DEFAULT_ENCODING</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/uon/UonSerializer.html" title="class in org.apache.juneau.uon">UonSerializer</a> <a href="../../../../src-html/org/apache/juneau/uon/UonSerializer.html#line.138">DEFAULT_ENCODING</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/uon/UonSerializer.html" title="class in org.apache.juneau.uon">UonSerializer</a> <a href="../../../../src-html/org/apache/juneau/uon/UonSerializer.html#line.136">DEFAULT_ENCODING</a></pre>
 <div class="block">Reusable instance of <a href="../../../../org/apache/juneau/uon/UonSerializer.Encoding.html" title="class in org.apache.juneau.uon"><code>UonSerializer.Encoding</code></a>.</div>
 </li>
 </ul>
@@ -435,14 +441,43 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <a name="UonSerializer-org.apache.juneau.PropertyStore-">
 <!--   -->
 </a>
+<ul class="blockList">
+<li class="blockList">
+<h4>UonSerializer</h4>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonSerializer.html#line.177">UonSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<div class="block">Constructor.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+</dl>
+</li>
+</ul>
+<a name="UonSerializer-org.apache.juneau.PropertyStore-java.lang.String-java.lang.String...-">
+<!--   -->
+</a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>UonSerializer</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonSerializer.html#line.178">UonSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonSerializer.html#line.202">UonSerializer</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore,
+                     <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;produces,
+                     <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>...&nbsp;accept)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>propertyStore</code> - The property store containing all the settings for this object.</dd>
+<dd><code>produces</code> - The media type that this serializer produces.</dd>
+<dd><code>accept</code> - The accept media types that the serializer can handle.
+   <p>
+   Can contain meta-characters per the <code>media-type</code> specification of
+   <a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1">RFC2616/14.1</a>
+   <p>
+   If empty, then assumes the only media type supported is <code>produces</code>.
+   <p>
+   For example, if this serializer produces <js>"application/json"</js> but should handle media types of
+   <js>"application/json"</js> and <js>"text/json"</js>, then the arguments should be:
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"application/json"</js>, <js>"text/json"</js>);</code>
+   <br>...or...
+   <br><code><jk>super</jk>(propertyStore, <js>"application/json"</js>, <js>"*&#8203;/json"</js>);</code></dd>
 </dl>
 </li>
 </ul>
@@ -460,7 +495,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockList">
 <li class="blockList">
 <h4>builder</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/uon/UonSerializerBuilder.html" title="class in org.apache.juneau.uon">UonSerializerBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonSerializer.html#line.184">builder</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/uon/UonSerializerBuilder.html" title="class in org.apache.juneau.uon">UonSerializerBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonSerializer.html#line.208">builder</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/CoreObject.html#builder--">CoreObject</a></code></span></div>
 <div class="block">Creates a new builder class for this object so that a new object can be created that expands upon the current
  object's settings.</div>
@@ -478,7 +513,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonSerializer.html#line.195">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/uon/UonSerializer.html#line.219">createSession</a>(<a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html" title="class in org.apache.juneau.serializer">SerializerSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession-org.apache.juneau.serializer.SerializerSessionArgs-">Serializer</a></code></span></div>
 <div class="block">Create the session object used for actual serialization of objects.</div>
 <dl>
@@ -488,8 +523,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializer.html"
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and serializer
-   contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   contexts.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>The new session object.
    <br>Note that you must call <a href="../../../../org/apache/juneau/BeanSession.html#close--"><code>BeanSession.close()</code></a> on this object to perform any necessary

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/uon/UonSerializerSession.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/uon/UonSerializerSession.html b/content/site/apidocs/org/apache/juneau/uon/UonSerializerSession.html
index 58a71fd..065cabb 100644
--- a/content/site/apidocs/org/apache/juneau/uon/UonSerializerSession.html
+++ b/content/site/apidocs/org/apache/juneau/uon/UonSerializerSession.html
@@ -132,7 +132,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre>public class <a href="../../../../src-html/org/apache/juneau/uon/UonSerializerSession.html#line.31">UonSerializerSession</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/uon/UonSerializerSession.html#line.32">UonSerializerSession</a>
 extends <a href="../../../../org/apache/juneau/serializer/WriterSerializerSession.html" title="class in org.apache.juneau.serializer">WriterSerializerSession</a></pre>
 <div class="block">Session object that lives for the duration of a single use of <a href="../../../../org/apache/juneau/uon/UonSerializer.html" title="class in org.apache.juneau.uon"><code>UonSerializer</code></a>.
 
@@ -287,8 +287,7 @@ extends <a href="../../../../org/apache/juneau/serializer/WriterSerializerSessio
 <dd><code>args</code> - Runtime arguments.
    These specify session-level information such as locale and URI context.
    It also include session-level properties that override the properties defined on the bean and
-   serializer contexts.
-   <br>If <jk>null</jk>, defaults to <a href="../../../../org/apache/juneau/serializer/SerializerSessionArgs.html#DEFAULT"><code>SerializerSessionArgs.DEFAULT</code></a>.</dd>
+   serializer contexts.</dd>
 </dl>
 </li>
 </ul>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingParser.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingParser.html b/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingParser.html
index 7a1d36d..c8df27f 100644
--- a/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingParser.html
+++ b/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingParser.html
@@ -132,8 +132,7 @@ var activeTableTab = "activeTableTab";
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Consumes.html" title="annotation in org.apache.juneau.annotation">@Consumes</a>(<a href="../../../../org/apache/juneau/annotation/Consumes.html#value--">value</a>="application/x-www-form-urlencoded")
-public class <a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingParser.html#line.53">UrlEncodingParser</a>
+<pre>public class <a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingParser.html#line.51">UrlEncodingParser</a>
 extends <a href="../../../../org/apache/juneau/uon/UonParser.html" title="class in org.apache.juneau.uon">UonParser</a>
 implements <a href="../../../../org/apache/juneau/parser/PartParser.html" title="interface in org.apache.juneau.parser">PartParser</a></pre>
 <div class="block">Parses URL-encoded text into POJO models.
@@ -294,7 +293,7 @@ implements <a href="../../../../org/apache/juneau/parser/PartParser.html" title=
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.parser.<a href="../../../../org/apache/juneau/parser/Parser.html" title="class in org.apache.juneau.parser">Parser</a></h3>
-<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-java.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apac
 he/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
+<code><a href="../../../../org/apache/juneau/parser/Parser.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.Class-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-org.apache.juneau.ClassMeta-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parse-java.lang.Object-java.lang.reflect.Type-java.lang.reflect.Type...-">parse</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseArgs-java.lang.Object-java.lang.reflect.Type:A-">parseArgs</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoCollection-j
 ava.lang.Object-java.util.Collection-java.lang.reflect.Type-">parseIntoCollection</a>, <a href="../../../../org/apache/juneau/parser/Parser.html#parseIntoMap-java.lang.Object-java.util.Map-java.lang.reflect.Type-java.lang.reflect.Type-">parseIntoMap</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -330,7 +329,7 @@ implements <a href="../../../../org/apache/juneau/parser/PartParser.html" title=
 <ul class="blockListLast">
 <li class="blockList">
 <h4>DEFAULT</h4>
-<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/urlencoding/UrlEncodingParser.html" title="class in org.apache.juneau.urlencoding">UrlEncodingParser</a> <a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingParser.html#line.56">DEFAULT</a></pre>
+<pre>public static final&nbsp;<a href="../../../../org/apache/juneau/urlencoding/UrlEncodingParser.html" title="class in org.apache.juneau.urlencoding">UrlEncodingParser</a> <a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingParser.html#line.54">DEFAULT</a></pre>
 <div class="block">Reusable instance of <a href="../../../../org/apache/juneau/urlencoding/UrlEncodingParser.html" title="class in org.apache.juneau.urlencoding"><code>UrlEncodingParser</code></a>.</div>
 </li>
 </ul>
@@ -348,7 +347,7 @@ implements <a href="../../../../org/apache/juneau/parser/PartParser.html" title=
 <ul class="blockListLast">
 <li class="blockList">
 <h4>UrlEncodingParser</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingParser.html#line.66">UrlEncodingParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingParser.html#line.64">UrlEncodingParser</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -370,7 +369,7 @@ implements <a href="../../../../org/apache/juneau/parser/PartParser.html" title=
 <ul class="blockList">
 <li class="blockList">
 <h4>builder</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/urlencoding/UrlEncodingParserBuilder.html" title="class in org.apache.juneau.urlencoding">UrlEncodingParserBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingParser.html#line.72">builder</a>()</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/urlencoding/UrlEncodingParserBuilder.html" title="class in org.apache.juneau.urlencoding">UrlEncodingParserBuilder</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingParser.html#line.70">builder</a>()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/CoreObject.html#builder--">CoreObject</a></code></span></div>
 <div class="block">Creates a new builder class for this object so that a new object can be created that expands upon the current
  object's settings.</div>
@@ -388,7 +387,7 @@ implements <a href="../../../../org/apache/juneau/parser/PartParser.html" title=
 <ul class="blockList">
 <li class="blockList">
 <h4>parseIntoSimpleMap</h4>
-<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingParser.html#line.84">parseIntoSimpleMap</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;qs,
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&gt;&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingParser.html#line.82">parseIntoSimpleMap</a>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;qs,
                                                <a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>[]&gt;&nbsp;map)
                                         throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block">Parse a URL query string into a simple map of key/value pairs.</div>
@@ -409,7 +408,7 @@ implements <a href="../../../../org/apache/juneau/parser/PartParser.html" title=
 <ul class="blockList">
 <li class="blockList">
 <h4>parse</h4>
-<pre>public&nbsp;&lt;T&gt;&nbsp;T&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingParser.html#line.166">parse</a>(<a href="../../../../org/apache/juneau/PartType.html" title="enum in org.apache.juneau">PartType</a>&nbsp;partType,
+<pre>public&nbsp;&lt;T&gt;&nbsp;T&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingParser.html#line.164">parse</a>(<a href="../../../../org/apache/juneau/PartType.html" title="enum in org.apache.juneau">PartType</a>&nbsp;partType,
                    <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;in,
                    <a href="../../../../org/apache/juneau/ClassMeta.html" title="class in org.apache.juneau">ClassMeta</a>&lt;T&gt;&nbsp;type)
             throws <a href="../../../../org/apache/juneau/parser/ParseException.html" title="class in org.apache.juneau.parser">ParseException</a></pre>
@@ -435,7 +434,7 @@ implements <a href="../../../../org/apache/juneau/parser/PartParser.html" title=
 <ul class="blockListLast">
 <li class="blockList">
 <h4>createSession</h4>
-<pre>public&nbsp;<a href="../../../../org/apache/juneau/urlencoding/UrlEncodingParserSession.html" title="class in org.apache.juneau.urlencoding">UrlEncodingParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingParser.html#line.200">createSession</a>(<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</pre>
+<pre>public&nbsp;<a href="../../../../org/apache/juneau/urlencoding/UrlEncodingParserSession.html" title="class in org.apache.juneau.urlencoding">UrlEncodingParserSession</a>&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingParser.html#line.198">createSession</a>(<a href="../../../../org/apache/juneau/parser/ParserSessionArgs.html" title="class in org.apache.juneau.parser">ParserSessionArgs</a>&nbsp;args)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/juneau/parser/Parser.html#createSession-org.apache.juneau.parser.ParserSessionArgs-">Parser</a></code></span></div>
 <div class="block">Create the session object that will be passed in to the parse method.
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializer.Expanded.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializer.Expanded.html b/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializer.Expanded.html
index 2c8f472..54d7bb4 100644
--- a/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializer.Expanded.html
+++ b/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializer.Expanded.html
@@ -135,9 +135,7 @@
 </dl>
 <hr>
 <br>
-<pre><a href="../../../../org/apache/juneau/annotation/Produces.html" title="annotation in org.apache.juneau.annotation">@Produces</a>(<a href="../../../../org/apache/juneau/annotation/Produces.html#value--">value</a>="application/x-www-form-urlencoded",
-          <a href="../../../../org/apache/juneau/annotation/Produces.html#contentType--">contentType</a>="application/x-www-form-urlencoded")
-public static class <a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.149">UrlEncodingSerializer.Expanded</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.146">UrlEncodingSerializer.Expanded</a>
 extends <a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializer.html" title="class in org.apache.juneau.urlencoding">UrlEncodingSerializer</a></pre>
 <div class="block">Equivalent to <code><jk>new</jk> UrlEncodingSerializerBuilder().expandedParams(<jk>true</jk>).build();</code>.</div>
 </li>
@@ -241,7 +239,7 @@ extends <a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializer
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -277,7 +275,7 @@ extends <a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializer
 <ul class="blockListLast">
 <li class="blockList">
 <h4>Expanded</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.Expanded.html#line.156">Expanded</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.Expanded.html#line.153">Expanded</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializer.PlainText.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializer.PlainText.html b/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializer.PlainText.html
index c1e2f93..88032bb 100644
--- a/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializer.PlainText.html
+++ b/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializer.PlainText.html
@@ -135,7 +135,7 @@
 </dl>
 <hr>
 <br>
-<pre>public static class <a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.179">UrlEncodingSerializer.PlainText</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.176">UrlEncodingSerializer.PlainText</a>
 extends <a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializer.html" title="class in org.apache.juneau.urlencoding">UrlEncodingSerializer</a></pre>
 <div class="block">Equivalent to <code><jk>new</jk> UrlEncodingSerializerBuilder().plainTextParts().build();</code>.</div>
 </li>
@@ -239,7 +239,7 @@ extends <a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializer
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -275,7 +275,7 @@ extends <a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializer
 <ul class="blockListLast">
 <li class="blockList">
 <h4>PlainText</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.PlainText.html#line.186">PlainText</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.PlainText.html#line.183">PlainText</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializer.Readable.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializer.Readable.html b/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializer.Readable.html
index 7c6648a..92a4c7b 100644
--- a/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializer.Readable.html
+++ b/content/site/apidocs/org/apache/juneau/urlencoding/UrlEncodingSerializer.Readable.html
@@ -135,7 +135,7 @@
 </dl>
 <hr>
 <br>
-<pre>public static class <a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.164">UrlEncodingSerializer.Readable</a>
+<pre>public static class <a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.html#line.161">UrlEncodingSerializer.Readable</a>
 extends <a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializer.html" title="class in org.apache.juneau.urlencoding">UrlEncodingSerializer</a></pre>
 <div class="block">Equivalent to <code><jk>new</jk> UrlEncodingSerializerBuilder().useWhitespace(<jk>true</jk>).build();</code>.</div>
 </li>
@@ -239,7 +239,7 @@ extends <a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializer
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.juneau.serializer.<a href="../../../../org/apache/juneau/serializer/Serializer.html" title="class in org.apache.juneau.serializer">Serializer</a></h3>
-<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getPrimaryMediaType--">getPrimaryMediaType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
+<code><a href="../../../../org/apache/juneau/serializer/Serializer.html#createDefaultSessionArgs--">createDefaultSessionArgs</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#createSession--">createSession</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getMediaTypes--">getMediaTypes</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#getResponseContentType--">getResponseContentType</a>, <a href="../../../../org/apache/juneau/serializer/Serializer.html#serialize-java.lang.Object-java.lang.Object-">serialize</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.juneau.CoreObject">
@@ -275,7 +275,7 @@ extends <a href="../../../../org/apache/juneau/urlencoding/UrlEncodingSerializer
 <ul class="blockListLast">
 <li class="blockList">
 <h4>Readable</h4>
-<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.Readable.html#line.171">Readable</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
+<pre>public&nbsp;<a href="../../../../src-html/org/apache/juneau/urlencoding/UrlEncodingSerializer.Readable.html#line.168">Readable</a>(<a href="../../../../org/apache/juneau/PropertyStore.html" title="class in org.apache.juneau">PropertyStore</a>&nbsp;propertyStore)</pre>
 <div class="block">Constructor.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>


[02/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.SqReadable.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.SqReadable.html b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.SqReadable.html
index 957e688..1f13575 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.SqReadable.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/xml/XmlSerializer.SqReadable.html
@@ -24,235 +24,258 @@
 <span class="sourceLineNo">016</span>import static org.apache.juneau.xml.XmlSerializerContext.*;<a name="line.16"></a>
 <span class="sourceLineNo">017</span><a name="line.17"></a>
 <span class="sourceLineNo">018</span>import org.apache.juneau.*;<a name="line.18"></a>
-<span class="sourceLineNo">019</span>import org.apache.juneau.annotation.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.json.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span>import org.apache.juneau.serializer.*;<a name="line.21"></a>
-<span class="sourceLineNo">022</span><a name="line.22"></a>
-<span class="sourceLineNo">023</span>/**<a name="line.23"></a>
-<span class="sourceLineNo">024</span> * Serializes POJO models to XML.<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *<a name="line.25"></a>
-<span class="sourceLineNo">026</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> * &lt;p&gt;<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> *<a name="line.34"></a>
-<span class="sourceLineNo">035</span> * See the {@link JsonSerializer} class for details on how Java models map to JSON.<a name="line.35"></a>
-<span class="sourceLineNo">036</span> *<a name="line.36"></a>
-<span class="sourceLineNo">037</span> * &lt;p&gt;<a name="line.37"></a>
-<span class="sourceLineNo">038</span> * For example, the following JSON...<a name="line.38"></a>
-<span class="sourceLineNo">039</span> * &lt;p class='bcode'&gt;<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *    {<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *       name:&lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.41"></a>
-<span class="sourceLineNo">042</span> *       address: {<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *          streetAddress: &lt;js&gt;'21 2nd Street'&lt;/js&gt;,<a name="line.43"></a>
-<span class="sourceLineNo">044</span> *          city: &lt;js&gt;'New York'&lt;/js&gt;,<a name="line.44"></a>
-<span class="sourceLineNo">045</span> *          state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.45"></a>
-<span class="sourceLineNo">046</span> *          postalCode: &lt;js&gt;10021&lt;/js&gt;<a name="line.46"></a>
-<span class="sourceLineNo">047</span> *       },<a name="line.47"></a>
-<span class="sourceLineNo">048</span> *       phoneNumbers: [<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *          &lt;js&gt;'212 555-1111'&lt;/js&gt;,<a name="line.49"></a>
-<span class="sourceLineNo">050</span> *          &lt;js&gt;'212 555-2222'&lt;/js&gt;<a name="line.50"></a>
-<span class="sourceLineNo">051</span> *       ],<a name="line.51"></a>
-<span class="sourceLineNo">052</span> *       additionalInfo: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.52"></a>
-<span class="sourceLineNo">053</span> *       remote: &lt;jk&gt;false&lt;/jk&gt;,<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *       height: &lt;js&gt;62.4&lt;/js&gt;,<a name="line.54"></a>
-<span class="sourceLineNo">055</span> *       &lt;js&gt;'fico score'&lt;/js&gt;:  &lt;js&gt;' &amp;gt; 640'&lt;/js&gt;<a name="line.55"></a>
-<span class="sourceLineNo">056</span> *    }<a name="line.56"></a>
-<span class="sourceLineNo">057</span> * &lt;p&gt;<a name="line.57"></a>
-<span class="sourceLineNo">058</span> *    ...maps to the following XML using the default serializer...<a name="line.58"></a>
-<span class="sourceLineNo">059</span> * &lt;p class='bcode'&gt;<a name="line.59"></a>
-<span class="sourceLineNo">060</span> *    &lt;xt&gt;&amp;lt;object&amp;gt;&lt;/xt&gt;<a name="line.60"></a>
-<span class="sourceLineNo">061</span> *       &lt;xt&gt;&amp;lt;name&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.61"></a>
-<span class="sourceLineNo">062</span> *       &lt;xt&gt;&amp;lt;address&amp;gt;&lt;/xt&gt;<a name="line.62"></a>
-<span class="sourceLineNo">063</span> *          &lt;xt&gt;&amp;lt;streetAddress&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.63"></a>
-<span class="sourceLineNo">064</span> *          &lt;xt&gt;&amp;lt;city&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.64"></a>
-<span class="sourceLineNo">065</span> *          &lt;xt&gt;&amp;lt;state&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.65"></a>
-<span class="sourceLineNo">066</span> *          &lt;xt&gt;&amp;lt;postalCode&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.66"></a>
-<span class="sourceLineNo">067</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.67"></a>
-<span class="sourceLineNo">068</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.68"></a>
-<span class="sourceLineNo">069</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.69"></a>
-<span class="sourceLineNo">070</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.70"></a>
-<span class="sourceLineNo">071</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.71"></a>
-<span class="sourceLineNo">072</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.72"></a>
-<span class="sourceLineNo">073</span> *       &lt;xt&gt;&amp;lt;remote&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.73"></a>
-<span class="sourceLineNo">074</span> *       &lt;xt&gt;&amp;lt;height&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.74"></a>
-<span class="sourceLineNo">075</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.75"></a>
-<span class="sourceLineNo">076</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.76"></a>
-<span class="sourceLineNo">077</span> *<a name="line.77"></a>
-<span class="sourceLineNo">078</span> * &lt;p&gt;<a name="line.78"></a>
-<span class="sourceLineNo">079</span> * An additional "add-json-properties" mode is also provided to prevent loss of JSON data types...<a name="line.79"></a>
-<span class="sourceLineNo">080</span> * &lt;p class='bcode'&gt;<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *       &lt;xt&gt;&amp;lt;name&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *       &lt;xt&gt;&amp;lt;address&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'object'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *          &lt;xt&gt;&amp;lt;streetAddress&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.83"></a>
-<span class="sourceLineNo">084</span> *          &lt;xt&gt;&amp;lt;city&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *          &lt;xt&gt;&amp;lt;state&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.85"></a>
-<span class="sourceLineNo">086</span> *          &lt;xt&gt;&amp;lt;postalCode&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.86"></a>
-<span class="sourceLineNo">087</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'array'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *       &lt;xt&gt;&amp;lt;remote&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'boolean'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.93"></a>
-<span class="sourceLineNo">094</span> *       &lt;xt&gt;&amp;lt;height&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.95"></a>
-<span class="sourceLineNo">096</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.96"></a>
-<span class="sourceLineNo">097</span> * &lt;/p&gt;<a name="line.97"></a>
-<span class="sourceLineNo">098</span> *<a name="line.98"></a>
-<span class="sourceLineNo">099</span> * &lt;p&gt;<a name="line.99"></a>
-<span class="sourceLineNo">100</span> * This serializer provides several serialization options.<a name="line.100"></a>
-<span class="sourceLineNo">101</span> * Typically, one of the predefined &lt;jsf&gt;DEFAULT&lt;/jsf&gt; serializers will be sufficient.<a name="line.101"></a>
-<span class="sourceLineNo">102</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.102"></a>
-<span class="sourceLineNo">103</span> *<a name="line.103"></a>
-<span class="sourceLineNo">104</span> * &lt;p&gt;<a name="line.104"></a>
-<span class="sourceLineNo">105</span> * If an attribute name contains any non-valid XML element characters, they will be escaped using standard<a name="line.105"></a>
-<span class="sourceLineNo">106</span> * {@code _x####_} notation.<a name="line.106"></a>
-<span class="sourceLineNo">107</span> *<a name="line.107"></a>
-<span class="sourceLineNo">108</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.108"></a>
-<span class="sourceLineNo">109</span> *<a name="line.109"></a>
-<span class="sourceLineNo">110</span> * This class has the following properties associated with it:<a name="line.110"></a>
-<span class="sourceLineNo">111</span> * &lt;ul&gt;<a name="line.111"></a>
-<span class="sourceLineNo">112</span> *    &lt;li&gt;{@link XmlSerializerContext}<a name="line.112"></a>
-<span class="sourceLineNo">113</span> *    &lt;li&gt;{@link BeanContext}<a name="line.113"></a>
-<span class="sourceLineNo">114</span> * &lt;/ul&gt;<a name="line.114"></a>
-<span class="sourceLineNo">115</span> *<a name="line.115"></a>
-<span class="sourceLineNo">116</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.116"></a>
-<span class="sourceLineNo">117</span> *<a name="line.117"></a>
-<span class="sourceLineNo">118</span> * The following direct subclasses are provided for convenience:<a name="line.118"></a>
-<span class="sourceLineNo">119</span> * &lt;ul&gt;<a name="line.119"></a>
-<span class="sourceLineNo">120</span> *    &lt;li&gt;{@link Sq} - Default serializer, single quotes.<a name="line.120"></a>
-<span class="sourceLineNo">121</span> *    &lt;li&gt;{@link SqReadable} - Default serializer, single quotes, whitespace added.<a name="line.121"></a>
-<span class="sourceLineNo">122</span> * &lt;/ul&gt;<a name="line.122"></a>
-<span class="sourceLineNo">123</span> */<a name="line.123"></a>
-<span class="sourceLineNo">124</span>@Produces("text/xml")<a name="line.124"></a>
-<span class="sourceLineNo">125</span>public class XmlSerializer extends WriterSerializer {<a name="line.125"></a>
-<span class="sourceLineNo">126</span><a name="line.126"></a>
-<span class="sourceLineNo">127</span>   /** Default serializer without namespaces. */<a name="line.127"></a>
-<span class="sourceLineNo">128</span>   public static final XmlSerializer DEFAULT = new XmlSerializer(PropertyStore.create());<a name="line.128"></a>
-<span class="sourceLineNo">129</span><a name="line.129"></a>
-<span class="sourceLineNo">130</span>   /** Default serializer without namespaces, with single quotes. */<a name="line.130"></a>
-<span class="sourceLineNo">131</span>   public static final XmlSerializer DEFAULT_SQ = new Sq(PropertyStore.create());<a name="line.131"></a>
-<span class="sourceLineNo">132</span><a name="line.132"></a>
-<span class="sourceLineNo">133</span>   /** Default serializer without namespaces, with single quotes, whitespace added. */<a name="line.133"></a>
-<span class="sourceLineNo">134</span>   public static final XmlSerializer DEFAULT_SQ_READABLE = new SqReadable(PropertyStore.create());<a name="line.134"></a>
-<span class="sourceLineNo">135</span><a name="line.135"></a>
-<span class="sourceLineNo">136</span>   /** Default serializer, all default settings. */<a name="line.136"></a>
-<span class="sourceLineNo">137</span>   public static final XmlSerializer DEFAULT_NS = new Ns(PropertyStore.create());<a name="line.137"></a>
-<span class="sourceLineNo">138</span><a name="line.138"></a>
-<span class="sourceLineNo">139</span>   /** Default serializer, single quotes. */<a name="line.139"></a>
-<span class="sourceLineNo">140</span>   public static final XmlSerializer DEFAULT_NS_SQ = new NsSq(PropertyStore.create());<a name="line.140"></a>
-<span class="sourceLineNo">141</span><a name="line.141"></a>
-<span class="sourceLineNo">142</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.142"></a>
-<span class="sourceLineNo">143</span>   public static final XmlSerializer DEFAULT_NS_SQ_READABLE = new NsSqReadable(PropertyStore.create());<a name="line.143"></a>
-<span class="sourceLineNo">144</span><a name="line.144"></a>
-<span class="sourceLineNo">145</span><a name="line.145"></a>
-<span class="sourceLineNo">146</span>   /** Default serializer, single quotes. */<a name="line.146"></a>
-<span class="sourceLineNo">147</span>   public static class Sq extends XmlSerializer {<a name="line.147"></a>
-<span class="sourceLineNo">148</span><a name="line.148"></a>
-<span class="sourceLineNo">149</span>      /**<a name="line.149"></a>
-<span class="sourceLineNo">150</span>       * Constructor.<a name="line.150"></a>
-<span class="sourceLineNo">151</span>       *<a name="line.151"></a>
-<span class="sourceLineNo">152</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.152"></a>
-<span class="sourceLineNo">153</span>       */<a name="line.153"></a>
-<span class="sourceLineNo">154</span>      public Sq(PropertyStore propertyStore) {<a name="line.154"></a>
-<span class="sourceLineNo">155</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\''));<a name="line.155"></a>
-<span class="sourceLineNo">156</span>      }<a name="line.156"></a>
-<span class="sourceLineNo">157</span>   }<a name="line.157"></a>
-<span class="sourceLineNo">158</span><a name="line.158"></a>
-<span class="sourceLineNo">159</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.159"></a>
-<span class="sourceLineNo">160</span>   public static class SqReadable extends XmlSerializer {<a name="line.160"></a>
-<span class="sourceLineNo">161</span><a name="line.161"></a>
-<span class="sourceLineNo">162</span>      /**<a name="line.162"></a>
-<span class="sourceLineNo">163</span>       * Constructor.<a name="line.163"></a>
-<span class="sourceLineNo">164</span>       *<a name="line.164"></a>
-<span class="sourceLineNo">165</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.165"></a>
-<span class="sourceLineNo">166</span>       */<a name="line.166"></a>
-<span class="sourceLineNo">167</span>      public SqReadable(PropertyStore propertyStore) {<a name="line.167"></a>
-<span class="sourceLineNo">168</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\'').append(SERIALIZER_useWhitespace, true));<a name="line.168"></a>
-<span class="sourceLineNo">169</span>      }<a name="line.169"></a>
-<span class="sourceLineNo">170</span>   }<a name="line.170"></a>
-<span class="sourceLineNo">171</span><a name="line.171"></a>
-<span class="sourceLineNo">172</span>   /** Default serializer without namespaces. */<a name="line.172"></a>
-<span class="sourceLineNo">173</span>   @Produces(value="text/xml+simple",contentType="text/xml")<a name="line.173"></a>
-<span class="sourceLineNo">174</span>   public static class Ns extends XmlSerializer {<a name="line.174"></a>
-<span class="sourceLineNo">175</span><a name="line.175"></a>
-<span class="sourceLineNo">176</span>      /**<a name="line.176"></a>
-<span class="sourceLineNo">177</span>       * Constructor.<a name="line.177"></a>
-<span class="sourceLineNo">178</span>       *<a name="line.178"></a>
-<span class="sourceLineNo">179</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.179"></a>
-<span class="sourceLineNo">180</span>       */<a name="line.180"></a>
-<span class="sourceLineNo">181</span>      public Ns(PropertyStore propertyStore) {<a name="line.181"></a>
-<span class="sourceLineNo">182</span>         super(propertyStore.copy().append(XML_enableNamespaces, true));<a name="line.182"></a>
-<span class="sourceLineNo">183</span>      }<a name="line.183"></a>
-<span class="sourceLineNo">184</span>   }<a name="line.184"></a>
+<span class="sourceLineNo">019</span>import org.apache.juneau.json.*;<a name="line.19"></a>
+<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
+<span class="sourceLineNo">021</span><a name="line.21"></a>
+<span class="sourceLineNo">022</span>/**<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * Serializes POJO models to XML.<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.27"></a>
+<span class="sourceLineNo">028</span> *<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;p&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/xml&lt;/code&gt;<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * See the {@link JsonSerializer} class for details on how Java models map to JSON.<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *<a name="line.35"></a>
+<span class="sourceLineNo">036</span> * &lt;p&gt;<a name="line.36"></a>
+<span class="sourceLineNo">037</span> * For example, the following JSON...<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * &lt;p class='bcode'&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *    {<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *       name:&lt;js&gt;'John Smith'&lt;/js&gt;,<a name="line.40"></a>
+<span class="sourceLineNo">041</span> *       address: {<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *          streetAddress: &lt;js&gt;'21 2nd Street'&lt;/js&gt;,<a name="line.42"></a>
+<span class="sourceLineNo">043</span> *          city: &lt;js&gt;'New York'&lt;/js&gt;,<a name="line.43"></a>
+<span class="sourceLineNo">044</span> *          state: &lt;js&gt;'NY'&lt;/js&gt;,<a name="line.44"></a>
+<span class="sourceLineNo">045</span> *          postalCode: &lt;js&gt;10021&lt;/js&gt;<a name="line.45"></a>
+<span class="sourceLineNo">046</span> *       },<a name="line.46"></a>
+<span class="sourceLineNo">047</span> *       phoneNumbers: [<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *          &lt;js&gt;'212 555-1111'&lt;/js&gt;,<a name="line.48"></a>
+<span class="sourceLineNo">049</span> *          &lt;js&gt;'212 555-2222'&lt;/js&gt;<a name="line.49"></a>
+<span class="sourceLineNo">050</span> *       ],<a name="line.50"></a>
+<span class="sourceLineNo">051</span> *       additionalInfo: &lt;jk&gt;null&lt;/jk&gt;,<a name="line.51"></a>
+<span class="sourceLineNo">052</span> *       remote: &lt;jk&gt;false&lt;/jk&gt;,<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *       height: &lt;js&gt;62.4&lt;/js&gt;,<a name="line.53"></a>
+<span class="sourceLineNo">054</span> *       &lt;js&gt;'fico score'&lt;/js&gt;:  &lt;js&gt;' &amp;gt; 640'&lt;/js&gt;<a name="line.54"></a>
+<span class="sourceLineNo">055</span> *    }<a name="line.55"></a>
+<span class="sourceLineNo">056</span> * &lt;p&gt;<a name="line.56"></a>
+<span class="sourceLineNo">057</span> *    ...maps to the following XML using the default serializer...<a name="line.57"></a>
+<span class="sourceLineNo">058</span> * &lt;p class='bcode'&gt;<a name="line.58"></a>
+<span class="sourceLineNo">059</span> *    &lt;xt&gt;&amp;lt;object&amp;gt;&lt;/xt&gt;<a name="line.59"></a>
+<span class="sourceLineNo">060</span> *       &lt;xt&gt;&amp;lt;name&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.60"></a>
+<span class="sourceLineNo">061</span> *       &lt;xt&gt;&amp;lt;address&amp;gt;&lt;/xt&gt;<a name="line.61"></a>
+<span class="sourceLineNo">062</span> *          &lt;xt&gt;&amp;lt;streetAddress&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.62"></a>
+<span class="sourceLineNo">063</span> *          &lt;xt&gt;&amp;lt;city&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.63"></a>
+<span class="sourceLineNo">064</span> *          &lt;xt&gt;&amp;lt;state&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.64"></a>
+<span class="sourceLineNo">065</span> *          &lt;xt&gt;&amp;lt;postalCode&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.65"></a>
+<span class="sourceLineNo">066</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.66"></a>
+<span class="sourceLineNo">067</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.67"></a>
+<span class="sourceLineNo">068</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.68"></a>
+<span class="sourceLineNo">069</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.69"></a>
+<span class="sourceLineNo">070</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.70"></a>
+<span class="sourceLineNo">071</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.71"></a>
+<span class="sourceLineNo">072</span> *       &lt;xt&gt;&amp;lt;remote&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.72"></a>
+<span class="sourceLineNo">073</span> *       &lt;xt&gt;&amp;lt;height&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.73"></a>
+<span class="sourceLineNo">074</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.74"></a>
+<span class="sourceLineNo">075</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.75"></a>
+<span class="sourceLineNo">076</span> *<a name="line.76"></a>
+<span class="sourceLineNo">077</span> * &lt;p&gt;<a name="line.77"></a>
+<span class="sourceLineNo">078</span> * An additional "add-json-properties" mode is also provided to prevent loss of JSON data types...<a name="line.78"></a>
+<span class="sourceLineNo">079</span> * &lt;p class='bcode'&gt;<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *       &lt;xt&gt;&amp;lt;name&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;John Smith&lt;xt&gt;&amp;lt;/name&amp;gt;&lt;/xt&gt;<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *       &lt;xt&gt;&amp;lt;address&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'object'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *          &lt;xt&gt;&amp;lt;streetAddress&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;21 2nd Street&lt;xt&gt;&amp;lt;/streetAddress&amp;gt;&lt;/xt&gt;<a name="line.82"></a>
+<span class="sourceLineNo">083</span> *          &lt;xt&gt;&amp;lt;city&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;New York&lt;xt&gt;&amp;lt;/city&amp;gt;&lt;/xt&gt;<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *          &lt;xt&gt;&amp;lt;state&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;NY&lt;xt&gt;&amp;lt;/state&amp;gt;&lt;/xt&gt;<a name="line.84"></a>
+<span class="sourceLineNo">085</span> *          &lt;xt&gt;&amp;lt;postalCode&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;10021&lt;xt&gt;&amp;lt;/postalCode&amp;gt;&lt;/xt&gt;<a name="line.85"></a>
+<span class="sourceLineNo">086</span> *       &lt;xt&gt;&amp;lt;/address&amp;gt;&lt;/xt&gt;<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *       &lt;xt&gt;&amp;lt;phoneNumbers&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'array'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;<a name="line.87"></a>
+<span class="sourceLineNo">088</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-1111&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.88"></a>
+<span class="sourceLineNo">089</span> *          &lt;xt&gt;&amp;lt;string&amp;gt;&lt;/xt&gt;212 555-2222&lt;xt&gt;&amp;lt;/string&amp;gt;&lt;/xt&gt;<a name="line.89"></a>
+<span class="sourceLineNo">090</span> *       &lt;xt&gt;&amp;lt;/phoneNumbers&amp;gt;&lt;/xt&gt;<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *       &lt;xt&gt;&amp;lt;additionalInfo&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'null'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&amp;lt;/additionalInfo&amp;gt;&lt;/xt&gt;<a name="line.91"></a>
+<span class="sourceLineNo">092</span> *       &lt;xt&gt;&amp;lt;remote&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'boolean'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;false&lt;xt&gt;&amp;lt;/remote&amp;gt;&lt;/xt&gt;<a name="line.92"></a>
+<span class="sourceLineNo">093</span> *       &lt;xt&gt;&amp;lt;height&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'number'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt;62.4&lt;xt&gt;&amp;lt;/height&amp;gt;&lt;/xt&gt;<a name="line.93"></a>
+<span class="sourceLineNo">094</span> *       &lt;xt&gt;&amp;lt;fico_x0020_score&lt;/xt&gt; &lt;xa&gt;_type&lt;/xa&gt;=&lt;xs&gt;'string'&lt;/xs&gt;&lt;xt&gt;&amp;gt;&lt;/xt&gt; &amp;amp;gt; 640&lt;xt&gt;&amp;lt;/fico_x0020_score&amp;gt;&lt;/xt&gt;<a name="line.94"></a>
+<span class="sourceLineNo">095</span> *    &lt;xt&gt;&amp;lt;/object&amp;gt;&lt;/xt&gt;<a name="line.95"></a>
+<span class="sourceLineNo">096</span> * &lt;/p&gt;<a name="line.96"></a>
+<span class="sourceLineNo">097</span> *<a name="line.97"></a>
+<span class="sourceLineNo">098</span> * &lt;p&gt;<a name="line.98"></a>
+<span class="sourceLineNo">099</span> * This serializer provides several serialization options.<a name="line.99"></a>
+<span class="sourceLineNo">100</span> * Typically, one of the predefined &lt;jsf&gt;DEFAULT&lt;/jsf&gt; serializers will be sufficient.<a name="line.100"></a>
+<span class="sourceLineNo">101</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.101"></a>
+<span class="sourceLineNo">102</span> *<a name="line.102"></a>
+<span class="sourceLineNo">103</span> * &lt;p&gt;<a name="line.103"></a>
+<span class="sourceLineNo">104</span> * If an attribute name contains any non-valid XML element characters, they will be escaped using standard<a name="line.104"></a>
+<span class="sourceLineNo">105</span> * {@code _x####_} notation.<a name="line.105"></a>
+<span class="sourceLineNo">106</span> *<a name="line.106"></a>
+<span class="sourceLineNo">107</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.107"></a>
+<span class="sourceLineNo">108</span> *<a name="line.108"></a>
+<span class="sourceLineNo">109</span> * This class has the following properties associated with it:<a name="line.109"></a>
+<span class="sourceLineNo">110</span> * &lt;ul&gt;<a name="line.110"></a>
+<span class="sourceLineNo">111</span> *    &lt;li&gt;{@link XmlSerializerContext}<a name="line.111"></a>
+<span class="sourceLineNo">112</span> *    &lt;li&gt;{@link BeanContext}<a name="line.112"></a>
+<span class="sourceLineNo">113</span> * &lt;/ul&gt;<a name="line.113"></a>
+<span class="sourceLineNo">114</span> *<a name="line.114"></a>
+<span class="sourceLineNo">115</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.115"></a>
+<span class="sourceLineNo">116</span> *<a name="line.116"></a>
+<span class="sourceLineNo">117</span> * The following direct subclasses are provided for convenience:<a name="line.117"></a>
+<span class="sourceLineNo">118</span> * &lt;ul&gt;<a name="line.118"></a>
+<span class="sourceLineNo">119</span> *    &lt;li&gt;{@link Sq} - Default serializer, single quotes.<a name="line.119"></a>
+<span class="sourceLineNo">120</span> *    &lt;li&gt;{@link SqReadable} - Default serializer, single quotes, whitespace added.<a name="line.120"></a>
+<span class="sourceLineNo">121</span> * &lt;/ul&gt;<a name="line.121"></a>
+<span class="sourceLineNo">122</span> */<a name="line.122"></a>
+<span class="sourceLineNo">123</span>public class XmlSerializer extends WriterSerializer {<a name="line.123"></a>
+<span class="sourceLineNo">124</span><a name="line.124"></a>
+<span class="sourceLineNo">125</span>   /** Default serializer without namespaces. */<a name="line.125"></a>
+<span class="sourceLineNo">126</span>   public static final XmlSerializer DEFAULT = new XmlSerializer(PropertyStore.create());<a name="line.126"></a>
+<span class="sourceLineNo">127</span><a name="line.127"></a>
+<span class="sourceLineNo">128</span>   /** Default serializer without namespaces, with single quotes. */<a name="line.128"></a>
+<span class="sourceLineNo">129</span>   public static final XmlSerializer DEFAULT_SQ = new Sq(PropertyStore.create());<a name="line.129"></a>
+<span class="sourceLineNo">130</span><a name="line.130"></a>
+<span class="sourceLineNo">131</span>   /** Default serializer without namespaces, with single quotes, whitespace added. */<a name="line.131"></a>
+<span class="sourceLineNo">132</span>   public static final XmlSerializer DEFAULT_SQ_READABLE = new SqReadable(PropertyStore.create());<a name="line.132"></a>
+<span class="sourceLineNo">133</span><a name="line.133"></a>
+<span class="sourceLineNo">134</span>   /** Default serializer, all default settings. */<a name="line.134"></a>
+<span class="sourceLineNo">135</span>   public static final XmlSerializer DEFAULT_NS = new Ns(PropertyStore.create());<a name="line.135"></a>
+<span class="sourceLineNo">136</span><a name="line.136"></a>
+<span class="sourceLineNo">137</span>   /** Default serializer, single quotes. */<a name="line.137"></a>
+<span class="sourceLineNo">138</span>   public static final XmlSerializer DEFAULT_NS_SQ = new NsSq(PropertyStore.create());<a name="line.138"></a>
+<span class="sourceLineNo">139</span><a name="line.139"></a>
+<span class="sourceLineNo">140</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.140"></a>
+<span class="sourceLineNo">141</span>   public static final XmlSerializer DEFAULT_NS_SQ_READABLE = new NsSqReadable(PropertyStore.create());<a name="line.141"></a>
+<span class="sourceLineNo">142</span><a name="line.142"></a>
+<span class="sourceLineNo">143</span><a name="line.143"></a>
+<span class="sourceLineNo">144</span>   /** Default serializer, single quotes. */<a name="line.144"></a>
+<span class="sourceLineNo">145</span>   public static class Sq extends XmlSerializer {<a name="line.145"></a>
+<span class="sourceLineNo">146</span><a name="line.146"></a>
+<span class="sourceLineNo">147</span>      /**<a name="line.147"></a>
+<span class="sourceLineNo">148</span>       * Constructor.<a name="line.148"></a>
+<span class="sourceLineNo">149</span>       *<a name="line.149"></a>
+<span class="sourceLineNo">150</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.150"></a>
+<span class="sourceLineNo">151</span>       */<a name="line.151"></a>
+<span class="sourceLineNo">152</span>      public Sq(PropertyStore propertyStore) {<a name="line.152"></a>
+<span class="sourceLineNo">153</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\''));<a name="line.153"></a>
+<span class="sourceLineNo">154</span>      }<a name="line.154"></a>
+<span class="sourceLineNo">155</span>   }<a name="line.155"></a>
+<span class="sourceLineNo">156</span><a name="line.156"></a>
+<span class="sourceLineNo">157</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.157"></a>
+<span class="sourceLineNo">158</span>   public static class SqReadable extends XmlSerializer {<a name="line.158"></a>
+<span class="sourceLineNo">159</span><a name="line.159"></a>
+<span class="sourceLineNo">160</span>      /**<a name="line.160"></a>
+<span class="sourceLineNo">161</span>       * Constructor.<a name="line.161"></a>
+<span class="sourceLineNo">162</span>       *<a name="line.162"></a>
+<span class="sourceLineNo">163</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.163"></a>
+<span class="sourceLineNo">164</span>       */<a name="line.164"></a>
+<span class="sourceLineNo">165</span>      public SqReadable(PropertyStore propertyStore) {<a name="line.165"></a>
+<span class="sourceLineNo">166</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\'').append(SERIALIZER_useWhitespace, true));<a name="line.166"></a>
+<span class="sourceLineNo">167</span>      }<a name="line.167"></a>
+<span class="sourceLineNo">168</span>   }<a name="line.168"></a>
+<span class="sourceLineNo">169</span><a name="line.169"></a>
+<span class="sourceLineNo">170</span>   /** Default serializer without namespaces. */<a name="line.170"></a>
+<span class="sourceLineNo">171</span>   public static class Ns extends XmlSerializer {<a name="line.171"></a>
+<span class="sourceLineNo">172</span><a name="line.172"></a>
+<span class="sourceLineNo">173</span>      /**<a name="line.173"></a>
+<span class="sourceLineNo">174</span>       * Constructor.<a name="line.174"></a>
+<span class="sourceLineNo">175</span>       *<a name="line.175"></a>
+<span class="sourceLineNo">176</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.176"></a>
+<span class="sourceLineNo">177</span>       */<a name="line.177"></a>
+<span class="sourceLineNo">178</span>      public Ns(PropertyStore propertyStore) {<a name="line.178"></a>
+<span class="sourceLineNo">179</span>         super(propertyStore.copy().append(XML_enableNamespaces, true), "text/xml", "text/xml+simple");<a name="line.179"></a>
+<span class="sourceLineNo">180</span>      }<a name="line.180"></a>
+<span class="sourceLineNo">181</span>   }<a name="line.181"></a>
+<span class="sourceLineNo">182</span><a name="line.182"></a>
+<span class="sourceLineNo">183</span>   /** Default serializer without namespaces, single quotes. */<a name="line.183"></a>
+<span class="sourceLineNo">184</span>   public static class NsSq extends XmlSerializer {<a name="line.184"></a>
 <span class="sourceLineNo">185</span><a name="line.185"></a>
-<span class="sourceLineNo">186</span>   /** Default serializer without namespaces, single quotes. */<a name="line.186"></a>
-<span class="sourceLineNo">187</span>   public static class NsSq extends XmlSerializer {<a name="line.187"></a>
-<span class="sourceLineNo">188</span><a name="line.188"></a>
-<span class="sourceLineNo">189</span>      /**<a name="line.189"></a>
-<span class="sourceLineNo">190</span>       * Constructor.<a name="line.190"></a>
-<span class="sourceLineNo">191</span>       *<a name="line.191"></a>
-<span class="sourceLineNo">192</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.192"></a>
-<span class="sourceLineNo">193</span>       */<a name="line.193"></a>
-<span class="sourceLineNo">194</span>      public NsSq(PropertyStore propertyStore) {<a name="line.194"></a>
-<span class="sourceLineNo">195</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\''));<a name="line.195"></a>
-<span class="sourceLineNo">196</span>      }<a name="line.196"></a>
-<span class="sourceLineNo">197</span>   }<a name="line.197"></a>
+<span class="sourceLineNo">186</span>      /**<a name="line.186"></a>
+<span class="sourceLineNo">187</span>       * Constructor.<a name="line.187"></a>
+<span class="sourceLineNo">188</span>       *<a name="line.188"></a>
+<span class="sourceLineNo">189</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.189"></a>
+<span class="sourceLineNo">190</span>       */<a name="line.190"></a>
+<span class="sourceLineNo">191</span>      public NsSq(PropertyStore propertyStore) {<a name="line.191"></a>
+<span class="sourceLineNo">192</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\''));<a name="line.192"></a>
+<span class="sourceLineNo">193</span>      }<a name="line.193"></a>
+<span class="sourceLineNo">194</span>   }<a name="line.194"></a>
+<span class="sourceLineNo">195</span><a name="line.195"></a>
+<span class="sourceLineNo">196</span>   /** Default serializer without namespaces, single quotes, with whitespace. */<a name="line.196"></a>
+<span class="sourceLineNo">197</span>   public static class NsSqReadable extends XmlSerializer {<a name="line.197"></a>
 <span class="sourceLineNo">198</span><a name="line.198"></a>
-<span class="sourceLineNo">199</span>   /** Default serializer without namespaces, single quotes, with whitespace. */<a name="line.199"></a>
-<span class="sourceLineNo">200</span>   public static class NsSqReadable extends XmlSerializer {<a name="line.200"></a>
-<span class="sourceLineNo">201</span><a name="line.201"></a>
-<span class="sourceLineNo">202</span>      /**<a name="line.202"></a>
-<span class="sourceLineNo">203</span>       * Constructor.<a name="line.203"></a>
-<span class="sourceLineNo">204</span>       *<a name="line.204"></a>
-<span class="sourceLineNo">205</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.205"></a>
-<span class="sourceLineNo">206</span>       */<a name="line.206"></a>
-<span class="sourceLineNo">207</span>      public NsSqReadable(PropertyStore propertyStore) {<a name="line.207"></a>
-<span class="sourceLineNo">208</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\'')<a name="line.208"></a>
-<span class="sourceLineNo">209</span>            .append(SERIALIZER_useWhitespace, true));<a name="line.209"></a>
-<span class="sourceLineNo">210</span>      }<a name="line.210"></a>
-<span class="sourceLineNo">211</span>   }<a name="line.211"></a>
-<span class="sourceLineNo">212</span><a name="line.212"></a>
+<span class="sourceLineNo">199</span>      /**<a name="line.199"></a>
+<span class="sourceLineNo">200</span>       * Constructor.<a name="line.200"></a>
+<span class="sourceLineNo">201</span>       *<a name="line.201"></a>
+<span class="sourceLineNo">202</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.202"></a>
+<span class="sourceLineNo">203</span>       */<a name="line.203"></a>
+<span class="sourceLineNo">204</span>      public NsSqReadable(PropertyStore propertyStore) {<a name="line.204"></a>
+<span class="sourceLineNo">205</span>         super(propertyStore.copy().append(XML_enableNamespaces, true).append(SERIALIZER_quoteChar, '\'')<a name="line.205"></a>
+<span class="sourceLineNo">206</span>            .append(SERIALIZER_useWhitespace, true));<a name="line.206"></a>
+<span class="sourceLineNo">207</span>      }<a name="line.207"></a>
+<span class="sourceLineNo">208</span>   }<a name="line.208"></a>
+<span class="sourceLineNo">209</span><a name="line.209"></a>
+<span class="sourceLineNo">210</span><a name="line.210"></a>
+<span class="sourceLineNo">211</span>   final XmlSerializerContext ctx;<a name="line.211"></a>
+<span class="sourceLineNo">212</span>   private volatile XmlSchemaSerializer schemaSerializer;<a name="line.212"></a>
 <span class="sourceLineNo">213</span><a name="line.213"></a>
-<span class="sourceLineNo">214</span>   final XmlSerializerContext ctx;<a name="line.214"></a>
-<span class="sourceLineNo">215</span>   private volatile XmlSchemaSerializer schemaSerializer;<a name="line.215"></a>
-<span class="sourceLineNo">216</span><a name="line.216"></a>
-<span class="sourceLineNo">217</span>   /**<a name="line.217"></a>
-<span class="sourceLineNo">218</span>    * Constructor.<a name="line.218"></a>
-<span class="sourceLineNo">219</span>    *<a name="line.219"></a>
-<span class="sourceLineNo">220</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.220"></a>
-<span class="sourceLineNo">221</span>    */<a name="line.221"></a>
-<span class="sourceLineNo">222</span>   public XmlSerializer(PropertyStore propertyStore) {<a name="line.222"></a>
-<span class="sourceLineNo">223</span>      super(propertyStore);<a name="line.223"></a>
-<span class="sourceLineNo">224</span>      this.ctx = createContext(XmlSerializerContext.class);<a name="line.224"></a>
-<span class="sourceLineNo">225</span>   }<a name="line.225"></a>
-<span class="sourceLineNo">226</span><a name="line.226"></a>
-<span class="sourceLineNo">227</span>   @Override /* CoreObject */<a name="line.227"></a>
-<span class="sourceLineNo">228</span>   public XmlSerializerBuilder builder() {<a name="line.228"></a>
-<span class="sourceLineNo">229</span>      return new XmlSerializerBuilder(propertyStore);<a name="line.229"></a>
-<span class="sourceLineNo">230</span>   }<a name="line.230"></a>
-<span class="sourceLineNo">231</span><a name="line.231"></a>
-<span class="sourceLineNo">232</span><a name="line.232"></a>
-<span class="sourceLineNo">233</span>   /**<a name="line.233"></a>
-<span class="sourceLineNo">234</span>    * Returns the schema serializer based on the settings of this serializer.<a name="line.234"></a>
-<span class="sourceLineNo">235</span>    * @return The schema serializer.<a name="line.235"></a>
-<span class="sourceLineNo">236</span>    */<a name="line.236"></a>
-<span class="sourceLineNo">237</span>   public XmlSerializer getSchemaSerializer() {<a name="line.237"></a>
-<span class="sourceLineNo">238</span>      if (schemaSerializer == null)<a name="line.238"></a>
-<span class="sourceLineNo">239</span>         schemaSerializer = new XmlSchemaSerializer(propertyStore);<a name="line.239"></a>
-<span class="sourceLineNo">240</span>      return schemaSerializer;<a name="line.240"></a>
-<span class="sourceLineNo">241</span>   }<a name="line.241"></a>
-<span class="sourceLineNo">242</span><a name="line.242"></a>
-<span class="sourceLineNo">243</span>   @Override /* Serializer */<a name="line.243"></a>
-<span class="sourceLineNo">244</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.244"></a>
-<span class="sourceLineNo">245</span>      return new XmlSerializerSession(ctx, args);<a name="line.245"></a>
-<span class="sourceLineNo">246</span>   }<a name="line.246"></a>
-<span class="sourceLineNo">247</span>}<a name="line.247"></a>
+<span class="sourceLineNo">214</span>   /**<a name="line.214"></a>
+<span class="sourceLineNo">215</span>    * Constructor.<a name="line.215"></a>
+<span class="sourceLineNo">216</span>    *<a name="line.216"></a>
+<span class="sourceLineNo">217</span>    * @param propertyStore<a name="line.217"></a>
+<span class="sourceLineNo">218</span>    *    The property store containing all the settings for this object.<a name="line.218"></a>
+<span class="sourceLineNo">219</span>    */<a name="line.219"></a>
+<span class="sourceLineNo">220</span>   public XmlSerializer(PropertyStore propertyStore) {<a name="line.220"></a>
+<span class="sourceLineNo">221</span>      this(propertyStore, "text/xml");<a name="line.221"></a>
+<span class="sourceLineNo">222</span>   }<a name="line.222"></a>
+<span class="sourceLineNo">223</span><a name="line.223"></a>
+<span class="sourceLineNo">224</span>   /**<a name="line.224"></a>
+<span class="sourceLineNo">225</span>    * Constructor.<a name="line.225"></a>
+<span class="sourceLineNo">226</span>    *<a name="line.226"></a>
+<span class="sourceLineNo">227</span>    * @param propertyStore<a name="line.227"></a>
+<span class="sourceLineNo">228</span>    *    The property store containing all the settings for this object.<a name="line.228"></a>
+<span class="sourceLineNo">229</span>    * @param produces<a name="line.229"></a>
+<span class="sourceLineNo">230</span>    *    The media type that this serializer produces.<a name="line.230"></a>
+<span class="sourceLineNo">231</span>    * @param accept<a name="line.231"></a>
+<span class="sourceLineNo">232</span>    *    The accept media types that the serializer can handle.<a name="line.232"></a>
+<span class="sourceLineNo">233</span>    *    &lt;p&gt;<a name="line.233"></a>
+<span class="sourceLineNo">234</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.234"></a>
+<span class="sourceLineNo">235</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.235"></a>
+<span class="sourceLineNo">236</span>    *    &lt;p&gt;<a name="line.236"></a>
+<span class="sourceLineNo">237</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.237"></a>
+<span class="sourceLineNo">238</span>    *    &lt;p&gt;<a name="line.238"></a>
+<span class="sourceLineNo">239</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.239"></a>
+<span class="sourceLineNo">240</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.240"></a>
+<span class="sourceLineNo">241</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.241"></a>
+<span class="sourceLineNo">242</span>    *    &lt;br&gt;...or...<a name="line.242"></a>
+<span class="sourceLineNo">243</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.243"></a>
+<span class="sourceLineNo">244</span>    */<a name="line.244"></a>
+<span class="sourceLineNo">245</span>   public XmlSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.245"></a>
+<span class="sourceLineNo">246</span>      super(propertyStore, produces, accept);<a name="line.246"></a>
+<span class="sourceLineNo">247</span>      this.ctx = createContext(XmlSerializerContext.class);<a name="line.247"></a>
+<span class="sourceLineNo">248</span>   }<a name="line.248"></a>
+<span class="sourceLineNo">249</span><a name="line.249"></a>
+<span class="sourceLineNo">250</span>   @Override /* CoreObject */<a name="line.250"></a>
+<span class="sourceLineNo">251</span>   public XmlSerializerBuilder builder() {<a name="line.251"></a>
+<span class="sourceLineNo">252</span>      return new XmlSerializerBuilder(propertyStore);<a name="line.252"></a>
+<span class="sourceLineNo">253</span>   }<a name="line.253"></a>
+<span class="sourceLineNo">254</span><a name="line.254"></a>
+<span class="sourceLineNo">255</span><a name="line.255"></a>
+<span class="sourceLineNo">256</span>   /**<a name="line.256"></a>
+<span class="sourceLineNo">257</span>    * Returns the schema serializer based on the settings of this serializer.<a name="line.257"></a>
+<span class="sourceLineNo">258</span>    * @return The schema serializer.<a name="line.258"></a>
+<span class="sourceLineNo">259</span>    */<a name="line.259"></a>
+<span class="sourceLineNo">260</span>   public XmlSerializer getSchemaSerializer() {<a name="line.260"></a>
+<span class="sourceLineNo">261</span>      if (schemaSerializer == null)<a name="line.261"></a>
+<span class="sourceLineNo">262</span>         schemaSerializer = new XmlSchemaSerializer(propertyStore);<a name="line.262"></a>
+<span class="sourceLineNo">263</span>      return schemaSerializer;<a name="line.263"></a>
+<span class="sourceLineNo">264</span>   }<a name="line.264"></a>
+<span class="sourceLineNo">265</span><a name="line.265"></a>
+<span class="sourceLineNo">266</span>   @Override /* Serializer */<a name="line.266"></a>
+<span class="sourceLineNo">267</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.267"></a>
+<span class="sourceLineNo">268</span>      return new XmlSerializerSession(ctx, args);<a name="line.268"></a>
+<span class="sourceLineNo">269</span>   }<a name="line.269"></a>
+<span class="sourceLineNo">270</span>}<a name="line.270"></a>
 
 
 


[38/51] [partial] incubator-juneau-website git commit: Update javadocs.

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/2ead32d5/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSerializer.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSerializer.html b/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSerializer.html
index 6e7a7d3..9c1add4 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSerializer.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/html/HtmlSerializer.html
@@ -25,193 +25,217 @@
 <span class="sourceLineNo">017</span>import java.util.*;<a name="line.17"></a>
 <span class="sourceLineNo">018</span><a name="line.18"></a>
 <span class="sourceLineNo">019</span>import org.apache.juneau.*;<a name="line.19"></a>
-<span class="sourceLineNo">020</span>import org.apache.juneau.annotation.*;<a name="line.20"></a>
-<span class="sourceLineNo">021</span>import org.apache.juneau.serializer.*;<a name="line.21"></a>
-<span class="sourceLineNo">022</span>import org.apache.juneau.xml.*;<a name="line.22"></a>
-<span class="sourceLineNo">023</span><a name="line.23"></a>
-<span class="sourceLineNo">024</span>/**<a name="line.24"></a>
-<span class="sourceLineNo">025</span> * Serializes POJO models to HTML.<a name="line.25"></a>
-<span class="sourceLineNo">026</span> *<a name="line.26"></a>
-<span class="sourceLineNo">027</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.27"></a>
-<span class="sourceLineNo">028</span> *<a name="line.28"></a>
-<span class="sourceLineNo">029</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/html&lt;/code&gt;<a name="line.29"></a>
-<span class="sourceLineNo">030</span> *<a name="line.30"></a>
-<span class="sourceLineNo">031</span> * &lt;p&gt;<a name="line.31"></a>
-<span class="sourceLineNo">032</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/html&lt;/code&gt;<a name="line.32"></a>
-<span class="sourceLineNo">033</span> *<a name="line.33"></a>
-<span class="sourceLineNo">034</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.34"></a>
-<span class="sourceLineNo">035</span> *<a name="line.35"></a>
-<span class="sourceLineNo">036</span> * The conversion is as follows...<a name="line.36"></a>
-<span class="sourceLineNo">037</span> * &lt;ul class='spaced-list'&gt;<a name="line.37"></a>
-<span class="sourceLineNo">038</span> *    &lt;li&gt;<a name="line.38"></a>
-<span class="sourceLineNo">039</span> *       {@link Map Maps} (e.g. {@link HashMap}, {@link TreeMap}) and beans are converted to HTML tables with<a name="line.39"></a>
-<span class="sourceLineNo">040</span> *       'key' and 'value' columns.<a name="line.40"></a>
-<span class="sourceLineNo">041</span> *    &lt;li&gt;<a name="line.41"></a>
-<span class="sourceLineNo">042</span> *       {@link Collection Collections} (e.g. {@link HashSet}, {@link LinkedList}) and Java arrays are converted<a name="line.42"></a>
-<span class="sourceLineNo">043</span> *       to HTML ordered lists.<a name="line.43"></a>
-<span class="sourceLineNo">044</span> *    &lt;li&gt;<a name="line.44"></a>
-<span class="sourceLineNo">045</span> *       {@code Collections} of {@code Maps} and beans are converted to HTML tables with keys as headers.<a name="line.45"></a>
-<span class="sourceLineNo">046</span> *    &lt;li&gt;<a name="line.46"></a>
-<span class="sourceLineNo">047</span> *       Everything else is converted to text.<a name="line.47"></a>
-<span class="sourceLineNo">048</span> * &lt;/ul&gt;<a name="line.48"></a>
-<span class="sourceLineNo">049</span> *<a name="line.49"></a>
-<span class="sourceLineNo">050</span> * &lt;p&gt;<a name="line.50"></a>
-<span class="sourceLineNo">051</span> * This serializer provides several serialization options.  Typically, one of the predefined &lt;jsf&gt;DEFAULT&lt;/jsf&gt;<a name="line.51"></a>
-<span class="sourceLineNo">052</span> * serializers will be sufficient.<a name="line.52"></a>
-<span class="sourceLineNo">053</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.53"></a>
-<span class="sourceLineNo">054</span> *<a name="line.54"></a>
-<span class="sourceLineNo">055</span> * &lt;p&gt;<a name="line.55"></a>
-<span class="sourceLineNo">056</span> * The {@link HtmlLink} annotation can be used on beans to add hyperlinks to the output.<a name="line.56"></a>
-<span class="sourceLineNo">057</span> *<a name="line.57"></a>
-<span class="sourceLineNo">058</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.58"></a>
-<span class="sourceLineNo">059</span> *<a name="line.59"></a>
-<span class="sourceLineNo">060</span> * This class has the following properties associated with it:<a name="line.60"></a>
-<span class="sourceLineNo">061</span> * &lt;ul class='spaced-list'&gt;<a name="line.61"></a>
-<span class="sourceLineNo">062</span> *    &lt;li&gt;<a name="line.62"></a>
-<span class="sourceLineNo">063</span> *       {@link HtmlSerializerContext}<a name="line.63"></a>
-<span class="sourceLineNo">064</span> * &lt;/ul&gt;<a name="line.64"></a>
-<span class="sourceLineNo">065</span> *<a name="line.65"></a>
-<span class="sourceLineNo">066</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.66"></a>
-<span class="sourceLineNo">067</span> *<a name="line.67"></a>
-<span class="sourceLineNo">068</span> * The following direct subclasses are provided for convenience:<a name="line.68"></a>
-<span class="sourceLineNo">069</span> * &lt;ul class='spaced-list'&gt;<a name="line.69"></a>
-<span class="sourceLineNo">070</span> *    &lt;li&gt;<a name="line.70"></a>
-<span class="sourceLineNo">071</span> *       {@link Sq} - Default serializer, single quotes.<a name="line.71"></a>
-<span class="sourceLineNo">072</span> *    &lt;li&gt;<a name="line.72"></a>
-<span class="sourceLineNo">073</span> *       {@link SqReadable} - Default serializer, single quotes, whitespace added.<a name="line.73"></a>
-<span class="sourceLineNo">074</span> * &lt;/ul&gt;<a name="line.74"></a>
-<span class="sourceLineNo">075</span> *<a name="line.75"></a>
-<span class="sourceLineNo">076</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.76"></a>
-<span class="sourceLineNo">077</span> * &lt;p class='bcode'&gt;<a name="line.77"></a>
-<span class="sourceLineNo">078</span> *    &lt;jc&gt;// Use one of the default serializers to serialize a POJO&lt;/jc&gt;<a name="line.78"></a>
-<span class="sourceLineNo">079</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(someObject);<a name="line.79"></a>
-<span class="sourceLineNo">080</span> *<a name="line.80"></a>
-<span class="sourceLineNo">081</span> *       &lt;jc&gt;// Create a custom serializer that doesn't use whitespace and newlines&lt;/jc&gt;<a name="line.81"></a>
-<span class="sourceLineNo">082</span> *       HtmlSerializer serializer = &lt;jk&gt;new&lt;/jk&gt; HtmlSerializerBuider().ws().build();<a name="line.82"></a>
-<span class="sourceLineNo">083</span> *<a name="line.83"></a>
-<span class="sourceLineNo">084</span> *       &lt;jc&gt;// Same as above, except uses cloning&lt;/jc&gt;<a name="line.84"></a>
-<span class="sourceLineNo">085</span> *       HtmlSerializer serializer = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.builder().ws().build();<a name="line.85"></a>
-<span class="sourceLineNo">086</span> *<a name="line.86"></a>
-<span class="sourceLineNo">087</span> *       &lt;jc&gt;// Serialize POJOs to HTML&lt;/jc&gt;<a name="line.87"></a>
-<span class="sourceLineNo">088</span> *<a name="line.88"></a>
-<span class="sourceLineNo">089</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.89"></a>
-<span class="sourceLineNo">090</span> *       &lt;jc&gt;// &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;1&amp;lt;li&amp;gt;2&amp;lt;li&amp;gt;3&amp;lt;/ul&amp;gt;&lt;/jc&gt;<a name="line.90"></a>
-<span class="sourceLineNo">091</span> *       List l = new ObjectList(1, 2, 3);<a name="line.91"></a>
-<span class="sourceLineNo">092</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(l);<a name="line.92"></a>
-<span class="sourceLineNo">093</span> *<a name="line.93"></a>
-<span class="sourceLineNo">094</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.94"></a>
-<span class="sourceLineNo">095</span> *       &lt;jc&gt;//    &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.95"></a>
-<span class="sourceLineNo">096</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;firstName&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;lastName&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.96"></a>
-<span class="sourceLineNo">097</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Bob&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Costas&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.97"></a>
-<span class="sourceLineNo">098</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Billy&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;TheKid&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.98"></a>
-<span class="sourceLineNo">099</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Barney&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Miller&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.99"></a>
-<span class="sourceLineNo">100</span> *       &lt;jc&gt;//    &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.100"></a>
-<span class="sourceLineNo">101</span> *       l = &lt;jk&gt;new&lt;/jk&gt; ObjectList();<a name="line.101"></a>
-<span class="sourceLineNo">102</span> *       l.add(&lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{firstName:'Bob',lastName:'Costas'}"&lt;/js&gt;));<a name="line.102"></a>
-<span class="sourceLineNo">103</span> *       l.add(&lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{firstName:'Billy',lastName:'TheKid'}"&lt;/js&gt;));<a name="line.103"></a>
-<span class="sourceLineNo">104</span> *       l.add(&lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{firstName:'Barney',lastName:'Miller'}"&lt;/js&gt;));<a name="line.104"></a>
-<span class="sourceLineNo">105</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(l);<a name="line.105"></a>
-<span class="sourceLineNo">106</span> *<a name="line.106"></a>
-<span class="sourceLineNo">107</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.107"></a>
-<span class="sourceLineNo">108</span> *       &lt;jc&gt;//    &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.108"></a>
-<span class="sourceLineNo">109</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;key&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;value&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.109"></a>
-<span class="sourceLineNo">110</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;foo&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;bar&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.110"></a>
-<span class="sourceLineNo">111</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;baz&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;123&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.111"></a>
-<span class="sourceLineNo">112</span> *       &lt;jc&gt;//    &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.112"></a>
-<span class="sourceLineNo">113</span> *       Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{foo:'bar',baz:123}"&lt;/js&gt;);<a name="line.113"></a>
-<span class="sourceLineNo">114</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(m);<a name="line.114"></a>
-<span class="sourceLineNo">115</span> *<a name="line.115"></a>
-<span class="sourceLineNo">116</span> *       &lt;jc&gt;// HTML elements can be nested arbitrarily deep&lt;/jc&gt;<a name="line.116"></a>
-<span class="sourceLineNo">117</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.117"></a>
-<span class="sourceLineNo">118</span> *       &lt;jc&gt;//   &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.118"></a>
-<span class="sourceLineNo">119</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;key&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;value&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.119"></a>
-<span class="sourceLineNo">120</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;foo&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;bar&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.120"></a>
-<span class="sourceLineNo">121</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;baz&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;123&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.121"></a>
-<span class="sourceLineNo">122</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;someNumbers&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;1&amp;lt;li&amp;gt;2&amp;lt;li&amp;gt;3&amp;lt;/ul&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.122"></a>
-<span class="sourceLineNo">123</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;someSubMap&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; &lt;/jc&gt;<a name="line.123"></a>
-<span class="sourceLineNo">124</span> *       &lt;jc&gt;//         &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.124"></a>
-<span class="sourceLineNo">125</span> *       &lt;jc&gt;//            &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;key&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;value&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.125"></a>
-<span class="sourceLineNo">126</span> *       &lt;jc&gt;//            &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;a&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;b&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.126"></a>
-<span class="sourceLineNo">127</span> *       &lt;jc&gt;//         &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.127"></a>
-<span class="sourceLineNo">128</span> *       &lt;jc&gt;//      &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.128"></a>
-<span class="sourceLineNo">129</span> *       &lt;jc&gt;//   &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.129"></a>
-<span class="sourceLineNo">130</span> *       Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{foo:'bar',baz:123}"&lt;/js&gt;);<a name="line.130"></a>
-<span class="sourceLineNo">131</span> *       m.put("someNumbers", new ObjectList(1, 2, 3));<a name="line.131"></a>
-<span class="sourceLineNo">132</span> *       m.put(&lt;js&gt;"someSubMap"&lt;/js&gt;, new ObjectMap(&lt;js&gt;"{a:'b'}"&lt;/js&gt;));<a name="line.132"></a>
-<span class="sourceLineNo">133</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(m);<a name="line.133"></a>
-<span class="sourceLineNo">134</span> * &lt;/p&gt;<a name="line.134"></a>
-<span class="sourceLineNo">135</span> */<a name="line.135"></a>
-<span class="sourceLineNo">136</span>@Produces("text/html")<a name="line.136"></a>
-<span class="sourceLineNo">137</span>@SuppressWarnings("hiding")<a name="line.137"></a>
-<span class="sourceLineNo">138</span>public class HtmlSerializer extends XmlSerializer {<a name="line.138"></a>
-<span class="sourceLineNo">139</span><a name="line.139"></a>
-<span class="sourceLineNo">140</span>   /** Default serializer, all default settings. */<a name="line.140"></a>
-<span class="sourceLineNo">141</span>   public static final HtmlSerializer DEFAULT = new HtmlSerializer(PropertyStore.create());<a name="line.141"></a>
-<span class="sourceLineNo">142</span><a name="line.142"></a>
-<span class="sourceLineNo">143</span>   /** Default serializer, single quotes. */<a name="line.143"></a>
-<span class="sourceLineNo">144</span>   public static final HtmlSerializer DEFAULT_SQ = new HtmlSerializer.Sq(PropertyStore.create());<a name="line.144"></a>
-<span class="sourceLineNo">145</span><a name="line.145"></a>
-<span class="sourceLineNo">146</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.146"></a>
-<span class="sourceLineNo">147</span>   public static final HtmlSerializer DEFAULT_SQ_READABLE = new HtmlSerializer.SqReadable(PropertyStore.create());<a name="line.147"></a>
-<span class="sourceLineNo">148</span><a name="line.148"></a>
-<span class="sourceLineNo">149</span><a name="line.149"></a>
-<span class="sourceLineNo">150</span>   /** Default serializer, single quotes. */<a name="line.150"></a>
-<span class="sourceLineNo">151</span>   public static class Sq extends HtmlSerializer {<a name="line.151"></a>
-<span class="sourceLineNo">152</span><a name="line.152"></a>
-<span class="sourceLineNo">153</span>      /**<a name="line.153"></a>
-<span class="sourceLineNo">154</span>       * Constructor.<a name="line.154"></a>
-<span class="sourceLineNo">155</span>       *<a name="line.155"></a>
-<span class="sourceLineNo">156</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.156"></a>
-<span class="sourceLineNo">157</span>       */<a name="line.157"></a>
-<span class="sourceLineNo">158</span>      public Sq(PropertyStore propertyStore) {<a name="line.158"></a>
-<span class="sourceLineNo">159</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\''));<a name="line.159"></a>
-<span class="sourceLineNo">160</span>      }<a name="line.160"></a>
-<span class="sourceLineNo">161</span>   }<a name="line.161"></a>
-<span class="sourceLineNo">162</span><a name="line.162"></a>
-<span class="sourceLineNo">163</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.163"></a>
-<span class="sourceLineNo">164</span>   public static class SqReadable extends HtmlSerializer {<a name="line.164"></a>
-<span class="sourceLineNo">165</span><a name="line.165"></a>
-<span class="sourceLineNo">166</span>      /**<a name="line.166"></a>
-<span class="sourceLineNo">167</span>       * Constructor.<a name="line.167"></a>
-<span class="sourceLineNo">168</span>       *<a name="line.168"></a>
-<span class="sourceLineNo">169</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.169"></a>
-<span class="sourceLineNo">170</span>       */<a name="line.170"></a>
-<span class="sourceLineNo">171</span>      public SqReadable(PropertyStore propertyStore) {<a name="line.171"></a>
-<span class="sourceLineNo">172</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\'').append(SERIALIZER_useWhitespace, true));<a name="line.172"></a>
-<span class="sourceLineNo">173</span>      }<a name="line.173"></a>
-<span class="sourceLineNo">174</span>   }<a name="line.174"></a>
-<span class="sourceLineNo">175</span><a name="line.175"></a>
-<span class="sourceLineNo">176</span><a name="line.176"></a>
-<span class="sourceLineNo">177</span>   final HtmlSerializerContext ctx;<a name="line.177"></a>
-<span class="sourceLineNo">178</span>   private volatile HtmlSchemaDocSerializer schemaSerializer;<a name="line.178"></a>
-<span class="sourceLineNo">179</span><a name="line.179"></a>
-<span class="sourceLineNo">180</span>   /**<a name="line.180"></a>
-<span class="sourceLineNo">181</span>    * Constructor.<a name="line.181"></a>
-<span class="sourceLineNo">182</span>    *<a name="line.182"></a>
-<span class="sourceLineNo">183</span>    * @param propertyStore The property store containing all the settings for this object.<a name="line.183"></a>
-<span class="sourceLineNo">184</span>    */<a name="line.184"></a>
-<span class="sourceLineNo">185</span>   public HtmlSerializer(PropertyStore propertyStore) {<a name="line.185"></a>
-<span class="sourceLineNo">186</span>      super(propertyStore);<a name="line.186"></a>
-<span class="sourceLineNo">187</span>      this.ctx = createContext(HtmlSerializerContext.class);<a name="line.187"></a>
-<span class="sourceLineNo">188</span>   }<a name="line.188"></a>
-<span class="sourceLineNo">189</span><a name="line.189"></a>
-<span class="sourceLineNo">190</span>   @Override /* CoreObject */<a name="line.190"></a>
-<span class="sourceLineNo">191</span>   public HtmlSerializerBuilder builder() {<a name="line.191"></a>
-<span class="sourceLineNo">192</span>      return new HtmlSerializerBuilder(propertyStore);<a name="line.192"></a>
-<span class="sourceLineNo">193</span>   }<a name="line.193"></a>
-<span class="sourceLineNo">194</span><a name="line.194"></a>
-<span class="sourceLineNo">195</span>   @Override /* XmlSerializer */<a name="line.195"></a>
-<span class="sourceLineNo">196</span>   public HtmlSerializer getSchemaSerializer() {<a name="line.196"></a>
-<span class="sourceLineNo">197</span>      if (schemaSerializer == null)<a name="line.197"></a>
-<span class="sourceLineNo">198</span>         schemaSerializer = new HtmlSchemaDocSerializer(propertyStore);<a name="line.198"></a>
-<span class="sourceLineNo">199</span>      return schemaSerializer;<a name="line.199"></a>
-<span class="sourceLineNo">200</span>   }<a name="line.200"></a>
-<span class="sourceLineNo">201</span><a name="line.201"></a>
-<span class="sourceLineNo">202</span>   @Override /* Serializer */<a name="line.202"></a>
-<span class="sourceLineNo">203</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.203"></a>
-<span class="sourceLineNo">204</span>      return new HtmlSerializerSession(ctx, args);<a name="line.204"></a>
-<span class="sourceLineNo">205</span>   }<a name="line.205"></a>
-<span class="sourceLineNo">206</span>}<a name="line.206"></a>
+<span class="sourceLineNo">020</span>import org.apache.juneau.serializer.*;<a name="line.20"></a>
+<span class="sourceLineNo">021</span>import org.apache.juneau.xml.*;<a name="line.21"></a>
+<span class="sourceLineNo">022</span><a name="line.22"></a>
+<span class="sourceLineNo">023</span>/**<a name="line.23"></a>
+<span class="sourceLineNo">024</span> * Serializes POJO models to HTML.<a name="line.24"></a>
+<span class="sourceLineNo">025</span> *<a name="line.25"></a>
+<span class="sourceLineNo">026</span> * &lt;h5 class='section'&gt;Media types:&lt;/h5&gt;<a name="line.26"></a>
+<span class="sourceLineNo">027</span> *<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * Handles &lt;code&gt;Accept&lt;/code&gt; types: &lt;code&gt;text/html&lt;/code&gt;<a name="line.28"></a>
+<span class="sourceLineNo">029</span> *<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * &lt;p&gt;<a name="line.30"></a>
+<span class="sourceLineNo">031</span> * Produces &lt;code&gt;Content-Type&lt;/code&gt; types: &lt;code&gt;text/html&lt;/code&gt;<a name="line.31"></a>
+<span class="sourceLineNo">032</span> *<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * &lt;h5 class='section'&gt;Description:&lt;/h5&gt;<a name="line.33"></a>
+<span class="sourceLineNo">034</span> *<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * The conversion is as follows...<a name="line.35"></a>
+<span class="sourceLineNo">036</span> * &lt;ul class='spaced-list'&gt;<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    &lt;li&gt;<a name="line.37"></a>
+<span class="sourceLineNo">038</span> *       {@link Map Maps} (e.g. {@link HashMap}, {@link TreeMap}) and beans are converted to HTML tables with<a name="line.38"></a>
+<span class="sourceLineNo">039</span> *       'key' and 'value' columns.<a name="line.39"></a>
+<span class="sourceLineNo">040</span> *    &lt;li&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span> *       {@link Collection Collections} (e.g. {@link HashSet}, {@link LinkedList}) and Java arrays are converted<a name="line.41"></a>
+<span class="sourceLineNo">042</span> *       to HTML ordered lists.<a name="line.42"></a>
+<span class="sourceLineNo">043</span> *    &lt;li&gt;<a name="line.43"></a>
+<span class="sourceLineNo">044</span> *       {@code Collections} of {@code Maps} and beans are converted to HTML tables with keys as headers.<a name="line.44"></a>
+<span class="sourceLineNo">045</span> *    &lt;li&gt;<a name="line.45"></a>
+<span class="sourceLineNo">046</span> *       Everything else is converted to text.<a name="line.46"></a>
+<span class="sourceLineNo">047</span> * &lt;/ul&gt;<a name="line.47"></a>
+<span class="sourceLineNo">048</span> *<a name="line.48"></a>
+<span class="sourceLineNo">049</span> * &lt;p&gt;<a name="line.49"></a>
+<span class="sourceLineNo">050</span> * This serializer provides several serialization options.  Typically, one of the predefined &lt;jsf&gt;DEFAULT&lt;/jsf&gt;<a name="line.50"></a>
+<span class="sourceLineNo">051</span> * serializers will be sufficient.<a name="line.51"></a>
+<span class="sourceLineNo">052</span> * However, custom serializers can be constructed to fine-tune behavior.<a name="line.52"></a>
+<span class="sourceLineNo">053</span> *<a name="line.53"></a>
+<span class="sourceLineNo">054</span> * &lt;p&gt;<a name="line.54"></a>
+<span class="sourceLineNo">055</span> * The {@link HtmlLink} annotation can be used on beans to add hyperlinks to the output.<a name="line.55"></a>
+<span class="sourceLineNo">056</span> *<a name="line.56"></a>
+<span class="sourceLineNo">057</span> * &lt;h5 class='section'&gt;Configurable properties:&lt;/h5&gt;<a name="line.57"></a>
+<span class="sourceLineNo">058</span> *<a name="line.58"></a>
+<span class="sourceLineNo">059</span> * This class has the following properties associated with it:<a name="line.59"></a>
+<span class="sourceLineNo">060</span> * &lt;ul class='spaced-list'&gt;<a name="line.60"></a>
+<span class="sourceLineNo">061</span> *    &lt;li&gt;<a name="line.61"></a>
+<span class="sourceLineNo">062</span> *       {@link HtmlSerializerContext}<a name="line.62"></a>
+<span class="sourceLineNo">063</span> * &lt;/ul&gt;<a name="line.63"></a>
+<span class="sourceLineNo">064</span> *<a name="line.64"></a>
+<span class="sourceLineNo">065</span> * &lt;h6 class='topic'&gt;Behavior-specific subclasses&lt;/h6&gt;<a name="line.65"></a>
+<span class="sourceLineNo">066</span> *<a name="line.66"></a>
+<span class="sourceLineNo">067</span> * The following direct subclasses are provided for convenience:<a name="line.67"></a>
+<span class="sourceLineNo">068</span> * &lt;ul class='spaced-list'&gt;<a name="line.68"></a>
+<span class="sourceLineNo">069</span> *    &lt;li&gt;<a name="line.69"></a>
+<span class="sourceLineNo">070</span> *       {@link Sq} - Default serializer, single quotes.<a name="line.70"></a>
+<span class="sourceLineNo">071</span> *    &lt;li&gt;<a name="line.71"></a>
+<span class="sourceLineNo">072</span> *       {@link SqReadable} - Default serializer, single quotes, whitespace added.<a name="line.72"></a>
+<span class="sourceLineNo">073</span> * &lt;/ul&gt;<a name="line.73"></a>
+<span class="sourceLineNo">074</span> *<a name="line.74"></a>
+<span class="sourceLineNo">075</span> * &lt;h5 class='section'&gt;Example:&lt;/h5&gt;<a name="line.75"></a>
+<span class="sourceLineNo">076</span> * &lt;p class='bcode'&gt;<a name="line.76"></a>
+<span class="sourceLineNo">077</span> *    &lt;jc&gt;// Use one of the default serializers to serialize a POJO&lt;/jc&gt;<a name="line.77"></a>
+<span class="sourceLineNo">078</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(someObject);<a name="line.78"></a>
+<span class="sourceLineNo">079</span> *<a name="line.79"></a>
+<span class="sourceLineNo">080</span> *       &lt;jc&gt;// Create a custom serializer that doesn't use whitespace and newlines&lt;/jc&gt;<a name="line.80"></a>
+<span class="sourceLineNo">081</span> *       HtmlSerializer serializer = &lt;jk&gt;new&lt;/jk&gt; HtmlSerializerBuider().ws().build();<a name="line.81"></a>
+<span class="sourceLineNo">082</span> *<a name="line.82"></a>
+<span class="sourceLineNo">083</span> *       &lt;jc&gt;// Same as above, except uses cloning&lt;/jc&gt;<a name="line.83"></a>
+<span class="sourceLineNo">084</span> *       HtmlSerializer serializer = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.builder().ws().build();<a name="line.84"></a>
+<span class="sourceLineNo">085</span> *<a name="line.85"></a>
+<span class="sourceLineNo">086</span> *       &lt;jc&gt;// Serialize POJOs to HTML&lt;/jc&gt;<a name="line.86"></a>
+<span class="sourceLineNo">087</span> *<a name="line.87"></a>
+<span class="sourceLineNo">088</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.88"></a>
+<span class="sourceLineNo">089</span> *       &lt;jc&gt;// &amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;1&amp;lt;li&amp;gt;2&amp;lt;li&amp;gt;3&amp;lt;/ul&amp;gt;&lt;/jc&gt;<a name="line.89"></a>
+<span class="sourceLineNo">090</span> *       List l = new ObjectList(1, 2, 3);<a name="line.90"></a>
+<span class="sourceLineNo">091</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(l);<a name="line.91"></a>
+<span class="sourceLineNo">092</span> *<a name="line.92"></a>
+<span class="sourceLineNo">093</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.93"></a>
+<span class="sourceLineNo">094</span> *       &lt;jc&gt;//    &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.94"></a>
+<span class="sourceLineNo">095</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;firstName&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;lastName&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.95"></a>
+<span class="sourceLineNo">096</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Bob&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Costas&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.96"></a>
+<span class="sourceLineNo">097</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Billy&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;TheKid&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.97"></a>
+<span class="sourceLineNo">098</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Barney&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;Miller&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.98"></a>
+<span class="sourceLineNo">099</span> *       &lt;jc&gt;//    &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.99"></a>
+<span class="sourceLineNo">100</span> *       l = &lt;jk&gt;new&lt;/jk&gt; ObjectList();<a name="line.100"></a>
+<span class="sourceLineNo">101</span> *       l.add(&lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{firstName:'Bob',lastName:'Costas'}"&lt;/js&gt;));<a name="line.101"></a>
+<span class="sourceLineNo">102</span> *       l.add(&lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{firstName:'Billy',lastName:'TheKid'}"&lt;/js&gt;));<a name="line.102"></a>
+<span class="sourceLineNo">103</span> *       l.add(&lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{firstName:'Barney',lastName:'Miller'}"&lt;/js&gt;));<a name="line.103"></a>
+<span class="sourceLineNo">104</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(l);<a name="line.104"></a>
+<span class="sourceLineNo">105</span> *<a name="line.105"></a>
+<span class="sourceLineNo">106</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.106"></a>
+<span class="sourceLineNo">107</span> *       &lt;jc&gt;//    &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.107"></a>
+<span class="sourceLineNo">108</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;key&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;value&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.108"></a>
+<span class="sourceLineNo">109</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;foo&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;bar&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.109"></a>
+<span class="sourceLineNo">110</span> *       &lt;jc&gt;//       &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;baz&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;123&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.110"></a>
+<span class="sourceLineNo">111</span> *       &lt;jc&gt;//    &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.111"></a>
+<span class="sourceLineNo">112</span> *       Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{foo:'bar',baz:123}"&lt;/js&gt;);<a name="line.112"></a>
+<span class="sourceLineNo">113</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(m);<a name="line.113"></a>
+<span class="sourceLineNo">114</span> *<a name="line.114"></a>
+<span class="sourceLineNo">115</span> *       &lt;jc&gt;// HTML elements can be nested arbitrarily deep&lt;/jc&gt;<a name="line.115"></a>
+<span class="sourceLineNo">116</span> *       &lt;jc&gt;// Produces: &lt;/jc&gt;<a name="line.116"></a>
+<span class="sourceLineNo">117</span> *       &lt;jc&gt;//   &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.117"></a>
+<span class="sourceLineNo">118</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;key&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;value&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.118"></a>
+<span class="sourceLineNo">119</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;foo&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;bar&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.119"></a>
+<span class="sourceLineNo">120</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;baz&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;123&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.120"></a>
+<span class="sourceLineNo">121</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;someNumbers&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt;1&amp;lt;li&amp;gt;2&amp;lt;li&amp;gt;3&amp;lt;/ul&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.121"></a>
+<span class="sourceLineNo">122</span> *       &lt;jc&gt;//      &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;someSubMap&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt; &lt;/jc&gt;<a name="line.122"></a>
+<span class="sourceLineNo">123</span> *       &lt;jc&gt;//         &amp;lt;table&amp;gt; &lt;/jc&gt;<a name="line.123"></a>
+<span class="sourceLineNo">124</span> *       &lt;jc&gt;//            &amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;key&amp;lt;/th&amp;gt;&amp;lt;th&amp;gt;value&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.124"></a>
+<span class="sourceLineNo">125</span> *       &lt;jc&gt;//            &amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;a&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;b&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.125"></a>
+<span class="sourceLineNo">126</span> *       &lt;jc&gt;//         &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.126"></a>
+<span class="sourceLineNo">127</span> *       &lt;jc&gt;//      &amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt; &lt;/jc&gt;<a name="line.127"></a>
+<span class="sourceLineNo">128</span> *       &lt;jc&gt;//   &amp;lt;/table&amp;gt; &lt;/jc&gt;<a name="line.128"></a>
+<span class="sourceLineNo">129</span> *       Map m = &lt;jk&gt;new&lt;/jk&gt; ObjectMap(&lt;js&gt;"{foo:'bar',baz:123}"&lt;/js&gt;);<a name="line.129"></a>
+<span class="sourceLineNo">130</span> *       m.put("someNumbers", new ObjectList(1, 2, 3));<a name="line.130"></a>
+<span class="sourceLineNo">131</span> *       m.put(&lt;js&gt;"someSubMap"&lt;/js&gt;, new ObjectMap(&lt;js&gt;"{a:'b'}"&lt;/js&gt;));<a name="line.131"></a>
+<span class="sourceLineNo">132</span> *       String html = HtmlSerializer.&lt;jsf&gt;DEFAULT&lt;/jsf&gt;.serialize(m);<a name="line.132"></a>
+<span class="sourceLineNo">133</span> * &lt;/p&gt;<a name="line.133"></a>
+<span class="sourceLineNo">134</span> */<a name="line.134"></a>
+<span class="sourceLineNo">135</span>@SuppressWarnings("hiding")<a name="line.135"></a>
+<span class="sourceLineNo">136</span>public class HtmlSerializer extends XmlSerializer {<a name="line.136"></a>
+<span class="sourceLineNo">137</span><a name="line.137"></a>
+<span class="sourceLineNo">138</span>   /** Default serializer, all default settings. */<a name="line.138"></a>
+<span class="sourceLineNo">139</span>   public static final HtmlSerializer DEFAULT = new HtmlSerializer(PropertyStore.create());<a name="line.139"></a>
+<span class="sourceLineNo">140</span><a name="line.140"></a>
+<span class="sourceLineNo">141</span>   /** Default serializer, single quotes. */<a name="line.141"></a>
+<span class="sourceLineNo">142</span>   public static final HtmlSerializer DEFAULT_SQ = new HtmlSerializer.Sq(PropertyStore.create());<a name="line.142"></a>
+<span class="sourceLineNo">143</span><a name="line.143"></a>
+<span class="sourceLineNo">144</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.144"></a>
+<span class="sourceLineNo">145</span>   public static final HtmlSerializer DEFAULT_SQ_READABLE = new HtmlSerializer.SqReadable(PropertyStore.create());<a name="line.145"></a>
+<span class="sourceLineNo">146</span><a name="line.146"></a>
+<span class="sourceLineNo">147</span><a name="line.147"></a>
+<span class="sourceLineNo">148</span>   /** Default serializer, single quotes. */<a name="line.148"></a>
+<span class="sourceLineNo">149</span>   public static class Sq extends HtmlSerializer {<a name="line.149"></a>
+<span class="sourceLineNo">150</span><a name="line.150"></a>
+<span class="sourceLineNo">151</span>      /**<a name="line.151"></a>
+<span class="sourceLineNo">152</span>       * Constructor.<a name="line.152"></a>
+<span class="sourceLineNo">153</span>       *<a name="line.153"></a>
+<span class="sourceLineNo">154</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.154"></a>
+<span class="sourceLineNo">155</span>       */<a name="line.155"></a>
+<span class="sourceLineNo">156</span>      public Sq(PropertyStore propertyStore) {<a name="line.156"></a>
+<span class="sourceLineNo">157</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\''));<a name="line.157"></a>
+<span class="sourceLineNo">158</span>      }<a name="line.158"></a>
+<span class="sourceLineNo">159</span>   }<a name="line.159"></a>
+<span class="sourceLineNo">160</span><a name="line.160"></a>
+<span class="sourceLineNo">161</span>   /** Default serializer, single quotes, whitespace added. */<a name="line.161"></a>
+<span class="sourceLineNo">162</span>   public static class SqReadable extends HtmlSerializer {<a name="line.162"></a>
+<span class="sourceLineNo">163</span><a name="line.163"></a>
+<span class="sourceLineNo">164</span>      /**<a name="line.164"></a>
+<span class="sourceLineNo">165</span>       * Constructor.<a name="line.165"></a>
+<span class="sourceLineNo">166</span>       *<a name="line.166"></a>
+<span class="sourceLineNo">167</span>       * @param propertyStore The property store containing all the settings for this object.<a name="line.167"></a>
+<span class="sourceLineNo">168</span>       */<a name="line.168"></a>
+<span class="sourceLineNo">169</span>      public SqReadable(PropertyStore propertyStore) {<a name="line.169"></a>
+<span class="sourceLineNo">170</span>         super(propertyStore.copy().append(SERIALIZER_quoteChar, '\'').append(SERIALIZER_useWhitespace, true));<a name="line.170"></a>
+<span class="sourceLineNo">171</span>      }<a name="line.171"></a>
+<span class="sourceLineNo">172</span>   }<a name="line.172"></a>
+<span class="sourceLineNo">173</span><a name="line.173"></a>
+<span class="sourceLineNo">174</span><a name="line.174"></a>
+<span class="sourceLineNo">175</span>   final HtmlSerializerContext ctx;<a name="line.175"></a>
+<span class="sourceLineNo">176</span>   private volatile HtmlSchemaDocSerializer schemaSerializer;<a name="line.176"></a>
+<span class="sourceLineNo">177</span><a name="line.177"></a>
+<span class="sourceLineNo">178</span>   /**<a name="line.178"></a>
+<span class="sourceLineNo">179</span>    * Constructor.<a name="line.179"></a>
+<span class="sourceLineNo">180</span>    *<a name="line.180"></a>
+<span class="sourceLineNo">181</span>    * @param propertyStore<a name="line.181"></a>
+<span class="sourceLineNo">182</span>    *    The property store containing all the settings for this object.<a name="line.182"></a>
+<span class="sourceLineNo">183</span>    */<a name="line.183"></a>
+<span class="sourceLineNo">184</span>   public HtmlSerializer(PropertyStore propertyStore) {<a name="line.184"></a>
+<span class="sourceLineNo">185</span>      this(propertyStore, "text/html");<a name="line.185"></a>
+<span class="sourceLineNo">186</span>   }<a name="line.186"></a>
+<span class="sourceLineNo">187</span><a name="line.187"></a>
+<span class="sourceLineNo">188</span>   /**<a name="line.188"></a>
+<span class="sourceLineNo">189</span>    * Constructor.<a name="line.189"></a>
+<span class="sourceLineNo">190</span>    *<a name="line.190"></a>
+<span class="sourceLineNo">191</span>    * @param propertyStore<a name="line.191"></a>
+<span class="sourceLineNo">192</span>    *    The property store containing all the settings for this object.<a name="line.192"></a>
+<span class="sourceLineNo">193</span>    * @param produces<a name="line.193"></a>
+<span class="sourceLineNo">194</span>    *    The media type that this serializer produces.<a name="line.194"></a>
+<span class="sourceLineNo">195</span>    * @param accept<a name="line.195"></a>
+<span class="sourceLineNo">196</span>    *    The accept media types that the serializer can handle.<a name="line.196"></a>
+<span class="sourceLineNo">197</span>    *    &lt;p&gt;<a name="line.197"></a>
+<span class="sourceLineNo">198</span>    *    Can contain meta-characters per the &lt;code&gt;media-type&lt;/code&gt; specification of<a name="line.198"></a>
+<span class="sourceLineNo">199</span>    *    &lt;a class="doclink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1"&gt;RFC2616/14.1&lt;/a&gt;<a name="line.199"></a>
+<span class="sourceLineNo">200</span>    *    &lt;p&gt;<a name="line.200"></a>
+<span class="sourceLineNo">201</span>    *    If empty, then assumes the only media type supported is &lt;code&gt;produces&lt;/code&gt;.<a name="line.201"></a>
+<span class="sourceLineNo">202</span>    *    &lt;p&gt;<a name="line.202"></a>
+<span class="sourceLineNo">203</span>    *    For example, if this serializer produces &lt;js&gt;"application/json"&lt;/js&gt; but should handle media types of<a name="line.203"></a>
+<span class="sourceLineNo">204</span>    *    &lt;js&gt;"application/json"&lt;/js&gt; and &lt;js&gt;"text/json"&lt;/js&gt;, then the arguments should be:<a name="line.204"></a>
+<span class="sourceLineNo">205</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"text/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.205"></a>
+<span class="sourceLineNo">206</span>    *    &lt;br&gt;...or...<a name="line.206"></a>
+<span class="sourceLineNo">207</span>    *    &lt;br&gt;&lt;code&gt;&lt;jk&gt;super&lt;/jk&gt;(propertyStore, &lt;js&gt;"application/json"&lt;/js&gt;, &lt;js&gt;"*&amp;#8203;/json"&lt;/js&gt;);&lt;/code&gt;<a name="line.207"></a>
+<span class="sourceLineNo">208</span>    */<a name="line.208"></a>
+<span class="sourceLineNo">209</span>   public HtmlSerializer(PropertyStore propertyStore, String produces, String...accept) {<a name="line.209"></a>
+<span class="sourceLineNo">210</span>      super(propertyStore, produces, accept);<a name="line.210"></a>
+<span class="sourceLineNo">211</span>      this.ctx = createContext(HtmlSerializerContext.class);<a name="line.211"></a>
+<span class="sourceLineNo">212</span>   }<a name="line.212"></a>
+<span class="sourceLineNo">213</span><a name="line.213"></a>
+<span class="sourceLineNo">214</span>   @Override /* CoreObject */<a name="line.214"></a>
+<span class="sourceLineNo">215</span>   public HtmlSerializerBuilder builder() {<a name="line.215"></a>
+<span class="sourceLineNo">216</span>      return new HtmlSerializerBuilder(propertyStore);<a name="line.216"></a>
+<span class="sourceLineNo">217</span>   }<a name="line.217"></a>
+<span class="sourceLineNo">218</span><a name="line.218"></a>
+<span class="sourceLineNo">219</span>   @Override /* XmlSerializer */<a name="line.219"></a>
+<span class="sourceLineNo">220</span>   public HtmlSerializer getSchemaSerializer() {<a name="line.220"></a>
+<span class="sourceLineNo">221</span>      if (schemaSerializer == null)<a name="line.221"></a>
+<span class="sourceLineNo">222</span>         schemaSerializer = new HtmlSchemaDocSerializer(propertyStore);<a name="line.222"></a>
+<span class="sourceLineNo">223</span>      return schemaSerializer;<a name="line.223"></a>
+<span class="sourceLineNo">224</span>   }<a name="line.224"></a>
+<span class="sourceLineNo">225</span><a name="line.225"></a>
+<span class="sourceLineNo">226</span>   @Override /* Serializer */<a name="line.226"></a>
+<span class="sourceLineNo">227</span>   public WriterSerializerSession createSession(SerializerSessionArgs args) {<a name="line.227"></a>
+<span class="sourceLineNo">228</span>      return new HtmlSerializerSession(ctx, args);<a name="line.228"></a>
+<span class="sourceLineNo">229</span>   }<a name="line.229"></a>
+<span class="sourceLineNo">230</span>}<a name="line.230"></a>