Пример #1
0
        private void App_Startup(object sender, StartupEventArgs e)
        {
            WindowStart windowStart = new WindowStart();

            Application.Current.MainWindow = windowStart;
            windowStart.Show();
        }
Пример #2
0
 public override void ProcessWindow()
 {
     if (WatermarkA > WindowStart.Add(GetWindowSize()) && WatermarkB > WindowStart.Add(GetWindowSize()))
     {
         WindowStart = WindowStart.Add(GetSlideSize());
         RemoveOutsideWindowData(WindowStart);
     }
 }
Пример #3
0
 public override void ProcessWindow(List <Data <T> > inputs, DateTime watermark)
 {
     if (watermark > WindowStart.Add(GetWindowSize()))
     {
         var groups = inputs.Where(x => ExtractTimestamp(x) < WindowStart.Add(GetWindowSize())).GroupBy(x => x.Key);
         foreach (var group in groups)
         {
             var content = group.Select(x => x.Value).ToList();
             SendToNextStreamData(group.Key, new Data <K>(group.Key, Aggregate(content)), GetMetadata());
         }
         WindowStart = WindowStart.Add(GetSlideSize());
         RemoveOutsideWindowData(WindowStart);
     }
 }
Пример #4
0
        public override void ProcessData(Data <T> input, Metadata metadata)
        {
            if (WindowStart == DateTime.MinValue)
            {
                WindowStart = ExtractTimestamp(input);
            }
            if (WatermarkA.Subtract(AllowedLateness()) <= ExtractTimestamp(input))
            {
                sourceAInput.Add(input);
                if (ExtractTimestamp(input) < WindowStart.Add(GetWindowSize()))
                {
                    var sourceBWithSameKey = sourceBInput.Where(x => x.Key.Equals(input.Key) && (ExtractTimestamp(x) < WindowStart.Add(GetWindowSize()))).ToList();

                    foreach (var bIn in sourceBWithSameKey)
                    {
                        var dt = new Data <(T, K)>(input.Key, (input.Value, bIn.Value));
                        SendToNextStreamData(input.Key, dt, GetMetadata());
                    }
                }
            }
        }
Пример #5
0
        private void App_Startup(object sender, StartupEventArgs e)
        {
            WindowStart windowStart = new WindowStart();

            Application.Current.MainWindow = windowStart;

            XmlDocument doc = new XmlDocument();

            doc.Load("../CopyConfig.xml");
            string appCopy = doc.SelectSingleNode("AppConfig").InnerText;

            ManagerPlant.copyManager.AppCopy = appCopy;

            doc = new XmlDocument();
            doc.Load("Config/AppConfig.xml");
            XmlNode xValue = doc.SelectSingleNode("App/DeviationValue/XDeviationValue");
            double  xMin   = Convert.ToDouble(xValue.InnerText.Split(',')[0]);
            double  xMax   = Convert.ToDouble(xValue.InnerText.Split(',')[1]);

            ManagerPlant.copyManager.xValueMin = xMin;
            ManagerPlant.copyManager.xValueMax = xMax;

            XmlNode yValue = doc.SelectSingleNode("App/DeviationValue/YDeviationValue");
            double  yMin   = Convert.ToDouble(yValue.InnerText.Split(',')[0]);
            double  yMax   = Convert.ToDouble(yValue.InnerText.Split(',')[1]);

            ManagerPlant.copyManager.yValueMin = yMin;
            ManagerPlant.copyManager.yValueMax = yMax;

            XmlNode zValue = doc.SelectSingleNode("App/DeviationValue/ZDeviationValue");
            double  zMin   = Convert.ToDouble(zValue.InnerText.Split(',')[0]);
            double  zMax   = Convert.ToDouble(zValue.InnerText.Split(',')[1]);

            ManagerPlant.copyManager.zValueMin = zMin;
            ManagerPlant.copyManager.zValueMax = zMax;
            windowStart.Show();
        }