Ejemplo n.º 1
0
        /// <summary>
        /// Gets the current stream revision
        /// </summary>
        /// <param name="bucket">Bucket identifier</param>
        /// <param name="streamId">Unique stream identifier</param>
        /// <param name="atBucketRevision">Max bucket revision</param>
        /// <returns>Current stream revision, otherwise 0</returns>
        public static async Task <int> GetStreamRevisionAsync <T>(this IBucket <T> bucket, Guid streamId, long?atBucketRevision = null)
        {
            var lastCommit = await bucket.GetLastCommitAsync(streamId, atBucketRevision)
                             .ConfigureAwait(false);

            return(lastCommit?.StreamRevisionEnd ?? 0);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Gets the current bucket revision
        /// </summary>
        /// <param name="bucket">Bucket identifier</param>
        /// <returns>Current bucket revision, otherwise 0</returns>
        public static async Task <long> GetBucketRevisionAsync <T>(this IBucket <T> bucket)
        {
            var lastCommit = await bucket.GetLastCommitAsync()
                             .ConfigureAwait(false);

            return(lastCommit?.BucketRevision ?? 0);
        }