com.obsidiandynamics.blackstrom.model.FluentMessage Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of blackstrom-core Show documentation
Show all versions of blackstrom-core Show documentation
Transactional event fabric for the JVM
The newest version!
package com.obsidiandynamics.blackstrom.model;
import com.obsidiandynamics.func.*;
public abstract class FluentMessage> extends Message {
protected FluentMessage(String xid, long timestamp) {
super(xid, timestamp);
}
public final M withMessageId(MessageId messageId) {
setMessageId(messageId);
return self();
}
public final M withSource(String source) {
setSource(source);
return self();
}
public final M withShardKey(String shardKey) {
setShardKey(shardKey);
return self();
}
public final M withShard(int shard) {
setShard(shard);
return self();
}
public final M inResponseTo(Message origin) {
respondTo(origin);
return self();
}
private M self() {
return Classes.cast(this);
}
}