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

<!-- Generated by javadoc (version 1.7.0_80) on Sun Apr 30 12:27:13 MSK 2017 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>org.apache.ignite.spi (Ignite 2.0.0)</title>
<meta name="date" content="2017-04-30">
<link rel="stylesheet" type="text/css" href="../../../../javadoc.css" title="Style">

<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/spi/package-summary.html" target="classFrame">org.apache.ignite.spi</a></h1>
<div class="indexContainer">
<h2 title="Interfaces">Interfaces</h2>
<ul title="Interfaces">
<li><a href="IgniteSpi.html" title="interface in org.apache.ignite.spi" target="classFrame"><i>IgniteSpi</i></a></li>
<li><a href="IgniteSpiCloseableIterator.html" title="interface in org.apache.ignite.spi" target="classFrame"><i>IgniteSpiCloseableIterator</i></a></li>
<li><a href="IgniteSpiContext.html" title="interface in org.apache.ignite.spi" target="classFrame"><i>IgniteSpiContext</i></a></li>
<li><a href="IgniteSpiManagementMBean.html" title="interface in org.apache.ignite.spi" target="classFrame"><i>IgniteSpiManagementMBean</i></a></li>
<li><a href="IgniteSpiTimeoutObject.html" title="interface in org.apache.ignite.spi" target="classFrame"><i>IgniteSpiTimeoutObject</i></a></li>
</ul>
<h2 title="Classes">Classes</h2>
<ul title="Classes">
<li><a href="IgniteNodeValidationResult.html" title="class in org.apache.ignite.spi" target="classFrame">IgniteNodeValidationResult</a></li>
<li><a href="IgniteSpiAdapter.html" title="class in org.apache.ignite.spi" target="classFrame">IgniteSpiAdapter</a></li>
<li><a href="IgniteSpiMBeanAdapter.html" title="class in org.apache.ignite.spi" target="classFrame">IgniteSpiMBeanAdapter</a></li>
<li><a href="IgniteSpiOperationTimeoutHelper.html" title="class in org.apache.ignite.spi" target="classFrame">IgniteSpiOperationTimeoutHelper</a></li>
<li><a href="IgniteSpiThread.html" title="class in org.apache.ignite.spi" target="classFrame">IgniteSpiThread</a></li>
<li><a href="IgniteSpiThreadFactory.html" title="class in org.apache.ignite.spi" target="classFrame">IgniteSpiThreadFactory</a></li>
</ul>
<h2 title="Enums">Enums</h2>
<ul title="Enums">
<li><a href="IgnitePortProtocol.html" title="enum in org.apache.ignite.spi" target="classFrame">IgnitePortProtocol</a></li>
</ul>
<h2 title="Exceptions">Exceptions</h2>
<ul title="Exceptions">
<li><a href="IgniteSpiException.html" title="class in org.apache.ignite.spi" target="classFrame">IgniteSpiException</a></li>
<li><a href="IgniteSpiMultiException.html" title="class in org.apache.ignite.spi" target="classFrame">IgniteSpiMultiException</a></li>
<li><a href="IgniteSpiOperationTimeoutException.html" title="class in org.apache.ignite.spi" target="classFrame">IgniteSpiOperationTimeoutException</a></li>
<li><a href="IgniteSpiVersionCheckException.html" title="class in org.apache.ignite.spi" target="classFrame">IgniteSpiVersionCheckException</a></li>
</ul>
<h2 title="Annotation Types">Annotation Types</h2>
<ul title="Annotation Types">
<li><a href="IgniteSpiConfiguration.html" title="annotation in org.apache.ignite.spi" target="classFrame">IgniteSpiConfiguration</a></li>
<li><a href="IgniteSpiConsistencyChecked.html" title="annotation in org.apache.ignite.spi" target="classFrame">IgniteSpiConsistencyChecked</a></li>
<li><a href="IgniteSpiMultipleInstancesSupport.html" title="annotation in org.apache.ignite.spi" target="classFrame">IgniteSpiMultipleInstancesSupport</a></li>
<li><a href="IgniteSpiNoop.html" title="annotation in org.apache.ignite.spi" target="classFrame">IgniteSpiNoop</a></li>
</ul>
</div>
</body>
</html>
