Skip to content
This repository was archived by the owner on Dec 19, 2023. It is now read-only.

Feature/spring boot #900

Merged
merged 2 commits into from
Dec 5, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,8 @@ TARGET_COMPATIBILITY=17
### Dependencies
LIB_GRAPHQL_JAVA_VER=19.3
LIB_EXTENDED_SCALARS_VER=19.1
LIB_SPRING_BOOT_VER=2.7.6
LIB_GRAPHQL_SERVLET_VER=14.0.0
LIB_SPRING_BOOT_VER=3.0.0
LIB_GRAPHQL_SERVLET_VER=15.0.0
LIB_GRAPHQL_JAVA_TOOLS_VER=13.0.2
LIB_GRAPHQL_ANNOTATIONS_VER=9.1
LIB_REFLECTIONS_VER=0.10.2
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,6 @@ private ApplicationReadyEvent getApplicationReadyEvent() {
new AnnotationConfigWebApplicationContext();
annotationConfigWebApplicationContext.refresh();
return new ApplicationReadyEvent(
new SpringApplication(), new String[0], annotationConfigWebApplicationContext);
new SpringApplication(), new String[0], annotationConfigWebApplicationContext, null);
}
}
8 changes: 4 additions & 4 deletions graphql-spring-boot-autoconfigure/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@

dependencies {
api "com.graphql-java-kickstart:graphql-java-tools:$LIB_GRAPHQL_JAVA_TOOLS_VER"
api(project(":graphql-kickstart-spring-support"))
api(project(':graphql-kickstart-spring-webflux'))
api project(":graphql-kickstart-spring-support")
api project(':graphql-kickstart-spring-webflux')
api "com.graphql-java:graphql-java-extended-scalars:$LIB_EXTENDED_SCALARS_VER"
api "com.graphql-java-kickstart:graphql-java-kickstart:$LIB_GRAPHQL_SERVLET_VER"
api "com.graphql-java-kickstart:graphql-java-servlet:$LIB_GRAPHQL_SERVLET_VER"
Expand All @@ -46,7 +46,7 @@ dependencies {
compileOnly "org.springframework.boot:spring-boot-configuration-processor"
compileOnly "org.springframework.boot:spring-boot-starter-web"

testImplementation(project(":graphql-spring-boot-starter-test"))
testImplementation project(":graphql-spring-boot-starter-test")
testImplementation "com.graphql-java:graphql-java:$LIB_GRAPHQL_JAVA_VER"
testImplementation "org.springframework.boot:spring-boot-starter-web"
testImplementation "org.springframework.boot:spring-boot-starter-test"
Expand All @@ -57,7 +57,7 @@ dependencies {
testImplementation "org.springframework.boot:spring-boot-starter-security"
testImplementation "org.springframework.security:spring-security-test"
testImplementation "io.projectreactor:reactor-core"
testImplementation "io.reactivex.rxjava2:rxjava"
testImplementation "io.reactivex.rxjava2:rxjava:2.2.21"
testImplementation "org.jsoup:jsoup:$LIB_JSOUP_VER"
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,14 +34,14 @@
import org.reflections.scanners.MethodAnnotationsScanner;
import org.reflections.scanners.SubTypesScanner;
import org.reflections.scanners.TypeAnnotationsScanner;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Slf4j
@Configuration
@AutoConfiguration
@RequiredArgsConstructor
@ConditionalOnProperty(value = "graphql.schema-strategy", havingValue = "ANNOTATIONS")
@EnableConfigurationProperties(GraphQLAnnotationsProperties.class)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package graphql.kickstart.autoconfigure.annotations;

import javax.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotBlank;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
package graphql.kickstart.autoconfigure.editor.altair;

import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.DispatcherServlet;

/** @author Moncef AOUDIA */
@Configuration
@AutoConfiguration
@ConditionalOnWebApplication
@EnableConfigurationProperties({AltairProperties.class, AltairOptions.class, AltairResources.class})
@ConditionalOnClass(DispatcherServlet.class)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@
import java.nio.charset.Charset;
import java.util.HashMap;
import java.util.Map;
import javax.annotation.PostConstruct;
import javax.servlet.http.HttpServletResponse;
import jakarta.annotation.PostConstruct;
import jakarta.servlet.http.HttpServletResponse;
import lombok.RequiredArgsConstructor;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import static org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication.Type.REACTIVE;
import static org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication.Type.SERVLET;

import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
Expand All @@ -16,13 +17,15 @@
import org.springframework.web.reactive.function.server.ServerResponse;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

;

/**
* @author Andrew Potter
* @author Ronny Bräunlich
*/
@Configuration
@AutoConfiguration
@ConditionalOnProperty(value = "graphql.graphiql.enabled", havingValue = "true")
@EnableConfigurationProperties(GraphiQLProperties.class)
public class GraphiQLAutoConfiguration {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import java.io.IOException;
import java.util.Map;
import javax.annotation.PostConstruct;
import jakarta.annotation.PostConstruct;
import lombok.extern.slf4j.Slf4j;
import org.springframework.core.io.buffer.DataBufferFactory;
import org.springframework.core.io.buffer.DefaultDataBufferFactory;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@

import java.io.IOException;
import java.util.Map;
import javax.annotation.PostConstruct;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import jakarta.annotation.PostConstruct;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@

import com.fasterxml.jackson.databind.ObjectMapper;
import graphql.kickstart.autoconfigure.editor.playground.properties.PlaygroundProperties;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
@AutoConfiguration
@ConditionalOnWebApplication
@EnableConfigurationProperties(PlaygroundProperties.class)
public class PlaygroundAutoConfiguration {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
package graphql.kickstart.autoconfigure.editor.playground;

import lombok.RequiredArgsConstructor;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;
import org.springframework.core.io.ClassPathResource;
import org.springframework.web.reactive.config.WebFluxConfigurer;
import org.springframework.web.reactive.function.server.RouterFunction;
import org.springframework.web.reactive.function.server.RouterFunctions;
import org.springframework.web.reactive.function.server.ServerResponse;

@Configuration
@AutoConfiguration
@Import(PlaygroundWebFluxControllerAdvice.class)
@ConditionalOnClass(WebFluxConfigurer.class)
@ConditionalOnProperty(value = "graphql.playground.enabled", havingValue = "true")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,17 +5,17 @@
import com.fasterxml.jackson.databind.SerializerProvider;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import org.apache.tomcat.util.http.fileupload.util.Streams;
import org.springframework.boot.jackson.JsonComponent;
import org.springframework.core.io.Resource;
import org.springframework.util.StreamUtils;

@JsonComponent
public class ResourceSerializer extends JsonSerializer<Resource> {
@Override
public void serialize(
final Resource value, final JsonGenerator gen, final SerializerProvider serializers)
throws IOException {
final String content = Streams.asString(value.getInputStream(), StandardCharsets.UTF_8.name());
final String content = StreamUtils.copyToString(value.getInputStream(), StandardCharsets.UTF_8);
gen.writeString(content);
}
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package graphql.kickstart.autoconfigure.editor.playground.properties;

import javax.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;

@Data
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
import java.util.Collections;
import java.util.List;
import java.util.Map;
import javax.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.context.properties.NestedConfigurationProperty;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package graphql.kickstart.autoconfigure.editor.playground.properties;

import javax.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;

@Data
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package graphql.kickstart.autoconfigure.editor.playground.properties.settings;

import com.fasterxml.jackson.annotation.JsonInclude;
import javax.validation.constraints.Min;
import jakarta.validation.constraints.Min;
import lombok.Data;

@Data
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package graphql.kickstart.autoconfigure.editor.playground.properties.settings;

import com.fasterxml.jackson.annotation.JsonInclude;
import javax.validation.constraints.Min;
import jakarta.validation.constraints.Min;
import lombok.Data;

@Data
Expand Down
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
package graphql.kickstart.autoconfigure.editor.voyager;

import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.io.ClassPathResource;
import org.springframework.web.reactive.function.server.RouterFunction;
import org.springframework.web.reactive.function.server.RouterFunctions;
import org.springframework.web.reactive.function.server.ServerResponse;

/** @author Max David Günther */
@Configuration
@AutoConfiguration
@ConditionalOnWebApplication(type = ConditionalOnWebApplication.Type.REACTIVE)
@ConditionalOnProperty(value = "graphql.voyager.enabled", havingValue = "true")
@EnableConfigurationProperties(VoyagerPropertiesConfiguration.class)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
package graphql.kickstart.autoconfigure.editor.voyager;

import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/** @author Guilherme Blanco */
@Configuration
@AutoConfiguration
@ConditionalOnWebApplication(type = ConditionalOnWebApplication.Type.SERVLET)
@ConditionalOnProperty(value = "graphql.voyager.enabled", havingValue = "true")
@EnableConfigurationProperties(VoyagerPropertiesConfiguration.class)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

import java.io.IOException;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletRequest;
import lombok.RequiredArgsConstructor;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
import java.util.Optional;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.AutoConfigureAfter;
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
Expand All @@ -36,11 +37,10 @@
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/** @author Andrew Potter */
@Slf4j
@Configuration
@AutoConfiguration
@ConditionalOnClass(SchemaParser.class)
@ConditionalOnProperty(
value = "graphql.schema-strategy",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,21 +36,21 @@
import org.springframework.beans.factory.ObjectProvider;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.AutoConfigureAfter;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication;
import org.springframework.boot.autoconfigure.jackson.JacksonAutoConfiguration;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Conditional;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;
import org.springframework.web.reactive.HandlerMapping;
import org.springframework.web.reactive.handler.SimpleUrlHandlerMapping;
import org.springframework.web.reactive.socket.WebSocketHandler;
import org.springframework.web.reactive.socket.server.support.WebSocketHandlerAdapter;

@Slf4j
@Configuration
@AutoConfiguration
@Import({
GraphQLController.class,
ReactiveWebSocketSubscriptionsHandler.class,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@
import graphql.kickstart.tools.SchemaParserOptions.GenericWrapper;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.AutoConfigureBefore;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import reactor.core.publisher.Mono;

@Configuration
@AutoConfiguration
@ConditionalOnClass(SchemaParser.class)
@ConditionalOnWebApplication(type = REACTIVE)
@AutoConfigureBefore(GraphQLJavaToolsAutoConfiguration.class)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
import lombok.RequiredArgsConstructor;
import org.springframework.boot.actuate.autoconfigure.metrics.MetricsAutoConfiguration;
import org.springframework.boot.actuate.autoconfigure.metrics.export.simple.SimpleMetricsExportAutoConfiguration;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.AutoConfigureAfter;
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
Expand All @@ -19,10 +20,9 @@
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/** @author Marcel Overdijk */
@Configuration
@AutoConfiguration
@RequiredArgsConstructor
@ConditionalOnClass(MetricsAutoConfiguration.class)
@AutoConfigureAfter({
Expand Down
Loading