<!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_232) on Mon Mar 02 19:34:19 EST 2020 -->
<title>Deprecated List (kafka 2.4.1 API)</title>
<meta name="date" content="2020-03-02">
<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 (kafka 2.4.1 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><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&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/apache/kafka/common/serialization/ExtendedDeserializer.html" title="interface in org.apache.kafka.common.serialization">org.apache.kafka.common.serialization.ExtendedDeserializer</a>
<div class="block"><span class="deprecationComment">This class has been deprecated and will be removed in a future release. Please use <a href="org/apache/kafka/common/serialization/Deserializer.html" title="interface in org.apache.kafka.common.serialization"><code>Deserializer</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/common/serialization/ExtendedSerializer.html" title="interface in org.apache.kafka.common.serialization">org.apache.kafka.common.serialization.ExtendedSerializer</a>
<div class="block"><span class="deprecationComment">This class has been deprecated and will be removed in a future release. Please use <a href="org/apache/kafka/common/serialization/Serializer.html" title="interface in org.apache.kafka.common.serialization"><code>Serializer</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/processor/PartitionGrouper.html" title="interface in org.apache.kafka.streams.processor">org.apache.kafka.streams.processor.PartitionGrouper</a>
<div class="block"><span class="deprecationComment">since 2.4 release; will be removed in 3.0.0 via KAFKA-7785</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/common/security/auth/PrincipalBuilder.html" title="interface in org.apache.kafka.common.security.auth">org.apache.kafka.common.security.auth.PrincipalBuilder</a>
<div class="block"><span class="deprecationComment">As of Kafka 1.0.0, use <a href="org/apache/kafka/common/security/auth/KafkaPrincipalBuilder.html" title="interface in org.apache.kafka.common.security.auth"><code>KafkaPrincipalBuilder</code></a> instead. This will be removed in
             a future major release.</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/apache/kafka/streams/test/ConsumerRecordFactory.html" title="class in org.apache.kafka.streams.test">org.apache.kafka.streams.test.ConsumerRecordFactory</a>
<div class="block"><span class="deprecationComment">Since 2.4 use methods of <a href="org/apache/kafka/streams/TestInputTopic.html" title="class in org.apache.kafka.streams"><code>TestInputTopic</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/processor/DefaultPartitionGrouper.html" title="class in org.apache.kafka.streams.processor">org.apache.kafka.streams.processor.DefaultPartitionGrouper</a>
<div class="block"><span class="deprecationComment">since 2.4 release; will be removed in 3.0.0 via KAFKA-7785</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/common/security/auth/DefaultPrincipalBuilder.html" title="class in org.apache.kafka.common.security.auth">org.apache.kafka.common.security.auth.DefaultPrincipalBuilder</a>
<div class="block"><span class="deprecationComment">As of Kafka 1.0.0. This will be removed in a future major release.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/clients/admin/ElectPreferredLeadersOptions.html" title="class in org.apache.kafka.clients.admin">org.apache.kafka.clients.admin.ElectPreferredLeadersOptions</a>
<div class="block"><span class="deprecationComment">Since 2.4.0. Use <a href="org/apache/kafka/clients/admin/Admin.html#electLeaders-org.apache.kafka.common.ElectionType-java.util.Set-org.apache.kafka.clients.admin.ElectLeadersOptions-"><code>Admin.electLeaders(ElectionType, Set, ElectLeadersOptions)</code></a>.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/clients/admin/ElectPreferredLeadersResult.html" title="class in org.apache.kafka.clients.admin">org.apache.kafka.clients.admin.ElectPreferredLeadersResult</a>
<div class="block"><span class="deprecationComment">Since 2.4.0. Use <a href="org/apache/kafka/clients/admin/Admin.html#electLeaders-org.apache.kafka.common.ElectionType-java.util.Set-org.apache.kafka.clients.admin.ElectLeadersOptions-"><code>Admin.electLeaders(ElectionType, Set, ElectLeadersOptions)</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/test/OutputVerifier.html" title="class in org.apache.kafka.streams.test">org.apache.kafka.streams.test.OutputVerifier</a>
<div class="block"><span class="deprecationComment">Since 2.4 use methods of <a href="org/apache/kafka/streams/TestOutputTopic.html" title="class in org.apache.kafka.streams"><code>TestOutputTopic</code></a> and standard assertion libraries instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/Serialized.html" title="class in org.apache.kafka.streams.kstream">org.apache.kafka.streams.kstream.Serialized</a>
<div class="block"><span class="deprecationComment">since 2.1. Use <a href="org/apache/kafka/streams/kstream/Grouped.html" title="class in org.apache.kafka.streams.kstream"><code>Grouped</code></a> instead</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/apache/kafka/common/config/SslConfigs.html#DEFAULT_PRINCIPAL_BUILDER_CLASS">org.apache.kafka.common.config.SslConfigs.DEFAULT_PRINCIPAL_BUILDER_CLASS</a>
<div class="block"><span class="deprecationComment">As of 1.0.0. This field will be removed in a future major release. In recent versions,
   the config is optional and there is no default.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/common/config/SaslConfigs.html#DEFAULT_SASL_ENABLED_MECHANISMS">org.apache.kafka.common.config.SaslConfigs.DEFAULT_SASL_ENABLED_MECHANISMS</a>
<div class="block"><span class="deprecationComment">As of 1.0.0. This field will be removed in a future major release.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/common/config/SaslConfigs.html#DEFAULT_SASL_KERBEROS_PRINCIPAL_TO_LOCAL_RULES">org.apache.kafka.common.config.SaslConfigs.DEFAULT_SASL_KERBEROS_PRINCIPAL_TO_LOCAL_RULES</a>
<div class="block"><span class="deprecationComment">As of 1.0.0. This field will be removed in a future major release.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/StreamsConfig.html#PARTITION_GROUPER_CLASS_CONFIG">org.apache.kafka.streams.StreamsConfig.PARTITION_GROUPER_CLASS_CONFIG</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/common/config/SslConfigs.html#PRINCIPAL_BUILDER_CLASS_CONFIG">org.apache.kafka.common.config.SslConfigs.PRINCIPAL_BUILDER_CLASS_CONFIG</a>
<div class="block"><span class="deprecationComment">As of 1.0.0. This field will be removed in a future major release.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/common/config/SslConfigs.html#PRINCIPAL_BUILDER_CLASS_DOC">org.apache.kafka.common.config.SslConfigs.PRINCIPAL_BUILDER_CLASS_DOC</a>
<div class="block"><span class="deprecationComment">As of 1.0.0. This field will be removed in a future major release.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/common/config/SaslConfigs.html#SASL_ENABLED_MECHANISMS">org.apache.kafka.common.config.SaslConfigs.SASL_ENABLED_MECHANISMS</a>
<div class="block"><span class="deprecationComment">As of 1.0.0. This field will be removed in a future major release.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/common/config/SaslConfigs.html#SASL_ENABLED_MECHANISMS_DOC">org.apache.kafka.common.config.SaslConfigs.SASL_ENABLED_MECHANISMS_DOC</a>
<div class="block"><span class="deprecationComment">As of 1.0.0. This field will be removed in a future major release.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/common/config/SaslConfigs.html#SASL_KERBEROS_PRINCIPAL_TO_LOCAL_RULES">org.apache.kafka.common.config.SaslConfigs.SASL_KERBEROS_PRINCIPAL_TO_LOCAL_RULES</a>
<div class="block"><span class="deprecationComment">As of 1.0.0. This field will be removed in a future major release.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/common/config/SaslConfigs.html#SASL_KERBEROS_PRINCIPAL_TO_LOCAL_RULES_DOC">org.apache.kafka.common.config.SaslConfigs.SASL_KERBEROS_PRINCIPAL_TO_LOCAL_RULES_DOC</a>
<div class="block"><span class="deprecationComment">As of 1.0.0. This field will be removed in a future major release.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/Windows.html#segments">org.apache.kafka.streams.kstream.Windows.segments</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/common/config/SslConfigs.html#SSL_CLIENT_AUTH_CONFIG">org.apache.kafka.common.config.SslConfigs.SSL_CLIENT_AUTH_CONFIG</a>
<div class="block"><span class="deprecationComment">As of 1.0.0. This field will be removed in a future major release.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/common/config/SslConfigs.html#SSL_CLIENT_AUTH_DOC">org.apache.kafka.common.config.SslConfigs.SSL_CLIENT_AUTH_DOC</a>
<div class="block"><span class="deprecationComment">As of 1.0.0. This field will be removed in a future major release.</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/apache/kafka/streams/StreamsBuilder.html#addGlobalStore-org.apache.kafka.streams.state.StoreBuilder-java.lang.String-java.lang.String-org.apache.kafka.streams.kstream.Consumed-java.lang.String-org.apache.kafka.streams.processor.ProcessorSupplier-">org.apache.kafka.streams.StreamsBuilder.addGlobalStore(StoreBuilder, String, String, Consumed, String, ProcessorSupplier)</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/kafka/streams/StreamsBuilder.html#addGlobalStore-org.apache.kafka.streams.state.StoreBuilder-java.lang.String-org.apache.kafka.streams.kstream.Consumed-org.apache.kafka.streams.processor.ProcessorSupplier-"><code>StreamsBuilder.addGlobalStore(StoreBuilder, String, Consumed, ProcessorSupplier)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/TimeWindows.html#advanceBy-long-">org.apache.kafka.streams.kstream.TimeWindows.advanceBy(long)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/kafka/streams/kstream/TimeWindows.html#advanceBy-java.time.Duration-"><code>TimeWindows.advanceBy(Duration)</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/TopologyTestDriver.html#advanceWallClockTime-long-">org.apache.kafka.streams.TopologyTestDriver.advanceWallClockTime(long)</a>
<div class="block"><span class="deprecationComment">Since 2.4 use <a href="org/apache/kafka/streams/TopologyTestDriver.html#advanceWallClockTime-java.time.Duration-"><code>TopologyTestDriver.advanceWallClockTime(Duration)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/JoinWindows.html#after-long-">org.apache.kafka.streams.kstream.JoinWindows.after(long)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/kafka/streams/kstream/JoinWindows.html#after-java.time.Duration-"><code>JoinWindows.after(Duration)</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/clients/admin/Admin.html#alterConfigs-java.util.Map-">org.apache.kafka.clients.admin.Admin.alterConfigs(Map&lt;ConfigResource, Config&gt;)</a>
<div class="block"><span class="deprecationComment">Since 2.3. Use <a href="org/apache/kafka/clients/admin/Admin.html#incrementalAlterConfigs-java.util.Map-"><code>Admin.incrementalAlterConfigs(Map)</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/clients/admin/KafkaAdminClient.html#alterConfigs-java.util.Map-org.apache.kafka.clients.admin.AlterConfigsOptions-">org.apache.kafka.clients.admin.KafkaAdminClient.alterConfigs(Map&lt;ConfigResource, Config&gt;, AlterConfigsOptions)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/clients/admin/Admin.html#alterConfigs-java.util.Map-org.apache.kafka.clients.admin.AlterConfigsOptions-">org.apache.kafka.clients.admin.Admin.alterConfigs(Map&lt;ConfigResource, Config&gt;, AlterConfigsOptions)</a>
<div class="block"><span class="deprecationComment">Since 2.3. Use <a href="org/apache/kafka/clients/admin/Admin.html#incrementalAlterConfigs-java.util.Map-org.apache.kafka.clients.admin.AlterConfigsOptions-"><code>Admin.incrementalAlterConfigs(Map, AlterConfigsOptions)</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/JoinWindows.html#before-long-">org.apache.kafka.streams.kstream.JoinWindows.before(long)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/kafka/streams/kstream/JoinWindows.html#before-java.time.Duration-"><code>JoinWindows.before(Duration)</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/clients/producer/RecordMetadata.html#checksum--">org.apache.kafka.clients.producer.RecordMetadata.checksum()</a>
<div class="block"><span class="deprecationComment">As of Kafka 0.11.0. Because of the potential for message format conversion on the broker, the
             computed checksum may not match what was stored on the broker, or what will be returned to the consumer.
             It is therefore unsafe to depend on this checksum for end-to-end delivery guarantees. Additionally,
             message format v2 does not include a record-level checksum (for performance, the record checksum
             was replaced with a batch checksum). To maintain compatibility, a partial checksum computed from
             the record timestamp, serialized key size, and serialized value size is returned instead, but
             this should not be depended on for end-to-end reliability.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/clients/consumer/ConsumerRecord.html#checksum--">org.apache.kafka.clients.consumer.ConsumerRecord.checksum()</a>
<div class="block"><span class="deprecationComment">As of Kafka 0.11.0. Because of the potential for message format conversion on the broker, the
             checksum returned by the broker may not match what was computed by the producer.
             It is therefore unsafe to depend on this checksum for end-to-end delivery guarantees. Additionally,
             message format v2 does not include a record-level checksum (for performance, the record checksum
             was replaced with a batch checksum). To maintain compatibility, a partial checksum computed from
             the record timestamp, serialized key size, and serialized value size is returned instead, but
             this should not be depended on for end-to-end reliability.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/clients/producer/Producer.html#close-long-java.util.concurrent.TimeUnit-">org.apache.kafka.clients.producer.Producer.close(long, TimeUnit)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/clients/admin/Admin.html#close-long-java.util.concurrent.TimeUnit-">org.apache.kafka.clients.admin.Admin.close(long, TimeUnit)</a>
<div class="block"><span class="deprecationComment">Since 2.2. Use <a href="org/apache/kafka/clients/admin/Admin.html#close-java.time.Duration-"><code>Admin.close(Duration)</code></a> or <a href="org/apache/kafka/clients/admin/Admin.html#close--"><code>Admin.close()</code></a>.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/clients/consumer/Consumer.html#close-long-java.util.concurrent.TimeUnit-">org.apache.kafka.clients.consumer.Consumer.close(long, TimeUnit)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/clients/consumer/KafkaConsumer.html#close-long-java.util.concurrent.TimeUnit-">org.apache.kafka.clients.consumer.KafkaConsumer.close(long, TimeUnit)</a>
<div class="block"><span class="deprecationComment">Since 2.0. Use <a href="org/apache/kafka/clients/consumer/KafkaConsumer.html#close-java.time.Duration-"><code>KafkaConsumer.close(Duration)</code></a> or <a href="org/apache/kafka/clients/consumer/KafkaConsumer.html#close--"><code>KafkaConsumer.close()</code></a>.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/KafkaStreams.html#close-long-java.util.concurrent.TimeUnit-">org.apache.kafka.streams.KafkaStreams.close(long, TimeUnit)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/kafka/streams/KafkaStreams.html#close-java.time.Duration-"><code>KafkaStreams.close(Duration)</code></a> instead; note, that <a href="org/apache/kafka/streams/KafkaStreams.html#close-java.time.Duration-"><code>KafkaStreams.close(Duration)</code></a> has different semantics and does not block on zero, e.g., `Duration.ofMillis(0)`.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/clients/consumer/MockConsumer.html#committed-org.apache.kafka.common.TopicPartition-">org.apache.kafka.clients.consumer.MockConsumer.committed(TopicPartition)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/clients/consumer/Consumer.html#committed-org.apache.kafka.common.TopicPartition-">org.apache.kafka.clients.consumer.Consumer.committed(TopicPartition)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/clients/consumer/KafkaConsumer.html#committed-org.apache.kafka.common.TopicPartition-">org.apache.kafka.clients.consumer.KafkaConsumer.committed(TopicPartition)</a>
<div class="block"><span class="deprecationComment">since 2.4 Use <a href="org/apache/kafka/clients/consumer/KafkaConsumer.html#committed-java.util.Set-"><code>KafkaConsumer.committed(Set)</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/clients/consumer/MockConsumer.html#committed-org.apache.kafka.common.TopicPartition-java.time.Duration-">org.apache.kafka.clients.consumer.MockConsumer.committed(TopicPartition, Duration)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/clients/consumer/Consumer.html#committed-org.apache.kafka.common.TopicPartition-java.time.Duration-">org.apache.kafka.clients.consumer.Consumer.committed(TopicPartition, Duration)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/clients/consumer/KafkaConsumer.html#committed-org.apache.kafka.common.TopicPartition-java.time.Duration-">org.apache.kafka.clients.consumer.KafkaConsumer.committed(TopicPartition, Duration)</a>
<div class="block"><span class="deprecationComment">since 2.4 Use <a href="org/apache/kafka/clients/consumer/KafkaConsumer.html#committed-java.util.Set-java.time.Duration-"><code>KafkaConsumer.committed(Set, Duration)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/clients/admin/Admin.html#electPreferredLeaders-java.util.Collection-">org.apache.kafka.clients.admin.Admin.electPreferredLeaders(Collection&lt;TopicPartition&gt;)</a>
<div class="block"><span class="deprecationComment">Since 2.4.0. Use <a href="org/apache/kafka/clients/admin/Admin.html#electLeaders-org.apache.kafka.common.ElectionType-java.util.Set-"><code>Admin.electLeaders(ElectionType, Set)</code></a>.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/clients/admin/Admin.html#electPreferredLeaders-java.util.Collection-org.apache.kafka.clients.admin.ElectPreferredLeadersOptions-">org.apache.kafka.clients.admin.Admin.electPreferredLeaders(Collection&lt;TopicPartition&gt;, ElectPreferredLeadersOptions)</a>
<div class="block"><span class="deprecationComment">Since 2.4.0. Use <a href="org/apache/kafka/clients/admin/Admin.html#electLeaders-org.apache.kafka.common.ElectionType-java.util.Set-org.apache.kafka.clients.admin.ElectLeadersOptions-"><code>Admin.electLeaders(ElectionType, Set, ElectLeadersOptions)</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/state/ReadOnlyWindowStore.html#fetch-K-K-long-long-">org.apache.kafka.streams.state.ReadOnlyWindowStore.fetch(K, K, long, long)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/kafka/streams/state/ReadOnlyWindowStore.html#fetch-K-K-java.time.Instant-java.time.Instant-"><code>ReadOnlyWindowStore.fetch(Object, Object, Instant, Instant)</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/state/ReadOnlyWindowStore.html#fetch-K-long-long-">org.apache.kafka.streams.state.ReadOnlyWindowStore.fetch(K, long, long)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/kafka/streams/state/ReadOnlyWindowStore.html#fetch-K-java.time.Instant-java.time.Instant-"><code>ReadOnlyWindowStore.fetch(Object, Instant, Instant)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/state/ReadOnlyWindowStore.html#fetchAll-long-long-">org.apache.kafka.streams.state.ReadOnlyWindowStore.fetchAll(long, long)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/kafka/streams/state/ReadOnlyWindowStore.html#fetchAll-java.time.Instant-java.time.Instant-"><code>ReadOnlyWindowStore.fetchAll(Instant, Instant)</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/processor/ProcessorContext.html#forward-K-V-int-">org.apache.kafka.streams.processor.ProcessorContext.forward(K, V, int)</a>
<div class="block"><span class="deprecationComment">please use <a href="org/apache/kafka/streams/processor/ProcessorContext.html#forward-K-V-org.apache.kafka.streams.processor.To-"><code>ProcessorContext.forward(Object, Object, To)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/processor/MockProcessorContext.html#forward-K-V-int-">org.apache.kafka.streams.processor.MockProcessorContext.forward(K, V, int)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/processor/ProcessorContext.html#forward-K-V-java.lang.String-">org.apache.kafka.streams.processor.ProcessorContext.forward(K, V, String)</a>
<div class="block"><span class="deprecationComment">please use <a href="org/apache/kafka/streams/processor/ProcessorContext.html#forward-K-V-org.apache.kafka.streams.processor.To-"><code>ProcessorContext.forward(Object, Object, To)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/processor/MockProcessorContext.html#forward-K-V-java.lang.String-">org.apache.kafka.streams.processor.MockProcessorContext.forward(K, V, String)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/common/security/auth/KafkaPrincipal.html#fromString-java.lang.String-">org.apache.kafka.common.security.auth.KafkaPrincipal.fromString(String)</a>
<div class="block"><span class="deprecationComment">As of 1.0.0. This method will be removed in a future major release.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/KafkaClientSupplier.html#getAdminClient-java.util.Map-">org.apache.kafka.streams.KafkaClientSupplier.getAdminClient(Map&lt;String, Object&gt;)</a>
<div class="block"><span class="deprecationComment">Not called by Kafka Streams, which now uses <a href="org/apache/kafka/streams/KafkaClientSupplier.html#getAdmin-java.util.Map-"><code>KafkaClientSupplier.getAdmin(java.util.Map&lt;java.lang.String, java.lang.Object&gt;)</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/StreamsConfig.html#getConsumerConfigs-java.lang.String-java.lang.String-">org.apache.kafka.streams.StreamsConfig.getConsumerConfigs(String, String)</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/kafka/streams/StreamsConfig.html#getMainConsumerConfigs-java.lang.String-java.lang.String-int-"><code>StreamsConfig.getMainConsumerConfigs(String, String, int)</code></a></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/KTable.html#groupBy-org.apache.kafka.streams.kstream.KeyValueMapper-org.apache.kafka.streams.kstream.Serialized-">org.apache.kafka.streams.kstream.KTable.groupBy(KeyValueMapper&lt;? super K, ? super V, KeyValue&lt;KR, VR&gt;&gt;, Serialized&lt;KR, VR&gt;)</a>
<div class="block"><span class="deprecationComment">since 2.1. Use <a href="org/apache/kafka/streams/kstream/KTable.html#groupBy-org.apache.kafka.streams.kstream.KeyValueMapper-org.apache.kafka.streams.kstream.Grouped-"><code>KTable.groupBy(KeyValueMapper, Grouped)</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/KStream.html#groupBy-org.apache.kafka.streams.kstream.KeyValueMapper-org.apache.kafka.streams.kstream.Serialized-">org.apache.kafka.streams.kstream.KStream.groupBy(KeyValueMapper&lt;? super K, ? super V, KR&gt;, Serialized&lt;KR, V&gt;)</a>
<div class="block"><span class="deprecationComment">since 2.1. Use <a href="org/apache/kafka/streams/kstream/KStream.html#groupBy-org.apache.kafka.streams.kstream.KeyValueMapper-org.apache.kafka.streams.kstream.Grouped-"><code>KStream.groupBy(KeyValueMapper, Grouped)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/KStream.html#groupByKey-org.apache.kafka.streams.kstream.Serialized-">org.apache.kafka.streams.kstream.KStream.groupByKey(Serialized&lt;K, V&gt;)</a>
<div class="block"><span class="deprecationComment">since 2.1. Use <a href="org/apache/kafka/streams/kstream/KStream.html#groupByKey-org.apache.kafka.streams.kstream.Grouped-"><code>KStream.groupByKey(Grouped)</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/KStream.html#join-org.apache.kafka.streams.kstream.KStream-org.apache.kafka.streams.kstream.ValueJoiner-org.apache.kafka.streams.kstream.JoinWindows-org.apache.kafka.streams.kstream.Joined-">org.apache.kafka.streams.kstream.KStream.join(KStream&lt;K, VO&gt;, ValueJoiner&lt;? super V, ? super VO, ? extends VR&gt;, JoinWindows, Joined&lt;K, V, VO&gt;)</a>
<div class="block"><span class="deprecationComment">since 2.4. Use <a href="org/apache/kafka/streams/kstream/KStream.html#join-org.apache.kafka.streams.kstream.KStream-org.apache.kafka.streams.kstream.ValueJoiner-org.apache.kafka.streams.kstream.JoinWindows-org.apache.kafka.streams.kstream.StreamJoined-"><code>KStream.join(KStream, ValueJoiner, JoinWindows, StreamJoined)</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/KStream.html#leftJoin-org.apache.kafka.streams.kstream.KStream-org.apache.kafka.streams.kstream.ValueJoiner-org.apache.kafka.streams.kstream.JoinWindows-org.apache.kafka.streams.kstream.Joined-">org.apache.kafka.streams.kstream.KStream.leftJoin(KStream&lt;K, VO&gt;, ValueJoiner&lt;? super V, ? super VO, ? extends VR&gt;, JoinWindows, Joined&lt;K, V, VO&gt;)</a>
<div class="block"><span class="deprecationComment">since 2.4. Use <a href="org/apache/kafka/streams/kstream/KStream.html#leftJoin-org.apache.kafka.streams.kstream.KStream-org.apache.kafka.streams.kstream.ValueJoiner-org.apache.kafka.streams.kstream.JoinWindows-org.apache.kafka.streams.kstream.StreamJoined-"><code>KStream.leftJoin(KStream, ValueJoiner, JoinWindows, StreamJoined)</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/JoinWindows.html#maintainMs--">org.apache.kafka.streams.kstream.JoinWindows.maintainMs()</a>
<div class="block"><span class="deprecationComment">since 2.1. This function should not be used anymore, since <a href="org/apache/kafka/streams/kstream/JoinWindows.html#until-long-"><code>JoinWindows.until(long)</code></a>
             is deprecated in favor of <a href="org/apache/kafka/streams/kstream/JoinWindows.html#grace-java.time.Duration-"><code>JoinWindows.grace(Duration)</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/Windows.html#maintainMs--">org.apache.kafka.streams.kstream.Windows.maintainMs()</a>
<div class="block"><span class="deprecationComment">since 2.1. Use <a href="org/apache/kafka/streams/kstream/Materialized.html#retention"><code>Materialized.retention</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/TimeWindows.html#maintainMs--">org.apache.kafka.streams.kstream.TimeWindows.maintainMs()</a>
<div class="block"><span class="deprecationComment">since 2.1. Use <a href="org/apache/kafka/streams/kstream/Materialized.html#retention"><code>Materialized.retention</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/UnlimitedWindows.html#maintainMs--">org.apache.kafka.streams.kstream.UnlimitedWindows.maintainMs()</a>
<div class="block"><span class="deprecationComment">since 2.1. Use <a href="org/apache/kafka/streams/kstream/Materialized.html#retention"><code>Materialized.retention</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/SessionWindows.html#maintainMs--">org.apache.kafka.streams.kstream.SessionWindows.maintainMs()</a>
<div class="block"><span class="deprecationComment">since 2.1. Use <a href="org/apache/kafka/streams/kstream/Materialized.html#retention"><code>Materialized.retention</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/Joined.html#name--">org.apache.kafka.streams.kstream.Joined.name()</a>
<div class="block"><span class="deprecationComment">this method will be removed in a in a future release</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/Joined.html#named-java.lang.String-">org.apache.kafka.streams.kstream.Joined.named(String)</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/kafka/streams/kstream/Joined.html#as-java.lang.String-"><code>Joined.as(String)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/JoinWindows.html#of-long-">org.apache.kafka.streams.kstream.JoinWindows.of(long)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/kafka/streams/kstream/JoinWindows.html#of-java.time.Duration-"><code>JoinWindows.of(Duration)</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/TimeWindows.html#of-long-">org.apache.kafka.streams.kstream.TimeWindows.of(long)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/kafka/streams/kstream/TimeWindows.html#of-java.time.Duration-"><code>TimeWindows.of(Duration)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/connect/sink/SinkTask.html#onPartitionsAssigned-java.util.Collection-">org.apache.kafka.connect.sink.SinkTask.onPartitionsAssigned(Collection&lt;TopicPartition&gt;)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/kafka/connect/sink/SinkTask.html#open-java.util.Collection-"><code>SinkTask.open(Collection)</code></a> for partition initialization.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/connect/sink/SinkTask.html#onPartitionsRevoked-java.util.Collection-">org.apache.kafka.connect.sink.SinkTask.onPartitionsRevoked(Collection&lt;TopicPartition&gt;)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/kafka/connect/sink/SinkTask.html#close-java.util.Collection-"><code>SinkTask.close(Collection)</code></a> instead for partition cleanup.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/KStream.html#outerJoin-org.apache.kafka.streams.kstream.KStream-org.apache.kafka.streams.kstream.ValueJoiner-org.apache.kafka.streams.kstream.JoinWindows-org.apache.kafka.streams.kstream.Joined-">org.apache.kafka.streams.kstream.KStream.outerJoin(KStream&lt;K, VO&gt;, ValueJoiner&lt;? super V, ? super VO, ? extends VR&gt;, JoinWindows, Joined&lt;K, V, VO&gt;)</a>
<div class="block"><span class="deprecationComment">since 2.4. Use <a href="org/apache/kafka/streams/kstream/KStream.html#outerJoin-org.apache.kafka.streams.kstream.KStream-org.apache.kafka.streams.kstream.ValueJoiner-org.apache.kafka.streams.kstream.JoinWindows-org.apache.kafka.streams.kstream.StreamJoined-"><code>KStream.outerJoin(KStream, ValueJoiner, JoinWindows, StreamJoined)</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/clients/consumer/NoOffsetForPartitionException.html#partition--">org.apache.kafka.clients.consumer.NoOffsetForPartitionException.partition()</a>
<div class="block"><span class="deprecationComment">please use <a href="org/apache/kafka/clients/consumer/NoOffsetForPartitionException.html#partitions"><code>NoOffsetForPartitionException.partitions</code></a></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/state/Stores.html#persistentSessionStore-java.lang.String-long-">org.apache.kafka.streams.state.Stores.persistentSessionStore(String, long)</a>
<div class="block"><span class="deprecationComment">since 2.1 Use <a href="org/apache/kafka/streams/state/Stores.html#persistentSessionStore-java.lang.String-java.time.Duration-"><code>Stores.persistentSessionStore(String, Duration)</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/state/Stores.html#persistentWindowStore-java.lang.String-long-int-long-boolean-">org.apache.kafka.streams.state.Stores.persistentWindowStore(String, long, int, long, boolean)</a>
<div class="block"><span class="deprecationComment">since 2.1 Use <a href="org/apache/kafka/streams/state/Stores.html#persistentWindowStore-java.lang.String-java.time.Duration-java.time.Duration-boolean-"><code>Stores.persistentWindowStore(String, Duration, Duration, boolean)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/TopologyTestDriver.html#pipeInput-org.apache.kafka.clients.consumer.ConsumerRecord-">org.apache.kafka.streams.TopologyTestDriver.pipeInput(ConsumerRecord&lt;byte[], byte[]&gt;)</a>
<div class="block"><span class="deprecationComment">Since 2.4 use methods of <a href="org/apache/kafka/streams/TestInputTopic.html" title="class in org.apache.kafka.streams"><code>TestInputTopic</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/TopologyTestDriver.html#pipeInput-java.util.List-">org.apache.kafka.streams.TopologyTestDriver.pipeInput(List&lt;ConsumerRecord&lt;byte[], byte[]&gt;&gt;)</a>
<div class="block"><span class="deprecationComment">Since 2.4 use methods of <a href="org/apache/kafka/streams/TestInputTopic.html" title="class in org.apache.kafka.streams"><code>TestInputTopic</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/clients/consumer/MockConsumer.html#poll-long-">org.apache.kafka.clients.consumer.MockConsumer.poll(long)</a></td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/clients/consumer/Consumer.html#poll-long-">org.apache.kafka.clients.consumer.Consumer.poll(long)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/clients/consumer/KafkaConsumer.html#poll-long-">org.apache.kafka.clients.consumer.KafkaConsumer.poll(long)</a>
<div class="block"><span class="deprecationComment">Since 2.0. Use <a href="org/apache/kafka/clients/consumer/KafkaConsumer.html#poll-java.time.Duration-"><code>KafkaConsumer.poll(Duration)</code></a>, which does not block beyond the timeout awaiting partition
             assignment. See <a href="https://cwiki.apache.org/confluence/x/5kiHB">KIP-266</a> for more information.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/state/WindowStore.html#put-K-V-">org.apache.kafka.streams.state.WindowStore.put(K, V)</a>
<div class="block"><span class="deprecationComment">as timestamp is not provided for the key-value pair, this causes inconsistency
 to identify the window frame to which the key belongs.
 Use <a href="org/apache/kafka/streams/state/WindowStore.html#put-K-V-long-"><code>WindowStore.put(Object, Object, long)</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/TopologyTestDriver.html#readOutput-java.lang.String-">org.apache.kafka.streams.TopologyTestDriver.readOutput(String)</a>
<div class="block"><span class="deprecationComment">Since 2.4 use methods of <a href="org/apache/kafka/streams/TestOutputTopic.html" title="class in org.apache.kafka.streams"><code>TestOutputTopic</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/TopologyTestDriver.html#readOutput-java.lang.String-org.apache.kafka.common.serialization.Deserializer-org.apache.kafka.common.serialization.Deserializer-">org.apache.kafka.streams.TopologyTestDriver.readOutput(String, Deserializer&lt;K&gt;, Deserializer&lt;V&gt;)</a>
<div class="block"><span class="deprecationComment">Since 2.4 use methods of <a href="org/apache/kafka/streams/TestOutputTopic.html" title="class in org.apache.kafka.streams"><code>TestOutputTopic</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/processor/ProcessorContext.html#schedule-long-org.apache.kafka.streams.processor.PunctuationType-org.apache.kafka.streams.processor.Punctuator-">org.apache.kafka.streams.processor.ProcessorContext.schedule(long, PunctuationType, Punctuator)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/kafka/streams/processor/ProcessorContext.html#schedule-java.time.Duration-org.apache.kafka.streams.processor.PunctuationType-org.apache.kafka.streams.processor.Punctuator-"><code>ProcessorContext.schedule(Duration, PunctuationType, Punctuator)</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/processor/MockProcessorContext.html#schedule-long-org.apache.kafka.streams.processor.PunctuationType-org.apache.kafka.streams.processor.Punctuator-">org.apache.kafka.streams.processor.MockProcessorContext.schedule(long, PunctuationType, Punctuator)</a></td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/state/WindowBytesStoreSupplier.html#segments--">org.apache.kafka.streams.state.WindowBytesStoreSupplier.segments()</a>
<div class="block"><span class="deprecationComment">since 2.1. Use <a href="org/apache/kafka/streams/state/WindowBytesStoreSupplier.html#segmentIntervalMs--"><code>WindowBytesStoreSupplier.segmentIntervalMs()</code></a> instead.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/Windows.html#segments-int-">org.apache.kafka.streams.kstream.Windows.segments(int)</a>
<div class="block"><span class="deprecationComment">since 2.1 Override segmentInterval() instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/clients/consumer/MockConsumer.html#setException-org.apache.kafka.common.KafkaException-">org.apache.kafka.clients.consumer.MockConsumer.setException(KafkaException)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/kafka/clients/consumer/MockConsumer.html#setPollException-org.apache.kafka.common.KafkaException-"><code>MockConsumer.setPollException(KafkaException)</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/UnlimitedWindows.html#startOn-long-">org.apache.kafka.streams.kstream.UnlimitedWindows.startOn(long)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/kafka/streams/kstream/UnlimitedWindows.html#startOn-java.time.Instant-"><code>UnlimitedWindows.startOn(Instant)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/TopologyDescription.Source.html#topics--">org.apache.kafka.streams.TopologyDescription.Source.topics()</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/kafka/streams/TopologyDescription.Source.html#topicSet--"><code>TopologyDescription.Source.topicSet()</code></a> or <a href="org/apache/kafka/streams/TopologyDescription.Source.html#topicPattern--"><code>TopologyDescription.Source.topicPattern()</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/JoinWindows.html#until-long-">org.apache.kafka.streams.kstream.JoinWindows.until(long)</a>
<div class="block"><span class="deprecationComment">since 2.1. Use <a href="org/apache/kafka/streams/kstream/JoinWindows.html#grace-java.time.Duration-"><code>JoinWindows.grace(Duration)</code></a> instead.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/Windows.html#until-long-">org.apache.kafka.streams.kstream.Windows.until(long)</a>
<div class="block"><span class="deprecationComment">since 2.1. Use <a href="org/apache/kafka/streams/kstream/Materialized.html#withRetention-java.time.Duration-"><code>Materialized.withRetention(Duration)</code></a>
             or directly configure the retention in a store supplier and use <a href="org/apache/kafka/streams/kstream/Materialized.html#as-org.apache.kafka.streams.state.WindowBytesStoreSupplier-"><code>Materialized.as(WindowBytesStoreSupplier)</code></a>.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/TimeWindows.html#until-long-">org.apache.kafka.streams.kstream.TimeWindows.until(long)</a>
<div class="block"><span class="deprecationComment">since 2.1. Use <a href="org/apache/kafka/streams/kstream/Materialized.html#retention"><code>Materialized.retention</code></a> or directly configure the retention in a store supplier
             and use <a href="org/apache/kafka/streams/kstream/Materialized.html#as-org.apache.kafka.streams.state.WindowBytesStoreSupplier-"><code>Materialized.as(WindowBytesStoreSupplier)</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/UnlimitedWindows.html#until-long-">org.apache.kafka.streams.kstream.UnlimitedWindows.until(long)</a>
<div class="block"><span class="deprecationComment">since 2.1.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/SessionWindows.html#until-long-">org.apache.kafka.streams.kstream.SessionWindows.until(long)</a>
<div class="block"><span class="deprecationComment">since 2.1. Use <a href="org/apache/kafka/streams/kstream/Materialized.html#retention"><code>Materialized.retention</code></a>
             or directly configure the retention in a store supplier and use
             <a href="org/apache/kafka/streams/kstream/Materialized.html#as-org.apache.kafka.streams.state.SessionBytesStoreSupplier-"><code>Materialized.as(SessionBytesStoreSupplier)</code></a>.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/common/Metric.html#value--">org.apache.kafka.common.Metric.value()</a>
<div class="block"><span class="deprecationComment">As of 1.0.0, use <a href="org/apache/kafka/common/Metric.html#metricValue--"><code>Metric.metricValue()</code></a> instead. This will be removed in a future major release.</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/kstream/SessionWindows.html#with-long-">org.apache.kafka.streams.kstream.SessionWindows.with(long)</a>
<div class="block"><span class="deprecationComment">Use <a href="org/apache/kafka/streams/kstream/SessionWindows.html#with-java.time.Duration-"><code>SessionWindows.with(Duration)</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/apache/kafka/common/acl/AclBinding.html#AclBinding-org.apache.kafka.common.resource.Resource-org.apache.kafka.common.acl.AccessControlEntry-">org.apache.kafka.common.acl.AclBinding(Resource, AccessControlEntry)</a>
<div class="block"><span class="deprecationComment">Since 2.0. Use <a href="org/apache/kafka/common/acl/AclBinding.html#AclBinding-org.apache.kafka.common.resource.ResourcePattern-org.apache.kafka.common.acl.AccessControlEntry-"><code>AclBinding.AclBinding(ResourcePattern, AccessControlEntry)</code></a></span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/common/acl/AclBindingFilter.html#AclBindingFilter-org.apache.kafka.common.resource.ResourceFilter-org.apache.kafka.common.acl.AccessControlEntryFilter-">org.apache.kafka.common.acl.AclBindingFilter(ResourceFilter, AccessControlEntryFilter)</a>
<div class="block"><span class="deprecationComment">Since 2.0. Use <a href="org/apache/kafka/common/acl/AclBindingFilter.html#AclBindingFilter-org.apache.kafka.common.resource.ResourcePatternFilter-org.apache.kafka.common.acl.AccessControlEntryFilter-"><code>AclBindingFilter.AclBindingFilter(ResourcePatternFilter, AccessControlEntryFilter)</code></a></span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/clients/admin/ConfigEntry.html#ConfigEntry-java.lang.String-java.lang.String-boolean-boolean-boolean-">org.apache.kafka.clients.admin.ConfigEntry(String, String, boolean, boolean, boolean)</a>
<div class="block"><span class="deprecationComment">since 1.1.0. This constructor will be removed in a future release.</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/KafkaStreams.html#KafkaStreams-org.apache.kafka.streams.Topology-org.apache.kafka.streams.StreamsConfig-">org.apache.kafka.streams.KafkaStreams(Topology, StreamsConfig)</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/kafka/streams/KafkaStreams.html#KafkaStreams-org.apache.kafka.streams.Topology-java.util.Properties-"><code>KafkaStreams.KafkaStreams(Topology, Properties)</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/KafkaStreams.html#KafkaStreams-org.apache.kafka.streams.Topology-org.apache.kafka.streams.StreamsConfig-org.apache.kafka.streams.KafkaClientSupplier-">org.apache.kafka.streams.KafkaStreams(Topology, StreamsConfig, KafkaClientSupplier)</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/kafka/streams/KafkaStreams.html#KafkaStreams-org.apache.kafka.streams.Topology-java.util.Properties-org.apache.kafka.streams.KafkaClientSupplier-"><code>KafkaStreams.KafkaStreams(Topology, Properties, KafkaClientSupplier)</code></a> instead</span></div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><a href="org/apache/kafka/streams/KafkaStreams.html#KafkaStreams-org.apache.kafka.streams.Topology-org.apache.kafka.streams.StreamsConfig-org.apache.kafka.common.utils.Time-">org.apache.kafka.streams.KafkaStreams(Topology, StreamsConfig, Time)</a>
<div class="block"><span class="deprecationComment">use <a href="org/apache/kafka/streams/KafkaStreams.html#KafkaStreams-org.apache.kafka.streams.Topology-java.util.Properties-org.apache.kafka.common.utils.Time-"><code>KafkaStreams.KafkaStreams(Topology, Properties, Time)</code></a> instead</span></div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><a href="org/apache/kafka/streams/TopologyTestDriver.html#TopologyTestDriver-org.apache.kafka.streams.Topology-java.util.Properties-long-">org.apache.kafka.streams.TopologyTestDriver(Topology, Properties, long)</a>
<div class="block"><span class="deprecationComment">Since 2.4 use <a href="org/apache/kafka/streams/TopologyTestDriver.html#TopologyTestDriver-org.apache.kafka.streams.Topology-java.util.Properties-java.time.Instant-"><code>TopologyTestDriver.TopologyTestDriver(Topology, Properties, Instant)</code></a></span></div>
</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><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&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 ======= -->
</body>
</html>
