Ejemplo n.º 1
0
 public static void InitializeAll()
 {
     LoggingManagementService.Initialize();
     DictionaryManagementService.Initialize();
     IconManagementService.Initialize();
     TransmittingManagementService.Initialize();
     SubprocessManagementService.Initialize();
 }
Ejemplo n.º 2
0
        public static void ExitAll()
        {
            TransmittingManagementService.SendSignal(Signal.CommandParentExit, new[] { Process.GetCurrentProcess().Id.ToString() });

            Thread.Sleep(3000);

            try { TransmittingManagementService.Dispose(); } catch { /* ignored */ }
            try { SubprocessManagementService.Dispose(); } catch { /* ignored */ }
            try { IconManagementService.Dispose(); } catch { /* ignored */ }
            try { DictionaryManagementService.Dispose(); } catch { /* ignored */ }
            try { LoggingManagementService.Dispose(); } catch { /* ignored */ }
        }
Ejemplo n.º 3
0
        public void OnCommandLineEnter(object sender, ExecutedRoutedEventArgs e)
        {
            br.UiActiveTab = 0;
            MainFrame.Navigate(ip);
            var dic = DictionaryManagementService.SearchItem(br.UiSearchLine);

            br.OverlayOverviewData =
                dic.Select(x => new OverviewData {
                ItemId = x.Key, UpdateTime = DateTime.MinValue
            }).ToList();

            Task.Run(() =>
            {
                RETRY:

                int ret = 0;

                try
                {
                    var local            = new ExchangeProcedure();
                    var partCnt          = 0;
                    OverviewResponse res = null;

                    do
                    {
                        try
                        {
                            ret = local.Step2(dic.Keys.ToArray(), partCnt++, out res);
                        }
                        catch (HttpRequestException exception)
                        {
                            ret = 02_0000 + (int)exception.Data["StatusCode"];
                        }


                        if (!CheckVendor.NotValidResponseCode(ret))
                        {
                            var overviewDic = br.OverlayOverviewData.ToDictionary(x => x.ItemId, x => x);

                            foreach (var item in res.Results)
                            {
                                overviewDic[item.ItemId] =
                                    OverviewData.FromResultItem(overviewDic[item.ItemId], item);
                            }

                            br.OverlayOverviewData = overviewDic.Values.ToList();
                        }
                    } while (!CheckVendor.NotValidResponseCode(ret) && !res.FinalPart);

                    if (ret % 10000 == 0511 && ApiVendor.ValidateAndRenewToken())
                    {
                        goto RETRY;
                    }
                }
                catch (HttpRequestException ex)
                {
                    ret = 02_0000 + (int)(ex.Data["StatusCode"]);
                    if (ret == 02_0511 && ApiVendor.ValidateAndRenewToken())
                    {
                        goto RETRY;
                    }
                }
                catch (Exception)
                {
                    ret = 02_0000;
                }

                if (CheckVendor.NotValidResponseCode(ret))
                {
                    LoggingManagementService.WriteLine(
                        $"Api Error: {MessageVendor.FormatError(ret)} on searching {br.UiSearchLine}", "ApiSys");
                }
            });
        }