public override void CreateRole(string roleName) { if (RolesCache.Exists(r => r.RoleName.EqualsEx(roleName))) { return; } OracleConnection con = new OracleConnection(_connectionString); OracleCommand com = con.CreateCommand(SchemaOwner + PackageName + "create_role", CommandType.StoredProcedure); com.Parameters.Add("i_app_name", OracleDbType.Varchar2, ApplicationName, ParameterDirection.Input); com.Parameters.Add("i_role_name", OracleDbType.Varchar2, roleName.Trim().ToUpper(), ParameterDirection.Input); com.Parameters.Add("i_audit_user", OracleDbType.Varchar2, HttpContext.Current.User.Identity.Name, ParameterDirection.Input); try { con.Open(); com.ExecuteNonQuery(); con.Close(); // reset cache _refreshRolesCache = true; } catch (OracleException oex) { // check if its a custom oracle exception if (oex.Number >= 20000 && oex.Number <= 20999) { // throw a custom exception throw new DalException(Dal.ExtractOracleMessage(oex.Message), oex); } else { throw; } } finally { // cleanup Dal.Cleanup(con, com); con = null; com = null; } }
public override bool RoleExists(string roleName) { return(RolesCache.Exists(r => r.RoleName.EqualsEx(roleName.Trim()))); }