FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
graphql-java/src/test/groovy/graphql/StarWarsSchema.java at master · bernd-s/graphql-java · GitHub
bernd-s
/
graphql-java
Public
forked from
graphql-java/graphql-java
Notifications
You must be signed in to change notification settings
Fork
0
Star
0
Code
Pull requests
0
Actions
Projects
Security and quality
0
Insights
Additional navigation options
Code
Pull requests
Actions
Projects
Security and quality
Insights
Expand file tree
Breadcrumbs
graphql-java
/
src
/
test
/
groovy
/
graphql
/
StarWarsSchema.java
Copy path
More file actions
More file actions
Latest commit
History
History
History
134 lines (120 loc) · 5.88 KB
Breadcrumbs
graphql-java
/
src
/
test
/
groovy
/
graphql
/
StarWarsSchema.java
Copy path
File metadata and controls
134 lines (120 loc) · 5.88 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
package
graphql
;
import
graphql
.
schema
.*;
import
static
graphql
.
Scalars
.
GraphQLString
;
import
static
graphql
.
schema
.
GraphQLArgument
.
newArgument
;
import
static
graphql
.
schema
.
GraphQLEnumType
.
newEnum
;
import
static
graphql
.
schema
.
GraphQLFieldDefinition
.
newFieldDefinition
;
import
static
graphql
.
schema
.
GraphQLInterfaceType
.
newInterface
;
import
static
graphql
.
schema
.
GraphQLObjectType
.
newObject
;
public
class
StarWarsSchema
{
public
static
GraphQLEnumType
episodeEnum
=
newEnum
()
.
name
(
"Episode"
)
.
description
(
"One of the films in the Star Wars Trilogy"
)
.
value
(
"NEWHOPE"
,
4
,
"Released in 1977."
)
.
value
(
"EMPIRE"
,
5
,
"Released in 1980."
)
.
value
(
"JEDI"
,
6
,
"Released in 1983."
)
.
build
();
public
static
GraphQLInterfaceType
characterInterface
=
newInterface
()
.
name
(
"Character"
)
.
description
(
"A character in the Star Wars Trilogy"
)
.
field
(
newFieldDefinition
()
.
name
(
"id"
)
.
description
(
"The id of the character."
)
.
type
(
new
GraphQLNonNull
(
GraphQLString
)))
.
field
(
newFieldDefinition
()
.
name
(
"name"
)
.
description
(
"The name of the character."
)
.
type
(
GraphQLString
))
.
field
(
newFieldDefinition
()
.
name
(
"friends"
)
.
description
(
"The friends of the character, or an empty list if they have none."
)
.
type
(
new
GraphQLList
(
new
GraphQLTypeReference
(
"Character"
))))
.
field
(
newFieldDefinition
()
.
name
(
"appearsIn"
)
.
description
(
"Which movies they appear in."
)
.
type
(
new
GraphQLList
(
episodeEnum
)))
.
typeResolver
(
StarWarsData
.
getCharacterTypeResolver
())
.
build
();
public
static
GraphQLObjectType
humanType
=
newObject
()
.
name
(
"Human"
)
.
description
(
"A humanoid creature in the Star Wars universe."
)
.
withInterface
(
characterInterface
)
.
field
(
newFieldDefinition
()
.
name
(
"id"
)
.
description
(
"The id of the human."
)
.
type
(
new
GraphQLNonNull
(
GraphQLString
)))
.
field
(
newFieldDefinition
()
.
name
(
"name"
)
.
description
(
"The name of the human."
)
.
type
(
GraphQLString
))
.
field
(
newFieldDefinition
()
.
name
(
"friends"
)
.
description
(
"The friends of the human, or an empty list if they have none."
)
.
type
(
new
GraphQLList
(
characterInterface
))
.
dataFetcher
(
StarWarsData
.
getFriendsDataFetcher
()))
.
field
(
newFieldDefinition
()
.
name
(
"appearsIn"
)
.
description
(
"Which movies they appear in."
)
.
type
(
new
GraphQLList
(
episodeEnum
)))
.
field
(
newFieldDefinition
()
.
name
(
"homePlanet"
)
.
description
(
"The home planet of the human, or null if unknown."
)
.
type
(
GraphQLString
))
.
build
();
public
static
GraphQLObjectType
droidType
=
newObject
()
.
name
(
"Droid"
)
.
description
(
"A mechanical creature in the Star Wars universe."
)
.
withInterface
(
characterInterface
)
.
field
(
newFieldDefinition
()
.
name
(
"id"
)
.
description
(
"The id of the droid."
)
.
type
(
new
GraphQLNonNull
(
GraphQLString
)))
.
field
(
newFieldDefinition
()
.
name
(
"name"
)
.
description
(
"The name of the droid."
)
.
type
(
GraphQLString
))
.
field
(
newFieldDefinition
()
.
name
(
"friends"
)
.
description
(
"The friends of the droid, or an empty list if they have none."
)
.
type
(
new
GraphQLList
(
characterInterface
))
.
dataFetcher
(
StarWarsData
.
getFriendsDataFetcher
()))
.
field
(
newFieldDefinition
()
.
name
(
"appearsIn"
)
.
description
(
"Which movies they appear in."
)
.
type
(
new
GraphQLList
(
episodeEnum
)))
.
field
(
newFieldDefinition
()
.
name
(
"primaryFunction"
)
.
description
(
"The primary function of the droid."
)
.
type
(
GraphQLString
))
.
build
();
public
static
GraphQLObjectType
queryType
=
newObject
()
.
name
(
"QueryType"
)
.
field
(
newFieldDefinition
()
.
name
(
"hero"
)
.
type
(
characterInterface
)
.
argument
(
newArgument
()
.
name
(
"episode"
)
.
description
(
"If omitted, returns the hero of the whole saga. If provided, returns the hero of that particular episode."
)
.
type
(
episodeEnum
))
.
dataFetcher
(
new
StaticDataFetcher
(
StarWarsData
.
getArtoo
())))
.
field
(
newFieldDefinition
()
.
name
(
"human"
)
.
type
(
humanType
)
.
argument
(
newArgument
()
.
name
(
"id"
)
.
description
(
"id of the human"
)
.
type
(
new
GraphQLNonNull
(
GraphQLString
)))
.
dataFetcher
(
StarWarsData
.
getHumanDataFetcher
()))
.
field
(
newFieldDefinition
()
.
name
(
"droid"
)
.
type
(
droidType
)
.
argument
(
newArgument
()
.
name
(
"id"
)
.
description
(
"id of the droid"
)
.
type
(
new
GraphQLNonNull
(
GraphQLString
)))
.
dataFetcher
(
StarWarsData
.
getDroidDataFetcher
()))
.
build
();
public
static
GraphQLSchema
starWarsSchema
=
GraphQLSchema
.
newSchema
()
.
query
(
queryType
)
.
build
();
}
Back
|
FazBrowse Home
|
New Git URL