Exemplo n.º 1
0
        public static object SetObjectStatusAsync(this IObjectState state,
                                                  Func <object, object> newStatusFactory)
        {
            state.NotNull(nameof(state));
            newStatusFactory.NotNull(nameof(newStatusFactory));

            var newStatus = state.GetObjectStatus();

            return(state.SetObjectStatus(newStatusFactory.Invoke(newStatus)));
        }
Exemplo n.º 2
0
        public static async ValueTask <object> SetObjectStatusAsync(this IObjectState state,
                                                                    Func <object, object> newStatusFactory, CancellationToken cancellationToken = default)
        {
            state.NotNull(nameof(state));
            newStatusFactory.NotNull(nameof(newStatusFactory));

            var newStatus = await state.GetObjectStatusAsync(cancellationToken).ConfigureAwait();

            return(await state.SetObjectStatusAsync(newStatusFactory.Invoke(newStatus), cancellationToken)
                   .ConfigureAwait());
        }