Polish InMemoryClientRegistrationRepository
Issue: gh-4745
This commit is contained in:
parent
a3e38fec47
commit
c1c726f123
|
@ -17,6 +17,7 @@ package org.springframework.security.oauth2.client.registration;
|
|||
|
||||
import org.springframework.util.Assert;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
|
@ -33,6 +34,7 @@ import static java.util.stream.Collectors.toMap;
|
|||
* A {@link ClientRegistrationRepository} that stores {@link ClientRegistration}(s) <i>in-memory</i>.
|
||||
*
|
||||
* @author Joe Grandja
|
||||
* @author Rob Winch
|
||||
* @since 5.0
|
||||
* @see ClientRegistrationRepository
|
||||
* @see ClientRegistration
|
||||
|
@ -40,6 +42,10 @@ import static java.util.stream.Collectors.toMap;
|
|||
public final class InMemoryClientRegistrationRepository implements ClientRegistrationRepository, Iterable<ClientRegistration> {
|
||||
private final Map<String, ClientRegistration> registrations;
|
||||
|
||||
public InMemoryClientRegistrationRepository(ClientRegistration... registrations) {
|
||||
this(Arrays.asList(registrations));
|
||||
}
|
||||
|
||||
public InMemoryClientRegistrationRepository(List<ClientRegistration> registrations) {
|
||||
Assert.notEmpty(registrations, "registrations cannot be empty");
|
||||
Collector<ClientRegistration, ?, ConcurrentMap<String, ClientRegistration>> collector =
|
||||
|
|
|
@ -43,8 +43,7 @@ public class InMemoryClientRegistrationRepositoryTests {
|
|||
.tokenUri("https://example.com/oauth/access_token")
|
||||
.build();
|
||||
|
||||
private InMemoryClientRegistrationRepository clients = new InMemoryClientRegistrationRepository(
|
||||
Arrays.asList(this.registration));
|
||||
private InMemoryClientRegistrationRepository clients = new InMemoryClientRegistrationRepository(this.registration);
|
||||
|
||||
@Test(expected = IllegalArgumentException.class)
|
||||
public void constructorListClientRegistrationWhenNullThenIllegalArgumentException() {
|
||||
|
|
|
@ -23,6 +23,7 @@ import org.springframework.mock.web.MockHttpServletRequest;
|
|||
import org.springframework.mock.web.MockHttpServletResponse;
|
||||
import org.springframework.security.oauth2.client.registration.ClientRegistration;
|
||||
import org.springframework.security.oauth2.client.registration.ClientRegistrationRepository;
|
||||
import org.springframework.security.oauth2.client.registration.InMemoryClientRegistrationRepository;
|
||||
import org.springframework.security.oauth2.core.endpoint.OAuth2AuthorizationRequest;
|
||||
|
||||
import javax.servlet.FilterChain;
|
||||
|
@ -116,7 +117,7 @@ public class OAuth2AuthorizationRequestRedirectFilterTests {
|
|||
|
||||
private OAuth2AuthorizationRequestRedirectFilter setupFilter(String authorizationUri,
|
||||
ClientRegistration... clientRegistrations) throws Exception {
|
||||
ClientRegistrationRepository clientRegistrationRepository = TestUtil.clientRegistrationRepository(clientRegistrations);
|
||||
ClientRegistrationRepository clientRegistrationRepository = new InMemoryClientRegistrationRepository(clientRegistrations);
|
||||
OAuth2AuthorizationRequestRedirectFilter filter = new OAuth2AuthorizationRequestRedirectFilter(clientRegistrationRepository);
|
||||
return filter;
|
||||
}
|
||||
|
|
|
@ -32,6 +32,7 @@ import org.springframework.security.oauth2.client.authentication.OAuth2Authentic
|
|||
import org.springframework.security.oauth2.client.authentication.OAuth2LoginAuthenticationToken;
|
||||
import org.springframework.security.oauth2.client.registration.ClientRegistration;
|
||||
import org.springframework.security.oauth2.client.registration.ClientRegistrationRepository;
|
||||
import org.springframework.security.oauth2.client.registration.InMemoryClientRegistrationRepository;
|
||||
import org.springframework.security.oauth2.core.OAuth2AccessToken;
|
||||
import org.springframework.security.oauth2.core.OAuth2AuthenticationException;
|
||||
import org.springframework.security.oauth2.core.OAuth2ErrorCodes;
|
||||
|
@ -186,7 +187,7 @@ public class OAuth2LoginAuthenticationFilterTests {
|
|||
private OAuth2LoginAuthenticationFilter setupFilter(
|
||||
AuthenticationManager authenticationManager, ClientRegistration... clientRegistrations) throws Exception {
|
||||
|
||||
ClientRegistrationRepository clientRegistrationRepository = TestUtil.clientRegistrationRepository(clientRegistrations);
|
||||
ClientRegistrationRepository clientRegistrationRepository = new InMemoryClientRegistrationRepository(clientRegistrations);
|
||||
|
||||
OAuth2LoginAuthenticationFilter filter = new OAuth2LoginAuthenticationFilter(
|
||||
clientRegistrationRepository, mock(OAuth2AuthorizedClientService.class));
|
||||
|
|
|
@ -35,10 +35,6 @@ class TestUtil {
|
|||
static final String GOOGLE_REGISTRATION_ID = "google";
|
||||
static final String GITHUB_REGISTRATION_ID = "github";
|
||||
|
||||
static ClientRegistrationRepository clientRegistrationRepository(ClientRegistration... clientRegistrations) {
|
||||
return new InMemoryClientRegistrationRepository(Arrays.asList(clientRegistrations));
|
||||
}
|
||||
|
||||
static ClientRegistration googleClientRegistration() {
|
||||
return googleClientRegistration(DEFAULT_SERVER_URL + AUTHORIZE_BASE_URI + "/" + GOOGLE_REGISTRATION_ID);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue