Author: robbie
Date: Tue Jul 21 09:13:06 2009
New Revision: 796204
URL: http://svn.apache.org/viewvc?rev=796204&view=rev
Log:
QPID-1981: Expose copyMessages() queue operation through the JMX MBean interface
Modified:
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/AMQQueueMBean.java
qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedQueue.java
Modified:
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/AMQQueueMBean.java
URL:
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/AMQQueueMBean.java?rev=796204&r1=796203&r2=796204&view=diff
==============================================================================
---
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/AMQQueueMBean.java
(original)
+++
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/AMQQueueMBean.java
Tue Jul 21 09:13:06 2009
@@ -501,6 +501,23 @@
}
/**
+ * @see ManagedQueue#copyMessages
+ * @param fromMessageId
+ * @param toMessageId
+ * @param toQueueName
+ * @throws JMException
+ */
+ public void copyMessages(long fromMessageId, long toMessageId, String
toQueueName) throws JMException
+ {
+ if ((fromMessageId > toMessageId) || (fromMessageId < 1))
+ {
+ throw new OperationsException("\"From MessageId\" should be
greater than 0 and less than \"To MessageId\"");
+ }
+
+ _queue.copyMessagesToAnotherQueue(fromMessageId, toMessageId,
toQueueName, _storeContext);
+ }
+
+ /**
* returns Notifications sent by this MBean.
*/
@Override
Modified:
qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedQueue.java
URL:
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedQueue.java?rev=796204&r1=796203&r2=796204&view=diff
==============================================================================
---
qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedQueue.java
(original)
+++
qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedQueue.java
Tue Jul 21 09:13:06 2009
@@ -298,4 +298,20 @@
void deleteMessages(@MBeanOperationParameter(name="from MessageId",
description="from MessageId")long fromMessageId,
@MBeanOperationParameter(name="to MessageId",
description="to MessageId")long toMessageId)
throws IOException, JMException;
+
+ /**
+ * Copies the messages in given range of AMQ message Ids to a given Queue.
+ * @param fromMessageId first in the range of message ids
+ * @param toMessageId last in the range of message ids
+ * @param toQueue where the messages are to be copied
+ * @throws IOException
+ * @throws JMException
+ */
+ @MBeanOperation(name="copyMessages",
+ description="Copies a range of messages to a specified
queue",
+ impact= MBeanOperationInfo.ACTION)
+ void copyMessages(@MBeanOperationParameter(name="from MessageId",
description="from MessageId")long fromMessageId,
+ @MBeanOperationParameter(name="to MessageId",
description="to MessageId")long toMessageId,
+ @MBeanOperationParameter(name= ManagedQueue.TYPE,
description="to Queue Name")String toQueue)
+ throws IOException, JMException;
}
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]