Skip to content

Commit aea2297

Browse files
committed
Add README files to samples
1 parent 08d49a8 commit aea2297

File tree

5 files changed

+43
-0
lines changed

5 files changed

+43
-0
lines changed

samples/README.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
This directory contains samples that we run to test different scenarios and features.
2+
3+
All samples use the Boot starter and expose a GraphiQL page where you can run queries. Simply start the `main` application class and go to http://localhost:8080/graphiql.
4+
5+
To run from the command line, use:
6+
```shell script
7+
$ ./gradlew :samples:{sample-directory-name}:bootRun
8+
```
9+
10+
Samples have integration tests you can run with a debugger.
11+

samples/webflux-security/README.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
Sample with Spring Security in a WebFlux application.
2+
3+
Main features:
4+
5+
- Spring Security [config](src/main/java/io/spring/sample/graphql/SecurityConfig.java) secures GraphQL HTTP endpoint.
6+
- Fine-grained, method-level security on [SalaryService](src/main/java/io/spring/sample/graphql/SalaryService.java).
7+
- `AuthenticationException` and `AccessDeniedException` [resolved](src/main/java/io/spring/sample/graphql/SecurityDataFetcherExceptionResolver.java) to GraphQL errors.
8+
- [Tests](src/test/java/io/spring/sample/graphql/SampleApplicationTests.java) with `WebGraphQlTester` and WebFlux without a server.

samples/webflux-websocket/README.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
Sample with GraphQL over WebSocket in a WebFlux application.
2+
3+
Main features:
4+
5+
- Reactive [DataFetcher's](src/main/java/io/spring/sample/graphql/SampleWiring.java), including subscription stream.
6+
- [WebFilter](src/main/java/io/spring/sample/graphql/ContextWebFilter.java) that inserts Reactor `Context` that is then accessed in the [DataRepository](src/main/java/io/spring/sample/graphql/DataRepository.java).
7+
- [Tests](src/test/java/io/spring/sample/graphql/SubscriptionTests.java) for subscription streams.
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
Sample with Spring Security in a Spring MVC application.
2+
3+
Main features:
4+
5+
- Spring Security [config](src/main/java/io/spring/sample/graphql/SecurityConfig.java) secures GraphQL HTTP endpoint.
6+
- Fine-grained, method-level security on [SalaryService](src/main/java/io/spring/sample/graphql/SalaryService.java).
7+
- `AuthenticationException` and `AccessDeniedException` [resolved](src/test/java/io/spring/sample/graphql/SampleApplicationTests.java) to GraphQL errors.
8+
- [Tests](src/test/java/io/spring/sample/graphql/SampleApplicationTests.java) with `WebGraphQlTester` and WebFlux without a server.

samples/webmvc-http/README.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
Sample with a GraphQL HTTP endpoint in Spring MVC.
2+
3+
Main features:
4+
5+
- Spring HATEOAS [DataFetcher's](src/main/java/io/spring/sample/graphql/project/ProjectDataWiring.java) that call spring.io REST API.
6+
- Querydsl [DataFetcher's](src/main/java/io/spring/sample/graphql/repository/ArtifactRepositoryDataWiring.java) making JPA queries.
7+
- Use of [ThreadLocalAccessor](src/main/java/io/spring/sample/graphql/greeting/RequestAttributesAccessor.java) to propagate context to data fetchers.
8+
- Schema printing enabled at "/graphql/schema".
9+
- [Tests](src/test/java/io/spring/sample/graphql/project/MockMvcGraphQlTests.java) with `GraphQlTester` and MockMvc.

0 commit comments

Comments
 (0)