Таким образом, очевидно, ответ заключается в использовании средства извлечения данных, которое возвращает фиктивный объект для объектов «подгруппы». Это создает «путь» к вашим листьям. И вы можете обращаться с листьями в проводке
Например, для сценария Reddit вы можете создать схему, подобную этой
schema {
query: RootQuery
}
type RootQuery {
RedditAPI: RedditAPI
}
type RedditAPI {
users: [Users]
subreddits(name: String!): [subreddit]
}
А затем подключите его вот так
RuntimeWiring.newRuntimeWiring()
.type(newTypeWiring("RootQuery")
.dataFetcher("RedditAPI", new DataFetcher() {
@Override
public Object get(DataFetchingEnvironment dataFetchingEnvironment) {
return RedditAPI.newBuilder().build();
}
})
)
.type(newTypeWiring("RedditAPI")
.dataFetcher("users", usersDataFetcher)
.dataFetcher("subreddits", subredditsDataFetcher)
)
.build();