private static bool InnerCheckTablespaceExists(RuntimeDatabaseConfiguration runtimeConf, string tablespacename, out string friendlyMessage) { friendlyMessage = "Test completed successfully."; using (var conn = runtimeConf.DatabaseProvider.GetIntegrationDatabaseServices(runtimeConf).TransactionService.CreateConnection()) { using (var cmd = conn.CreateCommand()) { cmd.CommandTimeout = QueryTimeout; try { cmd.CommandText = string.Format("SELECT COUNT(1) FROM USER_TABLESPACES WHERE TABLESPACE_NAME = '{0}'", tablespacename); bool exists = Convert.ToBoolean(cmd.ExecuteScalar()); if (!exists) { friendlyMessage = string.Format("Tablespace {0} does not exist", tablespacename); EventLogger.WriteError(string.Format("Error testing connection to the database: {0}", friendlyMessage)); return false; } } catch (Exception e) { friendlyMessage = e.Message; EventLogger.WriteError(string.Format( "Error testing connection to the database: {0}\n\n{1}\n{2}", e.Message, e.StackTrace, (new StackTrace(true)))); return false; } } return true; } }
internal static bool CheckTablespaceExists(RuntimeDatabaseConfiguration runtimeConf, User user, out string friendlyMessage) { bool exists = InnerCheckTablespaceExists(runtimeConf, runtimeConf.Tablespace, out friendlyMessage); if (exists && user == User.Admin) { exists = InnerCheckTablespaceExists(runtimeConf, runtimeConf.TablespaceIndex, out friendlyMessage); } return exists; }
public override bool RequiresElevatedPrivilges() { try { RuntimeDatabaseConfiguration confAdmin = (RuntimeDatabaseConfiguration)uiConfiguration.RuntimeDatabaseConfiguration(Source.Services, User.Admin); return(ConfigurationManagerUtils.LoginExists(confAdmin, confAdmin.Username) == false || ConfigurationManagerUtils.DatabaseExists(confAdmin, confAdmin.Catalog) == false); } catch { return(base.RequiresElevatedPrivilges()); } }
public override bool RequiresElevatedPrivilges() { try { RuntimeDatabaseConfiguration confAdmin = (RuntimeDatabaseConfiguration)((TwoUserDatabaseConfiguration)uiConfiguration).RuntimeDatabaseConfiguration(UserType.Admin); RuntimeDatabaseConfiguration confRuntime = (RuntimeDatabaseConfiguration)((TwoUserDatabaseConfiguration)uiConfiguration).RuntimeDatabaseConfiguration(UserType.Runtime); return(ConfigurationManagerUtils.LoginExists(confAdmin, confAdmin.Username) == false || ConfigurationManagerUtils.LoginExists(confRuntime, confRuntime.Username) == false || ConfigurationManagerUtils.DatabaseExists(confAdmin, confAdmin.Catalog) == false); } catch { return(base.RequiresElevatedPrivilges()); } }