Sha256: 557b5ac8f4cc3bc9b57417fa9e441914b4b00475972e139e3bb473468dd3934f

Contents?: true

Size: 1.25 KB

Versions: 15

Compression:

Stored size: 1.25 KB

Contents

package org.embulk.input.jdbc;

import java.util.List;
import com.google.common.base.Optional;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonValue;

public class JdbcSchema
{
    private List<JdbcColumn> columns;

    @JsonCreator
    public JdbcSchema(List<JdbcColumn> columns)
    {
        this.columns = columns;
    }

    @JsonValue
    public List<JdbcColumn> getColumns()
    {
        return columns;
    }

    public int getCount()
    {
        return columns.size();
    }

    public JdbcColumn getColumn(int i)
    {
        return columns.get(i);
    }

    public String getColumnName(int i)
    {
        return columns.get(i).getName();
    }

    public Optional<Integer> findColumn(String caseInsensitiveName)
    {
        // find by case sensitive first
        for (int i = 0; i < columns.size(); i++) {
            if (getColumn(i).getName().equals(caseInsensitiveName)) {
                return Optional.of(i);
            }
        }
        // find by case insensitive
        for (int i = 0; i < columns.size(); i++) {
            if (getColumn(i).getName().equalsIgnoreCase(caseInsensitiveName)) {
                return Optional.of(i);
            }
        }
        return Optional.absent();
    }
}

Version data entries

15 entries across 15 versions & 2 rubygems

Version Path
embulk-input-jdbc-0.10.0 src/main/java/org/embulk/input/jdbc/JdbcSchema.java
embulk-input-jdbc-0.9.3 src/main/java/org/embulk/input/jdbc/JdbcSchema.java
embulk-input-jdbc-0.9.2 src/main/java/org/embulk/input/jdbc/JdbcSchema.java
embulk-input-athena-0.1.0 src/main/java/org/embulk/input/jdbc/JdbcSchema.java
embulk-input-jdbc-0.9.1 src/main/java/org/embulk/input/jdbc/JdbcSchema.java
embulk-input-jdbc-0.9.0 src/main/java/org/embulk/input/jdbc/JdbcSchema.java
embulk-input-jdbc-0.8.6 src/main/java/org/embulk/input/jdbc/JdbcSchema.java
embulk-input-jdbc-0.8.5 src/main/java/org/embulk/input/jdbc/JdbcSchema.java
embulk-input-jdbc-0.8.4 src/main/java/org/embulk/input/jdbc/JdbcSchema.java
embulk-input-jdbc-0.8.3 src/main/java/org/embulk/input/jdbc/JdbcSchema.java
embulk-input-jdbc-0.8.2 src/main/java/org/embulk/input/jdbc/JdbcSchema.java
embulk-input-jdbc-0.8.1 src/main/java/org/embulk/input/jdbc/JdbcSchema.java
embulk-input-jdbc-0.8.0 src/main/java/org/embulk/input/jdbc/JdbcSchema.java
embulk-input-jdbc-0.7.4 src/main/java/org/embulk/input/jdbc/JdbcSchema.java
embulk-input-jdbc-0.7.3 src/main/java/org/embulk/input/jdbc/JdbcSchema.java