ignite-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From voze...@apache.org
Subject [38/57] [abbrv] incubator-ignite git commit: # IGNITE-226: WIP (9)
Date Fri, 13 Feb 2015 10:54:48 GMT
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31d4e027/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgfsByteDelimiterRecordResolver.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgfsByteDelimiterRecordResolver.java b/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgfsByteDelimiterRecordResolver.java
new file mode 100644
index 0000000..64ec8b3
--- /dev/null
+++ b/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgfsByteDelimiterRecordResolver.java
@@ -0,0 +1,347 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.ignitefs.mapreduce.records;
+
+import org.apache.ignite.*;
+import org.apache.ignite.ignitefs.*;
+import org.apache.ignite.ignitefs.mapreduce.*;
+import org.apache.ignite.internal.util.tostring.*;
+import org.apache.ignite.internal.util.typedef.*;
+import org.apache.ignite.internal.util.typedef.internal.*;
+import org.apache.ignite.lang.*;
+import org.jetbrains.annotations.*;
+
+import java.io.*;
+import java.util.*;
+
+/**
+ * Record resolver which adjusts records based on provided delimiters. Both start position and length are
+ * shifted to the right, based on delimiter positions.
+ * <p>
+ * Note that you can use {@link IgfsStringDelimiterRecordResolver} if your delimiter is a plain string.
+ */
+public class IgfsByteDelimiterRecordResolver implements IgfsRecordResolver, Externalizable {
+    /** */
+    private static final long serialVersionUID = 0L;
+
+    /** Delimiters. */
+    private byte[][] delims;
+
+    /** Maximum delimiter length. */
+    @GridToStringExclude
+    private int maxDelimLen;
+
+    /**
+     * Empty constructor required for {@link Externalizable} support.
+     */
+    public IgfsByteDelimiterRecordResolver() {
+        // No-op.
+    }
+
+    /**
+     * Creates delimiter-based record resolver.
+     *
+     * @param delims Delimiters.
+     */
+    public IgfsByteDelimiterRecordResolver(byte[]... delims) {
+        if (delims == null || delims.length == 0)
+            throw new IllegalArgumentException("Delimiters cannot be null or empty.");
+
+        this.delims = delims;
+
+        int maxDelimLen = 0;
+
+        for (byte[] delim : delims) {
+            if (delim == null)
+                throw new IllegalArgumentException("Delimiter cannot be null.");
+            else if (maxDelimLen < delim.length)
+                maxDelimLen = delim.length;
+        }
+
+        this.maxDelimLen = maxDelimLen;
+    }
+
+    /** {@inheritDoc} */
+    @Override public IgfsFileRange resolveRecords(IgniteFs fs, IgniteFsInputStream stream,
+        IgfsFileRange suggestedRecord) throws IgniteException, IOException {
+        long suggestedStart = suggestedRecord.start();
+        long suggestedEnd = suggestedStart + suggestedRecord.length();
+
+        IgniteBiTuple<State, Delimiter> firstDelim = findFirstDelimiter(stream, suggestedStart);
+
+        State state = firstDelim != null ? firstDelim.getKey() : new State();
+
+        Delimiter curDelim = firstDelim.getValue();
+
+        while (curDelim != null && curDelim.end < suggestedStart)
+            curDelim = nextDelimiter(stream, state);
+
+        if (curDelim != null && (curDelim.end >= suggestedStart && curDelim.end < suggestedEnd) ||
+            suggestedStart == 0 ) {
+            // We found start delimiter.
+            long start = suggestedStart == 0 ? 0 : curDelim.end;
+
+            if (curDelim == null || curDelim.end < suggestedEnd) {
+                IgniteBiTuple<State, Delimiter> lastDelim = findFirstDelimiter(stream, suggestedEnd);
+
+                state = lastDelim != null ? firstDelim.getKey() : new State();
+
+                curDelim = lastDelim.getValue();
+
+                while (curDelim != null && curDelim.end < suggestedEnd)
+                    curDelim = nextDelimiter(stream, state);
+            }
+
+            long end = curDelim != null ? curDelim.end : stream.position();
+
+            return new IgfsFileRange(suggestedRecord.path(), start, end - start);
+        }
+        else
+            // We failed to find any delimiters up to the EOS.
+            return null;
+    }
+
+    /**
+     * Calculate maximum delimiters length.
+     *
+     * @param delims Delimiters.
+     * @return Maximum delimiter length.
+     */
+    private int maxDelimiterLength(byte[][] delims) {
+        int maxDelimLen = 0;
+
+        for (byte[] delim : delims) {
+            if (delim == null)
+                throw new IllegalArgumentException("Delimiter cannot be null.");
+            else if (maxDelimLen < delim.length)
+                maxDelimLen = delim.length;
+        }
+
+        return maxDelimLen;
+    }
+
+    /**
+     * Find first delimiter. In order to achieve this we have to rewind the stream until we find the delimiter
+     * which stands at least [maxDelimLen] from the start search position or until we faced stream start.
+     * Otherwise we cannot be sure that delimiter position is determined correctly.
+     *
+     * @param stream GGFS input stream.
+     * @param startPos Start search position.
+     * @return The first found delimiter.
+     * @throws IOException In case of IO exception.
+     */
+    @Nullable private IgniteBiTuple<State, Delimiter> findFirstDelimiter(IgniteFsInputStream stream, long startPos)
+        throws IOException {
+        State state;
+        Delimiter delim;
+
+        long curPos = Math.max(0, startPos - maxDelimLen);
+
+        while (true) {
+            stream.seek(curPos);
+
+            state = new State();
+
+            delim = nextDelimiter(stream, state);
+
+            if (curPos == 0 || delim == null || delim.start - curPos > maxDelimLen - 1)
+                break;
+            else
+                curPos = Math.max(0, curPos - maxDelimLen);
+        }
+
+        return F.t(state, delim);
+    }
+
+    /**
+     * Resolve next delimiter.
+     *
+     * @param is GGFS input stream.
+     * @param state Current state.
+     * @return Next delimiter and updated map.
+     * @throws IOException In case of exception.
+     */
+    private Delimiter nextDelimiter(IgniteFsInputStream is, State state) throws IOException {
+        assert is != null;
+        assert state != null;
+
+        Map<Integer, Integer> parts = state.parts;
+        LinkedList<Delimiter> delimQueue = state.delims;
+
+        int nextByte = is.read();
+
+        while (nextByte != -1) {
+            // Process read byte.
+            for (int idx = 0; idx < delims.length; idx++) {
+                byte[] delim = delims[idx];
+
+                int val = parts.containsKey(idx) ? parts.get(idx) : 0;
+
+                if (delim[val] == nextByte) {
+                    if (val == delim.length - 1) {
+                        // Full delimiter is found.
+                        parts.remove(idx);
+
+                        Delimiter newDelim = new Delimiter(is.position() - delim.length, is.position());
+
+                        // Read queue from the end looking for the "inner" delimiters.
+                        boolean ignore = false;
+
+                        int replaceIdx = -1;
+
+                        for (int i = delimQueue.size() - 1; i >= 0; i--) {
+                            Delimiter prevDelim = delimQueue.get(i);
+
+                            if (prevDelim.start < newDelim.start) {
+                                if (prevDelim.end > newDelim.start) {
+                                    // Ignore this delimiter.
+                                    ignore = true;
+
+                                    break;
+                                }
+                            }
+                            else if (prevDelim.start == newDelim.start) {
+                                // Ok, we found matching delimiter.
+                                replaceIdx = i;
+
+                                break;
+                            }
+                        }
+
+                        if (!ignore) {
+                            if (replaceIdx >= 0)
+                                delimQueue.removeAll(delimQueue.subList(replaceIdx, delimQueue.size()));
+
+                            delimQueue.add(newDelim);
+                        }
+                    }
+                    else
+                        parts.put(idx, ++val);
+                }
+                else if (val != 0) {
+                    if (delim[0] == nextByte) {
+                        boolean shift = true;
+
+                        for (int k = 1; k < val; k++) {
+                            if (delim[k] != nextByte) {
+                                shift = false;
+
+                                break;
+                            }
+                        }
+
+                        if (!shift)
+                            parts.put(idx, 1);
+                    }
+                    else
+                        // Delimiter sequence is totally broken.
+                        parts.remove(idx);
+                }
+            }
+
+            // Check whether we can be sure that the first delimiter will not change.
+            if (!delimQueue.isEmpty()) {
+                Delimiter delim = delimQueue.get(0);
+
+                if (is.position() - delim.end >= maxDelimLen)
+                    return delimQueue.poll();
+            }
+
+            nextByte = is.read();
+        }
+
+        return delimQueue.poll();
+    }
+
+    /** {@inheritDoc} */
+    @Override public String toString() {
+        return S.toString(IgfsByteDelimiterRecordResolver.class, this);
+    }
+
+    /** {@inheritDoc} */
+    @Override public void writeExternal(ObjectOutput out) throws IOException {
+        if (delims != null) {
+            out.writeBoolean(true);
+
+            out.writeInt(delims.length);
+
+            for (byte[] delim : delims)
+                U.writeByteArray(out, delim);
+        }
+        else
+            out.writeBoolean(false);
+    }
+
+    /** {@inheritDoc} */
+    @Override public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+        if (in.readBoolean()) {
+            int len = in.readInt();
+
+            delims = new byte[len][];
+
+            for (int i = 0; i < len; i++)
+                delims[i] = U.readByteArray(in);
+
+            maxDelimLen = maxDelimiterLength(delims);
+        }
+    }
+
+    /**
+     * Delimiter descriptor.
+     */
+    private static class Delimiter {
+        /** Delimiter start position. */
+        private final long start;
+
+        /** Delimiter end position. */
+        private final long end;
+
+        /**
+         * Constructor.
+         *
+         * @param start Delimiter start position.
+         * @param end Delimiter end position.
+         */
+        private Delimiter(long start, long end) {
+            assert start >= 0 && end >= 0 && start <= end;
+
+            this.start = start;
+            this.end = end;
+        }
+    }
+
+    /**
+     * Current resolution state.
+     */
+    private static class State {
+        /** Partially resolved delimiters. */
+        private final Map<Integer, Integer> parts;
+
+        /** Resolved delimiters which could potentially be merged. */
+        private final LinkedList<Delimiter> delims;
+
+        /**
+         * Constructor.
+         */
+        private State() {
+            parts = new HashMap<>();
+
+            delims = new LinkedList<>();
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31d4e027/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgfsFixedLengthRecordResolver.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgfsFixedLengthRecordResolver.java b/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgfsFixedLengthRecordResolver.java
new file mode 100644
index 0000000..ccf2f72
--- /dev/null
+++ b/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgfsFixedLengthRecordResolver.java
@@ -0,0 +1,86 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.ignitefs.mapreduce.records;
+
+import org.apache.ignite.*;
+import org.apache.ignite.ignitefs.*;
+import org.apache.ignite.ignitefs.mapreduce.*;
+import org.apache.ignite.internal.util.typedef.internal.*;
+
+import java.io.*;
+
+/**
+ * Record resolver which adjusts records to fixed length. That is, start offset of the record is shifted to the
+ * nearest position so that {@code newStart % length == 0}.
+ */
+public class IgfsFixedLengthRecordResolver implements IgfsRecordResolver, Externalizable {
+    /** */
+    private static final long serialVersionUID = 0L;
+
+    /** Record length. */
+    private long recLen;
+
+    /**
+     * Empty constructor required for {@link Externalizable} support.
+     */
+    public IgfsFixedLengthRecordResolver() {
+        // No-op.
+    }
+
+    /**
+     * Creates fixed-length record resolver.
+     *
+     * @param recLen Record length.
+     */
+    public IgfsFixedLengthRecordResolver(long recLen) {
+        this.recLen = recLen;
+    }
+
+    /** {@inheritDoc} */
+    @Override public IgfsFileRange resolveRecords(IgniteFs fs, IgniteFsInputStream stream,
+        IgfsFileRange suggestedRecord)
+        throws IgniteException, IOException {
+        long suggestedEnd = suggestedRecord.start() + suggestedRecord.length();
+
+        long startRem = suggestedRecord.start() % recLen;
+        long endRem = suggestedEnd % recLen;
+
+        long start = Math.min(suggestedRecord.start() + (startRem != 0 ? (recLen - startRem) : 0),
+            stream.length());
+        long end = Math.min(suggestedEnd + (endRem != 0 ? (recLen - endRem) : 0), stream.length());
+
+        assert end >= start;
+
+        return start != end ? new IgfsFileRange(suggestedRecord.path(), start, end - start) : null;
+    }
+
+    /** {@inheritDoc} */
+    @Override public String toString() {
+        return S.toString(IgfsFixedLengthRecordResolver.class, this);
+    }
+
+    /** {@inheritDoc} */
+    @Override public void writeExternal(ObjectOutput out) throws IOException {
+        out.writeLong(recLen);
+    }
+
+    /** {@inheritDoc} */
+    @Override public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
+        recLen = in.readLong();
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31d4e027/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgfsNewLineRecordResolver.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgfsNewLineRecordResolver.java b/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgfsNewLineRecordResolver.java
new file mode 100644
index 0000000..d1d0c6f
--- /dev/null
+++ b/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgfsNewLineRecordResolver.java
@@ -0,0 +1,66 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.ignitefs.mapreduce.records;
+
+import org.apache.ignite.internal.util.typedef.internal.*;
+
+import java.io.*;
+
+/**
+ * Record resolver based on new line detection. This resolver can detect new lines based on '\n' or '\r\n' sequences.
+ * <p>
+ * Note that this resolver cannot be created and has one constant implementations: {@link #NEW_LINE}.
+ */
+public class IgfsNewLineRecordResolver extends IgfsByteDelimiterRecordResolver {
+    /** */
+    private static final long serialVersionUID = 0L;
+
+    /**
+     * Singleton new line resolver. This resolver will resolve records based on new lines
+     * regardless if they have '\n' or '\r\n' patterns.
+     */
+    public static final IgfsNewLineRecordResolver NEW_LINE = new IgfsNewLineRecordResolver(true);
+
+    /** CR symbol. */
+    public static final byte SYM_CR = 0x0D;
+
+    /** LF symbol. */
+    public static final byte SYM_LF = 0x0A;
+
+    /**
+     * Empty constructor required for {@link Externalizable} support.
+     */
+    public IgfsNewLineRecordResolver() {
+        // No-op.
+    }
+
+    /**
+     * Creates new-line record resolver.
+     *
+     * @param b Artificial flag to differentiate from empty constructor.
+     */
+    @SuppressWarnings("UnusedParameters")
+    private IgfsNewLineRecordResolver(boolean b) {
+        super(new byte[] { SYM_CR, SYM_LF }, new byte[] { SYM_LF });
+    }
+
+    /** {@inheritDoc} */
+    @Override public String toString() {
+        return S.toString(IgfsNewLineRecordResolver.class, this);
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31d4e027/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgfsStringDelimiterRecordResolver.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgfsStringDelimiterRecordResolver.java b/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgfsStringDelimiterRecordResolver.java
new file mode 100644
index 0000000..1b813c4
--- /dev/null
+++ b/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgfsStringDelimiterRecordResolver.java
@@ -0,0 +1,84 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.ignitefs.mapreduce.records;
+
+import org.apache.ignite.internal.util.typedef.internal.*;
+import org.jetbrains.annotations.*;
+
+import java.io.*;
+import java.nio.charset.*;
+
+/**
+ * Record resolver based on delimiters represented as strings. Works in the same way as
+ * {@link IgfsByteDelimiterRecordResolver}, but uses strings as delimiters instead of byte arrays.
+ */
+public class IgfsStringDelimiterRecordResolver extends IgfsByteDelimiterRecordResolver {
+    /** */
+    private static final long serialVersionUID = 0L;
+
+    /**
+     * Converts string delimiters to byte delimiters.
+     *
+     * @param charset Charset.
+     * @param delims String delimiters.
+     * @return Byte delimiters.
+     */
+    @Nullable private static byte[][] toBytes(Charset charset, @Nullable String... delims) {
+        byte[][] res = null;
+
+        if (delims != null) {
+            res = new byte[delims.length][];
+
+            for (int i = 0; i < delims.length; i++)
+                res[i] = delims[i].getBytes(charset);
+        }
+
+        return res;
+    }
+
+    /**
+     * Empty constructor required for {@link Externalizable} support.
+     */
+    public IgfsStringDelimiterRecordResolver() {
+        // No-op.
+    }
+
+    /**
+     * Creates record resolver from given string and given charset.
+     *
+     * @param delims Delimiters.
+     * @param charset Charset.
+     */
+    public IgfsStringDelimiterRecordResolver(Charset charset, String... delims) {
+        super(toBytes(charset, delims));
+    }
+
+    /**
+     * Creates record resolver based on given string with default charset.
+     *
+     * @param delims Delimiters.
+     */
+    public IgfsStringDelimiterRecordResolver(String... delims) {
+        super(toBytes(Charset.defaultCharset(), delims));
+    }
+
+    /** {@inheritDoc} */
+    @Override public String toString() {
+        return S.toString(IgfsStringDelimiterRecordResolver.class, this);
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31d4e027/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgniteFsByteDelimiterRecordResolver.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgniteFsByteDelimiterRecordResolver.java b/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgniteFsByteDelimiterRecordResolver.java
deleted file mode 100644
index 99e2a66..0000000
--- a/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgniteFsByteDelimiterRecordResolver.java
+++ /dev/null
@@ -1,347 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.ignitefs.mapreduce.records;
-
-import org.apache.ignite.*;
-import org.apache.ignite.ignitefs.*;
-import org.apache.ignite.ignitefs.mapreduce.*;
-import org.apache.ignite.internal.util.tostring.*;
-import org.apache.ignite.internal.util.typedef.*;
-import org.apache.ignite.internal.util.typedef.internal.*;
-import org.apache.ignite.lang.*;
-import org.jetbrains.annotations.*;
-
-import java.io.*;
-import java.util.*;
-
-/**
- * Record resolver which adjusts records based on provided delimiters. Both start position and length are
- * shifted to the right, based on delimiter positions.
- * <p>
- * Note that you can use {@link IgniteFsStringDelimiterRecordResolver} if your delimiter is a plain string.
- */
-public class IgniteFsByteDelimiterRecordResolver implements IgniteFsRecordResolver, Externalizable {
-    /** */
-    private static final long serialVersionUID = 0L;
-
-    /** Delimiters. */
-    private byte[][] delims;
-
-    /** Maximum delimiter length. */
-    @GridToStringExclude
-    private int maxDelimLen;
-
-    /**
-     * Empty constructor required for {@link Externalizable} support.
-     */
-    public IgniteFsByteDelimiterRecordResolver() {
-        // No-op.
-    }
-
-    /**
-     * Creates delimiter-based record resolver.
-     *
-     * @param delims Delimiters.
-     */
-    public IgniteFsByteDelimiterRecordResolver(byte[]... delims) {
-        if (delims == null || delims.length == 0)
-            throw new IllegalArgumentException("Delimiters cannot be null or empty.");
-
-        this.delims = delims;
-
-        int maxDelimLen = 0;
-
-        for (byte[] delim : delims) {
-            if (delim == null)
-                throw new IllegalArgumentException("Delimiter cannot be null.");
-            else if (maxDelimLen < delim.length)
-                maxDelimLen = delim.length;
-        }
-
-        this.maxDelimLen = maxDelimLen;
-    }
-
-    /** {@inheritDoc} */
-    @Override public IgniteFsFileRange resolveRecords(IgniteFs fs, IgniteFsInputStream stream,
-        IgniteFsFileRange suggestedRecord) throws IgniteException, IOException {
-        long suggestedStart = suggestedRecord.start();
-        long suggestedEnd = suggestedStart + suggestedRecord.length();
-
-        IgniteBiTuple<State, Delimiter> firstDelim = findFirstDelimiter(stream, suggestedStart);
-
-        State state = firstDelim != null ? firstDelim.getKey() : new State();
-
-        Delimiter curDelim = firstDelim.getValue();
-
-        while (curDelim != null && curDelim.end < suggestedStart)
-            curDelim = nextDelimiter(stream, state);
-
-        if (curDelim != null && (curDelim.end >= suggestedStart && curDelim.end < suggestedEnd) ||
-            suggestedStart == 0 ) {
-            // We found start delimiter.
-            long start = suggestedStart == 0 ? 0 : curDelim.end;
-
-            if (curDelim == null || curDelim.end < suggestedEnd) {
-                IgniteBiTuple<State, Delimiter> lastDelim = findFirstDelimiter(stream, suggestedEnd);
-
-                state = lastDelim != null ? firstDelim.getKey() : new State();
-
-                curDelim = lastDelim.getValue();
-
-                while (curDelim != null && curDelim.end < suggestedEnd)
-                    curDelim = nextDelimiter(stream, state);
-            }
-
-            long end = curDelim != null ? curDelim.end : stream.position();
-
-            return new IgniteFsFileRange(suggestedRecord.path(), start, end - start);
-        }
-        else
-            // We failed to find any delimiters up to the EOS.
-            return null;
-    }
-
-    /**
-     * Calculate maximum delimiters length.
-     *
-     * @param delims Delimiters.
-     * @return Maximum delimiter length.
-     */
-    private int maxDelimiterLength(byte[][] delims) {
-        int maxDelimLen = 0;
-
-        for (byte[] delim : delims) {
-            if (delim == null)
-                throw new IllegalArgumentException("Delimiter cannot be null.");
-            else if (maxDelimLen < delim.length)
-                maxDelimLen = delim.length;
-        }
-
-        return maxDelimLen;
-    }
-
-    /**
-     * Find first delimiter. In order to achieve this we have to rewind the stream until we find the delimiter
-     * which stands at least [maxDelimLen] from the start search position or until we faced stream start.
-     * Otherwise we cannot be sure that delimiter position is determined correctly.
-     *
-     * @param stream GGFS input stream.
-     * @param startPos Start search position.
-     * @return The first found delimiter.
-     * @throws IOException In case of IO exception.
-     */
-    @Nullable private IgniteBiTuple<State, Delimiter> findFirstDelimiter(IgniteFsInputStream stream, long startPos)
-        throws IOException {
-        State state;
-        Delimiter delim;
-
-        long curPos = Math.max(0, startPos - maxDelimLen);
-
-        while (true) {
-            stream.seek(curPos);
-
-            state = new State();
-
-            delim = nextDelimiter(stream, state);
-
-            if (curPos == 0 || delim == null || delim.start - curPos > maxDelimLen - 1)
-                break;
-            else
-                curPos = Math.max(0, curPos - maxDelimLen);
-        }
-
-        return F.t(state, delim);
-    }
-
-    /**
-     * Resolve next delimiter.
-     *
-     * @param is GGFS input stream.
-     * @param state Current state.
-     * @return Next delimiter and updated map.
-     * @throws IOException In case of exception.
-     */
-    private Delimiter nextDelimiter(IgniteFsInputStream is, State state) throws IOException {
-        assert is != null;
-        assert state != null;
-
-        Map<Integer, Integer> parts = state.parts;
-        LinkedList<Delimiter> delimQueue = state.delims;
-
-        int nextByte = is.read();
-
-        while (nextByte != -1) {
-            // Process read byte.
-            for (int idx = 0; idx < delims.length; idx++) {
-                byte[] delim = delims[idx];
-
-                int val = parts.containsKey(idx) ? parts.get(idx) : 0;
-
-                if (delim[val] == nextByte) {
-                    if (val == delim.length - 1) {
-                        // Full delimiter is found.
-                        parts.remove(idx);
-
-                        Delimiter newDelim = new Delimiter(is.position() - delim.length, is.position());
-
-                        // Read queue from the end looking for the "inner" delimiters.
-                        boolean ignore = false;
-
-                        int replaceIdx = -1;
-
-                        for (int i = delimQueue.size() - 1; i >= 0; i--) {
-                            Delimiter prevDelim = delimQueue.get(i);
-
-                            if (prevDelim.start < newDelim.start) {
-                                if (prevDelim.end > newDelim.start) {
-                                    // Ignore this delimiter.
-                                    ignore = true;
-
-                                    break;
-                                }
-                            }
-                            else if (prevDelim.start == newDelim.start) {
-                                // Ok, we found matching delimiter.
-                                replaceIdx = i;
-
-                                break;
-                            }
-                        }
-
-                        if (!ignore) {
-                            if (replaceIdx >= 0)
-                                delimQueue.removeAll(delimQueue.subList(replaceIdx, delimQueue.size()));
-
-                            delimQueue.add(newDelim);
-                        }
-                    }
-                    else
-                        parts.put(idx, ++val);
-                }
-                else if (val != 0) {
-                    if (delim[0] == nextByte) {
-                        boolean shift = true;
-
-                        for (int k = 1; k < val; k++) {
-                            if (delim[k] != nextByte) {
-                                shift = false;
-
-                                break;
-                            }
-                        }
-
-                        if (!shift)
-                            parts.put(idx, 1);
-                    }
-                    else
-                        // Delimiter sequence is totally broken.
-                        parts.remove(idx);
-                }
-            }
-
-            // Check whether we can be sure that the first delimiter will not change.
-            if (!delimQueue.isEmpty()) {
-                Delimiter delim = delimQueue.get(0);
-
-                if (is.position() - delim.end >= maxDelimLen)
-                    return delimQueue.poll();
-            }
-
-            nextByte = is.read();
-        }
-
-        return delimQueue.poll();
-    }
-
-    /** {@inheritDoc} */
-    @Override public String toString() {
-        return S.toString(IgniteFsByteDelimiterRecordResolver.class, this);
-    }
-
-    /** {@inheritDoc} */
-    @Override public void writeExternal(ObjectOutput out) throws IOException {
-        if (delims != null) {
-            out.writeBoolean(true);
-
-            out.writeInt(delims.length);
-
-            for (byte[] delim : delims)
-                U.writeByteArray(out, delim);
-        }
-        else
-            out.writeBoolean(false);
-    }
-
-    /** {@inheritDoc} */
-    @Override public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
-        if (in.readBoolean()) {
-            int len = in.readInt();
-
-            delims = new byte[len][];
-
-            for (int i = 0; i < len; i++)
-                delims[i] = U.readByteArray(in);
-
-            maxDelimLen = maxDelimiterLength(delims);
-        }
-    }
-
-    /**
-     * Delimiter descriptor.
-     */
-    private static class Delimiter {
-        /** Delimiter start position. */
-        private final long start;
-
-        /** Delimiter end position. */
-        private final long end;
-
-        /**
-         * Constructor.
-         *
-         * @param start Delimiter start position.
-         * @param end Delimiter end position.
-         */
-        private Delimiter(long start, long end) {
-            assert start >= 0 && end >= 0 && start <= end;
-
-            this.start = start;
-            this.end = end;
-        }
-    }
-
-    /**
-     * Current resolution state.
-     */
-    private static class State {
-        /** Partially resolved delimiters. */
-        private final Map<Integer, Integer> parts;
-
-        /** Resolved delimiters which could potentially be merged. */
-        private final LinkedList<Delimiter> delims;
-
-        /**
-         * Constructor.
-         */
-        private State() {
-            parts = new HashMap<>();
-
-            delims = new LinkedList<>();
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31d4e027/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgniteFsFixedLengthRecordResolver.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgniteFsFixedLengthRecordResolver.java b/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgniteFsFixedLengthRecordResolver.java
deleted file mode 100644
index d51bd9f..0000000
--- a/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgniteFsFixedLengthRecordResolver.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.ignitefs.mapreduce.records;
-
-import org.apache.ignite.*;
-import org.apache.ignite.ignitefs.*;
-import org.apache.ignite.ignitefs.mapreduce.*;
-import org.apache.ignite.internal.util.typedef.internal.*;
-
-import java.io.*;
-
-/**
- * Record resolver which adjusts records to fixed length. That is, start offset of the record is shifted to the
- * nearest position so that {@code newStart % length == 0}.
- */
-public class IgniteFsFixedLengthRecordResolver implements IgniteFsRecordResolver, Externalizable {
-    /** */
-    private static final long serialVersionUID = 0L;
-
-    /** Record length. */
-    private long recLen;
-
-    /**
-     * Empty constructor required for {@link Externalizable} support.
-     */
-    public IgniteFsFixedLengthRecordResolver() {
-        // No-op.
-    }
-
-    /**
-     * Creates fixed-length record resolver.
-     *
-     * @param recLen Record length.
-     */
-    public IgniteFsFixedLengthRecordResolver(long recLen) {
-        this.recLen = recLen;
-    }
-
-    /** {@inheritDoc} */
-    @Override public IgniteFsFileRange resolveRecords(IgniteFs fs, IgniteFsInputStream stream,
-        IgniteFsFileRange suggestedRecord)
-        throws IgniteException, IOException {
-        long suggestedEnd = suggestedRecord.start() + suggestedRecord.length();
-
-        long startRem = suggestedRecord.start() % recLen;
-        long endRem = suggestedEnd % recLen;
-
-        long start = Math.min(suggestedRecord.start() + (startRem != 0 ? (recLen - startRem) : 0),
-            stream.length());
-        long end = Math.min(suggestedEnd + (endRem != 0 ? (recLen - endRem) : 0), stream.length());
-
-        assert end >= start;
-
-        return start != end ? new IgniteFsFileRange(suggestedRecord.path(), start, end - start) : null;
-    }
-
-    /** {@inheritDoc} */
-    @Override public String toString() {
-        return S.toString(IgniteFsFixedLengthRecordResolver.class, this);
-    }
-
-    /** {@inheritDoc} */
-    @Override public void writeExternal(ObjectOutput out) throws IOException {
-        out.writeLong(recLen);
-    }
-
-    /** {@inheritDoc} */
-    @Override public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
-        recLen = in.readLong();
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31d4e027/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgniteFsNewLineRecordResolver.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgniteFsNewLineRecordResolver.java b/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgniteFsNewLineRecordResolver.java
deleted file mode 100644
index 2500bbc..0000000
--- a/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgniteFsNewLineRecordResolver.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.ignitefs.mapreduce.records;
-
-import org.apache.ignite.internal.util.typedef.internal.*;
-
-import java.io.*;
-
-/**
- * Record resolver based on new line detection. This resolver can detect new lines based on '\n' or '\r\n' sequences.
- * <p>
- * Note that this resolver cannot be created and has one constant implementations: {@link #NEW_LINE}.
- */
-public class IgniteFsNewLineRecordResolver extends IgniteFsByteDelimiterRecordResolver {
-    /** */
-    private static final long serialVersionUID = 0L;
-
-    /**
-     * Singleton new line resolver. This resolver will resolve records based on new lines
-     * regardless if they have '\n' or '\r\n' patterns.
-     */
-    public static final IgniteFsNewLineRecordResolver NEW_LINE = new IgniteFsNewLineRecordResolver(true);
-
-    /** CR symbol. */
-    public static final byte SYM_CR = 0x0D;
-
-    /** LF symbol. */
-    public static final byte SYM_LF = 0x0A;
-
-    /**
-     * Empty constructor required for {@link Externalizable} support.
-     */
-    public IgniteFsNewLineRecordResolver() {
-        // No-op.
-    }
-
-    /**
-     * Creates new-line record resolver.
-     *
-     * @param b Artificial flag to differentiate from empty constructor.
-     */
-    @SuppressWarnings("UnusedParameters")
-    private IgniteFsNewLineRecordResolver(boolean b) {
-        super(new byte[] { SYM_CR, SYM_LF }, new byte[] { SYM_LF });
-    }
-
-    /** {@inheritDoc} */
-    @Override public String toString() {
-        return S.toString(IgniteFsNewLineRecordResolver.class, this);
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31d4e027/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgniteFsStringDelimiterRecordResolver.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgniteFsStringDelimiterRecordResolver.java b/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgniteFsStringDelimiterRecordResolver.java
deleted file mode 100644
index 7f381e5..0000000
--- a/modules/core/src/main/java/org/apache/ignite/ignitefs/mapreduce/records/IgniteFsStringDelimiterRecordResolver.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.ignitefs.mapreduce.records;
-
-import org.apache.ignite.internal.util.typedef.internal.*;
-import org.jetbrains.annotations.*;
-
-import java.io.*;
-import java.nio.charset.*;
-
-/**
- * Record resolver based on delimiters represented as strings. Works in the same way as
- * {@link IgniteFsByteDelimiterRecordResolver}, but uses strings as delimiters instead of byte arrays.
- */
-public class IgniteFsStringDelimiterRecordResolver extends IgniteFsByteDelimiterRecordResolver {
-    /** */
-    private static final long serialVersionUID = 0L;
-
-    /**
-     * Converts string delimiters to byte delimiters.
-     *
-     * @param charset Charset.
-     * @param delims String delimiters.
-     * @return Byte delimiters.
-     */
-    @Nullable private static byte[][] toBytes(Charset charset, @Nullable String... delims) {
-        byte[][] res = null;
-
-        if (delims != null) {
-            res = new byte[delims.length][];
-
-            for (int i = 0; i < delims.length; i++)
-                res[i] = delims[i].getBytes(charset);
-        }
-
-        return res;
-    }
-
-    /**
-     * Empty constructor required for {@link Externalizable} support.
-     */
-    public IgniteFsStringDelimiterRecordResolver() {
-        // No-op.
-    }
-
-    /**
-     * Creates record resolver from given string and given charset.
-     *
-     * @param delims Delimiters.
-     * @param charset Charset.
-     */
-    public IgniteFsStringDelimiterRecordResolver(Charset charset, String... delims) {
-        super(toBytes(charset, delims));
-    }
-
-    /**
-     * Creates record resolver based on given string with default charset.
-     *
-     * @param delims Delimiters.
-     */
-    public IgniteFsStringDelimiterRecordResolver(String... delims) {
-        super(toBytes(Charset.defaultCharset(), delims));
-    }
-
-    /** {@inheritDoc} */
-    @Override public String toString() {
-        return S.toString(IgniteFsStringDelimiterRecordResolver.class, this);
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31d4e027/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsAsyncImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsAsyncImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsAsyncImpl.java
index c030625..95cc9f3 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsAsyncImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsAsyncImpl.java
@@ -56,7 +56,7 @@ public class IgfsAsyncImpl extends AsyncSupportAdapter<IgniteFs> implements Igfs
     }
 
     /** {@inheritDoc} */
-    @Override public <T, R> R execute(IgniteFsTask<T, R> task, @Nullable IgniteFsRecordResolver rslvr,
+    @Override public <T, R> R execute(IgfsTask<T, R> task, @Nullable IgfsRecordResolver rslvr,
         Collection<IgniteFsPath> paths, @Nullable T arg) {
         try {
             return saveOrGet(ggfs.executeAsync(task, rslvr, paths, arg));
@@ -67,7 +67,7 @@ public class IgfsAsyncImpl extends AsyncSupportAdapter<IgniteFs> implements Igfs
     }
 
     /** {@inheritDoc} */
-    @Override public <T, R> R execute(IgniteFsTask<T, R> task, @Nullable IgniteFsRecordResolver rslvr,
+    @Override public <T, R> R execute(IgfsTask<T, R> task, @Nullable IgfsRecordResolver rslvr,
         Collection<IgniteFsPath> paths, boolean skipNonExistentFiles, long maxRangeLen, @Nullable T arg) {
         try {
             return saveOrGet(ggfs.executeAsync(task, rslvr, paths, skipNonExistentFiles, maxRangeLen, arg));
@@ -78,8 +78,8 @@ public class IgfsAsyncImpl extends AsyncSupportAdapter<IgniteFs> implements Igfs
     }
 
     /** {@inheritDoc} */
-    @Override public <T, R> R execute(Class<? extends IgniteFsTask<T, R>> taskCls,
-        @Nullable IgniteFsRecordResolver rslvr, Collection<IgniteFsPath> paths, @Nullable T arg) {
+    @Override public <T, R> R execute(Class<? extends IgfsTask<T, R>> taskCls,
+        @Nullable IgfsRecordResolver rslvr, Collection<IgniteFsPath> paths, @Nullable T arg) {
         try {
             return saveOrGet(ggfs.executeAsync(taskCls, rslvr, paths, arg));
         }
@@ -89,8 +89,8 @@ public class IgfsAsyncImpl extends AsyncSupportAdapter<IgniteFs> implements Igfs
     }
 
     /** {@inheritDoc} */
-    @Override public <T, R> R execute(Class<? extends IgniteFsTask<T, R>> taskCls,
-        @Nullable IgniteFsRecordResolver rslvr, Collection<IgniteFsPath> paths, boolean skipNonExistentFiles,
+    @Override public <T, R> R execute(Class<? extends IgfsTask<T, R>> taskCls,
+        @Nullable IgfsRecordResolver rslvr, Collection<IgniteFsPath> paths, boolean skipNonExistentFiles,
         long maxRangeLen, @Nullable T arg) {
         try {
             return saveOrGet(ggfs.executeAsync(taskCls, rslvr, paths, skipNonExistentFiles, maxRangeLen, arg));

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31d4e027/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsImpl.java
index b15bb2c..c7a56b6 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsImpl.java
@@ -401,7 +401,7 @@ public final class IgfsImpl implements IgfsEx {
         if (enterBusy()) {
             try {
                 IgniteBiTuple<Long, Long> space = ggfsCtx.kernalContext().grid().compute().execute(
-                    new GgfsGlobalSpaceTask(name()), null);
+                    new IgfsGlobalSpaceTask(name()), null);
 
                 return new IgfsStatus(space.get1(), space.get2());
             }
@@ -1104,7 +1104,7 @@ public final class IgfsImpl implements IgfsEx {
 
                     IgfsSecondaryInputStreamDescriptor desc = meta.openDual(secondaryFs, path, bufSize);
 
-                    GgfsEventAwareInputStream os = new GgfsEventAwareInputStream(ggfsCtx, path, desc.info(),
+                    IgfsEventAwareInputStream os = new IgfsEventAwareInputStream(ggfsCtx, path, desc.info(),
                         cfg.getPrefetchBlocks(), seqReadsBeforePrefetch, desc.reader(), metrics);
 
                     if (evts.isRecordable(EVT_GGFS_FILE_OPENED_READ))
@@ -1125,7 +1125,7 @@ public final class IgfsImpl implements IgfsEx {
                     throw new IgniteFsInvalidPathException("Failed to open file (not a file): " + path);
 
                 // Input stream to read data from grid cache with separate blocks.
-                GgfsEventAwareInputStream os = new GgfsEventAwareInputStream(ggfsCtx, path, info,
+                IgfsEventAwareInputStream os = new IgfsEventAwareInputStream(ggfsCtx, path, info,
                     cfg.getPrefetchBlocks(), seqReadsBeforePrefetch, null, metrics);
 
                 if (evts.isRecordable(EVT_GGFS_FILE_OPENED_READ))
@@ -1207,7 +1207,7 @@ public final class IgfsImpl implements IgfsEx {
 
                     batch = newBatch(path, desc.out());
 
-                    GgfsEventAwareOutputStream os = new GgfsEventAwareOutputStream(path, desc.info(), desc.parentId(),
+                    IgfsEventAwareOutputStream os = new IgfsEventAwareOutputStream(path, desc.info(), desc.parentId(),
                         bufSize == 0 ? cfg.getStreamBufferSize() : bufSize, mode, batch);
 
                     if (evts.isRecordable(EVT_GGFS_FILE_OPENED_WRITE))
@@ -1267,7 +1267,7 @@ public final class IgfsImpl implements IgfsEx {
 
                 info = meta.lock(info.id());
 
-                GgfsEventAwareOutputStream os = new GgfsEventAwareOutputStream(path, info, parentId,
+                IgfsEventAwareOutputStream os = new IgfsEventAwareOutputStream(path, info, parentId,
                     bufSize == 0 ? cfg.getStreamBufferSize() : bufSize, mode, batch);
 
                 if (evts.isRecordable(EVT_GGFS_FILE_OPENED_WRITE))
@@ -1318,7 +1318,7 @@ public final class IgfsImpl implements IgfsEx {
 
                     batch = newBatch(path, desc.out());
 
-                    return new GgfsEventAwareOutputStream(path, desc.info(), desc.parentId(),
+                    return new IgfsEventAwareOutputStream(path, desc.info(), desc.parentId(),
                         bufSize == 0 ? cfg.getStreamBufferSize() : bufSize, mode, batch);
                 }
 
@@ -1359,7 +1359,7 @@ public final class IgfsImpl implements IgfsEx {
                 if (evts.isRecordable(EVT_GGFS_FILE_OPENED_WRITE))
                     evts.record(new IgniteFsEvent(path, localNode(), EVT_GGFS_FILE_OPENED_WRITE));
 
-                return new GgfsEventAwareOutputStream(path, info, parentId, bufSize == 0 ?
+                return new IgfsEventAwareOutputStream(path, info, parentId, bufSize == 0 ?
                     cfg.getStreamBufferSize() : bufSize, mode, batch);
             }
             catch (IgniteCheckedException e) {
@@ -1728,7 +1728,7 @@ public final class IgfsImpl implements IgfsEx {
     }
 
     /** {@inheritDoc} */
-    @Override public <T, R> R execute(IgniteFsTask<T, R> task, @Nullable IgniteFsRecordResolver rslvr,
+    @Override public <T, R> R execute(IgfsTask<T, R> task, @Nullable IgfsRecordResolver rslvr,
         Collection<IgniteFsPath> paths, @Nullable T arg) {
         try {
             return executeAsync(task, rslvr, paths, arg).get();
@@ -1739,7 +1739,7 @@ public final class IgfsImpl implements IgfsEx {
     }
 
     /** {@inheritDoc} */
-    @Override public <T, R> R execute(IgniteFsTask<T, R> task, @Nullable IgniteFsRecordResolver rslvr,
+    @Override public <T, R> R execute(IgfsTask<T, R> task, @Nullable IgfsRecordResolver rslvr,
         Collection<IgniteFsPath> paths, boolean skipNonExistentFiles, long maxRangeLen, @Nullable T arg) {
         try {
             return executeAsync(task, rslvr, paths, skipNonExistentFiles, maxRangeLen, arg).get();
@@ -1750,8 +1750,8 @@ public final class IgfsImpl implements IgfsEx {
     }
 
     /** {@inheritDoc} */
-    @Override public <T, R> R execute(Class<? extends IgniteFsTask<T, R>> taskCls,
-        @Nullable IgniteFsRecordResolver rslvr, Collection<IgniteFsPath> paths, @Nullable T arg) {
+    @Override public <T, R> R execute(Class<? extends IgfsTask<T, R>> taskCls,
+        @Nullable IgfsRecordResolver rslvr, Collection<IgniteFsPath> paths, @Nullable T arg) {
         try {
             return executeAsync(taskCls, rslvr, paths, arg).get();
         }
@@ -1761,8 +1761,8 @@ public final class IgfsImpl implements IgfsEx {
     }
 
     /** {@inheritDoc} */
-    @Override public <T, R> R execute(Class<? extends IgniteFsTask<T, R>> taskCls,
-        @Nullable IgniteFsRecordResolver rslvr, Collection<IgniteFsPath> paths, boolean skipNonExistentFiles,
+    @Override public <T, R> R execute(Class<? extends IgfsTask<T, R>> taskCls,
+        @Nullable IgfsRecordResolver rslvr, Collection<IgniteFsPath> paths, boolean skipNonExistentFiles,
         long maxRangeSize, @Nullable T arg) {
         try {
             return executeAsync(taskCls, rslvr, paths, skipNonExistentFiles, maxRangeSize, arg).get();
@@ -1781,7 +1781,7 @@ public final class IgfsImpl implements IgfsEx {
      * @param arg Optional task argument.
      * @return Execution future.
      */
-    <T, R> IgniteInternalFuture<R> executeAsync(IgniteFsTask<T, R> task, @Nullable IgniteFsRecordResolver rslvr,
+    <T, R> IgniteInternalFuture<R> executeAsync(IgfsTask<T, R> task, @Nullable IgfsRecordResolver rslvr,
         Collection<IgniteFsPath> paths, @Nullable T arg) {
         return executeAsync(task, rslvr, paths, true, cfg.getMaximumTaskRangeLength(), arg);
     }
@@ -1800,7 +1800,7 @@ public final class IgfsImpl implements IgfsEx {
      * @param arg Optional task argument.
      * @return Execution future.
      */
-    <T, R> IgniteInternalFuture<R> executeAsync(IgniteFsTask<T, R> task, @Nullable IgniteFsRecordResolver rslvr,
+    <T, R> IgniteInternalFuture<R> executeAsync(IgfsTask<T, R> task, @Nullable IgfsRecordResolver rslvr,
         Collection<IgniteFsPath> paths, boolean skipNonExistentFiles, long maxRangeLen, @Nullable T arg) {
         return ggfsCtx.kernalContext().task().execute(task, new IgfsTaskArgsImpl<>(cfg.getName(), paths, rslvr,
             skipNonExistentFiles, maxRangeLen, arg));
@@ -1815,8 +1815,8 @@ public final class IgfsImpl implements IgfsEx {
      * @param arg Optional task argument.
      * @return Execution future.
      */
-    <T, R> IgniteInternalFuture<R> executeAsync(Class<? extends IgniteFsTask<T, R>> taskCls,
-        @Nullable IgniteFsRecordResolver rslvr, Collection<IgniteFsPath> paths, @Nullable T arg) {
+    <T, R> IgniteInternalFuture<R> executeAsync(Class<? extends IgfsTask<T, R>> taskCls,
+        @Nullable IgfsRecordResolver rslvr, Collection<IgniteFsPath> paths, @Nullable T arg) {
         return executeAsync(taskCls, rslvr, paths, true, cfg.getMaximumTaskRangeLength(), arg);
     }
 
@@ -1833,10 +1833,10 @@ public final class IgfsImpl implements IgfsEx {
      * @param arg Optional task argument.
      * @return Execution future.
      */
-    <T, R> IgniteInternalFuture<R> executeAsync(Class<? extends IgniteFsTask<T, R>> taskCls,
-        @Nullable IgniteFsRecordResolver rslvr, Collection<IgniteFsPath> paths, boolean skipNonExistentFiles,
+    <T, R> IgniteInternalFuture<R> executeAsync(Class<? extends IgfsTask<T, R>> taskCls,
+        @Nullable IgfsRecordResolver rslvr, Collection<IgniteFsPath> paths, boolean skipNonExistentFiles,
         long maxRangeLen, @Nullable T arg) {
-        return ggfsCtx.kernalContext().task().execute((Class<IgniteFsTask<T, R>>)taskCls,
+        return ggfsCtx.kernalContext().task().execute((Class<IgfsTask<T, R>>)taskCls,
             new IgfsTaskArgsImpl<>(cfg.getName(), paths, rslvr, skipNonExistentFiles, maxRangeLen, arg));
     }
 
@@ -1979,7 +1979,7 @@ public final class IgfsImpl implements IgfsEx {
     /**
      * GGFS output stream extension that fires events.
      */
-    private class GgfsEventAwareOutputStream extends IgfsOutputStreamImpl {
+    private class IgfsEventAwareOutputStream extends IgfsOutputStreamImpl {
         /** Close guard. */
         private final AtomicBoolean closeGuard = new AtomicBoolean(false);
 
@@ -1994,7 +1994,7 @@ public final class IgfsImpl implements IgfsEx {
          * @param batch Optional secondary file system batch.
          * @throws IgniteCheckedException In case of error.
          */
-        GgfsEventAwareOutputStream(IgniteFsPath path, IgfsFileInfo fileInfo,
+        IgfsEventAwareOutputStream(IgniteFsPath path, IgfsFileInfo fileInfo,
             IgniteUuid parentId, int bufSize, IgniteFsMode mode, @Nullable IgfsFileWorkerBatch batch)
             throws IgniteCheckedException {
             super(ggfsCtx, path, fileInfo, parentId, bufSize, mode, batch, metrics);
@@ -2019,7 +2019,7 @@ public final class IgfsImpl implements IgfsEx {
     /**
      * GGFS input stream extension that fires events.
      */
-    private class GgfsEventAwareInputStream extends IgfsInputStreamImpl {
+    private class IgfsEventAwareInputStream extends IgfsInputStreamImpl {
         /** Close guard. */
         private final AtomicBoolean closeGuard = new AtomicBoolean(false);
 
@@ -2034,7 +2034,7 @@ public final class IgfsImpl implements IgfsEx {
          * @param secReader Optional secondary file system reader.
          * @param metrics Metrics.
          */
-        GgfsEventAwareInputStream(IgfsContext ggfsCtx, IgniteFsPath path, IgfsFileInfo fileInfo,
+        IgfsEventAwareInputStream(IgfsContext ggfsCtx, IgniteFsPath path, IgfsFileInfo fileInfo,
             int prefetchBlocks, int seqReadsBeforePrefetch, @Nullable IgniteFsReader secReader,
             IgfsLocalMetrics metrics) {
             super(ggfsCtx, path, fileInfo, prefetchBlocks, seqReadsBeforePrefetch, secReader, metrics);
@@ -2060,7 +2060,7 @@ public final class IgfsImpl implements IgfsEx {
      * Space calculation task.
      */
     @GridInternal
-    private static class GgfsGlobalSpaceTask extends ComputeTaskSplitAdapter<Object, IgniteBiTuple<Long, Long>> {
+    private static class IgfsGlobalSpaceTask extends ComputeTaskSplitAdapter<Object, IgniteBiTuple<Long, Long>> {
         /** */
         private static final long serialVersionUID = 0L;
 
@@ -2070,7 +2070,7 @@ public final class IgfsImpl implements IgfsEx {
         /**
          * @param ggfsName GGFS name.
          */
-        private GgfsGlobalSpaceTask(@Nullable String ggfsName) {
+        private IgfsGlobalSpaceTask(@Nullable String ggfsName) {
             this.ggfsName = ggfsName;
         }
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31d4e027/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsJobImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsJobImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsJobImpl.java
index ebd37a2..7ed86e3 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsJobImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsJobImpl.java
@@ -29,12 +29,12 @@ import java.io.*;
 /**
  * GGFS job implementation.
  */
-public class IgfsJobImpl implements ComputeJob, GridInternalWrapper<IgniteFsJob> {
+public class IgfsJobImpl implements ComputeJob, GridInternalWrapper<IgfsJob> {
     /** */
     private static final long serialVersionUID = 0L;
 
     /** GGFS job. */
-    private IgniteFsJob job;
+    private IgfsJob job;
 
     /** GGFS name. */
     private String ggfsName;
@@ -49,7 +49,7 @@ public class IgfsJobImpl implements ComputeJob, GridInternalWrapper<IgniteFsJob>
     private long len;
 
     /** Split resolver. */
-    private IgniteFsRecordResolver rslvr;
+    private IgfsRecordResolver rslvr;
 
     /** Injected grid. */
     @IgniteInstanceResource
@@ -67,8 +67,8 @@ public class IgfsJobImpl implements ComputeJob, GridInternalWrapper<IgniteFsJob>
      * @param len Split length.
      * @param rslvr GGFS split resolver.
      */
-    public IgfsJobImpl(IgniteFsJob job, String ggfsName, IgniteFsPath path, long start, long len,
-        IgniteFsRecordResolver rslvr) {
+    public IgfsJobImpl(IgfsJob job, String ggfsName, IgniteFsPath path, long start, long len,
+        IgfsRecordResolver rslvr) {
         this.job = job;
         this.ggfsName = ggfsName;
         this.path = path;
@@ -82,7 +82,7 @@ public class IgfsJobImpl implements ComputeJob, GridInternalWrapper<IgniteFsJob>
         IgniteFs fs = ignite.fileSystem(ggfsName);
 
         try (IgniteFsInputStream in = fs.open(path)) {
-            IgniteFsFileRange split = new IgniteFsFileRange(path, start, len);
+            IgfsFileRange split = new IgfsFileRange(path, start, len);
 
             if (rslvr != null) {
                 split = rslvr.resolveRecords(fs, in, split);
@@ -97,7 +97,7 @@ public class IgfsJobImpl implements ComputeJob, GridInternalWrapper<IgniteFsJob>
 
             in.seek(split.start());
 
-            return job.execute(fs, new IgniteFsFileRange(path, split.start(), split.length()), in);
+            return job.execute(fs, new IgfsFileRange(path, split.start(), split.length()), in);
         }
         catch (IOException e) {
             throw new IgniteException("Failed to execute GGFS job for file split [ggfsName=" + ggfsName +
@@ -111,7 +111,7 @@ public class IgfsJobImpl implements ComputeJob, GridInternalWrapper<IgniteFsJob>
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFsJob userObject() {
+    @Override public IgfsJob userObject() {
         return job;
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31d4e027/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsNoopProcessor.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsNoopProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsNoopProcessor.java
index 9d7f924..45eb612 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsNoopProcessor.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsNoopProcessor.java
@@ -64,8 +64,8 @@ public class IgfsNoopProcessor extends IgfsProcessorAdapter {
     }
 
     /** {@inheritDoc} */
-    @Nullable @Override public ComputeJob createJob(IgniteFsJob job, @Nullable String ggfsName, IgniteFsPath path,
-        long start, long length, IgniteFsRecordResolver recRslv) {
+    @Nullable @Override public ComputeJob createJob(IgfsJob job, @Nullable String ggfsName, IgniteFsPath path,
+        long start, long length, IgfsRecordResolver recRslv) {
         return null;
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31d4e027/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsProcessor.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsProcessor.java
index 0cfcebc..9669553 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsProcessor.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsProcessor.java
@@ -186,8 +186,8 @@ public class IgfsProcessor extends IgfsProcessorAdapter {
     }
 
     /** {@inheritDoc} */
-    @Nullable @Override public ComputeJob createJob(IgniteFsJob job, @Nullable String ggfsName, IgniteFsPath path,
-        long start, long len, IgniteFsRecordResolver recRslv) {
+    @Nullable @Override public ComputeJob createJob(IgfsJob job, @Nullable String ggfsName, IgniteFsPath path,
+        long start, long len, IgfsRecordResolver recRslv) {
         return new IgfsJobImpl(job, ggfsName, path, start, len, recRslv);
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31d4e027/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsProcessorAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsProcessorAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsProcessorAdapter.java
index 446394f..eb3bdbc 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsProcessorAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsProcessorAdapter.java
@@ -75,6 +75,6 @@ public abstract class IgfsProcessorAdapter extends GridProcessorAdapter {
      * @param recRslv Record resolver.
      * @return Compute job.
      */
-    @Nullable public abstract ComputeJob createJob(IgniteFsJob job, @Nullable String ggfsName, IgniteFsPath path,
-        long start, long length, IgniteFsRecordResolver recRslv);
+    @Nullable public abstract ComputeJob createJob(IgfsJob job, @Nullable String ggfsName, IgniteFsPath path,
+        long start, long length, IgfsRecordResolver recRslv);
 }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31d4e027/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsTaskArgsImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsTaskArgsImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsTaskArgsImpl.java
index c54d82f..a098a0c 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsTaskArgsImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/fs/IgfsTaskArgsImpl.java
@@ -27,7 +27,7 @@ import java.util.*;
 /**
  * GGFS task arguments implementation.
  */
-public class IgfsTaskArgsImpl<T> implements IgniteFsTaskArgs<T>,  Externalizable {
+public class IgfsTaskArgsImpl<T> implements IgfsTaskArgs<T>,  Externalizable {
     /** */
     private static final long serialVersionUID = 0L;
 
@@ -38,7 +38,7 @@ public class IgfsTaskArgsImpl<T> implements IgniteFsTaskArgs<T>,  Externalizable
     private Collection<IgniteFsPath> paths;
 
     /** Record resolver. */
-    private IgniteFsRecordResolver recRslvr;
+    private IgfsRecordResolver recRslvr;
 
     /** Skip non existent files flag. */
     private boolean skipNonExistentFiles;
@@ -66,7 +66,7 @@ public class IgfsTaskArgsImpl<T> implements IgniteFsTaskArgs<T>,  Externalizable
      * @param maxRangeLen Maximum range length.
      * @param usrArg User argument.
      */
-    public IgfsTaskArgsImpl(String ggfsName, Collection<IgniteFsPath> paths, IgniteFsRecordResolver recRslvr,
+    public IgfsTaskArgsImpl(String ggfsName, Collection<IgniteFsPath> paths, IgfsRecordResolver recRslvr,
         boolean skipNonExistentFiles, long maxRangeLen, T usrArg) {
         this.ggfsName = ggfsName;
         this.paths = paths;
@@ -87,7 +87,7 @@ public class IgfsTaskArgsImpl<T> implements IgniteFsTaskArgs<T>,  Externalizable
     }
 
     /** {@inheritDoc} */
-    @Override public IgniteFsRecordResolver recordResolver() {
+    @Override public IgfsRecordResolver recordResolver() {
         return recRslvr;
     }
 
@@ -127,7 +127,7 @@ public class IgfsTaskArgsImpl<T> implements IgniteFsTaskArgs<T>,  Externalizable
         ggfsName = U.readString(in);
         paths = U.readCollection(in);
 
-        recRslvr = (IgniteFsRecordResolver)in.readObject();
+        recRslvr = (IgfsRecordResolver)in.readObject();
         skipNonExistentFiles = in.readBoolean();
         maxRangeLen = in.readLong();
         usrArg = (T)in.readObject();

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31d4e027/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/IgfsTaskSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/IgfsTaskSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/IgfsTaskSelfTest.java
index a1e25cb..601ab05 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/IgfsTaskSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/IgfsTaskSelfTest.java
@@ -42,7 +42,7 @@ import static org.apache.ignite.cache.CacheWriteSynchronizationMode.*;
 import static org.apache.ignite.ignitefs.IgniteFsMode.*;
 
 /**
- * Tests for {@link org.apache.ignite.ignitefs.mapreduce.IgniteFsTask}.
+ * Tests for {@link org.apache.ignite.ignitefs.mapreduce.IgfsTask}.
  */
 public class IgfsTaskSelfTest extends IgfsCommonAbstractTest {
     /** Predefined words dictionary. */
@@ -155,7 +155,7 @@ public class IgfsTaskSelfTest extends IgfsCommonAbstractTest {
             Long genLen = ggfs.info(FILE).length();
 
             IgniteBiTuple<Long, Integer> taskRes = ggfs.execute(new Task(),
-                new IgniteFsStringDelimiterRecordResolver(" "), Collections.singleton(FILE), arg);
+                new IgfsStringDelimiterRecordResolver(" "), Collections.singleton(FILE), arg);
 
             assert F.eq(genLen, taskRes.getKey());
             assert F.eq(TOTAL_WORDS, taskRes.getValue());
@@ -183,7 +183,7 @@ public class IgfsTaskSelfTest extends IgfsCommonAbstractTest {
             Long genLen = ggfs.info(FILE).length();
 
             assertNull(ggfsAsync.execute(
-                new Task(), new IgniteFsStringDelimiterRecordResolver(" "), Collections.singleton(FILE), arg));
+                new Task(), new IgfsStringDelimiterRecordResolver(" "), Collections.singleton(FILE), arg));
 
             IgniteFuture<IgniteBiTuple<Long, Integer>> fut = ggfsAsync.future();
 
@@ -230,10 +230,10 @@ public class IgfsTaskSelfTest extends IgfsCommonAbstractTest {
     /**
      * Task.
      */
-    private static class Task extends IgniteFsTask<String, IgniteBiTuple<Long, Integer>> {
+    private static class Task extends IgfsTask<String, IgniteBiTuple<Long, Integer>> {
         /** {@inheritDoc} */
-        @Override public IgniteFsJob createJob(IgniteFsPath path, IgniteFsFileRange range,
-            IgniteFsTaskArgs<String> args) {
+        @Override public IgfsJob createJob(IgniteFsPath path, IgfsFileRange range,
+            IgfsTaskArgs<String> args) {
             return new Job();
         }
 
@@ -258,7 +258,7 @@ public class IgfsTaskSelfTest extends IgfsCommonAbstractTest {
     /**
      * Job.
      */
-    private static class Job implements IgniteFsJob, Serializable {
+    private static class Job implements IgfsJob, Serializable {
         @IgniteInstanceResource
         private Ignite ignite;
 
@@ -269,7 +269,7 @@ public class IgfsTaskSelfTest extends IgfsCommonAbstractTest {
         private ComputeJobContext ctx;
 
         /** {@inheritDoc} */
-        @Override public Object execute(IgniteFs ggfs, IgniteFsFileRange range, IgniteFsInputStream in)
+        @Override public Object execute(IgniteFs ggfs, IgfsFileRange range, IgniteFsInputStream in)
             throws IOException {
             assert ignite != null;
             assert ses != null;

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31d4e027/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsAbstractRecordResolverSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsAbstractRecordResolverSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsAbstractRecordResolverSelfTest.java
index 7c9614c..dbd4a19 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsAbstractRecordResolverSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsAbstractRecordResolverSelfTest.java
@@ -180,7 +180,7 @@ public class IgfsAbstractRecordResolverSelfTest extends GridCommonAbstractTest {
      * @param len Length.
      * @return Split.
      */
-    protected IgniteFsFileRange split(long start, long len) {
-        return new IgniteFsFileRange(FILE, start, len);
+    protected IgfsFileRange split(long start, long len) {
+        return new IgfsFileRange(FILE, start, len);
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31d4e027/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsByteDelimiterRecordResolverSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsByteDelimiterRecordResolverSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsByteDelimiterRecordResolverSelfTest.java
index 007dfc8..ad1f945 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsByteDelimiterRecordResolverSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsByteDelimiterRecordResolverSelfTest.java
@@ -286,9 +286,9 @@ public class IgfsByteDelimiterRecordResolverSelfTest extends IgfsAbstractRecordR
         byte[]... delims) throws Exception {
         write(data);
 
-        IgniteFsByteDelimiterRecordResolver rslvr = resolver(delims);
+        IgfsByteDelimiterRecordResolver rslvr = resolver(delims);
 
-        IgniteFsFileRange split;
+        IgfsFileRange split;
 
         try (IgniteFsInputStream is = read()) {
             split = rslvr.resolveRecords(ggfs, is, split(suggestedStart, suggestedLen));
@@ -312,9 +312,9 @@ public class IgfsByteDelimiterRecordResolverSelfTest extends IgfsAbstractRecordR
         throws Exception {
         write(data);
 
-        IgniteFsByteDelimiterRecordResolver rslvr = resolver(delims);
+        IgfsByteDelimiterRecordResolver rslvr = resolver(delims);
 
-        IgniteFsFileRange split;
+        IgfsFileRange split;
 
         try (IgniteFsInputStream is = read()) {
             split = rslvr.resolveRecords(ggfs, is, split(suggestedStart, suggestedLen));
@@ -329,7 +329,7 @@ public class IgfsByteDelimiterRecordResolverSelfTest extends IgfsAbstractRecordR
      * @param delims Delimiters.
      * @return Resolver.
      */
-    private IgniteFsByteDelimiterRecordResolver resolver(byte[]... delims) {
-        return new IgniteFsByteDelimiterRecordResolver(delims);
+    private IgfsByteDelimiterRecordResolver resolver(byte[]... delims) {
+        return new IgfsByteDelimiterRecordResolver(delims);
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31d4e027/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsFixedLengthRecordResolverSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsFixedLengthRecordResolverSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsFixedLengthRecordResolverSelfTest.java
index e84c98e..d377f5a 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsFixedLengthRecordResolverSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsFixedLengthRecordResolverSelfTest.java
@@ -98,9 +98,9 @@ public class IgfsFixedLengthRecordResolverSelfTest extends IgfsAbstractRecordRes
         throws Exception {
         write(data);
 
-        IgniteFsFixedLengthRecordResolver rslvr = resolver(len);
+        IgfsFixedLengthRecordResolver rslvr = resolver(len);
 
-        IgniteFsFileRange split;
+        IgfsFileRange split;
 
         try (IgniteFsInputStream is = read()) {
             split = rslvr.resolveRecords(ggfs, is, split(suggestedStart, suggestedLen));
@@ -124,9 +124,9 @@ public class IgfsFixedLengthRecordResolverSelfTest extends IgfsAbstractRecordRes
         throws Exception {
         write(data);
 
-        IgniteFsFixedLengthRecordResolver rslvr = resolver(len);
+        IgfsFixedLengthRecordResolver rslvr = resolver(len);
 
-        IgniteFsFileRange split;
+        IgfsFileRange split;
 
         try (IgniteFsInputStream is = read()) {
             split = rslvr.resolveRecords(ggfs, is, split(suggestedStart, suggestedLen));
@@ -141,7 +141,7 @@ public class IgfsFixedLengthRecordResolverSelfTest extends IgfsAbstractRecordRes
      * @param len Length.
      * @return Resolver.
      */
-    private IgniteFsFixedLengthRecordResolver resolver(int len) {
-        return new IgniteFsFixedLengthRecordResolver(len);
+    private IgfsFixedLengthRecordResolver resolver(int len) {
+        return new IgfsFixedLengthRecordResolver(len);
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31d4e027/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsNewLineDelimiterRecordResolverSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsNewLineDelimiterRecordResolverSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsNewLineDelimiterRecordResolverSelfTest.java
index aae0230..4ff1a33 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsNewLineDelimiterRecordResolverSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsNewLineDelimiterRecordResolverSelfTest.java
@@ -22,7 +22,7 @@ import org.apache.ignite.ignitefs.mapreduce.*;
 import org.apache.ignite.ignitefs.mapreduce.records.*;
 import org.apache.ignite.internal.util.typedef.*;
 
-import static org.apache.ignite.ignitefs.mapreduce.records.IgniteFsNewLineRecordResolver.*;
+import static org.apache.ignite.ignitefs.mapreduce.records.IgfsNewLineRecordResolver.*;
 
 /**
  * New line split resolver self test.
@@ -82,9 +82,9 @@ public class IgfsNewLineDelimiterRecordResolverSelfTest extends IgfsAbstractReco
         throws Exception {
         write(data);
 
-        IgniteFsNewLineRecordResolver rslvr = resolver();
+        IgfsNewLineRecordResolver rslvr = resolver();
 
-        IgniteFsFileRange split;
+        IgfsFileRange split;
 
         try (IgniteFsInputStream is = read()) {
             split = rslvr.resolveRecords(ggfs, is, split(suggestedStart, suggestedLen));
@@ -107,9 +107,9 @@ public class IgfsNewLineDelimiterRecordResolverSelfTest extends IgfsAbstractReco
         throws Exception {
         write(data);
 
-        IgniteFsNewLineRecordResolver rslvr = resolver();
+        IgfsNewLineRecordResolver rslvr = resolver();
 
-        IgniteFsFileRange split;
+        IgfsFileRange split;
 
         try (IgniteFsInputStream is = read()) {
             split = rslvr.resolveRecords(ggfs, is, split(suggestedStart, suggestedLen));
@@ -123,7 +123,7 @@ public class IgfsNewLineDelimiterRecordResolverSelfTest extends IgfsAbstractReco
      *
      * @return Resolver.
      */
-    private IgniteFsNewLineRecordResolver resolver() {
-        return IgniteFsNewLineRecordResolver.NEW_LINE;
+    private IgfsNewLineRecordResolver resolver() {
+        return IgfsNewLineRecordResolver.NEW_LINE;
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31d4e027/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsStringDelimiterRecordResolverSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsStringDelimiterRecordResolverSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsStringDelimiterRecordResolverSelfTest.java
index c18024a..7249272 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsStringDelimiterRecordResolverSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/fs/split/IgfsStringDelimiterRecordResolverSelfTest.java
@@ -88,9 +88,9 @@ public class IgfsStringDelimiterRecordResolverSelfTest extends IgfsAbstractRecor
         String... delims) throws Exception {
         write(data);
 
-        IgniteFsByteDelimiterRecordResolver rslvr = resolver(delims);
+        IgfsByteDelimiterRecordResolver rslvr = resolver(delims);
 
-        IgniteFsFileRange split;
+        IgfsFileRange split;
 
         try (IgniteFsInputStream is = read()) {
             split = rslvr.resolveRecords(ggfs, is, split(suggestedStart, suggestedLen));
@@ -114,9 +114,9 @@ public class IgfsStringDelimiterRecordResolverSelfTest extends IgfsAbstractRecor
         throws Exception {
         write(data);
 
-        IgniteFsStringDelimiterRecordResolver rslvr = resolver(delims);
+        IgfsStringDelimiterRecordResolver rslvr = resolver(delims);
 
-        IgniteFsFileRange split;
+        IgfsFileRange split;
 
         try (IgniteFsInputStream is = read()) {
             split = rslvr.resolveRecords(ggfs, is, split(suggestedStart, suggestedLen));
@@ -131,7 +131,7 @@ public class IgfsStringDelimiterRecordResolverSelfTest extends IgfsAbstractRecor
      * @param delims Delimiters.
      * @return Resolver.
      */
-    private IgniteFsStringDelimiterRecordResolver resolver(String... delims) {
-        return new IgniteFsStringDelimiterRecordResolver(UTF8, delims);
+    private IgfsStringDelimiterRecordResolver resolver(String... delims) {
+        return new IgfsStringDelimiterRecordResolver(UTF8, delims);
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/31d4e027/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/GridHadoopDefaultMapReducePlannerSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/GridHadoopDefaultMapReducePlannerSelfTest.java b/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/GridHadoopDefaultMapReducePlannerSelfTest.java
index 460d450..8f54ac0 100644
--- a/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/GridHadoopDefaultMapReducePlannerSelfTest.java
+++ b/modules/hadoop/src/test/java/org/apache/ignite/internal/processors/hadoop/GridHadoopDefaultMapReducePlannerSelfTest.java
@@ -874,26 +874,26 @@ public class GridHadoopDefaultMapReducePlannerSelfTest extends GridHadoopAbstrac
         }
 
         /** {@inheritDoc} */
-        @Override public <T, R> R execute(IgniteFsTask<T, R> task, @Nullable IgniteFsRecordResolver rslvr,
+        @Override public <T, R> R execute(IgfsTask<T, R> task, @Nullable IgfsRecordResolver rslvr,
             Collection<IgniteFsPath> paths, @Nullable T arg) {
             return null;
         }
 
         /** {@inheritDoc} */
-        @Override public <T, R> R execute(IgniteFsTask<T, R> task, @Nullable IgniteFsRecordResolver rslvr,
+        @Override public <T, R> R execute(IgfsTask<T, R> task, @Nullable IgfsRecordResolver rslvr,
             Collection<IgniteFsPath> paths, boolean skipNonExistentFiles, long maxRangeLen, @Nullable T arg) {
             return null;
         }
 
         /** {@inheritDoc} */
-        @Override public <T, R> R execute(Class<? extends IgniteFsTask<T, R>> taskCls,
-            @Nullable IgniteFsRecordResolver rslvr, Collection<IgniteFsPath> paths, @Nullable T arg) {
+        @Override public <T, R> R execute(Class<? extends IgfsTask<T, R>> taskCls,
+            @Nullable IgfsRecordResolver rslvr, Collection<IgniteFsPath> paths, @Nullable T arg) {
             return null;
         }
 
         /** {@inheritDoc} */
-        @Override public <T, R> R execute(Class<? extends IgniteFsTask<T, R>> taskCls,
-            @Nullable IgniteFsRecordResolver rslvr, Collection<IgniteFsPath> paths, boolean skipNonExistentFiles,
+        @Override public <T, R> R execute(Class<? extends IgfsTask<T, R>> taskCls,
+            @Nullable IgfsRecordResolver rslvr, Collection<IgniteFsPath> paths, boolean skipNonExistentFiles,
             long maxRangeLen, @Nullable T arg) {
             return null;
         }


Mime
View raw message