public void SessionChanged(Session session)
 {
     try
     {
         ICRMWindowRouter     globalMgr = AifServiceContainer.Instance.GetService <ICRMWindowRouter>();
         AgentDesktopSessions sessions  = globalMgr.GetSessionManager();
         string activeApp = ((DynamicsCustomerRecord)((AgentDesktopSession)sessions.ActiveSession).Customer.DesktopCustomer).GetActiveAppOnPanel(this._panelName);
         Debug.WriteLine("Restoring App " + activeApp + " for panel " + this._panelName);
         if (activeApp != null)
         {
             IHostedApplication tabApp;
             foreach (C1USDDockTabItem item in Items)
             {
                 tabApp = item.Tag as IHostedApplication;
                 if ((tabApp != null) && (tabApp.ApplicationName == activeApp))
                 {
                     SelectedItem = item;
                     return;
                 }
             }
         }
     }
     catch
     {
     }
 }
 bool VerifyGlobalManagerConnection()
 {
     if (CRMWindowRouter == null)
     {
         CRMWindowRouter = AifServiceContainer.Instance.GetService <ICRMWindowRouter>();
     }
     if (SessionManager == null)
     {
         SessionManager = AifServiceContainer.Instance.GetService <AgentDesktopSessions>();
         SessionManager.SessionCloseEvent += SessionManager_SessionCloseEvent;
     }
     if (CRMWindowRouter == null)
     {
         return(false);
     }
     return(true);
 }