From 8325c04b10b44a56b2891fa9eeb1f77f0a7883fe Mon Sep 17 00:00:00 2001 From: "n.hoffmann" Date: Mon, 10 Aug 2009 10:33:07 +0000 Subject: [PATCH] exposing CommonService through cdm store --- .../taxeditor/io/AbstractImportWizard.java | 22 ++++++++++++++++++- .../ImportFromFileDataSourceWizardPage.java | 2 ++ .../taxeditor/io/TcsImportWizard.java | 3 --- .../etaxonomy/taxeditor/store/CdmStore.java | 4 ++++ 4 files changed, 27 insertions(+), 4 deletions(-) diff --git a/taxeditor-store/src/main/java/eu/etaxonomy/taxeditor/io/AbstractImportWizard.java b/taxeditor-store/src/main/java/eu/etaxonomy/taxeditor/io/AbstractImportWizard.java index 120e49f4a..50ff7fb69 100644 --- a/taxeditor-store/src/main/java/eu/etaxonomy/taxeditor/io/AbstractImportWizard.java +++ b/taxeditor-store/src/main/java/eu/etaxonomy/taxeditor/io/AbstractImportWizard.java @@ -13,10 +13,14 @@ package eu.etaxonomy.taxeditor.io; import org.apache.log4j.Logger; import org.eclipse.jface.wizard.Wizard; import org.eclipse.ui.IImportWizard; +import org.eclipse.ui.IWorkbenchPart; +import eu.etaxonomy.cdm.api.conversation.ConversationHolder; +import eu.etaxonomy.cdm.api.conversation.IConversationEnabled; import eu.etaxonomy.cdm.io.common.CdmDefaultImport; import eu.etaxonomy.cdm.io.common.IImportConfigurator; import eu.etaxonomy.cdm.io.common.IIoConfigurator; +import eu.etaxonomy.taxeditor.store.CdmStore; import eu.etaxonomy.taxeditor.store.StoreUtil; /** @@ -123,6 +127,14 @@ public abstract class AbstractImportWizard exten throw new IllegalArgumentException("Configuration may not be null"); } + // terminate any open transactions + IConversationEnabled activePart = (IConversationEnabled) StoreUtil.getActivePage().getActivePart(); + activePart.getConversationHolder().commit(false); + + + +// ConversationHolder conversation = CdmStore.NewTransactionalConversation(); + importer = new CdmDefaultImport(); // // Job importJob = new Job("Import"){ @@ -136,7 +148,15 @@ public abstract class AbstractImportWizard exten importer.setCdmAppController(configurator.getCdmAppController()); - return importer.invoke(configurator); + boolean result = importer.invoke(configurator); + + // restarting transaction and committing it to trigger change listener + // TODO verify correct behaviour + activePart.getConversationHolder().startTransaction(); + activePart.getConversationHolder().commit(); + + + return result; } /* (non-Javadoc) diff --git a/taxeditor-store/src/main/java/eu/etaxonomy/taxeditor/io/ImportFromFileDataSourceWizardPage.java b/taxeditor-store/src/main/java/eu/etaxonomy/taxeditor/io/ImportFromFileDataSourceWizardPage.java index 24600619a..34993c9cf 100644 --- a/taxeditor-store/src/main/java/eu/etaxonomy/taxeditor/io/ImportFromFileDataSourceWizardPage.java +++ b/taxeditor-store/src/main/java/eu/etaxonomy/taxeditor/io/ImportFromFileDataSourceWizardPage.java @@ -60,6 +60,8 @@ public class ImportFromFileDataSourceWizardPage extends WizardPage { public void createControl(Composite parent) { final Composite composite = new Composite(parent, SWT.NULL); + setPageComplete(false); + GridLayout gridLayout = new GridLayout(); gridLayout.numColumns = 3; composite.setLayout(gridLayout); diff --git a/taxeditor-store/src/main/java/eu/etaxonomy/taxeditor/io/TcsImportWizard.java b/taxeditor-store/src/main/java/eu/etaxonomy/taxeditor/io/TcsImportWizard.java index 4c8226a6f..dcce5b28e 100644 --- a/taxeditor-store/src/main/java/eu/etaxonomy/taxeditor/io/TcsImportWizard.java +++ b/taxeditor-store/src/main/java/eu/etaxonomy/taxeditor/io/TcsImportWizard.java @@ -16,7 +16,6 @@ import org.eclipse.ui.IWorkbench; import eu.etaxonomy.cdm.database.DbSchemaValidation; import eu.etaxonomy.cdm.io.tcsxml.in.TcsXmlImportConfigurator; -import eu.etaxonomy.taxeditor.datasource.wizard.CdmDataSourceSQLServerWizardPage; import eu.etaxonomy.taxeditor.store.CdmStore; /** @@ -45,8 +44,6 @@ public class TcsImportWizard extends AbstractImportWizard