Package lv.odylab.evemanage.client.presenter.tab

Source Code of lv.odylab.evemanage.client.presenter.tab.QuickCalculatorTabPresenterAsync

package lv.odylab.evemanage.client.presenter.tab;

import com.google.gwt.core.client.GWT;
import com.google.gwt.core.client.RunAsyncCallback;
import com.google.gwt.event.shared.EventBus;
import com.google.gwt.user.client.ui.HasWidgets;
import com.google.inject.Inject;
import lv.odylab.evemanage.client.EveManageConstants;
import lv.odylab.evemanage.client.event.error.AsyncLoadingErrorEvent;
import lv.odylab.evemanage.client.gin.EveManageGinjector;
import lv.odylab.evemanage.client.presenter.Presenter;
import lv.odylab.evemanage.client.tracking.TrackingManager;

public class QuickCalculatorTabPresenterAsync implements Presenter {
    private static QuickCalculatorTabPresenter instance = null;

    private EveManageGinjector ginjector;
    private EventBus eventBus;
    private TrackingManager trackingManager;
    private EveManageConstants constants;

    @Inject
    public QuickCalculatorTabPresenterAsync(EveManageGinjector ginjector, EventBus eventBus, TrackingManager trackingManager, EveManageConstants constants) {
        this.ginjector = ginjector;
        this.eventBus = eventBus;
        this.trackingManager = trackingManager;
        this.constants = constants;
    }

    @Override
    public void go(final HasWidgets container) {
        GWT.runAsync(new RunAsyncCallback() {
            @Override
            public void onSuccess() {
                if (instance == null) {
                    instance = ginjector.getQuickCalculatorTabPresenter();
                }
                instance.go(container);
            }

            @Override
            public void onFailure(Throwable t) {
                eventBus.fireEvent(new AsyncLoadingErrorEvent(trackingManager, constants, "Failed to async load QuickCalculatorTabPresenter"));
            }
        });
    }
}
TOP

Related Classes of lv.odylab.evemanage.client.presenter.tab.QuickCalculatorTabPresenterAsync

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.