<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<title>QueueSender</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="QueueSender";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":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/jms/QueueRequestor.html" title="class in jakarta.jms"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../jakarta/jms/QueueSession.html" title="interface in jakarta.jms"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../index.html?jakarta/jms/QueueSender.html" target="_top">Frames</a></li>
<li><a href="QueueSender.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.jms</div>
<h2 title="Interface QueueSender" class="title">Interface QueueSender</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Superinterfaces:</dt>
<dd>java.lang.AutoCloseable, <a href="../../jakarta/jms/MessageProducer.html" title="interface in jakarta.jms">MessageProducer</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="typeNameLabel">QueueSender</span>
extends <a href="../../jakarta/jms/MessageProducer.html" title="interface in jakarta.jms">MessageProducer</a></pre>
<div class="block">A client uses a <code>QueueSender</code> object to send messages to a queue.

 <p>
 Normally, the <code>Queue</code> is specified when a <code>QueueSender</code> is created. In this case, an attempt to use the
 <code>send</code> methods for an unidentified <code>QueueSender</code> will throw a
 <code>java.lang.UnsupportedOperationException</code>.

 <p>
 If the <code>QueueSender</code> is created with an unidentified <code>Queue</code>, an attempt to use the <code>send</code> methods
 that assume that the <code>Queue</code> has been identified will throw a <code>java.lang.UnsupportedOperationException</code>.

 <p>
 During the execution of its <code>send</code> method, a message must not be changed by other threads within the client. If
 the message is modified, the result of the <code>send</code> is undefined.

 <p>
 After sending a message, a client may retain and modify it without affecting the message that has been sent. The same
 message object may be sent multiple times.

 <p>
 The following message headers are set as part of sending a message: <code>JMSDestination</code>, <code>JMSDeliveryMode</code>,
 <code>JMSExpiration</code>, <code>JMSPriority</code>, <code>JMSMessageID</code> and <code>JMSTimeStamp</code>. When the message is sent,
 the values of these headers are ignored. After the completion of the <code>send</code>, the headers hold the values
 specified by the method sending the message. It is possible for the <code>send</code> method not to set
 <code>JMSMessageID</code> and <code>JMSTimeStamp</code> if the setting of these headers is explicitly disabled by the
 <code>MessageProducer.setDisableMessageID</code> or <code>MessageProducer.setDisableMessageTimestamp</code> method.

 <p>
 Creating a <code>MessageProducer</code> provides the same features as creating a <code>QueueSender</code>. A
 <code>MessageProducer</code> object is recommended when creating new code. The <code>QueueSender</code> is provided to support
 existing code.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>JMS 1.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../jakarta/jms/MessageProducer.html" title="interface in jakarta.jms"><code>MessageProducer</code></a>, 
<a href="../../jakarta/jms/Session.html#createProducer-jakarta.jms.Destination-"><code>Session.createProducer(Destination)</code></a>, 
<a href="../../jakarta/jms/QueueSession.html#createSender-jakarta.jms.Queue-"><code>QueueSession.createSender(Queue)</code></a></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/jms/Queue.html" title="interface in jakarta.jms">Queue</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../jakarta/jms/QueueSender.html#getQueue--">getQueue</a></span>()</code>
<div class="block">Gets the queue associated with this <code>QueueSender</code>.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../jakarta/jms/QueueSender.html#send-jakarta.jms.Message-">send</a></span>(<a href="../../jakarta/jms/Message.html" title="interface in jakarta.jms">Message</a>&nbsp;message)</code>
<div class="block">Sends a message to the queue.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../jakarta/jms/QueueSender.html#send-jakarta.jms.Message-int-int-long-">send</a></span>(<a href="../../jakarta/jms/Message.html" title="interface in jakarta.jms">Message</a>&nbsp;message,
    int&nbsp;deliveryMode,
    int&nbsp;priority,
    long&nbsp;timeToLive)</code>
<div class="block">Sends a message to the queue, specifying delivery mode, priority, and time to live.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../jakarta/jms/QueueSender.html#send-jakarta.jms.Queue-jakarta.jms.Message-">send</a></span>(<a href="../../jakarta/jms/Queue.html" title="interface in jakarta.jms">Queue</a>&nbsp;queue,
    <a href="../../jakarta/jms/Message.html" title="interface in jakarta.jms">Message</a>&nbsp;message)</code>
<div class="block">Sends a message to a queue for an unidentified message producer.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../jakarta/jms/QueueSender.html#send-jakarta.jms.Queue-jakarta.jms.Message-int-int-long-">send</a></span>(<a href="../../jakarta/jms/Queue.html" title="interface in jakarta.jms">Queue</a>&nbsp;queue,
    <a href="../../jakarta/jms/Message.html" title="interface in jakarta.jms">Message</a>&nbsp;message,
    int&nbsp;deliveryMode,
    int&nbsp;priority,
    long&nbsp;timeToLive)</code>
<div class="block">Sends a message to a queue for an unidentified message producer, specifying delivery mode, priority and time to live.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.jakarta.jms.MessageProducer">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;jakarta.jms.<a href="../../jakarta/jms/MessageProducer.html" title="interface in jakarta.jms">MessageProducer</a></h3>
<code><a href="../../jakarta/jms/MessageProducer.html#close--">close</a>, <a href="../../jakarta/jms/MessageProducer.html#getDeliveryDelay--">getDeliveryDelay</a>, <a href="../../jakarta/jms/MessageProducer.html#getDeliveryMode--">getDeliveryMode</a>, <a href="../../jakarta/jms/MessageProducer.html#getDestination--">getDestination</a>, <a href="../../jakarta/jms/MessageProducer.html#getDisableMessageID--">getDisableMessageID</a>, <a href="../../jakarta/jms/MessageProducer.html#getDisableMessageTimestamp--">getDisableMessageTimestamp</a>, <a href="../../jakarta/jms/MessageProducer.html#getPriority--">getPriority</a>, <a href="../../jakarta/jms/MessageProducer.html#getTimeToLive--">getTimeToLive</a>, <a href="../../jakarta/jms/MessageProducer.html#send-jakarta.jms.Destination-jakarta.jms.Message-">send</a>, <a href="../../jakarta/jms/MessageProducer.html#send-jakarta.jms.Destination-jakarta.jms.Message-jakarta.jms.CompletionListener-">send</a>, <a href="../../jakarta/jms/MessageProducer.html#send-jakarta.jms.Destination-jakarta.jms.Message-int-int-long-">send</a>, <a href="../../jakarta/jms/MessageProducer.html#send-jakarta.jms.Destination-jakarta.jms.Message-int-int-long-jakarta.jms.CompletionListener-">send</a>, <a href="../../jakarta/jms/MessageProducer.html#send-jakarta.jms.Message-jakarta.jms.CompletionListener-">send</a>, <a href="../../jakarta/jms/MessageProducer.html#send-jakarta.jms.Message-int-int-long-jakarta.jms.CompletionListener-">send</a>, <a href="../../jakarta/jms/MessageProducer.html#setDeliveryDelay-long-">setDeliveryDelay</a>, <a href="../../jakarta/jms/MessageProducer.html#setDeliveryMode-int-">setDeliveryMode</a>, <a href="../../jakarta/jms/MessageProducer.html#setDisableMessageID-boolean-">setDisableMessageID</a>, <a href="../../jakarta/jms/MessageProducer.html#setDisableMessageTimestamp-boolean-">setDisableMessageTimestamp</a>, <a href="../../jakarta/jms/MessageProducer.html#setPriority-int-">setPriority</a>, <a href="../../jakarta/jms/MessageProducer.html#setTimeToLive-long-">setTimeToLive</a></code></li>
</ul>
</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="getQueue--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getQueue</h4>
<pre><a href="../../jakarta/jms/Queue.html" title="interface in jakarta.jms">Queue</a>&nbsp;getQueue()
        throws <a href="../../jakarta/jms/JMSException.html" title="class in jakarta.jms">JMSException</a></pre>
<div class="block">Gets the queue associated with this <code>QueueSender</code>.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this sender's queue</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../jakarta/jms/JMSException.html" title="class in jakarta.jms">JMSException</a></code> - if the Jakarta Messaging provider fails to get the queue for this <code>QueueSender</code> due to some internal
 error.</dd>
</dl>
</li>
</ul>
<a name="send-jakarta.jms.Message-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>send</h4>
<pre>void&nbsp;send(<a href="../../jakarta/jms/Message.html" title="interface in jakarta.jms">Message</a>&nbsp;message)
   throws <a href="../../jakarta/jms/JMSException.html" title="class in jakarta.jms">JMSException</a></pre>
<div class="block">Sends a message to the queue. Uses the <code>QueueSender</code>'s default delivery mode, priority, and time to live.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../jakarta/jms/MessageProducer.html#send-jakarta.jms.Message-">send</a></code>&nbsp;in interface&nbsp;<code><a href="../../jakarta/jms/MessageProducer.html" title="interface in jakarta.jms">MessageProducer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>message</code> - the message to send</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../jakarta/jms/JMSException.html" title="class in jakarta.jms">JMSException</a></code> - if the Jakarta Messaging provider fails to send the message due to some internal error.</dd>
<dd><code><a href="../../jakarta/jms/MessageFormatException.html" title="class in jakarta.jms">MessageFormatException</a></code> - if an invalid message is specified.</dd>
<dd><code><a href="../../jakarta/jms/InvalidDestinationException.html" title="class in jakarta.jms">InvalidDestinationException</a></code> - if a client uses this method with a <code>QueueSender</code> with an invalid queue.</dd>
<dd><code>java.lang.UnsupportedOperationException</code> - if a client uses this method with a <code>QueueSender</code> that did
 not specify a queue at creation time.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../jakarta/jms/MessageProducer.html#getDeliveryMode--"><code>MessageProducer.getDeliveryMode()</code></a>, 
<a href="../../jakarta/jms/MessageProducer.html#getTimeToLive--"><code>MessageProducer.getTimeToLive()</code></a>, 
<a href="../../jakarta/jms/MessageProducer.html#getPriority--"><code>MessageProducer.getPriority()</code></a></dd>
</dl>
</li>
</ul>
<a name="send-jakarta.jms.Message-int-int-long-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>send</h4>
<pre>void&nbsp;send(<a href="../../jakarta/jms/Message.html" title="interface in jakarta.jms">Message</a>&nbsp;message,
          int&nbsp;deliveryMode,
          int&nbsp;priority,
          long&nbsp;timeToLive)
   throws <a href="../../jakarta/jms/JMSException.html" title="class in jakarta.jms">JMSException</a></pre>
<div class="block">Sends a message to the queue, specifying delivery mode, priority, and time to live.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../jakarta/jms/MessageProducer.html#send-jakarta.jms.Message-int-int-long-">send</a></code>&nbsp;in interface&nbsp;<code><a href="../../jakarta/jms/MessageProducer.html" title="interface in jakarta.jms">MessageProducer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>message</code> - the message to send</dd>
<dd><code>deliveryMode</code> - the delivery mode to use</dd>
<dd><code>priority</code> - the priority for this message</dd>
<dd><code>timeToLive</code> - the message's lifetime (in milliseconds)</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../jakarta/jms/JMSException.html" title="class in jakarta.jms">JMSException</a></code> - if the Jakarta Messaging provider fails to send the message due to some internal error.</dd>
<dd><code><a href="../../jakarta/jms/MessageFormatException.html" title="class in jakarta.jms">MessageFormatException</a></code> - if an invalid message is specified.</dd>
<dd><code><a href="../../jakarta/jms/InvalidDestinationException.html" title="class in jakarta.jms">InvalidDestinationException</a></code> - if a client uses this method with a <code>QueueSender</code> with an invalid queue.</dd>
<dd><code>java.lang.UnsupportedOperationException</code> - if a client uses this method with a <code>QueueSender</code> that did
 not specify a queue at creation time.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../jakarta/jms/Session.html#createProducer-jakarta.jms.Destination-"><code>Session.createProducer(jakarta.jms.Destination)</code></a></dd>
</dl>
</li>
</ul>
<a name="send-jakarta.jms.Queue-jakarta.jms.Message-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>send</h4>
<pre>void&nbsp;send(<a href="../../jakarta/jms/Queue.html" title="interface in jakarta.jms">Queue</a>&nbsp;queue,
          <a href="../../jakarta/jms/Message.html" title="interface in jakarta.jms">Message</a>&nbsp;message)
   throws <a href="../../jakarta/jms/JMSException.html" title="class in jakarta.jms">JMSException</a></pre>
<div class="block">Sends a message to a queue for an unidentified message producer. Uses the <code>QueueSender</code>'s default delivery
 mode, priority, and time to live.

 <p>
 Typically, a message producer is assigned a queue at creation time; however, the Jakarta Messaging API also supports unidentified
 message producers, which require that the queue be supplied every time a message is sent.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>queue</code> - the queue to send this message to</dd>
<dd><code>message</code> - the message to send</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../jakarta/jms/JMSException.html" title="class in jakarta.jms">JMSException</a></code> - if the Jakarta Messaging provider fails to send the message due to some internal error.</dd>
<dd><code><a href="../../jakarta/jms/MessageFormatException.html" title="class in jakarta.jms">MessageFormatException</a></code> - if an invalid message is specified.</dd>
<dd><code><a href="../../jakarta/jms/InvalidDestinationException.html" title="class in jakarta.jms">InvalidDestinationException</a></code> - if a client uses this method with an invalid queue.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../jakarta/jms/MessageProducer.html#getDeliveryMode--"><code>MessageProducer.getDeliveryMode()</code></a>, 
<a href="../../jakarta/jms/MessageProducer.html#getTimeToLive--"><code>MessageProducer.getTimeToLive()</code></a>, 
<a href="../../jakarta/jms/MessageProducer.html#getPriority--"><code>MessageProducer.getPriority()</code></a></dd>
</dl>
</li>
</ul>
<a name="send-jakarta.jms.Queue-jakarta.jms.Message-int-int-long-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>send</h4>
<pre>void&nbsp;send(<a href="../../jakarta/jms/Queue.html" title="interface in jakarta.jms">Queue</a>&nbsp;queue,
          <a href="../../jakarta/jms/Message.html" title="interface in jakarta.jms">Message</a>&nbsp;message,
          int&nbsp;deliveryMode,
          int&nbsp;priority,
          long&nbsp;timeToLive)
   throws <a href="../../jakarta/jms/JMSException.html" title="class in jakarta.jms">JMSException</a></pre>
<div class="block">Sends a message to a queue for an unidentified message producer, specifying delivery mode, priority and time to live.

 <p>
 Typically, a message producer is assigned a queue at creation time; however, the Jakarta Messaging API also supports unidentified
 message producers, which require that the queue be supplied every time a message is sent.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>queue</code> - the queue to send this message to</dd>
<dd><code>message</code> - the message to send</dd>
<dd><code>deliveryMode</code> - the delivery mode to use</dd>
<dd><code>priority</code> - the priority for this message</dd>
<dd><code>timeToLive</code> - the message's lifetime (in milliseconds)</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../jakarta/jms/JMSException.html" title="class in jakarta.jms">JMSException</a></code> - if the Jakarta Messaging provider fails to send the message due to some internal error.</dd>
<dd><code><a href="../../jakarta/jms/MessageFormatException.html" title="class in jakarta.jms">MessageFormatException</a></code> - if an invalid message is specified.</dd>
<dd><code><a href="../../jakarta/jms/InvalidDestinationException.html" title="class in jakarta.jms">InvalidDestinationException</a></code> - if a client uses this method with an invalid queue.</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/jms/QueueRequestor.html" title="class in jakarta.jms"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../jakarta/jms/QueueSession.html" title="interface in jakarta.jms"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../index.html?jakarta/jms/QueueSender.html" target="_top">Frames</a></li>
<li><a href="QueueSender.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>
