Polish gh-1446

This commit is contained in:
Joe Grandja
2023-11-16 06:09:11 -05:00
parent 0c4df7f419
commit 7f1cde0117
9 changed files with 416 additions and 404 deletions

View File

@@ -15,20 +15,45 @@
*/
package sample;
import org.springframework.aot.hint.annotation.RegisterReflectionForBinding;
import java.util.Arrays;
import org.thymeleaf.expression.Lists;
import sample.web.AuthorizationConsentController;
import org.springframework.aot.hint.MemberCategory;
import org.springframework.aot.hint.RuntimeHints;
import org.springframework.aot.hint.RuntimeHintsRegistrar;
import org.springframework.aot.hint.TypeReference;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import sample.web.AuthorizationConsentController;
import org.springframework.context.annotation.ImportRuntimeHints;
/**
* @author Joe Grandja
* @author Josh Long
* @since 1.1
*/
@RegisterReflectionForBinding(AuthorizationConsentController.ScopeWithDescription.class)
@SpringBootApplication
@ImportRuntimeHints(DemoAuthorizationServerApplication.DemoAuthorizationServerApplicationRuntimeHintsRegistrar.class)
public class DemoAuthorizationServerApplication {
static class DemoAuthorizationServerApplicationRuntimeHintsRegistrar implements RuntimeHintsRegistrar {
@Override
public void registerHints(RuntimeHints hints, ClassLoader classLoader) {
// Thymeleaf
hints.reflection().registerTypes(
Arrays.asList(
TypeReference.of(AuthorizationConsentController.ScopeWithDescription.class),
TypeReference.of(Lists.class)
), builder ->
builder.withMembers(MemberCategory.DECLARED_FIELDS,
MemberCategory.INVOKE_DECLARED_CONSTRUCTORS, MemberCategory.INVOKE_DECLARED_METHODS)
);
}
}
public static void main(String[] args) {
SpringApplication.run(DemoAuthorizationServerApplication.class, args);
}

View File

@@ -132,7 +132,7 @@ public class AuthorizationServerConfig {
// @formatter:off
@Bean
public RegisteredClientRepository registeredClientRepository(JdbcTemplate jdbcTemplate) {
public JdbcRegisteredClientRepository registeredClientRepository(JdbcTemplate jdbcTemplate) {
RegisteredClient registeredClient = RegisteredClient.withId(UUID.randomUUID().toString())
.clientId("messaging-client")
.clientSecret("{noop}secret")
@@ -169,13 +169,13 @@ public class AuthorizationServerConfig {
// @formatter:on
@Bean
public OAuth2AuthorizationService authorizationService(JdbcTemplate jdbcTemplate,
public JdbcOAuth2AuthorizationService authorizationService(JdbcTemplate jdbcTemplate,
RegisteredClientRepository registeredClientRepository) {
return new JdbcOAuth2AuthorizationService(jdbcTemplate, registeredClientRepository);
}
@Bean
public OAuth2AuthorizationConsentService authorizationConsentService(JdbcTemplate jdbcTemplate,
public JdbcOAuth2AuthorizationConsentService authorizationConsentService(JdbcTemplate jdbcTemplate,
RegisteredClientRepository registeredClientRepository) {
// Will be used by the ConsentController
return new JdbcOAuth2AuthorizationConsentService(jdbcTemplate, registeredClientRepository);