Ejemplo n.º 1
0
        } // end of CreateUserSession

        /// <summary>
        /// Creates a Admin Session
        /// </summary>
        private void CreateAdminSession()
        {
            // create and initialize admin session object
            cqAdminSession = CQWrapper.CreateAdminSession();
            Logger.WritePerf(LogSource.CQ, "Connecting to CQ Admin Session");
            CQWrapper.AdminLogon(cqAdminSession, m_user, m_pwd, m_dbSet, m_configFile);
            Logger.WritePerf(LogSource.CQ, "Connected to CQ Admin Session");
            OAdUser cqUser = CQWrapper.GetUser(cqAdminSession, m_user);

            try
            {
                if (!CQWrapper.IsSuperUser(cqUser))
                {
                    string errMsg = UtilityMethods.Format(CQResource.CQ_NO_ADMIN_RIGHT,
                                                          CurConResource.Analysis,
                                                          m_configFile);
                    Logger.Write(LogSource.CQ, TraceLevel.Error, errMsg);
                    ConverterMain.MigrationReport.WriteIssue(String.Empty,
                                                             errMsg, string.Empty /* no item */, null, "Config", ReportIssueType.Critical);

                    throw new ConverterException(errMsg);
                }
            }
            catch (System.Runtime.InteropServices.COMException ex)
            {
                string errMsg = UtilityMethods.Format(CQResource.CQ_NO_ADMIN_RIGHT, m_configFile);
                Logger.WriteException(LogSource.CQ, ex);
                Logger.Write(LogSource.CQ, TraceLevel.Error, errMsg);
                ConverterMain.MigrationReport.WriteIssue(String.Empty, errMsg, string.Empty /* no item */,
                                                         null, "Config", ReportIssueType.Critical);

                throw new ConverterException(errMsg);
            }
        } // end of CreateAdminSession
Ejemplo n.º 2
0
 internal static bool IsSuperUser(OAdUser user)
 {
     try
     {
         return(user.SuperUser);
     }
     catch (COMException ex)
     {
         InteropErrorHandler.HandleCQException(ex);
     }
     return(false);
 }
Ejemplo n.º 3
0
        internal static OAdUser GetUser(AdminSession cqAdminSession, string userName)
        {
            OAdUser user = null;

            try
            {
                user = (OAdUser)cqAdminSession.GetUser(userName);
            }
            catch (COMException ex)
            {
                InteropErrorHandler.HandleCQException(ex);
            }
            return(user);
        }
Ejemplo n.º 4
0
        internal static OAdUser GetUser(OAdUsers users, ref object userObj)
        {
            OAdUser aUser = null;

            try
            {
                aUser = (OAdUser)users.item(ref userObj);
            }
            catch (COMException ex)
            {
                InteropErrorHandler.HandleCQException(ex);
            }
            return(aUser);
        }
Ejemplo n.º 5
0
        /// <summary>
        /// Generate User Mappings based on the Clearquest users
        /// Each User mapping generates the same user name in to section also
        /// </summary>
        private void GenerateDefaultUserMaps(string userMapFileName)
        {
            Logger.WritePerf(LogSource.CQ, "Generating Default User Map");
            AdminSession cqAdminSess = m_cqConnection.GetAdminSession();
            OAdUsers     users       = CQWrapper.GetUsers(cqAdminSess);
            // create a instance of usermap.xml file
            UserMappings userMaps = new UserMappings(userMapFileName);

            for (int userindx = 0; userindx < users.Count; userindx++)
            {
                object  userObj = (object)userindx;
                OAdUser aUser   = CQWrapper.GetUser(users, ref userObj);
                userMaps.Add(aUser.Name, aUser.Name);
            }
            userMaps.Flush();
            Logger.WritePerf(LogSource.CQ, "Default User Map Generation Done");
        } // end of GenerateDefaultUserMaps()
Ejemplo n.º 6
0
        public static AdminSession GetAdminSession(ClearQuestConnectionConfig connConfig)
        {
            string idStr = GenerateSessionIdStr(connConfig);

            lock (s_adminSessionLock)
            {
                if (s_adminSessions.ContainsKey(idStr))
                {
                    return(s_adminSessions[idStr]);
                }

                // create and initialize admin session object
                AdminSession adminSession = CQWrapper.CreateAdminSession();
                TraceManager.TraceInformation("Connecting to CQ Admin Session");
                CQWrapper.AdminLogon(adminSession,
                                     connConfig.User,
                                     connConfig.Password,
                                     connConfig.DBSet);
                TraceManager.TraceInformation("Connected to CQ Admin Session");
                OAdUser cqUser = CQWrapper.GetUser(adminSession, connConfig.User);
                try
                {
                    if (!CQWrapper.IsSuperUser(cqUser))
                    {
                        string errMsg = UtilityMethods.Format(CQResource.CQ_NO_ADMIN_RIGHT,
                                                              connConfig.User ?? string.Empty);
                        TraceManager.TraceError(errMsg);
                        throw new MigrationException(errMsg);
                    }
                }
                catch (System.Runtime.InteropServices.COMException ex)
                {
                    string errMsg = UtilityMethods.Format(CQResource.CQ_NO_ADMIN_RIGHT,
                                                          connConfig.User ?? string.Empty);
                    TraceManager.TraceException(ex);
                    TraceManager.TraceError(errMsg);
                    throw new MigrationException(errMsg);
                }

                s_adminSessions.Add(idStr, adminSession);

                return(adminSession);
            }
        }