<!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 Wed Dec 21 15:18:25 CST 2016 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Deprecated List (Jetty :: Project 9.3.15.v20161220 API)</title>
<meta name="date" content="2016-12-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.15.v20161220 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/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="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.http.pathmap.PathSpec-java.lang.Class-"><code>NativeWebSocketConfiguration.addMapping(PathSpec, Class)</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<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="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/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="altColor">
<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="rowColor">
<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="altColor">
<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="rowColor">
<td class="colOne"><a href="org/eclipse/jetty/server/ForwardedRequestCustomizer.html#getHostHeader--">org.eclipse.jetty.server.ForwardedRequestCustomizer.getHostHeader()</a></td>
</tr>
<tr class="altColor">
<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="rowColor">
<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="altColor">
<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="rowColor">
<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="altColor">
<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="rowColor">
<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="altColor">
<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="rowColor">
<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="altColor">
<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="rowColor">
<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="altColor">
<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="rowColor">
<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="altColor">
<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="rowColor">
<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="altColor">
<td class="colOne"><a href="org/eclipse/jetty/http/HttpGenerator.html#getSendServerVersion--">org.eclipse.jetty.http.HttpGenerator.getSendServerVersion()</a></td>
</tr>
<tr class="rowColor">
<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="altColor">
<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="rowColor">
<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="altColor">
<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="rowColor">
<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="altColor">
<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="rowColor">
<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="altColor">
<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="rowColor">
<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="altColor">
<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="rowColor">
<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="altColor">
<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="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-2016 <a href="http://webtide.com">Webtide</a>. All Rights Reserved.</small></p>
</body>
</html>
