AuthorizationHelperExtensions.cs 1.1 KB

12345678910111213141516171819202122232425262728293031
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Reflection;
  4. using System.Threading.Tasks;
  5. using Abp.Threading;
  6. namespace Abp.Authorization
  7. {
  8. public static class AuthorizationHelperExtensions
  9. {
  10. public static async Task AuthorizeAsync(this IAuthorizationHelper authorizationHelper, IAbpAuthorizeAttribute authorizeAttribute)
  11. {
  12. await authorizationHelper.AuthorizeAsync(new[] { authorizeAttribute });
  13. }
  14. public static void Authorize(this IAuthorizationHelper authorizationHelper, IEnumerable<IAbpAuthorizeAttribute> authorizeAttributes)
  15. {
  16. AsyncHelper.RunSync(() => authorizationHelper.AuthorizeAsync(authorizeAttributes));
  17. }
  18. public static void Authorize(this IAuthorizationHelper authorizationHelper, IAbpAuthorizeAttribute authorizeAttribute)
  19. {
  20. authorizationHelper.Authorize(new[] { authorizeAttribute });
  21. }
  22. public static void Authorize(this IAuthorizationHelper authorizationHelper, MethodInfo methodInfo, Type type)
  23. {
  24. AsyncHelper.RunSync(() => authorizationHelper.AuthorizeAsync(methodInfo, type));
  25. }
  26. }
  27. }