/// <summary> /// CreateTenantDataBase /// </summary> public void CreateTenantDataBase(int dataBaseId, int tenantId) { if (dataBaseId == 0) { ExceptionFactory.BusinessLogicException.AddMessage("DataBase Id Cannot Be Zero").Raise(); } if (tenantId == 0) { ExceptionFactory.BusinessLogicException.AddMessage("TenantId Id Cannot Be Zero").Raise(); } TenantSession tenantSession = new TenantSession(); ISession session = tenantSession.GetTenantSession(); try { //Check Already DataBase Configured For This Tenant ICriteria crit = session.CreateCriteria(typeof(DataBaseTenant)); crit.Add(Expression.Eq("TenantId", tenantId)); DataBaseTenant dataBaseTenant = crit.UniqueResult <DataBaseTenant>(); if (dataBaseTenant != null) { ExceptionFactory.BusinessLogicException.AddMessage("DatBase Already Configured For This Tenant").Raise(); } //Check For Valid DataBaseId crit = session.CreateCriteria(typeof(DataBase)); crit.Add(Expression.Eq("Id", dataBaseId)); DataBase dataBase = crit.UniqueResult <DataBase>(); if (dataBase == null) { ExceptionFactory.BusinessLogicException.AddMessage("InValid DataBaseId").Raise(); } dataBaseTenant = new DataBaseTenant(); dataBaseTenant.DataBaseId = dataBaseId; dataBaseTenant.TenantId = tenantId; session.Save(dataBaseTenant); session.Flush(); } catch (System.Exception ex) { ExceptionFactory.BusinessLogicException.AddMessage("Error In CreateTenantDataBase").Raise(); } }
/// <summary> /// UpdateTenantDataBase /// </summary> public void UpdateTenantDataBase(int modifiedDataBaseId, int tenantId) { if (modifiedDataBaseId == 0) { ExceptionFactory.BusinessLogicException.AddMessage("modifiedDataBaseId Cannot Be Zero").Raise(); } if (tenantId == 0) { ExceptionFactory.BusinessLogicException.AddMessage("TenantId Id Cannot Be Zero").Raise(); } TenantSession tenantSession = new TenantSession(); ISession session = tenantSession.GetTenantSession(); try { //Check For Valid DataBaseId ICriteria crit = session.CreateCriteria(typeof(DataBase)); crit.Add(Expression.Eq("Id", modifiedDataBaseId)); DataBase dataBase = crit.UniqueResult <DataBase>(); if (dataBase == null) { ExceptionFactory.BusinessLogicException.AddMessage("InValid DataBaseId").Raise(); } //Get DataBaseTenant By TenantId crit = session.CreateCriteria(typeof(DataBaseTenant)); crit.Add(Expression.Eq("TenantId", tenantId)); DataBaseTenant dataBaseTenant = crit.UniqueResult <DataBaseTenant>(); if (dataBaseTenant == null) { ExceptionFactory.BusinessLogicException.AddMessage("Invalid TenantId").Raise(); } dataBaseTenant.DataBaseId = modifiedDataBaseId; session.Update(dataBaseTenant); session.Flush(); } catch (System.Exception ex) { ExceptionFactory.BusinessLogicException.AddMessage("Error In UpdateTenantDataBase").Raise(); } }