private static Properties asProperties(final String definition) throws IOException { final SuperProperties properties = new SuperProperties(); properties.caseInsensitive(true); properties.putAll(IO.readProperties(IO.read(definition), new Properties())); return properties; }
private static Properties asProperties(final String definition) throws IOException { final SuperProperties properties = new SuperProperties(); properties.caseInsensitive(true); properties.putAll(IO.readProperties(IO.read(definition), new Properties())); return properties; }
@Override public CommonDataSource pool(final String name, final String driver, final Properties properties) { final Properties converted = new Properties(); converted.setProperty("name", name); final SuperProperties prop = new SuperProperties().caseInsensitive(true); prop.putAll(properties); updateProperties(prop, converted, driver); final PoolConfiguration config = build(PoolProperties.class, converted); final String xa = String.class.cast(properties.remove("XaDataSource")); if (xa != null) { final XADataSource xaDs = XADataSourceResource.proxy(Thread.currentThread().getContextClassLoader(), xa); final TomEEDataSource instance = new TomEEDataSource(config, name, xaDs); return build(TomEEDataSource.class, instance, converted); } else { final TomEEDataSource instance = new TomEEDataSource(config, name); return build(TomEEDataSource.class, instance, converted); } }
@Override public DataSource pool(final String name, final DataSource ds, final Properties properties) { final Properties converted = new Properties(); final SuperProperties prop = new SuperProperties().caseInsensitive(true); prop.putAll(properties); updateProperties(prop, converted, null); final PoolConfiguration config = build(PoolProperties.class, converted); config.setDataSource(ds); final ConnectionPool pool; try { pool = new ConnectionPool(config); } catch (final SQLException e) { throw new IllegalStateException(e); } return build(TomEEDataSource.class, new TomEEDataSource(config, pool, name), converted); }
@Override public CommonDataSource pool(final String name, final String driver, final Properties properties) { if (!isMonitorDatabase()) { return super.pool(name, driver, properties); } final Properties converted = new Properties(); converted.setProperty("name", name); final SuperProperties prop = new SuperProperties().caseInsensitive(true); prop.putAll(properties); convertProperties(driver, converted, prop); final PoolConfiguration config = build(PoolProperties.class, converted); if (config.getName() == null) { config.setName(name); } final TomEEDataSource ds = build(TribestreamDataSource.class, new TribestreamDataSource(config, name), converted); final String xa = String.class.cast(properties.remove("XaDataSource")); if (xa != null) { cleanProperty(ds, "xadatasource"); final XADataSource xaDs = XADataSourceResource.proxy(Thread.currentThread().getContextClassLoader(), xa); ds.setDataSource(xaDs); } return ds; }
@Override public DataSource pool(final String name, final DataSource ds, final Properties properties) { if (!isMonitorDatabase()) { return super.pool(name, ds, properties); } final Properties converted = new Properties(); final SuperProperties prop = new SuperProperties().caseInsensitive(true); prop.putAll(properties); convertProperties(null, converted, prop); final PoolConfiguration config = build(PoolProperties.class, converted); config.setDataSource(ds); final ConnectionPool pool; try { pool = new ConnectionPool(config); } catch (final SQLException e) { throw new IllegalStateException(e); } if (config.getName() == null) { config.setName(name); } return build(TribestreamDataSource.class, new TribestreamDataSource(config, pool, name), converted); }