mirror of
https://github.com/ckaczor/sqltoolsservice.git
synced 2026-01-23 01:25:42 -05:00
Add scripting API implemented by the SqlScriptPublishModel (#316)
Update the ScriptingService to expose new scripting JSON-RPC APIs that use the SqlScriptPublishModel for script generation. The SqlScriptPublishModel is the model behind the SSMS scripting wizard. To enable scripting for CLI tools, we've ported SqlScriptPublishModel to .NET Core. The SqlScriptPublishModel wraps the SMO scripting APIs for .sql script generation. 1) Added three new requests to the ScriptingService: ScriptingRequest, ScriptingListObjectsRequest, ScriptingCancelRequest. 2) Generating scripts are long running operations, so the ScriptingRequest and ScriptingListObjectsRequest kick off a long running scripting task and return immediately. 3) Long running scripting task reports progress and completion, and can be cancelled by a ScriptingCancelRequest request. 4) Bumped the SMO nuget package to 140.17049.0. This new version contains a signed SSMS_Rel build of SMO with the SqlScriptPublishModel. 5) For testing, adding the Northwind database schema TODO (in later pull requests) 1) Integrate the new ScriptingService APIs with the ConnectionService 2) Integrate with the metadata support recently added
This commit is contained in:
@@ -2157,6 +2157,30 @@ namespace Microsoft.SqlTools.ServiceLayer
|
||||
}
|
||||
}
|
||||
|
||||
public static string ScriptingParams_ConnectionString_Property_Invalid
|
||||
{
|
||||
get
|
||||
{
|
||||
return Keys.GetString(Keys.ScriptingParams_ConnectionString_Property_Invalid);
|
||||
}
|
||||
}
|
||||
|
||||
public static string ScriptingParams_FilePath_Property_Invalid
|
||||
{
|
||||
get
|
||||
{
|
||||
return Keys.GetString(Keys.ScriptingParams_FilePath_Property_Invalid);
|
||||
}
|
||||
}
|
||||
|
||||
public static string ScriptingListObjectsCompleteParams_ConnectionString_Property_Invalid
|
||||
{
|
||||
get
|
||||
{
|
||||
return Keys.GetString(Keys.ScriptingListObjectsCompleteParams_ConnectionString_Property_Invalid);
|
||||
}
|
||||
}
|
||||
|
||||
public static string ConnectionServiceListDbErrorNotConnected(string uri)
|
||||
{
|
||||
return Keys.GetString(Keys.ConnectionServiceListDbErrorNotConnected, uri);
|
||||
@@ -3075,6 +3099,15 @@ namespace Microsoft.SqlTools.ServiceLayer
|
||||
public const string SchemaHierarchy_ColumnEncryptionKeys = "SchemaHierarchy_ColumnEncryptionKeys";
|
||||
|
||||
|
||||
public const string ScriptingParams_ConnectionString_Property_Invalid = "ScriptingParams_ConnectionString_Property_Invalid";
|
||||
|
||||
|
||||
public const string ScriptingParams_FilePath_Property_Invalid = "ScriptingParams_FilePath_Property_Invalid";
|
||||
|
||||
|
||||
public const string ScriptingListObjectsCompleteParams_ConnectionString_Property_Invalid = "ScriptingListObjectsCompleteParams_ConnectionString_Property_Invalid";
|
||||
|
||||
|
||||
private Keys()
|
||||
{ }
|
||||
|
||||
|
||||
@@ -1251,4 +1251,16 @@
|
||||
<value>Column Encryption Keys</value>
|
||||
<comment></comment>
|
||||
</data>
|
||||
<data name="ScriptingParams_ConnectionString_Property_Invalid" xml:space="preserve">
|
||||
<value>Error parsing ScriptingParams.ConnectionString property.</value>
|
||||
<comment></comment>
|
||||
</data>
|
||||
<data name="ScriptingParams_FilePath_Property_Invalid" xml:space="preserve">
|
||||
<value>Invalid directory specified by the ScriptingParams.FilePath property.</value>
|
||||
<comment></comment>
|
||||
</data>
|
||||
<data name="ScriptingListObjectsCompleteParams_ConnectionString_Property_Invalid" xml:space="preserve">
|
||||
<value>Error parsing ScriptingListObjectsCompleteParams.ConnectionString property.</value>
|
||||
<comment></comment>
|
||||
</data>
|
||||
</root>
|
||||
|
||||
@@ -623,3 +623,11 @@ SchemaHierarchy_ColumnMasterKeys = Column Master Keys
|
||||
|
||||
SchemaHierarchy_ColumnEncryptionKeys = Column Encryption Keys
|
||||
|
||||
############################################################################
|
||||
# Scripting Service
|
||||
|
||||
ScriptingParams_ConnectionString_Property_Invalid = Error parsing ScriptingParams.ConnectionString property.
|
||||
|
||||
ScriptingParams_FilePath_Property_Invalid = Invalid directory specified by the ScriptingParams.FilePath property.
|
||||
|
||||
ScriptingListObjectsCompleteParams_ConnectionString_Property_Invalid = Error parsing ScriptingListObjectsCompleteParams.ConnectionString property.
|
||||
@@ -1416,6 +1416,21 @@
|
||||
<target state="new">Server</target>
|
||||
<note></note>
|
||||
</trans-unit>
|
||||
<trans-unit id="ScriptingParams_ConnectionString_Property_Invalid">
|
||||
<source>Error parsing ScriptingParams.ConnectionString property.</source>
|
||||
<target state="new">Error parsing ScriptingParams.ConnectionString property.</target>
|
||||
<note></note>
|
||||
</trans-unit>
|
||||
<trans-unit id="ScriptingParams_FilePath_Property_Invalid">
|
||||
<source>Invalid directory specified by the ScriptingParams.FilePath property.</source>
|
||||
<target state="new">Invalid directory specified by the ScriptingParams.FilePath property.</target>
|
||||
<note></note>
|
||||
</trans-unit>
|
||||
<trans-unit id="ScriptingListObjectsCompleteParams_ConnectionString_Property_Invalid">
|
||||
<source>Error parsing ScriptingListObjectsCompleteParams.ConnectionString property.</source>
|
||||
<target state="new">Error parsing ScriptingListObjectsCompleteParams.ConnectionString property.</target>
|
||||
<note></note>
|
||||
</trans-unit>
|
||||
</body>
|
||||
</file>
|
||||
</xliff>
|
||||
Reference in New Issue
Block a user