Example usage for org.springframework.integration.store MessageGroup setLastModified

List of usage examples for org.springframework.integration.store MessageGroup setLastModified

Introduction

In this page you can find the example usage for org.springframework.integration.store MessageGroup setLastModified.

Prototype

void setLastModified(long lastModified);

Source Link

Usage

From source file:org.springframework.integration.jdbc.store.JdbcMessageStore.java

@Override
public MessageGroup getMessageGroup(Object groupId) {
    String key = getKey(groupId);
    final AtomicReference<Date> createDate = new AtomicReference<Date>();
    final AtomicReference<Date> updateDate = new AtomicReference<Date>();
    final AtomicReference<Boolean> completeFlag = new AtomicReference<Boolean>();
    final AtomicReference<Integer> lastReleasedSequenceRef = new AtomicReference<Integer>();

    this.jdbcTemplate.query(getQuery(Query.GET_GROUP_INFO), rs -> {
        updateDate.set(rs.getTimestamp("UPDATED_DATE"));

        createDate.set(rs.getTimestamp("CREATED_DATE"));

        completeFlag.set(rs.getInt("COMPLETE") > 0);

        lastReleasedSequenceRef.set(rs.getInt("LAST_RELEASED_SEQUENCE"));
    }, key, this.region);

    if (createDate.get() == null && updateDate.get() == null) {
        return new SimpleMessageGroup(groupId);
    }//from  w w  w. j ava2s .c om

    MessageGroup messageGroup = getMessageGroupFactory().create(this, groupId, createDate.get().getTime(),
            completeFlag.get());
    messageGroup.setLastModified(updateDate.get().getTime());
    messageGroup.setLastReleasedMessageSequenceNumber(lastReleasedSequenceRef.get());
    return messageGroup;
}