blob: 838409d5092c6f5a197e20f178ade15897f67abf [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<title>PushBuilder</title>
<link rel="stylesheet" type="text/css" href="../../../stylesheet.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="PushBuilder";
}
}
catch(err) {
}
//-->
var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6,"i7":6,"i8":6,"i9":6,"i10":6,"i11":6,"i12":6,"i13":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</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="../../../jakarta/servlet/http/Part.html" title="interface in jakarta.servlet.http"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../jakarta/servlet/http/WebConnection.html" title="interface in jakarta.servlet.http"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?jakarta/servlet/http/PushBuilder.html" target="_top">Frames</a></li>
<li><a href="PushBuilder.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>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</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">jakarta.servlet.http</div>
<h2 title="Interface PushBuilder" class="title">Interface PushBuilder</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public interface <span class="typeNameLabel">PushBuilder</span></pre>
<div class="block">Build a request to be pushed.
According section 8.2 of RFC 7540, a promised request must be cacheable and safe without a request body.
<p>
A PushBuilder is obtained by calling <a href="../../../jakarta/servlet/http/HttpServletRequest.html#newPushBuilder--"><code>HttpServletRequest.newPushBuilder()</code></a>. Each call to this method will a new
instance of a PushBuilder based off the current <code>HttpServletRequest</code>, or null. Any mutations to the returned PushBuilder are not reflected on future returns.
</p>
<p>
The instance is initialized as follows:
</p>
<ul>
<li>The method is initialized to "GET"</li>
<li>The existing request headers of the current <a href="../../../jakarta/servlet/http/HttpServletRequest.html" title="interface in jakarta.servlet.http"><code>HttpServletRequest</code></a> are added to the builder, except for:
<ul>
<li>Conditional headers (defined in RFC 7232)
<li>Range headers
<li>Expect headers
<li>Authorization headers
<li>Referrer headers
</ul>
</li>
<li>If the request was authenticated, an Authorization header will be set with a container generated token that will
result in equivalent Authorization for the pushed request.</li>
<li>The session ID will be the value returned from <a href="../../../jakarta/servlet/http/HttpServletRequest.html#getRequestedSessionId--"><code>HttpServletRequest.getRequestedSessionId()</code></a>, unless
<a href="../../../jakarta/servlet/http/HttpServletRequest.html#getSession-boolean-"><code>HttpServletRequest.getSession(boolean)</code></a> has previously been called to create a new <a href="../../../jakarta/servlet/http/HttpSession.html" title="interface in jakarta.servlet.http"><code>HttpSession</code></a> prior
to the call to create the <code>PushBuilder</code>, in which case the new session ID will be used as the PushBuilder's
requested session ID. Note that the session ID returned from the request can effectively come from one of two
"sources": a cookie or the URL (as specified in <a href="../../../jakarta/servlet/http/HttpServletRequest.html#isRequestedSessionIdFromCookie--"><code>HttpServletRequest.isRequestedSessionIdFromCookie()</code></a> and
<a href="../../../jakarta/servlet/http/HttpServletRequest.html#isRequestedSessionIdFromURL--"><code>HttpServletRequest.isRequestedSessionIdFromURL()</code></a>, respectively). The session ID for the <code>PushBuilder</code>
will also come from the same source as the request.</li>
<li>The Referer(sic) header will be set to <a href="../../../jakarta/servlet/http/HttpServletRequest.html#getRequestURL--"><code>HttpServletRequest.getRequestURL()</code></a> plus any
<a href="../../../jakarta/servlet/http/HttpServletRequest.html#getQueryString--"><code>HttpServletRequest.getQueryString()</code></a></li>
<li>If <a href="../../../jakarta/servlet/http/HttpServletResponse.html#addCookie-jakarta.servlet.http.Cookie-"><code>HttpServletResponse.addCookie(Cookie)</code></a> has been called on the associated response, then a corresponding
Cookie header will be added to the PushBuilder, unless the <a href="../../../jakarta/servlet/http/Cookie.html#getMaxAge--"><code>Cookie.getMaxAge()</code></a> is &lt;=0, in which case the
Cookie will be removed from the builder.</li>
</ul>
<p>
The <a href="../../../jakarta/servlet/http/PushBuilder.html#path-java.lang.String-"><code>path(java.lang.String)</code></a> method must be called on the <code>PushBuilder</code> instance before the call to <a href="../../../jakarta/servlet/http/PushBuilder.html#push--"><code>push()</code></a>. Failure
to do so must cause an exception to be thrown from <a href="../../../jakarta/servlet/http/PushBuilder.html#push--"><code>push()</code></a>, as specified in that method.
</p>
<p>
A PushBuilder can be customized by chained calls to mutator methods before the <a href="../../../jakarta/servlet/http/PushBuilder.html#push--"><code>push()</code></a> method is called to
initiate an asynchronous push request with the current state of the builder. After the call to <a href="../../../jakarta/servlet/http/PushBuilder.html#push--"><code>push()</code></a>, the
builder may be reused for another push, however the implementation must make it so the <a href="../../../jakarta/servlet/http/PushBuilder.html#path-java.lang.String-"><code>path(String)</code></a> and
conditional headers (defined in RFC 7232) values are cleared before returning from <a href="../../../jakarta/servlet/http/PushBuilder.html#push--"><code>push()</code></a>. All other values
are retained over calls to <a href="../../../jakarta/servlet/http/PushBuilder.html#push--"><code>push()</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>Servlet 4.0</dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code><a href="../../../jakarta/servlet/http/PushBuilder.html" title="interface in jakarta.servlet.http">PushBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/servlet/http/PushBuilder.html#addHeader-java.lang.String-java.lang.String-">addHeader</a></span>(java.lang.String&nbsp;name,
java.lang.String&nbsp;value)</code>
<div class="block">
Add a request header to be used for the push.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/servlet/http/PushBuilder.html#getHeader-java.lang.String-">getHeader</a></span>(java.lang.String&nbsp;name)</code>
<div class="block">Return the header of the given name to be used for the push.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>java.util.Set&lt;java.lang.String&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/servlet/http/PushBuilder.html#getHeaderNames--">getHeaderNames</a></span>()</code>
<div class="block">Return the set of header to be used for the push.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/servlet/http/PushBuilder.html#getMethod--">getMethod</a></span>()</code>
<div class="block">Return the method to be used for the push.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/servlet/http/PushBuilder.html#getPath--">getPath</a></span>()</code>
<div class="block">Return the URI path to be used for the push.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/servlet/http/PushBuilder.html#getQueryString--">getQueryString</a></span>()</code>
<div class="block">Return the query string to be used for the push.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/servlet/http/PushBuilder.html#getSessionId--">getSessionId</a></span>()</code>
<div class="block">Return the SessionID to be used for the push.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code><a href="../../../jakarta/servlet/http/PushBuilder.html" title="interface in jakarta.servlet.http">PushBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/servlet/http/PushBuilder.html#method-java.lang.String-">method</a></span>(java.lang.String&nbsp;method)</code>
<div class="block">
Set the method to be used for the push.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><a href="../../../jakarta/servlet/http/PushBuilder.html" title="interface in jakarta.servlet.http">PushBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/servlet/http/PushBuilder.html#path-java.lang.String-">path</a></span>(java.lang.String&nbsp;path)</code>
<div class="block">Set the URI path to be used for the push.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/servlet/http/PushBuilder.html#push--">push</a></span>()</code>
<div class="block">Push a resource given the current state of the builder, the method must be non-blocking.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="../../../jakarta/servlet/http/PushBuilder.html" title="interface in jakarta.servlet.http">PushBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/servlet/http/PushBuilder.html#queryString-java.lang.String-">queryString</a></span>(java.lang.String&nbsp;queryString)</code>
<div class="block">Set the query string to be used for the push.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code><a href="../../../jakarta/servlet/http/PushBuilder.html" title="interface in jakarta.servlet.http">PushBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/servlet/http/PushBuilder.html#removeHeader-java.lang.String-">removeHeader</a></span>(java.lang.String&nbsp;name)</code>
<div class="block">
Remove the named request header.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code><a href="../../../jakarta/servlet/http/PushBuilder.html" title="interface in jakarta.servlet.http">PushBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/servlet/http/PushBuilder.html#sessionId-java.lang.String-">sessionId</a></span>(java.lang.String&nbsp;sessionId)</code>
<div class="block">Set the SessionID to be used for the push.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code><a href="../../../jakarta/servlet/http/PushBuilder.html" title="interface in jakarta.servlet.http">PushBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../jakarta/servlet/http/PushBuilder.html#setHeader-java.lang.String-java.lang.String-">setHeader</a></span>(java.lang.String&nbsp;name,
java.lang.String&nbsp;value)</code>
<div class="block">
Set a request header to be used for the push.</div>
</td>
</tr>
</table>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="method-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>method</h4>
<pre><a href="../../../jakarta/servlet/http/PushBuilder.html" title="interface in jakarta.servlet.http">PushBuilder</a>&nbsp;method(java.lang.String&nbsp;method)</pre>
<div class="block"><p>
Set the method to be used for the push.
</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>method</code> - the method to be used for the push.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this builder.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.NullPointerException</code> - if the argument is <code>null</code></dd>
<dd><code>java.lang.IllegalArgumentException</code> - if the argument is the empty String, or any non-cacheable or unsafe methods defined
in RFC 7231, which are POST, PUT, DELETE, CONNECT, OPTIONS and TRACE.</dd>
</dl>
</li>
</ul>
<a name="queryString-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>queryString</h4>
<pre><a href="../../../jakarta/servlet/http/PushBuilder.html" title="interface in jakarta.servlet.http">PushBuilder</a>&nbsp;queryString(java.lang.String&nbsp;queryString)</pre>
<div class="block">Set the query string to be used for the push.
The query string will be appended to any query String included in a call to <a href="../../../jakarta/servlet/http/PushBuilder.html#path-java.lang.String-"><code>path(String)</code></a>. Any duplicate
parameters must be preserved. This method should be used instead of a query in <a href="../../../jakarta/servlet/http/PushBuilder.html#path-java.lang.String-"><code>path(String)</code></a> when multiple
<a href="../../../jakarta/servlet/http/PushBuilder.html#push--"><code>push()</code></a> calls are to be made with the same query string.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>queryString</code> - the query string to be used for the push.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this builder.</dd>
</dl>
</li>
</ul>
<a name="sessionId-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>sessionId</h4>
<pre><a href="../../../jakarta/servlet/http/PushBuilder.html" title="interface in jakarta.servlet.http">PushBuilder</a>&nbsp;sessionId(java.lang.String&nbsp;sessionId)</pre>
<div class="block">Set the SessionID to be used for the push. The session ID will be set in the same way it was on the associated
request (ie as a cookie if the associated request used a cookie, or as a url parameter if the associated request used
a url parameter). Defaults to the requested session ID or any newly assigned session id from a newly created session.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>sessionId</code> - the SessionID to be used for the push.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this builder.</dd>
</dl>
</li>
</ul>
<a name="setHeader-java.lang.String-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setHeader</h4>
<pre><a href="../../../jakarta/servlet/http/PushBuilder.html" title="interface in jakarta.servlet.http">PushBuilder</a>&nbsp;setHeader(java.lang.String&nbsp;name,
java.lang.String&nbsp;value)</pre>
<div class="block"><p>
Set a request header to be used for the push. If the builder has an existing header with the same name, its value is
overwritten.
</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - The header name to set</dd>
<dd><code>value</code> - The header value to set</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this builder.</dd>
</dl>
</li>
</ul>
<a name="addHeader-java.lang.String-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addHeader</h4>
<pre><a href="../../../jakarta/servlet/http/PushBuilder.html" title="interface in jakarta.servlet.http">PushBuilder</a>&nbsp;addHeader(java.lang.String&nbsp;name,
java.lang.String&nbsp;value)</pre>
<div class="block"><p>
Add a request header to be used for the push.
</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - The header name to add</dd>
<dd><code>value</code> - The header value to add</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this builder.</dd>
</dl>
</li>
</ul>
<a name="removeHeader-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeHeader</h4>
<pre><a href="../../../jakarta/servlet/http/PushBuilder.html" title="interface in jakarta.servlet.http">PushBuilder</a>&nbsp;removeHeader(java.lang.String&nbsp;name)</pre>
<div class="block"><p>
Remove the named request header. If the header does not exist, take no action.
</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - The name of the header to remove</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this builder.</dd>
</dl>
</li>
</ul>
<a name="path-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>path</h4>
<pre><a href="../../../jakarta/servlet/http/PushBuilder.html" title="interface in jakarta.servlet.http">PushBuilder</a>&nbsp;path(java.lang.String&nbsp;path)</pre>
<div class="block">Set the URI path to be used for the push. The path may start with "/" in which case it is treated as an absolute
path, otherwise it is relative to the context path of the associated request. There is no path default and
<a href="../../../jakarta/servlet/http/PushBuilder.html#path-java.lang.String-"><code>path(String)</code></a> must be called before every call to <a href="../../../jakarta/servlet/http/PushBuilder.html#push--"><code>push()</code></a>. If a query string is present in the
argument <code>path</code>, its contents must be merged with the contents previously passed to <a href="../../../jakarta/servlet/http/PushBuilder.html#queryString-java.lang.String-"><code>queryString(java.lang.String)</code></a>,
preserving duplicates.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>path</code> - the URI path to be used for the push, which may include a query string.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this builder.</dd>
</dl>
</li>
</ul>
<a name="push--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>push</h4>
<pre>void&nbsp;push()</pre>
<div class="block">Push a resource given the current state of the builder, the method must be non-blocking.
<p>
Push a resource based on the current state of the PushBuilder. Calling this method does not guarantee the resource
will actually be pushed, since it is possible the client can decline acceptance of the pushed resource using the
underlying HTTP/2 protocol.
</p>
<p>
If the builder has a session ID, then the pushed request will include the session ID either as a Cookie or as a URI
parameter as appropriate. The builders query string is merged with any passed query string.
</p>
<p>
Before returning from this method, the builder has its path, conditional headers (defined in RFC 7232) nulled. All
other fields are left as is for possible reuse in another push.
</p></div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalStateException</code> - if there was no call to <a href="../../../jakarta/servlet/http/PushBuilder.html#path-java.lang.String-"><code>path(java.lang.String)</code></a> on this instance either between its instantiation
or the last call to <code>push()</code> that did not throw an IllegalStateException.</dd>
</dl>
</li>
</ul>
<a name="getMethod--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMethod</h4>
<pre>java.lang.String&nbsp;getMethod()</pre>
<div class="block">Return the method to be used for the push.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the method to be used for the push.</dd>
</dl>
</li>
</ul>
<a name="getQueryString--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getQueryString</h4>
<pre>java.lang.String&nbsp;getQueryString()</pre>
<div class="block">Return the query string to be used for the push.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the query string to be used for the push.</dd>
</dl>
</li>
</ul>
<a name="getSessionId--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSessionId</h4>
<pre>java.lang.String&nbsp;getSessionId()</pre>
<div class="block">Return the SessionID to be used for the push.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the SessionID to be used for the push.</dd>
</dl>
</li>
</ul>
<a name="getHeaderNames--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHeaderNames</h4>
<pre>java.util.Set&lt;java.lang.String&gt;&nbsp;getHeaderNames()</pre>
<div class="block">Return the set of header to be used for the push.
<p>
The returned set is not backed by the <code>PushBuilder</code> object, so changes in the returned set are not reflected in
the <code>PushBuilder</code> object, and vice-versa.
</p></div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the set of header to be used for the push.</dd>
</dl>
</li>
</ul>
<a name="getHeader-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHeader</h4>
<pre>java.lang.String&nbsp;getHeader(java.lang.String&nbsp;name)</pre>
<div class="block">Return the header of the given name to be used for the push.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the name of the header</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the header of the given name to be used for the push.</dd>
</dl>
</li>
</ul>
<a name="getPath--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getPath</h4>
<pre>java.lang.String&nbsp;getPath()</pre>
<div class="block">Return the URI path to be used for the push.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the URI path to be used for the push.</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="../../../jakarta/servlet/http/Part.html" title="interface in jakarta.servlet.http"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../jakarta/servlet/http/WebConnection.html" title="interface in jakarta.servlet.http"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?jakarta/servlet/http/PushBuilder.html" target="_top">Frames</a></li>
<li><a href="PushBuilder.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>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>