All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.enodeframework.eventing.IEventStore Maven / Gradle / Ivy

There is a newer version: 1.1.10
Show newest version
package org.enodeframework.eventing;

import java.util.List;
import java.util.concurrent.CompletableFuture;

public interface IEventStore {
    /**
     * Batch append the given event streams to the event store async.
     */
    CompletableFuture batchAppendAsync(List eventStreams);

    /**
     * Find a single event stream by aggregateRootId and version async.
     */
    CompletableFuture findAsync(String aggregateRootId, int version);

    /**
     * Find a single event stream by aggregateRootId and commandId async.
     */
    CompletableFuture findAsync(String aggregateRootId, String commandId);

    /**
     * Query a range of event streams of a single aggregate from event store async.
     */
    CompletableFuture> queryAggregateEventsAsync(String aggregateRootId, String aggregateRootTypeName, int minVersion, int maxVersion);

    /**
     * Get the current published version for the given aggregate.
     */
    CompletableFuture getPublishedVersionAsync(String aggregateRootTypeName, String aggregateRootId);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy