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

<!-- Generated by javadoc (version 1.7.0_80) on Thu Mar 02 17:46:35 MSK 2017 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>FileSystemConfiguration (Ignite 1.9.0)</title>
<meta name="date" content="2017-03-02">
<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="FileSystemConfiguration (Ignite 1.9.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/FileSystemConfiguration.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/configuration/DeploymentMode.html" title="enum in org.apache.ignite.configuration"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../org/apache/ignite/configuration/HadoopConfiguration.html" title="class in org.apache.ignite.configuration"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/ignite/configuration/FileSystemConfiguration.html" target="_top">Frames</a></li>
<li><a href="FileSystemConfiguration.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="#field_summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&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.configuration</div>
<h2 title="Class FileSystemConfiguration" class="title">Class FileSystemConfiguration</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>org.apache.ignite.configuration.FileSystemConfiguration</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="strong">FileSystemConfiguration</span>
extends <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></pre>
<div class="block"><code>IGFS</code> configuration. More than one file system can be configured within grid.
 <code>IGFS</code> configuration is provided via <a href="../../../../org/apache/ignite/configuration/IgniteConfiguration.html#getFileSystemConfiguration()"><code>IgniteConfiguration.getFileSystemConfiguration()</code></a>
 method.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_BLOCK_SIZE">DFLT_BLOCK_SIZE</a></strong></code>
<div class="block">Default file's data block size (bytes).</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_BUF_SIZE">DFLT_BUF_SIZE</a></strong></code>
<div class="block">Default read/write buffers size (bytes).</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_COLOCATE_META">DFLT_COLOCATE_META</a></strong></code>
<div class="block">Default value of metadata co-location flag.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_FRAGMENTIZER_CONCURRENT_FILES">DFLT_FRAGMENTIZER_CONCURRENT_FILES</a></strong></code>
<div class="block">Default fragmentizer concurrent files.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_FRAGMENTIZER_ENABLED">DFLT_FRAGMENTIZER_ENABLED</a></strong></code>
<div class="block">Fragmentizer enabled property.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static float</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_FRAGMENTIZER_LOCAL_WRITES_RATIO">DFLT_FRAGMENTIZER_LOCAL_WRITES_RATIO</a></strong></code>
<div class="block">Default fragmentizer local writes ratio.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_FRAGMENTIZER_THROTTLING_BLOCK_LENGTH">DFLT_FRAGMENTIZER_THROTTLING_BLOCK_LENGTH</a></strong></code>
<div class="block">Default fragmentizer throttling block length.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_FRAGMENTIZER_THROTTLING_DELAY">DFLT_FRAGMENTIZER_THROTTLING_DELAY</a></strong></code>
<div class="block">Default fragmentizer throttling delay.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_IGFS_LOG_BATCH_SIZE">DFLT_IGFS_LOG_BATCH_SIZE</a></strong></code>
<div class="block">Default batch size for logging.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <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></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_IGFS_LOG_DIR">DFLT_IGFS_LOG_DIR</a></strong></code>
<div class="block">Default <code>IGFS</code> log directory.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_INIT_DFLT_PATH_MODES">DFLT_INIT_DFLT_PATH_MODES</a></strong></code>
<div class="block">Default value of whether to initialize default path modes.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_IPC_ENDPOINT_ENABLED">DFLT_IPC_ENDPOINT_ENABLED</a></strong></code>
<div class="block">Default IPC endpoint enabled flag.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_MGMT_PORT">DFLT_MGMT_PORT</a></strong></code>
<div class="block">Default management port.</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/configuration/FileSystemConfiguration.html#DFLT_MODE">DFLT_MODE</a></strong></code>
<div class="block">Default IGFS mode.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_PER_NODE_BATCH_SIZE">DFLT_PER_NODE_BATCH_SIZE</a></strong></code>
<div class="block">Default per node buffer size.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_PER_NODE_PARALLEL_BATCH_CNT">DFLT_PER_NODE_PARALLEL_BATCH_CNT</a></strong></code>
<div class="block">Default number of per node parallel operations.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_RELAXED_CONSISTENCY">DFLT_RELAXED_CONSISTENCY</a></strong></code>
<div class="block">Default value of relaxed consistency flag.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_TRASH_PURGE_TIMEOUT">DFLT_TRASH_PURGE_TIMEOUT</a></strong></code>
<div class="block">Default trash directory purge await timeout in case data cache oversize is detected.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_UPDATE_FILE_LEN_ON_FLUSH">DFLT_UPDATE_FILE_LEN_ON_FLUSH</a></strong></code>
<div class="block">Default value of update file length on flush flag.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <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></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_USER_NAME">DFLT_USER_NAME</a></strong></code>
<div class="block">Default file system user name.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#FileSystemConfiguration()">FileSystemConfiguration</a></strong>()</code>
<div class="block">Constructs default configuration.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#FileSystemConfiguration(org.apache.ignite.configuration.FileSystemConfiguration)">FileSystemConfiguration</a></strong>(<a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html" title="class in org.apache.ignite.configuration">FileSystemConfiguration</a>&nbsp;cfg)</code>
<div class="block">Constructs the copy of the configuration.</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>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getBlockSize()">getBlockSize</a></strong>()</code>
<div class="block">Get file's data block size.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><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></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getDataCacheName()">getDataCacheName</a></strong>()</code>
<div class="block">Cache name to store IGFS data.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><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/configuration/FileSystemConfiguration.html#getDefaultMode()">getDefaultMode</a></strong>()</code>
<div class="block">Gets mode to specify how <code>IGFS</code> interacts with Hadoop file system, like <code>HDFS</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getDualModeMaxPendingPutsSize()">getDualModeMaxPendingPutsSize</a></strong>()</code>
<div class="block"><strong>Deprecated.</strong>&nbsp;
<div class="block"><i>Not used any more.</i></div>
</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ExecutorService.html?is-external=true" title="class or interface in java.util.concurrent">ExecutorService</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getDualModePutExecutorService()">getDualModePutExecutorService</a></strong>()</code>
<div class="block"><strong>Deprecated.</strong>&nbsp;
<div class="block"><i>Not used any more.</i></div>
</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getDualModePutExecutorServiceShutdown()">getDualModePutExecutorServiceShutdown</a></strong>()</code>
<div class="block"><strong>Deprecated.</strong>&nbsp;
<div class="block"><i>Not used any more.</i></div>
</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getFragmentizerConcurrentFiles()">getFragmentizerConcurrentFiles</a></strong>()</code>
<div class="block">Gets number of files that can be processed by fragmentizer concurrently.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>float</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getFragmentizerLocalWritesRatio()">getFragmentizerLocalWritesRatio</a></strong>()</code>
<div class="block"><strong>Deprecated.</strong>&nbsp;
<div class="block"><i>Parameter is no longer used.</i></div>
</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getFragmentizerThrottlingBlockLength()">getFragmentizerThrottlingBlockLength</a></strong>()</code>
<div class="block">Gets the length of file chunk to send before delaying the fragmentizer.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getFragmentizerThrottlingDelay()">getFragmentizerThrottlingDelay</a></strong>()</code>
<div class="block">Gets throttle delay for fragmentizer.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/ignite/igfs/IgfsIpcEndpointConfiguration.html" title="class in org.apache.ignite.igfs">IgfsIpcEndpointConfiguration</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getIpcEndpointConfiguration()">getIpcEndpointConfiguration</a></strong>()</code>
<div class="block">Gets IPC endpoint configuration.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getManagementPort()">getManagementPort</a></strong>()</code>
<div class="block">Gets port number for management endpoint.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getMaximumTaskRangeLength()">getMaximumTaskRangeLength</a></strong>()</code>
<div class="block">Get maximum default range size of a file being split during IGFS task execution.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getMaxSpaceSize()">getMaxSpaceSize</a></strong>()</code>
<div class="block">Get maximum space available for data cache to store file system entries.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><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></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getMetaCacheName()">getMetaCacheName</a></strong>()</code>
<div class="block">Cache name to store IGFS meta information.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><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></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getName()">getName</a></strong>()</code>
<div class="block">Gets IGFS instance name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<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>,<a href="../../../../org/apache/ignite/igfs/IgfsMode.html" title="enum in org.apache.ignite.igfs">IgfsMode</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getPathModes()">getPathModes</a></strong>()</code>
<div class="block">Gets map of path prefixes to <code>IGFS</code> modes used for them.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getPerNodeBatchSize()">getPerNodeBatchSize</a></strong>()</code>
<div class="block">Gets number of file blocks buffered on local node before sending batch to remote node.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getPerNodeParallelBatchCount()">getPerNodeParallelBatchCount</a></strong>()</code>
<div class="block">Gets number of batches that can be concurrently sent to remote node.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getPrefetchBlocks()">getPrefetchBlocks</a></strong>()</code>
<div class="block">Get number of pre-fetched blocks if specific file's chunk is requested.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../org/apache/ignite/igfs/secondary/IgfsSecondaryFileSystem.html" title="interface in org.apache.ignite.igfs.secondary">IgfsSecondaryFileSystem</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getSecondaryFileSystem()">getSecondaryFileSystem</a></strong>()</code>
<div class="block">Gets the secondary file system.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getSequentialReadsBeforePrefetch()">getSequentialReadsBeforePrefetch</a></strong>()</code>
<div class="block">Get amount of sequential block reads before prefetch is triggered.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getStreamBufferSize()">getStreamBufferSize</a></strong>()</code>
<div class="block">Get read/write buffer size for <code>IGFS</code> stream operations in bytes.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getTrashPurgeTimeout()">getTrashPurgeTimeout</a></strong>()</code>
<div class="block"><strong>Deprecated.</strong>&nbsp;
<div class="block"><i>Not used any more.</i></div>
</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#isColocateMetadata()">isColocateMetadata</a></strong>()</code>
<div class="block">Get whether to co-locate metadata on a single node.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#isFragmentizerEnabled()">isFragmentizerEnabled</a></strong>()</code>
<div class="block">Gets flag indicating whether IGFS fragmentizer is enabled.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#isInitializeDefaultPathModes()">isInitializeDefaultPathModes</a></strong>()</code>
<div class="block">Get whether to initialize default path modes.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#isIpcEndpointEnabled()">isIpcEndpointEnabled</a></strong>()</code>
<div class="block">Get IPC endpoint enabled flag.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#isRelaxedConsistency()">isRelaxedConsistency</a></strong>()</code>
<div class="block">Get relaxed consistency flag.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#isUpdateFileLengthOnFlush()">isUpdateFileLengthOnFlush</a></strong>()</code>
<div class="block">Get whether to update file length on flush.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setBlockSize(int)">setBlockSize</a></strong>(int&nbsp;blockSize)</code>
<div class="block">Sets file's data block size.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setColocateMetadata(boolean)">setColocateMetadata</a></strong>(boolean&nbsp;colocateMeta)</code>
<div class="block">Set metadata co-location flag.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setDataCacheName(java.lang.String)">setDataCacheName</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;dataCacheName)</code>
<div class="block">Sets cache name to store IGFS data.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setDefaultMode(org.apache.ignite.igfs.IgfsMode)">setDefaultMode</a></strong>(<a href="../../../../org/apache/ignite/igfs/IgfsMode.html" title="enum in org.apache.ignite.igfs">IgfsMode</a>&nbsp;dfltMode)</code>
<div class="block">Sets <code>IGFS</code> mode to specify how it should interact with secondary
 Hadoop file system, like <code>HDFS</code>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setDualModeMaxPendingPutsSize(long)">setDualModeMaxPendingPutsSize</a></strong>(long&nbsp;dualModeMaxPendingPutsSize)</code>
<div class="block"><strong>Deprecated.</strong>&nbsp;
<div class="block"><i>Not used any more.</i></div>
</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setDualModePutExecutorService(java.util.concurrent.ExecutorService)">setDualModePutExecutorService</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ExecutorService.html?is-external=true" title="class or interface in java.util.concurrent">ExecutorService</a>&nbsp;dualModePutExec)</code>
<div class="block"><strong>Deprecated.</strong>&nbsp;
<div class="block"><i>Not used any more.</i></div>
</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setDualModePutExecutorServiceShutdown(boolean)">setDualModePutExecutorServiceShutdown</a></strong>(boolean&nbsp;dualModePutExecShutdown)</code>
<div class="block"><strong>Deprecated.</strong>&nbsp;
<div class="block"><i>Not used any more.</i></div>
</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setFragmentizerConcurrentFiles(int)">setFragmentizerConcurrentFiles</a></strong>(int&nbsp;fragmentizerConcurrentFiles)</code>
<div class="block">Sets number of files to process concurrently by fragmentizer.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setFragmentizerEnabled(boolean)">setFragmentizerEnabled</a></strong>(boolean&nbsp;fragmentizerEnabled)</code>
<div class="block">Sets property indicating whether fragmentizer is enabled.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setFragmentizerLocalWritesRatio(float)">setFragmentizerLocalWritesRatio</a></strong>(float&nbsp;fragmentizerLocWritesRatio)</code>
<div class="block"><strong>Deprecated.</strong>&nbsp;
<div class="block"><i>Parameter is no longer used.</i></div>
</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setFragmentizerThrottlingBlockLength(long)">setFragmentizerThrottlingBlockLength</a></strong>(long&nbsp;fragmentizerThrottlingBlockLen)</code>
<div class="block">Sets length of file chunk to transmit before throttling is delayed.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setFragmentizerThrottlingDelay(long)">setFragmentizerThrottlingDelay</a></strong>(long&nbsp;fragmentizerThrottlingDelay)</code>
<div class="block">Sets delay in milliseconds for which fragmentizer is paused.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setInitializeDefaultPathModes(boolean)">setInitializeDefaultPathModes</a></strong>(boolean&nbsp;initDfltPathModes)</code>
<div class="block">Set whether to initialize default path modes.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setIpcEndpointConfiguration(org.apache.ignite.igfs.IgfsIpcEndpointConfiguration)">setIpcEndpointConfiguration</a></strong>(<a href="../../../../org/apache/ignite/igfs/IgfsIpcEndpointConfiguration.html" title="class in org.apache.ignite.igfs">IgfsIpcEndpointConfiguration</a>&nbsp;ipcEndpointCfg)</code>
<div class="block">Sets IPC endpoint configuration.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setIpcEndpointEnabled(boolean)">setIpcEndpointEnabled</a></strong>(boolean&nbsp;ipcEndpointEnabled)</code>
<div class="block">Set IPC endpoint enabled flag.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setManagementPort(int)">setManagementPort</a></strong>(int&nbsp;mgmtPort)</code>
<div class="block">Sets management endpoint port.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setMaximumTaskRangeLength(long)">setMaximumTaskRangeLength</a></strong>(long&nbsp;maxTaskRangeLen)</code>
<div class="block">Set maximum default range size of a file being split during IGFS task execution.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setMaxSpaceSize(long)">setMaxSpaceSize</a></strong>(long&nbsp;maxSpace)</code>
<div class="block">Set maximum space in bytes available in data cache.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setMetaCacheName(java.lang.String)">setMetaCacheName</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;metaCacheName)</code>
<div class="block">Sets cache name to store IGFS meta information.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setName(java.lang.String)">setName</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">Sets IGFS instance name.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setPathModes(java.util.Map)">setPathModes</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<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>,<a href="../../../../org/apache/ignite/igfs/IgfsMode.html" title="enum in org.apache.ignite.igfs">IgfsMode</a>&gt;&nbsp;pathModes)</code>
<div class="block">Sets map of path prefixes to <code>IGFS</code> modes used for them.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setPerNodeBatchSize(int)">setPerNodeBatchSize</a></strong>(int&nbsp;perNodeBatchSize)</code>
<div class="block">Sets number of file blocks collected on local node before sending batch to remote node.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setPerNodeParallelBatchCount(int)">setPerNodeParallelBatchCount</a></strong>(int&nbsp;perNodeParallelBatchCnt)</code>
<div class="block">Sets number of file block batches that can be concurrently sent to remote node.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setPrefetchBlocks(int)">setPrefetchBlocks</a></strong>(int&nbsp;prefetchBlocks)</code>
<div class="block">Sets the number of pre-fetched blocks if specific file's chunk is requested.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setRelaxedConsistency(boolean)">setRelaxedConsistency</a></strong>(boolean&nbsp;relaxedConsistency)</code>
<div class="block">Set relaxed consistency flag.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setSecondaryFileSystem(org.apache.ignite.igfs.secondary.IgfsSecondaryFileSystem)">setSecondaryFileSystem</a></strong>(<a href="../../../../org/apache/ignite/igfs/secondary/IgfsSecondaryFileSystem.html" title="interface in org.apache.ignite.igfs.secondary">IgfsSecondaryFileSystem</a>&nbsp;fileSystem)</code>
<div class="block">Sets the secondary file system.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setSequentialReadsBeforePrefetch(int)">setSequentialReadsBeforePrefetch</a></strong>(int&nbsp;seqReadsBeforePrefetch)</code>
<div class="block">Sets amount of sequential block reads before prefetch is triggered.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setStreamBufferSize(int)">setStreamBufferSize</a></strong>(int&nbsp;bufSize)</code>
<div class="block">Sets read/write buffers size for <code>IGFS</code> stream operations (bytes).</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setTrashPurgeTimeout(long)">setTrashPurgeTimeout</a></strong>(long&nbsp;trashPurgeTimeout)</code>
<div class="block"><strong>Deprecated.</strong>&nbsp;
<div class="block"><i>Not used any more.</i></div>
</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#setUpdateFileLengthOnFlush(boolean)">setUpdateFileLengthOnFlush</a></strong>(boolean&nbsp;updateFileLenOnFlush)</code>
<div class="block">Set whether to update file length on flush.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><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></code></td>
<td class="colLast"><code><strong><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#toString()">toString</a></strong>()</code></td>
</tr>
</table>
<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#clone()" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.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/Object.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/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#hashCode()" title="class or interface in java.lang">hashCode</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">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_detail">
<!--   -->
</a>
<h3>Field Detail</h3>
<a name="DFLT_USER_NAME">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DFLT_USER_NAME</h4>
<pre>public static final&nbsp;<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> DFLT_USER_NAME</pre>
<div class="block">Default file system user name.</div>
</li>
</ul>
<a name="DFLT_FRAGMENTIZER_THROTTLING_BLOCK_LENGTH">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DFLT_FRAGMENTIZER_THROTTLING_BLOCK_LENGTH</h4>
<pre>public static final&nbsp;long DFLT_FRAGMENTIZER_THROTTLING_BLOCK_LENGTH</pre>
<div class="block">Default fragmentizer throttling block length.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.ignite.configuration.FileSystemConfiguration.DFLT_FRAGMENTIZER_THROTTLING_BLOCK_LENGTH">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="DFLT_FRAGMENTIZER_THROTTLING_DELAY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DFLT_FRAGMENTIZER_THROTTLING_DELAY</h4>
<pre>public static final&nbsp;long DFLT_FRAGMENTIZER_THROTTLING_DELAY</pre>
<div class="block">Default fragmentizer throttling delay.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.ignite.configuration.FileSystemConfiguration.DFLT_FRAGMENTIZER_THROTTLING_DELAY">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="DFLT_FRAGMENTIZER_CONCURRENT_FILES">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DFLT_FRAGMENTIZER_CONCURRENT_FILES</h4>
<pre>public static final&nbsp;int DFLT_FRAGMENTIZER_CONCURRENT_FILES</pre>
<div class="block">Default fragmentizer concurrent files.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.ignite.configuration.FileSystemConfiguration.DFLT_FRAGMENTIZER_CONCURRENT_FILES">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="DFLT_FRAGMENTIZER_LOCAL_WRITES_RATIO">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DFLT_FRAGMENTIZER_LOCAL_WRITES_RATIO</h4>
<pre>public static final&nbsp;float DFLT_FRAGMENTIZER_LOCAL_WRITES_RATIO</pre>
<div class="block">Default fragmentizer local writes ratio.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.ignite.configuration.FileSystemConfiguration.DFLT_FRAGMENTIZER_LOCAL_WRITES_RATIO">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="DFLT_FRAGMENTIZER_ENABLED">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DFLT_FRAGMENTIZER_ENABLED</h4>
<pre>public static final&nbsp;boolean DFLT_FRAGMENTIZER_ENABLED</pre>
<div class="block">Fragmentizer enabled property.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.ignite.configuration.FileSystemConfiguration.DFLT_FRAGMENTIZER_ENABLED">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="DFLT_IGFS_LOG_BATCH_SIZE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DFLT_IGFS_LOG_BATCH_SIZE</h4>
<pre>public static final&nbsp;int DFLT_IGFS_LOG_BATCH_SIZE</pre>
<div class="block">Default batch size for logging.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.ignite.configuration.FileSystemConfiguration.DFLT_IGFS_LOG_BATCH_SIZE">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="DFLT_IGFS_LOG_DIR">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DFLT_IGFS_LOG_DIR</h4>
<pre>public static final&nbsp;<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> DFLT_IGFS_LOG_DIR</pre>
<div class="block">Default <code>IGFS</code> log directory.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.ignite.configuration.FileSystemConfiguration.DFLT_IGFS_LOG_DIR">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="DFLT_PER_NODE_BATCH_SIZE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DFLT_PER_NODE_BATCH_SIZE</h4>
<pre>public static final&nbsp;int DFLT_PER_NODE_BATCH_SIZE</pre>
<div class="block">Default per node buffer size.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.ignite.configuration.FileSystemConfiguration.DFLT_PER_NODE_BATCH_SIZE">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="DFLT_PER_NODE_PARALLEL_BATCH_CNT">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DFLT_PER_NODE_PARALLEL_BATCH_CNT</h4>
<pre>public static final&nbsp;int DFLT_PER_NODE_PARALLEL_BATCH_CNT</pre>
<div class="block">Default number of per node parallel operations.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.ignite.configuration.FileSystemConfiguration.DFLT_PER_NODE_PARALLEL_BATCH_CNT">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="DFLT_MODE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DFLT_MODE</h4>
<pre>public static final&nbsp;<a href="../../../../org/apache/ignite/igfs/IgfsMode.html" title="enum in org.apache.ignite.igfs">IgfsMode</a> DFLT_MODE</pre>
<div class="block">Default IGFS mode.</div>
</li>
</ul>
<a name="DFLT_BLOCK_SIZE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DFLT_BLOCK_SIZE</h4>
<pre>public static final&nbsp;int DFLT_BLOCK_SIZE</pre>
<div class="block">Default file's data block size (bytes).</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.ignite.configuration.FileSystemConfiguration.DFLT_BLOCK_SIZE">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="DFLT_BUF_SIZE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DFLT_BUF_SIZE</h4>
<pre>public static final&nbsp;int DFLT_BUF_SIZE</pre>
<div class="block">Default read/write buffers size (bytes).</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.ignite.configuration.FileSystemConfiguration.DFLT_BUF_SIZE">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="DFLT_TRASH_PURGE_TIMEOUT">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DFLT_TRASH_PURGE_TIMEOUT</h4>
<pre>public static final&nbsp;long DFLT_TRASH_PURGE_TIMEOUT</pre>
<div class="block">Default trash directory purge await timeout in case data cache oversize is detected.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.ignite.configuration.FileSystemConfiguration.DFLT_TRASH_PURGE_TIMEOUT">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="DFLT_MGMT_PORT">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DFLT_MGMT_PORT</h4>
<pre>public static final&nbsp;int DFLT_MGMT_PORT</pre>
<div class="block">Default management port.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.ignite.configuration.FileSystemConfiguration.DFLT_MGMT_PORT">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="DFLT_IPC_ENDPOINT_ENABLED">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DFLT_IPC_ENDPOINT_ENABLED</h4>
<pre>public static final&nbsp;boolean DFLT_IPC_ENDPOINT_ENABLED</pre>
<div class="block">Default IPC endpoint enabled flag.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.ignite.configuration.FileSystemConfiguration.DFLT_IPC_ENDPOINT_ENABLED">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="DFLT_INIT_DFLT_PATH_MODES">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DFLT_INIT_DFLT_PATH_MODES</h4>
<pre>public static final&nbsp;boolean DFLT_INIT_DFLT_PATH_MODES</pre>
<div class="block">Default value of whether to initialize default path modes.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.ignite.configuration.FileSystemConfiguration.DFLT_INIT_DFLT_PATH_MODES">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="DFLT_COLOCATE_META">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DFLT_COLOCATE_META</h4>
<pre>public static final&nbsp;boolean DFLT_COLOCATE_META</pre>
<div class="block">Default value of metadata co-location flag.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.ignite.configuration.FileSystemConfiguration.DFLT_COLOCATE_META">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="DFLT_RELAXED_CONSISTENCY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DFLT_RELAXED_CONSISTENCY</h4>
<pre>public static final&nbsp;boolean DFLT_RELAXED_CONSISTENCY</pre>
<div class="block">Default value of relaxed consistency flag.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.ignite.configuration.FileSystemConfiguration.DFLT_RELAXED_CONSISTENCY">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="DFLT_UPDATE_FILE_LEN_ON_FLUSH">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>DFLT_UPDATE_FILE_LEN_ON_FLUSH</h4>
<pre>public static final&nbsp;boolean DFLT_UPDATE_FILE_LEN_ON_FLUSH</pre>
<div class="block">Default value of update file length on flush flag.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.apache.ignite.configuration.FileSystemConfiguration.DFLT_UPDATE_FILE_LEN_ON_FLUSH">Constant Field Values</a></dd></dl>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="FileSystemConfiguration()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>FileSystemConfiguration</h4>
<pre>public&nbsp;FileSystemConfiguration()</pre>
<div class="block">Constructs default configuration.</div>
</li>
</ul>
<a name="FileSystemConfiguration(org.apache.ignite.configuration.FileSystemConfiguration)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>FileSystemConfiguration</h4>
<pre>public&nbsp;FileSystemConfiguration(<a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html" title="class in org.apache.ignite.configuration">FileSystemConfiguration</a>&nbsp;cfg)</pre>
<div class="block">Constructs the copy of the configuration.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>cfg</code> - Configuration to copy.</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="getName()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getName</h4>
<pre>@Nullable
public&nbsp;<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;getName()</pre>
<div class="block">Gets IGFS instance name. If <code>null</code>, then instance with default
 name will be used.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>IGFS instance name.</dd></dl>
</li>
</ul>
<a name="setName(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setName</h4>
<pre>public&nbsp;void&nbsp;setName(<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">Sets IGFS instance name.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>name</code> - IGFS instance name.</dd></dl>
</li>
</ul>
<a name="getMetaCacheName()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMetaCacheName</h4>
<pre>@Nullable
public&nbsp;<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;getMetaCacheName()</pre>
<div class="block">Cache name to store IGFS meta information. If <code>null</code>, then instance
 with default meta-cache name will be used.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Cache name to store IGFS meta information.</dd></dl>
</li>
</ul>
<a name="setMetaCacheName(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMetaCacheName</h4>
<pre>public&nbsp;void&nbsp;setMetaCacheName(<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;metaCacheName)</pre>
<div class="block">Sets cache name to store IGFS meta information.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>metaCacheName</code> - Cache name to store IGFS meta information.</dd></dl>
</li>
</ul>
<a name="getDataCacheName()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDataCacheName</h4>
<pre>@Nullable
public&nbsp;<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;getDataCacheName()</pre>
<div class="block">Cache name to store IGFS data.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Cache name to store IGFS data.</dd></dl>
</li>
</ul>
<a name="setDataCacheName(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDataCacheName</h4>
<pre>public&nbsp;void&nbsp;setDataCacheName(<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;dataCacheName)</pre>
<div class="block">Sets cache name to store IGFS data.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>dataCacheName</code> - Cache name to store IGFS data.</dd></dl>
</li>
</ul>
<a name="getBlockSize()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBlockSize</h4>
<pre>public&nbsp;int&nbsp;getBlockSize()</pre>
<div class="block">Get file's data block size.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>File's data block size.</dd></dl>
</li>
</ul>
<a name="setBlockSize(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setBlockSize</h4>
<pre>public&nbsp;void&nbsp;setBlockSize(int&nbsp;blockSize)</pre>
<div class="block">Sets file's data block size.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>blockSize</code> - File's data block size (bytes) or <code>0</code> to reset default value.</dd></dl>
</li>
</ul>
<a name="getPrefetchBlocks()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPrefetchBlocks</h4>
<pre>public&nbsp;int&nbsp;getPrefetchBlocks()</pre>
<div class="block">Get number of pre-fetched blocks if specific file's chunk is requested.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The number of pre-fetched blocks.</dd></dl>
</li>
</ul>
<a name="setPrefetchBlocks(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPrefetchBlocks</h4>
<pre>public&nbsp;void&nbsp;setPrefetchBlocks(int&nbsp;prefetchBlocks)</pre>
<div class="block">Sets the number of pre-fetched blocks if specific file's chunk is requested.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>prefetchBlocks</code> - New number of pre-fetched blocks.</dd></dl>
</li>
</ul>
<a name="getSequentialReadsBeforePrefetch()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSequentialReadsBeforePrefetch</h4>
<pre>public&nbsp;int&nbsp;getSequentialReadsBeforePrefetch()</pre>
<div class="block">Get amount of sequential block reads before prefetch is triggered. The
 higher this value, the longer IGFS will wait before starting to prefetch
 values ahead of time. Depending on the use case, this can either help
 or hurt performance.
 <p>
 Default is <code>0</code> which means that pre-fetching will start right away.
 <h1 class="header">Integration With Hadoop</h1>
 This parameter can be also overridden for individual Hadoop MapReduce tasks by passing
 <code>fs.igfs.[name].open.sequential_reads_before_prefetch</code> configuration property directly to Hadoop
 MapReduce task.
 <p>
 <b>NOTE:</b> Integration with Hadoop is available only in <code>In-Memory Accelerator For Hadoop</code> edition.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Amount of sequential block reads.</dd></dl>
</li>
</ul>
<a name="setSequentialReadsBeforePrefetch(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setSequentialReadsBeforePrefetch</h4>
<pre>public&nbsp;void&nbsp;setSequentialReadsBeforePrefetch(int&nbsp;seqReadsBeforePrefetch)</pre>
<div class="block">Sets amount of sequential block reads before prefetch is triggered. The
 higher this value, the longer IGFS will wait before starting to prefetch
 values ahead of time. Depending on the use case, this can either help
 or hurt performance.
 <p>
 Default is <code>0</code> which means that pre-fetching will start right away.
 <h1 class="header">Integration With Hadoop</h1>
 This parameter can be also overridden for individual Hadoop MapReduce tasks by passing
 <code>fs.igfs.[name].open.sequential_reads_before_prefetch</code> configuration property directly to Hadoop
 MapReduce task.
 <p>
 <b>NOTE:</b> Integration with Hadoop is available only in <code>In-Memory Accelerator For Hadoop</code> edition.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>seqReadsBeforePrefetch</code> - Amount of sequential block reads before prefetch is triggered.</dd></dl>
</li>
</ul>
<a name="getStreamBufferSize()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getStreamBufferSize</h4>
<pre>public&nbsp;int&nbsp;getStreamBufferSize()</pre>
<div class="block">Get read/write buffer size for <code>IGFS</code> stream operations in bytes.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Read/write buffers size (bytes).</dd></dl>
</li>
</ul>
<a name="setStreamBufferSize(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setStreamBufferSize</h4>
<pre>public&nbsp;void&nbsp;setStreamBufferSize(int&nbsp;bufSize)</pre>
<div class="block">Sets read/write buffers size for <code>IGFS</code> stream operations (bytes).</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>bufSize</code> - Read/write buffers size for stream operations (bytes) or <code>0</code> to reset default value.</dd></dl>
</li>
</ul>
<a name="getPerNodeBatchSize()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPerNodeBatchSize</h4>
<pre>public&nbsp;int&nbsp;getPerNodeBatchSize()</pre>
<div class="block">Gets number of file blocks buffered on local node before sending batch to remote node.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Per node buffer size.</dd></dl>
</li>
</ul>
<a name="setPerNodeBatchSize(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPerNodeBatchSize</h4>
<pre>public&nbsp;void&nbsp;setPerNodeBatchSize(int&nbsp;perNodeBatchSize)</pre>
<div class="block">Sets number of file blocks collected on local node before sending batch to remote node.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>perNodeBatchSize</code> - Per node buffer size.</dd></dl>
</li>
</ul>
<a name="getPerNodeParallelBatchCount()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPerNodeParallelBatchCount</h4>
<pre>public&nbsp;int&nbsp;getPerNodeParallelBatchCount()</pre>
<div class="block">Gets number of batches that can be concurrently sent to remote node.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Number of batches for each node.</dd></dl>
</li>
</ul>
<a name="setPerNodeParallelBatchCount(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPerNodeParallelBatchCount</h4>
<pre>public&nbsp;void&nbsp;setPerNodeParallelBatchCount(int&nbsp;perNodeParallelBatchCnt)</pre>
<div class="block">Sets number of file block batches that can be concurrently sent to remote node.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>perNodeParallelBatchCnt</code> - Per node parallel load operations.</dd></dl>
</li>
</ul>
<a name="getIpcEndpointConfiguration()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getIpcEndpointConfiguration</h4>
<pre>@Nullable
public&nbsp;<a href="../../../../org/apache/ignite/igfs/IgfsIpcEndpointConfiguration.html" title="class in org.apache.ignite.igfs">IgfsIpcEndpointConfiguration</a>&nbsp;getIpcEndpointConfiguration()</pre>
<div class="block">Gets IPC endpoint configuration.
 <p>
 Endpoint is needed for communication between IGFS and <code>IgniteHadoopFileSystem</code> shipped with <b>Ignite
 Hadoop Accelerator</b>.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>IPC endpoint configuration.</dd></dl>
</li>
</ul>
<a name="setIpcEndpointConfiguration(org.apache.ignite.igfs.IgfsIpcEndpointConfiguration)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setIpcEndpointConfiguration</h4>
<pre>public&nbsp;void&nbsp;setIpcEndpointConfiguration(@Nullable
                               <a href="../../../../org/apache/ignite/igfs/IgfsIpcEndpointConfiguration.html" title="class in org.apache.ignite.igfs">IgfsIpcEndpointConfiguration</a>&nbsp;ipcEndpointCfg)</pre>
<div class="block">Sets IPC endpoint configuration.
 <p>
 Endpoint is needed for communication between IGFS and <code>IgniteHadoopFileSystem</code> shipped with <b>Ignite
 Hadoop Accelerator</b>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>ipcEndpointCfg</code> - IPC endpoint configuration.</dd></dl>
</li>
</ul>
<a name="isIpcEndpointEnabled()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isIpcEndpointEnabled</h4>
<pre>public&nbsp;boolean&nbsp;isIpcEndpointEnabled()</pre>
<div class="block">Get IPC endpoint enabled flag. In case it is set to <code>true</code> endpoint will be created and bound to specific
 port. Otherwise endpoint will not be created. Default value is <a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_IPC_ENDPOINT_ENABLED"><code>DFLT_IPC_ENDPOINT_ENABLED</code></a>.
 <p>
 Endpoint is needed for communication between IGFS and <code>IgniteHadoopFileSystem</code> shipped with <b>Ignite
 Hadoop Accelerator</b>.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd><code>True</code> in case endpoint is enabled.</dd></dl>
</li>
</ul>
<a name="setIpcEndpointEnabled(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setIpcEndpointEnabled</h4>
<pre>public&nbsp;void&nbsp;setIpcEndpointEnabled(boolean&nbsp;ipcEndpointEnabled)</pre>
<div class="block">Set IPC endpoint enabled flag. See <a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#isIpcEndpointEnabled()"><code>isIpcEndpointEnabled()</code></a>.
 <p>
 Endpoint is needed for communication between IGFS and <code>IgniteHadoopFileSystem</code> shipped with <b>Ignite
 Hadoop Accelerator</b>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>ipcEndpointEnabled</code> - IPC endpoint enabled flag.</dd></dl>
</li>
</ul>
<a name="getManagementPort()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getManagementPort</h4>
<pre>public&nbsp;int&nbsp;getManagementPort()</pre>
<div class="block">Gets port number for management endpoint. All IGFS nodes should have this port open
 for Visor Management Console to work with IGFS.
 <p>
 Default value is <a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_MGMT_PORT"><code>DFLT_MGMT_PORT</code></a></div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Port number or <code>-1</code> if management endpoint should be disabled.</dd></dl>
</li>
</ul>
<a name="setManagementPort(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setManagementPort</h4>
<pre>public&nbsp;void&nbsp;setManagementPort(int&nbsp;mgmtPort)</pre>
<div class="block">Sets management endpoint port.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>mgmtPort</code> - port number or <code>-1</code> to disable management endpoint.</dd></dl>
</li>
</ul>
<a name="getDefaultMode()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDefaultMode</h4>
<pre>public&nbsp;<a href="../../../../org/apache/ignite/igfs/IgfsMode.html" title="enum in org.apache.ignite.igfs">IgfsMode</a>&nbsp;getDefaultMode()</pre>
<div class="block">Gets mode to specify how <code>IGFS</code> interacts with Hadoop file system, like <code>HDFS</code>.
 Secondary Hadoop file system is provided for pass-through, write-through, and read-through
 purposes.
 <p>
 Default mode is <a href="../../../../org/apache/ignite/igfs/IgfsMode.html#DUAL_ASYNC"><code>IgfsMode.DUAL_ASYNC</code></a>. If secondary Hadoop file system is
 not configured, this mode will work just like <a href="../../../../org/apache/ignite/igfs/IgfsMode.html#PRIMARY"><code>IgfsMode.PRIMARY</code></a> mode.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Mode to specify how IGFS interacts with secondary HDFS file system.</dd></dl>
</li>
</ul>
<a name="setDefaultMode(org.apache.ignite.igfs.IgfsMode)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDefaultMode</h4>
<pre>public&nbsp;void&nbsp;setDefaultMode(<a href="../../../../org/apache/ignite/igfs/IgfsMode.html" title="enum in org.apache.ignite.igfs">IgfsMode</a>&nbsp;dfltMode)</pre>
<div class="block">Sets <code>IGFS</code> mode to specify how it should interact with secondary
 Hadoop file system, like <code>HDFS</code>. Secondary Hadoop file system is provided
 for pass-through, write-through, and read-through purposes.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>dfltMode</code> - <code>IGFS</code> mode.</dd></dl>
</li>
</ul>
<a name="getSecondaryFileSystem()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSecondaryFileSystem</h4>
<pre>public&nbsp;<a href="../../../../org/apache/ignite/igfs/secondary/IgfsSecondaryFileSystem.html" title="interface in org.apache.ignite.igfs.secondary">IgfsSecondaryFileSystem</a>&nbsp;getSecondaryFileSystem()</pre>
<div class="block">Gets the secondary file system. Secondary file system is provided for pass-through, write-through,
 and read-through purposes.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Secondary file system.</dd></dl>
</li>
</ul>
<a name="setSecondaryFileSystem(org.apache.ignite.igfs.secondary.IgfsSecondaryFileSystem)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setSecondaryFileSystem</h4>
<pre>public&nbsp;void&nbsp;setSecondaryFileSystem(<a href="../../../../org/apache/ignite/igfs/secondary/IgfsSecondaryFileSystem.html" title="interface in org.apache.ignite.igfs.secondary">IgfsSecondaryFileSystem</a>&nbsp;fileSystem)</pre>
<div class="block">Sets the secondary file system. Secondary file system is provided for pass-through, write-through,
 and read-through purposes.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>fileSystem</code> - Secondary file system.</dd></dl>
</li>
</ul>
<a name="getPathModes()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPathModes</h4>
<pre>@Nullable
public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<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>,<a href="../../../../org/apache/ignite/igfs/IgfsMode.html" title="enum in org.apache.ignite.igfs">IgfsMode</a>&gt;&nbsp;getPathModes()</pre>
<div class="block">Gets map of path prefixes to <code>IGFS</code> modes used for them.
 <p>
 If path doesn't correspond to any specified prefix or mappings are not provided, then
 <a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getDefaultMode()"><code>getDefaultMode()</code></a> is used.
 <p>
 If <a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#isInitializeDefaultPathModes()"><code>isInitializeDefaultPathModes()</code></a> is set to <code>true</code>, the following path modes will be created
 by default:
 <li><code>/ignite/primary</code> and all it's sub-folders will always work in <code>PRIMARY</code> mode.</li>
 <p>
 And in case secondary file system URI is provided:
 <li><code>/ignite/proxy</code> and all it's sub-folders will always work in <code>PROXY</code> mode.</li>
 <li><code>/ignite/sync</code> and all it's sub-folders will always work in <code>DUAL_SYNC</code> mode.</li>
 <li><code>/ignite/async</code> and all it's sub-folders will always work in <code>DUAL_ASYNC</code> mode.</li></div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Map of paths to <code>IGFS</code> modes.</dd></dl>
</li>
</ul>
<a name="setPathModes(java.util.Map)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPathModes</h4>
<pre>public&nbsp;void&nbsp;setPathModes(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<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>,<a href="../../../../org/apache/ignite/igfs/IgfsMode.html" title="enum in org.apache.ignite.igfs">IgfsMode</a>&gt;&nbsp;pathModes)</pre>
<div class="block">Sets map of path prefixes to <code>IGFS</code> modes used for them.
 <p>
 If path doesn't correspond to any specified prefix or mappings are not provided, then
 <a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getDefaultMode()"><code>getDefaultMode()</code></a> is used.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>pathModes</code> - Map of paths to <code>IGFS</code> modes.</dd></dl>
</li>
</ul>
<a name="getFragmentizerThrottlingBlockLength()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFragmentizerThrottlingBlockLength</h4>
<pre>public&nbsp;long&nbsp;getFragmentizerThrottlingBlockLength()</pre>
<div class="block">Gets the length of file chunk to send before delaying the fragmentizer.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>File chunk length in bytes.</dd></dl>
</li>
</ul>
<a name="setFragmentizerThrottlingBlockLength(long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setFragmentizerThrottlingBlockLength</h4>
<pre>public&nbsp;void&nbsp;setFragmentizerThrottlingBlockLength(long&nbsp;fragmentizerThrottlingBlockLen)</pre>
<div class="block">Sets length of file chunk to transmit before throttling is delayed.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>fragmentizerThrottlingBlockLen</code> - Block length in bytes.</dd></dl>
</li>
</ul>
<a name="getFragmentizerThrottlingDelay()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFragmentizerThrottlingDelay</h4>
<pre>public&nbsp;long&nbsp;getFragmentizerThrottlingDelay()</pre>
<div class="block">Gets throttle delay for fragmentizer.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Throttle delay in milliseconds.</dd></dl>
</li>
</ul>
<a name="setFragmentizerThrottlingDelay(long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setFragmentizerThrottlingDelay</h4>
<pre>public&nbsp;void&nbsp;setFragmentizerThrottlingDelay(long&nbsp;fragmentizerThrottlingDelay)</pre>
<div class="block">Sets delay in milliseconds for which fragmentizer is paused.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>fragmentizerThrottlingDelay</code> - Delay in milliseconds.</dd></dl>
</li>
</ul>
<a name="getFragmentizerConcurrentFiles()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFragmentizerConcurrentFiles</h4>
<pre>public&nbsp;int&nbsp;getFragmentizerConcurrentFiles()</pre>
<div class="block">Gets number of files that can be processed by fragmentizer concurrently.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Number of files to process concurrently.</dd></dl>
</li>
</ul>
<a name="setFragmentizerConcurrentFiles(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setFragmentizerConcurrentFiles</h4>
<pre>public&nbsp;void&nbsp;setFragmentizerConcurrentFiles(int&nbsp;fragmentizerConcurrentFiles)</pre>
<div class="block">Sets number of files to process concurrently by fragmentizer.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>fragmentizerConcurrentFiles</code> - Number of files to process concurrently.</dd></dl>
</li>
</ul>
<a name="getFragmentizerLocalWritesRatio()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFragmentizerLocalWritesRatio</h4>
<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public&nbsp;float&nbsp;getFragmentizerLocalWritesRatio()</pre>
<div class="block"><span class="strong">Deprecated.</span>&nbsp;<i>Parameter is no longer used.</i></div>
<div class="block">Gets amount of local memory (in % of local IGFS max space size) available for local writes
 during file creation.
 <p>
 If current IGFS space size is less than <code>fragmentizerLocalWritesRatio * maxSpaceSize</code>,
 then file blocks will be written to the local node first and then asynchronously distributed
 among cluster nodes (fragmentized).
 <p>
 Default value is <a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_FRAGMENTIZER_LOCAL_WRITES_RATIO"><code>DFLT_FRAGMENTIZER_LOCAL_WRITES_RATIO</code></a>.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Ratio for local writes space.</dd></dl>
</li>
</ul>
<a name="setFragmentizerLocalWritesRatio(float)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setFragmentizerLocalWritesRatio</h4>
<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public&nbsp;void&nbsp;setFragmentizerLocalWritesRatio(float&nbsp;fragmentizerLocWritesRatio)</pre>
<div class="block"><span class="strong">Deprecated.</span>&nbsp;<i>Parameter is no longer used.</i></div>
<div class="block">Sets ratio for space available for local file writes.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>fragmentizerLocWritesRatio</code> - Ratio for local file writes.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getFragmentizerLocalWritesRatio()"><code>getFragmentizerLocalWritesRatio()</code></a></dd></dl>
</li>
</ul>
<a name="isFragmentizerEnabled()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isFragmentizerEnabled</h4>
<pre>public&nbsp;boolean&nbsp;isFragmentizerEnabled()</pre>
<div class="block">Gets flag indicating whether IGFS fragmentizer is enabled. If fragmentizer is disabled, files will be
 written in distributed fashion.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Flag indicating whether fragmentizer is enabled.</dd></dl>
</li>
</ul>
<a name="setFragmentizerEnabled(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setFragmentizerEnabled</h4>
<pre>public&nbsp;void&nbsp;setFragmentizerEnabled(boolean&nbsp;fragmentizerEnabled)</pre>
<div class="block">Sets property indicating whether fragmentizer is enabled.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>fragmentizerEnabled</code> - <code>True</code> if fragmentizer is enabled.</dd></dl>
</li>
</ul>
<a name="getMaxSpaceSize()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaxSpaceSize</h4>
<pre>public&nbsp;long&nbsp;getMaxSpaceSize()</pre>
<div class="block">Get maximum space available for data cache to store file system entries.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Maximum space available for data cache.</dd></dl>
</li>
</ul>
<a name="setMaxSpaceSize(long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMaxSpaceSize</h4>
<pre>public&nbsp;void&nbsp;setMaxSpaceSize(long&nbsp;maxSpace)</pre>
<div class="block">Set maximum space in bytes available in data cache.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>maxSpace</code> - Maximum space available in data cache.</dd></dl>
</li>
</ul>
<a name="getTrashPurgeTimeout()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTrashPurgeTimeout</h4>
<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public&nbsp;long&nbsp;getTrashPurgeTimeout()</pre>
<div class="block"><span class="strong">Deprecated.</span>&nbsp;<i>Not used any more.</i></div>
<div class="block">Gets maximum timeout awaiting for trash purging in case data cache oversize is detected.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Maximum timeout awaiting for trash purging in case data cache oversize is detected.</dd></dl>
</li>
</ul>
<a name="setTrashPurgeTimeout(long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setTrashPurgeTimeout</h4>
<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public&nbsp;void&nbsp;setTrashPurgeTimeout(long&nbsp;trashPurgeTimeout)</pre>
<div class="block"><span class="strong">Deprecated.</span>&nbsp;<i>Not used any more.</i></div>
<div class="block">Sets maximum timeout awaiting for trash purging in case data cache oversize is detected.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>trashPurgeTimeout</code> - Maximum timeout awaiting for trash purging in case data cache oversize is detected.</dd></dl>
</li>
</ul>
<a name="getDualModePutExecutorService()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDualModePutExecutorService</h4>
<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
@Nullable
public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ExecutorService.html?is-external=true" title="class or interface in java.util.concurrent">ExecutorService</a>&nbsp;getDualModePutExecutorService()</pre>
<div class="block"><span class="strong">Deprecated.</span>&nbsp;<i>Not used any more.</i></div>
<div class="block">Get DUAL mode put operation executor service. This executor service will process cache PUT requests for
 data which came from the secondary file system and about to be written to IGFS data cache.
 In case no executor service is provided, default one will be created with maximum amount of threads equals
 to amount of processor cores.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Get DUAL mode put operation executor service.</dd></dl>
</li>
</ul>
<a name="setDualModePutExecutorService(java.util.concurrent.ExecutorService)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDualModePutExecutorService</h4>
<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public&nbsp;void&nbsp;setDualModePutExecutorService(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ExecutorService.html?is-external=true" title="class or interface in java.util.concurrent">ExecutorService</a>&nbsp;dualModePutExec)</pre>
<div class="block"><span class="strong">Deprecated.</span>&nbsp;<i>Not used any more.</i></div>
<div class="block">Set DUAL mode put operations executor service.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>dualModePutExec</code> - Dual mode put operations executor service.</dd></dl>
</li>
</ul>
<a name="getDualModePutExecutorServiceShutdown()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDualModePutExecutorServiceShutdown</h4>
<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public&nbsp;boolean&nbsp;getDualModePutExecutorServiceShutdown()</pre>
<div class="block"><span class="strong">Deprecated.</span>&nbsp;<i>Not used any more.</i></div>
<div class="block">Get DUAL mode put operation executor service shutdown flag.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>DUAL mode put operation executor service shutdown flag.</dd></dl>
</li>
</ul>
<a name="setDualModePutExecutorServiceShutdown(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDualModePutExecutorServiceShutdown</h4>
<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public&nbsp;void&nbsp;setDualModePutExecutorServiceShutdown(boolean&nbsp;dualModePutExecShutdown)</pre>
<div class="block"><span class="strong">Deprecated.</span>&nbsp;<i>Not used any more.</i></div>
<div class="block">Set DUAL mode put operations executor service shutdown flag.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>dualModePutExecShutdown</code> - Dual mode put operations executor service shutdown flag.</dd></dl>
</li>
</ul>
<a name="getDualModeMaxPendingPutsSize()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDualModeMaxPendingPutsSize</h4>
<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public&nbsp;long&nbsp;getDualModeMaxPendingPutsSize()</pre>
<div class="block"><span class="strong">Deprecated.</span>&nbsp;<i>Not used any more.</i></div>
<div class="block">Get maximum amount of pending data read from the secondary file system and waiting to be written to data
 cache. <code>0</code> or negative value stands for unlimited size.
 <p>
 By default this value is set to <code>0</code>. It is recommended to set positive value in case your
 application performs frequent reads of large amount of data from the secondary file system in order to
 avoid issues with increasing GC pauses or out-of-memory error.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Maximum amount of pending data read from the secondary file system</dd></dl>
</li>
</ul>
<a name="setDualModeMaxPendingPutsSize(long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDualModeMaxPendingPutsSize</h4>
<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public&nbsp;void&nbsp;setDualModeMaxPendingPutsSize(long&nbsp;dualModeMaxPendingPutsSize)</pre>
<div class="block"><span class="strong">Deprecated.</span>&nbsp;<i>Not used any more.</i></div>
<div class="block">Set maximum amount of data in pending put operations.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>dualModeMaxPendingPutsSize</code> - Maximum amount of data in pending put operations.</dd></dl>
</li>
</ul>
<a name="getMaximumTaskRangeLength()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaximumTaskRangeLength</h4>
<pre>public&nbsp;long&nbsp;getMaximumTaskRangeLength()</pre>
<div class="block">Get maximum default range size of a file being split during IGFS task execution. When IGFS task is about to
 be executed, it requests file block locations first. Each location is defined as <a href="../../../../org/apache/ignite/igfs/mapreduce/IgfsFileRange.html" title="class in org.apache.ignite.igfs.mapreduce"><code>IgfsFileRange</code></a> which
 has length. In case this parameter is set to positive value, then IGFS will split single file range into smaller
 ranges with length not greater that this parameter. The only exception to this case is when maximum task range
 length is smaller than file block size. In this case maximum task range size will be overridden and set to file
 block size.
 <p>
 Note that this parameter is applied when task is split into jobs before <a href="../../../../org/apache/ignite/igfs/mapreduce/IgfsRecordResolver.html" title="interface in org.apache.ignite.igfs.mapreduce"><code>IgfsRecordResolver</code></a> is
 applied. Therefore, final file ranges being assigned to particular jobs could be greater than value of this
 parameter depending on file data layout and selected resolver type.
 <p>
 Setting this parameter might be useful when file is highly colocated and have very long consequent data chunks
 so that task execution suffers from insufficient parallelism. E.g., in case you have one IGFS node in topology
 and want to process 1Gb file, then only single range of length 1Gb will be returned. This will result in
 a single job which will be processed in one thread. But in case you provide this configuration parameter and set
 maximum range length to 16Mb, then 64 ranges will be returned resulting in 64 jobs which could be executed in
 parallel.
 <p>
 Note that some <code>IgniteFs.execute()</code> methods can override value of this parameter.
 <p>
 In case value of this parameter is set to <code>0</code> or negative value, it is simply ignored. Default value is
 <code>0</code>.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Maximum range size of a file being split during IGFS task execution.</dd></dl>
</li>
</ul>
<a name="setMaximumTaskRangeLength(long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMaximumTaskRangeLength</h4>
<pre>public&nbsp;void&nbsp;setMaximumTaskRangeLength(long&nbsp;maxTaskRangeLen)</pre>
<div class="block">Set maximum default range size of a file being split during IGFS task execution.
 See <a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getMaximumTaskRangeLength()"><code>getMaximumTaskRangeLength()</code></a> for more details.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>maxTaskRangeLen</code> - Set maximum default range size of a file being split during IGFS task execution.</dd></dl>
</li>
</ul>
<a name="isInitializeDefaultPathModes()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isInitializeDefaultPathModes</h4>
<pre>public&nbsp;boolean&nbsp;isInitializeDefaultPathModes()</pre>
<div class="block">Get whether to initialize default path modes.
 <p>
 When set to <code>true</code> Ignite will automatically create the following path modes:
 <ul>
     <li><code>/ignite/primary</code> - will work in <a href="../../../../org/apache/ignite/igfs/IgfsMode.html#PRIMARY"><code>IgfsMode.PRIMARY</code></a> mode;</li>
     <li><code>/ignite/sync</code> - will work in <a href="../../../../org/apache/ignite/igfs/IgfsMode.html#DUAL_SYNC"><code>IgfsMode.DUAL_SYNC</code></a> mode (only if secondary file system
         is set);</li>
     <li><code>/ignite/async</code> - will work in <a href="../../../../org/apache/ignite/igfs/IgfsMode.html#DUAL_ASYNC"><code>IgfsMode.DUAL_ASYNC</code></a> mode (only if secondary file system
         is set);</li>
     <li><code>/ignite/proxy</code> - will work in <a href="../../../../org/apache/ignite/igfs/IgfsMode.html#PROXY"><code>IgfsMode.PROXY</code></a> mode (only if secondary file system
         is set).</li>
 </ul>
 See <a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getPathModes()"><code>getPathModes()</code></a> for more information about path modes.
 <p>
 Defaults to <a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_INIT_DFLT_PATH_MODES"><code>DFLT_INIT_DFLT_PATH_MODES</code></a>.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd><code>True</code> if default path modes will be initialized.</dd></dl>
</li>
</ul>
<a name="setInitializeDefaultPathModes(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setInitializeDefaultPathModes</h4>
<pre>public&nbsp;void&nbsp;setInitializeDefaultPathModes(boolean&nbsp;initDfltPathModes)</pre>
<div class="block">Set whether to initialize default path modes.
 <p>
 See <a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#isInitializeDefaultPathModes()"><code>isInitializeDefaultPathModes()</code></a> for more information.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>initDfltPathModes</code> - Whether to initialize default path modes.</dd></dl>
</li>
</ul>
<a name="isColocateMetadata()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isColocateMetadata</h4>
<pre>public&nbsp;boolean&nbsp;isColocateMetadata()</pre>
<div class="block">Get whether to co-locate metadata on a single node.
 <p>
 Normally Ignite spread ownership of particular keys among all cache nodes. Transaction with keys owned by
 different nodes will produce more network traffic and will require more time to complete comparing to
 transaction with keys owned only by a single node.
 <p>
 IGFS stores information about file system structure (metadata) inside a transactional cache configured through
 <a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getMetaCacheName()"><code>getMetaCacheName()</code></a> property. Metadata updates caused by operations on IGFS usually require several
 internal keys to be updated. As IGFS metadata cache usually operates in <a href="../../../../org/apache/ignite/cache/CacheMode.html#REPLICATED"><code>CacheMode.REPLICATED</code></a> mode,
 meaning that all nodes have all metadata locally, it makes sense to give a hint to Ignite to co-locate
 ownership of all metadata keys on a single node. This will decrease amount of network trips required to update
 metadata and hence could improve performance.
 <p>
 This property should be disabled if you see excessive CPU and network load on a single node, which
 degrades performance and cannot be explained by business logic of your application.
 <p>
 This settings is only used if metadata cache is configured in <code>CacheMode#REPLICATED</code> mode. Otherwise it
 is ignored.
 <p>
 Defaults to <a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_COLOCATE_META"><code>DFLT_COLOCATE_META</code></a>.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd><code>True</code> if metadata co-location is enabled.</dd></dl>
</li>
</ul>
<a name="setColocateMetadata(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setColocateMetadata</h4>
<pre>public&nbsp;void&nbsp;setColocateMetadata(boolean&nbsp;colocateMeta)</pre>
<div class="block">Set metadata co-location flag.
 <p>
 See <a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#isColocateMetadata()"><code>isColocateMetadata()</code></a> for more information.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>colocateMeta</code> - Whether metadata co-location is enabled.</dd></dl>
</li>
</ul>
<a name="isRelaxedConsistency()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isRelaxedConsistency</h4>
<pre>public&nbsp;boolean&nbsp;isRelaxedConsistency()</pre>
<div class="block">Get relaxed consistency flag.
 <p>
 Concurrent file system operations might conflict with each other. E.g. <code>move("/a1/a2", "/b")</code> and
 <code>move("/b", "/a1")</code>. Hence, it is necessary to atomically verify that participating paths are still
 on their places to keep file system in consistent state in such cases. These checks are expensive in
 distributed environment.
 <p>
 Real applications, e.g. Hadoop jobs, rarely produce conflicting operations. So additional checks could be
 skipped in these scenarios without any negative effect on file system integrity. It significantly increases
 performance of file system operations.
 <p>
 If value of this flag is <code>true</code>, IGFS will skip expensive consistency checks. It is recommended to set
 this flag to <code>false</code> if your application has conflicting operations, or you do not how exactly users will
 use your system.
 <p>
 This property affects only <a href="../../../../org/apache/ignite/igfs/IgfsMode.html#PRIMARY"><code>IgfsMode.PRIMARY</code></a> paths.
 <p>
 Defaults to <a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_RELAXED_CONSISTENCY"><code>DFLT_RELAXED_CONSISTENCY</code></a>.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd><code>True</code> if relaxed consistency is enabled.</dd></dl>
</li>
</ul>
<a name="setRelaxedConsistency(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRelaxedConsistency</h4>
<pre>public&nbsp;void&nbsp;setRelaxedConsistency(boolean&nbsp;relaxedConsistency)</pre>
<div class="block">Set relaxed consistency flag.
 <p>
 See <a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#isColocateMetadata()"><code>isColocateMetadata()</code></a> for more information.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>relaxedConsistency</code> - Whether to use relaxed consistency optimization.</dd></dl>
</li>
</ul>
<a name="isUpdateFileLengthOnFlush()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isUpdateFileLengthOnFlush</h4>
<pre>public&nbsp;boolean&nbsp;isUpdateFileLengthOnFlush()</pre>
<div class="block">Get whether to update file length on flush.
 <p>
 Controls whether to update file length or not when <a href="http://docs.oracle.com/javase/7/docs/api/java/io/OutputStream.html?is-external=true#flush()" title="class or interface in java.io"><code>OutputStream.flush()</code></a> method is invoked. You
 may want to set this property to true in case you want to read from a file which is being written at the
 same time.
 <p>
 Defaults to <a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#DFLT_UPDATE_FILE_LEN_ON_FLUSH"><code>DFLT_UPDATE_FILE_LEN_ON_FLUSH</code></a>.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Whether to update file length on flush.</dd></dl>
</li>
</ul>
<a name="setUpdateFileLengthOnFlush(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUpdateFileLengthOnFlush</h4>
<pre>public&nbsp;void&nbsp;setUpdateFileLengthOnFlush(boolean&nbsp;updateFileLenOnFlush)</pre>
<div class="block">Set whether to update file length on flush.
 <p>
 Set <a href="../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#isUpdateFileLengthOnFlush()"><code>isUpdateFileLengthOnFlush()</code></a> for more information.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>updateFileLenOnFlush</code> - Whether to update file length on flush.</dd></dl>
</li>
</ul>
<a name="toString()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>toString</h4>
<pre>public&nbsp;<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;toString()</pre>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><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></code></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/FileSystemConfiguration.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/configuration/DeploymentMode.html" title="enum in org.apache.ignite.configuration"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../org/apache/ignite/configuration/HadoopConfiguration.html" title="class in org.apache.ignite.configuration"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/ignite/configuration/FileSystemConfiguration.html" target="_top">Frames</a></li>
<li><a href="FileSystemConfiguration.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="#field_summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&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>1.9.0</strong>                                                         </td>                                                     </tr>                                                     <tr style="padding: 0; margin: 0">                                                         <td>                                                             <b>Release Date</b>                                                         </td>                                                         <td>:&nbsp;&nbsp;                                                             March 2 2017                                                         </td>                                                     </tr>                                                 </tbody>                                             </table>                                         </td>                                     </tr>                                     </table></small></p>
</body>
</html>
