From 59e991ca2c62b1c405599e79f10f1399763a93d0 Mon Sep 17 00:00:00 2001 From: Serge Rider Date: Fri, 30 Aug 2019 10:09:15 +0200 Subject: [PATCH] SQL Server model refactoring Former-commit-id: 8689f6b155a37d8002b59ed91e71b0712d7a17b1 --- .../org/jkiss/dbeaver/ext/mssql/SQLServerUtils.java | 10 ++++------ .../dbeaver/ext/mssql/model/SQLServerDataType.java | 1 + .../jkiss/dbeaver/ext/mssql/model/SQLServerObject.java | 4 +++- .../dbeaver/ext/mssql/model/SQLServerProcedure.java | 2 +- .../jkiss/dbeaver/ext/mssql/model/SQLServerSchema.java | 1 + .../jkiss/dbeaver/ext/mssql/model/SQLServerView.java | 2 +- 6 files changed, 11 insertions(+), 9 deletions(-) diff --git a/plugins/org.jkiss.dbeaver.ext.mssql/src/org/jkiss/dbeaver/ext/mssql/SQLServerUtils.java b/plugins/org.jkiss.dbeaver.ext.mssql/src/org/jkiss/dbeaver/ext/mssql/SQLServerUtils.java index 3f0e7c88cf..a753caba48 100644 --- a/plugins/org.jkiss.dbeaver.ext.mssql/src/org/jkiss/dbeaver/ext/mssql/SQLServerUtils.java +++ b/plugins/org.jkiss.dbeaver.ext.mssql/src/org/jkiss/dbeaver/ext/mssql/SQLServerUtils.java @@ -144,13 +144,11 @@ public class SQLServerUtils { } } - public static String extractSource(@NotNull DBRProgressMonitor monitor, @NotNull SQLServerDatabase database, @Nullable SQLServerSchema schema, @NotNull String objectName) throws DBException { - SQLServerDataSource dataSource = database.getDataSource(); - String systemSchema = getSystemSchemaFQN(dataSource, database.getName(), SQLServerConstants.SQL_SERVER_SYSTEM_SCHEMA); + public static String extractSource(@NotNull DBRProgressMonitor monitor, @NotNull SQLServerSchema schema, @NotNull String objectName) throws DBException { + SQLServerDataSource dataSource = schema.getDataSource(); + String systemSchema = getSystemSchemaFQN(dataSource, schema.getDatabase().getName(), SQLServerConstants.SQL_SERVER_SYSTEM_SCHEMA); try (JDBCSession session = DBUtils.openMetaSession(monitor, dataSource, "Read source code")) { - String objectFQN = schema == null ? - DBUtils.getQuotedIdentifier(dataSource, objectName) : - DBUtils.getQuotedIdentifier(dataSource, schema.getName()) + "." + DBUtils.getQuotedIdentifier(dataSource, objectName); + String objectFQN = DBUtils.getQuotedIdentifier(dataSource, schema.getName()) + "." + DBUtils.getQuotedIdentifier(dataSource, objectName); try (JDBCPreparedStatement dbStat = session.prepareStatement(systemSchema + ".sp_helptext '" + objectFQN + "'")) { try (JDBCResultSet dbResult = dbStat.executeQuery()) { StringBuilder sql = new StringBuilder(); diff --git a/plugins/org.jkiss.dbeaver.ext.mssql/src/org/jkiss/dbeaver/ext/mssql/model/SQLServerDataType.java b/plugins/org.jkiss.dbeaver.ext.mssql/src/org/jkiss/dbeaver/ext/mssql/model/SQLServerDataType.java index 30ff795e94..030a8cb8ec 100644 --- a/plugins/org.jkiss.dbeaver.ext.mssql/src/org/jkiss/dbeaver/ext/mssql/model/SQLServerDataType.java +++ b/plugins/org.jkiss.dbeaver.ext.mssql/src/org/jkiss/dbeaver/ext/mssql/model/SQLServerDataType.java @@ -96,6 +96,7 @@ public class SQLServerDataType implements DBSDataType, SQLServerObject, DBPQuali this.valueType = valueType; } + @NotNull @Override public SQLServerDataSource getDataSource() { return (SQLServerDataSource) owner.getDataSource(); diff --git a/plugins/org.jkiss.dbeaver.ext.mssql/src/org/jkiss/dbeaver/ext/mssql/model/SQLServerObject.java b/plugins/org.jkiss.dbeaver.ext.mssql/src/org/jkiss/dbeaver/ext/mssql/model/SQLServerObject.java index d2cc328dca..a562159c92 100644 --- a/plugins/org.jkiss.dbeaver.ext.mssql/src/org/jkiss/dbeaver/ext/mssql/model/SQLServerObject.java +++ b/plugins/org.jkiss.dbeaver.ext.mssql/src/org/jkiss/dbeaver/ext/mssql/model/SQLServerObject.java @@ -16,6 +16,7 @@ */ package org.jkiss.dbeaver.ext.mssql.model; +import org.jkiss.code.NotNull; import org.jkiss.dbeaver.model.DBPNamedObject; import org.jkiss.dbeaver.model.DBPObjectWithLongId; import org.jkiss.dbeaver.model.struct.DBSObject; @@ -26,5 +27,6 @@ import org.jkiss.dbeaver.model.struct.DBSObject; */ public interface SQLServerObject extends DBPNamedObject, DBSObject, DBPObjectWithLongId { - + @NotNull + SQLServerDataSource getDataSource(); } diff --git a/plugins/org.jkiss.dbeaver.ext.mssql/src/org/jkiss/dbeaver/ext/mssql/model/SQLServerProcedure.java b/plugins/org.jkiss.dbeaver.ext.mssql/src/org/jkiss/dbeaver/ext/mssql/model/SQLServerProcedure.java index c08a3b5650..71285c918e 100644 --- a/plugins/org.jkiss.dbeaver.ext.mssql/src/org/jkiss/dbeaver/ext/mssql/model/SQLServerProcedure.java +++ b/plugins/org.jkiss.dbeaver.ext.mssql/src/org/jkiss/dbeaver/ext/mssql/model/SQLServerProcedure.java @@ -137,7 +137,7 @@ public class SQLServerProcedure extends AbstractProcedure