Java中的可执行管道和过滤器图形

时间:2011-12-14 14:20:37

标签: java graph filter pipe execution

我现在正在撰写关于监控分布式系统的硕士论文。为此,我设计了一个框架,可以记录监控数据并在一系列过滤器(管道和过滤器样式)中分析这些数据。它基于Kieker monitoring framework

您可以通过订阅输出端口将不同的过滤器相互连接,如下所示:

DurationFilter durationFilter = new DurationFilter();
Timeline timeline = new Timeline(...);
durationFilter.getOutputPort().subscribe(timeline);

这个机制由我使用的Kieker框架提供。

要运行分析,用户当前必须通过写出代码手动连接过滤器。我现在要做的是编写一个带有GUI的工具,这样可以更容易地创建配置(一组过滤器,输入文件和连接)。理想情况下,用户可以像在UML编辑器中一样,创建框(过滤器)并用线(连接)连接它们,并设置输入(输入文件)等参数。

然后需要执行这些配置,这意味着我需要从图形到代码到java代码的映射。到目前为止,这是我的想法。首先:您认为这种方法是否适合这项任务?

在我的研究中,我发现框架JHotDraw具有我刚才提到的许多功能。使用JHotDraw,我可以在绘图区域(DrawingEditor)上创建可视元素(图形),其中包括一组用于创建,编辑和连接元素的工具。我已经这样做了,而且很简单。奖励是JHotDraw的撤消/重做功能。

现在我的问题:我不确定我应该如何从编辑器中的图形表示到java代码。我所拥有的是该框架据称使用的MVC模式的V部分。数字是视图。但是模型在哪里以及它如何集成到框架中?我在想,对于DrawingEditor中显示的每个元素,我都必须有一个相应的模型来存储元素的数据。 FilterModel将具有输入数据类型(可以处理的数据),输出端口及其数据类型(它创建的数据类型)和过滤器类型(对应于Java类)等属性。有必要检查一个过滤器是否可以连接到另一个过滤器并最终执行整个过程。

不确定我是否清楚自己。如果有什么不清楚请询问。

1 个答案:

答案 0 :(得分:1)

我们目前正在为Kieker开发基于Web的UI。这将允许用户定义和执行Kieker管道和过滤器图形。如果您对此仍感兴趣,请随时与我们联系。您可以在kieker.sf.net/support/找到我们的联系信息。另外,我对你在论文中所做的事情感兴趣; - )。

问候,André