Fixed missed store/load of guid for StoredPublishEvent
This commit is contained in:
@@ -81,14 +81,8 @@ public interface IMessagesStore {
|
||||
*/
|
||||
List<PublishEvent> listMessagesInSession(Collection<String> guids);
|
||||
|
||||
// void removeMessage(String clientID, Integer packetID);
|
||||
|
||||
void dropMessagesInSession(String clientID);
|
||||
|
||||
// void cleanTemporaryPublish(String clientID, int packetID);
|
||||
|
||||
// void storeTemporaryPublish(PublishEvent evt, String clientID, int packetID);
|
||||
|
||||
/**
|
||||
* Return the next valid packetIdentifer for the given client session.
|
||||
* */
|
||||
|
||||
@@ -33,6 +33,7 @@ public class StoredPublishEvent implements Serializable {
|
||||
String m_clientID;
|
||||
//Optional attribute, available only fo QoS 1 and 2
|
||||
Integer m_msgID;
|
||||
String m_guid;
|
||||
|
||||
public StoredPublishEvent(PublishEvent wrapped) {
|
||||
m_topic = wrapped.getTopic();
|
||||
@@ -45,6 +46,7 @@ public class StoredPublishEvent implements Serializable {
|
||||
m_message = new byte[buffer.remaining()];
|
||||
buffer.get(m_message);
|
||||
buffer.rewind();
|
||||
m_guid = wrapped.getGuid();
|
||||
}
|
||||
|
||||
public String getTopic() {
|
||||
@@ -70,4 +72,8 @@ public class StoredPublishEvent implements Serializable {
|
||||
public Integer getMessageID() {
|
||||
return m_msgID;
|
||||
}
|
||||
|
||||
public String getGuid() {
|
||||
return m_guid;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -428,7 +428,9 @@ public class MapDBPersistentStore implements IMessagesStore, ISessionsStore {
|
||||
byte[] message = evt.getMessage();
|
||||
ByteBuffer bbmessage = ByteBuffer.wrap(message);
|
||||
//bbmessage.flip();
|
||||
return new PublishEvent(evt.getTopic(), evt.getQos(),
|
||||
PublishEvent pubEvt = new PublishEvent(evt.getTopic(), evt.getQos(),
|
||||
bbmessage, evt.isRetain(), evt.getClientID(), evt.getMessageID());
|
||||
pubEvt.setGuid(evt.getGuid());
|
||||
return pubEvt;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user