Skip to content

Commit a5b1797

Browse files
committed
Fix GraphQLScalar documentation
fixes graphql-java/graphql-java#2592
1 parent 1a6ad38 commit a5b1797

File tree

4 files changed

+80
-67
lines changed

4 files changed

+80
-67
lines changed

documentation/getting-started.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ Dependency:
2323

2424
```groovy
2525
dependencies {
26-
compile 'com.graphql-java:graphql-java:16.2'
26+
compile 'com.graphql-java:graphql-java:17.3'
2727
}
2828
```
2929

@@ -34,7 +34,7 @@ Dependency:
3434
<dependency>
3535
<groupId>com.graphql-java</groupId>
3636
<artifactId>graphql-java</artifactId>
37-
<version>16.2</version>
37+
<version>17.3</version>
3838
</dependency>
3939
```
4040

documentation/scalars.md

Lines changed: 38 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -40,22 +40,26 @@ Imagine we decide we need to have an email scalar type. It will take email addr
4040
We would create a singleton ``graphql.schema.GraphQLScalarType`` instance for this like so.
4141

4242
```java
43-
public static final GraphQLScalarType EMAIL = new GraphQLScalarType("email", "A custom scalar that handles emails", new Coercing() {
44-
@Override
45-
public Object serialize(Object dataFetcherResult) {
46-
return serializeEmail(dataFetcherResult);
47-
}
43+
public static final GraphQLScalarType EMAIL = GraphQLScalarType.newScalar()
44+
.name("email")
45+
.description("A custom scalar that handles emails")
46+
.coercing(new Coercing() {
47+
@Override
48+
public Object serialize(Object dataFetcherResult) {
49+
return serializeEmail(dataFetcherResult);
50+
}
4851

49-
@Override
50-
public Object parseValue(Object input) {
51-
return parseEmailFromVariable(input);
52-
}
52+
@Override
53+
public Object parseValue(Object input) {
54+
return parseEmailFromVariable(input);
55+
}
5356

54-
@Override
55-
public Object parseLiteral(Object input) {
56-
return parseEmailFromAstLiteral(input);
57-
}
58-
});
57+
@Override
58+
public Object parseLiteral(Object input) {
59+
return parseEmailFromAstLiteral(input);
60+
}
61+
})
62+
.build();
5963
```
6064

6165
## Coercing values
@@ -115,22 +119,26 @@ such a scalar.
115119
```java
116120
public static class EmailScalar {
117121

118-
public static final GraphQLScalarType EMAIL = new GraphQLScalarType("email", "A custom scalar that handles emails", new Coercing() {
119-
@Override
120-
public Object serialize(Object dataFetcherResult) {
121-
return serializeEmail(dataFetcherResult);
122-
}
123-
124-
@Override
125-
public Object parseValue(Object input) {
126-
return parseEmailFromVariable(input);
127-
}
128-
129-
@Override
130-
public Object parseLiteral(Object input) {
131-
return parseEmailFromAstLiteral(input);
132-
}
133-
});
122+
public static final GraphQLScalarType EMAIL = GraphQLScalarType.newScalar()
123+
.name("email")
124+
.description("A custom scalar that handles emails")
125+
.coercing(new Coercing() {
126+
@Override
127+
public Object serialize(Object dataFetcherResult) {
128+
return serializeEmail(dataFetcherResult);
129+
}
130+
131+
@Override
132+
public Object parseValue(Object input) {
133+
return parseEmailFromVariable(input);
134+
}
135+
136+
@Override
137+
public Object parseLiteral(Object input) {
138+
return parseEmailFromAstLiteral(input);
139+
}
140+
})
141+
.build();
134142

135143
private static boolean looksLikeAnEmailAddress(String possibleEmailValue) {
136144
// ps. I am not trying to replicate RFC-3696 clearly

versioned_docs/version-v17/getting-started.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ Dependency:
2424

2525
```groovy
2626
dependencies {
27-
compile 'com.graphql-java:graphql-java:16.2'
27+
compile 'com.graphql-java:graphql-java:17.3'
2828
}
2929
```
3030

@@ -37,7 +37,7 @@ Dependency:
3737
<dependency>
3838
<groupId>com.graphql-java</groupId>
3939
<artifactId>graphql-java</artifactId>
40-
<version>16.2</version>
40+
<version>17.3</version>
4141
</dependency>
4242
```
4343

versioned_docs/version-v17/scalars.md

Lines changed: 38 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -40,26 +40,28 @@ Imagine we decide we need to have an email scalar type. It will take email addr
4040
We would create a singleton ``graphql.schema.GraphQLScalarType`` instance for this like so.
4141

4242
```java
43-
public static final GraphQLScalarType EMAIL = new GraphQLScalarType("email", "A custom scalar that handles emails", new Coercing() {
44-
@Override
45-
public Object serialize(Object dataFetcherResult) {
46-
return serializeEmail(dataFetcherResult);
47-
}
43+
public static final GraphQLScalarType EMAIL = GraphQLScalarType.newScalar()
44+
.name("email")
45+
.description("A custom scalar that handles emails")
46+
.coercing(new Coercing() {
47+
@Override
48+
public Object serialize(Object dataFetcherResult) {
49+
return serializeEmail(dataFetcherResult);
50+
}
4851

49-
@Override
50-
public Object parseValue(Object input) {
51-
return parseEmailFromVariable(input);
52-
}
52+
@Override
53+
public Object parseValue(Object input) {
54+
return parseEmailFromVariable(input);
55+
}
5356

54-
@Override
55-
public Object parseLiteral(Object input) {
56-
return parseEmailFromAstLiteral(input);
57-
}
58-
});
57+
@Override
58+
public Object parseLiteral(Object input) {
59+
return parseEmailFromAstLiteral(input);
60+
}
61+
})
62+
.build();
5963
```
6064

61-
62-
6365
## Coercing values
6466

6567
The real work in any custom scalar implementation is the ``graphql.schema.Coercing`` implementation. This is responsible for 3 functions
@@ -119,23 +121,26 @@ such a scalar.
119121
```java
120122
public static class EmailScalar {
121123

122-
public static final GraphQLScalarType EMAIL = new GraphQLScalarType("email", "A custom scalar that handles emails", new Coercing() {
123-
@Override
124-
public Object serialize(Object dataFetcherResult) {
125-
return serializeEmail(dataFetcherResult);
126-
}
127-
128-
@Override
129-
public Object parseValue(Object input) {
130-
return parseEmailFromVariable(input);
131-
}
132-
133-
@Override
134-
public Object parseLiteral(Object input) {
135-
return parseEmailFromAstLiteral(input);
136-
}
137-
});
138-
124+
public static final GraphQLScalarType EMAIL = GraphQLScalarType.newScalar()
125+
.name("email")
126+
.description("A custom scalar that handles emails")
127+
.coercing(new Coercing() {
128+
@Override
129+
public Object serialize(Object dataFetcherResult) {
130+
return serializeEmail(dataFetcherResult);
131+
}
132+
133+
@Override
134+
public Object parseValue(Object input) {
135+
return parseEmailFromVariable(input);
136+
}
137+
138+
@Override
139+
public Object parseLiteral(Object input) {
140+
return parseEmailFromAstLiteral(input);
141+
}
142+
})
143+
.build();
139144

140145
private static boolean looksLikeAnEmailAddress(String possibleEmailValue) {
141146
// ps. I am not trying to replicate RFC-3696 clearly

0 commit comments

Comments
 (0)