diff options
Diffstat (limited to 'src/mscorlib/corefx/System/Globalization/CultureNotFoundException.cs')
-rw-r--r-- | src/mscorlib/corefx/System/Globalization/CultureNotFoundException.cs | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/src/mscorlib/corefx/System/Globalization/CultureNotFoundException.cs b/src/mscorlib/corefx/System/Globalization/CultureNotFoundException.cs new file mode 100644 index 0000000000..740063e4d3 --- /dev/null +++ b/src/mscorlib/corefx/System/Globalization/CultureNotFoundException.cs @@ -0,0 +1,104 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +using System; +using System.Threading; +using System.Runtime.Serialization; + +namespace System.Globalization +{ + [Serializable] + [System.Runtime.InteropServices.ComVisible(true)] + public partial class CultureNotFoundException : ArgumentException, ISerializable + { + private string _invalidCultureName; // unrecognized culture name + + public CultureNotFoundException() + : base(DefaultMessage) + { + } + + public CultureNotFoundException(String message) + : base(message) + { + } + + public CultureNotFoundException(String paramName, String message) + : base(message, paramName) + { + } + + public CultureNotFoundException(String message, Exception innerException) + : base(message, innerException) + { + } + + public CultureNotFoundException(String paramName, string invalidCultureName, String message) + : base(message, paramName) + { + _invalidCultureName = invalidCultureName; + } + + public CultureNotFoundException(String message, string invalidCultureName, Exception innerException) + : base(message, innerException) + { + _invalidCultureName = invalidCultureName; + } + + protected CultureNotFoundException(SerializationInfo info, StreamingContext context) : base(info, context) + { + _invalidCultureName = (string)info.GetValue("InvalidCultureName", typeof(string)); + } + + [System.Security.SecurityCritical] // auto-generated_required + public override void GetObjectData(SerializationInfo info, StreamingContext context) + { + if (info == null) + { + throw new ArgumentNullException("info"); + } + + base.GetObjectData(info, context); + info.AddValue("InvalidCultureName", _invalidCultureName, typeof(string)); + } + + public virtual string InvalidCultureName + { + get { return _invalidCultureName; } + } + + private static String DefaultMessage + { + get + { + return SR.Argument_CultureNotSupported; + } + } + + private String FormatedInvalidCultureId + { + get + { + return InvalidCultureName; + } + } + + public override String Message + { + get + { + String s = base.Message; + if ( + _invalidCultureName != null) + { + String valueMessage = SR.Format(SR.Argument_CultureInvalidIdentifier, FormatedInvalidCultureId); + if (s == null) + return valueMessage; + return s + Environment.NewLine + valueMessage; + } + return s; + } + } + } +} |