IwbTenantManagerExtensions.cs 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. using Abp.Threading;
  2. using IwbZero.Authorization.Base.Users;
  3. namespace IwbZero.MultiTenancy
  4. {
  5. public static class IwbTenantManagerExtensions
  6. {
  7. public static void Create<TTenant, TUser>(this IwbTenantManager<TTenant, TUser> tenantManager, TTenant tenant)
  8. where TTenant : IwbTenant<TUser>
  9. where TUser : UserBase
  10. {
  11. AsyncHelper.RunSync(() => tenantManager.CreateAsync(tenant));
  12. }
  13. public static void Update<TTenant, TUser>(this IwbTenantManager<TTenant, TUser> tenantManager, TTenant tenant)
  14. where TTenant : IwbTenant<TUser>
  15. where TUser : UserBase
  16. {
  17. AsyncHelper.RunSync(() => tenantManager.UpdateAsync(tenant));
  18. }
  19. public static TTenant FindById<TTenant, TUser>(this IwbTenantManager<TTenant, TUser> tenantManager, int id)
  20. where TTenant : IwbTenant<TUser>
  21. where TUser : UserBase
  22. {
  23. return AsyncHelper.RunSync(() => tenantManager.FindByIdAsync(id));
  24. }
  25. public static TTenant GetById<TTenant, TUser>(this IwbTenantManager<TTenant, TUser> tenantManager, int id)
  26. where TTenant : IwbTenant<TUser>
  27. where TUser : UserBase
  28. {
  29. return AsyncHelper.RunSync(() => tenantManager.GetByIdAsync(id));
  30. }
  31. public static TTenant FindByTenancyName<TTenant, TUser>(this IwbTenantManager<TTenant, TUser> tenantManager, string tenancyName)
  32. where TTenant : IwbTenant<TUser>
  33. where TUser : UserBase
  34. {
  35. return AsyncHelper.RunSync(() => tenantManager.FindByTenancyNameAsync(tenancyName));
  36. }
  37. public static void Delete<TTenant, TUser>(this IwbTenantManager<TTenant, TUser> tenantManager, TTenant tenant)
  38. where TTenant : IwbTenant<TUser>
  39. where TUser : UserBase
  40. {
  41. AsyncHelper.RunSync(() => tenantManager.DeleteAsync(tenant));
  42. }
  43. }
  44. }