Moved ParseDatabaseName to KustoQueryUtils and called it from KustoDataSource. (#1195)

This commit is contained in:
Justin M
2021-04-26 16:53:29 -07:00
committed by GitHub
parent 7a76399e9d
commit 875d60b418
3 changed files with 14 additions and 14 deletions

View File

@@ -3,7 +3,6 @@ using System.Collections.Generic;
using System.Data;
using System.Diagnostics;
using System.Linq;
using System.Text.RegularExpressions;
using System.Threading;
using System.Threading.Tasks;
using Kusto.Cloud.Platform.Data;
@@ -39,15 +38,6 @@ namespace Microsoft.Kusto.ServiceLayer.DataSource
Initialize(connectionDetails);
}
private string ParseDatabaseName(string databaseName)
{
var regex = new Regex(@"(?<=\().+?(?=\))");
return regex.IsMatch(databaseName)
? regex.Match(databaseName).Value
: databaseName;
}
private void Initialize(DataSourceConnectionDetails connectionDetails)
{
var stringBuilder = GetKustoConnectionStringBuilder(connectionDetails);
@@ -88,7 +78,7 @@ namespace Microsoft.Kusto.ServiceLayer.DataSource
: new KustoConnectionStringBuilder(connectionDetails.ConnectionString);
ClusterName = stringBuilder.DataSource;
var databaseName = ParseDatabaseName(stringBuilder.InitialCatalog);
var databaseName = KustoQueryUtils.ParseDatabaseName(stringBuilder.InitialCatalog);
DatabaseName = databaseName;
stringBuilder.InitialCatalog = databaseName;
@@ -250,7 +240,7 @@ namespace Microsoft.Kusto.ServiceLayer.DataSource
public void UpdateDatabase(string databaseName)
{
DatabaseName = ParseDatabaseName(databaseName);
DatabaseName = databaseName;
}
public void Dispose()

View File

@@ -248,8 +248,10 @@ namespace Microsoft.Kusto.ServiceLayer.DataSource
/// <inheritdoc/>
public override void UpdateDatabase(string databaseName)
{
_kustoClient.UpdateDatabase(databaseName);
_intellisenseClient.UpdateDatabase(databaseName);
// Aria has a GUID as a database name so parse it from the display name
var parsedDatabase = KustoQueryUtils.ParseDatabaseName(databaseName);
_kustoClient.UpdateDatabase(parsedDatabase);
_intellisenseClient.UpdateDatabase(parsedDatabase);
}
/// <summary>

View File

@@ -111,5 +111,13 @@ namespace Microsoft.Kusto.ServiceLayer.DataSource
dictionary[key] = metadatas.OrderBy(x => x.PrettyName, StringComparer.OrdinalIgnoreCase).ToList();
}
public static string ParseDatabaseName(string databaseName)
{
var regex = new Regex(@"(?<=\().+?(?=\))");
return regex.IsMatch(databaseName)
? regex.Match(databaseName).Value
: databaseName;
}
}
}