Xamarin Public Jenkins (auto-signing) e79aa3c0ed Imported Upstream version 4.6.0.125
Former-commit-id: a2155e9bd80020e49e72e86c44da02a8ac0e57a4
2016-08-03 10:59:49 +00:00

34 lines
986 B
C#

//------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------------------------
namespace System.IdentityModel.Configuration
{
using System;
using System.ComponentModel;
using System.Configuration;
internal class StandardRuntimeEnumValidator : ConfigurationValidatorBase
{
Type enumType;
public StandardRuntimeEnumValidator(Type enumType)
{
this.enumType = enumType;
}
public override bool CanValidate(Type type)
{
return (type.IsEnum);
}
public override void Validate(object value)
{
if (!Enum.IsDefined(enumType, value))
{
throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidEnumArgumentException("value", (int)value, enumType));
}
}
}
}