summaryrefslogtreecommitdiff
path: root/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/MBeanTabFolderFactory.java
diff options
context:
space:
mode:
Diffstat (limited to 'trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/MBeanTabFolderFactory.java')
-rw-r--r--trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/MBeanTabFolderFactory.java464
1 files changed, 0 insertions, 464 deletions
diff --git a/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/MBeanTabFolderFactory.java b/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/MBeanTabFolderFactory.java
deleted file mode 100644
index 1fef89d6b5..0000000000
--- a/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/MBeanTabFolderFactory.java
+++ /dev/null
@@ -1,464 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.apache.qpid.management.ui.views;
-
-import static org.apache.qpid.management.ui.Constants.ATTRIBUTES;
-import static org.apache.qpid.management.ui.Constants.CONNECTION;
-import static org.apache.qpid.management.ui.Constants.EXCHANGE;
-import static org.apache.qpid.management.ui.Constants.EXCHANGE_TYPE;
-import static org.apache.qpid.management.ui.Constants.NOTIFICATIONS;
-import static org.apache.qpid.management.ui.Constants.QUEUE;
-
-import java.util.EnumSet;
-import java.util.HashMap;
-import java.util.Map;
-
-import javax.management.MBeanServerConnection;
-
-import org.apache.qpid.management.ui.ApplicationRegistry;
-import org.apache.qpid.management.ui.ManagedServer;
-import org.apache.qpid.management.ui.ServerRegistry;
-import org.apache.qpid.management.ui.jmx.JMXManagedObject;
-import org.apache.qpid.management.ui.jmx.MBeanUtility;
-import org.apache.qpid.management.ui.model.NotificationInfoModel;
-import org.apache.qpid.management.ui.model.OperationData;
-import org.apache.qpid.management.ui.model.OperationDataModel;
-import org.apache.qpid.management.ui.views.queue.QueueOperationsTabControl;
-import org.apache.qpid.management.ui.views.type.ConnectionTypeTabControl;
-import org.apache.qpid.management.ui.views.type.ExchangeTypeTabControl;
-import org.apache.qpid.management.ui.views.type.QueueTypeTabControl;
-import org.apache.qpid.management.ui.views.users.UserManagementTabControl;
-import org.apache.qpid.management.ui.views.vhost.VHostTabControl;
-import org.apache.qpid.management.ui.views.connection.ConnectionOperationsTabControl;
-import org.apache.qpid.management.ui.views.exchange.ExchangeOperationsTabControl;
-import org.apache.qpid.management.ui.views.exchange.HeadersExchangeOperationsTabControl;
-import org.apache.qpid.management.ui.views.logging.ConfigurationFileTabControl;
-import org.apache.qpid.management.ui.views.logging.RuntimeTabControl;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Listener;
-import org.eclipse.swt.widgets.TabFolder;
-import org.eclipse.swt.widgets.TabItem;
-
-public class MBeanTabFolderFactory
-{
- private static final String MBEANTYPE_QUEUE = "VirtualHost.Queue";
- private static final String MBEANTYPE_CONNECTION = "VirtualHost.Connection";
- private static final String MBEANTYPE_EXCHANGE = "VirtualHost.Exchange";
- private static final String MBEANTYPE_VHOST_MANAGER = "VirtualHost.VirtualHostManager";
- private static final String MBEANTYPE_LOGGING_MANAGEMENT = "LoggingManagement";
- private static final String MBEANTYPE_USER_MANAGEMENT = "UserManagement";
- private static final String MBEANTYPE_CONFIGURATION_MANAGEMENT = "ConfigurationManagement";
-
- private MBeanTabFolderFactory()
- {
- //no instances
- }
-
- public static TabFolder generateMBeanTabFolder(final Composite parent, final JMXManagedObject mbean, final MBeanServerConnection mbsc)
- {
- TabFolder tabFolder = new TabFolder(parent, SWT.NONE);
- FormData layoutData = new FormData();
- layoutData.left = new FormAttachment(0);
- layoutData.top = new FormAttachment(0);
- layoutData.right = new FormAttachment(100);
- layoutData.bottom = new FormAttachment(100);
- tabFolder.setLayoutData(layoutData);
-
- TabItem tab;
- TabControl controller;
- QpidMBeanType mbeanType = QpidMBeanType.get(mbean.getType());
-
- switch(mbeanType)
- {
- case QUEUE:
- createAttributesTab(tabFolder, mbean);
-
- tab = new TabItem(tabFolder, SWT.NONE);
- tab.setText("Operations");
- controller = new QueueOperationsTabControl(tabFolder, mbean, mbsc);
- tab.setControl(controller.getControl());
- tab.setData(TabControl.CONTROLLER, controller);
- break;
- case CONNECTION:
- createAttributesTab(tabFolder, mbean);
-
- tab = new TabItem(tabFolder, SWT.NONE);
- tab.setText("Operations");
- controller = new ConnectionOperationsTabControl(tabFolder, mbean, mbsc);
- tab.setControl(controller.getControl());
- tab.setData(TabControl.CONTROLLER, controller);
- break;
- case EXCHANGE:
- createAttributesTab(tabFolder, mbean);
-
- if (mbean.getProperty(EXCHANGE_TYPE).equalsIgnoreCase("headers"))
- {
- tab = new TabItem(tabFolder, SWT.NONE);
- tab.setText("Operations");
- controller = new HeadersExchangeOperationsTabControl(tabFolder, mbean, mbsc);
- tab.setControl(controller.getControl());
- tab.setData(TabControl.CONTROLLER, controller);
- }
- else
- {
- tab = new TabItem(tabFolder, SWT.NONE);
- tab.setText("Operations");
- controller = new ExchangeOperationsTabControl(tabFolder, mbean, mbsc);
- tab.setControl(controller.getControl());
- tab.setData(TabControl.CONTROLLER, controller);
- }
- break;
- case VHOST_MANAGER:
- tab = new TabItem(tabFolder, SWT.NONE);
- tab.setText("Operations");
- controller = new VHostTabControl(tabFolder, mbean, mbsc);
- tab.setControl(controller.getControl());
- tab.setData(TabControl.CONTROLLER, controller);
- break;
- case LOGGING_MANAGEMENT:
- tab = new TabItem(tabFolder, SWT.NONE);
- tab.setText("Runtime Options");
- controller = new RuntimeTabControl(tabFolder, mbean, mbsc);
- tab.setControl(controller.getControl());
- tab.setData(TabControl.CONTROLLER, controller);
-
- tab = new TabItem(tabFolder, SWT.NONE);
- tab.setText("ConfigurationFile Options");
- controller = new ConfigurationFileTabControl(tabFolder, mbean, mbsc);
- tab.setControl(controller.getControl());
- tab.setData(TabControl.CONTROLLER, controller);
- break;
- case USER_MANAGEMENT:
- tab = new TabItem(tabFolder, SWT.NONE);
- tab.setText("Operations");
- controller = new UserManagementTabControl(tabFolder, mbean, mbsc);
- tab.setControl(controller.getControl());
- tab.setData(TabControl.CONTROLLER, controller);
- break;
- case CONFIGURATION_MANAGEMENT:
- createGenericTabFolder(tabFolder, mbean);
- break;
- case UNKNOWN:
- createGenericTabFolder(tabFolder, mbean);
- break;
- }
-
- createNotificationsTabIfNecessary(tabFolder, mbean);
-
- tabFolder.addListener(SWT.Selection, new Listener()
- {
- public void handleEvent(Event evt)
- {
- TabItem tab = (TabItem)evt.item;
- TabControl controller = (TabControl)tab.getData(TabControl.CONTROLLER);
- if(controller != null)
- {
- controller.refresh(mbean);
- }
- }
- });
-
- return tabFolder;
- }
-
- private static void createGenericTabFolder(TabFolder tabFolder, JMXManagedObject mbean)
- {
- createAttributesTab(tabFolder, mbean);
- createOperationTabs(tabFolder, mbean);
- }
-
- private static void createAttributesTab(TabFolder tabFolder, JMXManagedObject mbean)
- {
- ServerRegistry serverRegistry = ApplicationRegistry.getServerRegistry(mbean);
- if(serverRegistry.getAttributeModel(mbean).getCount() == 0)
- {
- return;
- }
-
- TabItem tab = new TabItem(tabFolder, SWT.NONE);
- tab.setText(ATTRIBUTES);
- AttributesTabControl controller = new AttributesTabControl(tabFolder);
- tab.setControl(controller.getControl());
- tab.setData(TabControl.CONTROLLER, controller);
- }
-
- private static void createOperationTabs(TabFolder tabFolder, JMXManagedObject mbean)
- {
- ServerRegistry serverRegistry = ApplicationRegistry.getServerRegistry(mbean);
- int operationsCount = serverRegistry.getOperationModel(mbean).getCount();
- if(operationsCount == 0)
- {
- return;
- }
-
- OperationDataModel operationModel = serverRegistry.getOperationModel(mbean);
- for(OperationData operationData : operationModel.getOperations())
- {
- TabItem operationTab = new TabItem(tabFolder, SWT.NONE);
- operationTab.setText(ViewUtility.getDisplayText(operationData.getName()));
- operationTab.setData(operationData);
- OperationTabControl control = new OperationTabControl(tabFolder, operationData);
- operationTab.setData(TabControl.CONTROLLER, control);
- operationTab.setControl(control.getControl());
- }
- }
-
- private static void createNotificationsTabIfNecessary(TabFolder tabFolder, JMXManagedObject mbean)
- {
- NotificationInfoModel[] items = MBeanUtility.getNotificationInfo(mbean);
- if(items == null || items.length == 0)
- {
- //the mbean has no notifications to subscribe for, do not create the tab.
- return;
- }
-
- NotificationsTabControl controller = new NotificationsTabControl(tabFolder, mbean);
-
- TabItem tab = new TabItem(tabFolder, SWT.NONE);
- tab.setText(NOTIFICATIONS);
- tab.setData(TabControl.CONTROLLER, controller);
- tab.setControl(controller.getControl());
- }
-
- /**
- * Creates TabFolder and tabs for all mbeantype (Connection, Queue, and Exchange)
- */
- public static TabFolder generateMBeanTypeTabFolder(final Composite parent, ManagedServer server, String virtualHost)
- {
- TabFolder tabFolder = new TabFolder(parent, SWT.NONE);
- FormData layoutData = new FormData();
- layoutData.left = new FormAttachment(0);
- layoutData.top = new FormAttachment(0);
- layoutData.right = new FormAttachment(100);
- layoutData.bottom = new FormAttachment(100);
- tabFolder.setLayoutData(layoutData);
-
-
- TabItem tab;
- TabControl controller;
-
- tab = new TabItem(tabFolder, SWT.NONE);
- tab.setText(CONNECTION);
- controller = new ConnectionTypeTabControl(tabFolder,server,virtualHost);
- tab.setData(TabControl.CONTROLLER, controller);
- tab.setControl(controller.getControl());
-
- tab = new TabItem(tabFolder, SWT.NONE);
- tab.setText(EXCHANGE);
- controller = new ExchangeTypeTabControl(tabFolder,server,virtualHost);
- tab.setData(TabControl.CONTROLLER, controller);
- tab.setControl(controller.getControl());
-
- tab = new TabItem(tabFolder, SWT.NONE);
- tab.setText(QUEUE);
- controller = new QueueTypeTabControl(tabFolder,server,virtualHost);
- tab.setData(TabControl.CONTROLLER, controller);
- tab.setControl(controller.getControl());
-
- tabFolder.addListener(SWT.Selection, new Listener()
- {
- public void handleEvent(Event evt)
- {
- TabItem tab = (TabItem)evt.item;
- TabControl controller = (TabControl)tab.getData(TabControl.CONTROLLER);
- if(controller != null)
- {
- controller.refresh(null);
- }
- }
- });
-
- return tabFolder;
- }
-
- /**
- * Creates TabFolder and tab for the Connection selection view
- */
- public static TabFolder generateConnectionTypeTabFolder(final Composite parent, ManagedServer server, String virtualHost)
- {
- TabFolder tabFolder = new TabFolder(parent, SWT.NONE);
- FormData layoutData = new FormData();
- layoutData.left = new FormAttachment(0);
- layoutData.top = new FormAttachment(0);
- layoutData.right = new FormAttachment(100);
- layoutData.bottom = new FormAttachment(100);
- tabFolder.setLayoutData(layoutData);
-
- TabItem tab;
- TabControl controller;
-
- tab = new TabItem(tabFolder, SWT.NONE);
- tab.setText(CONNECTION);
- controller = new ConnectionTypeTabControl(tabFolder,server,virtualHost);
- tab.setData(TabControl.CONTROLLER, controller);
- tab.setControl(controller.getControl());
-
- tabFolder.addListener(SWT.Selection, new Listener()
- {
- public void handleEvent(Event evt)
- {
- TabItem tab = (TabItem)evt.item;
- TabControl controller = (TabControl)tab.getData(TabControl.CONTROLLER);
- if(controller != null)
- {
- controller.refresh(null);
- }
- }
- });
-
- return tabFolder;
- }
-
- /**
- * Creates TabFolder and tab for the Exchange selection view
- */
- public static TabFolder generateExchangeTypeTabFolder(final Composite parent, ManagedServer server, String virtualHost)
- {
- TabFolder tabFolder = new TabFolder(parent, SWT.NONE);
- FormData layoutData = new FormData();
- layoutData.left = new FormAttachment(0);
- layoutData.top = new FormAttachment(0);
- layoutData.right = new FormAttachment(100);
- layoutData.bottom = new FormAttachment(100);
- tabFolder.setLayoutData(layoutData);
-
- TabItem tab;
- TabControl controller;
-
- tab = new TabItem(tabFolder, SWT.NONE);
- tab.setText(EXCHANGE);
- controller = new ExchangeTypeTabControl(tabFolder,server,virtualHost);
- tab.setData(TabControl.CONTROLLER, controller);
- tab.setControl(controller.getControl());
-
- tabFolder.addListener(SWT.Selection, new Listener()
- {
- public void handleEvent(Event evt)
- {
- TabItem tab = (TabItem)evt.item;
- TabControl controller = (TabControl)tab.getData(TabControl.CONTROLLER);
- if(controller != null)
- {
- controller.refresh(null);
- }
- }
- });
-
- return tabFolder;
- }
-
- /**
- * Creates TabFolder and tab for the Queue selection view
- */
- public static TabFolder generateQueueTypeTabFolder(final Composite parent, ManagedServer server, String virtualHost)
- {
- TabFolder tabFolder = new TabFolder(parent, SWT.NONE);
- FormData layoutData = new FormData();
- layoutData.left = new FormAttachment(0);
- layoutData.top = new FormAttachment(0);
- layoutData.right = new FormAttachment(100);
- layoutData.bottom = new FormAttachment(100);
- tabFolder.setLayoutData(layoutData);
-
- TabItem tab;
- TabControl controller;
-
- tab = new TabItem(tabFolder, SWT.NONE);
- tab.setText(QUEUE);
- controller = new QueueTypeTabControl(tabFolder,server,virtualHost);
- tab.setData(TabControl.CONTROLLER, controller);
- tab.setControl(controller.getControl());
-
- tabFolder.addListener(SWT.Selection, new Listener()
- {
- public void handleEvent(Event evt)
- {
- TabItem tab = (TabItem)evt.item;
- TabControl controller = (TabControl)tab.getData(TabControl.CONTROLLER);
- if(controller != null)
- {
- controller.refresh(null);
- }
- }
- });
-
- return tabFolder;
- }
-
- private enum QpidMBeanType
- {
- QUEUE (MBEANTYPE_QUEUE),
- CONNECTION (MBEANTYPE_CONNECTION),
- EXCHANGE (MBEANTYPE_EXCHANGE),
- VHOST_MANAGER (MBEANTYPE_VHOST_MANAGER),
- LOGGING_MANAGEMENT (MBEANTYPE_LOGGING_MANAGEMENT),
- USER_MANAGEMENT (MBEANTYPE_USER_MANAGEMENT),
- CONFIGURATION_MANAGEMENT (MBEANTYPE_CONFIGURATION_MANAGEMENT),
- UNKNOWN (null);
-
- private static final Map<String,QpidMBeanType> lookup = new HashMap<String,QpidMBeanType>();
-
- static
- {
- for(QpidMBeanType m : EnumSet.allOf(QpidMBeanType.class))
- {
- lookup.put(m.getType(), m);
- }
- }
-
- private String type;
-
- private QpidMBeanType()
- {
-
- }
-
- private QpidMBeanType(String type)
- {
- this.type = type;
- }
-
- public String getType()
- {
- return type;
- }
-
- public static QpidMBeanType get(String type)
- {
- QpidMBeanType t= lookup.get(type);
- if (t != null)
- {
- return t;
- }
- else
- {
- return UNKNOWN;
- }
-
- }
- }
-
-
-}