-
Notifications
You must be signed in to change notification settings - Fork 148
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Adding service operations for external languages (#918)
* Added service operations for external languages
- Loading branch information
Showing
17 changed files
with
1,440 additions
and
219 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
39 changes: 39 additions & 0 deletions
39
...ft.SqlTools.ServiceLayer/LanguageExtensibility/Contracts/ExternalLanguageDeleteRequest.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
// | ||
// Copyright (c) Microsoft. All rights reserved. | ||
// Licensed under the MIT license. See LICENSE file in the project root for full license information. | ||
// | ||
|
||
using Microsoft.SqlTools.Hosting.Protocol.Contracts; | ||
|
||
namespace Microsoft.SqlTools.ServiceLayer.LanguageExtensibility.Contracts | ||
{ | ||
public class ExternalLanguageDeleteRequestParams | ||
{ | ||
/// <summary> | ||
/// Connection uri | ||
/// </summary> | ||
public string OwnerUri { get; set; } | ||
|
||
/// <summary> | ||
/// Language name | ||
/// </summary> | ||
public string LanguageName { get; set; } | ||
} | ||
|
||
/// <summary> | ||
/// Response class for external language status | ||
/// </summary> | ||
public class ExternalLanguageDeleteResponseParams | ||
{ | ||
} | ||
|
||
/// <summary> | ||
/// Request class for external language status | ||
/// </summary> | ||
public class ExternalLanguageDeleteRequest | ||
{ | ||
public static readonly | ||
RequestType<ExternalLanguageDeleteRequestParams, ExternalLanguageDeleteResponseParams> Type = | ||
RequestType<ExternalLanguageDeleteRequestParams, ExternalLanguageDeleteResponseParams>.Create("languageExtension/delete"); | ||
} | ||
} |
39 changes: 39 additions & 0 deletions
39
...soft.SqlTools.ServiceLayer/LanguageExtensibility/Contracts/ExternalLanguageListRequest.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
// | ||
// Copyright (c) Microsoft. All rights reserved. | ||
// Licensed under the MIT license. See LICENSE file in the project root for full license information. | ||
// | ||
|
||
using Microsoft.SqlTools.Hosting.Protocol.Contracts; | ||
using System.Collections.Generic; | ||
|
||
namespace Microsoft.SqlTools.ServiceLayer.LanguageExtensibility.Contracts | ||
{ | ||
public class ExternalLanguageListRequestParams | ||
{ | ||
/// <summary> | ||
/// Connection uri | ||
/// </summary> | ||
public string OwnerUri { get; set; } | ||
} | ||
|
||
/// <summary> | ||
/// Response class for external language list | ||
/// </summary> | ||
public class ExternalLanguageListResponseParams | ||
{ | ||
/// <summary> | ||
/// Language status | ||
/// </summary> | ||
public List<ExternalLanguage> Languages { get; set; } | ||
} | ||
|
||
/// <summary> | ||
/// Request class for external language list | ||
/// </summary> | ||
public class ExternalLanguageListRequest | ||
{ | ||
public static readonly | ||
RequestType<ExternalLanguageListRequestParams, ExternalLanguageListResponseParams> Type = | ||
RequestType<ExternalLanguageListRequestParams, ExternalLanguageListResponseParams>.Create("languageExtension/list"); | ||
} | ||
} |
83 changes: 83 additions & 0 deletions
83
src/Microsoft.SqlTools.ServiceLayer/LanguageExtensibility/Contracts/ExternalLanguageModel.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,83 @@ | ||
// | ||
// Copyright (c) Microsoft. All rights reserved. | ||
// Licensed under the MIT license. See LICENSE file in the project root for full license information. | ||
// | ||
|
||
using System; | ||
using System.Collections.Generic; | ||
using System.IO; | ||
|
||
namespace Microsoft.SqlTools.ServiceLayer.LanguageExtensibility.Contracts | ||
{ | ||
|
||
public enum ExternalLanguagePlatform | ||
{ | ||
None, | ||
Windows, | ||
Linux | ||
} | ||
|
||
/// <summary> | ||
/// Language metadata | ||
/// </summary> | ||
public class ExternalLanguage | ||
{ | ||
|
||
/// <summary> | ||
/// Language Name | ||
/// </summary> | ||
public string Name { get; set; } | ||
|
||
/// <summary> | ||
/// Language Owner | ||
/// </summary> | ||
public string Owner { get; set; } | ||
|
||
public List<ExternalLanguageContent> Contents { get; set; } | ||
|
||
/// <summary> | ||
/// Created Date | ||
/// </summary> | ||
public string CreatedDate { get; set; } | ||
|
||
} | ||
|
||
public class ExternalLanguageContent | ||
{ | ||
public bool IsLocalFile { get; set; } | ||
|
||
/// <summary> | ||
/// Path to extension file | ||
/// </summary> | ||
public string PathToExtension { get; set; } | ||
|
||
/// <summary> | ||
/// Extension file name | ||
/// </summary> | ||
public string ExtensionFileName { get; set; } | ||
|
||
/// <summary> | ||
/// Platform name | ||
/// </summary> | ||
public ExternalLanguagePlatform PlatformId | ||
{ | ||
get | ||
{ | ||
return string.IsNullOrWhiteSpace(Platform) ? ExternalLanguagePlatform.None : (ExternalLanguagePlatform)Enum.Parse(typeof(ExternalLanguagePlatform), Platform, true); | ||
} | ||
} | ||
|
||
public string Platform { get; set; } | ||
|
||
/// <summary> | ||
/// Extension parameters | ||
/// </summary> | ||
public string Parameters { get; set; } | ||
|
||
/// <summary> | ||
/// Environment variables | ||
/// </summary> | ||
public string EnvironmentVariables { get; set; } | ||
|
||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
39 changes: 39 additions & 0 deletions
39
...ft.SqlTools.ServiceLayer/LanguageExtensibility/Contracts/ExternalLanguageUpdateRequest.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
// | ||
// Copyright (c) Microsoft. All rights reserved. | ||
// Licensed under the MIT license. See LICENSE file in the project root for full license information. | ||
// | ||
|
||
using Microsoft.SqlTools.Hosting.Protocol.Contracts; | ||
|
||
namespace Microsoft.SqlTools.ServiceLayer.LanguageExtensibility.Contracts | ||
{ | ||
public class ExternalLanguageUpdateRequestParams | ||
{ | ||
/// <summary> | ||
/// Connection uri | ||
/// </summary> | ||
public string OwnerUri { get; set; } | ||
|
||
/// <summary> | ||
/// Language name | ||
/// </summary> | ||
public ExternalLanguage Language { get; set; } | ||
} | ||
|
||
/// <summary> | ||
/// Response class for external language update | ||
/// </summary> | ||
public class ExternalLanguageUpdateResponseParams | ||
{ | ||
} | ||
|
||
/// <summary> | ||
/// Request class for external language status | ||
/// </summary> | ||
public class ExternalLanguageUpdateRequest | ||
{ | ||
public static readonly | ||
RequestType<ExternalLanguageUpdateRequestParams, ExternalLanguageUpdateResponseParams> Type = | ||
RequestType<ExternalLanguageUpdateRequestParams, ExternalLanguageUpdateResponseParams>.Create("languageExtension/update"); | ||
} | ||
} |
Oops, something went wrong.