我正在编写一个eclipse插件,我想在其中为JDT包资源管理器提供一个操作。为了执行该动作,必须选择两个不同的文件。因此,我在该操作的命令处理程序中检索JDT包资源管理器的活动选择。这是我的问题所在。如何干净地处理日食中的结构化选择?
目前从IStructuredSelection
中提取选定文件的代码涉及多个局部变量,其中包含多个if语句,并且在大约30行代码中有多个返回值。当然这段代码看起来至少有点难看。
我应该使用什么概念和/或模式来使代码更清洁?
eclipse平台recommends使用adapter pattern。所以,我想创建这样一个POJO的:
public class FooCommandArgs {
private IFile xmlFile;
private IFile csvFile;
//getters and setters here ...
}
和IStructuredSelection
为它创造了必要的适配器。但是,这样做只会将丑陋的代码移到其他地方。