blob: 5fb9aea36ce4279e82d21273ef97145085f5fcd6 [file] [log] [blame]
<!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/igfs/IgfsMode.html" />
<META NAME="ROBOTS" CONTENT="NOINDEX">
<!-- Generated by javadoc (version 1.7.0_80) on Sun Apr 30 12:27:11 MSK 2017 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IgfsMode (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>
<script type="text/javascript"><!--
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="IgfsMode (Ignite 2.0.0)";
}
//-->
</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><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/IgfsMode.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em>Ignite - In-Memory Data Fabric</em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/ignite/igfs/IgfsMetrics.html" title="interface in org.apache.ignite.igfs"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../org/apache/ignite/igfs/IgfsOutOfSpaceException.html" title="class in org.apache.ignite.igfs"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/ignite/igfs/IgfsMode.html" target="_top">Frames</a></li>
<li><a href="IgfsMode.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>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#enum_constant_summary">Enum Constants</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#enum_constant_detail">Enum Constants</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.ignite.igfs</div>
<h2 title="Enum IgfsMode" class="title">Enum IgfsMode</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">java.lang.Enum</a>&lt;<a href="../../../../org/apache/ignite/igfs/IgfsMode.html" title="enum in org.apache.ignite.igfs">IgfsMode</a>&gt;</li>
<li>
<ul class="inheritance">
<li>org.apache.ignite.igfs.IgfsMode</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang">Comparable</a>&lt;<a href="../../../../org/apache/ignite/igfs/IgfsMode.html" title="enum in org.apache.ignite.igfs">IgfsMode</a>&gt;</dd>
</dl>
<hr>
<br>
<pre>public enum <span class="strong">IgfsMode</span>
extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">Enum</a>&lt;<a href="../../../../org/apache/ignite/igfs/IgfsMode.html" title="enum in org.apache.ignite.igfs">IgfsMode</a>&gt;</pre>
<div class="block"><code>IGFS</code> mode defining interactions with underlying secondary Hadoop file system.
Secondary Hadoop file system is provided for pass-through, write-through, and
read-through purposes.
<p>
This mode is configured via <a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getDefaultMode()"><code>FileSystemConfiguration.getDefaultMode()</code></a>
configuration property.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== ENUM CONSTANT SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="enum_constant_summary">
<!-- -->
</a>
<h3>Enum Constant Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Enum Constant Summary table, listing enum constants, and an explanation">
<caption><span>Enum Constants</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Enum Constant and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><strong><a href="../../../../org/apache/ignite/igfs/IgfsMode.html#DUAL_ASYNC">DUAL_ASYNC</a></strong></code>
<div class="block">In this mode <code>IGFS</code> will cache files locally and also <i>asynchronously</i>
write them through to secondary Hadoop file system.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><strong><a href="../../../../org/apache/ignite/igfs/IgfsMode.html#DUAL_SYNC">DUAL_SYNC</a></strong></code>
<div class="block">In this mode <code>IGFS</code> will cache files locally and also <i>synchronously</i>
write them through to secondary Hadoop file system.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><code><strong><a href="../../../../org/apache/ignite/igfs/IgfsMode.html#PRIMARY">PRIMARY</a></strong></code>
<div class="block">In this mode IGFS will not delegate to secondary Hadoop file system and will
cache all the files in memory only.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><strong><a href="../../../../org/apache/ignite/igfs/IgfsMode.html#PROXY">PROXY</a></strong></code>
<div class="block">In this mode IGFS will not cache any files in memory and will only pass them
through to secondary Hadoop file system.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../../org/apache/ignite/igfs/IgfsMode.html" title="enum in org.apache.ignite.igfs">IgfsMode</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/igfs/IgfsMode.html#fromOrdinal(int)">fromOrdinal</a></strong>(int&nbsp;ord)</code>
<div class="block">Efficiently gets enumerated value from its ordinal.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="../../../../org/apache/ignite/igfs/IgfsMode.html" title="enum in org.apache.ignite.igfs">IgfsMode</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/igfs/IgfsMode.html#valueOf(java.lang.String)">valueOf</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
<div class="block">Returns the enum constant of this type with the specified name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="../../../../org/apache/ignite/igfs/IgfsMode.html" title="enum in org.apache.ignite.igfs">IgfsMode</a>[]</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/igfs/IgfsMode.html#values()">values</a></strong>()</code>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Enum">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang">Enum</a></h3>
<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#clone()" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#compareTo(E)" title="class or interface in java.lang">compareTo</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#getDeclaringClass()" title="class or interface in java.lang">getDeclaringClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#name()" title="class or interface in java.lang">name</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#ordinal()" title="class or interface in java.lang">ordinal</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#toString()" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html?is-external=true#valueOf(java.lang.Class,%20java.lang.String)" title="class or interface in java.lang">valueOf</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait(long,%20int)" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ ENUM CONSTANT DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="enum_constant_detail">
<!-- -->
</a>
<h3>Enum Constant Detail</h3>
<a name="PRIMARY">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>PRIMARY</h4>
<pre>public static final&nbsp;<a href="../../../../org/apache/ignite/igfs/IgfsMode.html" title="enum in org.apache.ignite.igfs">IgfsMode</a> PRIMARY</pre>
<div class="block">In this mode IGFS will not delegate to secondary Hadoop file system and will
cache all the files in memory only.</div>
</li>
</ul>
<a name="PROXY">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>PROXY</h4>
<pre>public static final&nbsp;<a href="../../../../org/apache/ignite/igfs/IgfsMode.html" title="enum in org.apache.ignite.igfs">IgfsMode</a> PROXY</pre>
<div class="block">In this mode IGFS will not cache any files in memory and will only pass them
through to secondary Hadoop file system. If this mode is enabled, then
secondary Hadoop file system must be configured.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getSecondaryFileSystem()"><code>FileSystemConfiguration.getSecondaryFileSystem()</code></a></dd></dl>
</li>
</ul>
<a name="DUAL_SYNC">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DUAL_SYNC</h4>
<pre>public static final&nbsp;<a href="../../../../org/apache/ignite/igfs/IgfsMode.html" title="enum in org.apache.ignite.igfs">IgfsMode</a> DUAL_SYNC</pre>
<div class="block">In this mode <code>IGFS</code> will cache files locally and also <i>synchronously</i>
write them through to secondary Hadoop file system.
<p>
If secondary Hadoop file system is not configured, then this mode behaves like
<a href="../../../../org/apache/ignite/igfs/IgfsMode.html#PRIMARY"><code>PRIMARY</code></a> mode.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getSecondaryFileSystem()"><code>FileSystemConfiguration.getSecondaryFileSystem()</code></a></dd></dl>
</li>
</ul>
<a name="DUAL_ASYNC">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>DUAL_ASYNC</h4>
<pre>public static final&nbsp;<a href="../../../../org/apache/ignite/igfs/IgfsMode.html" title="enum in org.apache.ignite.igfs">IgfsMode</a> DUAL_ASYNC</pre>
<div class="block">In this mode <code>IGFS</code> will cache files locally and also <i>asynchronously</i>
write them through to secondary Hadoop file system.
<p>
If secondary Hadoop file system is not configured, then this mode behaves like
<a href="../../../../org/apache/ignite/igfs/IgfsMode.html#PRIMARY"><code>PRIMARY</code></a> mode.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getSecondaryFileSystem()"><code>FileSystemConfiguration.getSecondaryFileSystem()</code></a></dd></dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="values()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>values</h4>
<pre>public static&nbsp;<a href="../../../../org/apache/ignite/igfs/IgfsMode.html" title="enum in org.apache.ignite.igfs">IgfsMode</a>[]&nbsp;values()</pre>
<div class="block">Returns an array containing the constants of this enum type, in
the order they are declared. This method may be used to iterate
over the constants as follows:
<pre>
for (IgfsMode c : IgfsMode.values())
&nbsp; System.out.println(c);
</pre></div>
<dl><dt><span class="strong">Returns:</span></dt><dd>an array containing the constants of this enum type, in the order they are declared</dd></dl>
</li>
</ul>
<a name="valueOf(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>valueOf</h4>
<pre>public static&nbsp;<a href="../../../../org/apache/ignite/igfs/IgfsMode.html" title="enum in org.apache.ignite.igfs">IgfsMode</a>&nbsp;valueOf(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
<div class="block">Returns the enum constant of this type with the specified name.
The string must match <i>exactly</i> an identifier used to declare an
enum constant in this type. (Extraneous whitespace characters are
not permitted.)</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - the name of the enum constant to be returned.</dd>
<dt><span class="strong">Returns:</span></dt><dd>the enum constant with the specified name</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if this enum type has no constant with the specified name</dd>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if the argument is null</dd></dl>
</li>
</ul>
<a name="fromOrdinal(int)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>fromOrdinal</h4>
<pre>@Nullable
public static&nbsp;<a href="../../../../org/apache/ignite/igfs/IgfsMode.html" title="enum in org.apache.ignite.igfs">IgfsMode</a>&nbsp;fromOrdinal(int&nbsp;ord)</pre>
<div class="block">Efficiently gets enumerated value from its ordinal.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>ord</code> - Ordinal value.</dd>
<dt><span class="strong">Returns:</span></dt><dd>Enumerated value or <code>null</code> if ordinal out of range.</dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= 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><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/IgfsMode.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em>Ignite - In-Memory Data Fabric</em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/ignite/igfs/IgfsMetrics.html" title="interface in org.apache.ignite.igfs"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../org/apache/ignite/igfs/IgfsOutOfSpaceException.html" title="class in org.apache.ignite.igfs"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/ignite/igfs/IgfsMode.html" target="_top">Frames</a></li>
<li><a href="IgfsMode.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>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#enum_constant_summary">Enum Constants</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#enum_constant_detail">Enum Constants</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small><table width="100%" border="0" cellspacing=0 cellpadding=0 style="padding: 5px"> <tr> <td> <table style="padding-left: 0; margin: 0"> <tbody style="padding: 0; margin: 0"> <tr style="padding: 0; margin: 0"> <td> <a target=_blank href="https://ignite.apache.org"><nobr>2017 Copyright &#169; Apache Software Foundation</nobr></a> </td> </tr> </tbody> </table> </td> <td width="100%" align="right" valign="center"> <a href="https://twitter.com/ApacheIgnite" class="twitter-follow-button" data-show-count="false" data-size="large">Follow @ApacheIgnite</a> </td> </tr> <tr> <td colspan="2" valign="top" align="left"> <table style="padding-left: 0; margin: 0"> <tbody style="padding: 0; margin: 0"> <tr style="padding: 0; margin: 0"> <td> <b>Ignite Fabric</b> </td> <td>:&nbsp;&nbsp; ver. <strong>2.0.0</strong> </td> </tr> <tr style="padding: 0; margin: 0"> <td> <b>Release Date</b> </td> <td>:&nbsp;&nbsp; April 30 2017 </td> </tr> </tbody> </table> </td> </tr> </table></small></p>
</body>
</html>