Skip to content

Commit a3098d3

Browse files
authored
Merge pull request #10 from graphql-java-kickstart/add-missing-option-descriptions
Add missing option descriptions
2 parents 7838297 + 4095617 commit a3098d3

File tree

3 files changed

+19
-6
lines changed

3 files changed

+19
-6
lines changed

content/tools/getting-started/index.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,12 @@ menu:
99
url: /tools/getting-started/
1010
---
1111

12-
A working [Java Spring-Boot application](https://github.com/graphql-java-kickstart/graphql-java-tools/tree/master/example) is provided,
12+
A working [Java Spring-Boot application](https://github.com/graphql-java-kickstart/samples/tree/master/tools-hello-world) is provided,
1313
based off the [Star Wars API](https://github.com/graphql-java/graphql-java/blob/master/src/test/groovy/graphql/StarWarsSchema.java) tests
1414
and [test data](https://github.com/graphql-java/graphql-java/blob/master/src/test/groovy/graphql/StarWarsData.groovy).
1515
If you're using Spring Boot, check out the [graphql-spring-boot-starter](https://github.com/graphql-java-kickstart/graphql-spring-boot)!
1616

17-
A working [Kotlin example](https://github.com/graphql-java-kickstart/graphql-java-tools/blob/master/src/test/kotlin/com/coxautodev/graphql/tools/EndToEndSpec.kt) can be found in the tests.
17+
A working [Kotlin example](https://github.com/graphql-java-kickstart/graphql-java-tools/blob/master/src/test/kotlin/graphql/kickstart/tools/EndToEndSpecHelper.kt) can be found in the tests.
1818

1919
## Quick start
2020

@@ -50,7 +50,7 @@ Add the `graphql-java-tools` dependency:
5050
## Using the latest development build
5151

5252
Snapshot versions of the current `master` branch are available on JFrog. Check the next snapshot version on
53-
[Github](https://github.com/graphql-java-kickstart/graphql-java-tools/blob/master/gradle.properties)
53+
[Github](https://github.com/graphql-java-kickstart/graphql-java-tools/blob/master/pom.xml#L7)
5454

5555
### Build with Gradle
5656

content/tools/schema-parser-options/index.md

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,14 @@ Use `SchemaParserOptions.newBuilder()` to build an options object to pass to the
1414

1515
Options:
1616

17+
* `contextClass`: If you use a context object to execute your queries, let the parser know about it so that it can add it to data fetchers as an argument.
1718
* `genericWrappers`: Allows defining your own generic classes that should be unwrapped when matching Java types to GraphQL types. You must supply the class and the index (zero-indexed) of the wrapped generic type. For example: If you want to unwrap type argument `T` of `Future<T>`, you must pass `Future.class` and `0`.
1819

1920
* `useDefaultGenericWrappers`: Defaults to `true`. Tells the parser whether or not to add it's own list of well-known generic wrappers, such as `Future` and `CompletableFuture`.
2021
* `allowUnimplementedResolvers`: Defaults to `false`. Allows a schema to be created even if not all GraphQL fields have resolvers. Intended only for development, it will log a warning to remind you to turn it off for production. Any unimplemented resolvers will throw errors when queried.
21-
* `objectMapperConfigurer`: Exposes the Jackson `ObjectMapper` that handles marshalling arguments in method resolvers. Every method resolver gets its own mapper, and the configurer can configure it differently based on the GraphQL field definition.
22+
* `missingResolverDataFetcher`: Allows you to provide custom behavior for missing GraphQL fields.
23+
* `inputArgumentOptionalDetectOmission`: Defaults to `false`. By default, the parser will treat omitted or null method input arguments as `Optional.empty` in resolvers. If you prefer, you can disable this behavior.
24+
* `objectMapperConfigurer` / `objectMapperProvider`: Exposes the Jackson `ObjectMapper` that handles marshalling arguments in method resolvers. Every method resolver gets its own mapper, and the configurer can configure it differently based on the GraphQL field definition.
2225
* `preferGraphQLResolver`: In cases where you have a Resolver class and legacy class that conflict on type arguments, use the Resolver class instead of throwing an error.
2326
Specifically this situation can occur when you have a graphql schema type `Foo` with a `bars` property and classes:
2427
```java
@@ -38,3 +41,13 @@ Options:
3841
```
3942
You will now have the code find two different return types for getBars() and application will not start with the error ```Caused by: com.coxautodev.graphql.tools.SchemaClassScannerError: Two different classes used for type```
4043
If this property is true it will ignore the legacy version.
44+
* `addProxyHandler`: If your runtime resolver classes are auto-generated proxies of some kind you can provide a handler to help the parser find the real resolvers behind them. Four proxy handlers are provided by default for these libraries:
45+
* Javassist
46+
* Guice
47+
* Spring AOP
48+
* Weld
49+
* `introspectionEnabled`: Defaults to `true`. When set to `false` this option will disable schema introspection via `NO_INTROSPECTION_FIELD_VISIBILITY`. See [Field Visibility](https://www.graphql-java.com/documentation/master/fieldvisibility/).
50+
* `fieldVisibility`: Provide a graphql field visibility implementation. This option overrides `introspectionEnabled` when used. See [Field Visibility](https://www.graphql-java.com/documentation/master/fieldvisibility/).
51+
* `coroutineContext` / `coroutineContextProvider`: Provide a kotlin coroutine context to be used with suspend functions of resolvers.
52+
* `typeDefinitionFactory`: See [Type Definition Factory]({{< relref "/tools/type-definition-factory/index.md" >}}).
53+
* `includeUnusedTypes`: Defaults to `false`. By default, the parser will ignore unused type definitions in the schema. Enable this option to include them regardless.

content/tools/type-definition-factory/index.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,11 @@ menu:
99
url: /tools/type-definition-factory/
1010
---
1111

12-
The **Type Definition Factory** has been added with to be able to dynamically
12+
The **Type Definition Factory** has been added to allow to dynamically
1313
add type definitions to the schema instead of having to define them manually
1414
in the SDL. There are a couple of use cases where the types that have to be defined
1515
are very much alike and only certain parts are different. For example the
16-
connection and edge types used by [Relay]({{< relref "/tools/relay/index.md" >}}). Since generics isn't supported in
16+
connection and edge types used by [Relay]({{< relref "/tools/relay/index.md" >}}). Since generics aren't supported in
1717
the definition language this type definition factory has been added.
1818

1919
## Basic usage

0 commit comments

Comments
 (0)