<!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 (version 1.7.0_80) on Thu Aug 04 13:19:29 BST 2016 -->
<title>Deprecated List (kafka 0.10.0.1 API)</title>
<meta name="date" content="2016-08-04">
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="Deprecated List (kafka 0.10.0.1 API)";
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!--   -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><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><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>
<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 Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="allclasses-noframe.html">All 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="#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="field">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table 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/apache/kafka/clients/producer/ProducerConfig.html#BLOCK_ON_BUFFER_FULL_CONFIG">org.apache.kafka.clients.producer.ProducerConfig.BLOCK_ON_BUFFER_FULL_CONFIG</a>
<div class="block"><i>This config will be removed in a future release. Please use <a href="org/apache/kafka/clients/producer/ProducerConfig.html#MAX_BLOCK_MS_CONFIG"><code>ProducerConfig.MAX_BLOCK_MS_CONFIG</code></a>.</i></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/clients/producer/ProducerConfig.html#METADATA_FETCH_TIMEOUT_CONFIG">org.apache.kafka.clients.producer.ProducerConfig.METADATA_FETCH_TIMEOUT_CONFIG</a>
<div class="block"><i>This config will be removed in a future release. Please use <a href="org/apache/kafka/clients/producer/ProducerConfig.html#MAX_BLOCK_MS_CONFIG"><code>ProducerConfig.MAX_BLOCK_MS_CONFIG</code></a></i></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/clients/producer/ProducerConfig.html#TIMEOUT_CONFIG">org.apache.kafka.clients.producer.ProducerConfig.TIMEOUT_CONFIG</a>
<div class="block"><i>This config will be removed in a future release. Please use <a href="org/apache/kafka/clients/producer/ProducerConfig.html#REQUEST_TIMEOUT_MS_CONFIG"><code>ProducerConfig.REQUEST_TIMEOUT_MS_CONFIG</code></a></i></div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="method">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table 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/apache/kafka/connect/sink/SinkTask.html#onPartitionsAssigned(java.util.Collection)">org.apache.kafka.connect.sink.SinkTask.onPartitionsAssigned(Collection<TopicPartition>)</a>
<div class="block"><i>Use <a href="org/apache/kafka/connect/sink/SinkTask.html#open(java.util.Collection)"><code>SinkTask.open(Collection)</code></a> for partition initialization.</i></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/connect/sink/SinkTask.html#onPartitionsRevoked(java.util.Collection)">org.apache.kafka.connect.sink.SinkTask.onPartitionsRevoked(Collection<TopicPartition>)</a>
<div class="block"><i>Use <a href="org/apache/kafka/connect/sink/SinkTask.html#close(java.util.Collection)"><code>SinkTask.close(Collection)</code></a> instead for partition cleanup.</i></div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
<a name="constructor">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<table 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/apache/kafka/common/MetricName.html#MetricName(java.lang.String,%20java.lang.String)">org.apache.kafka.common.MetricName(String, String)</a>
<div class="block"><i>This method will be removed in a future release.
 Please create MetricName by method <code>Metrics.metricName(String, String)</code></i></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/common/MetricName.html#MetricName(java.lang.String,%20java.lang.String,%20java.util.Map)">org.apache.kafka.common.MetricName(String, String, Map<String, String>)</a>
<div class="block"><i>This method will be removed in a future release.
 Please create MetricName by method <code>Metrics.metricName(String, String, Map)</code></i></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/common/MetricName.html#MetricName(java.lang.String,%20java.lang.String,%20java.lang.String)">org.apache.kafka.common.MetricName(String, String, String)</a>
<div class="block"><i>This method will be removed in a future release.
 Please create MetricName by method <code>Metrics.metricName(String, String, String)</code></i></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/common/MetricName.html#MetricName(java.lang.String,%20java.lang.String,%20java.lang.String,%20java.lang.String...)">org.apache.kafka.common.MetricName(String, String, String, String...)</a>
<div class="block"><i>This method will be removed in a future release.
 Please create MetricName by method <code>Metrics.metricName(String, String, String, String...)</code></i></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/clients/producer/RecordMetadata.html#RecordMetadata(org.apache.kafka.common.TopicPartition,%20long,%20long)">org.apache.kafka.clients.producer.RecordMetadata(TopicPartition, long, long)</a></td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!--   -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><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><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>
<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 Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="allclasses-noframe.html">All 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 ======= -->
</body>
</html>
