Интеграция GMF с Xpand OAW
-
25-10-2019 - |
Вопрос
Попытка интегрировать 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 Digram, открывая его еще один Workbench: Но теперь, как мне получить путь файла диаграммы GMF?
Я зарегистрировал epackage в своем рабочем процессе.
Не могли бы вы направить меня, крайний срок проекта очень скоро.
Решение
А IAML Project использует OpenArchitectureware XPAND для реализации генерации кода. В качестве примера того, как соединить их вместе, вы можете проверить исходный код для GenerateCodeaction - Соответствующий метод doExecute()
. Анкет Надеюсь это поможет :)