Example #1
0
        /// <summary>
        /// Отправить выход из системы.
        /// </summary>
        /// <param name="input">Ввод.</param>
        /// <returns>Задача с выводом.</returns>
        public async Task <ModIdentityServerWebMvcPartAccountJobLogoutPostOutput> PostLogout(
            ModIdentityServerWebMvcPartAccountJobLogoutPostInput input
            )
        {
            input.Status = await ProcessLogoutPost(
                input.Model,
                input.Events,
                input.SignInManager,
                input.HttpContext,
                input.Interaction,
                input.User
                ).CoreBaseExtTaskWithCurrentCulture(false);

            return(await ProduceLogoutPost(
                       input.Model.LogoutId,
                       input.HttpContext,
                       input.Interaction,
                       input.User
                       ).CoreBaseExtTaskWithCurrentCulture(false));
        }
Example #2
0
            ) BuildActionLogoutPost(ModIdentityServerWebMvcPartAccountJobLogoutPostInput input)
        {
            input.Events        = ExtEvents;
            input.Interaction   = ExtInteraction;
            input.SignInManager = ExtSignInManager;

            var job = AppJobLogoutPost;

            Task <ModIdentityServerWebMvcPartAccountJobLogoutPostOutput> execute() => job.Execute(input);

            void onSuccess(ModIdentityServerWebMvcPartAccountJobLogoutPostResult result)
            {
                job.OnSuccess(ExtLogger, result, input);
            }

            void onError(Exception ex, ModIdentityServerWebMvcPartAccountJobLogoutPostResult result)
            {
                job.OnError(ex, ExtLogger, result);
            }

            return(execute, onSuccess, onError);
        }