Example usage for org.apache.commons.dbcp.cpdsadapter DriverAdapterCPDS setMaxActive

List of usage examples for org.apache.commons.dbcp.cpdsadapter DriverAdapterCPDS setMaxActive

Introduction

In this page you can find the example usage for org.apache.commons.dbcp.cpdsadapter DriverAdapterCPDS setMaxActive.

Prototype

public void setMaxActive(int maxActive) 

Source Link

Document

The maximum number of active statements that can be allocated from this pool at the same time, or non-positive for no limit.

Usage

From source file:com.ibm.xsp.extlib.relational.jdbc.datasource.dbcp.DbcpResourceFactory.java

/**
 * //from  w  w  w  . ja v a2 s  .com
 */
public DbcpResourceFactory(final String dataSourceName, final String driverClass, final String url,
        final String userName, final String password, final int maxActive, final int maxIdle)
        throws PoolException {
    try {
        connectionPoolDataSource = AccessController
                .doPrivileged(new PrivilegedExceptionAction<ConnectionPoolDataSource>() {
                    public ConnectionPoolDataSource run() throws Exception {
                        //Using the generic connection pool adapter from DBCP, todo, look how to use the connection pool datasource provided by each driver
                        DriverAdapterCPDS adapter = new DriverAdapterCPDS();
                        adapter.setMaxActive(maxActive);
                        adapter.setMaxIdle(maxIdle);
                        adapter.setUrl(url);
                        adapter.setUser(userName);
                        adapter.setPassword(password);
                        adapter.setDriver(driverClass);
                        SharedPoolDataSource tds = new SharedPoolDataSource();
                        tds.setConnectionPoolDataSource(adapter);
                        tds.setMaxActive(maxActive);

                        ds = tds;
                        return adapter;
                    }
                });
    } catch (Exception e) {
        // "Unable to initialize the shared connection pool DataSource"
        String msg = com.ibm.xsp.extlib.relational.RelationalResourceHandler
                .getSpecialAudienceString("DbcpPoolDataSource.Unabletoinitializethesharedconnec");//$NON-NLS-1$
        throw new PoolException(e, msg);
    }
}

From source file:net.sourceforge.myvd.inserts.jdbc.JdbcInsert.java

public void configure(String name, Properties props, NameSpace nameSpace) throws LDAPException {

    this.name = name;

    driver = props.getProperty("driver");
    logger.info("Driver : " + driver);
    url = props.getProperty("url");
    logger.info("URL : " + url);
    user = props.getProperty("user");
    logger.info("User : " + user);
    pwd = props.getProperty("password");
    logger.info("Password : **********");

    this.valQuery = props.getProperty("validationQuery");
    logger.info("Validation Query : '" + this.valQuery + "'");

    this.maxCons = Integer.parseInt(props.getProperty("maxCons", "5"));
    logger.info("Max Cons : " + this.maxCons);
    this.maxIdleCons = Integer.parseInt(props.getProperty("maxIdleCons", "5"));
    logger.info("maxIdleCons : " + this.maxIdleCons);

    DriverAdapterCPDS pool = new DriverAdapterCPDS();

    try {//from  www.j  av a  2 s  .  com
        pool.setDriver(driver);
    } catch (ClassNotFoundException e) {
        throw new LDAPException("Could not load JDBC Driver", LDAPException.OPERATIONS_ERROR, driver, e);
    }
    pool.setUrl(url);
    pool.setUser(user);
    pool.setPassword(pwd);
    pool.setMaxActive(maxCons);
    pool.setMaxIdle(maxIdleCons);

    SharedPoolDataSource tds = new SharedPoolDataSource();
    tds.setConnectionPoolDataSource(pool);
    tds.setMaxActive(maxCons);
    tds.setMaxWait(50);
    tds.setTestOnBorrow(true);

    if (this.valQuery != null) {
        tds.setValidationQuery(this.valQuery);
    }
    this.ds = tds;

    base = nameSpace.getBase().toString();

    rdn = props.getProperty("rdn");
    logger.info("RDN : " + rdn);

    String mapping = props.getProperty("mapping");
    logger.info("Mapping : " + mapping);
    StringTokenizer toker = new StringTokenizer(mapping, ",");

    this.ldap2db = new HashMap<String, String>();
    this.db2ldap = new HashMap<String, String>();

    while (toker.hasMoreTokens()) {
        String token = toker.nextToken();
        String ldap = token.substring(0, token.indexOf('='));
        String db = token.substring(token.indexOf('=') + 1);

        ldap2db.put(ldap.toLowerCase(), db.toLowerCase());
        db2ldap.put(db.toLowerCase(), ldap.toLowerCase());

    }

    this.objectClass = props.getProperty("objectClass");
    logger.info("objectClass : " + objectClass);
    this.rdn = props.getProperty("rdn");
    this.dbRdn = ldap2db.get(rdn);

    this.useSimple = props.getProperty("useSimple", "false").equalsIgnoreCase("true");
    logger.info("Use Simple : " + useSimple);
    this.SQL = props.getProperty("sql");
    logger.info("SQL : " + this.SQL);
    int whereEnd;

    String fields = this.SQL.substring(this.SQL.toLowerCase().indexOf("select") + "select".length() + 1,
            this.SQL.toLowerCase().indexOf("from"));
    logger.info("fields : " + fields);
    int where = this.SQL.toLowerCase().indexOf("where");
    String table = "";
    if (where == -1) {
        table = this.SQL.substring(this.SQL.toLowerCase().indexOf("from") + "from".length() + 1).trim();
    } else {
        table = this.SQL.substring(this.SQL.toLowerCase().indexOf("from") + "from".length() + 1, where).trim();
    }

    logger.info("table - " + table);

    try {
        Class.forName(this.driver).newInstance();
    } catch (Exception e) {

    }

    /*
    try {
       Connection con = DriverManager.getConnection(this.url,this.user,this.pwd);
               
       toker = new StringTokenizer(fields,",",false);
       while (toker.hasMoreTokens()) {
    String field = toker.nextToken();
    ResultSet rs = con.getMetaData().getColumns(null, null, table, field);
    rs.next();
    String type = rs.getString("TYPE_NAME");
    logger.info(field + " - " + type);
       }
               
       PreparedStatement ps = null;
       ps
               
       con.close();
    } catch (SQLException e) {
       logger.error("Error loading db schema",e);
    }
            
    */

    if (this.useSimple) {
        this.searchSQL = this.SQL.substring(this.SQL.toLowerCase().indexOf(" from "));

        int whereBegin = this.searchSQL.toLowerCase().indexOf(" where ");

        whereEnd = this.searchSQL.toLowerCase().indexOf(" order ");
        this.hasPostWhere = true;

        if (whereEnd == -1) {
            whereEnd = this.searchSQL.toLowerCase().indexOf(" group ");
        }

        if (whereEnd == -1) {
            this.hasPostWhere = false;
            whereEnd = this.searchSQL.length();
        }

        if (this.hasPostWhere) {
            this.postWhere = this.searchSQL.substring(whereEnd);
        }

        if (whereBegin != -1) {
            this.hasWhere = true;

            this.whereClause = "(" + this.searchSQL.substring(whereBegin + " where ".length(), whereEnd) + ") ";

            this.searchSQL = this.searchSQL.substring(0, whereBegin);
        } else {
            if (this.hasPostWhere) {
                this.searchSQL = this.searchSQL.substring(0, whereEnd);
            }
            this.hasWhere = false;
        }

    } else {
        this.searchSQL = "SELECT " + ldap2db.get(this.rdn.toLowerCase()) + " "
                + SQL.substring(SQL.indexOf(" FROM "));
    }

    this.baseDN = new DN(base);

    this.addBaseToFilter = Boolean.parseBoolean(props.getProperty("addBaseToFilter", "true"));
    logger.info("Add Base To Filter : " + this.addBaseToFilter);

    this.ns = nameSpace;

}