Sha256: a32ccf9c09b157a62d330b84b3c6ad6c32dbd64d9a98bebd4ff8c397cfda6395

Contents?: true

Size: 933 Bytes

Versions: 1

Compression:

Stored size: 933 Bytes

Contents

package org.embulk.output.td.writer;

import org.embulk.output.td.MsgpackGZFileBuilder;
import org.embulk.spi.Column;
import org.embulk.spi.PageReader;

import java.io.IOException;

public abstract class FieldWriter
{
    private final String keyName;

    protected FieldWriter(String keyName)
    {
        this.keyName = keyName;
    }

    public void writeKeyValue(MsgpackGZFileBuilder builder, PageReader reader, Column column)
            throws IOException
    {
        writeKey(builder);
        if (reader.isNull(column)) {
            builder.writeNil();
        }
        else {
            writeValue(builder, reader, column);
        }
    }

    private void writeKey(MsgpackGZFileBuilder builder)
            throws IOException
    {
        builder.writeString(keyName);
    }

    protected abstract void writeValue(MsgpackGZFileBuilder builder, PageReader reader, Column column)
            throws IOException;
}

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
embulk-output-td-0.1.5 src/main/java/org/embulk/output/td/writer/FieldWriter.java