using Abp.Threading; using IwbZero.Authorization.Base.Users; namespace IwbZero.MultiTenancy { public static class IwbTenantManagerExtensions { public static void Create(this IwbTenantManager tenantManager, TTenant tenant) where TTenant : IwbTenant where TUser : UserBase { AsyncHelper.RunSync(() => tenantManager.CreateAsync(tenant)); } public static void Update(this IwbTenantManager tenantManager, TTenant tenant) where TTenant : IwbTenant where TUser : UserBase { AsyncHelper.RunSync(() => tenantManager.UpdateAsync(tenant)); } public static TTenant FindById(this IwbTenantManager tenantManager, int id) where TTenant : IwbTenant where TUser : UserBase { return AsyncHelper.RunSync(() => tenantManager.FindByIdAsync(id)); } public static TTenant GetById(this IwbTenantManager tenantManager, int id) where TTenant : IwbTenant where TUser : UserBase { return AsyncHelper.RunSync(() => tenantManager.GetByIdAsync(id)); } public static TTenant FindByTenancyName(this IwbTenantManager tenantManager, string tenancyName) where TTenant : IwbTenant where TUser : UserBase { return AsyncHelper.RunSync(() => tenantManager.FindByTenancyNameAsync(tenancyName)); } public static void Delete(this IwbTenantManager tenantManager, TTenant tenant) where TTenant : IwbTenant where TUser : UserBase { AsyncHelper.RunSync(() => tenantManager.DeleteAsync(tenant)); } } }