public String getRecordName() { if (initOK) { return Tools.removeTrailingUnderscore(record.getName()); } else { throw new IllegalStateException("init() was NOT invoked"); } }
@Override public void addPages() { String dsl = Tools.generateRecordElementsDSL(record); importToolSelectionPage = new ImportToolSelectionPage(importToolExtensionElements, record, dsl); addPage(importToolSelectionPage); previewPage = new PreviewPage(record); addPage(previewPage); }
@Override public IWizardPage getNextPage(IWizardPage page) { if (page == importToolSelectionPage) { // The user has chosen an import tool and cannot change his/her selection; go get the // data entry pages from the import tool extension element and add all import wizard // pages. Make sure we build and add the wizard pages only once. addDataEntryPages(importToolSelectionPage.getExtensionElement()); // get a hold of the import tool and the parameters configured for it in the defining // extension and create the import tool proxy IRecordElementsImportTool importTool = activeRecordElementsImportToolExtensionElement.getRecordElementsImportTool(); Properties importToolParms = activeRecordElementsImportToolExtensionElement.getParameters(); proxy = new RecordElementsImportToolProxy(importTool, importToolParms); // return the first import tool data entry page or null if no data entry pages are // defined if (!dataEntryWizardPages.isEmpty()) { dataEntryWizardPages.get(0).aboutToShow(); return dataEntryWizardPages.get(0); } else { return null; } } else if (dataEntryWizardPages != null && dataEntryWizardPages.contains(page)) { // we need the next data entry page int i = dataEntryWizardPages.indexOf(page); if (i < 0) { throw new RuntimeException("logic error"); } else { // get the next relevant data entry page, if any ImportWizardPage nextPage = getNextRelevantPageIndex(i); if (nextPage != null) { // there is a next relevant data entry page, so return it nextPage.aboutToShow(); return nextPage; } else { // no next data entry page, prepare the preview page and return it SchemaRecord record = new RecordModelBuilder().build("DUMMY"); record.getRootElements().clear(); record.getRootElements().addAll(proxy.invokeImportTool(context)); String recordElementsDSL = Tools.generateRecordElementsDSL(record); previewPage.setRecordElementsDSL(recordElementsDSL); return previewPage; } } } return null; }