Merge create db work in progress (#341)

* Port over initial block of create db implementation

* Test case placeholder

* In-progress work

* Stage changes to other machine

* Add database prototype strings

* Stage changes to other machine

* Stage changes

* Hook the database info into capabilities discovery

* Stage changes

* Update SMO to latest from ssms_main

* Various clean-ups

* Update localization files
This commit is contained in:
Karl Burtram
2017-05-09 17:56:32 -07:00
committed by GitHub
parent 137335ffd5
commit 2e9843cec1
48 changed files with 16102 additions and 1446 deletions

View File

@@ -0,0 +1,20 @@
//
// Copyright (c) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
//
namespace Microsoft.SqlTools.Hosting.Contracts
{
/// <summary>
/// Defines the admin services provider options that the DMP server implements.
/// </summary>
public class AdminServicesProviderOptions
{
public ServiceOption[] DatabaseInfoOptions { get; set; }
public ServiceOption[] DatabaseFileInfoOptions { get; set; }
public ServiceOption[] FileGroupInfoOptions { get; set; }
}
}

View File

@@ -22,41 +22,14 @@ namespace Microsoft.SqlTools.Hosting.Contracts
public string Name { get; set; }
}
public class ConnectionOption
public class ConnectionOption : ServiceOption
{
public static readonly string ValueTypeString = "string";
public static readonly string ValueTypeMultiString = "multistring";
public static readonly string ValueTypePassword = "password";
public static readonly string ValueTypeNumber = "number";
public static readonly string ValueTypeCategory = "category";
public static readonly string ValueTypeBoolean = "boolean";
public static readonly string SpecialValueServerName = "serverName";
public static readonly string SpecialValueDatabaseName = "databaseName";
public static readonly string SpecialValueAuthType = "authType";
public static readonly string SpecialValueUserName = "userName";
public static readonly string SpecialValuePasswordName = "password";
public string Name { get; set; }
public string DisplayName { get; set; }
public string Description {get; set; }
public string GroupName {get; set; }
/// <summary>
/// Type of the parameter. Can be either string, number, or category.
/// </summary>
public string ValueType { get; set; }
public string DefaultValue { get; set; }
/// <summary>
/// Set of permitted values if ValueType is category.
/// </summary>
public CategoryValue[] CategoryValues { get; set; }
/// <summary>
/// Determines if the parameter is one of the 'special' known values.
/// Can be either Server Name, Database Name, Authentication Type,
@@ -68,11 +41,6 @@ namespace Microsoft.SqlTools.Hosting.Contracts
/// Flag to indicate that this option is part of the connection identity
/// </summary>
public bool IsIdentity { get; set; }
/// <summary>
/// Flag to indicate that this option is required
/// </summary>
public bool IsRequired { get; set; }
}
}

View File

@@ -17,5 +17,7 @@ namespace Microsoft.SqlTools.Hosting.Contracts
public string ProviderDisplayName { get; set; }
public ConnectionProviderOptions ConnectionProvider { get; set; }
public AdminServicesProviderOptions AdminServicesProvider { get; set; }
}
}

View File

@@ -0,0 +1,48 @@
//
// Copyright (c) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
//
namespace Microsoft.SqlTools.Hosting.Contracts
{
public class ServiceOption
{
public static readonly string ValueTypeString = "string";
public static readonly string ValueTypeMultiString = "multistring";
public static readonly string ValueTypePassword = "password";
public static readonly string ValueTypeNumber = "number";
public static readonly string ValueTypeCategory = "category";
public static readonly string ValueTypeBoolean = "boolean";
public static readonly string ValueTypeObject = "object";
public string Name { get; set; }
public string DisplayName { get; set; }
public string Description {get; set; }
public string GroupName {get; set; }
/// <summary>
/// Type of the parameter. Can be either string, number, or category.
/// </summary>
public string ValueType { get; set; }
public string DefaultValue { get; set; }
public string ObjectType { get; set; }
/// <summary>
/// Set of permitted values if ValueType is category.
/// </summary>
public CategoryValue[] CategoryValues { get; set; }
/// <summary>
/// Flag to indicate that this option is required
/// </summary>
public bool IsRequired { get; set; }
public bool IsArray { get; set; }
}
}