@Override public SimpleConnectionFactoryConfigurationBuilder<S> simpleConnection() { return connectionFactory(SimpleConnectionFactoryConfigurationBuilder.class); }
@Override public <C extends ConnectionFactoryConfigurationBuilder<?>> C connectionFactory(Class<C> klass) { return builder.connectionFactory(klass); }
@Override public <C extends ConnectionFactoryConfigurationBuilder<?>> C connectionFactory(C factoryBuilder) { return builder.connectionFactory(factoryBuilder); }
@Override public PooledConnectionFactoryConfigurationBuilder<S> connectionPool() { return connectionFactory(PooledConnectionFactoryConfigurationBuilder.class); }
@Override public ManagedConnectionFactoryConfigurationBuilder<S> dataSource() { return connectionFactory(ManagedConnectionFactoryConfigurationBuilder.class); }
@Override public Builder<?> read(T template) { super.read(template); Class<? extends ConnectionFactoryConfigurationBuilder<?>> cfb = (Class<? extends ConnectionFactoryConfigurationBuilder<?>>) ConfigurationUtils.builderFor(template .connectionFactory()); connectionFactory(cfb); connectionFactory.read(template.connectionFactory()); return this; } }