@Override public boolean performFinish() { List<ModelFile> list = modelPage.getModelList(); String dir = namePage.getSrcDirectory(); String packName = namePage.getPackageName(); Map<DMDLImporterExporterGenerator, String> map = namePage.getClassName(); boolean first = true; for (ModelFile mf : list) { IProject project = mf.file.getProject(); if (properties == null) { properties = BuildPropertiesUtil.getBuildProperties(project, true); } for (SetImporterExporterMethodPage page : methodPageList) { DMDLImporterExporterGenerator generator = page.getGenerator(); String className = map.get(generator); if (className != null) { try { String name = StringUtil.append(packName, className); generator.generate(project, properties, page.getValues(), mf.model, dir, name, first); first = false; } catch (CoreException e) { String message = MessageFormat.format( "生成中にエラーが発生しました\nmodel={0}\ntype={1}", mf.model.getName(), generator.getDisplayName()); ErrorDialog.openError(getShell(), "error", message, e.getStatus()); } } } } return true; }
private IWizardPage getPage(IWizardPage page) { if (page == namePage) { if (properties == null) { List<ModelFile> list = modelPage.getModelList(); IProject project = list.get(0).file.getProject(); properties = BuildPropertiesUtil.getBuildProperties(project, true); } namePage.setProperties(properties); } return page; }