<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<link rel="canonical" href="https://ignite.apache.org/releases/2.7.6/javadoc/org/apache/ignite/configuration/package-frame.html" />
<META NAME="ROBOTS" CONTENT="NOINDEX">

<!-- Generated by javadoc (1.8.0_212) on Wed Sep 11 22:29:57 MSK 2019 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>org.apache.ignite.configuration (Ignite 2.7.6)</title>
<meta name="date" content="2019-09-11">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<link rel='shortcut icon' href='https://ignite.apache.org/favicon.ico'/>

<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-61232409-1', 'auto');
  ga('send', 'pageview');

</script></head>

<body>
<h1 class="bar"><a href="../../../../org/apache/ignite/configuration/package-summary.html" target="classFrame">org.apache.ignite.configuration</a></h1>
<div class="indexContainer">
<h2 title="Interfaces">Interfaces</h2>
<ul title="Interfaces">
<li><a href="AddressResolver.html" title="interface in org.apache.ignite.configuration" target="classFrame"><span class="interfaceName">AddressResolver</span></a></li>
<li><a href="CommunicationFailureContext.html" title="interface in org.apache.ignite.configuration" target="classFrame"><span class="interfaceName">CommunicationFailureContext</span></a></li>
<li><a href="CommunicationFailureResolver.html" title="interface in org.apache.ignite.configuration" target="classFrame"><span class="interfaceName">CommunicationFailureResolver</span></a></li>
<li><a href="ConnectorMessageInterceptor.html" title="interface in org.apache.ignite.configuration" target="classFrame"><span class="interfaceName">ConnectorMessageInterceptor</span></a></li>
<li><a href="PlatformConfiguration.html" title="interface in org.apache.ignite.configuration" target="classFrame"><span class="interfaceName">PlatformConfiguration</span></a></li>
<li><a href="TopologyValidator.html" title="interface in org.apache.ignite.configuration" target="classFrame"><span class="interfaceName">TopologyValidator</span></a></li>
</ul>
<h2 title="Classes">Classes</h2>
<ul title="Classes">
<li><a href="AtomicConfiguration.html" title="class in org.apache.ignite.configuration" target="classFrame">AtomicConfiguration</a></li>
<li><a href="BasicAddressResolver.html" title="class in org.apache.ignite.configuration" target="classFrame">BasicAddressResolver</a></li>
<li><a href="BinaryConfiguration.html" title="class in org.apache.ignite.configuration" target="classFrame">BinaryConfiguration</a></li>
<li><a href="CacheConfiguration.html" title="class in org.apache.ignite.configuration" target="classFrame">CacheConfiguration</a></li>
<li><a href="CacheConfiguration.IgniteAllNodesPredicate.html" title="class in org.apache.ignite.configuration" target="classFrame">CacheConfiguration.IgniteAllNodesPredicate</a></li>
<li><a href="ClientConfiguration.html" title="class in org.apache.ignite.configuration" target="classFrame">ClientConfiguration</a></li>
<li><a href="ClientConnectorConfiguration.html" title="class in org.apache.ignite.configuration" target="classFrame">ClientConnectorConfiguration</a></li>
<li><a href="CollectionConfiguration.html" title="class in org.apache.ignite.configuration" target="classFrame">CollectionConfiguration</a></li>
<li><a href="ConnectorConfiguration.html" title="class in org.apache.ignite.configuration" target="classFrame">ConnectorConfiguration</a></li>
<li><a href="DataRegionConfiguration.html" title="class in org.apache.ignite.configuration" target="classFrame">DataRegionConfiguration</a></li>
<li><a href="DataStorageConfiguration.html" title="class in org.apache.ignite.configuration" target="classFrame">DataStorageConfiguration</a></li>
<li><a href="DefaultCommunicationFailureResolver.html" title="class in org.apache.ignite.configuration" target="classFrame">DefaultCommunicationFailureResolver</a></li>
<li><a href="ExecutorConfiguration.html" title="class in org.apache.ignite.configuration" target="classFrame">ExecutorConfiguration</a></li>
<li><a href="FileSystemConfiguration.html" title="class in org.apache.ignite.configuration" target="classFrame">FileSystemConfiguration</a></li>
<li><a href="HadoopConfiguration.html" title="class in org.apache.ignite.configuration" target="classFrame">HadoopConfiguration</a></li>
<li><a href="IgniteConfiguration.html" title="class in org.apache.ignite.configuration" target="classFrame">IgniteConfiguration</a></li>
<li><a href="IgniteReflectionFactory.html" title="class in org.apache.ignite.configuration" target="classFrame">IgniteReflectionFactory</a></li>
<li><a href="MemoryConfiguration.html" title="class in org.apache.ignite.configuration" target="classFrame">MemoryConfiguration</a></li>
<li><a href="MemoryPolicyConfiguration.html" title="class in org.apache.ignite.configuration" target="classFrame">MemoryPolicyConfiguration</a></li>
<li><a href="NearCacheConfiguration.html" title="class in org.apache.ignite.configuration" target="classFrame">NearCacheConfiguration</a></li>
<li><a href="OdbcConfiguration.html" title="class in org.apache.ignite.configuration" target="classFrame">OdbcConfiguration</a></li>
<li><a href="PersistentStoreConfiguration.html" title="class in org.apache.ignite.configuration" target="classFrame">PersistentStoreConfiguration</a></li>
<li><a href="SqlConnectorConfiguration.html" title="class in org.apache.ignite.configuration" target="classFrame">SqlConnectorConfiguration</a></li>
<li><a href="TransactionConfiguration.html" title="class in org.apache.ignite.configuration" target="classFrame">TransactionConfiguration</a></li>
</ul>
<h2 title="Enums">Enums</h2>
<ul title="Enums">
<li><a href="CheckpointWriteOrder.html" title="enum in org.apache.ignite.configuration" target="classFrame">CheckpointWriteOrder</a></li>
<li><a href="DataPageEvictionMode.html" title="enum in org.apache.ignite.configuration" target="classFrame">DataPageEvictionMode</a></li>
<li><a href="DeploymentMode.html" title="enum in org.apache.ignite.configuration" target="classFrame">DeploymentMode</a></li>
<li><a href="WALMode.html" title="enum in org.apache.ignite.configuration" target="classFrame">WALMode</a></li>
</ul>
</div>
</body>
</html>
