private void App_Startup(object sender, StartupEventArgs e) { WindowStart windowStart = new WindowStart(); Application.Current.MainWindow = windowStart; windowStart.Show(); }
public override void ProcessWindow() { if (WatermarkA > WindowStart.Add(GetWindowSize()) && WatermarkB > WindowStart.Add(GetWindowSize())) { WindowStart = WindowStart.Add(GetSlideSize()); RemoveOutsideWindowData(WindowStart); } }
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); } }
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()); } } } }
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(); }