public async Task <Result <FeedbackMessage> > SetCharacterRoleAccessAsync(IRole discordRole, RoleAccess access)
        {
            var getExistingRoleResult = await _characterRoles.GetCharacterRoleAsync
                                        (
                _context.GuildID.Value,
                discordRole.ID,
                this.CancellationToken
                                        );

            if (!getExistingRoleResult.IsSuccess)
            {
                return(Result <FeedbackMessage> .FromError(getExistingRoleResult));
            }

            var setRoleAccessResult = await _characterRoles.SetCharacterRoleAccessAsync
                                      (
                getExistingRoleResult.Entity,
                access,
                this.CancellationToken
                                      );

            return(!setRoleAccessResult.IsSuccess
                ? Result <FeedbackMessage> .FromError(setRoleAccessResult)
                : new FeedbackMessage("Character role access conditions set.", _feedback.Theme.Secondary));
        }
Exemplo n.º 2
0
            public async Task <RuntimeResult> SetCharacterRoleAccessAsync
            (
                IRole discordRole,
                RoleAccess access
            )
            {
                var getExistingRoleResult = await _characterRoles.GetCharacterRoleAsync(discordRole);

                if (!getExistingRoleResult.IsSuccess)
                {
                    return(getExistingRoleResult.ToRuntimeResult());
                }

                var setRoleAccessResult = await _characterRoles.SetCharacterRoleAccessAsync
                                          (
                    getExistingRoleResult.Entity,
                    access
                                          );

                if (!setRoleAccessResult.IsSuccess)
                {
                    return(setRoleAccessResult.ToRuntimeResult());
                }

                return(RuntimeCommandResult.FromSuccess("Character role access conditions set."));
            }
            public async Task SetCharacterRoleAccessAsync
            (
                IRole discordRole,
                RoleAccess access
            )
            {
                var getExistingRoleResult = await _characterRoles.GetCharacterRoleAsync(discordRole);

                if (!getExistingRoleResult.IsSuccess)
                {
                    await _feedback.SendErrorAsync(this.Context, getExistingRoleResult.ErrorReason);

                    return;
                }

                var setRoleAccessResult = await _characterRoles.SetCharacterRoleAccessAsync
                                          (
                    getExistingRoleResult.Entity,
                    access
                                          );

                if (!setRoleAccessResult.IsSuccess)
                {
                    await _feedback.SendErrorAsync(this.Context, setRoleAccessResult.ErrorReason);

                    return;
                }

                await _feedback.SendConfirmationAsync
                (
                    this.Context, "Character role access conditions set."
                );
            }