AMQNET-595: Set and get group-id message property field
diff --git a/src/NMS.AMQP/Message/Facade/INmsMessageFacade.cs b/src/NMS.AMQP/Message/Facade/INmsMessageFacade.cs
index 6520079..34bffd9 100644
--- a/src/NMS.AMQP/Message/Facade/INmsMessageFacade.cs
+++ b/src/NMS.AMQP/Message/Facade/INmsMessageFacade.cs
@@ -37,6 +37,7 @@
DateTime NMSTimestamp { get; set; }
string NMSType { get; set; }
string GroupId { get; set; }
+ uint GroupSequence { get; set; }
DateTime Expiration { get; set; }
sbyte JmsMsgType { get; }
INmsMessageFacade Copy();
diff --git a/src/NMS.AMQP/Message/NmsMessage.cs b/src/NMS.AMQP/Message/NmsMessage.cs
index d78b300..9f9c1c9 100644
--- a/src/NMS.AMQP/Message/NmsMessage.cs
+++ b/src/NMS.AMQP/Message/NmsMessage.cs
@@ -94,13 +94,19 @@
get => Facade.NMSType;
set => Facade.NMSType = value;
}
-
- public string NMSGroupId
+
+ public string NMSXGroupId
{
get => Facade.GroupId;
set => Facade.GroupId = value;
}
+ public int NMSXGroupSeq
+ {
+ get => (int) Facade.GroupSequence;
+ set => Facade.GroupSequence = (uint) value;
+ }
+
public NmsAcknowledgeCallback NmsAcknowledgeCallback { get; set; }
public virtual bool IsReadOnly { get; set; }
diff --git a/test/Apache-NMS-AMQP-Test/Message/Facade/NmsTestMessageFacade.cs b/test/Apache-NMS-AMQP-Test/Message/Facade/NmsTestMessageFacade.cs
index 1ebbc6b..4f04440 100644
--- a/test/Apache-NMS-AMQP-Test/Message/Facade/NmsTestMessageFacade.cs
+++ b/test/Apache-NMS-AMQP-Test/Message/Facade/NmsTestMessageFacade.cs
@@ -74,6 +74,7 @@
public DateTime NMSTimestamp { get; set; }
public string NMSType { get; set; }
public string GroupId { get; set; }
+ public uint GroupSequence { get; set; }
public DateTime Expiration { get; set; }
public sbyte JmsMsgType { get; }
public INmsMessageFacade Copy()
diff --git a/test/Apache-NMS-AMQP-Test/Message/NmsMessageTest.cs b/test/Apache-NMS-AMQP-Test/Message/NmsMessageTest.cs
index 3256ccc..308bc53 100644
--- a/test/Apache-NMS-AMQP-Test/Message/NmsMessageTest.cs
+++ b/test/Apache-NMS-AMQP-Test/Message/NmsMessageTest.cs
@@ -401,11 +401,21 @@
{
NmsMessage msg = factory.CreateMessage();
- msg.Properties.SetString("NMSGroupId", "testGroupId");
+ msg.Properties.SetString("NMSXGroupId", "testGroupId");
Assert.AreEqual(msg.Facade.GroupId, "testGroupId");
}
+ [Test]
+ public void TestSetAndGetGroupSequence()
+ {
+ NmsMessage msg = factory.CreateMessage();
+
+ msg.Properties.SetInt("NMSXGroupSeq", 10);
+
+ Assert.AreEqual(msg.Facade.GroupSequence, 10);
+ }
+
// TODO: Test conversion for other properties
[Test]