From 696db4144aceaa560739712390c2e4944769f045 Mon Sep 17 00:00:00 2001 From: Mitchell Henke Date: Tue, 28 Feb 2023 20:01:32 -0600 Subject: [PATCH 1/2] Skip redundant delete and save of service provider authorization requests changelog: Internal, Service Provider Authorization Requests, Skip redundant delete and save of authorization requests --- app/services/service_provider_request_handler.rb | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/app/services/service_provider_request_handler.rb b/app/services/service_provider_request_handler.rb index 6ff66b0bf02..6303518efa4 100644 --- a/app/services/service_provider_request_handler.rb +++ b/app/services/service_provider_request_handler.rb @@ -7,6 +7,8 @@ def initialize(url:, session:, protocol_request:, protocol:) end def call + return if sp_url_stored_in_session == url + pull_request_id_from_current_sp_session_id delete_sp_request_if_session_has_matching_request_id @@ -34,8 +36,19 @@ def current_sp end def sp_stored_in_session + return if service_provider_request_proxy.blank? + service_provider_request_proxy.issuer + end + + def sp_url_stored_in_session + return if service_provider_request_proxy.blank? + service_provider_request_proxy.url + end + + def service_provider_request_proxy return if sp_request_id.blank? - ServiceProviderRequestProxy.from_uuid(sp_request_id).issuer + return @service_provider_request_proxy if defined?(@service_provider_request_proxy) + @service_provider_request_proxy = ServiceProviderRequestProxy.from_uuid(sp_request_id) end def pull_request_id_from_current_sp_session_id From 48db8d0aa1884557e5894958b5b4d0dc44a8072b Mon Sep 17 00:00:00 2001 From: Mitchell Henke Date: Wed, 1 Mar 2023 12:14:19 -0600 Subject: [PATCH 2/2] Update app/services/service_provider_request_handler.rb Co-authored-by: Zach Margolis --- app/services/service_provider_request_handler.rb | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/app/services/service_provider_request_handler.rb b/app/services/service_provider_request_handler.rb index 6303518efa4..d23aecbf837 100644 --- a/app/services/service_provider_request_handler.rb +++ b/app/services/service_provider_request_handler.rb @@ -36,13 +36,11 @@ def current_sp end def sp_stored_in_session - return if service_provider_request_proxy.blank? - service_provider_request_proxy.issuer + service_provider_request_proxy&.issuer end def sp_url_stored_in_session - return if service_provider_request_proxy.blank? - service_provider_request_proxy.url + service_provider_request_proxy&.url end def service_provider_request_proxy