blob: f597bfaa0407487fbc85eadebd257f0a0a2f7314 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<META NAME="ROBOTS" CONTENT="NOINDEX">
<link rel="canonical" href="https://ignite.apache.org/releases/1.0.0-rc3/javadoc/org/apache/ignite/igfs/mapreduce/IgfsTask.html" />
<!-- Generated by javadoc (version 1.7.0_21) on Tue Mar 24 10:27:31 MSK 2015 -->
<meta http-equiv="Content-Type" content="text/html" charset="UTF-8">
<title>IgfsTask (Ignite 1.0.0-RC3)</title>
<meta name="date" content="2015-03-24">
<link rel="stylesheet" type="text/css" href="../../../../../javadoc.css" title="Style">
<link rel='shortcut icon' href='http://gridgain.com/wp-content/uploads/2014/09/favicon.ico'/>
<link type='text/css' rel='stylesheet' href='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/styles/shCore.css'/>
<link type='text/css' rel='stylesheet' href='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/styles/shThemeDefault.css'/>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shCore.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shLegacy.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushJava.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushPlain.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushJScript.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushBash.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushXml.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushScala.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushGroovy.js'></script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-61232409-1', 'auto');
ga('send', 'pageview');
</script></head>
<body>
<script type="text/javascript"><!--
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="IgfsTask (Ignite 1.0.0-RC3)";
}
//-->
</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/IgfsTask.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>Apache Ignite - In-Memory Data Fabric</em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsRecordResolver.html" title="interface in org.apache.ignite.igfs.mapreduce"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsTaskArgs.html" title="interface in org.apache.ignite.igfs.mapreduce"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/ignite/igfs/mapreduce/IgfsTask.html" target="_top">Frames</a></li>
<li><a href="IgfsTask.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>Field&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>Field&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.igfs.mapreduce</div>
<h2 title="Class IgfsTask" class="title">Class IgfsTask<span class='angle_bracket'>&lt;</span>T,R<span class='angle_bracket'>&gt;</span></h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../org/apache/ignite/compute/ComputeTaskAdapter.html" title="class in org.apache.ignite.compute">org.apache.ignite.compute.ComputeTaskAdapter</a><span class='angle_bracket'>&lt;</span><a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsTaskArgs.html" title="interface in org.apache.ignite.igfs.mapreduce">IgfsTaskArgs</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>,R<span class='angle_bracket'>&gt;</span></li>
<li>
<ul class="inheritance">
<li>org.apache.ignite.igfs.mapreduce.IgfsTask<span class='angle_bracket'>&lt;</span>T,R<span class='angle_bracket'>&gt;</span></li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="../../../../../org/apache/ignite/compute/ComputeTask.html" title="interface in org.apache.ignite.compute">ComputeTask</a><span class='angle_bracket'>&lt;</span><a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsTaskArgs.html" title="interface in org.apache.ignite.igfs.mapreduce">IgfsTaskArgs</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>,R<span class='angle_bracket'>&gt;</span></dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsTaskNoReduceAdapter.html" title="class in org.apache.ignite.igfs.mapreduce">IgfsTaskNoReduceAdapter</a></dd>
</dl>
<hr>
<br>
<pre>public abstract class <span class="strong">IgfsTask<span class='angle_bracket'>&lt;</span>T,R<span class='angle_bracket'>&gt;</span></span>
extends <a href="../../../../../org/apache/ignite/compute/ComputeTaskAdapter.html" title="class in org.apache.ignite.compute">ComputeTaskAdapter</a><span class='angle_bracket'>&lt;</span><a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsTaskArgs.html" title="interface in org.apache.ignite.igfs.mapreduce">IgfsTaskArgs</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>,R<span class='angle_bracket'>&gt;</span></pre>
<div class="block">IGFS task which can be executed on the grid using one of <code>IgniteFs.execute()</code> methods. Essentially IGFS task
is regular <a href="../../../../../org/apache/ignite/compute/ComputeTask.html" title="interface in org.apache.ignite.compute"><code>ComputeTask</code></a> with different map logic. Instead of implementing
<a href="../../../../../org/apache/ignite/compute/ComputeTask.html#map(java.util.List, T)"><code>ComputeTask.map(List, Object)</code></a> method to split task into jobs, you must implement
<a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsTask.html#createJob(org.apache.ignite.igfs.IgfsPath, org.apache.ignite.igfs.mapreduce.IgfsFileRange, org.apache.ignite.igfs.mapreduce.IgfsTaskArgs)"><code>createJob(org.apache.ignite.igfs.IgfsPath, IgfsFileRange, IgfsTaskArgs)</code></a> method.
<p>
Each file participating in IGFS task is split into <a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsFileRange.html" title="class in org.apache.ignite.igfs.mapreduce"><code>IgfsFileRange</code></a>s first. Normally range is a number of
consequent bytes located on a single node (see <code>IgfssGroupDataBlocksKeyMapper</code>). In case maximum range size
is provided (either through <a href="../../../../../org/apache/ignite/configuration/FileSystemConfiguration.html#getMaximumTaskRangeLength()"><code>FileSystemConfiguration.getMaximumTaskRangeLength()</code></a> or <code>IgniteFs.execute()</code>
argument), then ranges could be further divided into smaller chunks.
<p>
Once file is split into ranges, each range is passed to <code>IgfsTask.createJob()</code> method in order to create a
<a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsJob.html" title="interface in org.apache.ignite.igfs.mapreduce"><code>IgfsJob</code></a>.
<p>
Finally all generated jobs are sent to Grid nodes for execution.
<p>
As with regular <code>GridComputeTask</code> you can define your own logic for results handling and reduce step.
<p>
Here is an example of such a task:
<pre name="code" class="java">
public class WordCountTask extends IgfsTask&lt;String, Integer&gt; {
&#64;Override
public IgfsJob createJob(IgfsPath path, IgfsFileRange range, IgfsTaskArgs&lt;T&gt; args) throws IgniteCheckedException {
// New job will be created for each range within each file.
// We pass user-provided argument (which is essentially a word to look for) to that job.
return new WordCountJob(args.userArgument());
}
// Aggregate results into one compound result.
public Integer reduce(List&lt;GridComputeJobResult&gt; results) throws IgniteCheckedException {
Integer total = 0;
for (GridComputeJobResult res : results) {
Integer cnt = res.getData();
// Null can be returned for non-existent file in case we decide to ignore such situations.
if (cnt != null)
total += cnt;
}
return total;
}
}
</pre></div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../../serialized-form.html#org.apache.ignite.igfs.mapreduce.IgfsTask">Serialized Form</a></dd></dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== 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/igfs/mapreduce/IgfsTask.html#IgfsTask()">IgfsTask</a></strong>()</code>&nbsp;</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>abstract <a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsJob.html" title="interface in org.apache.ignite.igfs.mapreduce">IgfsJob</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsTask.html#createJob(org.apache.ignite.igfs.IgfsPath, org.apache.ignite.igfs.mapreduce.IgfsFileRange, org.apache.ignite.igfs.mapreduce.IgfsTaskArgs)">createJob</a></strong>(<a href="../../../../../org/apache/ignite/igfs/IgfsPath.html" title="class in org.apache.ignite.igfs">IgfsPath</a>&nbsp;path,
<a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsFileRange.html" title="class in org.apache.ignite.igfs.mapreduce">IgfsFileRange</a>&nbsp;range,
<a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsTaskArgs.html" title="interface in org.apache.ignite.igfs.mapreduce">IgfsTaskArgs</a><span class='angle_bracket'>&lt;</span><a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsTask.html" title="type parameter in IgfsTask">T</a><span class='angle_bracket'>&gt;</span>&nbsp;args)</code>
<div class="block">Callback invoked during task map procedure to create job that will process specified split
for IGFS file.</div>
</td>
</tr>
<tr class="rowColor">
<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><span class='angle_bracket'>&lt;</span>? extends <a href="../../../../../org/apache/ignite/compute/ComputeJob.html" title="interface in org.apache.ignite.compute">ComputeJob</a>,<a href="../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a><span class='angle_bracket'>&gt;</span></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsTask.html#map(java.util.List, org.apache.ignite.igfs.mapreduce.IgfsTaskArgs)">map</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><span class='angle_bracket'>&lt;</span><a href="../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a><span class='angle_bracket'>&gt;</span>&nbsp;subgrid,
<a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsTaskArgs.html" title="interface in org.apache.ignite.igfs.mapreduce">IgfsTaskArgs</a><span class='angle_bracket'>&lt;</span><a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsTask.html" title="type parameter in IgfsTask">T</a><span class='angle_bracket'>&gt;</span>&nbsp;args)</code>
<div class="block">This method is called to map or split grid task into multiple grid jobs.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_org.apache.ignite.compute.ComputeTaskAdapter">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.ignite.compute.<a href="../../../../../org/apache/ignite/compute/ComputeTaskAdapter.html" title="class in org.apache.ignite.compute">ComputeTaskAdapter</a></h3>
<code><a href="../../../../../org/apache/ignite/compute/ComputeTaskAdapter.html#result(org.apache.ignite.compute.ComputeJobResult, java.util.List)">result</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#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#toString()" title="class or interface in java.lang">toString</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, int)" title="class or interface in java.lang">wait</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_org.apache.ignite.compute.ComputeTask">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.ignite.compute.<a href="../../../../../org/apache/ignite/compute/ComputeTask.html" title="interface in org.apache.ignite.compute">ComputeTask</a></h3>
<code><a href="../../../../../org/apache/ignite/compute/ComputeTask.html#reduce(java.util.List)">reduce</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="IgfsTask()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>IgfsTask</h4>
<pre>public&nbsp;IgfsTask()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="map(java.util.List, org.apache.ignite.igfs.mapreduce.IgfsTaskArgs)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>map</h4>
<pre>@Nullable
public final&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><span class='angle_bracket'>&lt;</span>? extends <a href="../../../../../org/apache/ignite/compute/ComputeJob.html" title="interface in org.apache.ignite.compute">ComputeJob</a>,<a href="../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a><span class='angle_bracket'>&gt;</span>&nbsp;map(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><span class='angle_bracket'>&lt;</span><a href="../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a><span class='angle_bracket'>&gt;</span>&nbsp;subgrid,
@Nullable
<a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsTaskArgs.html" title="interface in org.apache.ignite.igfs.mapreduce">IgfsTaskArgs</a><span class='angle_bracket'>&lt;</span><a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsTask.html" title="type parameter in IgfsTask">T</a><span class='angle_bracket'>&gt;</span>&nbsp;args)</pre>
<div class="block">This method is called to map or split grid task into multiple grid jobs. This is the
first method that gets called when task execution starts.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>subgrid</code> - Nodes available for this task execution. Note that order of nodes is
guaranteed to be randomized by container. This ensures that every time
you simply iterate through grid nodes, the order of nodes will be random which
over time should result into all nodes being used equally.</dd><dd><code>args</code> - Task execution argument. Can be <code>null</code>. This is the same argument
as the one passed into <code>Grid#execute(...)</code> methods.</dd>
<dt><span class="strong">Returns:</span></dt><dd>Map of grid jobs assigned to subgrid node. Unless <a href="../../../../../org/apache/ignite/compute/ComputeTaskContinuousMapper.html" title="interface in org.apache.ignite.compute"><code>ComputeTaskContinuousMapper</code></a> is
injected into task, if <code>null</code> or empty map is returned, exception will be thrown.</dd></dl>
</li>
</ul>
<a name="createJob(org.apache.ignite.igfs.IgfsPath, org.apache.ignite.igfs.mapreduce.IgfsFileRange, org.apache.ignite.igfs.mapreduce.IgfsTaskArgs)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>createJob</h4>
<pre>@Nullable
public abstract&nbsp;<a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsJob.html" title="interface in org.apache.ignite.igfs.mapreduce">IgfsJob</a>&nbsp;createJob(<a href="../../../../../org/apache/ignite/igfs/IgfsPath.html" title="class in org.apache.ignite.igfs">IgfsPath</a>&nbsp;path,
<a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsFileRange.html" title="class in org.apache.ignite.igfs.mapreduce">IgfsFileRange</a>&nbsp;range,
<a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsTaskArgs.html" title="interface in org.apache.ignite.igfs.mapreduce">IgfsTaskArgs</a><span class='angle_bracket'>&lt;</span><a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsTask.html" title="type parameter in IgfsTask">T</a><span class='angle_bracket'>&gt;</span>&nbsp;args)
throws <a href="../../../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></pre>
<div class="block">Callback invoked during task map procedure to create job that will process specified split
for IGFS file.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>path</code> - Path.</dd><dd><code>range</code> - File range based on consecutive blocks. This range will be further
realigned to record boundaries on destination node.</dd><dd><code>args</code> - Task argument.</dd>
<dt><span class="strong">Returns:</span></dt><dd>IGFS job. If <code>null</code> is returned, the passed in file range will be skipped.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></code> - If job creation failed.</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/IgfsTask.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>Apache Ignite - In-Memory Data Fabric</em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsRecordResolver.html" title="interface in org.apache.ignite.igfs.mapreduce"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../org/apache/ignite/igfs/mapreduce/IgfsTaskArgs.html" title="interface in org.apache.ignite.igfs.mapreduce"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/ignite/igfs/mapreduce/IgfsTask.html" target="_top">Frames</a></li>
<li><a href="IgfsTask.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>Field&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>Field&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://incubator.apache.org/projects/ignite.html"><nobr>2015 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> <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');</script> </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>Apache Ignite Fabric</b> </td> <td>:&nbsp;&nbsp; ver. <strong>1.0.0-RC3</strong> </td> </tr> <tr style="padding: 0; margin: 0"> <td> <b>Release Date</b> </td> <td>:&nbsp;&nbsp; March 24 2015 </td> </tr> </tbody> </table> </td> </tr> </table></small></p>
<!--FOOTER--><script type='text/javascript'>SyntaxHighlighter.all();dp.SyntaxHighlighter.HighlightAll('code');</script>
</body>
</html>