/*
* Hibernate OGM, Domain model persistence for NoSQL datastores
*
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
*/
package org.hibernate.ogm.transaction.impl;
import org.hibernate.ConnectionAcquisitionMode;
import org.hibernate.ConnectionReleaseMode;
import org.hibernate.resource.transaction.TransactionCoordinator;
import org.hibernate.resource.transaction.TransactionCoordinatorBuilder;
import org.hibernate.resource.transaction.spi.TransactionCoordinatorOwner;
/**
* A {@link TransactionCoordinatorBuilder} forwarding all invocations to a delegate.
*
* @author Gunnar Morling
*/
public class ForwardingTransactionCoordinatorBuilder implements TransactionCoordinatorBuilder {
private final TransactionCoordinatorBuilder delegate;
public ForwardingTransactionCoordinatorBuilder(TransactionCoordinatorBuilder delegate) {
this.delegate = delegate;
}
@Override
public TransactionCoordinator buildTransactionCoordinator(TransactionCoordinatorOwner owner, TransactionCoordinatorOptions options) {
return delegate.buildTransactionCoordinator( owner, options );
}
@Override
public boolean isJta() {
return delegate.isJta();
}
@Override
public ConnectionReleaseMode getDefaultConnectionReleaseMode() {
return delegate.getDefaultConnectionReleaseMode();
}
@Override
public ConnectionAcquisitionMode getDefaultConnectionAcquisitionMode() {
return delegate.getDefaultConnectionAcquisitionMode();
}
}