private async Task <IHttpActionResult> CreateAuthorizeResponseAsync(ValidatedAuthorizeRequest request) { var response = await _responseGenerator.CreateResponseAsync(request); if (request.ResponseMode == Constants.ResponseModes.Query || request.ResponseMode == Constants.ResponseModes.Fragment) { Logger.DebugFormat("Adding client {0} to client list cookie for subject {1}", request.ClientId, request.Subject.GetSubjectId()); _clientListCookie.AddClient(request.ClientId); await RaiseSuccessEventAsync(); return(new AuthorizeRedirectResult(response, _options)); } if (request.ResponseMode == Constants.ResponseModes.FormPost) { Logger.DebugFormat("Adding client {0} to client list cookie for subject {1}", request.ClientId, request.Subject.GetSubjectId()); _clientListCookie.AddClient(request.ClientId); await RaiseSuccessEventAsync(); return(new AuthorizeFormPostResult(response, Request)); } Logger.Error("Unsupported response mode. Aborting."); throw new InvalidOperationException("Unsupported response mode"); }
Task <IEndpointResult> CreateAuthorizeResultAsync(AuthorizeResponse response) { var request = response.Request; IEndpointResult result = null; if (request.ResponseMode == Constants.ResponseModes.Query || request.ResponseMode == Constants.ResponseModes.Fragment) { result = new AuthorizeRedirectResult(response); } if (request.ResponseMode == Constants.ResponseModes.FormPost) { result = new AuthorizeFormPostResult(response); } if (result != null) { if (response.IsError == false) { _logger.LogDebug("Adding client {0} to client list cookie for subject {1}", request.ClientId, request.Subject.GetSubjectId()); _clientListCookie.AddClient(request.ClientId); } return(Task.FromResult(result)); } _logger.LogError("Unsupported response mode."); throw new InvalidOperationException("Unsupported response mode"); }