You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by or...@apache.org on 2017/08/14 12:06:45 UTC
qpid-broker-j git commit: QPID-7872: [Java Broker] [AMQP 1.0] Message
expiry should be driven from ttl header only
Repository: qpid-broker-j
Updated Branches:
refs/heads/master 6837975b7 -> b160fa731
QPID-7872: [Java Broker] [AMQP 1.0] Message expiry should be driven from ttl header only
Project: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/commit/b160fa73
Tree: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/tree/b160fa73
Diff: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/diff/b160fa73
Branch: refs/heads/master
Commit: b160fa7318b77e2bcb1d26d699535f3d4c56828e
Parents: 6837975
Author: Alex Rudyy <or...@apache.org>
Authored: Mon Aug 14 12:10:12 2017 +0100
Committer: Alex Rudyy <or...@apache.org>
Committed: Mon Aug 14 12:10:12 2017 +0100
----------------------------------------------------------------------
.../server/protocol/v1_0/MessageMetaData_1_0.java | 15 ++-------------
.../PropertyConverter_v1_0_to_InternalTest.java | 16 ++++++++++++++++
2 files changed, 18 insertions(+), 13 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/b160fa73/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/MessageMetaData_1_0.java
----------------------------------------------------------------------
diff --git a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/MessageMetaData_1_0.java b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/MessageMetaData_1_0.java
index b9b93df..1564fb1 100755
--- a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/MessageMetaData_1_0.java
+++ b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/MessageMetaData_1_0.java
@@ -507,19 +507,8 @@ public class MessageMetaData_1_0 implements StorableMessageMetaData
@Override
public long getExpiration()
{
- final Date absoluteExpiryTime =
- _propertiesSection == null ? null : _propertiesSection.getValue().getAbsoluteExpiryTime();
- if (absoluteExpiryTime != null)
- {
- return absoluteExpiryTime.getTime();
- }
- else
- {
- final Date creationTime =
- _propertiesSection == null ? null : _propertiesSection.getValue().getCreationTime();
- final UnsignedInteger ttl = _headerSection == null ? null : _headerSection.getValue().getTtl();
- return ttl == null || creationTime == null ? 0L : ttl.longValue() + creationTime.getTime();
- }
+ final UnsignedInteger ttl = _headerSection == null ? null : _headerSection.getValue().getTtl();
+ return ttl == null ? 0L : ttl.longValue() + getArrivalTime();
}
@Override
http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/b160fa73/broker-plugins/amqp-1-0-protocol/src/test/java/org/apache/qpid/server/protocol/v1_0/PropertyConverter_v1_0_to_InternalTest.java
----------------------------------------------------------------------
diff --git a/broker-plugins/amqp-1-0-protocol/src/test/java/org/apache/qpid/server/protocol/v1_0/PropertyConverter_v1_0_to_InternalTest.java b/broker-plugins/amqp-1-0-protocol/src/test/java/org/apache/qpid/server/protocol/v1_0/PropertyConverter_v1_0_to_InternalTest.java
index e8a0634..ed7e5e6 100644
--- a/broker-plugins/amqp-1-0-protocol/src/test/java/org/apache/qpid/server/protocol/v1_0/PropertyConverter_v1_0_to_InternalTest.java
+++ b/broker-plugins/amqp-1-0-protocol/src/test/java/org/apache/qpid/server/protocol/v1_0/PropertyConverter_v1_0_to_InternalTest.java
@@ -39,6 +39,7 @@ import org.apache.qpid.server.model.NamedAddressSpace;
import org.apache.qpid.server.protocol.v1_0.type.Binary;
import org.apache.qpid.server.protocol.v1_0.type.Symbol;
import org.apache.qpid.server.protocol.v1_0.type.UnsignedByte;
+import org.apache.qpid.server.protocol.v1_0.type.UnsignedInteger;
import org.apache.qpid.server.protocol.v1_0.type.UnsignedLong;
import org.apache.qpid.server.protocol.v1_0.type.messaging.ApplicationProperties;
import org.apache.qpid.server.protocol.v1_0.type.messaging.Data;
@@ -113,6 +114,21 @@ public class PropertyConverter_v1_0_to_InternalTest extends QpidTestCase
InternalMessage convertedMessage = _messageConverter.convert(originalMessage, _addressSpace);
+ assertEquals("Unexpected expiration", 0, convertedMessage.getMessageHeader().getExpiration());
+ }
+
+ public void testTTLConversion()
+ {
+ long ttl = 10000;
+ long arrivalTime = System.currentTimeMillis();
+ long expiryTime = arrivalTime + ttl;
+ final Header header = new Header();
+ header.setTtl(UnsignedInteger.valueOf(ttl));
+
+ Message_1_0 originalMessage = createTestMessage(header, arrivalTime);
+
+ InternalMessage convertedMessage = _messageConverter.convert(originalMessage, _addressSpace);
+
assertEquals("Unexpected expiration", expiryTime, convertedMessage.getMessageHeader().getExpiration());
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org