in old/dekaf-core/src/main/java/org/jetbrains/dekaf/core/BaseFederatedProvider.java [57:82]
public synchronized DBFacade openFacade(@NotNull final String connectionString,
@Nullable final Properties connectionProperties,
final int connectionsLimit,
final boolean connect) {
if (myIntermediateProvider != null) {
boolean ok = false;
final IntegralIntermediateFacade intermediateFacade =
myIntermediateProvider.openFacade(connectionString, connectionProperties, connectionsLimit);
try {
final BaseFacade facade = new BaseFacade(intermediateFacade);
if (connect) {
facade.connect();
}
ok = true;
return facade;
}
finally {
if (!ok) {
intermediateFacade.disconnect();
}
}
}
else {
throw new IllegalStateException("The federated provider is not initialized yet");
}
}