Author: lquack
Date: Fri Jul 22 12:45:44 2016
New Revision: 1753781
URL: http://svn.apache.org/viewvc?rev=1753781&view=rev
Log:
QPID-7276: [Java Broker, WMC] Add UI for message delay to WMC.
Modified:
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/message/MessageInfo.java
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/message/MessageInfoImpl.java
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/message/MessageInstance.java
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/QueueEntryImpl.java
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractSystemMessageSource.java
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/queue/MockMessageInstance.java
qpid/java/trunk/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementNode.java
qpid/java/trunk/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementResponse.java
qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/addQueue.html
qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/editQueue.html
qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Queue.js
qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/showMessage.html
qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/showQueue.html
Modified:
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/message/MessageInfo.java
URL:
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/message/MessageInfo.java?rev=1753781&r1=1753780&r2=1753781&view=diff
==============================================================================
---
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/message/MessageInfo.java
(original)
+++
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/message/MessageInfo.java
Fri Jul 22 12:45:44 2016
@@ -20,6 +20,7 @@
*/
package org.apache.qpid.server.message;
+import java.util.Date;
import java.util.Map;
import org.apache.qpid.server.model.ManagedAttributeValueType;
@@ -46,4 +47,5 @@ public interface MessageInfo
String getType();
String getUserId();
Map<String,Object> getHeaders();
+ Date getNotValidBefore();
}
Modified:
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/message/MessageInfoImpl.java
URL:
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/message/MessageInfoImpl.java?rev=1753781&r1=1753780&r2=1753781&view=diff
==============================================================================
---
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/message/MessageInfoImpl.java
(original)
+++
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/message/MessageInfoImpl.java
Fri Jul 22 12:45:44 2016
@@ -21,6 +21,7 @@
package org.apache.qpid.server.message;
import java.util.Collections;
+import java.util.Date;
import java.util.LinkedHashMap;
import java.util.Map;
@@ -46,6 +47,7 @@ public class MessageInfoImpl implements
private final long _id;
private final Map<String, Object> _headers;
private final String _initialRoutingAddress;
+ private final Date _notValidBefore;
public MessageInfoImpl(final MessageInstance instance, final boolean
includeHeaders)
{
@@ -71,15 +73,19 @@ public class MessageInfoImpl implements
: messageHeader.getTimestamp();
_type = messageHeader.getType();
_userId = messageHeader.getUserId();
- _state = instance.isAvailable()
- ? "Available"
- : instance.isAcquired()
- ? "Acquired"
- : "";
+ if (instance.isAvailable())
+ {
+ _state = instance.isHeld() ? "Held" : "Available";
+ }
+ else
+ {
+ _state = instance.isAcquired() ? "Acquired" : "";
+ }
_deliveryCount = instance.getDeliveryCount();
_size = message.getSize();
_id = message.getMessageNumber();
_initialRoutingAddress = message.getInitialRoutingAddress();
+ _notValidBefore = new Date(messageHeader.getNotValidBefore());
if(includeHeaders)
{
@@ -211,6 +217,12 @@ public class MessageInfoImpl implements
return _headers;
}
+ @Override
+ public Date getNotValidBefore()
+ {
+ return new Date(_notValidBefore.getTime());
+ }
+
public String getInitialRoutingAddress()
{
return _initialRoutingAddress;
Modified:
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/message/MessageInstance.java
URL:
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/message/MessageInstance.java?rev=1753781&r1=1753780&r2=1753781&view=diff
==============================================================================
---
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/message/MessageInstance.java
(original)
+++
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/message/MessageInstance.java
Fri Jul 22 12:45:44 2016
@@ -258,6 +258,8 @@ public interface MessageInstance
boolean isDeleted();
+ boolean isHeld();
+
ServerMessage getMessage();
InstanceProperties getInstanceProperties();
Modified:
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/QueueEntryImpl.java
URL:
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/QueueEntryImpl.java?rev=1753781&r1=1753780&r2=1753781&view=diff
==============================================================================
---
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/QueueEntryImpl.java
(original)
+++
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/queue/QueueEntryImpl.java
Fri Jul 22 12:45:44 2016
@@ -691,6 +691,12 @@ public abstract class QueueEntryImpl imp
return _state.isDispensed();
}
+ @Override
+ public boolean isHeld()
+ {
+ return checkHeld(System.currentTimeMillis());
+ }
+
public int getDeliveryCount()
{
return _deliveryCount == -1 ? 0 : _deliveryCount;
Modified:
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractSystemMessageSource.java
URL:
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractSystemMessageSource.java?rev=1753781&r1=1753780&r2=1753781&view=diff
==============================================================================
---
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractSystemMessageSource.java
(original)
+++
qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractSystemMessageSource.java
Fri Jul 22 12:45:44 2016
@@ -528,6 +528,12 @@ public abstract class AbstractSystemMess
}
@Override
+ public boolean isHeld()
+ {
+ return false;
+ }
+
+ @Override
public ServerMessage getMessage()
{
return _message;
Modified:
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/queue/MockMessageInstance.java
URL:
http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/queue/MockMessageInstance.java?rev=1753781&r1=1753780&r2=1753781&view=diff
==============================================================================
---
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/queue/MockMessageInstance.java
(original)
+++
qpid/java/trunk/broker-core/src/test/java/org/apache/qpid/server/queue/MockMessageInstance.java
Fri Jul 22 12:45:44 2016
@@ -197,6 +197,13 @@ public class MockMessageInstance impleme
{
return false;
}
+
+ @Override
+ public boolean isHeld()
+ {
+ return false;
+ }
+
@Override
public int getDeliveryCount()
{
Modified:
qpid/java/trunk/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementNode.java
URL:
http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementNode.java?rev=1753781&r1=1753780&r2=1753781&view=diff
==============================================================================
---
qpid/java/trunk/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementNode.java
(original)
+++
qpid/java/trunk/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementNode.java
Fri Jul 22 12:45:44 2016
@@ -1235,6 +1235,12 @@ class ManagementNode implements MessageS
}
@Override
+ public boolean isHeld()
+ {
+ return false;
+ }
+
+ @Override
public ServerMessage getMessage()
{
return _message;
Modified:
qpid/java/trunk/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementResponse.java
URL:
http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementResponse.java?rev=1753781&r1=1753780&r2=1753781&view=diff
==============================================================================
---
qpid/java/trunk/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementResponse.java
(original)
+++
qpid/java/trunk/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementResponse.java
Fri Jul 22 12:45:44 2016
@@ -237,6 +237,12 @@ class ManagementResponse implements Mess
}
@Override
+ public boolean isHeld()
+ {
+ return false;
+ }
+
+ @Override
public ServerMessage getMessage()
{
return _message;
Modified:
qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/addQueue.html
URL:
http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/addQueue.html?rev=1753781&r1=1753780&r2=1753781&view=diff
==============================================================================
---
qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/addQueue.html
(original)
+++
qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/addQueue.html
Fri Jul 22 12:45:44 2016
@@ -326,6 +326,18 @@
title: 'Controls where a shared groups feature
is enabled'"/>
</div>
</div>
+ <div class="clear">
+ <div class="formLabel-labelCell">Hold on Publish
Enabled?</div>
+ <div class="formLabel-controlCell">
+ <input type="checkbox"
id="formAddQueue.holdOnPublishEnabled"
+ dojoType="dijit.form.CheckBox"
+ data-dojo-props="
+ name: 'holdOnPublishEnabled',
+ value: 'holdOnPublishEnabled',
+ checked: false,
+ title: 'If enabled the messages on the queue
will be inspected for the x-qpid-not-valid-before header/annotation'"/>
+ </div>
+ </div>
</fieldset>
<div class="clear"></div>
</div>
Modified:
qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/editQueue.html
URL:
http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/editQueue.html?rev=1753781&r1=1753780&r2=1753781&view=diff
==============================================================================
---
qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/editQueue.html
(original)
+++
qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/editQueue.html
Fri Jul 22 12:45:44 2016
@@ -281,6 +281,17 @@
trim: true"/>
</div>
</div>
+ <div class="clear">
+ <div class="formLabel-labelCell">Hold on Publish
Enabled?</div>
+ <div class="formLabel-controlCell">
+ <input type="checkbox"
id="formEditQueue.holdOnPublishEnabled"
+ dojoType="dijit.form.CheckBox"
+ data-dojo-props="
+ name: 'holdOnPublishEnabled',
+ value: 'holdOnPublishEnabled',
+ title: 'If enabled the messages on the queue
will be inspected for the x-qpid-not-valid-before header/annotation'"/>
+ </div>
+ </div>
</fieldset>
<div class="clear"></div>
</div>
Modified:
qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Queue.js
URL:
http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Queue.js?rev=1753781&r1=1753780&r2=1753781&view=diff
==============================================================================
---
qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Queue.js
(original)
+++
qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Queue.js
Fri Jul 22 12:45:44 2016
@@ -402,6 +402,7 @@ define(["dojo/_base/declare",
"queueFlowResumeSizeBytes",
"queueFlowControlSizeBytes",
"maximumDeliveryAttempts",
+ "holdOnPublishEnabled",
"oldestMessageAge"]);
that.queueData = {}
@@ -498,6 +499,7 @@ define(["dojo/_base/declare",
var maximumDeliveryAttempts =
this.queueData["maximumDeliveryAttempts"];
this.maximumDeliveryAttempts.innerHTML =
entities.encode(String(maximumDeliveryAttempts == 0 ? "" :
maximumDeliveryAttempts));
+ this.holdOnPublishEnabled.innerHTML =
entities.encode(String(this.queueData["holdOnPublishEnabled"]));
};
QueueUpdater.prototype.update = function (callback)
Modified:
qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/showMessage.html
URL:
http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/showMessage.html?rev=1753781&r1=1753780&r2=1753781&view=diff
==============================================================================
---
qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/showMessage.html
(original)
+++
qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/showMessage.html
Fri Jul 22 12:45:44 2016
@@ -52,6 +52,10 @@
</td><td><span class="message-arrivalTime datetime"></span></td>
</tr>
<tr style="margin-bottom: 4pt">
+ <td style="width: 10em; vertical-align: top"><span
style="font-weight: bold;">Not Valid Before:</span></td>
+ <td><span class="message-notValidBefore datetime"></span></td>
+ </tr>
+ <tr style="margin-bottom: 4pt">
<td style="width: 10em; vertical-align: top"><span
style="font-weight: bold;">Expiration:</span></td>
<td><span class="message-expirationTime datetime"></span></td>
</tr>
Modified:
qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/showQueue.html
URL:
http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/showQueue.html?rev=1753781&r1=1753780&r2=1753781&view=diff
==============================================================================
---
qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/showQueue.html
(original)
+++
qpid/java/trunk/broker-plugins/management-http/src/main/java/resources/showQueue.html
Fri Jul 22 12:45:44 2016
@@ -119,6 +119,10 @@
<div class="formLabel-labelCell">Maximum Delivery Attempts:</div>
<div class="maximumDeliveryAttempts"></div>
</div>
+ <div class="clear">
+ <div class="formLabel-labelCell">Hold on Publish Enabled:</div>
+ <div class="holdOnPublishEnabled"></div>
+ </div>
<div class="clear messageGroups">
<div class="clear">
<div class="messageGroupKeyLabel formLabel-labelCell ">Message
Group Key:</div>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]