@Override
public <Z, D extends Database<Z>> StateManager createStateManager(DatabaseCluster<Z, D> cluster)
{
String location = MessageFormat.format(this.locationPattern, cluster.getId(), Strings.HA_JDBC_HOME);
EnvironmentConfig config = new EnvironmentConfig().setAllowCreate(true).setTransactional(true);
return new BerkeleyDBStateManager(cluster, new File(location), config, new GenericObjectPoolFactory(this));
}