@Override public MessageGroupMetadata getGroupMetadata(Object groupId) { return new MessageGroupMetadata(getMessageGroup(groupId)); }
@Override public void setLastReleasedSequenceNumberForGroup(Object groupId, int sequenceNumber) { Assert.notNull(groupId, "'groupId' must not be null"); MessageGroupMetadata metadata = getGroupMetadata(groupId); if (metadata == null) { SimpleMessageGroup messageGroup = new SimpleMessageGroup(groupId); metadata = new MessageGroupMetadata(messageGroup); } metadata.setLastReleasedMessageSequenceNumber(sequenceNumber); metadata.setLastModified(System.currentTimeMillis()); doStore(this.groupPrefix + groupId, metadata); }
@Override public void addMessagesToGroup(Object groupId, Message<?>... messages) { Assert.notNull(groupId, "'groupId' must not be null"); Assert.notNull(messages, "'messages' must not be null"); MessageGroupMetadata metadata = getGroupMetadata(groupId); SimpleMessageGroup group = null; if (metadata == null) { group = new SimpleMessageGroup(groupId); } for (Message<?> message : messages) { doAddMessage(message); if (metadata != null) { metadata.add(message.getHeaders().getId()); } else { group.add(message); } } if (group != null) { metadata = new MessageGroupMetadata(group); // When the group is new reuse "create time" as a "last modified" metadata.setLastModified(group.getTimestamp()); } else { metadata.setLastModified(System.currentTimeMillis()); } // store MessageGroupMetadata built from enriched MG doStore(this.groupPrefix + groupId, metadata); }
@Override public MessageGroupMetadata getGroupMetadata(Object groupId) { return new MessageGroupMetadata(getMessageGroup(groupId)); }
@Override public void setLastReleasedSequenceNumberForGroup(Object groupId, int sequenceNumber) { Assert.notNull(groupId, "'groupId' must not be null"); MessageGroupMetadata metadata = getGroupMetadata(groupId); if (metadata == null) { SimpleMessageGroup messageGroup = new SimpleMessageGroup(groupId); metadata = new MessageGroupMetadata(messageGroup); } metadata.setLastReleasedMessageSequenceNumber(sequenceNumber); metadata.setLastModified(System.currentTimeMillis()); doStore(this.groupPrefix + groupId, metadata); }
@Override public void addMessagesToGroup(Object groupId, Message<?>... messages) { Assert.notNull(groupId, "'groupId' must not be null"); Assert.notNull(messages, "'messages' must not be null"); MessageGroupMetadata metadata = getGroupMetadata(groupId); SimpleMessageGroup group = null; if (metadata == null) { group = new SimpleMessageGroup(groupId); } for (Message<?> message : messages) { doAddMessage(message); if (metadata != null) { metadata.add(message.getHeaders().getId()); } else { group.add(message); } } if (group != null) { metadata = new MessageGroupMetadata(group); // When the group is new reuse "create time" as a "last modified" metadata.setLastModified(group.getTimestamp()); } else { metadata.setLastModified(System.currentTimeMillis()); } // store MessageGroupMetadata built from enriched MG doStore(this.groupPrefix + groupId, metadata); }