Example #1
0
        // Commands

        public virtual async Task <ChatUser> SetUserNameAsync(
            IChatService.SetUserNameCommand command, CancellationToken cancellationToken = default)
        {
            var(name, session) = command;
            var      context = CommandContext.GetCurrent();
            ChatUser?user;

            if (Computed.IsInvalidating())
            {
                user = context.Items.Get <OperationItem <ChatUser> >().Value;
                GetUserAsync(user.Id, cancellationToken).Ignore();
                PseudoGetUserAsync(user.AuthUserId).Ignore();
                if (context.Items.TryGet <OperationItem <bool> >()?.Value ?? false)
                {
                    GetUserCountAsync(cancellationToken).Ignore();
                }
                return(default !);
Example #2
0
 public Task <ChatUser> SetUserNameAsync([FromBody] IChatService.SetUserNameCommand command, CancellationToken cancellationToken = default)
 {
     command.UseDefaultSession(_sessionResolver);
     return(_chat.SetUserNameAsync(command, cancellationToken));
 }