Alexander Wels has uploaded a new change for review.

Change subject: userportal,webadmin: Reload on logout
......................................................................

userportal,webadmin: Reload on logout

- When clicking the logout button, also do a page refresh.
- Removed all code that deals with cleaning up models in webadmin
  and user portal, as this is no longer required.
- Renamed the UiCommonInit event to ModelInitialized event.

Change-Id: Id5c665ed85495b7c4baf4f0984b006ee2a7730f9
Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1112404
Signed-off-by: Alexander Wels <aw...@redhat.com>
---
M 
frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/Frontend.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/auth/CurrentUser.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/presenter/AbstractSubTabPresenter.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/system/BaseApplicationInit.java
D 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/CleanupModel.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/CommonModelManager.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/DataBoundTabModelProvider.java
A 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/ModelInitialized.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/SearchableTabModelProvider.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/TabModelProvider.java
D 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/UiCommonInit.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/action/AbstractActionPanel.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/action/UiCommandButtonDefinition.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/refresh/AbstractRefreshManager.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/tab/ModelBoundTab.java
M 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/AbstractActionTable.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/CommonModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/LoginModel.java
M 
frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/userportal/UserPortalLoginModel.java
M 
frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/system/ApplicationInit.java
M 
frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/uicommon/UserPortalConfigurator.java
M 
frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/uicommon/model/vm/VmMonitorModelProvider.java
M 
frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/utils/ConnectAutomaticallyManager.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/SearchPanelPresenterWidget.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/system/ApplicationInit.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/WebAdminConfigurator.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/BookmarkModelProvider.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/SystemTreeModelProvider.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/TagModelProvider.java
M 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/TaskModelProvider.java
30 files changed, 74 insertions(+), 308 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/60/31360/1

diff --git 
a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/Frontend.java
 
b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/Frontend.java
index 5132fef..7ac1d5f 100644
--- 
a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/Frontend.java
+++ 
b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/Frontend.java
@@ -834,7 +834,6 @@
                     logger.log(Level.SEVERE, "Failed to login: " + caught, 
caught); //$NON-NLS-1$
                     getEventsHandler().runQueryFailed(null);
                     failureEventHandler(caught);
-                    clearLoggedInUser();
                     if (callback.isHandleFailure()) {
                         setLoggedInUser(null);
                         callback.getDel().onSuccess(callback.getModel(), null);
@@ -892,13 +891,6 @@
     public void initLoggedInUser(DbUser loggedUser, String loginPassword) {
         this.currentUser = loggedUser;
         this.currentPassword = loginPassword;
-    }
-
-    /**
-     * Un-set the current logged in user.
-     */
-    public void clearLoggedInUser() {
-        initLoggedInUser(null, null);
     }
 
     /**
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/auth/CurrentUser.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/auth/CurrentUser.java
index 147b2ef..df92bc7 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/auth/CurrentUser.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/auth/CurrentUser.java
@@ -1,12 +1,12 @@
 package org.ovirt.engine.ui.common.auth;
 
 import org.ovirt.engine.core.common.businessentities.aaa.DbUser;
+import org.ovirt.engine.ui.frontend.utils.FormatUtils;
 
 import com.google.gwt.event.shared.EventBus;
 import com.google.gwt.event.shared.GwtEvent;
 import com.google.gwt.event.shared.HasHandlers;
 import com.google.inject.Inject;
-import org.ovirt.engine.ui.frontend.utils.FormatUtils;
 
 /**
  * Holds data relevant for the current user.
@@ -93,8 +93,6 @@
 
     /**
      * Initiates the sign out operation.
-     *
-     * @see #onUserLogout()
      */
     public void logout() {
         if (isLoggedIn() && logoutHandler != null) {
@@ -108,15 +106,6 @@
     public void onUserLogin(DbUser loggedUser) {
         setLoggedUser(loggedUser);
         setLoggedIn(true);
-        fireLoginChangeEvent();
-    }
-
-    /**
-     * User logout callback, called after the user has successfully signed out.
-     */
-    public void onUserLogout() {
-        setLoggedUser(null);
-        setLoggedIn(false);
         fireLoginChangeEvent();
     }
 
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/presenter/AbstractSubTabPresenter.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/presenter/AbstractSubTabPresenter.java
index 08cdb81..84bbc30 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/presenter/AbstractSubTabPresenter.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/presenter/AbstractSubTabPresenter.java
@@ -5,8 +5,6 @@
 
 import org.ovirt.engine.ui.common.uicommon.model.DetailModelProvider;
 import org.ovirt.engine.ui.common.uicommon.model.SearchableDetailModelProvider;
-import org.ovirt.engine.ui.common.uicommon.model.UiCommonInitEvent;
-import 
org.ovirt.engine.ui.common.uicommon.model.UiCommonInitEvent.UiCommonInitHandler;
 import org.ovirt.engine.ui.common.widget.table.ActionTable;
 import org.ovirt.engine.ui.common.widget.table.HasActionTable;
 import org.ovirt.engine.ui.common.widget.table.OrderedMultiSelectionModel;
@@ -92,13 +90,6 @@
                 }
             }));
         }
-        registerHandler(addHandler(UiCommonInitEvent.getType(), new 
UiCommonInitHandler() {
-            @Override
-            public void onUiCommonInit(UiCommonInitEvent event) {
-                //Re-initialize handlers when UiCommonInit is called (new 
models need to re-attach handlers).
-                initializeHandlers();
-            }
-        }));
         initializeHandlers();
     }
 
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/system/BaseApplicationInit.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/system/BaseApplicationInit.java
index 278a4c2..bb10642 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/system/BaseApplicationInit.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/system/BaseApplicationInit.java
@@ -1,29 +1,29 @@
 package org.ovirt.engine.ui.common.system;
 
-import com.google.gwt.core.client.Scheduler.ScheduledCommand;
-import com.google.gwt.core.client.Scheduler;
-import com.google.gwt.event.shared.EventBus;
-import com.google.inject.Provider;
 import org.ovirt.engine.core.common.businessentities.aaa.DbUser;
 import org.ovirt.engine.ui.common.auth.AutoLoginData;
-import org.ovirt.engine.ui.common.auth.CurrentUser.LogoutHandler;
 import org.ovirt.engine.ui.common.auth.CurrentUser;
+import org.ovirt.engine.ui.common.auth.CurrentUser.LogoutHandler;
 import org.ovirt.engine.ui.common.auth.SSOTokenData;
 import org.ovirt.engine.ui.common.uicommon.FrontendEventsHandlerImpl;
 import org.ovirt.engine.ui.common.uicommon.FrontendFailureEventListener;
-import org.ovirt.engine.ui.common.uicommon.model.CleanupModelEvent;
-import org.ovirt.engine.ui.common.uicommon.model.UiCommonInitEvent;
+import org.ovirt.engine.ui.frontend.AsyncQuery;
 import org.ovirt.engine.ui.frontend.Frontend;
+import org.ovirt.engine.ui.frontend.INewAsyncCallback;
 import org.ovirt.engine.ui.frontend.communication.SSOTokenChangeEvent;
 import org.ovirt.engine.ui.uicommonweb.ITypeResolver;
 import org.ovirt.engine.ui.uicommonweb.TypeResolver;
 import org.ovirt.engine.ui.uicommonweb.auth.CurrentUserRole;
-import org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider;
 import org.ovirt.engine.ui.uicommonweb.models.LoginModel;
 import org.ovirt.engine.ui.uicompat.Event;
 import org.ovirt.engine.ui.uicompat.EventArgs;
 import org.ovirt.engine.ui.uicompat.IEventListener;
 
+import com.google.gwt.core.client.Scheduler;
+import com.google.gwt.core.client.Scheduler.ScheduledCommand;
+import com.google.gwt.event.shared.EventBus;
+import com.google.gwt.user.client.Window;
+import com.google.inject.Provider;
 import com.gwtplatform.mvp.client.Bootstrapper;
 
 /**
@@ -41,7 +41,7 @@
     protected final CurrentUser user;
     protected final EventBus eventBus;
     protected final Frontend frontend;
-    private CurrentUserRole currentUserRole;
+    private final CurrentUserRole currentUserRole;
 
     // Using Provider because any UiCommon model will fail before TypeResolver 
is initialized
     private final Provider<T> loginModelProvider;
@@ -114,23 +114,27 @@
     protected abstract void onLogin(T loginModel);
 
     @Override
-    public abstract void onLogout();
+    public void onLogout() {
+        AsyncQuery query = new AsyncQuery();
+        query.setHandleFailure(true);
+        query.asyncCallback = new INewAsyncCallback() {
+            @Override
+            public void onSuccess(Object model, Object ReturnValue) {
+                // Reload entire application after the user has logged out 
successfully on backend.
+                Window.Location.reload();
+            }
+        };
 
-    protected void performLogout() {
-        getLoginModel().resetAfterLogout();
-        user.onUserLogout();
-        AsyncDataProvider.clearCache();
-        CleanupModelEvent.fire(eventBus);
+        frontend.logoffAsync(frontend.getLoggedInUser(), query);
     }
 
     protected void performLogin(T loginModel) {
         DbUser loggedUser = loginModel.getLoggedUser();
         String loginPassword = loginModel.getPassword().getEntity();
 
+        beforeLogin(loginModel);
         // UiCommon login preparation
         frontend.initLoggedInUser(loggedUser, loginPassword);
-        beforeUiCommonInitEvent(loginModel);
-        UiCommonInitEvent.fire(eventBus);
 
         // UI login actions
         user.onUserLogin(loggedUser);
@@ -140,11 +144,10 @@
     }
 
     /**
-     * Called right before {@link UiCommonInitEvent} gets fired.
      * <p>
-     * Any remaining UiCommon initialization logic should be performed here.
+     * Invoked right after the user has logged in successfully on backend, 
before proceeding with UI login sequence.
      */
-    protected abstract void beforeUiCommonInitEvent(T loginModel);
+    protected abstract void beforeLogin(T loginModel);
 
     protected void initUiCommon() {
         // Set up UiCommon type resolver
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/CleanupModel.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/CleanupModel.java
deleted file mode 100644
index 132ad39..0000000
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/CleanupModel.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package org.ovirt.engine.ui.common.uicommon.model;
-
-import com.gwtplatform.dispatch.annotation.GenEvent;
-
-/**
- * Event triggered to tell models to clean themselves up.
- */
-@GenEvent
-public class CleanupModel {
-
-}
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/CommonModelManager.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/CommonModelManager.java
index 7f8967a..4512353 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/CommonModelManager.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/CommonModelManager.java
@@ -5,8 +5,6 @@
 import org.ovirt.engine.ui.uicompat.EventArgs;
 import org.ovirt.engine.ui.uicompat.IEventListener;
 
-import com.google.gwt.core.client.Scheduler;
-import com.google.gwt.core.client.Scheduler.ScheduledCommand;
 import com.google.gwt.event.shared.EventBus;
 
 /**
@@ -23,27 +21,10 @@
      */
     public static void init(final EventBus eventBus) {
         commonModel = CommonModel.newInstance();
-
         commonModel.getSelectedItemChangedEvent().addListener(new 
IEventListener() {
             @Override
             public void eventRaised(Event ev, Object sender, EventArgs args) {
                 MainModelSelectionChangeEvent.fire(eventBus, 
commonModel.getSelectedItem());
-            }
-        });
-
-        commonModel.getSignedOutEvent().addListener(new IEventListener() {
-            @Override
-            public void eventRaised(Event ev, Object sender, EventArgs args) {
-
-                // Clear CommonModel reference after the user signs out,
-                // use deferred command to ensure the reference is cleared
-                // only after all UiCommon-related processing is over
-                Scheduler.get().scheduleDeferred(new ScheduledCommand() {
-                    @Override
-                    public void execute() {
-                        commonModel = null;
-                    }
-                });
             }
         });
     }
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/DataBoundTabModelProvider.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/DataBoundTabModelProvider.java
index bf11cf5..7f03a8d 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/DataBoundTabModelProvider.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/DataBoundTabModelProvider.java
@@ -49,8 +49,8 @@
     }
 
     @Override
-    protected void onCommonModelChange() {
-        super.onCommonModelChange();
+    protected void initializeModelHandlers() {
+        super.initializeModelHandlers();
 
         // Add model items change handler
         getModel().getItemsChangedEvent().addListener(new IEventListener() {
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/ModelInitialized.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/ModelInitialized.java
new file mode 100644
index 0000000..a5dd9e3
--- /dev/null
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/ModelInitialized.java
@@ -0,0 +1,11 @@
+package org.ovirt.engine.ui.common.uicommon.model;
+
+import com.gwtplatform.dispatch.annotation.GenEvent;
+
+/**
+ * Event triggered when all models (except the ones dealing with login) are 
initialized and ready for use.
+ */
+@GenEvent
+public class ModelInitialized {
+
+}
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/SearchableTabModelProvider.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/SearchableTabModelProvider.java
index f16dfc4..2529248 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/SearchableTabModelProvider.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/SearchableTabModelProvider.java
@@ -27,8 +27,8 @@
     }
 
     @Override
-    protected void onCommonModelChange() {
-        super.onCommonModelChange();
+    protected void initializeModelHandlers() {
+        super.initializeModelHandlers();
 
         // Add necessary property change handlers
         getModel().getPropertyChangedEvent().addListener(new IEventListener() {
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/TabModelProvider.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/TabModelProvider.java
index b84391d..a52ca68 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/TabModelProvider.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/TabModelProvider.java
@@ -1,11 +1,8 @@
 package org.ovirt.engine.ui.common.uicommon.model;
 
-import com.google.gwt.event.shared.GwtEvent;
-import com.google.gwt.event.shared.HasHandlers;
 import 
org.ovirt.engine.ui.common.presenter.AbstractModelBoundPopupPresenterWidget;
 import org.ovirt.engine.ui.common.presenter.ModelBoundPresenterWidget;
 import 
org.ovirt.engine.ui.common.presenter.popup.DefaultConfirmationPopupPresenterWidget;
-import 
org.ovirt.engine.ui.common.uicommon.model.UiCommonInitEvent.UiCommonInitHandler;
 import org.ovirt.engine.ui.uicommonweb.UICommand;
 import org.ovirt.engine.ui.uicommonweb.models.CommonModel;
 import org.ovirt.engine.ui.uicommonweb.models.ConfirmationModel;
@@ -17,6 +14,8 @@
 import org.ovirt.engine.ui.uicompat.PropertyChangedEventArgs;
 
 import com.google.gwt.event.shared.EventBus;
+import com.google.gwt.event.shared.GwtEvent;
+import com.google.gwt.event.shared.HasHandlers;
 import com.google.inject.Provider;
 
 /**
@@ -39,22 +38,11 @@
         this.popupHandler = new ModelBoundPopupHandler<M>(this, eventBus);
         
this.popupHandler.setDefaultConfirmPopupProvider(defaultConfirmPopupProvider);
 
-        // Add handler to be notified when UiCommon models are (re)initialized
-        eventBus.addHandler(UiCommonInitEvent.getType(), new 
UiCommonInitHandler() {
+        // Handle UiCommon model initialization to attach appropriate listeners
+        eventBus.addHandler(ModelInitializedEvent.getType(), new 
ModelInitializedEvent.ModelInitializedHandler() {
             @Override
-            public void onUiCommonInit(UiCommonInitEvent event) {
-                TabModelProvider.this.onCommonModelChange();
-            }
-        });
-
-        // Add handler to clean up model
-        eventBus.addHandler(CleanupModelEvent.getType(), new 
CleanupModelEvent.CleanupModelHandler() {
-            @Override
-            public void onCleanupModel(CleanupModelEvent event) {
-                if (hasModel() && !reusesModel()) {
-                    // Calling unsetEventbus will also unregister the handlers
-                    getModel().unsetEventBus();
-                }
+            public void onModelInitialized(ModelInitializedEvent event) {
+                initializeModelHandlers();
             }
         });
     }
@@ -76,7 +64,7 @@
      * <p>
      * Override this method to register custom listeners on the corresponding 
model.
      */
-    protected void onCommonModelChange() {
+    protected void initializeModelHandlers() {
         // Register dialog model property change listener
         popupHandler.addDialogModelListener(getModel());
 
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/UiCommonInit.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/UiCommonInit.java
deleted file mode 100644
index 900a4fc..0000000
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/model/UiCommonInit.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package org.ovirt.engine.ui.common.uicommon.model;
-
-import com.gwtplatform.dispatch.annotation.GenEvent;
-
-/**
- * Event triggered when UiCommon models are (re)initialized and prepared for 
use.
- */
-@GenEvent
-public class UiCommonInit {
-
-}
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/action/AbstractActionPanel.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/action/AbstractActionPanel.java
index 236165c..484756f 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/action/AbstractActionPanel.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/action/AbstractActionPanel.java
@@ -10,8 +10,6 @@
 import org.ovirt.engine.ui.common.idhandler.ProvidesElementId;
 import org.ovirt.engine.ui.common.system.HeaderOffsetChangeEvent;
 import org.ovirt.engine.ui.common.uicommon.model.SearchableModelProvider;
-import org.ovirt.engine.ui.common.uicommon.model.UiCommonInitEvent;
-import 
org.ovirt.engine.ui.common.uicommon.model.UiCommonInitEvent.UiCommonInitHandler;
 import org.ovirt.engine.ui.common.utils.ElementIdUtils;
 import org.ovirt.engine.ui.common.widget.FeatureNotImplementedYetPopup;
 import org.ovirt.engine.ui.common.widget.MenuBar;
@@ -492,14 +490,6 @@
         };
 
         addSelectionChangeListener(itemSelectionChangeHandler);
-
-        // Add handler to be notified when UiCommon models are (re)initialized
-        eventBus.addHandler(UiCommonInitEvent.getType(), new 
UiCommonInitHandler() {
-            @Override
-            public void onUiCommonInit(UiCommonInitEvent event) {
-                addSelectionChangeListener(itemSelectionChangeHandler);
-            }
-        });
     }
 
     void addSelectionChangeListener(IEventListener itemSelectionChangeHandler) 
{
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/action/UiCommandButtonDefinition.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/action/UiCommandButtonDefinition.java
index fc2731f..570d461 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/action/UiCommandButtonDefinition.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/action/UiCommandButtonDefinition.java
@@ -2,8 +2,6 @@
 
 import java.util.List;
 
-import org.ovirt.engine.ui.common.uicommon.model.UiCommonInitEvent;
-import 
org.ovirt.engine.ui.common.uicommon.model.UiCommonInitEvent.UiCommonInitHandler;
 import org.ovirt.engine.ui.uicommonweb.UICommand;
 import org.ovirt.engine.ui.uicompat.Event;
 import org.ovirt.engine.ui.uicompat.EventArgs;
@@ -37,14 +35,6 @@
             String toolTip) {
         super(eventBus, title, commandLocation, subTitledAction, toolTip);
         update();
-
-        // Add handler to be notified when UiCommon models are (re)initialized
-        registerHandler(eventBus.addHandler(UiCommonInitEvent.getType(), new 
UiCommonInitHandler() {
-            @Override
-            public void onUiCommonInit(UiCommonInitEvent event) {
-                update();
-            }
-        }));
     }
 
     public UiCommandButtonDefinition(EventBus eventBus, String title) {
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/refresh/AbstractRefreshManager.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/refresh/AbstractRefreshManager.java
index b274878..f1b9815 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/refresh/AbstractRefreshManager.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/refresh/AbstractRefreshManager.java
@@ -8,8 +8,6 @@
 import 
org.ovirt.engine.ui.common.system.ApplicationFocusChangeEvent.ApplicationFocusChangeHandler;
 import org.ovirt.engine.ui.common.system.ClientStorage;
 import org.ovirt.engine.ui.common.uicommon.model.ModelProvider;
-import org.ovirt.engine.ui.common.uicommon.model.UiCommonInitEvent;
-import 
org.ovirt.engine.ui.common.uicommon.model.UiCommonInitEvent.UiCommonInitHandler;
 import org.ovirt.engine.ui.uicommonweb.models.GridController;
 import org.ovirt.engine.ui.uicommonweb.models.GridTimer;
 import org.ovirt.engine.ui.uicommonweb.models.GridTimerStateChangeEvent;
@@ -74,15 +72,6 @@
         this.eventBus = eventBus;
         this.refreshPanel = createRefreshPanel();
         listenOnManualRefresh();
-
-        // Add handler to be notified when UiCommon models are (re)initialized
-        eventBus.addHandler(UiCommonInitEvent.getType(), new 
UiCommonInitHandler() {
-            @Override
-            public void onUiCommonInit(UiCommonInitEvent event) {
-                updateController();
-            }
-        });
-
         updateController();
 
         // Add handler to be notified when the application window gains or 
looses its focus
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/tab/ModelBoundTab.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/tab/ModelBoundTab.java
index 1f2000d..438619f 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/tab/ModelBoundTab.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/tab/ModelBoundTab.java
@@ -1,8 +1,6 @@
 package org.ovirt.engine.ui.common.widget.tab;
 
 import org.ovirt.engine.ui.common.uicommon.model.ModelProvider;
-import org.ovirt.engine.ui.common.uicommon.model.UiCommonInitEvent;
-import 
org.ovirt.engine.ui.common.uicommon.model.UiCommonInitEvent.UiCommonInitHandler;
 import org.ovirt.engine.ui.uicommonweb.models.EntityModel;
 import org.ovirt.engine.ui.uicompat.Event;
 import org.ovirt.engine.ui.uicompat.EventArgs;
@@ -24,19 +22,7 @@
         this.eventBus = eventBus;
         // Update tab accessibility
         setAccessible(tabData.getModelProvider().getModel().getIsAvailable());
-
-        // Tab widgets are created as part of the corresponding TabView,
-        // at this point UiCommonInitEvent has already been fired
         registerModelEventListeners(tabData.getModelProvider());
-
-        // Add handler to be notified when UiCommon models are (re)initialized
-        eventBus.addHandler(UiCommonInitEvent.getType(), new 
UiCommonInitHandler() {
-            @Override
-            public void onUiCommonInit(UiCommonInitEvent event) {
-                
setAccessible(tabData.getModelProvider().getModel().getIsAvailable());
-                registerModelEventListeners(tabData.getModelProvider());
-            }
-        });
     }
 
     void registerModelEventListeners(final ModelProvider<? extends 
EntityModel> modelProvider) {
diff --git 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/AbstractActionTable.java
 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/AbstractActionTable.java
index bd38890..83b18b4 100644
--- 
a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/AbstractActionTable.java
+++ 
b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/AbstractActionTable.java
@@ -9,8 +9,6 @@
 import org.ovirt.engine.ui.common.system.ClientStorage;
 import org.ovirt.engine.ui.common.uicommon.model.DeferredModelCommandInvoker;
 import org.ovirt.engine.ui.common.uicommon.model.SearchableTableModelProvider;
-import org.ovirt.engine.ui.common.uicommon.model.UiCommonInitEvent;
-import 
org.ovirt.engine.ui.common.uicommon.model.UiCommonInitEvent.UiCommonInitHandler;
 import org.ovirt.engine.ui.common.widget.action.AbstractActionPanel;
 import org.ovirt.engine.ui.common.widget.label.NoItemsLabel;
 import org.ovirt.engine.ui.common.widget.table.column.SortableColumn;
@@ -23,10 +21,10 @@
 
 import com.google.gwt.core.client.Scheduler;
 import com.google.gwt.core.client.Scheduler.ScheduledCommand;
+import com.google.gwt.dom.client.BrowserEvents;
 import com.google.gwt.dom.client.Element;
 import com.google.gwt.dom.client.Style.Position;
 import com.google.gwt.dom.client.Style.Unit;
-import com.google.gwt.dom.client.BrowserEvents;
 import com.google.gwt.dom.client.TableCellElement;
 import com.google.gwt.dom.client.TableRowElement;
 import com.google.gwt.event.dom.client.ClickEvent;
@@ -238,14 +236,6 @@
             tableHeader.enableColumnWidthPersistence(clientStorage, 
dataProvider.getModel());
             table.enableColumnWidthPersistence(clientStorage, 
dataProvider.getModel());
         }
-
-        // When UiCommon models are (re)initialized, register search string 
change listener
-        eventBus.addHandler(UiCommonInitEvent.getType(), new 
UiCommonInitHandler() {
-            @Override
-            public void onUiCommonInit(UiCommonInitEvent event) {
-                addModelSearchStringChangeListener(dataProvider.getModel());
-            }
-        });
         addModelSearchStringChangeListener(dataProvider.getModel());
     }
 
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/CommonModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/CommonModel.java
index ea887b7..a501621 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/CommonModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/CommonModel.java
@@ -12,9 +12,7 @@
 import org.ovirt.engine.core.compat.Regex;
 import org.ovirt.engine.core.compat.RegexOptions;
 import org.ovirt.engine.core.compat.StringHelper;
-import org.ovirt.engine.ui.frontend.AsyncQuery;
 import org.ovirt.engine.ui.frontend.Frontend;
-import org.ovirt.engine.ui.frontend.INewAsyncCallback;
 import org.ovirt.engine.ui.uicommonweb.Linq;
 import org.ovirt.engine.ui.uicommonweb.ReportInit;
 import org.ovirt.engine.ui.uicommonweb.UICommand;
@@ -518,40 +516,6 @@
         getSearchCommand().execute();
     }
 
-    public void signOut()
-    {
-        // Stop search on all list models.
-        for (SearchableListModel listModel : getItems())
-        {
-            listModel.stopRefresh();
-        }
-
-        getEventList().stopRefresh();
-        getAlertList().stopRefresh();
-        getTaskList().stopRefresh();
-        getBookmarkList().stopRefresh();
-        getRoleListModel().stopRefresh();
-        getSystemPermissionListModel().stopRefresh();
-        getClusterPolicyListModel().stopRefresh();
-        getInstanceTypeListModel().stopRefresh();
-
-        if (Frontend.getInstance().getIsUserLoggedIn())
-        {
-            AsyncQuery _asyncQuery = new AsyncQuery();
-            _asyncQuery.setHandleFailure(true);
-            _asyncQuery.setModel(this);
-            _asyncQuery.asyncCallback = new INewAsyncCallback() {
-                @Override
-                public void onSuccess(Object model, Object ReturnValue) {
-                }
-            };
-            setLoggedInUser(null);
-            getSignedOutEvent().raise(this, EventArgs.EMPTY);
-
-            
Frontend.getInstance().logoffAsync(Frontend.getInstance().getLoggedInUser(), 
_asyncQuery);
-        }
-    }
-
     public void configure()
     {
         if (getWindow() != null)
@@ -712,10 +676,6 @@
         if (command == getSearchCommand())
         {
             search();
-        }
-        else if (command == getSignOutCommand())
-        {
-            signOut();
         }
         else if (command == getConfigureCommand())
         {
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/LoginModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/LoginModel.java
index 69ce6c2..671de34 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/LoginModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/LoginModel.java
@@ -349,15 +349,4 @@
         setWindow(null);
     }
 
-    public void resetAfterLogout() {
-        getUserName().setEntity(null);
-        getPassword().setEntity(null);
-        getPassword().setIsChangable(true);
-        getUserName().setIsChangable(true);
-        getDomain().setIsChangable(true);
-        getLoginCommand().setIsExecutionAllowed(true);
-        loggingInAutomatically = false;
-        stopProgress();
-    }
-
 }
diff --git 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/userportal/UserPortalLoginModel.java
 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/userportal/UserPortalLoginModel.java
index 26d45cb..bf8dc7b 100644
--- 
a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/userportal/UserPortalLoginModel.java
+++ 
b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/userportal/UserPortalLoginModel.java
@@ -407,11 +407,4 @@
 
         loginModel.getIsENGINEUser().setEntity(isENGINEUser);
     }
-
-    @Override
-    public void resetAfterLogout() {
-        super.resetAfterLogout();
-        getIsAutoConnect().setIsChangable(true);
-    }
-
 }
diff --git 
a/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/system/ApplicationInit.java
 
b/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/system/ApplicationInit.java
index b93d838..6340ea0 100644
--- 
a/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/system/ApplicationInit.java
+++ 
b/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/system/ApplicationInit.java
@@ -6,9 +6,8 @@
 import org.ovirt.engine.ui.common.uicommon.ClientAgentType;
 import org.ovirt.engine.ui.common.uicommon.FrontendEventsHandlerImpl;
 import org.ovirt.engine.ui.common.uicommon.FrontendFailureEventListener;
-import org.ovirt.engine.ui.frontend.AsyncQuery;
+import org.ovirt.engine.ui.common.uicommon.model.ModelInitializedEvent;
 import org.ovirt.engine.ui.frontend.Frontend;
-import org.ovirt.engine.ui.frontend.INewAsyncCallback;
 import org.ovirt.engine.ui.uicommonweb.ITypeResolver;
 import org.ovirt.engine.ui.uicommonweb.models.userportal.UserPortalLoginModel;
 import org.ovirt.engine.ui.uicompat.Event;
@@ -66,8 +65,9 @@
     }
 
     @Override
-    protected void beforeUiCommonInitEvent(UserPortalLoginModel loginModel) {
+    protected void beforeLogin(UserPortalLoginModel loginModel) {
         UserPortalModelInitEvent.fire(eventBus);
+        ModelInitializedEvent.fire(eventBus);
     }
 
     @Override
@@ -102,28 +102,6 @@
     protected void onLogin(UserPortalLoginModel loginModel) {
         // Instead of performing login now, request update for "IsENGINEUser" 
property
         loginModel.updateIsENGINEUser(loginModel.getLoggedUser());
-    }
-
-    @Override
-    public void onLogout() {
-        AsyncQuery query = new AsyncQuery();
-        query.setHandleFailure(true);
-        query.setModel(this);
-        query.asyncCallback = new INewAsyncCallback() {
-            @Override
-            public void onSuccess(Object model, Object ReturnValue) {
-                // IE optimization: reload entire application on user logout
-                if (clientAgentType.isIE8OrBelow()) {
-                    Window.Location.reload();
-                }
-
-                frontend.clearLoggedInUser();
-                performLogout();
-                connectAutomaticallyManager.resetAlreadyOpened();
-            }
-        };
-
-        frontend.logoffAsync(frontend.getLoggedInUser(), query);
     }
 
 }
diff --git 
a/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/uicommon/UserPortalConfigurator.java
 
b/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/uicommon/UserPortalConfigurator.java
index 9cb9dc4..952b756 100644
--- 
a/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/uicommon/UserPortalConfigurator.java
+++ 
b/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/uicommon/UserPortalConfigurator.java
@@ -5,8 +5,6 @@
 import org.ovirt.engine.core.compat.Version;
 import org.ovirt.engine.ui.common.uicommon.ClientAgentType;
 import org.ovirt.engine.ui.common.uicommon.DocumentationPathTranslator;
-import org.ovirt.engine.ui.common.uicommon.model.UiCommonInitEvent;
-import 
org.ovirt.engine.ui.common.uicommon.model.UiCommonInitEvent.UiCommonInitHandler;
 import org.ovirt.engine.ui.frontend.AsyncQuery;
 import org.ovirt.engine.ui.frontend.INewAsyncCallback;
 import org.ovirt.engine.ui.frontend.utils.BaseContextPathData;
@@ -24,7 +22,7 @@
 import com.google.gwt.event.shared.EventBus;
 import com.google.inject.Inject;
 
-public class UserPortalConfigurator extends Configurator implements 
IEventListener, UiCommonInitHandler {
+public class UserPortalConfigurator extends Configurator implements 
IEventListener {
 
     public static final String DOCUMENTATION_GUIDE_PATH = 
"User_Portal_Guide/index.html"; //$NON-NLS-1$
 
@@ -49,7 +47,7 @@
         super();
         this.placeManager = placeManager;
         this.clientAgentType = clientAgentType;
-        eventBus.addHandler(UiCommonInitEvent.getType(), this);
+        fetchDocumentationFile();
 
         // This means that it is UserPortal application.
         setIsAdmin(false);
@@ -124,11 +122,6 @@
     @Override
     protected Event getSpiceVersionFileFetchedEvent() {
         return spiceVersionFileFetchedEvent;
-    }
-
-    @Override
-    public void onUiCommonInit(UiCommonInitEvent event) {
-        fetchDocumentationFile();
     }
 
     @Override
diff --git 
a/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/uicommon/model/vm/VmMonitorModelProvider.java
 
b/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/uicommon/model/vm/VmMonitorModelProvider.java
index 21a703c..1e3b72c 100644
--- 
a/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/uicommon/model/vm/VmMonitorModelProvider.java
+++ 
b/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/uicommon/model/vm/VmMonitorModelProvider.java
@@ -25,8 +25,8 @@
     }
 
     @Override
-    protected void onCommonModelChange() {
-        super.onCommonModelChange();
+    protected void initializeModelHandlers() {
+        super.initializeModelHandlers();
 
         getModel().getPropertyChangedEvent().addListener(new IEventListener() {
             @Override
diff --git 
a/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/utils/ConnectAutomaticallyManager.java
 
b/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/utils/ConnectAutomaticallyManager.java
index 574ab1d..22ed81c 100644
--- 
a/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/utils/ConnectAutomaticallyManager.java
+++ 
b/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/utils/ConnectAutomaticallyManager.java
@@ -38,10 +38,6 @@
         this.errorPopupManager = errorPopupManager;
     }
 
-    public void resetAlreadyOpened() {
-        this.alreadyOpened = false;
-    }
-
     public void unregisterModels() {
         if (listeners == null) {
             return;
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/SearchPanelPresenterWidget.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/SearchPanelPresenterWidget.java
index e825d2d..3d4d659 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/SearchPanelPresenterWidget.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/SearchPanelPresenterWidget.java
@@ -1,8 +1,6 @@
 package org.ovirt.engine.ui.webadmin.section.main.presenter;
 
 import org.ovirt.engine.ui.common.uicommon.model.CommonModelManager;
-import org.ovirt.engine.ui.common.uicommon.model.UiCommonInitEvent;
-import 
org.ovirt.engine.ui.common.uicommon.model.UiCommonInitEvent.UiCommonInitHandler;
 import org.ovirt.engine.ui.uicommonweb.models.CommonModel;
 import org.ovirt.engine.ui.uicompat.Event;
 import org.ovirt.engine.ui.uicompat.EventArgs;
@@ -21,7 +19,7 @@
 import com.gwtplatform.mvp.client.PresenterWidget;
 import com.gwtplatform.mvp.client.View;
 
-public class SearchPanelPresenterWidget extends 
PresenterWidget<SearchPanelPresenterWidget.ViewDef> implements 
UiCommonInitHandler {
+public class SearchPanelPresenterWidget extends 
PresenterWidget<SearchPanelPresenterWidget.ViewDef> {
 
     public interface ViewDef extends View {
 
@@ -56,14 +54,7 @@
     @Inject
     public SearchPanelPresenterWidget(EventBus eventBus, ViewDef view) {
         super(eventBus, view);
-        eventBus.addHandler(UiCommonInitEvent.getType(), this);
 
-        updateCommonModel();
-        addCommonModelListeners();
-    }
-
-    @Override
-    public void onUiCommonInit(UiCommonInitEvent event) {
         updateCommonModel();
         addCommonModelListeners();
     }
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/system/ApplicationInit.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/system/ApplicationInit.java
index 2fcb83d5..7e5df3b 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/system/ApplicationInit.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/system/ApplicationInit.java
@@ -1,11 +1,5 @@
 package org.ovirt.engine.ui.webadmin.system;
 
-import com.google.gwt.core.client.Scheduler;
-import com.google.gwt.core.client.Scheduler.ScheduledCommand;
-import com.google.gwt.event.shared.EventBus;
-import com.google.gwt.user.client.Window;
-import com.google.inject.Inject;
-import com.google.inject.Provider;
 import org.ovirt.engine.core.common.mode.ApplicationMode;
 import org.ovirt.engine.ui.common.auth.AutoLoginData;
 import org.ovirt.engine.ui.common.auth.CurrentUser;
@@ -14,6 +8,7 @@
 import org.ovirt.engine.ui.common.uicommon.FrontendEventsHandlerImpl;
 import org.ovirt.engine.ui.common.uicommon.FrontendFailureEventListener;
 import org.ovirt.engine.ui.common.uicommon.model.CommonModelManager;
+import org.ovirt.engine.ui.common.uicommon.model.ModelInitializedEvent;
 import org.ovirt.engine.ui.frontend.Frontend;
 import org.ovirt.engine.ui.frontend.FrontendLoginHandler;
 import org.ovirt.engine.ui.uicommonweb.ITypeResolver;
@@ -29,6 +24,12 @@
 import org.ovirt.engine.ui.webadmin.plugin.restapi.RestApiSessionManager;
 import org.ovirt.engine.ui.webadmin.uimode.UiModeData;
 
+import com.google.gwt.core.client.Scheduler;
+import com.google.gwt.core.client.Scheduler.ScheduledCommand;
+import com.google.gwt.event.shared.EventBus;
+import com.google.gwt.user.client.Window;
+import com.google.inject.Inject;
+import com.google.inject.Provider;
 import com.gwtplatform.mvp.client.proxy.PlaceManager;
 
 public class ApplicationInit extends BaseApplicationInit<LoginModel> {
@@ -80,20 +81,14 @@
     }
 
     @Override
-    protected void beforeUiCommonInitEvent(LoginModel loginModel) {
+    protected void beforeLogin(LoginModel loginModel) {
         CommonModelManager.init(eventBus);
+        ModelInitializedEvent.fire(eventBus);
     }
 
     @Override
     protected boolean filterFrontendQueries() {
         return false;
-    }
-
-    @Override
-    public void onLogout() {
-        // Logout operation happens within the CommonModel SignOut event 
handler
-        CommonModelManager.instance().signOut();
-        performLogout();
     }
 
     @Override
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/WebAdminConfigurator.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/WebAdminConfigurator.java
index 3629701..0af38d9 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/WebAdminConfigurator.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/WebAdminConfigurator.java
@@ -5,8 +5,6 @@
 import org.ovirt.engine.core.compat.Version;
 import org.ovirt.engine.ui.common.uicommon.ClientAgentType;
 import org.ovirt.engine.ui.common.uicommon.DocumentationPathTranslator;
-import org.ovirt.engine.ui.common.uicommon.model.UiCommonInitEvent;
-import 
org.ovirt.engine.ui.common.uicommon.model.UiCommonInitEvent.UiCommonInitHandler;
 import org.ovirt.engine.ui.uicommonweb.Configurator;
 import org.ovirt.engine.ui.uicommonweb.models.vms.ISpice;
 import org.ovirt.engine.ui.uicommonweb.models.vms.WANDisableEffects;
@@ -18,7 +16,7 @@
 import com.google.gwt.event.shared.EventBus;
 import com.google.inject.Inject;
 
-public class WebAdminConfigurator extends Configurator implements 
IEventListener, UiCommonInitHandler {
+public class WebAdminConfigurator extends Configurator implements 
IEventListener {
 
     public static final String DOCUMENTATION_GUIDE_PATH = 
"Administration_Guide/index.html"; //$NON-NLS-1$
 
@@ -36,8 +34,8 @@
     public WebAdminConfigurator(EventBus eventBus, ClientAgentType 
clientAgentType) {
         super();
         this.clientAgentType = clientAgentType;
-        eventBus.addHandler(UiCommonInitEvent.getType(), this);
 
+        fetchDocumentationFile();
         // This means that this is WebAdmin application.
         setIsAdmin(true);
         setSpiceAdminConsole(true);
@@ -71,11 +69,6 @@
     @Override
     protected Event getSpiceVersionFileFetchedEvent() {
         return spiceVersionFileFetchedEvent;
-    }
-
-    @Override
-    public void onUiCommonInit(UiCommonInitEvent event) {
-        fetchDocumentationFile();
     }
 
     @Override
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/BookmarkModelProvider.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/BookmarkModelProvider.java
index 72874c1..8b7e6aa 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/BookmarkModelProvider.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/BookmarkModelProvider.java
@@ -64,8 +64,8 @@
     }
 
     @Override
-    protected void onCommonModelChange() {
-        super.onCommonModelChange();
+    protected void initializeModelHandlers() {
+        super.initializeModelHandlers();
 
         // Clear selection when a system tree node is selected
         
treeModelProvider.getModel().getSelectedItemChangedEvent().addListener(new 
IEventListener() {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/SystemTreeModelProvider.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/SystemTreeModelProvider.java
index 4e544db..e257d60 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/SystemTreeModelProvider.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/SystemTreeModelProvider.java
@@ -68,8 +68,8 @@
     }
 
     @Override
-    protected void onCommonModelChange() {
-        super.onCommonModelChange();
+    protected void initializeModelHandlers() {
+        super.initializeModelHandlers();
 
         // Add model reset handler
         getModel().getResetRequestedEvent().addListener(new IEventListener() {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/TagModelProvider.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/TagModelProvider.java
index eb5b34a..4eb5671 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/TagModelProvider.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/TagModelProvider.java
@@ -65,8 +65,8 @@
     }
 
     @Override
-    protected void onCommonModelChange() {
-        super.onCommonModelChange();
+    protected void initializeModelHandlers() {
+        super.initializeModelHandlers();
 
         // Add model reset handler
         getModel().getResetRequestedEvent().addListener(new IEventListener() {
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/TaskModelProvider.java
 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/TaskModelProvider.java
index 62b751b..d11143f 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/TaskModelProvider.java
+++ 
b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/TaskModelProvider.java
@@ -64,8 +64,8 @@
     }
 
     @Override
-    protected void onCommonModelChange() {
-        super.onCommonModelChange();
+    protected void initializeModelHandlers() {
+        super.initializeModelHandlers();
         if (taskHandler != null) {
             taskHandler.updateTree();
         }


-- 
To view, visit http://gerrit.ovirt.org/31360
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Id5c665ed85495b7c4baf4f0984b006ee2a7730f9
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: ovirt-engine-3.5
Gerrit-Owner: Alexander Wels <aw...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to