private void _003CInitEvent_003Eb__6(Task task)
 {
     while (CanDetectServerState)
     {
         _003C_003Ec__DisplayClassf _003C_003Ec__DisplayClassf = new _003C_003Ec__DisplayClassf();
         _003C_003Ec__DisplayClassf._003C_003E4__this = this;
         _003C_003Ec__DisplayClassf.inList            = SyncServerAlreadyStarted(MeetingID);
         base.Dispatcher.BeginInvoke(new Action(_003C_003Ec__DisplayClassf._003CInitEvent_003Eb__7));
         SocketClient instance = Singleton_Socket.GetInstance(MeetingID, UserID, UserName, false);
         instance.getUserList();
         Console.WriteLine("Detect Server Alive => IsCompleted: {0} IsCanceled: {1} IsFaulted: {2}", task.IsCompleted, task.IsCanceled, task.IsFaulted);
         Thread.Sleep(1000 * Settings.Default.DetectSyncServerSeconds);
     }
 }
Exemplo n.º 2
0
        private void LawListCT_DownloadFileCompleted_Callback(Law_DownloadItemViewModel lawItem)
        {
            Func <LawRow, bool>        func = null;
            _003C_003Ec__DisplayClassf _003C_003Ec__DisplayClassf = new _003C_003Ec__DisplayClassf();

            _003C_003Ec__DisplayClassf.lawItem = lawItem;
            if (!base.Dispatcher.CheckAccess())
            {
                base.Dispatcher.BeginInvoke(new Action <Law_DownloadItemViewModel>(LawListCT_DownloadFileCompleted_Callback), _003C_003Ec__DisplayClassf.lawItem);
                return;
            }
            IEnumerable <LawRow> source = Enumerable.OfType <LawRow>(LawRowSP.Children);

            if (func == null)
            {
                func = new Func <LawRow, bool>(_003C_003Ec__DisplayClassf._003CLawListCT_DownloadFileCompleted_Callback_003Eb__d);
            }
            LawRow lawRow = Enumerable.FirstOrDefault(Enumerable.Where(source, func));

            if (lawRow == null)
            {
                return;
            }
            if (_003C_003Ec__DisplayClassf.lawItem.FileType == LawFileType.更新檔已下載完成)
            {
                Storyboard storyboard = (Storyboard)lawRow.TryFindResource("sb");
                if (storyboard != null)
                {
                    storyboard.Stop();
                }
                lawRow.txtIsNew.Visibility = Visibility.Visible;
                return;
            }
            Storyboard storyboard2 = (Storyboard)lawRow.TryFindResource("sb");

            if (storyboard2 != null)
            {
                storyboard2.Stop();
            }
            lawRow.btnDownload.Visibility = Visibility.Collapsed;
            lawRow.btnOpen.Visibility     = Visibility.Visible;
            lawRow.btnDelete.Visibility   = Visibility.Visible;
            lawRow.txtIsNew.Visibility    = Visibility.Visible;
        }
Exemplo n.º 3
0
        public void run()
        {
            ThreadStart threadStart = null;

            try
            {
                NetworkStream stream = _socket.GetStream();
                _in  = new StreamReader(stream, Encoding.UTF8);
                _out = new StreamWriter(stream, Encoding.UTF8);
                if (_clientId != null)
                {
                    Dictionary <string, object> dictionary = new Dictionary <string, object>();
                    dictionary.Add("cmd", "init");
                    dictionary.Add("clientId", _clientId);
                    dictionary.Add("clientName", _clientName);
                    dictionary.Add("isSync", _isSync);
                    dictionary.Add("clientType", _clientType);
                    dictionary.Add("func", _func);
                    dictionary.Add("forceLogin", _forceLogin);
                    string text = JsonConvert.SerializeObject(dictionary);
                    logger.Debug("initMap-> {0}", text);
                    _out.WriteLine(text);
                    _out.Flush();
                }
                if (threadStart == null)
                {
                    threadStart = new ThreadStart(_003Crun_003Eb__1);
                }
                Thread thread = new Thread(threadStart);
                thread.IsBackground = false;
                thread.Start();
                while (true)
                {
                    string text2 = _in.ReadLine();
                    if (text2 != null)
                    {
                        Console.WriteLine("_in => " + text2);
                    }
                    if (text2 == null)
                    {
                        break;
                    }
                    if (!"_chk".Equals(text2))
                    {
                        logger.Debug("Receiving message from Server, pass to EventManager");
                        lock (this)
                        {
                            try
                            {
                                using (List <IEventManager> .Enumerator enumerator = _eventManagerList.GetEnumerator())
                                {
                                    while (enumerator.MoveNext())
                                    {
                                        ThreadStart threadStart2 = null;
                                        _003C_003Ec__DisplayClassc _003C_003Ec__DisplayClassc = new _003C_003Ec__DisplayClassc();
                                        _003C_003Ec__DisplayClassc.mgr = enumerator.Current;
                                        if (_003C_003Ec__DisplayClassc.mgr != null)
                                        {
                                            _003C_003Ec__DisplayClassc.mgr.clientId = _clientId;
                                            _003C_003Ec__DisplayClassc.mgr.msg      = text2;
                                            if (threadStart2 == null)
                                            {
                                                threadStart2 = new ThreadStart(_003C_003Ec__DisplayClassc._003Crun_003Eb__3);
                                            }
                                            Thread thread2 = new Thread(threadStart2);
                                            thread2.Start();
                                        }
                                    }
                                }
                            }
                            catch (Exception ex)
                            {
                                LogTool.Debug(ex);
                                try
                                {
                                    if (_closeEventManagerList != null)
                                    {
                                        using (List <IEventManager> .Enumerator enumerator2 = _eventManagerList.GetEnumerator())
                                        {
                                            while (enumerator2.MoveNext())
                                            {
                                                ThreadStart threadStart3 = null;
                                                _003C_003Ec__DisplayClassf _003C_003Ec__DisplayClassf = new _003C_003Ec__DisplayClassf();
                                                _003C_003Ec__DisplayClassf.mgr = enumerator2.Current;
                                                if (_003C_003Ec__DisplayClassf.mgr != null)
                                                {
                                                    _003C_003Ec__DisplayClassf.mgr.clientId = _clientId;
                                                    _003C_003Ec__DisplayClassf.mgr.msg      = text2;
                                                    if (threadStart3 == null)
                                                    {
                                                        threadStart3 = new ThreadStart(_003C_003Ec__DisplayClassf._003Crun_003Eb__4);
                                                    }
                                                    Thread thread3 = new Thread(threadStart3);
                                                    thread3.Start();
                                                }
                                            }
                                        }
                                    }
                                }
                                catch (Exception ex2)
                                {
                                    LogTool.Debug(ex2);
                                }
                            }
                        }
                    }
                }
                logger.Debug("InStream got null...socket may be closed...");
            }
            catch (Exception ex3)
            {
                logger.Debug("socket runtime exception: {0}", ex3.ToString());
                try
                {
                    try
                    {
                        using (List <IEventManager> .Enumerator enumerator3 = _closeEventManagerList.GetEnumerator())
                        {
                            while (enumerator3.MoveNext())
                            {
                                ThreadStart threadStart4 = null;
                                _003C_003Ec__DisplayClass12 _003C_003Ec__DisplayClass = new _003C_003Ec__DisplayClass12();
                                _003C_003Ec__DisplayClass.mgr = enumerator3.Current;
                                if (_003C_003Ec__DisplayClass.mgr != null)
                                {
                                    if (threadStart4 == null)
                                    {
                                        threadStart4 = new ThreadStart(_003C_003Ec__DisplayClass._003Crun_003Eb__5);
                                    }
                                    Thread thread4 = new Thread(threadStart4);
                                    thread4.Start();
                                }
                            }
                        }
                    }
                    catch (Exception ex4)
                    {
                        logger.Debug("socket close: {0}", ex4.ToString());
                        if (_closeEventManagerList != null)
                        {
                            using (List <IEventManager> .Enumerator enumerator4 = _closeEventManagerList.GetEnumerator())
                            {
                                while (enumerator4.MoveNext())
                                {
                                    ThreadStart threadStart5 = null;
                                    _003C_003Ec__DisplayClass15 _003C_003Ec__DisplayClass2 = new _003C_003Ec__DisplayClass15();
                                    _003C_003Ec__DisplayClass2.mgr = enumerator4.Current;
                                    if (threadStart5 == null)
                                    {
                                        threadStart5 = new ThreadStart(_003C_003Ec__DisplayClass2._003Crun_003Eb__6);
                                    }
                                    Thread thread5 = new Thread(threadStart5);
                                    thread5.Start();
                                }
                            }
                        }
                    }
                    _out    = null;
                    _in     = null;
                    _socket = null;
                }
                catch (Exception ex5)
                {
                    logger.Debug("socket close: {0}", ex5.ToString());
                }
            }
        }