Sha256: 5ae9136743450d8590fbcff6f3d4927e542fc7ba886398179a7003f59ec3412b

Contents?: true

Size: 1.35 KB

Versions: 2

Compression:

Stored size: 1.35 KB

Contents

package org.embulk.output.oracle;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;

import org.embulk.output.jdbc.JdbcOutputConnector;

public class OracleOutputConnector
        implements JdbcOutputConnector
{
    private final String url;
    private final Properties properties;
    private final boolean direct;

    public OracleOutputConnector(String url, Properties properties, boolean direct)
    {
        try {
            Class.forName("oracle.jdbc.OracleDriver");
        } catch (Exception ex) {
            throw new RuntimeException(ex);
        }
        this.url = url;
        this.properties = properties;
        this.direct = direct;
    }

    @Override
    public OracleOutputConnection connect(boolean autoCommit) throws SQLException
    {
        Connection c = DriverManager.getConnection(url, properties);
        if (c == null) {
            // driver.connect returns null when url is "jdbc:mysql://...".
            throw new SQLException("Invalid url : " + url);
        }

        try {
            OracleOutputConnection con = new OracleOutputConnection(c, autoCommit, direct);
            c = null;
            return con;

        } finally {
            if (c != null) {
                c.close();
            }
        }
    }
}

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
embulk-output-oracle-0.4.1 src/main/java/org/embulk/output/oracle/OracleOutputConnector.java
embulk-output-oracle-0.2.4 src/main/java/org/embulk/output/oracle/OracleOutputConnector.java