PageRenderTime 47ms CodeModel.GetById 21ms RepoModel.GetById 0ms app.codeStats 0ms

/Source/Bifrost/Validation/CommandValidatorFactory.cs

#
C# | 54 lines | 31 code | 4 blank | 19 comment | 2 complexity | df5c9762c5ec803d75e06c4a1433fe9a MD5 | raw file
Possible License(s): CC-BY-SA-3.0
  1. #region License
  2. //
  3. // Copyright (c) 2008-2012, DoLittle Studios and Komplett ASA
  4. //
  5. // Licensed under the Microsoft Permissive License (Ms-PL), Version 1.1 (the "License")
  6. // With one exception :
  7. // Commercial libraries that is based partly or fully on Bifrost and is sold commercially,
  8. // must obtain a commercial license.
  9. //
  10. // You may not use this file except in compliance with the License.
  11. // You may obtain a copy of the license at
  12. //
  13. // http://bifrost.codeplex.com/license
  14. //
  15. // Unless required by applicable law or agreed to in writing, software
  16. // distributed under the License is distributed on an "AS IS" BASIS,
  17. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  18. // See the License for the specific language governing permissions and
  19. // limitations under the License.
  20. //
  21. #endregion
  22. using System;
  23. using FluentValidation;
  24. namespace Bifrost.Validation
  25. {
  26. #pragma warning disable 1591 // Xml Comments
  27. public class CommandValidatorFactory : IValidatorFactory
  28. {
  29. readonly ICommandValidatorProvider _commandValidatorProvider;
  30. public CommandValidatorFactory(ICommandValidatorProvider commandValidatorProvider)
  31. {
  32. _commandValidatorProvider = commandValidatorProvider;
  33. }
  34. public IValidator<T> GetValidator<T>()
  35. {
  36. var validator = _commandValidatorProvider.GetInputValidatorFor(typeof(T)) as IValidator<T>;
  37. return validator;
  38. }
  39. public IValidator GetValidator(Type type)
  40. {
  41. if (null != type)
  42. {
  43. var validator = _commandValidatorProvider.GetInputValidatorFor(type) as IValidator;
  44. return validator;
  45. }
  46. return null;
  47. }
  48. }
  49. #pragma warning restore 1591 // Xml Comments
  50. }