From 0e9ba28756b7d3427dff46714f8c4628a9439eaf Mon Sep 17 00:00:00 2001 From: Serge Rider Date: Fri, 12 Jun 2020 17:22:14 +0300 Subject: [PATCH] CB-156 Detached datasources. --- .../io/cloudbeaver/service/core/impl/WebServiceCore.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/server/bundles/io.cloudbeaver.server/src/io/cloudbeaver/service/core/impl/WebServiceCore.java b/server/bundles/io.cloudbeaver.server/src/io/cloudbeaver/service/core/impl/WebServiceCore.java index 5d1cb35690..97d1cc991e 100644 --- a/server/bundles/io.cloudbeaver.server/src/io/cloudbeaver/service/core/impl/WebServiceCore.java +++ b/server/bundles/io.cloudbeaver.server/src/io/cloudbeaver/service/core/impl/WebServiceCore.java @@ -206,9 +206,10 @@ public class WebServiceCore implements DBWServiceCore { WebConnectionInfo connectionInfo = webSession.getWebConnectionInfo(connectionId); boolean disconnected = false; + DBPDataSourceContainer dataSourceContainer = connectionInfo.getDataSourceContainer(); if (connectionInfo.isConnected()) { try { - connectionInfo.getDataSourceContainer().disconnect(webSession.getProgressMonitor()); + dataSourceContainer.disconnect(webSession.getProgressMonitor()); disconnected = true; } catch (DBException e) { log.error("Error closing connection", e); @@ -216,8 +217,8 @@ public class WebServiceCore implements DBWServiceCore { // Disconnect in async mode? //new DisconnectJob(connectionInfo.getDataSource()).schedule(); } - if (connectionInfo.getDataSourceContainer().isTemporary()) { - webSession.getDatabasesNode().getDataSourceRegistry().removeDataSource(connectionInfo.getDataSourceContainer()); + if (dataSourceContainer.isTemporary()) { + webSession.getDatabasesNode().getDataSourceRegistry().removeDataSource(dataSourceContainer); webSession.removeConnection(connectionInfo); }