public Task <IProjectionDefinition> RestoreFromHistoryAsync(Type projectionType) { if (Commits.Count <= 0 && ReferenceEquals(null, GetSnapshot().State)) { return(Task.FromResult(default(IProjectionDefinition))); } IProjectionDefinition projection = (IProjectionDefinition)FastActivator.CreateInstance(projectionType, true); return(RestoreFromHistoryMamamiaAsync(projection)); }
public IProjectionGetResult <IProjectionDefinition> RestoreFromHistory(Type projectionType) { if (commits.Count <= 0 && ReferenceEquals(null, snapshot.State)) { return(ProjectionGetResult <IProjectionDefinition> .NoResult); } IProjectionDefinition projection = (IProjectionDefinition)FastActivator.CreateInstance(projectionType, true); return(RestoreFromHistoryMamamia(projection)); }
public IProjectionDefinition RestoreFromHistory(Type projectionType) { if (Commits.Count <= 0 && ReferenceEquals(null, GetSnapshot().State)) { return(null); } IProjectionDefinition projection = (IProjectionDefinition)FastActivator.CreateInstance(projectionType, true); return(RestoreFromHistoryMamamia(projection)); }
public static T State <T>(this IProjectionDefinition projection) where T : class, new() { return((T)(projection.State)); }