Package org.drools.guvnor.client.explorer.navigation.deployment

Source Code of org.drools.guvnor.client.explorer.navigation.deployment.SnapshotActivity

package org.drools.guvnor.client.explorer.navigation.deployment;

import com.google.gwt.core.client.GWT;
import com.google.gwt.event.shared.EventBus;
import org.drools.guvnor.client.common.GenericCallback;
import org.drools.guvnor.client.common.LoadingPopup;
import org.drools.guvnor.client.explorer.AcceptItem;
import org.drools.guvnor.client.explorer.ClientFactory;
import org.drools.guvnor.client.messages.Constants;
import org.drools.guvnor.client.moduleeditor.drools.SnapshotView;
import org.drools.guvnor.client.rpc.Module;
import org.drools.guvnor.client.rpc.ModuleService;
import org.drools.guvnor.client.rpc.ModuleServiceAsync;
import org.drools.guvnor.client.rpc.SnapshotInfo;
import org.drools.guvnor.client.util.Activity;

public class SnapshotActivity extends Activity {

    private final ClientFactory clientFactory;
    private final String moduleName;
    private final String snapshotName;

    public SnapshotActivity(String moduleName,
                            String snapshotName,
                            ClientFactory clientFactory) {
        this.moduleName = moduleName;
        this.snapshotName = snapshotName;
        this.clientFactory = clientFactory;
    }

    @Override
    public void start(final AcceptItem tabbedPanel, final EventBus eventBus) {
        clientFactory.getModuleService().loadSnapshotInfo(
                moduleName,
                snapshotName,
                new GenericCallback<SnapshotInfo>() {
                    public void onSuccess(SnapshotInfo snapshotInfo) {
                        showTab( tabbedPanel, snapshotInfo, eventBus );
                    }
                } );
    }

    private void showTab(final AcceptItem tabbedPanel, final SnapshotInfo snapshotInfo, final EventBus eventBus) {

        LoadingPopup.showMessage( Constants.INSTANCE.LoadingSnapshot() );

        ModuleServiceAsync moduleService = GWT.create(ModuleService.class);
        moduleService.loadModule(snapshotInfo.getUuid(),
                                    new GenericCallback<Module>() {
                                        public void onSuccess(Module conf) {
                                            tabbedPanel.add(Constants.INSTANCE.SnapshotLabel(snapshotInfo.getName()),
                                                    new SnapshotView(
                                                            clientFactory,
                                                            eventBus,
                                                            snapshotInfo,
                                                            conf));
                                            LoadingPopup.close();
                                        }
                                    });

    }

}
TOP

Related Classes of org.drools.guvnor.client.explorer.navigation.deployment.SnapshotActivity

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.