Change hardcoded MSSQL provider name to use constant instead (#5953)

This commit is contained in:
Charles Gagnon
2019-06-10 18:10:39 +00:00
committed by GitHub
parent 97a37e6834
commit 673ecc3870
27 changed files with 118 additions and 102 deletions

View File

@@ -20,6 +20,7 @@ import { toObject } from 'sql/base/common/map';
import { ConnectionProviderProperties, IConnectionProviderRegistry, Extensions as ConnectionExtensions } from 'sql/workbench/parts/connection/common/connectionProviderExtension';
import { ICapabilitiesService, ProviderFeatures, clientCapabilities } from 'sql/platform/capabilities/common/capabilitiesService';
import { ConnectionManagementInfo } from 'sql/platform/connection/common/connectionManagementInfo';
import { mssqlProviderName } from 'sql/platform/connection/common/constants';
const connectionRegistry = Registry.as<IConnectionProviderRegistry>(ConnectionExtensions.ConnectionProviderContributions);
@@ -158,7 +159,7 @@ export class CapabilitiesService extends Disposable implements ICapabilitiesServ
*/
public isFeatureAvailable(action: IAction, connectionManagementInfo: ConnectionManagementInfo): boolean {
let isCloud = connectionManagementInfo && connectionManagementInfo.serverInfo && connectionManagementInfo.serverInfo.isCloud;
let isMssql = connectionManagementInfo.connectionProfile.providerName === 'MSSQL';
let isMssql = connectionManagementInfo.connectionProfile.providerName === mssqlProviderName;
// TODO: The logic should from capabilities service.
if (action) {
let featureName: string = action.id;

View File

@@ -6,6 +6,7 @@
import { IConnectionProfile } from 'sql/platform/connection/common/interfaces';
import { ConnectionProfile } from 'sql/platform/connection/common/connectionProfile';
import { ConnectionProfileGroup } from 'sql/platform/connection/common/connectionProfileGroup';
import { mssqlProviderName } from 'sql/platform/connection/common/constants';
// CONSTANTS //////////////////////////////////////////////////////////////////////////////////////
const msInH = 3.6e6;
@@ -136,6 +137,6 @@ export function findProfileInGroup(og: IConnectionProfile, groups: ConnectionPro
export function isMaster(profile: IConnectionProfile): boolean {
// TODO: the connection profile should have a property to indicate whether the connection is a server connection or database connection
// created issue to track the problem: https://github.com/Microsoft/azuredatastudio/issues/5193.
return (profile.providerName.toLowerCase() === 'mssql' && profile.databaseName.toLowerCase() === 'master')
return (profile.providerName === mssqlProviderName && profile.databaseName.toLowerCase() === 'master')
|| (profile.providerName.toLowerCase() === 'pgsql' && profile.databaseName.toLowerCase() === 'postgres');
}

View File

@@ -17,6 +17,7 @@ import { CapabilitiesTestService } from 'sqltest/stubs/capabilitiesTestService';
import { deepClone, deepFreeze } from 'vs/base/common/objects';
import { ConfigurationTarget } from 'vs/platform/configuration/common/configuration';
import { TestStorageService } from 'vs/workbench/test/workbenchTestServices';
import { mssqlProviderName } from 'sql/platform/connection/common/constants';
suite('ConnectionStore', () => {
let defaultNamedProfile: IConnectionProfile = deepFreeze({
@@ -31,7 +32,7 @@ suite('ConnectionStore', () => {
groupFullName: '',
getOptionsKey: undefined,
matches: undefined,
providerName: 'MSSQL',
providerName: mssqlProviderName,
options: {},
saveProfile: true,
id: undefined
@@ -121,17 +122,17 @@ suite('ConnectionStore', () => {
}
];
msSQLCapabilities = {
providerId: 'MSSQL',
providerId: mssqlProviderName,
displayName: 'MSSQL',
connectionOptions: connectionProvider
};
provider2Capabilities = {
providerId: 'MSSQL',
providerId: mssqlProviderName,
displayName: 'MSSQL',
connectionOptions: connectionProvider
};
capabilitiesService.capabilities['MSSQL'] = { connection: msSQLCapabilities };
capabilitiesService.capabilities[mssqlProviderName] = { connection: msSQLCapabilities };
capabilitiesService.capabilities['Provider2'] = { connection: provider2Capabilities };
defaultNamedConnectionProfile = new ConnectionProfile(capabilitiesService, defaultNamedProfile);
@@ -507,7 +508,7 @@ suite('ConnectionStore', () => {
userName: 'user',
password: 'password',
authenticationType: '',
providerName: 'MSSQL',
providerName: mssqlProviderName,
groupId: parentGroupId,
groupFullName: '',
savePassword: true,

View File

@@ -25,6 +25,7 @@ import { IInstantiationService } from 'vs/platform/instantiation/common/instanti
import { IConfigurationService } from 'vs/platform/configuration/common/configuration';
import { ITextResourcePropertiesService } from 'vs/editor/common/services/resourceConfiguration';
import { URI } from 'vs/base/common/uri';
import { mssqlProviderName } from 'sql/platform/connection/common/constants';
export interface IEditSessionReadyEvent {
ownerUri: string;
@@ -369,7 +370,7 @@ export default class QueryRunner extends Disposable {
// fire query plan available event if execution is completed
if (result.resultSetSummary.complete) {
this._onQueryPlanAvailable.fire({
providerId: 'MSSQL',
providerId: mssqlProviderName,
fileUri: result.ownerUri,
planXml: planXmlString
});