http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/f1f17bc3/content/site/apidocs/src-html/org/apache/juneau/http/ContentRange.html
----------------------------------------------------------------------
diff --git 
a/content/site/apidocs/src-html/org/apache/juneau/http/ContentRange.html 
b/content/site/apidocs/src-html/org/apache/juneau/http/ContentRange.html
new file mode 100644
index 0000000..1586ea6
--- /dev/null
+++ b/content/site/apidocs/src-html/org/apache/juneau/http/ContentRange.html
@@ -0,0 +1,198 @@
+<!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.http;<a 
name="line.13"></a>
+<span class="sourceLineNo">014</span><a name="line.14"></a>
+<span class="sourceLineNo">015</span>/**<a name="line.15"></a>
+<span class="sourceLineNo">016</span> * Represents a parsed 
&lt;l&gt;Content-Range&lt;/l&gt; HTTP response header.<a name="line.16"></a>
+<span class="sourceLineNo">017</span> * &lt;p&gt;<a name="line.17"></a>
+<span class="sourceLineNo">018</span> * Where in a full body message this 
partial message belongs.<a name="line.18"></a>
+<span class="sourceLineNo">019</span> *<a name="line.19"></a>
+<span class="sourceLineNo">020</span> * &lt;h6 
class='figure'&gt;Example&lt;/h6&gt;<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * &lt;p class='bcode'&gt;<a 
name="line.21"></a>
+<span class="sourceLineNo">022</span> *    Content-Range: bytes 
21010-47021/47022<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * &lt;/p&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * &lt;h6 class='topic'&gt;RFC2616 
Specification&lt;/h6&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> * The Content-Range entity-header is 
sent with a partial entity-body to specify where in the full entity-body the<a 
name="line.26"></a>
+<span class="sourceLineNo">027</span> * partial body should be applied.<a 
name="line.27"></a>
+<span class="sourceLineNo">028</span> * Range units are defined in section 
3.12.<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * &lt;p class='bcode'&gt;<a 
name="line.29"></a>
+<span class="sourceLineNo">030</span> *    Content-Range = "Content-Range" ":" 
content-range-spec<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *    content-range-spec      = 
byte-content-range-spec<a name="line.31"></a>
+<span class="sourceLineNo">032</span> *    byte-content-range-spec = 
bytes-unit SP<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *                              
byte-range-resp-spec "/"<a name="line.33"></a>
+<span class="sourceLineNo">034</span> *                              ( 
instance-length | "*" )<a name="line.34"></a>
+<span class="sourceLineNo">035</span> *    byte-range-resp-spec = 
(first-byte-pos "-" last-byte-pos)<a name="line.35"></a>
+<span class="sourceLineNo">036</span> *                                   | 
"*"<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    instance-length           = 
1*DIGIT<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * &lt;/p&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span> * &lt;p&gt;<a name="line.39"></a>
+<span class="sourceLineNo">040</span> * The header SHOULD indicate the total 
length of the full entity-body, unless this length is unknown or difficult to<a 
name="line.40"></a>
+<span class="sourceLineNo">041</span> * determine.<a name="line.41"></a>
+<span class="sourceLineNo">042</span> * The asterisk "*" character means that 
the instance-length is unknown at the time when the response was generated.<a 
name="line.42"></a>
+<span class="sourceLineNo">043</span> * &lt;p&gt;<a name="line.43"></a>
+<span class="sourceLineNo">044</span> * Unlike byte-ranges-specifier values 
(see section 14.35.1), a byte- range-resp-spec MUST only specify one range, 
and<a name="line.44"></a>
+<span class="sourceLineNo">045</span> * MUST contain absolute byte positions 
for both the first and last byte of the range.<a name="line.45"></a>
+<span class="sourceLineNo">046</span> * &lt;p&gt;<a name="line.46"></a>
+<span class="sourceLineNo">047</span> * A byte-content-range-spec with a 
byte-range-resp-spec whose last- byte-pos value is less than its 
first-byte-pos<a name="line.47"></a>
+<span class="sourceLineNo">048</span> * value, or whose instance-length value 
is less than or equal to its last-byte-pos value, is invalid.<a 
name="line.48"></a>
+<span class="sourceLineNo">049</span> * The recipient of an invalid 
byte-content-range- spec MUST ignore it and any content transferred along with 
it.<a name="line.49"></a>
+<span class="sourceLineNo">050</span> * &lt;p&gt;<a name="line.50"></a>
+<span class="sourceLineNo">051</span> * A server sending a response with 
status code 416 (Requested range not satisfiable) SHOULD include a 
Content-Range<a name="line.51"></a>
+<span class="sourceLineNo">052</span> * field with a byte-range- resp-spec of 
"*".<a name="line.52"></a>
+<span class="sourceLineNo">053</span> * The instance-length specifies the 
current length of the selected resource.<a name="line.53"></a>
+<span class="sourceLineNo">054</span> * A response with status code 206 
(Partial Content) MUST NOT include a Content-Range field with a 
byte-range-resp-spec<a name="line.54"></a>
+<span class="sourceLineNo">055</span> * of "*".<a name="line.55"></a>
+<span class="sourceLineNo">056</span> * &lt;p&gt;<a name="line.56"></a>
+<span class="sourceLineNo">057</span> * Examples of byte-content-range-spec 
values, assuming that the entity contains a total of 1234 bytes:<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> *    The first 500 bytes:<a 
name="line.59"></a>
+<span class="sourceLineNo">060</span> *     bytes 0-499/1234<a 
name="line.60"></a>
+<span class="sourceLineNo">061</span> *    The second 500 bytes:<a 
name="line.61"></a>
+<span class="sourceLineNo">062</span> *     bytes 500-999/1234<a 
name="line.62"></a>
+<span class="sourceLineNo">063</span> *    All except for the first 500 
bytes:<a name="line.63"></a>
+<span class="sourceLineNo">064</span> *     bytes 500-1233/1234<a 
name="line.64"></a>
+<span class="sourceLineNo">065</span> *    The last 500 bytes:<a 
name="line.65"></a>
+<span class="sourceLineNo">066</span> *     bytes 734-1233/1234<a 
name="line.66"></a>
+<span class="sourceLineNo">067</span> * &lt;/p&gt;<a name="line.67"></a>
+<span class="sourceLineNo">068</span> * &lt;p&gt;<a name="line.68"></a>
+<span class="sourceLineNo">069</span> * When an HTTP message includes the 
content of a single range (for example, a response to a request for a single 
range,<a name="line.69"></a>
+<span class="sourceLineNo">070</span> * or to a request for a set of ranges 
that overlap without any holes), this content is transmitted with a 
Content-Range<a name="line.70"></a>
+<span class="sourceLineNo">071</span> * header, and a Content-Length header 
showing the number of bytes actually transferred.<a name="line.71"></a>
+<span class="sourceLineNo">072</span> * For example:<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> *    HTTP/1.1 206 Partial content<a 
name="line.74"></a>
+<span class="sourceLineNo">075</span> *    Date: Wed, 15 Nov 1995 06:25:24 
GMT<a name="line.75"></a>
+<span class="sourceLineNo">076</span> *    Last-Modified: Wed, 15 Nov 1995 
04:58:08 GMT<a name="line.76"></a>
+<span class="sourceLineNo">077</span> *    Content-Range: bytes 
21010-47021/47022<a name="line.77"></a>
+<span class="sourceLineNo">078</span> *    Content-Length: 26012<a 
name="line.78"></a>
+<span class="sourceLineNo">079</span> *    Content-Type: image/gif<a 
name="line.79"></a>
+<span class="sourceLineNo">080</span> * &lt;/p&gt;<a name="line.80"></a>
+<span class="sourceLineNo">081</span> * &lt;p&gt;<a name="line.81"></a>
+<span class="sourceLineNo">082</span> * When an HTTP message includes the 
content of multiple ranges (for example, a response to a request for multiple<a 
name="line.82"></a>
+<span class="sourceLineNo">083</span> * non-overlapping ranges), these are 
transmitted as a multipart message.<a name="line.83"></a>
+<span class="sourceLineNo">084</span> * The multipart media type used for this 
purpose is "multipart/byteranges" as defined in appendix 19.2.<a 
name="line.84"></a>
+<span class="sourceLineNo">085</span> * See appendix 19.6.3 for a 
compatibility issue.<a name="line.85"></a>
+<span class="sourceLineNo">086</span> * &lt;p&gt;<a name="line.86"></a>
+<span class="sourceLineNo">087</span> * A response to a request for a single 
range MUST NOT be sent using the multipart/byteranges media type.<a 
name="line.87"></a>
+<span class="sourceLineNo">088</span> * A response to a request for multiple 
ranges, whose result is a single range, MAY be sent as a multipart/byteranges<a 
name="line.88"></a>
+<span class="sourceLineNo">089</span> * media type with one part.<a 
name="line.89"></a>
+<span class="sourceLineNo">090</span> * A client that cannot decode a 
multipart/byteranges message MUST NOT ask for multiple byte-ranges in a single 
request.<a name="line.90"></a>
+<span class="sourceLineNo">091</span> * &lt;p&gt;<a name="line.91"></a>
+<span class="sourceLineNo">092</span> * When a client requests multiple 
byte-ranges in one request, the server SHOULD return them in the order that 
they<a name="line.92"></a>
+<span class="sourceLineNo">093</span> * appeared in the request.<a 
name="line.93"></a>
+<span class="sourceLineNo">094</span> * &lt;p&gt;<a name="line.94"></a>
+<span class="sourceLineNo">095</span> * If the server ignores a 
byte-range-spec because it is syntactically invalid, the server SHOULD treat 
the request as<a name="line.95"></a>
+<span class="sourceLineNo">096</span> * if the invalid Range header field did 
not exist.<a name="line.96"></a>
+<span class="sourceLineNo">097</span> * (Normally, this means return a 200 
response containing the full entity).<a name="line.97"></a>
+<span class="sourceLineNo">098</span> * &lt;p&gt;<a name="line.98"></a>
+<span class="sourceLineNo">099</span> * If the server receives a request 
(other than one including an If- Range request-header field) with an 
unsatisfiable<a name="line.99"></a>
+<span class="sourceLineNo">100</span> * Range request- header field<a 
name="line.100"></a>
+<span class="sourceLineNo">101</span> * (that is, all of whose byte-range-spec 
values have a first-byte-pos value greater than the current length of the<a 
name="line.101"></a>
+<span class="sourceLineNo">102</span> * selected resource),<a 
name="line.102"></a>
+<span class="sourceLineNo">103</span> * it SHOULD return a response code of 
416 (Requested range not satisfiable) (section 10.4.17).<a name="line.103"></a>
+<span class="sourceLineNo">104</span> * &lt;p&gt;<a name="line.104"></a>
+<span class="sourceLineNo">105</span> * Note: clients cannot depend on servers 
to send a 416 (Requested range not satisfiable) response instead of a 200 
(OK)<a name="line.105"></a>
+<span class="sourceLineNo">106</span> * response for<a name="line.106"></a>
+<span class="sourceLineNo">107</span> * an unsatisfiable Range request-header, 
since not all servers implement this request-header.<a name="line.107"></a>
+<span class="sourceLineNo">108</span> */<a name="line.108"></a>
+<span class="sourceLineNo">109</span>public final class ContentRange extends 
HeaderString {<a name="line.109"></a>
+<span class="sourceLineNo">110</span><a name="line.110"></a>
+<span class="sourceLineNo">111</span>   /**<a name="line.111"></a>
+<span class="sourceLineNo">112</span>    * Returns a parsed 
&lt;code&gt;Content-Range&lt;/code&gt; header.<a name="line.112"></a>
+<span class="sourceLineNo">113</span>    *<a name="line.113"></a>
+<span class="sourceLineNo">114</span>    * @param value The 
&lt;code&gt;Content-Range&lt;/code&gt; header string.<a name="line.114"></a>
+<span class="sourceLineNo">115</span>    * @return The parsed 
&lt;code&gt;Content-Range&lt;/code&gt; header, or &lt;jk&gt;null&lt;/jk&gt; if 
the string was null.<a name="line.115"></a>
+<span class="sourceLineNo">116</span>    */<a name="line.116"></a>
+<span class="sourceLineNo">117</span>   public static ContentRange 
forString(String value) {<a name="line.117"></a>
+<span class="sourceLineNo">118</span>      if (value == null)<a 
name="line.118"></a>
+<span class="sourceLineNo">119</span>         return null;<a 
name="line.119"></a>
+<span class="sourceLineNo">120</span>      return new ContentRange(value);<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>   private ContentRange(String value) {<a 
name="line.123"></a>
+<span class="sourceLineNo">124</span>      super(value);<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>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</pre>
+</div>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/f1f17bc3/content/site/apidocs/src-html/org/apache/juneau/http/ContentType.html
----------------------------------------------------------------------
diff --git 
a/content/site/apidocs/src-html/org/apache/juneau/http/ContentType.html 
b/content/site/apidocs/src-html/org/apache/juneau/http/ContentType.html
index 36dcfa2..676e664 100644
--- a/content/site/apidocs/src-html/org/apache/juneau/http/ContentType.html
+++ b/content/site/apidocs/src-html/org/apache/juneau/http/ContentType.html
@@ -20,88 +20,86 @@
 <span class="sourceLineNo">012</span>// 
***************************************************************************************************************************<a
 name="line.12"></a>
 <span class="sourceLineNo">013</span>package org.apache.juneau.http;<a 
name="line.13"></a>
 <span class="sourceLineNo">014</span><a name="line.14"></a>
-<span class="sourceLineNo">015</span>import java.util.concurrent.*;<a 
name="line.15"></a>
+<span class="sourceLineNo">015</span>import static 
org.apache.juneau.http.Constants.*;<a name="line.15"></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> * Represents a parsed 
&lt;code&gt;Content-Type:&lt;/code&gt; HTTP header.<a name="line.18"></a>
-<span class="sourceLineNo">019</span> * &lt;p&gt;<a name="line.19"></a>
-<span class="sourceLineNo">020</span> * The formal RFC2616 header field 
definition is as follows:<a name="line.20"></a>
-<span class="sourceLineNo">021</span> * &lt;p class='bcode'&gt;<a 
name="line.21"></a>
-<span class="sourceLineNo">022</span> *    14.17 Content-Type<a 
name="line.22"></a>
+<span class="sourceLineNo">017</span>import org.apache.juneau.internal.*;<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> * Represents a parsed 
&lt;l&gt;Content-Type&lt;/l&gt; HTTP request/response header.<a 
name="line.20"></a>
+<span class="sourceLineNo">021</span> * &lt;p&gt;<a name="line.21"></a>
+<span class="sourceLineNo">022</span> * The MIME type of this content.<a 
name="line.22"></a>
 <span class="sourceLineNo">023</span> *<a name="line.23"></a>
-<span class="sourceLineNo">024</span> *    The Content-Type entity-header 
field indicates the media type of the<a name="line.24"></a>
-<span class="sourceLineNo">025</span> *    entity-body sent to the recipient 
or, in the case of the HEAD method,<a name="line.25"></a>
-<span class="sourceLineNo">026</span> *    the media type that would have been 
sent had the request been a GET.<a name="line.26"></a>
-<span class="sourceLineNo">027</span> *<a name="line.27"></a>
-<span class="sourceLineNo">028</span> *       Content-Type   = "Content-Type" 
":" media-type<a name="line.28"></a>
-<span class="sourceLineNo">029</span> *<a name="line.29"></a>
-<span class="sourceLineNo">030</span> *    Media types are defined in section 
3.7. An example of the field is<a name="line.30"></a>
-<span class="sourceLineNo">031</span> *<a name="line.31"></a>
-<span class="sourceLineNo">032</span> *    Content-Type: text/html; 
charset=ISO-8859-4<a name="line.32"></a>
-<span class="sourceLineNo">033</span> * &lt;/p&gt;<a name="line.33"></a>
-<span class="sourceLineNo">034</span> */<a name="line.34"></a>
-<span class="sourceLineNo">035</span>public class ContentType extends 
MediaType {<a name="line.35"></a>
-<span class="sourceLineNo">036</span><a name="line.36"></a>
-<span class="sourceLineNo">037</span>   private static final boolean nocache = 
Boolean.getBoolean("juneau.http.ContentType.nocache");<a name="line.37"></a>
-<span class="sourceLineNo">038</span>   private static final 
ConcurrentHashMap&lt;String,ContentType&gt; cache = new 
ConcurrentHashMap&lt;String,ContentType&gt;();<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>    * Returns a parsed 
&lt;code&gt;Content-Type&lt;/code&gt; header.<a name="line.41"></a>
-<span class="sourceLineNo">042</span>    *<a name="line.42"></a>
-<span class="sourceLineNo">043</span>    * @param s The 
&lt;code&gt;Content-Type&lt;/code&gt; header string.<a name="line.43"></a>
-<span class="sourceLineNo">044</span>    * @return The parsed 
&lt;code&gt;Content-Type&lt;/code&gt; header, or &lt;jk&gt;null&lt;/jk&gt; if 
the string was null.<a name="line.44"></a>
-<span class="sourceLineNo">045</span>    */<a name="line.45"></a>
-<span class="sourceLineNo">046</span>   public static ContentType 
forString(String s) {<a name="line.46"></a>
-<span class="sourceLineNo">047</span>      if (s == null)<a name="line.47"></a>
-<span class="sourceLineNo">048</span>         return null;<a 
name="line.48"></a>
-<span class="sourceLineNo">049</span><a name="line.49"></a>
-<span class="sourceLineNo">050</span>      // Prevent OOM in case of DDOS<a 
name="line.50"></a>
-<span class="sourceLineNo">051</span>      if (cache.size() &gt; 1000)<a 
name="line.51"></a>
-<span class="sourceLineNo">052</span>         cache.clear();<a 
name="line.52"></a>
-<span class="sourceLineNo">053</span><a name="line.53"></a>
-<span class="sourceLineNo">054</span>      while (true) {<a name="line.54"></a>
-<span class="sourceLineNo">055</span>         ContentType mt = cache.get(s);<a 
name="line.55"></a>
-<span class="sourceLineNo">056</span>         if (mt != null)<a 
name="line.56"></a>
-<span class="sourceLineNo">057</span>            return mt;<a 
name="line.57"></a>
-<span class="sourceLineNo">058</span>         mt = new ContentType(s);<a 
name="line.58"></a>
-<span class="sourceLineNo">059</span>         if (nocache)<a 
name="line.59"></a>
-<span class="sourceLineNo">060</span>            return mt;<a 
name="line.60"></a>
-<span class="sourceLineNo">061</span>         cache.putIfAbsent(s, mt);<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>   private ContentType(String s) {<a 
name="line.65"></a>
-<span class="sourceLineNo">066</span>      super(s);<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>   /**<a name="line.69"></a>
-<span class="sourceLineNo">070</span>    * Given a list of media types, 
returns the best match for this &lt;code&gt;Content-Type&lt;/code&gt; header.<a 
name="line.70"></a>
-<span class="sourceLineNo">071</span>    * &lt;p&gt;<a name="line.71"></a>
-<span class="sourceLineNo">072</span>    * Note that fuzzy matching is allowed 
on the media types where the &lt;code&gt;Content-Types&lt;/code&gt; header 
may<a name="line.72"></a>
-<span class="sourceLineNo">073</span>    * contain additional subtype parts.<a 
name="line.73"></a>
-<span class="sourceLineNo">074</span>    * &lt;br&gt;For example, given a 
&lt;code&gt;Content-Type&lt;/code&gt; value of 
&lt;js&gt;"text/json+activity"&lt;/js&gt;,<a name="line.74"></a>
-<span class="sourceLineNo">075</span>    * the media type 
&lt;js&gt;"text/json"&lt;/js&gt; will match if 
&lt;js&gt;"text/json+activity"&lt;/js&gt; or 
&lt;js&gt;"text/activity+json"&lt;/js&gt;<a name="line.75"></a>
-<span class="sourceLineNo">076</span>    * isn't found.<a name="line.76"></a>
-<span class="sourceLineNo">077</span>    * &lt;br&gt;The purpose for this is 
to allow parsers to match when artifacts such as &lt;code&gt;id&lt;/code&gt; 
properties are present<a name="line.77"></a>
-<span class="sourceLineNo">078</span>    * in the header.<a name="line.78"></a>
-<span class="sourceLineNo">079</span>    *<a name="line.79"></a>
-<span class="sourceLineNo">080</span>    * @param mediaTypes The media types 
to match against.<a name="line.80"></a>
-<span class="sourceLineNo">081</span>    * @return The index into the array of 
the best match, or &lt;code&gt;-1&lt;/code&gt; if no suitable matches could be 
found.<a name="line.81"></a>
-<span class="sourceLineNo">082</span>    */<a name="line.82"></a>
-<span class="sourceLineNo">083</span>   public int findMatch(MediaType[] 
mediaTypes) {<a name="line.83"></a>
-<span class="sourceLineNo">084</span>      int matchQuant = 0, matchIndex = 
-1;<a name="line.84"></a>
-<span class="sourceLineNo">085</span><a name="line.85"></a>
-<span class="sourceLineNo">086</span>      for (int i = 0; i &lt; 
mediaTypes.length; i++) {<a name="line.86"></a>
-<span class="sourceLineNo">087</span>         MediaType mt = mediaTypes[i];<a 
name="line.87"></a>
-<span class="sourceLineNo">088</span>         int matchQuant2 = 
mt.match(this);<a name="line.88"></a>
-<span class="sourceLineNo">089</span>         if (matchQuant2 &gt; matchQuant) 
{<a name="line.89"></a>
-<span class="sourceLineNo">090</span>            matchIndex = i;<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>      return matchIndex;<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">024</span> * &lt;h6 
class='figure'&gt;Example&lt;/h6&gt;<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * &lt;p class='bcode'&gt;<a 
name="line.25"></a>
+<span class="sourceLineNo">026</span> *    Content-Type: text/html; 
charset=utf-8<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * &lt;/p&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;RFC2616 
Specification&lt;/h6&gt;<a name="line.29"></a>
+<span class="sourceLineNo">030</span> *<a name="line.30"></a>
+<span class="sourceLineNo">031</span> * The Content-Type entity-header field 
indicates the media type of the entity-body sent to the recipient or, in the<a 
name="line.31"></a>
+<span class="sourceLineNo">032</span> * case of the HEAD method, the media 
type that would have been sent had the request been a GET.<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * &lt;p class='bcode'&gt;<a 
name="line.33"></a>
+<span class="sourceLineNo">034</span> *    Content-Type   = "Content-Type" ":" 
media-type<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * &lt;/p&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span> * &lt;p&gt;<a name="line.36"></a>
+<span class="sourceLineNo">037</span> * Media types are defined in section 
3.7.<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * An example of the field is...<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> *    Content-Type: text/html; 
charset=ISO-8859-4<a name="line.40"></a>
+<span class="sourceLineNo">041</span> * &lt;/p&gt;<a name="line.41"></a>
+<span class="sourceLineNo">042</span> */<a name="line.42"></a>
+<span class="sourceLineNo">043</span>public class ContentType extends 
MediaType {<a name="line.43"></a>
+<span class="sourceLineNo">044</span><a name="line.44"></a>
+<span class="sourceLineNo">045</span>   private static 
Cache&lt;String,ContentType&gt; cache = new 
Cache&lt;String,ContentType&gt;(NOCACHE, CACHE_MAX_SIZE);<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>    * Returns a parsed 
&lt;code&gt;Content-Type&lt;/code&gt; header.<a name="line.48"></a>
+<span class="sourceLineNo">049</span>    *<a name="line.49"></a>
+<span class="sourceLineNo">050</span>    * @param value The 
&lt;code&gt;Content-Type&lt;/code&gt; header string.<a name="line.50"></a>
+<span class="sourceLineNo">051</span>    * @return The parsed 
&lt;code&gt;Content-Type&lt;/code&gt; header, or &lt;jk&gt;null&lt;/jk&gt; if 
the string was null.<a name="line.51"></a>
+<span class="sourceLineNo">052</span>    */<a name="line.52"></a>
+<span class="sourceLineNo">053</span>   public static ContentType 
forString(String value) {<a name="line.53"></a>
+<span class="sourceLineNo">054</span>      if (value == null)<a 
name="line.54"></a>
+<span class="sourceLineNo">055</span>         return null;<a 
name="line.55"></a>
+<span class="sourceLineNo">056</span>      ContentType ct = 
cache.get(value);<a name="line.56"></a>
+<span class="sourceLineNo">057</span>      if (ct == null)<a 
name="line.57"></a>
+<span class="sourceLineNo">058</span>         ct = cache.put(value, new 
ContentType(value));<a name="line.58"></a>
+<span class="sourceLineNo">059</span>      return ct;<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 ContentType(String s) {<a 
name="line.63"></a>
+<span class="sourceLineNo">064</span>      super(s);<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>    * Given a list of media types, 
returns the best match for this &lt;code&gt;Content-Type&lt;/code&gt; header.<a 
name="line.68"></a>
+<span class="sourceLineNo">069</span>    * &lt;p&gt;<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    * Note that fuzzy matching is allowed 
on the media types where the &lt;code&gt;Content-Types&lt;/code&gt; header 
may<a name="line.70"></a>
+<span class="sourceLineNo">071</span>    * contain additional subtype parts.<a 
name="line.71"></a>
+<span class="sourceLineNo">072</span>    * &lt;br&gt;For example, given a 
&lt;code&gt;Content-Type&lt;/code&gt; value of 
&lt;js&gt;"text/json+activity"&lt;/js&gt;,<a name="line.72"></a>
+<span class="sourceLineNo">073</span>    * the media type 
&lt;js&gt;"text/json"&lt;/js&gt; will match if 
&lt;js&gt;"text/json+activity"&lt;/js&gt; or 
&lt;js&gt;"text/activity+json"&lt;/js&gt;<a name="line.73"></a>
+<span class="sourceLineNo">074</span>    * isn't found.<a name="line.74"></a>
+<span class="sourceLineNo">075</span>    * &lt;br&gt;The purpose for this is 
to allow parsers to match when artifacts such as &lt;code&gt;id&lt;/code&gt; 
properties are present<a name="line.75"></a>
+<span class="sourceLineNo">076</span>    * in the header.<a name="line.76"></a>
+<span class="sourceLineNo">077</span>    *<a name="line.77"></a>
+<span class="sourceLineNo">078</span>    * @param mediaTypes The media types 
to match against.<a name="line.78"></a>
+<span class="sourceLineNo">079</span>    * @return The index into the array of 
the best match, or &lt;code&gt;-1&lt;/code&gt; if no suitable matches could be 
found.<a name="line.79"></a>
+<span class="sourceLineNo">080</span>    */<a name="line.80"></a>
+<span class="sourceLineNo">081</span>   public int findMatch(MediaType[] 
mediaTypes) {<a name="line.81"></a>
+<span class="sourceLineNo">082</span>      int matchQuant = 0, matchIndex = 
-1;<a name="line.82"></a>
+<span class="sourceLineNo">083</span><a name="line.83"></a>
+<span class="sourceLineNo">084</span>      for (int i = 0; i &lt; 
mediaTypes.length; i++) {<a name="line.84"></a>
+<span class="sourceLineNo">085</span>         MediaType mt = mediaTypes[i];<a 
name="line.85"></a>
+<span class="sourceLineNo">086</span>         int matchQuant2 = 
mt.match(this);<a name="line.86"></a>
+<span class="sourceLineNo">087</span>         if (matchQuant2 &gt; matchQuant) 
{<a name="line.87"></a>
+<span class="sourceLineNo">088</span>            matchIndex = i;<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>      return matchIndex;<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>
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/f1f17bc3/content/site/apidocs/src-html/org/apache/juneau/http/Date.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/http/Date.html 
b/content/site/apidocs/src-html/org/apache/juneau/http/Date.html
new file mode 100644
index 0000000..5053380
--- /dev/null
+++ b/content/site/apidocs/src-html/org/apache/juneau/http/Date.html
@@ -0,0 +1,155 @@
+<!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.http;<a 
name="line.13"></a>
+<span class="sourceLineNo">014</span><a name="line.14"></a>
+<span class="sourceLineNo">015</span>/**<a name="line.15"></a>
+<span class="sourceLineNo">016</span> * Represents a parsed 
&lt;l&gt;Date&lt;/l&gt; HTTP request/response header.<a name="line.16"></a>
+<span class="sourceLineNo">017</span> * &lt;p&gt;<a name="line.17"></a>
+<span class="sourceLineNo">018</span> * The date and time that the message was 
sent (in "HTTP-date" format as defined by RFC 7231).<a name="line.18"></a>
+<span class="sourceLineNo">019</span> *<a name="line.19"></a>
+<span class="sourceLineNo">020</span> * &lt;h6 
class='figure'&gt;Example&lt;/h6&gt;<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * &lt;p class='bcode'&gt;<a 
name="line.21"></a>
+<span class="sourceLineNo">022</span> *    Date: Tue, 15 Nov 1994 08:12:31 
GMT<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * &lt;/p&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * &lt;h6 class='topic'&gt;RFC2616 
Specification&lt;/h6&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * The Date general-header field 
represents the date and time at which the message was originated, having the 
same<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * semantics as orig-date in RFC 822.<a 
name="line.28"></a>
+<span class="sourceLineNo">029</span> * The field value is an HTTP-date, as 
described in section 3.3.1; it MUST be sent in RFC 1123 [8]-date format.<a 
name="line.29"></a>
+<span class="sourceLineNo">030</span> * &lt;p class='bcode'&gt;<a 
name="line.30"></a>
+<span class="sourceLineNo">031</span> *    Date  = "Date" ":" HTTP-date<a 
name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;/p&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * &lt;p&gt;<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * An example is...<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * &lt;p class='bcode'&gt;<a 
name="line.35"></a>
+<span class="sourceLineNo">036</span> *    Date: Tue, 15 Nov 1994 08:12:31 
GMT<a name="line.36"></a>
+<span class="sourceLineNo">037</span> * &lt;/p&gt;<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * &lt;p&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span> * Origin servers MUST include a Date 
header field in all responses, except in these cases:<a name="line.39"></a>
+<span class="sourceLineNo">040</span> * &lt;ol&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span> *    &lt;li&gt;If the response status 
code is 100 (Continue) or 101 (Switching Protocols), the response MAY include a 
Date<a name="line.41"></a>
+<span class="sourceLineNo">042</span> * header field, at the server's 
option.<a name="line.42"></a>
+<span class="sourceLineNo">043</span> *    &lt;li&gt;If the response status 
code conveys a server error, e.g. 500 (Internal Server Error) or 503 (Service<a 
name="line.43"></a>
+<span class="sourceLineNo">044</span> * Unavailable), and it is inconvenient 
or impossible to generate a valid Date.<a name="line.44"></a>
+<span class="sourceLineNo">045</span> *    &lt;li&gt;If the server does not 
have a clock that can provide a reasonable approximation of the current time, 
its<a name="line.45"></a>
+<span class="sourceLineNo">046</span> * responses MUST NOT include a Date 
header field.<a name="line.46"></a>
+<span class="sourceLineNo">047</span> *       In this case, the rules in 
section 14.18.1 MUST be followed.<a name="line.47"></a>
+<span class="sourceLineNo">048</span> * &lt;/ol&gt;<a name="line.48"></a>
+<span class="sourceLineNo">049</span> * A received message that does not have 
a Date header field MUST be assigned one by the recipient if the message will<a 
name="line.49"></a>
+<span class="sourceLineNo">050</span> * be cached by that recipient or 
gatewayed via a protocol which requires a Date.<a name="line.50"></a>
+<span class="sourceLineNo">051</span> * An HTTP implementation without a clock 
MUST NOT cache responses without revalidating them on every use.<a 
name="line.51"></a>
+<span class="sourceLineNo">052</span> * An HTTP cache, especially a shared 
cache, SHOULD use a mechanism, such as NTP, to synchronize its clock with a<a 
name="line.52"></a>
+<span class="sourceLineNo">053</span> * reliable external standard.<a 
name="line.53"></a>
+<span class="sourceLineNo">054</span> * &lt;p&gt;<a name="line.54"></a>
+<span class="sourceLineNo">055</span> * Clients SHOULD only send a Date header 
field in messages that include an entity-body, as in the case of the PUT and<a 
name="line.55"></a>
+<span class="sourceLineNo">056</span> * POST requests, and even then it is 
optional.<a name="line.56"></a>
+<span class="sourceLineNo">057</span> * A client without a clock MUST NOT send 
a Date header field in a request.<a name="line.57"></a>
+<span class="sourceLineNo">058</span> * &lt;p&gt;<a name="line.58"></a>
+<span class="sourceLineNo">059</span> * The HTTP-date sent in a Date header 
SHOULD NOT represent a date and time subsequent to the generation of the 
message.<a name="line.59"></a>
+<span class="sourceLineNo">060</span> * It SHOULD represent the best available 
approximation of the date and time of message generation, unless the<a 
name="line.60"></a>
+<span class="sourceLineNo">061</span> * implementation has no means of 
generating a reasonably accurate date and time.<a name="line.61"></a>
+<span class="sourceLineNo">062</span> * In theory, the date ought to represent 
the moment just before the entity is generated.<a name="line.62"></a>
+<span class="sourceLineNo">063</span> * In practice, the date can be generated 
at any time during the message origination without affecting its semantic<a 
name="line.63"></a>
+<span class="sourceLineNo">064</span> * value.<a name="line.64"></a>
+<span class="sourceLineNo">065</span> */<a name="line.65"></a>
+<span class="sourceLineNo">066</span>public final class Date extends 
HeaderDate {<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 a parsed 
&lt;code&gt;Date&lt;/code&gt; header.<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    *<a name="line.70"></a>
+<span class="sourceLineNo">071</span>    * @param value The 
&lt;code&gt;Date&lt;/code&gt; header string.<a name="line.71"></a>
+<span class="sourceLineNo">072</span>    * @return The parsed 
&lt;code&gt;Date&lt;/code&gt; header, or &lt;jk&gt;null&lt;/jk&gt; if the 
string was null.<a name="line.72"></a>
+<span class="sourceLineNo">073</span>    */<a name="line.73"></a>
+<span class="sourceLineNo">074</span>   public static Date forString(String 
value) {<a name="line.74"></a>
+<span class="sourceLineNo">075</span>      if (value == null)<a 
name="line.75"></a>
+<span class="sourceLineNo">076</span>         return null;<a 
name="line.76"></a>
+<span class="sourceLineNo">077</span>      return new Date(value);<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>   private Date(String value) {<a 
name="line.80"></a>
+<span class="sourceLineNo">081</span>      super(value);<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>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</pre>
+</div>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/f1f17bc3/content/site/apidocs/src-html/org/apache/juneau/http/ETag.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/http/ETag.html 
b/content/site/apidocs/src-html/org/apache/juneau/http/ETag.html
new file mode 100644
index 0000000..15d4ac4
--- /dev/null
+++ b/content/site/apidocs/src-html/org/apache/juneau/http/ETag.html
@@ -0,0 +1,130 @@
+<!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.http;<a 
name="line.13"></a>
+<span class="sourceLineNo">014</span><a name="line.14"></a>
+<span class="sourceLineNo">015</span>/**<a name="line.15"></a>
+<span class="sourceLineNo">016</span> * Represents a parsed 
&lt;l&gt;ETag&lt;/l&gt; HTTP response header.<a name="line.16"></a>
+<span class="sourceLineNo">017</span> * &lt;p&gt;<a name="line.17"></a>
+<span class="sourceLineNo">018</span> * An identifier for a specific version 
of a resource, often a message digest.<a name="line.18"></a>
+<span class="sourceLineNo">019</span> *<a name="line.19"></a>
+<span class="sourceLineNo">020</span> * &lt;h6 
class='figure'&gt;Example&lt;/h6&gt;<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * &lt;p class='bcode'&gt;<a 
name="line.21"></a>
+<span class="sourceLineNo">022</span> *    ETag: 
"737060cd8c284d8af7ad3082f209582d"<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * &lt;/p&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * &lt;h6 class='topic'&gt;RFC2616 
Specification&lt;/h6&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * The ETag response-header field 
provides the current value of the entity tag for the requested variant.<a 
name="line.27"></a>
+<span class="sourceLineNo">028</span> * The headers used with entity tags are 
described in sections 14.24, 14.26 and 14.44.<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * The entity tag MAY be used for 
comparison with other entities from the same resource (see section 13.3.3).<a 
name="line.29"></a>
+<span class="sourceLineNo">030</span> * &lt;p class='bcode'&gt;<a 
name="line.30"></a>
+<span class="sourceLineNo">031</span> *    ETag = "ETag" ":" entity-tag<a 
name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;/p&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * &lt;p&gt;<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * Examples:<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * &lt;p class='bcode'&gt;<a 
name="line.35"></a>
+<span class="sourceLineNo">036</span> *    ETag: "xyzzy"<a name="line.36"></a>
+<span class="sourceLineNo">037</span> *    ETag: W/"xyzzy"<a 
name="line.37"></a>
+<span class="sourceLineNo">038</span> *    ETag: ""<a name="line.38"></a>
+<span class="sourceLineNo">039</span> * &lt;/p&gt;<a name="line.39"></a>
+<span class="sourceLineNo">040</span> */<a name="line.40"></a>
+<span class="sourceLineNo">041</span>public final class ETag extends 
HeaderString {<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>    * Returns a parsed 
&lt;code&gt;ETag&lt;/code&gt; header.<a name="line.44"></a>
+<span class="sourceLineNo">045</span>    *<a name="line.45"></a>
+<span class="sourceLineNo">046</span>    * @param value The 
&lt;code&gt;ETag&lt;/code&gt; header string.<a name="line.46"></a>
+<span class="sourceLineNo">047</span>    * @return The parsed 
&lt;code&gt;ETag&lt;/code&gt; header, or &lt;jk&gt;null&lt;/jk&gt; if the 
string was null.<a name="line.47"></a>
+<span class="sourceLineNo">048</span>    */<a name="line.48"></a>
+<span class="sourceLineNo">049</span>   public static ETag forString(String 
value) {<a name="line.49"></a>
+<span class="sourceLineNo">050</span>      if (value == null)<a 
name="line.50"></a>
+<span class="sourceLineNo">051</span>         return null;<a 
name="line.51"></a>
+<span class="sourceLineNo">052</span>      return new ETag(value);<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>   private ETag(String value) {<a 
name="line.55"></a>
+<span class="sourceLineNo">056</span>      super(value);<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>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</pre>
+</div>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/f1f17bc3/content/site/apidocs/src-html/org/apache/juneau/http/EntityValidator.html
----------------------------------------------------------------------
diff --git 
a/content/site/apidocs/src-html/org/apache/juneau/http/EntityValidator.html 
b/content/site/apidocs/src-html/org/apache/juneau/http/EntityValidator.html
new file mode 100644
index 0000000..c566240
--- /dev/null
+++ b/content/site/apidocs/src-html/org/apache/juneau/http/EntityValidator.html
@@ -0,0 +1,144 @@
+<!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.http;<a 
name="line.13"></a>
+<span class="sourceLineNo">014</span><a name="line.14"></a>
+<span class="sourceLineNo">015</span>/**<a name="line.15"></a>
+<span class="sourceLineNo">016</span> * Represents a validator value.<a 
name="line.16"></a>
+<span class="sourceLineNo">017</span> * &lt;p&gt;<a name="line.17"></a>
+<span class="sourceLineNo">018</span> * &lt;h6 
class='figure'&gt;Example&lt;/h6&gt;<a name="line.18"></a>
+<span class="sourceLineNo">019</span> * &lt;p class='bcode'&gt;<a 
name="line.19"></a>
+<span class="sourceLineNo">020</span> *    ETag: "123456789"    – A strong 
ETag validator<a name="line.20"></a>
+<span class="sourceLineNo">021</span> *    ETag: W/"123456789"  – A weak 
ETag validator<a name="line.21"></a>
+<span class="sourceLineNo">022</span> * &lt;/p&gt;<a name="line.22"></a>
+<span class="sourceLineNo">023</span> */<a name="line.23"></a>
+<span class="sourceLineNo">024</span>public class EntityValidator {<a 
name="line.24"></a>
+<span class="sourceLineNo">025</span><a name="line.25"></a>
+<span class="sourceLineNo">026</span>   private final String value;<a 
name="line.26"></a>
+<span class="sourceLineNo">027</span>   private final boolean isWeak;<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 value The validator string 
value.<a name="line.32"></a>
+<span class="sourceLineNo">033</span>    */<a name="line.33"></a>
+<span class="sourceLineNo">034</span>   protected EntityValidator(String 
value) {<a name="line.34"></a>
+<span class="sourceLineNo">035</span>      value = value.trim();<a 
name="line.35"></a>
+<span class="sourceLineNo">036</span>      isWeak = value.startsWith("W/");<a 
name="line.36"></a>
+<span class="sourceLineNo">037</span>      if (isWeak)<a name="line.37"></a>
+<span class="sourceLineNo">038</span>         value = value.substring(2);<a 
name="line.38"></a>
+<span class="sourceLineNo">039</span>      if (value.length() &gt; 1 
&amp;&amp; value.charAt(0) == '"' &amp;&amp; value.charAt(value.length()-1) == 
'"')<a name="line.39"></a>
+<span class="sourceLineNo">040</span>         value = value.substring(1, 
value.length()-1);<a name="line.40"></a>
+<span class="sourceLineNo">041</span>      this.value = value;<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>   /**<a name="line.44"></a>
+<span class="sourceLineNo">045</span>    * Returns the validator value 
stripped of quotes and weak tag.<a name="line.45"></a>
+<span class="sourceLineNo">046</span>    * @return The validator value.<a 
name="line.46"></a>
+<span class="sourceLineNo">047</span>    */<a name="line.47"></a>
+<span class="sourceLineNo">048</span>   public String asString() {<a 
name="line.48"></a>
+<span class="sourceLineNo">049</span>      return value;<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>    * Returns &lt;jk&gt;true&lt;/jk&gt; 
if the weak flag is present in the value.<a name="line.53"></a>
+<span class="sourceLineNo">054</span>    * @return &lt;jk&gt;true&lt;/jk&gt; 
if the weak flag is present in the value.<a name="line.54"></a>
+<span class="sourceLineNo">055</span>    */<a name="line.55"></a>
+<span class="sourceLineNo">056</span>   public boolean isWeak() {<a 
name="line.56"></a>
+<span class="sourceLineNo">057</span>      return isWeak;<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>    * Returns &lt;jk&gt;true&lt;/jk&gt; 
if the validator string value is &lt;code&gt;*&lt;/code&gt;.<a 
name="line.61"></a>
+<span class="sourceLineNo">062</span>    * @return &lt;jk&gt;true&lt;/jk&gt; 
if the validator string value is &lt;code&gt;*&lt;/code&gt;.<a 
name="line.62"></a>
+<span class="sourceLineNo">063</span>    */<a name="line.63"></a>
+<span class="sourceLineNo">064</span>   public boolean isAny() {<a 
name="line.64"></a>
+<span class="sourceLineNo">065</span>      return "*".equals(value);<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<a name="line.68"></a>
+<span class="sourceLineNo">069</span>   public String toString() {<a 
name="line.69"></a>
+<span class="sourceLineNo">070</span>      return (isWeak ? "W/" : "") + 
(isAny() ? "*" : ('"' + value + '"'));<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>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</pre>
+</div>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/f1f17bc3/content/site/apidocs/src-html/org/apache/juneau/http/Expect.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/http/Expect.html 
b/content/site/apidocs/src-html/org/apache/juneau/http/Expect.html
new file mode 100644
index 0000000..b5974e7
--- /dev/null
+++ b/content/site/apidocs/src-html/org/apache/juneau/http/Expect.html
@@ -0,0 +1,145 @@
+<!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.http;<a 
name="line.13"></a>
+<span class="sourceLineNo">014</span><a name="line.14"></a>
+<span class="sourceLineNo">015</span>/**<a name="line.15"></a>
+<span class="sourceLineNo">016</span> * Represents a parsed 
&lt;l&gt;Expect&lt;/l&gt; HTTP request header.<a name="line.16"></a>
+<span class="sourceLineNo">017</span> * &lt;p&gt;<a name="line.17"></a>
+<span class="sourceLineNo">018</span> * Indicates that particular server 
behaviors are required by the client.<a name="line.18"></a>
+<span class="sourceLineNo">019</span> *<a name="line.19"></a>
+<span class="sourceLineNo">020</span> * &lt;h6 
class='figure'&gt;Example&lt;/h6&gt;<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * &lt;p class='bcode'&gt;<a 
name="line.21"></a>
+<span class="sourceLineNo">022</span> *    Expect: 100-continue<a 
name="line.22"></a>
+<span class="sourceLineNo">023</span> * &lt;/p&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * &lt;h6 class='topic'&gt;RFC2616 
Specification&lt;/h6&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * The Expect request-header field is 
used to indicate that particular server behaviors are required by the client.<a 
name="line.27"></a>
+<span class="sourceLineNo">028</span> * &lt;p class='bcode'&gt;<a 
name="line.28"></a>
+<span class="sourceLineNo">029</span> *    Expect       =  "Expect" ":" 
1#expectation<a name="line.29"></a>
+<span class="sourceLineNo">030</span> *    expectation  =  "100-continue" | 
expectation-extension<a name="line.30"></a>
+<span class="sourceLineNo">031</span> *    expectation-extension =  token [ 
"=" ( token | quoted-string )<a name="line.31"></a>
+<span class="sourceLineNo">032</span> *                             
*expect-params ]<a name="line.32"></a>
+<span class="sourceLineNo">033</span> *    expect-params =  ";" token [ "=" ( 
token | quoted-string ) ]<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * &lt;/p&gt;<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * &lt;p&gt;<a name="line.35"></a>
+<span class="sourceLineNo">036</span> * A server that does not understand or 
is unable to comply with any of the expectation values in the Expect field of 
a<a name="line.36"></a>
+<span class="sourceLineNo">037</span> * request MUST respond with appropriate 
error status.<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * The server MUST respond with a 417 
(Expectation Failed) status if any of the expectations cannot be met or, if 
there<a name="line.38"></a>
+<span class="sourceLineNo">039</span> * are other problems with the request, 
some other 4xx status.<a name="line.39"></a>
+<span class="sourceLineNo">040</span> * &lt;p&gt;<a name="line.40"></a>
+<span class="sourceLineNo">041</span> * This header field is defined with 
extensible syntax to allow for future extensions.<a name="line.41"></a>
+<span class="sourceLineNo">042</span> * If a server receives a request 
containing an Expect field that includes an expectation-extension that it does 
not<a name="line.42"></a>
+<span class="sourceLineNo">043</span> * support, it MUST respond with a 417 
(Expectation Failed) status.<a name="line.43"></a>
+<span class="sourceLineNo">044</span> * &lt;p&gt;<a name="line.44"></a>
+<span class="sourceLineNo">045</span> * Comparison of expectation values is 
case-insensitive for unquoted tokens (including the 100-continue token), and 
is<a name="line.45"></a>
+<span class="sourceLineNo">046</span> * case-sensitive for quoted-string 
expectation-extensions.<a name="line.46"></a>
+<span class="sourceLineNo">047</span> * &lt;p&gt;<a name="line.47"></a>
+<span class="sourceLineNo">048</span> * The Expect mechanism is hop-by-hop: 
that is, an HTTP/1.1 proxy MUST return a 417 (Expectation Failed) status if 
it<a name="line.48"></a>
+<span class="sourceLineNo">049</span> * receives a request with an expectation 
that it cannot meet.<a name="line.49"></a>
+<span class="sourceLineNo">050</span> * However, the Expect request-header 
itself is end-to-end; it MUST be forwarded if the request is forwarded.<a 
name="line.50"></a>
+<span class="sourceLineNo">051</span> * &lt;p&gt;<a name="line.51"></a>
+<span class="sourceLineNo">052</span> * Many older HTTP/1.0 and HTTP/1.1 
applications do not understand the Expect header.<a name="line.52"></a>
+<span class="sourceLineNo">053</span> * &lt;p&gt;<a name="line.53"></a>
+<span class="sourceLineNo">054</span> * See section 8.2.3 for the use of the 
100 (continue) status.<a name="line.54"></a>
+<span class="sourceLineNo">055</span> */<a name="line.55"></a>
+<span class="sourceLineNo">056</span>public final class Expect extends 
HeaderString {<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>    * Returns a parsed 
&lt;code&gt;Expect&lt;/code&gt; header.<a name="line.59"></a>
+<span class="sourceLineNo">060</span>    *<a name="line.60"></a>
+<span class="sourceLineNo">061</span>    * @param value The 
&lt;code&gt;Expect&lt;/code&gt; header string.<a name="line.61"></a>
+<span class="sourceLineNo">062</span>    * @return The parsed 
&lt;code&gt;Expect&lt;/code&gt; header, or &lt;jk&gt;null&lt;/jk&gt; if the 
string was null.<a name="line.62"></a>
+<span class="sourceLineNo">063</span>    */<a name="line.63"></a>
+<span class="sourceLineNo">064</span>   public static Expect forString(String 
value) {<a name="line.64"></a>
+<span class="sourceLineNo">065</span>      if (value == null)<a 
name="line.65"></a>
+<span class="sourceLineNo">066</span>         return null;<a 
name="line.66"></a>
+<span class="sourceLineNo">067</span>      return new Expect(value);<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>   private Expect(String value) {<a 
name="line.70"></a>
+<span class="sourceLineNo">071</span>      super(value);<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>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</pre>
+</div>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/f1f17bc3/content/site/apidocs/src-html/org/apache/juneau/http/Expires.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/http/Expires.html 
b/content/site/apidocs/src-html/org/apache/juneau/http/Expires.html
new file mode 100644
index 0000000..9384909
--- /dev/null
+++ b/content/site/apidocs/src-html/org/apache/juneau/http/Expires.html
@@ -0,0 +1,152 @@
+<!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.http;<a 
name="line.13"></a>
+<span class="sourceLineNo">014</span><a name="line.14"></a>
+<span class="sourceLineNo">015</span>/**<a name="line.15"></a>
+<span class="sourceLineNo">016</span> * Represents a parsed 
&lt;l&gt;Expires&lt;/l&gt; HTTP response header.<a name="line.16"></a>
+<span class="sourceLineNo">017</span> * &lt;p&gt;<a name="line.17"></a>
+<span class="sourceLineNo">018</span> * Gives the date/time after which the 
response is considered stale (in "HTTP-date" format as defined by RFC 7231).<a 
name="line.18"></a>
+<span class="sourceLineNo">019</span> *<a name="line.19"></a>
+<span class="sourceLineNo">020</span> * &lt;h6 
class='figure'&gt;Example&lt;/h6&gt;<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * &lt;p class='bcode'&gt;<a 
name="line.21"></a>
+<span class="sourceLineNo">022</span> *    Expires: Thu, 01 Dec 1994 16:00:00 
GMT<a name="line.22"></a>
+<span class="sourceLineNo">023</span> * &lt;/p&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * &lt;h6 class='topic'&gt;RFC2616 
Specification&lt;/h6&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> * The Expires entity-header field gives 
the date/time after which the response is considered stale.<a 
name="line.26"></a>
+<span class="sourceLineNo">027</span> * A stale cache entry may not normally 
be returned by a cache (either a proxy cache or a user agent cache) unless it 
is<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * first validated with the origin 
server<a name="line.28"></a>
+<span class="sourceLineNo">029</span> * (or with an intermediate cache that 
has a fresh copy of the entity).<a name="line.29"></a>
+<span class="sourceLineNo">030</span> * See section 13.2 for further 
discussion of the expiration model.<a name="line.30"></a>
+<span class="sourceLineNo">031</span> * &lt;p&gt;<a name="line.31"></a>
+<span class="sourceLineNo">032</span> * The presence of an Expires field does 
not imply that the original resource will change or cease to exist at, 
before,<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * or after that time.<a 
name="line.33"></a>
+<span class="sourceLineNo">034</span> * &lt;p&gt;<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * The format is an absolute date and 
time as defined by HTTP-date in section 3.3.1; it MUST be in RFC 1123 date 
format:<a name="line.35"></a>
+<span class="sourceLineNo">036</span> * &lt;p class='bcode'&gt;<a 
name="line.36"></a>
+<span class="sourceLineNo">037</span> *    Expires = "Expires" ":" HTTP-date<a 
name="line.37"></a>
+<span class="sourceLineNo">038</span> * &lt;/p&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span> * &lt;p&gt;<a name="line.39"></a>
+<span class="sourceLineNo">040</span> * An example of its use is...<a 
name="line.40"></a>
+<span class="sourceLineNo">041</span> * &lt;p class='bcode'&gt;<a 
name="line.41"></a>
+<span class="sourceLineNo">042</span> *    Expires: Thu, 01 Dec 1994 16:00:00 
GMT<a name="line.42"></a>
+<span class="sourceLineNo">043</span> * &lt;/p&gt;<a name="line.43"></a>
+<span class="sourceLineNo">044</span> * &lt;p&gt;<a name="line.44"></a>
+<span class="sourceLineNo">045</span> * Note: if a response includes a 
Cache-Control field with the max-age directive (see section 14.9.3), that 
directive<a name="line.45"></a>
+<span class="sourceLineNo">046</span> * overrides the Expires field.<a 
name="line.46"></a>
+<span class="sourceLineNo">047</span> * &lt;p&gt;<a name="line.47"></a>
+<span class="sourceLineNo">048</span> * HTTP/1.1 clients and caches MUST treat 
other invalid date formats, especially including the value "0", as in the 
past<a name="line.48"></a>
+<span class="sourceLineNo">049</span> * (i.e., "already expired").<a 
name="line.49"></a>
+<span class="sourceLineNo">050</span> * &lt;p&gt;<a name="line.50"></a>
+<span class="sourceLineNo">051</span> * To mark a response as "already 
expired," an origin server sends an Expires date that is equal to the Date 
header<a name="line.51"></a>
+<span class="sourceLineNo">052</span> * value.<a name="line.52"></a>
+<span class="sourceLineNo">053</span> * (See the rules for expiration 
calculations in section 13.2.4.)<a name="line.53"></a>
+<span class="sourceLineNo">054</span> * &lt;p&gt;<a name="line.54"></a>
+<span class="sourceLineNo">055</span> * To mark a response as "never expires," 
an origin server sends an Expires date approximately one year from the time<a 
name="line.55"></a>
+<span class="sourceLineNo">056</span> * the response is sent.<a 
name="line.56"></a>
+<span class="sourceLineNo">057</span> * HTTP/1.1 servers SHOULD NOT send 
Expires dates more than one year in the future.<a name="line.57"></a>
+<span class="sourceLineNo">058</span> * &lt;p&gt;<a name="line.58"></a>
+<span class="sourceLineNo">059</span> * The presence of an Expires header 
field with a date value of some time in the future on a response that 
otherwise<a name="line.59"></a>
+<span class="sourceLineNo">060</span> * would by default be non-cacheable 
indicates that the response is cacheable, unless indicated otherwise by a<a 
name="line.60"></a>
+<span class="sourceLineNo">061</span> * Cache-Control header field (section 
14.9).<a name="line.61"></a>
+<span class="sourceLineNo">062</span> */<a name="line.62"></a>
+<span class="sourceLineNo">063</span>public final class Expires extends 
HeaderDate {<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>    * Returns a parsed 
&lt;code&gt;Expires&lt;/code&gt; header.<a name="line.66"></a>
+<span class="sourceLineNo">067</span>    *<a name="line.67"></a>
+<span class="sourceLineNo">068</span>    * @param value The 
&lt;code&gt;Expires&lt;/code&gt; header string.<a name="line.68"></a>
+<span class="sourceLineNo">069</span>    * @return The parsed 
&lt;code&gt;Expires&lt;/code&gt; header, or &lt;jk&gt;null&lt;/jk&gt; if the 
string was null.<a name="line.69"></a>
+<span class="sourceLineNo">070</span>    */<a name="line.70"></a>
+<span class="sourceLineNo">071</span>   public static Expires forString(String 
value) {<a name="line.71"></a>
+<span class="sourceLineNo">072</span>      if (value == null)<a 
name="line.72"></a>
+<span class="sourceLineNo">073</span>         return null;<a 
name="line.73"></a>
+<span class="sourceLineNo">074</span>      return new Expires(value);<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>   private Expires(String value) {<a 
name="line.77"></a>
+<span class="sourceLineNo">078</span>      super(value);<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>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</pre>
+</div>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/f1f17bc3/content/site/apidocs/src-html/org/apache/juneau/http/From.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/src-html/org/apache/juneau/http/From.html 
b/content/site/apidocs/src-html/org/apache/juneau/http/From.html
new file mode 100644
index 0000000..24cd86e
--- /dev/null
+++ b/content/site/apidocs/src-html/org/apache/juneau/http/From.html
@@ -0,0 +1,144 @@
+<!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.http;<a 
name="line.13"></a>
+<span class="sourceLineNo">014</span><a name="line.14"></a>
+<span class="sourceLineNo">015</span>/**<a name="line.15"></a>
+<span class="sourceLineNo">016</span> * Represents a parsed 
&lt;l&gt;From&lt;/l&gt; HTTP request header.<a name="line.16"></a>
+<span class="sourceLineNo">017</span> * &lt;p&gt;<a name="line.17"></a>
+<span class="sourceLineNo">018</span> * The email address of the user making 
the request.<a name="line.18"></a>
+<span class="sourceLineNo">019</span> *<a name="line.19"></a>
+<span class="sourceLineNo">020</span> * &lt;h6 
class='figure'&gt;Example&lt;/h6&gt;<a name="line.20"></a>
+<span class="sourceLineNo">021</span> * &lt;p class='bcode'&gt;<a 
name="line.21"></a>
+<span class="sourceLineNo">022</span> *    From: [email protected]<a 
name="line.22"></a>
+<span class="sourceLineNo">023</span> * &lt;/p&gt;<a name="line.23"></a>
+<span class="sourceLineNo">024</span> *<a name="line.24"></a>
+<span class="sourceLineNo">025</span> * &lt;h6 class='topic'&gt;RFC2616 
Specification&lt;/h6&gt;<a name="line.25"></a>
+<span class="sourceLineNo">026</span> *<a name="line.26"></a>
+<span class="sourceLineNo">027</span> * The From request-header field, if 
given, SHOULD contain an Internet e-mail address for the human user who 
controls<a name="line.27"></a>
+<span class="sourceLineNo">028</span> * the requesting user agent.<a 
name="line.28"></a>
+<span class="sourceLineNo">029</span> * The address SHOULD be machine-usable, 
as defined by "mailbox" in RFC 822 [9] as updated by RFC 1123 [8]:<a 
name="line.29"></a>
+<span class="sourceLineNo">030</span> * &lt;p class='bcode'&gt;<a 
name="line.30"></a>
+<span class="sourceLineNo">031</span> *    From   = "From" ":" mailbox<a 
name="line.31"></a>
+<span class="sourceLineNo">032</span> * &lt;/p&gt;<a name="line.32"></a>
+<span class="sourceLineNo">033</span> * &lt;p&gt;<a name="line.33"></a>
+<span class="sourceLineNo">034</span> * An example is:<a name="line.34"></a>
+<span class="sourceLineNo">035</span> * &lt;p class='bcode'&gt;<a 
name="line.35"></a>
+<span class="sourceLineNo">036</span> *    From: [email protected]<a 
name="line.36"></a>
+<span class="sourceLineNo">037</span> * &lt;/p&gt;<a name="line.37"></a>
+<span class="sourceLineNo">038</span> * &lt;p&gt;<a name="line.38"></a>
+<span class="sourceLineNo">039</span> * This header field MAY be used for 
logging purposes and as a means for identifying the source of invalid or 
unwanted<a name="line.39"></a>
+<span class="sourceLineNo">040</span> * requests.<a name="line.40"></a>
+<span class="sourceLineNo">041</span> * It SHOULD NOT be used as an insecure 
form of access protection.<a name="line.41"></a>
+<span class="sourceLineNo">042</span> * The interpretation of this field is 
that the request is being performed on behalf of the person given, who 
accepts<a name="line.42"></a>
+<span class="sourceLineNo">043</span> * responsibility for the method 
performed.<a name="line.43"></a>
+<span class="sourceLineNo">044</span> * In particular, robot agents SHOULD 
include this header so that the person responsible for running the robot can 
be<a name="line.44"></a>
+<span class="sourceLineNo">045</span> * contacted if problems occur on the 
receiving end.<a name="line.45"></a>
+<span class="sourceLineNo">046</span> * &lt;p&gt;<a name="line.46"></a>
+<span class="sourceLineNo">047</span> * The Internet e-mail address in this 
field MAY be separate from the Internet host which issued the request.<a 
name="line.47"></a>
+<span class="sourceLineNo">048</span> * For example, when a request is passed 
through a proxy the original issuer's address SHOULD be used.<a 
name="line.48"></a>
+<span class="sourceLineNo">049</span> * &lt;p&gt;<a name="line.49"></a>
+<span class="sourceLineNo">050</span> * The client SHOULD NOT send the From 
header field without the user's approval, as it might conflict with the 
user's<a name="line.50"></a>
+<span class="sourceLineNo">051</span> * privacy interests or their site's 
security policy.<a name="line.51"></a>
+<span class="sourceLineNo">052</span> * It is strongly recommended that the 
user be able to disable, enable, and modify the value of this field at any 
time<a name="line.52"></a>
+<span class="sourceLineNo">053</span> * prior to a request.<a 
name="line.53"></a>
+<span class="sourceLineNo">054</span> */<a name="line.54"></a>
+<span class="sourceLineNo">055</span>public final class From extends 
HeaderString {<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>    * Returns a parsed 
&lt;code&gt;From&lt;/code&gt; header.<a name="line.58"></a>
+<span class="sourceLineNo">059</span>    *<a name="line.59"></a>
+<span class="sourceLineNo">060</span>    * @param value The 
&lt;code&gt;From&lt;/code&gt; header string.<a name="line.60"></a>
+<span class="sourceLineNo">061</span>    * @return The parsed 
&lt;code&gt;From&lt;/code&gt; header, or &lt;jk&gt;null&lt;/jk&gt; if the 
string was null.<a name="line.61"></a>
+<span class="sourceLineNo">062</span>    */<a name="line.62"></a>
+<span class="sourceLineNo">063</span>   public static From forString(String 
value) {<a name="line.63"></a>
+<span class="sourceLineNo">064</span>      if (value == null)<a 
name="line.64"></a>
+<span class="sourceLineNo">065</span>         return null;<a 
name="line.65"></a>
+<span class="sourceLineNo">066</span>      return new From(value);<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>   private From(String value) {<a 
name="line.69"></a>
+<span class="sourceLineNo">070</span>      super(value);<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>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</pre>
+</div>
+</body>
+</html>

Reply via email to