public JournalReplica(IEventSourcedService <TOperation> service, RuntimeTypeModel serializer = null) { if (service == null) { throw new ArgumentNullException(nameof(service)); } this.serializer = CreateSerializer(serializer ?? TypeModel.Create()); this.service = service; }
/// <summary> /// Creates and returns a new reliable journal /// </summary> /// <typeparam name="TOperation"></typeparam> /// <param name="service"></param> /// <param name="serializer"></param> /// <returns></returns> public static IStatefulServiceReplica Create <TOperation>(IEventSourcedService <TOperation> service, RuntimeTypeModel serializer = null) { return(new JournalReplica <TOperation>(service, serializer)); }
public ReliableJournal(OperationReplicator <TOperation> replicator, IEventSourcedService <TOperation> applier) { this.replicator = replicator; this.applier = applier; }