Skip to content

Commit f98f133

Browse files
Address Feedback
- Rename OneTimeTokenGenerateRequest to GenerateOneTimeTokenRequest - Renamed GeneratedOneTimeTokenSuccessHandler to GeneratedOneTimeTokenHandler. "Success" has been removed because if the token has been generated it is implicit a successful operation - Removed OneTimeTokenGenerateRequestResolver in favor of creating the GenerateOneTimeTokenRequest in the filter implementation
1 parent c053878 commit f98f133

22 files changed

+135
-325
lines changed

config/src/main/java/org/springframework/security/config/annotation/web/builders/FilterOrderRegistration.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
import org.springframework.security.web.authentication.AuthenticationFilter;
3131
import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter;
3232
import org.springframework.security.web.authentication.logout.LogoutFilter;
33-
import org.springframework.security.web.authentication.ott.OneTimeTokenGenerateFilter;
33+
import org.springframework.security.web.authentication.ott.GenerateOneTimeTokenFilter;
3434
import org.springframework.security.web.authentication.preauth.AbstractPreAuthenticatedProcessingFilter;
3535
import org.springframework.security.web.authentication.preauth.x509.X509AuthenticationFilter;
3636
import org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter;
@@ -90,7 +90,7 @@ final class FilterOrderRegistration {
9090
this.filterToOrder.put(
9191
"org.springframework.security.saml2.provider.service.web.Saml2WebSsoAuthenticationRequestFilter",
9292
order.next());
93-
put(OneTimeTokenGenerateFilter.class, order.next());
93+
put(GenerateOneTimeTokenFilter.class, order.next());
9494
put(X509AuthenticationFilter.class, order.next());
9595
put(AbstractPreAuthenticatedProcessingFilter.class, order.next());
9696
this.filterToOrder.put("org.springframework.security.cas.web.CasAuthenticationFilter", order.next());

config/src/main/java/org/springframework/security/config/annotation/web/configurers/ott/OneTimeTokenLoginConfigurer.java

Lines changed: 35 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@
3131
import org.springframework.security.authentication.ott.InMemoryOneTimeTokenService;
3232
import org.springframework.security.authentication.ott.OneTimeToken;
3333
import org.springframework.security.authentication.ott.OneTimeTokenAuthenticationProvider;
34-
import org.springframework.security.authentication.ott.OneTimeTokenGenerateRequest;
3534
import org.springframework.security.authentication.ott.OneTimeTokenService;
3635
import org.springframework.security.config.Customizer;
3736
import org.springframework.security.config.annotation.web.HttpSecurityBuilder;
@@ -44,12 +43,10 @@
4443
import org.springframework.security.web.authentication.AuthenticationSuccessHandler;
4544
import org.springframework.security.web.authentication.SavedRequestAwareAuthenticationSuccessHandler;
4645
import org.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler;
47-
import org.springframework.security.web.authentication.ott.GeneratedOneTimeTokenSuccessHandler;
46+
import org.springframework.security.web.authentication.ott.GenerateOneTimeTokenFilter;
47+
import org.springframework.security.web.authentication.ott.GeneratedOneTimeTokenHandler;
4848
import org.springframework.security.web.authentication.ott.OneTimeTokenAuthenticationConverter;
49-
import org.springframework.security.web.authentication.ott.OneTimeTokenGenerateFilter;
50-
import org.springframework.security.web.authentication.ott.OneTimeTokenGenerateRequestResolver;
51-
import org.springframework.security.web.authentication.ott.RedirectGeneratedOneTimeTokenSuccessHandler;
52-
import org.springframework.security.web.authentication.ott.RequestParameterOneTimeTokenGenerateRequestResolver;
49+
import org.springframework.security.web.authentication.ott.RedirectGeneratedOneTimeTokenHandler;
5350
import org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter;
5451
import org.springframework.security.web.authentication.ui.DefaultOneTimeTokenSubmitPageGeneratingFilter;
5552
import org.springframework.security.web.context.HttpSessionSecurityContextRepository;
@@ -63,7 +60,7 @@
6360
public final class OneTimeTokenLoginConfigurer<H extends HttpSecurityBuilder<H>>
6461
extends AbstractHttpConfigurer<OneTimeTokenLoginConfigurer<H>, H> {
6562

66-
private static final RedirectGeneratedOneTimeTokenSuccessHandler DEFAULT_GENERATED_OTT_SUCCESS_HANDLER = new RedirectGeneratedOneTimeTokenSuccessHandler(
63+
private static final RedirectGeneratedOneTimeTokenHandler DEFAULT_GENERATED_OTT_SUCCESS_HANDLER = new RedirectGeneratedOneTimeTokenHandler(
6764
"/login/ott");
6865

6966
private final Log logger = LogFactory.getLog(getClass());
@@ -78,20 +75,18 @@ public final class OneTimeTokenLoginConfigurer<H extends HttpSecurityBuilder<H>>
7875

7976
private AuthenticationSuccessHandler authenticationSuccessHandler = new SavedRequestAwareAuthenticationSuccessHandler();
8077

81-
private String submitPageUrl = "/login/ott";
78+
private String defaultSubmitPageUrl = "/login/ott";
8279

8380
private boolean submitPageEnabled = true;
8481

8582
private String loginProcessingUrl = "/login/ott";
8683

8784
private String generateUrl = "/ott/generate";
8885

89-
private GeneratedOneTimeTokenSuccessHandler generatedOneTimeTokenSuccessHandler = DEFAULT_GENERATED_OTT_SUCCESS_HANDLER;
86+
private GeneratedOneTimeTokenHandler generatedOneTimeTokenHandler = DEFAULT_GENERATED_OTT_SUCCESS_HANDLER;
9087

9188
private AuthenticationProvider authenticationProvider;
9289

93-
private OneTimeTokenGenerateRequestResolver oneTimeTokenGenerateRequestResolver = new RequestParameterOneTimeTokenGenerateRequestResolver();
94-
9590
public OneTimeTokenLoginConfigurer(ApplicationContext context) {
9691
this.context = context;
9792
}
@@ -110,7 +105,7 @@ private void configureDefaultLoginPage(H http) {
110105
return;
111106
}
112107
loginPageGeneratingFilter.setOneTimeTokenEnabled(true);
113-
loginPageGeneratingFilter.setOneTimeTokenAuthenticationRequestUrl(this.generateUrl);
108+
loginPageGeneratingFilter.setGenerateOneTimeTokenUrl(this.generateUrl);
114109
if (this.authenticationFailureHandler == null
115110
&& StringUtils.hasText(loginPageGeneratingFilter.getLoginPageUrl())) {
116111
this.authenticationFailureHandler = new SimpleUrlAuthenticationFailureHandler(
@@ -145,23 +140,21 @@ private SecurityContextRepository getSecurityContextRepository(H http) {
145140
}
146141

147142
private void configureOttGenerateFilter(H http) {
148-
OneTimeTokenGenerateFilter generateFilter = new OneTimeTokenGenerateFilter(getOneTimeTokenService(http));
149-
generateFilter.setOneTimeTokenGenerateRequestResolver(this.oneTimeTokenGenerateRequestResolver);
150-
generateFilter.setGeneratedOneTimeTokenSuccessHandler(getGeneratedOneTimeTokenSuccessHandler());
143+
GenerateOneTimeTokenFilter generateFilter = new GenerateOneTimeTokenFilter(getOneTimeTokenService(http));
144+
generateFilter.setGeneratedOneTimeTokenHandler(getGeneratedOneTimeTokenHandler());
151145
generateFilter.setRequestMatcher(antMatcher(HttpMethod.POST, this.generateUrl));
152146
http.addFilter(postProcess(generateFilter));
153147
}
154148

155-
private GeneratedOneTimeTokenSuccessHandler getGeneratedOneTimeTokenSuccessHandler() {
156-
if (this.generatedOneTimeTokenSuccessHandler == DEFAULT_GENERATED_OTT_SUCCESS_HANDLER) {
157-
this.logger
158-
.debug("""
159-
Using RedirectGeneratedOneTimeTokenSuccessHandler as the default GeneratedOneTimeTokenSuccessHandler.
160-
Note that this implementation does not send the one-time token to the user, therefore, consider
161-
providing your own implementation.
162-
""");
149+
private GeneratedOneTimeTokenHandler getGeneratedOneTimeTokenHandler() {
150+
if (this.generatedOneTimeTokenHandler == DEFAULT_GENERATED_OTT_SUCCESS_HANDLER) {
151+
this.logger.debug("""
152+
Using %s as the default GeneratedOneTimeTokenHandler.
153+
Note that this implementation does not send the one-time token to the user, therefore, consider
154+
providing your own implementation.
155+
""".formatted(DEFAULT_GENERATED_OTT_SUCCESS_HANDLER.getClass().getSimpleName()));
163156
}
164-
return this.generatedOneTimeTokenSuccessHandler;
157+
return this.generatedOneTimeTokenHandler;
165158
}
166159

167160
private void configureSubmitPage(H http) {
@@ -170,7 +163,7 @@ private void configureSubmitPage(H http) {
170163
}
171164
DefaultOneTimeTokenSubmitPageGeneratingFilter submitPage = new DefaultOneTimeTokenSubmitPageGeneratingFilter();
172165
submitPage.setResolveHiddenInputs(this::hiddenInputs);
173-
submitPage.setRequestMatcher(antMatcher(HttpMethod.GET, this.submitPageUrl));
166+
submitPage.setRequestMatcher(antMatcher(HttpMethod.GET, this.defaultSubmitPageUrl));
174167
submitPage.setLoginProcessingUrl(this.loginProcessingUrl);
175168
http.addFilter(postProcess(submitPage));
176169
}
@@ -185,19 +178,6 @@ private AuthenticationProvider getAuthenticationProvider(H http) {
185178
return this.authenticationProvider;
186179
}
187180

188-
/**
189-
* Specifies the {@link OneTimeTokenGenerateRequestResolver} to use to resolve a
190-
* {@link OneTimeTokenGenerateRequest}. Defaults to
191-
* {@link RequestParameterOneTimeTokenGenerateRequestResolver}
192-
* @param oneTimeTokenGenerateRequestResolver
193-
*/
194-
public OneTimeTokenLoginConfigurer<H> oneTimeTokenGenerationRequestResolver(
195-
OneTimeTokenGenerateRequestResolver oneTimeTokenGenerateRequestResolver) {
196-
Assert.notNull(oneTimeTokenGenerateRequestResolver, "oneTimeTokenGenerationRequestResolver cannot be null");
197-
this.oneTimeTokenGenerateRequestResolver = oneTimeTokenGenerateRequestResolver;
198-
return this;
199-
}
200-
201181
/**
202182
* Specifies the {@link AuthenticationProvider} to use when authenticating the user.
203183
* @param authenticationProvider
@@ -220,17 +200,17 @@ public OneTimeTokenLoginConfigurer<H> generateUrl(String generateUrl) {
220200
}
221201

222202
/**
223-
* Specifies strategy to be used for successful generated one-time tokens. By default,
224-
* a redirect will be performed to {@code POST /login/ott} using the
225-
* {@link RedirectGeneratedOneTimeTokenSuccessHandler}. It is often needed to provide
226-
* your own implementation of this interface so the one-time token is also delivered
227-
* to the user.
228-
* @param generatedOneTimeTokenSuccessHandler
203+
* Specifies strategy to be used to handle generated one-time tokens. By default, a
204+
* redirect will be performed to {@code POST /login/ott} using the
205+
* {@link RedirectGeneratedOneTimeTokenHandler}. It is often needed to provide your
206+
* own implementation of this interface so the one-time token is also delivered to the
207+
* user.
208+
* @param generatedOneTimeTokenHandler
229209
*/
230-
public OneTimeTokenLoginConfigurer<H> generatedOneTimeTokenSuccessHandler(
231-
GeneratedOneTimeTokenSuccessHandler generatedOneTimeTokenSuccessHandler) {
232-
Assert.notNull(generatedOneTimeTokenSuccessHandler, "generatedOneTimeTokenSuccessHandler cannot be null");
233-
this.generatedOneTimeTokenSuccessHandler = generatedOneTimeTokenSuccessHandler;
210+
public OneTimeTokenLoginConfigurer<H> generatedOneTimeTokenHandler(
211+
GeneratedOneTimeTokenHandler generatedOneTimeTokenHandler) {
212+
Assert.notNull(generatedOneTimeTokenHandler, "generatedOneTimeTokenHandler cannot be null");
213+
this.generatedOneTimeTokenHandler = generatedOneTimeTokenHandler;
234214
return this;
235215
}
236216

@@ -253,20 +233,22 @@ public OneTimeTokenLoginConfigurer<H> loginProcessingUrl(String loginProcessingU
253233
* configured.
254234
* @param show
255235
*/
256-
public OneTimeTokenLoginConfigurer<H> showSubmitPage(boolean show) {
236+
public OneTimeTokenLoginConfigurer<H> showDefaultSubmitPage(boolean show) {
257237
this.submitPageEnabled = show;
258238
return this;
259239
}
260240

261241
/**
262242
* Sets the URL that the default submit page will be generated. Defaults to
263-
* {@code /login/ott}. Note that if you don't want to generate the default submit page
264-
* you should use {@link #showSubmitPage(boolean)}.
243+
* {@code /login/ott}. If you don't want to generate the default submit page you
244+
* should use {@link #showDefaultSubmitPage(boolean)}. Note that this method always
245+
* invoke {@link #showDefaultSubmitPage(boolean)} passing {@code true}.
265246
* @param submitPageUrl
266247
*/
267-
public OneTimeTokenLoginConfigurer<H> submitPageUrl(String submitPageUrl) {
248+
public OneTimeTokenLoginConfigurer<H> defaultSubmitPageUrl(String submitPageUrl) {
268249
Assert.hasText(submitPageUrl, "submitPageUrl cannot be null or empty");
269-
this.submitPageUrl = submitPageUrl;
250+
this.defaultSubmitPageUrl = submitPageUrl;
251+
showDefaultSubmitPage(true);
270252
return this;
271253
}
272254

config/src/test/java/org/springframework/security/config/annotation/web/configurers/ott/OneTimeTokenLoginConfigurerTests.java

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,8 @@
3838
import org.springframework.security.provisioning.InMemoryUserDetailsManager;
3939
import org.springframework.security.web.SecurityFilterChain;
4040
import org.springframework.security.web.authentication.SimpleUrlAuthenticationSuccessHandler;
41-
import org.springframework.security.web.authentication.ott.GeneratedOneTimeTokenSuccessHandler;
42-
import org.springframework.security.web.authentication.ott.RedirectGeneratedOneTimeTokenSuccessHandler;
41+
import org.springframework.security.web.authentication.ott.GeneratedOneTimeTokenHandler;
42+
import org.springframework.security.web.authentication.ott.RedirectGeneratedOneTimeTokenHandler;
4343
import org.springframework.test.web.servlet.MockMvc;
4444

4545
import static org.springframework.security.test.web.servlet.request.SecurityMockMvcRequestPostProcessors.csrf;
@@ -63,7 +63,7 @@ void oneTimeTokenWhenCorrectTokenThenCanAuthenticate() throws Exception {
6363
this.mvc.perform(post("/ott/generate").param("username", "user").with(csrf()))
6464
.andExpectAll(status().isFound(), redirectedUrl("/login/ott"));
6565

66-
String token = TestGeneratedOneTimeTokenSuccessHandler.lastToken.getTokenValue();
66+
String token = TestGeneratedOneTimeTokenHandler.lastToken.getTokenValue();
6767

6868
this.mvc.perform(post("/login/ott").param("token", token).with(csrf()))
6969
.andExpectAll(status().isFound(), redirectedUrl("/"), authenticated());
@@ -72,10 +72,10 @@ void oneTimeTokenWhenCorrectTokenThenCanAuthenticate() throws Exception {
7272
@Test
7373
void oneTimeTokenWhenDifferentAuthenticationUrlsThenCanAuthenticate() throws Exception {
7474
this.spring.register(OneTimeTokenDifferentAuthenticationUrlsConfig.class).autowire();
75-
this.mvc.perform(post("/authenticationrequesturl").param("username", "user").with(csrf()))
75+
this.mvc.perform(post("/generateurl").param("username", "user").with(csrf()))
7676
.andExpectAll(status().isFound(), redirectedUrl("/redirected"));
7777

78-
String token = TestGeneratedOneTimeTokenSuccessHandler.lastToken.getTokenValue();
78+
String token = TestGeneratedOneTimeTokenHandler.lastToken.getTokenValue();
7979

8080
this.mvc.perform(post("/loginprocessingurl").param("token", token).with(csrf()))
8181
.andExpectAll(status().isFound(), redirectedUrl("/authenticated"), authenticated());
@@ -87,7 +87,7 @@ void oneTimeTokenWhenCorrectTokenUsedTwiceThenSecondTimeFails() throws Exception
8787
this.mvc.perform(post("/ott/generate").param("username", "user").with(csrf()))
8888
.andExpectAll(status().isFound(), redirectedUrl("/login/ott"));
8989

90-
String token = TestGeneratedOneTimeTokenSuccessHandler.lastToken.getTokenValue();
90+
String token = TestGeneratedOneTimeTokenHandler.lastToken.getTokenValue();
9191

9292
this.mvc.perform(post("/login/ott").param("token", token).with(csrf()))
9393
.andExpectAll(status().isFound(), redirectedUrl("/"), authenticated());
@@ -121,7 +121,7 @@ SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
121121
.anyRequest().authenticated()
122122
)
123123
.oneTimeTokenLogin((ott) -> ott
124-
.generatedOneTimeTokenSuccessHandler(new TestGeneratedOneTimeTokenSuccessHandler())
124+
.generatedOneTimeTokenHandler(new TestGeneratedOneTimeTokenHandler())
125125
);
126126
// @formatter:on
127127
return http.build();
@@ -142,8 +142,8 @@ SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
142142
.anyRequest().authenticated()
143143
)
144144
.oneTimeTokenLogin((ott) -> ott
145-
.generateUrl("/authenticationrequesturl")
146-
.generatedOneTimeTokenSuccessHandler(new TestGeneratedOneTimeTokenSuccessHandler("/redirected"))
145+
.generateUrl("/generateurl")
146+
.generatedOneTimeTokenHandler(new TestGeneratedOneTimeTokenHandler("/redirected"))
147147
.loginProcessingUrl("/loginprocessingurl")
148148
.authenticationSuccessHandler(new SimpleUrlAuthenticationSuccessHandler("/authenticated"))
149149
);
@@ -153,18 +153,18 @@ SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
153153

154154
}
155155

156-
static class TestGeneratedOneTimeTokenSuccessHandler implements GeneratedOneTimeTokenSuccessHandler {
156+
static class TestGeneratedOneTimeTokenHandler implements GeneratedOneTimeTokenHandler {
157157

158158
private static OneTimeToken lastToken;
159159

160-
private final GeneratedOneTimeTokenSuccessHandler delegate;
160+
private final GeneratedOneTimeTokenHandler delegate;
161161

162-
TestGeneratedOneTimeTokenSuccessHandler() {
163-
this.delegate = new RedirectGeneratedOneTimeTokenSuccessHandler("/login/ott");
162+
TestGeneratedOneTimeTokenHandler() {
163+
this.delegate = new RedirectGeneratedOneTimeTokenHandler("/login/ott");
164164
}
165165

166-
TestGeneratedOneTimeTokenSuccessHandler(String redirectUrl) {
167-
this.delegate = new RedirectGeneratedOneTimeTokenSuccessHandler(redirectUrl);
166+
TestGeneratedOneTimeTokenHandler(String redirectUrl) {
167+
this.delegate = new RedirectGeneratedOneTimeTokenHandler(redirectUrl);
168168
}
169169

170170
@Override

core/src/main/java/org/springframework/security/authentication/ott/OneTimeTokenGenerateRequest.java renamed to core/src/main/java/org/springframework/security/authentication/ott/GenerateOneTimeTokenRequest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,11 @@
2424
* @author Marcus da Coregio
2525
* @since 6.4
2626
*/
27-
public class OneTimeTokenGenerateRequest {
27+
public class GenerateOneTimeTokenRequest {
2828

2929
private final String username;
3030

31-
public OneTimeTokenGenerateRequest(String username) {
31+
public GenerateOneTimeTokenRequest(String username) {
3232
Assert.hasText(username, "username cannot be empty");
3333
this.username = username;
3434
}

core/src/main/java/org/springframework/security/authentication/ott/InMemoryOneTimeTokenService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ public final class InMemoryOneTimeTokenService implements OneTimeTokenService {
4242

4343
@Override
4444
@NonNull
45-
public OneTimeToken generate(OneTimeTokenGenerateRequest request) {
45+
public OneTimeToken generate(GenerateOneTimeTokenRequest request) {
4646
String token = UUID.randomUUID().toString();
4747
Instant fiveMinutesFromNow = this.clock.instant().plusSeconds(300);
4848
OneTimeToken ott = new DefaultOneTimeToken(token, request.getUsername(), fiveMinutesFromNow);

core/src/main/java/org/springframework/security/authentication/ott/OneTimeTokenAuthenticationToken.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,15 @@ public OneTimeTokenAuthenticationToken(Object principal, Collection<? extends Gr
5050
setAuthenticated(true);
5151
}
5252

53+
/**
54+
* Creates an unauthenticated token
55+
* @param tokenValue the one-time token value
56+
* @return an unauthenticated {@link OneTimeTokenAuthenticationToken}
57+
*/
58+
public static OneTimeTokenAuthenticationToken unauthenticated(String tokenValue) {
59+
return new OneTimeTokenAuthenticationToken(null, tokenValue);
60+
}
61+
5362
/**
5463
* Creates an unauthenticated token
5564
* @param principal the principal

core/src/main/java/org/springframework/security/authentication/ott/OneTimeTokenService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ public interface OneTimeTokenService {
3434
* @return the generated {@link OneTimeToken}, never {@code null}.
3535
*/
3636
@NonNull
37-
OneTimeToken generate(OneTimeTokenGenerateRequest request);
37+
OneTimeToken generate(GenerateOneTimeTokenRequest request);
3838

3939
/**
4040
* Consumes a one-time token based on the provided authentication token.

core/src/test/java/org/springframework/security/authentication/ott/InMemoryOneTimeTokenServiceTests.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ class InMemoryOneTimeTokenServiceTests {
4141

4242
@Test
4343
void generateThenTokenValueShouldBeValidUuidAndProvidedUsernameIsUsed() {
44-
OneTimeTokenGenerateRequest request = new OneTimeTokenGenerateRequest("user");
44+
GenerateOneTimeTokenRequest request = new GenerateOneTimeTokenRequest("user");
4545
OneTimeToken oneTimeToken = this.oneTimeTokenService.generate(request);
4646
assertThatNoException().isThrownBy(() -> UUID.fromString(oneTimeToken.getTokenValue()));
4747
assertThat(request.getUsername()).isEqualTo("user");
@@ -56,7 +56,7 @@ void consumeWhenTokenDoesNotExistsThenNull() {
5656

5757
@Test
5858
void consumeWhenTokenExistsThenReturnItself() {
59-
OneTimeTokenGenerateRequest request = new OneTimeTokenGenerateRequest("user");
59+
GenerateOneTimeTokenRequest request = new GenerateOneTimeTokenRequest("user");
6060
OneTimeToken generated = this.oneTimeTokenService.generate(request);
6161
OneTimeTokenAuthenticationToken authenticationToken = new OneTimeTokenAuthenticationToken(
6262
generated.getTokenValue());
@@ -68,7 +68,7 @@ void consumeWhenTokenExistsThenReturnItself() {
6868

6969
@Test
7070
void consumeWhenTokenIsExpiredThenReturnNull() {
71-
OneTimeTokenGenerateRequest request = new OneTimeTokenGenerateRequest("user");
71+
GenerateOneTimeTokenRequest request = new GenerateOneTimeTokenRequest("user");
7272
OneTimeToken generated = this.oneTimeTokenService.generate(request);
7373
OneTimeTokenAuthenticationToken authenticationToken = new OneTimeTokenAuthenticationToken(
7474
generated.getTokenValue());
@@ -104,7 +104,7 @@ private List<OneTimeToken> generate(int howMany) {
104104
List<OneTimeToken> generated = new ArrayList<>(howMany);
105105
for (int i = 0; i < howMany; i++) {
106106
OneTimeToken oneTimeToken = this.oneTimeTokenService
107-
.generate(new OneTimeTokenGenerateRequest("generated" + i));
107+
.generate(new GenerateOneTimeTokenRequest("generated" + i));
108108
generated.add(oneTimeToken);
109109
}
110110
return generated;

0 commit comments

Comments
 (0)