pro.jk.ejoker.eventing.IEventStore Maven / Gradle / Ivy
package pro.jk.ejoker.eventing;
import java.util.List;
import java.util.concurrent.Future;
public interface IEventStore {
public Future batchAppendAsync(List eventStreams);
public Future findAsync(String aggregateRootId, long version);
public Future findAsync(String aggregateRootId, String commandId);
/**
* @param aggregateRootId
* @param aggregateRootTypeName
* @param minVersion
* @param maxVersion
* @return
*/
public Future> queryAggregateEventsAsync(String aggregateRootId, String aggregateRootTypeName, long minVersion, long maxVersion);
}