import org.eclipse.core.runtime.Status;
import org.eclipse.core.runtime.jobs.Job;
import org.eclipse.swt.widgets.Display;
+import org.eclipse.ui.IWorkbenchPart;
import eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration;
import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
@Override
public void run() {
- // terminate any open transactions
- IConversationEnabled activePart = (IConversationEnabled) StoreUtil
- .getActivePage().getActivePart();
- // restarting transaction and committing it to trigger
- // change listener
- // TODO verify correct behaviour
- activePart.getConversationHolder().startTransaction();
- activePart.getConversationHolder().commit();
+ IWorkbenchPart activePart = StoreUtil.getActivePage()
+ .getActivePart();
+ if (activePart instanceof IConversationEnabled) {
+ // terminate any open transactions
+ IConversationEnabled conversationEnabled = (IConversationEnabled) activePart;
+ // restarting transaction and committing it to
+ // trigger
+ // change listener
+ // TODO verify correct behaviour
+ conversationEnabled.getConversationHolder()
+ .startTransaction();
+ conversationEnabled.getConversationHolder()
+ .commit();
+ }
}
});
monitor.worked(10);