0

试图将 gmf 与 xpand 集成。

我使用 gmf 清单文件中的扩展名创建了一个菜单和命令。并试图调用 xpand 生成器。

该命令的代码如下所示

public class customCommand extends AbstractHandler implements IHandler {

@Override
public Object execute(ExecutionEvent event) throws ExecutionException {
// TODO Auto-generated method stub


Shell s=HandlerUtil.getActiveShell(event);
MessageBox mb=new MessageBox(s,SWT.None);


WorkflowRunner runner = new WorkflowRunner();
Bundle bundle=Platform.getBundle("MistScriptGenerator"); 
URL wfUrl = bundle.getEntry("src/workflow/generator.oaw");
String wfFile = "";



try {

wfFile = FileLocator.toFileURL(wfUrl).getFile();
mb.setMessage(wfFile);
mb.open();

Map<String, String> properties = new HashMap<String, String>();
//properties.put("model", $diagramFile$.getLocation().toOSString());
properties=null;
boolean isSuccess = runner.run(wfFile,new org.openarchitectureware.workflow.monitor.NullProgressMonito r(), properties, null);


}
catch (Exception e) 
{


}

return null;
}

}

我已经能够成功地获得工作流程的路径。现在在调用工作流时,我必须将 gmf 图表文件输入到工作流中。但是我怎样才能给出文件的路径呢?

我通过打开另一个工作台来执行我的 gmf 图表:但是,现在,我如何获取 gmf 图表文件的路径?

我已经在我的工作流程中注册了 epackage。

你能指导我项目的截止日期很快吗?

4

1 回答 1

1

IAML项目使用 openArchitectureWare XPand 来实现代码生成。作为如何将两者连接在一起的示例,您可以查看GenerateCodeAction的源代码- 相关方法是doExecute(). 希望这可以帮助 :)

于 2011-03-17T04:36:12.037 回答