}
@Override
public DataSource pool(final String name, final DataSource ds, final Properties properties) {
final BoneCPConfig config;
final BoneCP pool;
try {
config = new BoneCPConfig(prefixedProps(properties));
pool = new BoneCP(config);
} catch (Exception e) {
throw new IllegalArgumentException(e);
}
return build(BoneCPDataSourceProvidedPool.class, new BoneCPDataSourceProvidedPool(pool), new Properties());
}