summaryrefslogtreecommitdiff
path: root/java/management/eclipse-plugin
diff options
context:
space:
mode:
authorBhupendra Bhusman Bhardwaj <bhupendrab@apache.org>2007-02-07 11:27:15 +0000
committerBhupendra Bhusman Bhardwaj <bhupendrab@apache.org>2007-02-07 11:27:15 +0000
commitb37d5db6ef5e5e9363a1e791dcf9a419bc348bb1 (patch)
tree83d4b469a2fe4b7876d2bc787857e0984bf0f94e /java/management/eclipse-plugin
parent020a924c742b185ef5360108985460f0155eb671 (diff)
downloadqpid-python-b37d5db6ef5e5e9363a1e791dcf9a419bc348bb1.tar.gz
QPID-170
Management feature added - moving messages from one Queue to another git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@504507 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/management/eclipse-plugin')
-rw-r--r--java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/Constants.java1
-rw-r--r--java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/ServerRegistry.java2
-rw-r--r--java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/JMXServerRegistry.java9
-rw-r--r--java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/MBeanUtility.java4
-rw-r--r--java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/model/OperationDataModel.java5
-rw-r--r--java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/model/ParameterData.java13
-rw-r--r--java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/MBeanView.java10
-rw-r--r--java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/OperationTabControl.java47
8 files changed, 59 insertions, 32 deletions
diff --git a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/Constants.java b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/Constants.java
index 5c3b45a8f2..e3e22aa7ee 100644
--- a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/Constants.java
+++ b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/Constants.java
@@ -50,6 +50,7 @@ public class Constants
public final static String ATTRIBUTE_QUEUE_CONSUMERCOUNT = "ActiveConsumerCount";
public final static String OPERATION_CREATE_QUEUE = "createNewQueue";
public final static String OPERATION_CREATE_BINDING = "createNewBinding";
+ public final static String OPERATION_MOVE_MESSAGES = "moveMessages";
public final static String ALL = "All";
diff --git a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/ServerRegistry.java b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/ServerRegistry.java
index b498454fc1..32e2290c2a 100644
--- a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/ServerRegistry.java
+++ b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/ServerRegistry.java
@@ -128,7 +128,7 @@ public abstract class ServerRegistry
public abstract OperationDataModel getOperationModel(ManagedBean mbean);
- public abstract String[] getQueueNames(String vistualHostName);
+ public abstract List<String> getQueueNames(String vistualHostName);
public abstract String[] getExchangeNames(String vistualHostName);
diff --git a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/JMXServerRegistry.java b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/JMXServerRegistry.java
index 882fdfb038..c5988fd480 100644
--- a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/JMXServerRegistry.java
+++ b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/JMXServerRegistry.java
@@ -387,19 +387,18 @@ public class JMXServerRegistry extends ServerRegistry
return _operationModelMap.get(mbean.getUniqueName());
}
- public String[] getQueueNames(String virtualHostName)
+ public List<String> getQueueNames(String virtualHostName)
{
List<ManagedBean> list = getQueues(virtualHostName);
if (list == null)
return null;
- String[] queues = new String[list.size()];
- int i = 0;
+ List<String> queueNames = new ArrayList<String>();
for (ManagedBean mbean : list)
{
- queues[i++] = mbean.getName();
+ queueNames.add(mbean.getName());
}
- return queues;
+ return queueNames;
}
public String[] getExchangeNames(String virtualHostName)
diff --git a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/MBeanUtility.java b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/MBeanUtility.java
index 1a1de11e30..e7361ddec7 100644
--- a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/MBeanUtility.java
+++ b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/MBeanUtility.java
@@ -163,7 +163,7 @@ public class MBeanUtility
}
else if (ex instanceof MBeanException)
{
- String cause = ((MBeanException)ex).getTargetException().toString();
+ String cause = ((MBeanException)ex).getTargetException().getMessage();
if (cause == null)
cause = ex.toString();
ViewUtility.popupInfoMessage(mbean.getInstanceName(), cause);
@@ -178,7 +178,7 @@ public class MBeanUtility
}
else
{
- ViewUtility.popupErrorMessage(mbean.getInstanceName(), ex.toString());
+ ViewUtility.popupErrorMessage(mbean.getInstanceName(), ex.getMessage());
ex.printStackTrace();
}
diff --git a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/model/OperationDataModel.java b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/model/OperationDataModel.java
index 2df36ee8c6..96964a81ef 100644
--- a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/model/OperationDataModel.java
+++ b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/model/OperationDataModel.java
@@ -45,9 +45,8 @@ public class OperationDataModel
for (int i = 0; i < parametersCount; i++)
{
MBeanParameterInfo paramInfo = opInfo.getSignature()[i];
- ParameterData param = new ParameterData(paramInfo.getName());
- param.setDescription(paramInfo.getDescription());
- param.setType(paramInfo.getType());
+ ParameterData param = new ParameterData(paramInfo.getName(), paramInfo.getDescription(),
+ paramInfo.getType());
paramList.add(param);
}
opData.setParameters(paramList);
diff --git a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/model/ParameterData.java b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/model/ParameterData.java
index 9d1d44559e..d12217c6eb 100644
--- a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/model/ParameterData.java
+++ b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/model/ParameterData.java
@@ -31,19 +31,18 @@ public class ParameterData
private String _type;
private Object _value;
- ParameterData(String name)
+ ParameterData(String name, String desc, String type)
{
this._name = name;
+ this._description = desc;
+ this._type = type;
+ setDefaultValue();
}
public String getDescription()
{
return _description;
}
- public void setDescription(String description)
- {
- this._description = description;
- }
public String getName()
{
@@ -54,10 +53,6 @@ public class ParameterData
{
return _type;
}
- public void setType(String type)
- {
- this._type = type;
- }
public Object getValue()
{
diff --git a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/MBeanView.java b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/MBeanView.java
index e3cd92f38a..cdb4aa99a8 100644
--- a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/MBeanView.java
+++ b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/MBeanView.java
@@ -39,6 +39,7 @@ import org.eclipse.swt.layout.FormAttachment;
import org.eclipse.swt.layout.FormData;
import org.eclipse.swt.layout.FormLayout;
import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.Listener;
import org.eclipse.swt.widgets.TabFolder;
@@ -184,6 +185,15 @@ public class MBeanView extends ViewPart
}
TabFolder tabFolder = tabFolderMap.get(_mbean.getType());
+ /*
+ * This solution can be used if there are many versions of Qpid running. Otherwise
+ * there is no need to create a tabFolder everytime a bean is selected.
+ if (tabFolder != null && !tabFolder.isDisposed())
+ {
+ tabFolder.dispose();
+ }
+ tabFolder = createTabFolder();
+ */
if (tabFolder == null)
{
tabFolder = createTabFolder();
diff --git a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/OperationTabControl.java b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/OperationTabControl.java
index c95c9e2bd1..7298e287ae 100644
--- a/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/OperationTabControl.java
+++ b/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/OperationTabControl.java
@@ -255,7 +255,14 @@ public class OperationTabControl extends TabControl
String[] items = null;
if (param.getName().equals(Constants.QUEUE))
{
- items = ApplicationRegistry.getServerRegistry(_mbean).getQueueNames(_virtualHostName);
+ List<String> qList = ApplicationRegistry.getServerRegistry(_mbean).getQueueNames(_virtualHostName);
+ // Customization for AMQQueueMBean method Constants.OPERATION_MOVE_MESSAGES
+ if (_opData.getName().equals(Constants.OPERATION_MOVE_MESSAGES))
+ {
+ qList.remove(_mbean.getName());
+ }
+ // End of Customization
+ items = qList.toArray(new String[0]);
}
else if (param.getName().equals(Constants.EXCHANGE))
{
@@ -269,8 +276,14 @@ public class OperationTabControl extends TabControl
if (items != null)
{
org.eclipse.swt.widgets.List _list = new org.eclipse.swt.widgets.List(_paramsComposite, SWT.BORDER | SWT.V_SCROLL);
- int listSize = _form.getClientArea().height / 3;
+ int listSize = _form.getClientArea().height * 2 / 3;
int itemsHeight = items.length * (_list.getItemHeight() + 2);
+ // Set a min height for the list widget (set it to min 4 items)
+ if (items.length < 4)
+ {
+ itemsHeight = 4 * (_list.getItemHeight() + 2);
+ }
+
listSize = (listSize > itemsHeight) ? itemsHeight : listSize;
parameterPositionOffset = parameterPositionOffset + listSize;
formData.bottom = new FormAttachment(0, parameterPositionOffset);
@@ -296,7 +309,9 @@ public class OperationTabControl extends TabControl
formData.left = new FormAttachment(label, 5);
formData.right = new FormAttachment(valueWidth);
text.setLayoutData(formData);
+ // Listener to assign value to the parameter
text.addKeyListener(keyListener);
+ // Listener to verify if the entered key is valid
text.addVerifyListener(verifyListener);
text.setData(param);
}
@@ -358,9 +373,9 @@ public class OperationTabControl extends TabControl
formData.left = new FormAttachment(label, 5);
formData.right = new FormAttachment(valueWidth);
- Combo combo = new Combo(composite, SWT.READ_ONLY | SWT.DROP_DOWN);
- String[] items = ApplicationRegistry.getServerRegistry(_mbean).getQueueNames(_virtualHostName);
- combo.setItems(items);
+ Combo combo = new Combo(composite, SWT.READ_ONLY | SWT.DROP_DOWN);
+ List<String> qList = ApplicationRegistry.getServerRegistry(_mbean).getQueueNames(_virtualHostName);
+ combo.setItems(qList.toArray(new String[0]));
combo.add("Select Queue", 0);
combo.select(0);
combo.setLayoutData(formData);
@@ -513,6 +528,8 @@ public class OperationTabControl extends TabControl
{
if (controls[i] instanceof Combo)
((Combo)controls[i]).select(0);
+ if (controls[i] instanceof org.eclipse.swt.widgets.List)
+ ((org.eclipse.swt.widgets.List)controls[i]).deselectAll();
else if (controls[i] instanceof Text)
((Text)controls[i]).setText("");
else if (controls[i] instanceof Composite)
@@ -685,7 +702,15 @@ public class OperationTabControl extends TabControl
// Get the parameters widget and assign the text to the parameter
String strValue = text.getText();
ParameterData parameter = (ParameterData)text.getData();
- parameter.setValueFromString(strValue);
+ try
+ {
+ parameter.setValueFromString(strValue);
+ }
+ catch(Exception ex)
+ {
+ // Exception occured in setting parameter value.
+ // ignore it. The value will not be assigned to the parameter
+ }
}
}
@@ -727,12 +752,10 @@ public class OperationTabControl extends TabControl
{
public void verifyText(VerifyEvent event)
{
- Text text = (Text)event.widget;
- String string = event.text;
- char [] chars = new char [string.length ()];
- string.getChars (0, chars.length, chars, 0);
-
- ParameterData parameter = (ParameterData)text.getData();
+ ParameterData parameter = (ParameterData)event.widget.getData();
+ String text = event.text;
+ char [] chars = new char [text.length ()];
+ text.getChars(0, chars.length, chars, 0);
String type = parameter.getType();
if (type.equals("int") || type.equals("java.lang.Integer") ||
type.equals("long") || type.equals("java.lang.Long"))