<!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.4.0/javadoc/org/apache/ignite/configuration/package-frame.html" />
<META NAME="ROBOTS" CONTENT="NOINDEX">

<!-- Generated by javadoc (1.8.0_77) on Mon Mar 05 10:43:21 UTC 2018 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>org.apache.ignite.configuration (Ignite 2.4.0)</title>
<meta name="date" content="2018-03-05">
<link rel="stylesheet" type="text/css" href="../../../../javadoc.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>

<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="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="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="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>
