Refine auto-configurations conditions
Prior to this commit, auto-configurations were only checking for the presence of GraphQL Java classes as guards, assuming that Spring GraphQL classes were always on the classpath. Auto-configurations are meant to be moved to the Spring Boot project in the future, so this commit adds the relevant condition class checks to reflect that spring-graphql might not be on the classpath.
This commit is contained in:
@@ -46,7 +46,7 @@ import org.springframework.graphql.execution.GraphQlSource;
|
||||
* @since 1.0.0
|
||||
*/
|
||||
@Configuration(proxyBeanMethods = false)
|
||||
@ConditionalOnClass(GraphQL.class)
|
||||
@ConditionalOnClass({GraphQL.class, GraphQlSource.class})
|
||||
@ConditionalOnMissingBean(GraphQlSource.class)
|
||||
@EnableConfigurationProperties(GraphQlProperties.class)
|
||||
public class GraphQlAutoConfiguration {
|
||||
|
||||
@@ -36,7 +36,7 @@ import org.springframework.graphql.execution.GraphQlSource;
|
||||
* @since 1.0.0
|
||||
*/
|
||||
@Configuration(proxyBeanMethods = false)
|
||||
@ConditionalOnClass(GraphQL.class)
|
||||
@ConditionalOnClass({GraphQL.class, GraphQlService.class})
|
||||
@ConditionalOnMissingBean(GraphQlService.class)
|
||||
@AutoConfigureAfter(GraphQlAutoConfiguration.class)
|
||||
public class GraphQlServiceAutoConfiguration {
|
||||
|
||||
@@ -66,7 +66,7 @@ import static org.springframework.web.reactive.function.server.RequestPredicates
|
||||
*/
|
||||
@Configuration(proxyBeanMethods = false)
|
||||
@ConditionalOnWebApplication(type = ConditionalOnWebApplication.Type.REACTIVE)
|
||||
@ConditionalOnClass(GraphQL.class)
|
||||
@ConditionalOnClass({GraphQL.class, GraphQlHttpHandler.class})
|
||||
@ConditionalOnBean(GraphQlSource.class)
|
||||
@AutoConfigureAfter(GraphQlServiceAutoConfiguration.class)
|
||||
public class GraphQlWebFluxAutoConfiguration {
|
||||
|
||||
@@ -73,7 +73,7 @@ import static org.springframework.web.servlet.function.RequestPredicates.content
|
||||
*/
|
||||
@Configuration(proxyBeanMethods = false)
|
||||
@ConditionalOnWebApplication(type = ConditionalOnWebApplication.Type.SERVLET)
|
||||
@ConditionalOnClass(GraphQL.class)
|
||||
@ConditionalOnClass({GraphQL.class, GraphQlHttpHandler.class})
|
||||
@ConditionalOnBean(GraphQlSource.class)
|
||||
@AutoConfigureAfter(GraphQlServiceAutoConfiguration.class)
|
||||
public class GraphQlWebMvcAutoConfiguration {
|
||||
|
||||
Reference in New Issue
Block a user