Sha256: 3572e9c12da354e22a6ae8a86b92bce04c5306337245e77ce85e8aff86af385c

Contents?: true

Size: 1.36 KB

Versions: 16

Compression:

Stored size: 1.36 KB

Contents

package org.embulk.executor.mapreduce;

import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.NullWritable;
import org.apache.hadoop.mapreduce.InputSplit;
import org.apache.hadoop.mapreduce.TaskAttemptContext;
import org.apache.hadoop.mapreduce.RecordReader;

public class EmbulkRecordReader
        extends RecordReader<IntWritable, NullWritable>
{
    private final int[] taskIndexes;
    private int offset;

    private final IntWritable currentKey = new IntWritable();

    public EmbulkRecordReader(EmbulkInputSplit split)
    {
        this.taskIndexes = split.getTaskIndexes();
        this.offset = -1;
    }

    @Override
    public void initialize(InputSplit split, TaskAttemptContext context)
    { }

    @Override
    public boolean nextKeyValue()
    {
        offset++;
        if (taskIndexes.length <= offset) {
            return false;
        }
        currentKey.set(taskIndexes[offset]);
        return true;
    }

    @Override
    public float getProgress()
    {
        if (taskIndexes.length == 0) {
            return (float) 1.0;
        }
        return offset / (float) taskIndexes.length;
    }

    @Override
    public IntWritable getCurrentKey()
    {
        return currentKey;
    }

    @Override
    public NullWritable getCurrentValue()
    {
        return NullWritable.get();
    }

    @Override
    public void close()
    {
    }
}

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
embulk-executor-mapreduce-0.3.0 src/main/java/org/embulk/executor/mapreduce/EmbulkRecordReader.java
embulk-executor-mapreduce-0.2.8 src/main/java/org/embulk/executor/mapreduce/EmbulkRecordReader.java
embulk-executor-mapreduce-0.2.7 src/main/java/org/embulk/executor/mapreduce/EmbulkRecordReader.java
embulk-executor-mapreduce-0.2.6 src/main/java/org/embulk/executor/mapreduce/EmbulkRecordReader.java
embulk-executor-mapreduce-0.2.5 src/main/java/org/embulk/executor/mapreduce/EmbulkRecordReader.java
embulk-executor-mapreduce-0.2.4 src/main/java/org/embulk/executor/mapreduce/EmbulkRecordReader.java
embulk-executor-mapreduce-0.2.3 src/main/java/org/embulk/executor/mapreduce/EmbulkRecordReader.java
embulk-executor-mapreduce-0.2.2 src/main/java/org/embulk/executor/mapreduce/EmbulkRecordReader.java
embulk-executor-mapreduce-0.2.1 src/main/java/org/embulk/executor/mapreduce/EmbulkRecordReader.java
embulk-executor-mapreduce-0.2.0 src/main/java/org/embulk/executor/mapreduce/EmbulkRecordReader.java
embulk-executor-mapreduce-0.1.5 src/main/java/org/embulk/executor/mapreduce/EmbulkRecordReader.java
embulk-executor-mapreduce-0.1.4 src/main/java/org/embulk/executor/mapreduce/EmbulkRecordReader.java
embulk-executor-mapreduce-0.1.3 src/main/java/org/embulk/executor/mapreduce/EmbulkRecordReader.java
embulk-executor-mapreduce-0.1.2 src/main/java/org/embulk/executor/mapreduce/EmbulkRecordReader.java
embulk-executor-mapreduce-0.1.1 src/main/java/org/embulk/executor/mapreduce/EmbulkRecordReader.java
embulk-executor-mapreduce-0.1.0 src/main/java/org/embulk/executor/mapreduce/EmbulkRecordReader.java