示例#1
0
 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;
     }
 }
示例#2
0
 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());
            }
        }