Package org.jboss.as.console.client.standalone.runtime

Source Code of org.jboss.as.console.client.standalone.runtime.StandaloneRuntimeNavigation

package org.jboss.as.console.client.standalone.runtime;

import com.google.gwt.user.client.ui.DisclosurePanel;
import com.google.gwt.user.client.ui.Tree;
import com.google.gwt.user.client.ui.TreeItem;
import com.google.gwt.user.client.ui.VerticalPanel;
import com.google.gwt.user.client.ui.Widget;

import org.jboss.as.console.client.core.NameTokens;
import org.jboss.as.console.client.shared.model.SubsystemRecord;
import org.jboss.as.console.client.widgets.nav.DefaultTreeItem;
import org.jboss.ballroom.client.layout.LHSNavTree;
import org.jboss.ballroom.client.layout.LHSNavTreeItem;
import org.jboss.ballroom.client.widgets.stack.DisclosureStackPanel;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
* @author Heiko Braun
* @date 11/2/11
*/
public class StandaloneRuntimeNavigation {

    private VerticalPanel stack;
    private VerticalPanel layout;
    private LHSNavTree subsysTree;
    private List<SubsystemRecord> subsystems;

    private Map<String, LHSNavTreeItem> mapping = new HashMap<String,LHSNavTreeItem>();
    private Tree statusTree;

    public Widget asWidget()
    {
        layout = new VerticalPanel();
        layout.setStyleName("fill-layout-width");

        stack = new VerticalPanel();
        stack.setStyleName("fill-layout-width");

        // ----------------------------------------------------


        subsysTree = new LHSNavTree("standalone-runtime");


        // ----------------------------------------------------

        statusTree = new LHSNavTree("standalone-runtime");
        TreeItem serverContents = new DefaultTreeItem("Server");

        statusTree.addItem(serverContents);


        LHSNavTreeItem server = new LHSNavTreeItem("Configuration", NameTokens.StandaloneServerPresenter);
        LHSNavTreeItem jvmItem = new LHSNavTreeItem("JVM", NameTokens.VirtualMachine);
        serverContents.addItem(server);
        serverContents.addItem(jvmItem);


        //LHSNavTreeItem metrics = new LHSNavTreeItem("Subsystem Metrics", "metrics");

        LHSNavTreeItem datasources = new LHSNavTreeItem("Datasources", "ds-metrics");
        LHSNavTreeItem jmsQueues = new LHSNavTreeItem("JMS Destinations", "jms-metrics");
        LHSNavTreeItem web = new LHSNavTreeItem("Web", "web-metrics");
        LHSNavTreeItem tx = new LHSNavTreeItem("Transactions", NameTokens.TXMetrics);

        /*subsysContents.addItem(datasources);
        subsysContents.addItem(jmsQueues);
        subsysContents.addItem(web);
        subsysContents.addItem(tx);*/


        mapping.put(NameTokens.DataSourcePresenter, datasources);
        mapping.put(NameTokens.MessagingPresenter, jmsQueues);
        mapping.put(NameTokens.WebPresenter, web);
        mapping.put(NameTokens.TransactionPresenter, tx);


        DisclosurePanel serverPanel  = new DisclosureStackPanel("Status", true).asWidget();
        serverPanel.setContent(statusTree);

        // open by default
        serverContents.setState(true);


        stack.add(serverPanel);

        // ----------------------------------------------------

        Tree deploymentTree = new LHSNavTree("standalone-runtime");
        DisclosurePanel deploymentPanel  = new DisclosureStackPanel("Deployments").asWidget();
        deploymentPanel.setContent(deploymentTree);

        deploymentTree.addItem(new LHSNavTreeItem("Manage Deployments", NameTokens.DeploymentListPresenter));

        stack.add(deploymentPanel);


        // ----

        Tree runtimeOpsTree = new LHSNavTree("standalone-runtime");
        DisclosurePanel runtimePanel  = new DisclosureStackPanel("Runtime Operations").asWidget();
        runtimePanel.setContent(runtimeOpsTree);

        LHSNavTreeItem osgi = new LHSNavTreeItem("OSGi", NameTokens.OSGiRuntimePresenter);
        runtimeOpsTree.addItem(osgi);

        stack.add(runtimePanel);

         // ---

        layout.add(stack);

        return layout;
    }

    public void setSubsystems(List<SubsystemRecord> result) {

        TreeItem subsysContents = new DefaultTreeItem("Subsystem Metrics");

        for(SubsystemRecord subsys : result)
        {
            LHSNavTreeItem navEntry = mapping.get(subsys.getKey());
            if(navEntry!=null)
            {
                subsysContents.addItem(navEntry);
            }
        }

        statusTree.addItem(subsysContents);
        subsysContents.setState(true);
    }
}
TOP

Related Classes of org.jboss.as.console.client.standalone.runtime.StandaloneRuntimeNavigation

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.