Files
sqltoolsservice/src/Microsoft.SqlTools.ServiceLayer/AutoParameterizaition/MessageHelper.cs
Karl Burtram f288bee294 Make nullable warnings a per file opt-in (#1842)
* Make nullable warnings a per file opt-in

* Remove unneeded compiler directives

* Remove compiler directive for User Data
2023-02-03 18:10:07 -08:00

56 lines
2.8 KiB
C#

//
// Copyright (c) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
//
#nullable disable
using System.Globalization;
namespace Microsoft.SqlTools.ServiceLayer.AutoParameterizaition.Helpers
{
public class MessageHelper
{
private static readonly string ERROR_MESSAGE_TEMPLATE = "Unable to Convert {0} to a Microsoft.Data.SqlClient.SqlParameter object. The specified literal cannot be converted to {1}(System.Data.SqlDbType).";
private static readonly string DATE_TIME_ERROR_MESSAGE_TEMPLATE = "Unable to Convert {0} to a Microsoft.Data.SqlClient.SqlParameter object. The specified literal cannot be converted to {1}(System.Data.SqlDbType), as it used an unsupported date/time format. Use one of the supported Date/time formats.";
private static readonly string BINARY_LITERAL_PREFIX_MISSING_ERROR_TEMPLATE = "Unable to Convert {0} to a Microsoft.Data.SqlClient.SqlParameter object. The specified literal cannot be converted to {1}(System.Data.SqlDbType), as prefix 0x is expected for a binary literals.";
internal static string GetLocalizedMessage(MessageType type, string variableName, string sqlDataType, string literalValue)
{
switch (type)
{
case MessageType.ERROR_MESSAGE:
return SR.ErrorMessage(variableName, sqlDataType, literalValue);
case MessageType.DATE_TIME_ERROR_MESSAGE:
return SR.DateTimeErrorMessage(variableName, sqlDataType, literalValue);
case MessageType.BINARY_LITERAL_PREFIX_MISSING_ERROR:
return SR.BinaryLiteralPrefixMissingError(variableName, sqlDataType, literalValue);
default:
return "";
}
}
internal static string GetLocaleInvariantMessage(MessageType type, string variableName, string sqlDataType)
{
switch (type)
{
case MessageType.ERROR_MESSAGE:
return string.Format(CultureInfo.InvariantCulture, ERROR_MESSAGE_TEMPLATE, variableName, sqlDataType);
case MessageType.DATE_TIME_ERROR_MESSAGE:
return string.Format(CultureInfo.InvariantCulture, DATE_TIME_ERROR_MESSAGE_TEMPLATE, variableName, sqlDataType);
case MessageType.BINARY_LITERAL_PREFIX_MISSING_ERROR:
return string.Format(CultureInfo.InvariantCulture, BINARY_LITERAL_PREFIX_MISSING_ERROR_TEMPLATE, variableName, sqlDataType);
default:
return "";
}
}
public enum MessageType
{
ERROR_MESSAGE,
DATE_TIME_ERROR_MESSAGE,
BINARY_LITERAL_PREFIX_MISSING_ERROR,
}
}
}