fixing #3101 (refresh tree navigator after switching user)
authorAndreas Kohlbecker <a.kohlbecker@bgbm.org>
Wed, 12 Sep 2012 18:54:00 +0000 (18:54 +0000)
committerAndreas Kohlbecker <a.kohlbecker@bgbm.org>
Wed, 12 Sep 2012 18:54:00 +0000 (18:54 +0000)
eu.etaxonomy.taxeditor.application/src/main/java/eu/etaxonomy/taxeditor/ApplicationWorkbenchWindowAdvisor.java
eu.etaxonomy.taxeditor.cdmlib/.classpath
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/TaxonNavigator.java

index f974377c7600ce42ffa95a2d36a0d58f73ddc79a..f7bcbe89b597117612798eaea02baa0686b51b28 100644 (file)
@@ -67,8 +67,7 @@ public class ApplicationWorkbenchWindowAdvisor extends WorkbenchWindowAdvisor {
        }
 
        private int authenticate(){
-               Shell shell = TaxonomicEditorPlugin.getDefault().getWorkbench()
-               .getActiveWorkbenchWindow().getShell();
+               Shell shell = TaxonomicEditorPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().getShell();
 
                LoginDialog loginDialog = new LoginDialog(shell);
                return loginDialog.open();
index cddaca3810a2d26f9d805536a41199518cb96c2c..afa268e1d1665fb9120f524e724a7c4de0669525 100644 (file)
        <classpathentry exported="true" kind="lib" path="lib/cdmlib-model-3.0.13-SNAPSHOT-sources.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/cdmlib-model-3.0.13-SNAPSHOT.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/cdmlib-persistence-3.0.13-SNAPSHOT-sources.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-persistence-3.0.13-SNAPSHOT.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-print-3.0.13-SNAPSHOT-sources.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-print-3.0.13-SNAPSHOT.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-remote-3.0.13-SNAPSHOT-sources.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-remote-3.0.13-SNAPSHOT.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-services-3.0.13-SNAPSHOT-sources.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-services-3.0.13-SNAPSHOT.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/postgresql-9.1-901.jdbc4.jar"/>
-       <classpathentry kind="output" path="target/classes"/>
+       <classpathentry kind="output" path="bin"/>
 </classpath>
index 5483e7ab77bb56622e624ca600b0a4dfd5fd1f18..7b9adddc422827062b0f7975877e64f1a6911674 100644 (file)
@@ -13,6 +13,8 @@ package eu.etaxonomy.taxeditor.navigation.navigator;
 import java.util.ArrayList;
 import java.util.HashSet;
 import java.util.List;
+import java.util.Observable;
+import java.util.Observer;
 import java.util.Set;
 import java.util.UUID;
 
@@ -39,6 +41,7 @@ import eu.etaxonomy.taxeditor.model.IDataChangeBehavior;
 import eu.etaxonomy.taxeditor.navigation.NavigationUtil;
 import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
 import eu.etaxonomy.taxeditor.store.CdmStore;
+import eu.etaxonomy.taxeditor.store.LoginManager;
 
 /**
  * Taxonomic tree implementation using Common Navigator Framework.
@@ -49,7 +52,7 @@ import eu.etaxonomy.taxeditor.store.CdmStore;
  * @version 1.0
  */
 public class TaxonNavigator extends CommonNavigator implements
-               IPostOperationEnabled, IConversationEnabled {
+               IPostOperationEnabled, IConversationEnabled, Observer {
 
        /**
         * Constant
@@ -109,13 +112,16 @@ public class TaxonNavigator extends CommonNavigator implements
                        conversation = CdmStore.createConversation();
                        conversation.registerForDataStoreChanges(TaxonNavigator.this);
                }
+               CdmStore.getLoginManager().addObserver(this);
        }
 
        /**
         * Refresh this navigators viewer
         */
        public void refresh() {
-               getConversationHolder().bind();
+               if(getConversationHolder() != null){
+                       getConversationHolder().bind();                 
+               }
                getCommonViewer().refresh();
        }
 
@@ -434,4 +440,16 @@ public class TaxonNavigator extends CommonNavigator implements
                        }
                }
        }
+
+
+       /* (non-Javadoc)
+        * @see java.util.Observer#update(java.util.Observable, java.lang.Object)
+        */
+       @Override
+       public void update(Observable o, Object arg) {
+               if(o instanceof LoginManager){
+                       refresh();
+               }
+               
+       }
 }