<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_111) on Tue Mar 21 15:27:01 PDT 2017 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Deprecated List (Jetty :: Project 9.3.17.v20170317 API)</title>
<meta name="date" content="2017-03-21">
<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="Deprecated List (Jetty :: Project 9.3.17.v20170317 API)";
        }
    }
    catch(err) {
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="overview-summary.html">Overview</a></li>
<li>Package</li>
<li>Class</li>
<li>Use</li>
<li><a href="overview-tree.html">Tree</a></li>
<li class="navBarCell1Rev">Deprecated</li>
<li><a href="index-all.html">Index</a></li>
<li><a href="help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><script type="text/javascript">                     var _gaq = _gaq || [];                     _gaq.push(['_setAccount', 'UA-1149868-7']);                     _gaq.push(['_trackPageview']);                     (function() {                       var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;                       ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';                       var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);                     })();                  </script></div>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?deprecated-list.html" target="_top">Frames</a></li>
<li><a href="deprecated-list.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>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h1 title="Deprecated API" class="title">Deprecated API</h1>
<h2 title="Contents">Contents</h2>
<ul>
<li><a href="#interface">Deprecated Interfaces</a></li>
<li><a href="#class">Deprecated Classes</a></li>
<li><a href="#field">Deprecated Fields</a></li>
<li><a href="#method">Deprecated Methods</a></li>
<li><a href="#constructor">Deprecated Constructors</a></li>
</ul>
</div>
<div class="contentContainer"><a name="interface">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Interfaces table, listing deprecated interfaces, and an explanation">
<caption><span>Deprecated Interfaces</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Interface and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/servlet/ServletContextHandler.Decorator.html" title="interface in org.eclipse.jetty.servlet">org.eclipse.jetty.servlet.ServletContextHandler.Decorator</a>
<div class="block"><span class="deprecationComment">use new <a href="org/eclipse/jetty/util/Decorator.html" title="interface in org.eclipse.jetty.util"><code>Decorator</code></a></span></div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="class">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Classes table, listing deprecated classes, and an explanation">
<caption><span>Deprecated Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Class and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/servlets/AsyncGzipFilter.html" title="class in org.eclipse.jetty.servlets">org.eclipse.jetty.servlets.AsyncGzipFilter</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/security/jaspi/modules/BasicAuthModule.html" title="class in org.eclipse.jetty.security.jaspi.modules">org.eclipse.jetty.security.jaspi.modules.BasicAuthModule</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/util/BlockingCallback.html" title="class in org.eclipse.jetty.util">org.eclipse.jetty.util.BlockingCallback</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/util/Callback.Adapter.html" title="class in org.eclipse.jetty.util">org.eclipse.jetty.util.Callback.Adapter</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/security/jaspi/modules/ClientCertAuthModule.html" title="class in org.eclipse.jetty.security.jaspi.modules">org.eclipse.jetty.security.jaspi.modules.ClientCertAuthModule</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/client/ConnectionPool.html" title="class in org.eclipse.jetty.client">org.eclipse.jetty.client.ConnectionPool</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/client/DuplexConnectionPool.html" title="class in org.eclipse.jetty.client"><code>DuplexConnectionPool</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/server/ConnectorStatistics.html" title="class in org.eclipse.jetty.server">org.eclipse.jetty.server.ConnectorStatistics</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/server/ServerConnectionStatistics.html" title="class in org.eclipse.jetty.server"><code>ServerConnectionStatistics</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/server/handler/DebugHandler.html" title="class in org.eclipse.jetty.server.handler">org.eclipse.jetty.server.handler.DebugHandler</a>
<div class="block"><span class="deprecationComment">Use <a href="org/eclipse/jetty/server/DebugListener.html" title="class in org.eclipse.jetty.server"><code>DebugListener</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/security/jaspi/modules/DigestAuthModule.html" title="class in org.eclipse.jetty.security.jaspi.modules">org.eclipse.jetty.security.jaspi.modules.DigestAuthModule</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/util/resource/FileResource.html" title="class in org.eclipse.jetty.util.resource">org.eclipse.jetty.util.resource.FileResource</a>
<div class="block"><span class="deprecationComment">Use <a href="org/eclipse/jetty/util/resource/PathResource.html" title="class in org.eclipse.jetty.util.resource"><code>PathResource</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/security/jaspi/modules/FormAuthModule.html" title="class in org.eclipse.jetty.security.jaspi.modules">org.eclipse.jetty.security.jaspi.modules.FormAuthModule</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/servlets/GzipFilter.html" title="class in org.eclipse.jetty.servlets">org.eclipse.jetty.servlets.GzipFilter</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/servlets/IncludableGzipFilter.html" title="class in org.eclipse.jetty.servlets">org.eclipse.jetty.servlets.IncludableGzipFilter</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/server/handler/IPAccessHandler.html" title="class in org.eclipse.jetty.server.handler">org.eclipse.jetty.server.handler.IPAccessHandler</a>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/util/IPAddressMap.html" title="class in org.eclipse.jetty.util">org.eclipse.jetty.util.IPAddressMap</a>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/servlets/MultiPartFilter.html" title="class in org.eclipse.jetty.servlets">org.eclipse.jetty.servlets.MultiPartFilter</a>
<div class="block"><span class="deprecationComment">See servlet 3.0 apis like javax.servlet.http.HttpServletRequest.getParts()</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/server/nio/NetworkTrafficSelectChannelConnector.html" title="class in org.eclipse.jetty.server.nio">org.eclipse.jetty.server.nio.NetworkTrafficSelectChannelConnector</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/server/NetworkTrafficServerConnector.html" title="class in org.eclipse.jetty.server"><code>NetworkTrafficServerConnector</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/http/PathMap.html" title="class in org.eclipse.jetty.http">org.eclipse.jetty.http.PathMap</a>
<div class="block"><span class="deprecationComment">replaced with <a href="org/eclipse/jetty/http/pathmap/PathMappings.html" title="class in org.eclipse.jetty.http.pathmap"><code>PathMappings</code></a> (this class will be removed in Jetty 10)</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/websocket/server/pathmap/PathSpec.html" title="class in org.eclipse.jetty.websocket.server.pathmap">org.eclipse.jetty.websocket.server.pathmap.PathSpec</a>
<div class="block"><span class="deprecationComment">moved to jetty-http <a href="org/eclipse/jetty/http/pathmap/PathSpec.html" title="class in org.eclipse.jetty.http.pathmap"><code>PathSpec</code></a> (this facade will be removed in Jetty 9.4)</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/websocket/server/pathmap/RegexPathSpec.html" title="class in org.eclipse.jetty.websocket.server.pathmap">org.eclipse.jetty.websocket.server.pathmap.RegexPathSpec</a>
<div class="block"><span class="deprecationComment">moved to jetty-http <a href="org/eclipse/jetty/http/pathmap/RegexPathSpec.html" title="class in org.eclipse.jetty.http.pathmap"><code>RegexPathSpec</code></a> (this facade will be removed in Jetty 9.4)</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/websocket/server/pathmap/ServletPathSpec.html" title="class in org.eclipse.jetty.websocket.server.pathmap">org.eclipse.jetty.websocket.server.pathmap.ServletPathSpec</a>
<div class="block"><span class="deprecationComment">moved to jetty-http <a href="org/eclipse/jetty/http/pathmap/ServletPathSpec.html" title="class in org.eclipse.jetty.http.pathmap"><code>ServletPathSpec</code></a> (this facade will be removed in Jetty 9.4)</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/websocket/server/ServletWebSocketRequest.html" title="class in org.eclipse.jetty.websocket.server">org.eclipse.jetty.websocket.server.ServletWebSocketRequest</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/websocket/servlet/ServletUpgradeRequest.html" title="class in org.eclipse.jetty.websocket.servlet"><code>ServletUpgradeRequest</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/websocket/server/ServletWebSocketResponse.html" title="class in org.eclipse.jetty.websocket.server">org.eclipse.jetty.websocket.server.ServletWebSocketResponse</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/websocket/servlet/ServletUpgradeResponse.html" title="class in org.eclipse.jetty.websocket.servlet"><code>ServletUpgradeResponse</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/annotations/Util.html" title="class in org.eclipse.jetty.annotations">org.eclipse.jetty.annotations.Util</a>
<div class="block"><span class="deprecationComment">and replaced by extra methods in <a href="org/eclipse/jetty/annotations/ResourceAnnotationHandler.html" title="class in org.eclipse.jetty.annotations"><code>ResourceAnnotationHandler</code></a>, <a href="org/eclipse/jetty/annotations/PreDestroyAnnotationHandler.html" title="class in org.eclipse.jetty.annotations"><code>PreDestroyAnnotationHandler</code></a>, <a href="org/eclipse/jetty/annotations/PostConstructAnnotationHandler.html" title="class in org.eclipse.jetty.annotations"><code>PostConstructAnnotationHandler</code></a> and <a href="org/eclipse/jetty/http/pathmap/ServletPathSpec.html" title="class in org.eclipse.jetty.http.pathmap"><code>ServletPathSpec</code></a></span></div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="field">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Fields table, listing deprecated fields, and an explanation">
<caption><span>Deprecated Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Field and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/util/StringUtil.html#Z:Z__LINE_SEPARATOR">org.eclipse.jetty.util.StringUtil.__LINE_SEPARATOR</a>
<div class="block"><span class="deprecationComment">use <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/System.html?is-external=true#lineSeparator--" title="class or interface in java.lang"><code>System.lineSeparator()</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/http/HttpFields.html#Z:Z__separators">org.eclipse.jetty.http.HttpFields.__separators</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/http/HttpParser.html#Z:Z__STRICT">org.eclipse.jetty.http.HttpParser.__STRICT</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/osgi/boot/OSGiWebappConstants.html#JETTY_WAR_FOLDER_PATH">org.eclipse.jetty.osgi.boot.OSGiWebappConstants.JETTY_WAR_FOLDER_PATH</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/osgi/boot/OSGiWebappConstants.html#JETTY_WAR_FRAGMENT_FOLDER_PATH">org.eclipse.jetty.osgi.boot.OSGiWebappConstants.JETTY_WAR_FRAGMENT_FOLDER_PATH</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/osgi/boot/OSGiWebappConstants.html#JETTY_WAR_PATCH_FRAGMENT_FOLDER_PATH">org.eclipse.jetty.osgi.boot.OSGiWebappConstants.JETTY_WAR_PATCH_FRAGMENT_FOLDER_PATH</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/http/HttpStatus.html#REQUEST_ENTITY_TOO_LARGE_413">org.eclipse.jetty.http.HttpStatus.REQUEST_ENTITY_TOO_LARGE_413</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/http/HttpStatus.html#REQUEST_URI_TOO_LONG_414">org.eclipse.jetty.http.HttpStatus.REQUEST_URI_TOO_LONG_414</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/http/HttpStatus.html#REQUESTED_RANGE_NOT_SATISFIABLE_416">org.eclipse.jetty.http.HttpStatus.REQUESTED_RANGE_NOT_SATISFIABLE_416</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/osgi/boot/OSGiWebappConstants.html#SERVICE_PROP_BUNDLE_INSTALL_LOCATION_OVERRIDE">org.eclipse.jetty.osgi.boot.OSGiWebappConstants.SERVICE_PROP_BUNDLE_INSTALL_LOCATION_OVERRIDE</a>
<div class="block"><span class="deprecationComment">see JETTY_BUNDLE_INSTALL_LOCATION_OVERRIDE</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/osgi/boot/OSGiWebappConstants.html#SERVICE_PROP_CONTEXT_FILE_PATH">org.eclipse.jetty.osgi.boot.OSGiWebappConstants.SERVICE_PROP_CONTEXT_FILE_PATH</a>
<div class="block"><span class="deprecationComment">see JETTY_CONTEXT_FILE_PATH</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/osgi/boot/OSGiWebappConstants.html#SERVICE_PROP_CONTEXT_PATH">org.eclipse.jetty.osgi.boot.OSGiWebappConstants.SERVICE_PROP_CONTEXT_PATH</a>
<div class="block"><span class="deprecationComment">see RFC66_WEB_CONTEXTPATH</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/osgi/boot/OSGiWebappConstants.html#SERVICE_PROP_DEFAULT_WEB_XML_PATH">org.eclipse.jetty.osgi.boot.OSGiWebappConstants.SERVICE_PROP_DEFAULT_WEB_XML_PATH</a>
<div class="block"><span class="deprecationComment">see JETTY_DEFAULT_WEB_XML_PATH</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/osgi/boot/OSGiWebappConstants.html#SERVICE_PROP_EXTRA_CLASSPATH">org.eclipse.jetty.osgi.boot.OSGiWebappConstants.SERVICE_PROP_EXTRA_CLASSPATH</a>
<div class="block"><span class="deprecationComment">see JETTY_EXTRA_CLASSPATH</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/osgi/boot/OSGiWebappConstants.html#SERVICE_PROP_WAR">org.eclipse.jetty.osgi.boot.OSGiWebappConstants.SERVICE_PROP_WAR</a>
<div class="block"><span class="deprecationComment">see JETTY_WAR_FOLDER_PATH</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/osgi/boot/OSGiWebappConstants.html#SERVICE_PROP_WEB_XML_PATH">org.eclipse.jetty.osgi.boot.OSGiWebappConstants.SERVICE_PROP_WEB_XML_PATH</a>
<div class="block"><span class="deprecationComment">see JETTY_WEB_XML_PATH</span></div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="method">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Methods table, listing deprecated methods, and an explanation">
<caption><span>Deprecated Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Method and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/webapp/WebAppClassLoader.html#addClassFileTransformer-java.lang.instrument.ClassFileTransformer-">org.eclipse.jetty.webapp.WebAppClassLoader.addClassFileTransformer(ClassFileTransformer)</a>
<div class="block"><span class="deprecationComment"><a href="org/eclipse/jetty/webapp/WebAppClassLoader.html#addTransformer-java.lang.instrument.ClassFileTransformer-"><code>WebAppClassLoader.addTransformer(ClassFileTransformer)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/servlet/ServletContextHandler.html#addDecorator-org.eclipse.jetty.servlet.ServletContextHandler.Decorator-">org.eclipse.jetty.servlet.ServletContextHandler.addDecorator(ServletContextHandler.Decorator)</a>
<div class="block"><span class="deprecationComment">use the <a href="org/eclipse/jetty/util/DecoratedObjectFactory.html" title="class in org.eclipse.jetty.util"><code>DecoratedObjectFactory</code></a> from getAttribute("org.eclipse.jetty.util.DecoratedObjectFactory") or <a href="org/eclipse/jetty/servlet/ServletContextHandler.html#getObjectFactory--"><code>ServletContextHandler.getObjectFactory()</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/servlet/ServletHandler.html#addFilter-java.lang.String-java.lang.String-java.util.EnumSet-">org.eclipse.jetty.servlet.ServletHandler.addFilter(String, String, EnumSet&lt;DispatcherType&gt;)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/servlet/ServletHandler.html#addFilterWithMapping-java.lang.Class-java.lang.String-java.util.EnumSet-"><code>ServletHandler.addFilterWithMapping(Class, String, EnumSet)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/websocket/server/WebSocketUpgradeHandlerWrapper.html#addMapping-org.eclipse.jetty.websocket.server.pathmap.PathSpec-org.eclipse.jetty.websocket.servlet.WebSocketCreator-">org.eclipse.jetty.websocket.server.WebSocketUpgradeHandlerWrapper.addMapping(PathSpec, WebSocketCreator)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/websocket/server/WebSocketUpgradeHandlerWrapper.html#addMapping-org.eclipse.jetty.websocket.server.pathmap.PathSpec-org.eclipse.jetty.websocket.servlet.WebSocketCreator-"><code>WebSocketUpgradeHandlerWrapper.addMapping(PathSpec, WebSocketCreator)</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/websocket/server/WebSocketUpgradeFilter.html#addMapping-org.eclipse.jetty.websocket.server.pathmap.PathSpec-org.eclipse.jetty.websocket.servlet.WebSocketCreator-">org.eclipse.jetty.websocket.server.WebSocketUpgradeFilter.addMapping(PathSpec, WebSocketCreator)</a>
<div class="block"><span class="deprecationComment">use new <a href="org/eclipse/jetty/websocket/server/WebSocketUpgradeFilter.html#addMapping-org.eclipse.jetty.http.pathmap.PathSpec-org.eclipse.jetty.websocket.servlet.WebSocketCreator-"><code>WebSocketUpgradeFilter.addMapping(org.eclipse.jetty.http.pathmap.PathSpec, WebSocketCreator)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/websocket/server/NativeWebSocketConfiguration.html#addMapping-org.eclipse.jetty.websocket.server.pathmap.PathSpec-org.eclipse.jetty.websocket.servlet.WebSocketCreator-">org.eclipse.jetty.websocket.server.NativeWebSocketConfiguration.addMapping(PathSpec, WebSocketCreator)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/websocket/server/NativeWebSocketConfiguration.html#addMapping-org.eclipse.jetty.websocket.server.pathmap.PathSpec-org.eclipse.jetty.websocket.servlet.WebSocketCreator-"><code>NativeWebSocketConfiguration.addMapping(PathSpec, WebSocketCreator)</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/websocket/server/MappedWebSocketCreator.html#addMapping-org.eclipse.jetty.websocket.server.pathmap.PathSpec-org.eclipse.jetty.websocket.servlet.WebSocketCreator-">org.eclipse.jetty.websocket.server.MappedWebSocketCreator.addMapping(PathSpec, WebSocketCreator)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/websocket/server/MappedWebSocketCreator.html#addMapping-org.eclipse.jetty.http.pathmap.PathSpec-org.eclipse.jetty.websocket.servlet.WebSocketCreator-"><code>MappedWebSocketCreator.addMapping(org.eclipse.jetty.http.pathmap.PathSpec, WebSocketCreator)</code></a> instead.
 (support classes moved to generic jetty-http project)</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/webapp/ClasspathPattern.html#addPattern-java.lang.String-">org.eclipse.jetty.webapp.ClasspathPattern.addPattern(String)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/util/ajax/JSON.html#append-java.lang.StringBuffer-java.lang.Object-">org.eclipse.jetty.util.ajax.JSON.append(StringBuffer, Object)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/util/ajax/JSON.html#appendArray-java.lang.StringBuffer-java.util.Collection-">org.eclipse.jetty.util.ajax.JSON.appendArray(StringBuffer, Collection)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/util/ajax/JSON.html#appendArray-java.lang.StringBuffer-java.lang.Object-">org.eclipse.jetty.util.ajax.JSON.appendArray(StringBuffer, Object)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/util/ajax/JSON.html#appendBoolean-java.lang.StringBuffer-java.lang.Boolean-">org.eclipse.jetty.util.ajax.JSON.appendBoolean(StringBuffer, Boolean)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/util/ajax/JSON.html#appendJSON-java.lang.StringBuffer-org.eclipse.jetty.util.ajax.JSON.Convertible-">org.eclipse.jetty.util.ajax.JSON.appendJSON(StringBuffer, JSON.Convertible)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/util/ajax/JSON.html#appendJSON-java.lang.StringBuffer-org.eclipse.jetty.util.ajax.JSON.Convertor-java.lang.Object-">org.eclipse.jetty.util.ajax.JSON.appendJSON(StringBuffer, JSON.Convertor, Object)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/util/ajax/JSON.html#appendJSON-java.lang.StringBuffer-org.eclipse.jetty.util.ajax.JSON.Generator-">org.eclipse.jetty.util.ajax.JSON.appendJSON(StringBuffer, JSON.Generator)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/util/ajax/JSON.html#appendMap-java.lang.StringBuffer-java.util.Map-">org.eclipse.jetty.util.ajax.JSON.appendMap(StringBuffer, Map&lt;?, ?&gt;)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/util/ajax/JSON.html#appendNull-java.lang.StringBuffer-">org.eclipse.jetty.util.ajax.JSON.appendNull(StringBuffer)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/util/ajax/JSON.html#appendNumber-java.lang.StringBuffer-java.lang.Number-">org.eclipse.jetty.util.ajax.JSON.appendNumber(StringBuffer, Number)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/util/ajax/JSON.html#appendString-java.lang.StringBuffer-java.lang.String-">org.eclipse.jetty.util.ajax.JSON.appendString(StringBuffer, String)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/servlets/DoSFilter.html#checkWhitelist-java.util.List-java.lang.String-">org.eclipse.jetty.servlets.DoSFilter.checkWhitelist(List&lt;String&gt;, String)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/servlets/DoSFilter.html#closeConnection-javax.servlet.http.HttpServletRequest-javax.servlet.http.HttpServletResponse-java.lang.Thread-">org.eclipse.jetty.servlets.DoSFilter.closeConnection(HttpServletRequest, HttpServletResponse, Thread)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/servlets/DoSFilter.html#onRequestTimeout-javax.servlet.http.HttpServletRequest-javax.servlet.http.HttpServletResponse-java.lang.Thread-"><code>DoSFilter.onRequestTimeout(HttpServletRequest, HttpServletResponse, Thread)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/websocket/server/WebSocketUpgradeFilter.html#configureContext-javax.servlet.ServletContext-">org.eclipse.jetty.websocket.server.WebSocketUpgradeFilter.configureContext(ServletContext)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/websocket/server/WebSocketUpgradeFilter.html#configureContext-org.eclipse.jetty.servlet.ServletContextHandler-"><code>WebSocketUpgradeFilter.configureContext(ServletContextHandler)</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/websocket/jsr356/server/deploy/WebSocketServerContainerInitializer.html#configureContext-javax.servlet.ServletContext-org.eclipse.jetty.servlet.ServletContextHandler-">org.eclipse.jetty.websocket.jsr356.server.deploy.WebSocketServerContainerInitializer.configureContext(ServletContext, ServletContextHandler)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/websocket/jsr356/server/deploy/WebSocketServerContainerInitializer.html#configureContext-org.eclipse.jetty.servlet.ServletContextHandler-"><code>WebSocketServerContainerInitializer.configureContext(ServletContextHandler)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/util/resource/Resource.html#encode-java.lang.String-">org.eclipse.jetty.util.resource.Resource.encode(String)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/util/URIUtil.html" title="class in org.eclipse.jetty.util"><code>URIUtil</code></a> or <a href="org/eclipse/jetty/util/UrlEncoded.html" title="class in org.eclipse.jetty.util"><code>UrlEncoded</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/server/Response.html#encodeRedirectUrl-java.lang.String-">org.eclipse.jetty.server.Response.encodeRedirectUrl(String)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/server/Response.html#encodeUrl-java.lang.String-">org.eclipse.jetty.server.Response.encodeUrl(String)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/util/BufferUtil.html#flipPutFlip-java.nio.ByteBuffer-java.nio.ByteBuffer-">org.eclipse.jetty.util.BufferUtil.flipPutFlip(ByteBuffer, ByteBuffer)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/util/BufferUtil.html#append-java.nio.ByteBuffer-java.nio.ByteBuffer-"><code>BufferUtil.append(ByteBuffer, ByteBuffer)</code></a></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/server/session/JDBCSessionIdManager.html#getBlobType--">org.eclipse.jetty.server.session.JDBCSessionIdManager.getBlobType()</a>
<div class="block"><span class="deprecationComment">see DbAdaptor.getBlobType</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/security/PropertyUserStore.html#getConfig--">org.eclipse.jetty.security.PropertyUserStore.getConfig()</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/security/PropertyUserStore.html#getConfigPath--"><code>PropertyUserStore.getConfigPath()</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/security/HashLoginService.html#getConfig-java.lang.String-">org.eclipse.jetty.security.HashLoginService.getConfig(String)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/security/HashLoginService.html#setConfig-java.lang.String-"><code>HashLoginService.setConfig(String)</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/deploy/App.html#getContextId--">org.eclipse.jetty.deploy.App.getContextId()</a>
<div class="block"><span class="deprecationComment">Use getContextPath instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/continuation/ContinuationSupport.html#getContinuation-javax.servlet.ServletRequest-javax.servlet.ServletResponse-">org.eclipse.jetty.continuation.ContinuationSupport.getContinuation(ServletRequest, ServletResponse)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/continuation/ContinuationSupport.html#getContinuation-javax.servlet.ServletRequest-"><code>ContinuationSupport.getContinuation(ServletRequest)</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/servlet/ServletContextHandler.html#getDecorators--">org.eclipse.jetty.servlet.ServletContextHandler.getDecorators()</a>
<div class="block"><span class="deprecationComment">use the <a href="org/eclipse/jetty/util/DecoratedObjectFactory.html" title="class in org.eclipse.jetty.util"><code>DecoratedObjectFactory</code></a> from getAttribute("org.eclipse.jetty.util.DecoratedObjectFactory") or <a href="org/eclipse/jetty/servlet/ServletContextHandler.html#getObjectFactory--"><code>ServletContextHandler.getObjectFactory()</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/http2/frames/PriorityFrame.html#getDependentStreamId--">org.eclipse.jetty.http2.frames.PriorityFrame.getDependentStreamId()</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/http2/frames/PriorityFrame.html#getParentStreamId--"><code>PriorityFrame.getParentStreamId()</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/server/ForwardedRequestCustomizer.html#getHostHeader--">org.eclipse.jetty.server.ForwardedRequestCustomizer.getHostHeader()</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/http2/client/HTTP2ClientConnectionFactory.html#getInitialSessionRecvWindow--">org.eclipse.jetty.http2.client.HTTP2ClientConnectionFactory.getInitialSessionRecvWindow()</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/http2/client/HTTP2Client.html#getInitialSessionRecvWindow--"><code>HTTP2Client.getInitialSessionRecvWindow()</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/http2/server/AbstractHTTP2ServerConnectionFactory.html#getInitialStreamSendWindow--">org.eclipse.jetty.http2.server.AbstractHTTP2ServerConnectionFactory.getInitialStreamSendWindow()</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/http2/server/AbstractHTTP2ServerConnectionFactory.html#getInitialStreamRecvWindow--"><code>AbstractHTTP2ServerConnectionFactory.getInitialStreamRecvWindow()</code></a> instead,
 since "send" is meant on the client, but this is the server configuration</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/security/authentication/ClientCertAuthenticator.html#getKeyStore-java.io.InputStream-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">org.eclipse.jetty.security.authentication.ClientCertAuthenticator.getKeyStore(InputStream, String, String, String, String)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/start/graph/Node.html#getLogicalName--">org.eclipse.jetty.start.graph.Node.getLogicalName()</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/server/session/JDBCSessionIdManager.html#getLongType--">org.eclipse.jetty.server.session.JDBCSessionIdManager.getLongType()</a>
<div class="block"><span class="deprecationComment">see DbAdaptor.getLogType</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/server/SessionManager.html#getMetaManager--">org.eclipse.jetty.server.SessionManager.getMetaManager()</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/server/SessionManager.html#getSessionIdManager--"><code>SessionManager.getSessionIdManager()</code></a></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/server/session/AbstractSessionManager.html#getMetaManager--">org.eclipse.jetty.server.session.AbstractSessionManager.getMetaManager()</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/server/handler/gzip/GzipHandler.html#getMethods--">org.eclipse.jetty.server.handler.gzip.GzipHandler.getMethods()</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/websocket/servlet/ServletUpgradeRequest.html#getPrincipal--">org.eclipse.jetty.websocket.servlet.ServletUpgradeRequest.getPrincipal()</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/websocket/servlet/ServletUpgradeRequest.html#getUserPrincipal--"><code>ServletUpgradeRequest.getUserPrincipal()</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/http/HttpFields.html#getQuality-java.lang.String-">org.eclipse.jetty.http.HttpFields.getQuality(String)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/security/PropertyUserStore.html#getRefreshInterval--">org.eclipse.jetty.security.PropertyUserStore.getRefreshInterval()</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/security/PropertyUserStore.html#isHotReload--"><code>PropertyUserStore.isHotReload()</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/security/HashLoginService.html#getRefreshInterval--">org.eclipse.jetty.security.HashLoginService.getRefreshInterval()</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/security/HashLoginService.html#isHotReload--"><code>HashLoginService.isHotReload()</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/io/SelectorManager.html#getSelectorPriorityDelta--">org.eclipse.jetty.io.SelectorManager.getSelectorPriorityDelta()</a>
<div class="block"><span class="deprecationComment">not implemented</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/server/ServerConnector.html#getSelectorPriorityDelta--">org.eclipse.jetty.server.ServerConnector.getSelectorPriorityDelta()</a>
<div class="block"><span class="deprecationComment">not implemented</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/http/HttpGenerator.html#getSendServerVersion--">org.eclipse.jetty.http.HttpGenerator.getSendServerVersion()</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/server/handler/ContextHandler.StaticContext.html#getServlet-java.lang.String-">org.eclipse.jetty.server.handler.ContextHandler.StaticContext.getServlet(String)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/server/handler/ContextHandler.StaticContext.html#getServletNames--">org.eclipse.jetty.server.handler.ContextHandler.StaticContext.getServletNames()</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/server/handler/ContextHandler.StaticContext.html#getServlets--">org.eclipse.jetty.server.handler.ContextHandler.StaticContext.getServlets()</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/server/session/AbstractSession.html#getSessionContext--">org.eclipse.jetty.server.session.AbstractSession.getSessionContext()</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/util/ssl/SslContextFactory.html#getSslKeyManagerFactoryAlgorithm--">org.eclipse.jetty.util.ssl.SslContextFactory.getSslKeyManagerFactoryAlgorithm()</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/util/ssl/SslContextFactory.html#getKeyManagerFactoryAlgorithm--"><code>SslContextFactory.getKeyManagerFactoryAlgorithm()</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/http/HttpFields.html#getStringField-org.eclipse.jetty.http.HttpHeader-">org.eclipse.jetty.http.HttpFields.getStringField(HttpHeader)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/http/HttpFields.html#getStringField-java.lang.String-">org.eclipse.jetty.http.HttpFields.getStringField(String)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/util/resource/Resource.html#getURL--">org.eclipse.jetty.util.resource.Resource.getURL()</a>
<div class="block"><span class="deprecationComment">use {<a href="org/eclipse/jetty/util/resource/Resource.html#getURI--"><code>Resource.getURI()</code></a>.toURL() instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/server/session/AbstractSession.html#getValue-java.lang.String-">org.eclipse.jetty.server.session.AbstractSession.getValue(String)</a>
<div class="block"><span class="deprecationComment">As of Version 2.2, this method is replaced by
             <a href="org/eclipse/jetty/server/session/AbstractSession.html#getAttribute-java.lang.String-"><code>AbstractSession.getAttribute(java.lang.String)</code></a></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/server/session/AbstractSession.html#getValueNames--">org.eclipse.jetty.server.session.AbstractSession.getValueNames()</a>
<div class="block"><span class="deprecationComment">As of Version 2.2, this method is replaced by
             <a href="org/eclipse/jetty/server/session/AbstractSession.html#getAttributeNames--"><code>AbstractSession.getAttributeNames()</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/http/HttpFields.html#getValues-java.lang.String-java.lang.String-">org.eclipse.jetty.http.HttpFields.getValues(String, String)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/http/MetaData.html#getVersion--">org.eclipse.jetty.http.MetaData.getVersion()</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/http/MetaData.html#getHttpVersion--"><code>MetaData.getHttpVersion()</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/http/MimeTypes.html#inferCharsetFromContentType-java.lang.String-">org.eclipse.jetty.http.MimeTypes.inferCharsetFromContentType(String)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/util/thread/ExecutionStrategy.Factory.html#instanceFor-org.eclipse.jetty.util.thread.ExecutionStrategy.Producer-java.util.concurrent.Executor-">org.eclipse.jetty.util.thread.ExecutionStrategy.Factory.instanceFor(ExecutionStrategy.Producer, Executor)</a>
<div class="block"><span class="deprecationComment">use <code>getDefault().newExecutionStrategy(Producer, Executor)</code> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/server/handler/InetAccessHandler.html#isAllowed-java.net.InetAddress-">org.eclipse.jetty.server.handler.InetAccessHandler.isAllowed(InetAddress)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/server/handler/InetAccessHandler.html#isAllowed-java.net.InetAddress-javax.servlet.http.HttpServletRequest-"><code>InetAccessHandler.isAllowed(InetAddress, HttpServletRequest)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/io/AbstractConnection.html#isDispatchIO--">org.eclipse.jetty.io.AbstractConnection.isDispatchIO()</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/client/HttpClient.html#isDispatchIO--">org.eclipse.jetty.client.HttpClient.isDispatchIO()</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/websocket/api/extensions/Frame.html#isLast--">org.eclipse.jetty.websocket.api.extensions.Frame.isLast()</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/websocket/api/extensions/Frame.html#isFin--"><code>Frame.isFin()</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/websocket/common/frames/ReadOnlyDelegatedFrame.html#isLast--">org.eclipse.jetty.websocket.common.frames.ReadOnlyDelegatedFrame.isLast()</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/server/AbstractNCSARequestLog.html#isLogDispatch--">org.eclipse.jetty.server.AbstractNCSARequestLog.isLogDispatch()</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/server/handler/StatisticsHandler.html" title="class in org.eclipse.jetty.server.handler"><code>StatisticsHandler</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/security/JDBCLoginService.html#loadUser-java.lang.String-">org.eclipse.jetty.security.JDBCLoginService.loadUser(String)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/plus/security/DataSourceLoginService.html#loadUser-java.lang.String-">org.eclipse.jetty.plus.security.DataSourceLoginService.loadUser(String)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/server/AbstractNCSARequestLog.html#logExtended-org.eclipse.jetty.server.Request-java.lang.StringBuilder-">org.eclipse.jetty.server.AbstractNCSARequestLog.logExtended(Request, StringBuilder)</a>
<div class="block"><span class="deprecationComment">override <a href="org/eclipse/jetty/server/AbstractNCSARequestLog.html#logExtended-java.lang.StringBuilder-org.eclipse.jetty.server.Request-org.eclipse.jetty.server.Response-"><code>AbstractNCSARequestLog.logExtended(StringBuilder, Request, Response)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/server/ResourceCache.html#lookup-java.lang.String-">org.eclipse.jetty.server.ResourceCache.lookup(String)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/proxy/ConnectHandler.html#newDownstreamConnection-org.eclipse.jetty.io.EndPoint-java.util.concurrent.ConcurrentMap-java.nio.ByteBuffer-">org.eclipse.jetty.proxy.ConnectHandler.newDownstreamConnection(EndPoint, ConcurrentMap&lt;String, Object&gt;, ByteBuffer)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/proxy/ConnectHandler.html#newDownstreamConnection-org.eclipse.jetty.io.EndPoint-java.util.concurrent.ConcurrentMap-"><code>ConnectHandler.newDownstreamConnection(EndPoint, ConcurrentMap)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/http2/server/AbstractHTTP2ServerConnectionFactory.html#newFlowControlStrategy--">org.eclipse.jetty.http2.server.AbstractHTTP2ServerConnectionFactory.newFlowControlStrategy()</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/http2/server/AbstractHTTP2ServerConnectionFactory.html#setFlowControlStrategyFactory-org.eclipse.jetty.http2.FlowControlStrategy.Factory-"><code>AbstractHTTP2ServerConnectionFactory.setFlowControlStrategyFactory(FlowControlStrategy.Factory)</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/http2/client/HTTP2ClientConnectionFactory.html#newFlowControlStrategy--">org.eclipse.jetty.http2.client.HTTP2ClientConnectionFactory.newFlowControlStrategy()</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/http2/client/HTTP2Client.html#setFlowControlStrategyFactory-org.eclipse.jetty.http2.FlowControlStrategy.Factory-"><code>HTTP2Client.setFlowControlStrategyFactory(FlowControlStrategy.Factory)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/http2/api/Stream.Listener.html#onTimeout-org.eclipse.jetty.http2.api.Stream-java.lang.Throwable-">org.eclipse.jetty.http2.api.Stream.Listener.onTimeout(Stream, Throwable)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/http2/api/Stream.Listener.html#onIdleTimeout-org.eclipse.jetty.http2.api.Stream-java.lang.Throwable-"><code>Stream.Listener.onIdleTimeout(Stream, Throwable)</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/util/ajax/JSON.html#parse-java.io.InputStream-">org.eclipse.jetty.util.ajax.JSON.parse(InputStream)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/util/ajax/JSON.html#parse-java.io.Reader-"><code>JSON.parse(Reader)</code></a></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/util/ajax/JSON.html#parse-java.io.InputStream-boolean-">org.eclipse.jetty.util.ajax.JSON.parse(InputStream, boolean)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/util/ajax/JSON.html#parse-java.io.Reader-boolean-"><code>JSON.parse(Reader, boolean)</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/http/HttpURI.html#parseConnect-java.lang.String-">org.eclipse.jetty.http.HttpURI.parseConnect(String)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/server/Dispatcher.html#push-javax.servlet.ServletRequest-">org.eclipse.jetty.server.Dispatcher.push(ServletRequest)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/eclipse/jetty/server/Request.html#getPushBuilder--"><code>Request.getPushBuilder()</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/server/session/AbstractSession.html#putValue-java.lang.String-java.lang.Object-">org.eclipse.jetty.server.session.AbstractSession.putValue(String, Object)</a>
<div class="block"><span class="deprecationComment">As of Version 2.2, this method is replaced by
             <a href="org/eclipse/jetty/server/session/AbstractSession.html#setAttribute-java.lang.String-java.lang.Object-"><code>AbstractSession.setAttribute(java.lang.String, java.lang.Object)</code></a></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/http/HttpFields.html#qualityList-java.util.Enumeration-">org.eclipse.jetty.http.HttpFields.qualityList(Enumeration&lt;String&gt;)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/proxy/ConnectHandler.html#read-org.eclipse.jetty.io.EndPoint-java.nio.ByteBuffer-">org.eclipse.jetty.proxy.ConnectHandler.read(EndPoint, ByteBuffer)</a>
<div class="block"><span class="deprecationComment">override <a href="org/eclipse/jetty/proxy/ConnectHandler.html#read-org.eclipse.jetty.io.EndPoint-java.nio.ByteBuffer-java.util.concurrent.ConcurrentMap-"><code>ConnectHandler.read(EndPoint, ByteBuffer, ConcurrentMap)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/util/resource/Resource.html#release--">org.eclipse.jetty.util.resource.Resource.release()</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/util/resource/Resource.html#close--"><code>Resource.close()</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/webapp/WebAppClassLoader.html#removeClassFileTransformer-java.lang.instrument.ClassFileTransformer-">org.eclipse.jetty.webapp.WebAppClassLoader.removeClassFileTransformer(ClassFileTransformer)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/webapp/WebAppClassLoader.html#removeTransformer-java.lang.instrument.ClassFileTransformer-"><code>WebAppClassLoader.removeTransformer(ClassFileTransformer)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/server/session/AbstractSession.html#removeValue-java.lang.String-">org.eclipse.jetty.server.session.AbstractSession.removeValue(String)</a>
<div class="block"><span class="deprecationComment">As of Version 2.2, this method is replaced by
             <a href="org/eclipse/jetty/server/session/AbstractSession.html#removeAttribute-java.lang.String-"><code>AbstractSession.removeAttribute(java.lang.String)</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/websocket/client/WebSocketClient.html#setBindAdddress-java.net.SocketAddress-">org.eclipse.jetty.websocket.client.WebSocketClient.setBindAdddress(SocketAddress)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/websocket/client/WebSocketClient.html#setBindAddress-java.net.SocketAddress-"><code>WebSocketClient.setBindAddress(SocketAddress)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/server/session/JDBCSessionIdManager.html#setBlobType-java.lang.String-">org.eclipse.jetty.server.session.JDBCSessionIdManager.setBlobType(String)</a>
<div class="block"><span class="deprecationComment">see DbAdaptor.setBlobType</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/security/PropertyUserStore.html#setConfig-java.lang.String-">org.eclipse.jetty.security.PropertyUserStore.setConfig(String)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/security/PropertyUserStore.html#setConfigPath-java.lang.String-"><code>PropertyUserStore.setConfigPath(String)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/servlet/ServletContextHandler.html#setDecorators-java.util.List-">org.eclipse.jetty.servlet.ServletContextHandler.setDecorators(List&lt;ServletContextHandler.Decorator&gt;)</a>
<div class="block"><span class="deprecationComment">use the <a href="org/eclipse/jetty/util/DecoratedObjectFactory.html" title="class in org.eclipse.jetty.util"><code>DecoratedObjectFactory</code></a> from getAttribute("org.eclipse.jetty.util.DecoratedObjectFactory") or <a href="org/eclipse/jetty/servlet/ServletContextHandler.html#getObjectFactory--"><code>ServletContextHandler.getObjectFactory()</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/util/ajax/JSON.html#setDefault-org.eclipse.jetty.util.ajax.JSON-">org.eclipse.jetty.util.ajax.JSON.setDefault(JSON)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/client/HttpClient.html#setDispatchIO-boolean-">org.eclipse.jetty.client.HttpClient.setDispatchIO(boolean)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/server/ForwardedRequestCustomizer.html#setHostHeader-java.lang.String-">org.eclipse.jetty.server.ForwardedRequestCustomizer.setHostHeader(String)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/http2/client/HTTP2ClientConnectionFactory.html#setInitialSessionRecvWindow-int-">org.eclipse.jetty.http2.client.HTTP2ClientConnectionFactory.setInitialSessionRecvWindow(int)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/http2/client/HTTP2Client.html#setInitialSessionRecvWindow-int-"><code>HTTP2Client.setInitialSessionRecvWindow(int)</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/http2/server/AbstractHTTP2ServerConnectionFactory.html#setInitialStreamSendWindow-int-">org.eclipse.jetty.http2.server.AbstractHTTP2ServerConnectionFactory.setInitialStreamSendWindow(int)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/http2/server/AbstractHTTP2ServerConnectionFactory.html#setInitialStreamRecvWindow-int-"><code>AbstractHTTP2ServerConnectionFactory.setInitialStreamRecvWindow(int)</code></a> instead,
 since "send" is meant on the client, but this is the server configuration</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/server/AbstractNCSARequestLog.html#setLogDispatch-boolean-">org.eclipse.jetty.server.AbstractNCSARequestLog.setLogDispatch(boolean)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/server/handler/StatisticsHandler.html" title="class in org.eclipse.jetty.server.handler"><code>StatisticsHandler</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/server/session/JDBCSessionIdManager.html#setLongType-java.lang.String-">org.eclipse.jetty.server.session.JDBCSessionIdManager.setLongType(String)</a>
<div class="block"><span class="deprecationComment">see DbAdaptor.setLongType</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/util/thread/QueuedThreadPool.html#setQueue-java.util.concurrent.BlockingQueue-">org.eclipse.jetty.util.thread.QueuedThreadPool.setQueue(BlockingQueue&lt;Runnable&gt;)</a>
<div class="block"><span class="deprecationComment">pass the queue to the constructor instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/security/PropertyUserStore.html#setRefreshInterval-int-">org.eclipse.jetty.security.PropertyUserStore.setRefreshInterval(int)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/security/PropertyUserStore.html#setHotReload-boolean-"><code>PropertyUserStore.setHotReload(boolean)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/security/HashLoginService.html#setRefreshInterval-int-">org.eclipse.jetty.security.HashLoginService.setRefreshInterval(int)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/security/HashLoginService.html#setHotReload-boolean-"><code>HashLoginService.setHotReload(boolean)</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/rewrite/handler/RedirectRegexRule.html#setReplacement-java.lang.String-">org.eclipse.jetty.rewrite.handler.RedirectRegexRule.setReplacement(String)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/rewrite/handler/RewriteHandler.html#setRules-org.eclipse.jetty.rewrite.handler.RuleContainer-">org.eclipse.jetty.rewrite.handler.RewriteHandler.setRules(RuleContainer)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/io/SelectorManager.html#setSelectorPriorityDelta-int-">org.eclipse.jetty.io.SelectorManager.setSelectorPriorityDelta(int)</a>
<div class="block"><span class="deprecationComment">not implemented</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/server/ServerConnector.html#setSelectorPriorityDelta-int-">org.eclipse.jetty.server.ServerConnector.setSelectorPriorityDelta(int)</a>
<div class="block"><span class="deprecationComment">not implemented</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/http/HttpGenerator.html#setSendServerVersion-boolean-">org.eclipse.jetty.http.HttpGenerator.setSendServerVersion(boolean)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/util/ssl/SslContextFactory.html#setSslKeyManagerFactoryAlgorithm-java.lang.String-">org.eclipse.jetty.util.ssl.SslContextFactory.setSslKeyManagerFactoryAlgorithm(String)</a>
<div class="block"><span class="deprecationComment">use <a href="org/eclipse/jetty/util/ssl/SslContextFactory.html#setKeyManagerFactoryAlgorithm-java.lang.String-"><code>SslContextFactory.setKeyManagerFactoryAlgorithm(String)</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/server/Response.html#setStatus-int-java.lang.String-">org.eclipse.jetty.server.Response.setStatus(int, String)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/websocket/api/CloseStatus.html#trimMaxReasonLength-java.lang.String-">org.eclipse.jetty.websocket.api.CloseStatus.trimMaxReasonLength(String)</a>
<div class="block"><span class="deprecationComment">use of this method is strongly discouraged, as it creates too many new objects that are just thrown away to accomplish its goals.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/util/StringUtil.html#unquote-java.lang.String-">org.eclipse.jetty.util.StringUtil.unquote(String)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/server/session/AbstractSession.html#updateAttribute-java.lang.String-java.lang.Object-">org.eclipse.jetty.server.session.AbstractSession.updateAttribute(String, Object)</a>
<div class="block"><span class="deprecationComment">use changeAttribute(String,Object) instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/proxy/ConnectHandler.html#write-org.eclipse.jetty.io.EndPoint-java.nio.ByteBuffer-org.eclipse.jetty.util.Callback-">org.eclipse.jetty.proxy.ConnectHandler.write(EndPoint, ByteBuffer, Callback)</a>
<div class="block"><span class="deprecationComment">override <a href="org/eclipse/jetty/proxy/ConnectHandler.html#write-org.eclipse.jetty.io.EndPoint-java.nio.ByteBuffer-org.eclipse.jetty.util.Callback-java.util.concurrent.ConcurrentMap-"><code>ConnectHandler.write(EndPoint, ByteBuffer, Callback, ConcurrentMap)</code></a> instead</span></div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="constructor">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table class="deprecatedSummary" border="0" cellpadding="3" cellspacing="0" summary="Deprecated Constructors table, listing deprecated constructors, and an explanation">
<caption><span>Deprecated Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/proxy/ConnectHandler.DownstreamConnection.html#DownstreamConnection-org.eclipse.jetty.io.EndPoint-java.util.concurrent.Executor-org.eclipse.jetty.io.ByteBufferPool-java.util.concurrent.ConcurrentMap-java.nio.ByteBuffer-">org.eclipse.jetty.proxy.ConnectHandler.DownstreamConnection(EndPoint, Executor, ByteBufferPool, ConcurrentMap&lt;String, Object&gt;, ByteBuffer)</a>
<div class="block"><span class="deprecationComment">use <code>#DownstreamConnection(EndPoint, Executor, ByteBufferPool, ConcurrentMap)</code> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/util/thread/strategy/ExecuteProduceConsume.html#ExecuteProduceConsume-org.eclipse.jetty.util.thread.ExecutionStrategy.Producer-java.util.concurrent.Executor-org.eclipse.jetty.util.thread.ExecutionStrategy-">org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume(ExecutionStrategy.Producer, Executor, ExecutionStrategy)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/http/HttpParser.html#HttpParser-org.eclipse.jetty.http.HttpParser.RequestHandler-int-boolean-">org.eclipse.jetty.http.HttpParser(HttpParser.RequestHandler, int, boolean)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/http/HttpParser.html#HttpParser-org.eclipse.jetty.http.HttpParser.ResponseHandler-int-boolean-">org.eclipse.jetty.http.HttpParser(HttpParser.ResponseHandler, int, boolean)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/eclipse/jetty/client/util/InputStreamResponseListener.html#InputStreamResponseListener-long-">org.eclipse.jetty.client.util.InputStreamResponseListener(long)</a>
<div class="block"><span class="deprecationComment">response content is not buffered anymore, but handled asynchronously.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/server/handler/ShutdownHandler.html#ShutdownHandler-org.eclipse.jetty.server.Server-java.lang.String-">org.eclipse.jetty.server.handler.ShutdownHandler(Server, String)</a></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<!-- ======= 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>Package</li>
<li>Class</li>
<li>Use</li>
<li><a href="overview-tree.html">Tree</a></li>
<li class="navBarCell1Rev">Deprecated</li>
<li><a href="index-all.html">Index</a></li>
<li><a href="help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><script type="text/javascript">                     var _gaq = _gaq || [];                     _gaq.push(['_setAccount', 'UA-1149868-7']);                     _gaq.push(['_trackPageview']);                     (function() {                       var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;                       ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';                       var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);                     })();                  </script></div>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?deprecated-list.html" target="_top">Frames</a></li>
<li><a href="deprecated-list.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>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 1995&#x2013;2017 <a href="http://webtide.com">Webtide</a>. All rights reserved.</small></p>
</body>
</html>
