SR
using FxResources.System.Windows.Extensions;
using System.Resources;
namespace System
{
internal static class SR
{
private static readonly bool s_usingResourceKeys = GetUsingResourceKeysSwitchValue();
private static ResourceManager s_resourceManager;
internal static ResourceManager ResourceManager => s_resourceManager ?? (s_resourceManager = new ResourceManager(typeof(FxResources.System.Windows.Extensions.SR)));
internal static string ConvertInvalidPrimitive => GetResourceString("ConvertInvalidPrimitive");
internal static string Cryptography_InvalidHandle => GetResourceString("Cryptography_InvalidHandle");
internal static string Enum_InvalidValue => GetResourceString("Enum_InvalidValue");
internal static string PlatformNotSupported_System_Windows_Extensions => GetResourceString("PlatformNotSupported_System_Windows_Extensions");
internal static string SoundAPIBadSoundLocation => GetResourceString("SoundAPIBadSoundLocation");
internal static string SoundAPIFileDoesNotExist => GetResourceString("SoundAPIFileDoesNotExist");
internal static string SoundAPIFormatNotSupported => GetResourceString("SoundAPIFormatNotSupported");
internal static string SoundAPIInvalidWaveFile => GetResourceString("SoundAPIInvalidWaveFile");
internal static string SoundAPIInvalidWaveHeader => GetResourceString("SoundAPIInvalidWaveHeader");
internal static string SoundAPILoadTimedOut => GetResourceString("SoundAPILoadTimedOut");
internal static string SoundAPILoadTimeout => GetResourceString("SoundAPILoadTimeout");
internal static string SoundAPIReadError => GetResourceString("SoundAPIReadError");
internal static string TextParseFailedFormat => GetResourceString("TextParseFailedFormat");
internal static string PropertyValueInvalidEntry => GetResourceString("PropertyValueInvalidEntry");
private static bool GetUsingResourceKeysSwitchValue()
{
if (!AppContext.TryGetSwitch("System.Resources.UseSystemResourceKeys", out bool isEnabled))
return false;
return isEnabled;
}
internal static bool UsingResourceKeys()
{
return s_usingResourceKeys;
}
private static string GetResourceString(string resourceKey)
{
if (!UsingResourceKeys()) {
string result = null;
try {
result = ResourceManager.GetString(resourceKey);
return result;
} catch (MissingManifestResourceException) {
return result;
}
}
return resourceKey;
}
private static string GetResourceString(string resourceKey, string defaultString)
{
string resourceString = GetResourceString(resourceKey);
if (!(resourceKey == resourceString) && resourceString != null)
return resourceString;
return defaultString;
}
internal static string Format(string resourceFormat, object p1)
{
if (UsingResourceKeys())
return string.Join(", ", resourceFormat, p1);
return string.Format(resourceFormat, p1);
}
internal static string Format(string resourceFormat, object p1, object p2)
{
if (UsingResourceKeys())
return string.Join(", ", resourceFormat, p1, p2);
return string.Format(resourceFormat, p1, p2);
}
internal static string Format(string resourceFormat, object p1, object p2, object p3)
{
if (UsingResourceKeys())
return string.Join(", ", resourceFormat, p1, p2, p3);
return string.Format(resourceFormat, p1, p2, p3);
}
internal static string Format(string resourceFormat, params object[] args)
{
if (args != null) {
if (UsingResourceKeys())
return resourceFormat + ", " + string.Join(", ", args);
return string.Format(resourceFormat, args);
}
return resourceFormat;
}
internal static string Format(IFormatProvider provider, string resourceFormat, object p1)
{
if (UsingResourceKeys())
return string.Join(", ", resourceFormat, p1);
return string.Format(provider, resourceFormat, p1);
}
internal static string Format(IFormatProvider provider, string resourceFormat, object p1, object p2)
{
if (UsingResourceKeys())
return string.Join(", ", resourceFormat, p1, p2);
return string.Format(provider, resourceFormat, p1, p2);
}
internal static string Format(IFormatProvider provider, string resourceFormat, object p1, object p2, object p3)
{
if (UsingResourceKeys())
return string.Join(", ", resourceFormat, p1, p2, p3);
return string.Format(provider, resourceFormat, p1, p2, p3);
}
internal static string Format(IFormatProvider provider, string resourceFormat, params object[] args)
{
if (args != null) {
if (UsingResourceKeys())
return resourceFormat + ", " + string.Join(", ", args);
return string.Format(provider, resourceFormat, args);
}
return resourceFormat;
}
}
}