All Downloads are FREE. Search and download functionalities are using the official Maven repository.

ee.jakarta.tck.concurrent.common.transaction.Connections Maven / Gradle / Ivy

/*
 * Copyright (c) 2023 Oracle and/or its affiliates. All rights reserved.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v. 2.0, which is available at
 * http://www.eclipse.org/legal/epl-2.0.
 *
 * This Source Code may also be made available under the following Secondary
 * Licenses when the conditions for such availability set forth in the
 * Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
 * version 2 with the GNU Classpath Exception, which is available at
 * https://www.gnu.org/software/classpath/license.html.
 *
 * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
 */
package ee.jakarta.tck.concurrent.common.transaction;

import java.sql.Connection;
import java.sql.SQLException;

import javax.sql.DataSource;

public final class Connections {

    private Connections() {
        // ignore
    }

    private static DataSource ds;

    public static void setDataSource(final DataSource dsIn) {
        Connections.ds = dsIn;
    }

    public static void unsetDataSource() {
        Connections.ds = null;
    }

    public static Connection getConnection(final boolean autoCommit) {
        Connection conn = null;
        try {
            conn = ds.getConnection(); // Try without user password for EE case
            if (conn == null) {
                conn = ds.getConnection(Constants.USERNAME, Constants.PASSWORD); // For standalone cases
            }
            if (null != conn) {
                conn.setAutoCommit(autoCommit);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return conn;
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy