Commit Graph

8 Commits

Author SHA1 Message Date
Brian Clozel
311531b74f Move client and testing docs to compiled code snippets
Prior to this commit, the "client" and "testing" sections of the
reference documentation were using inline code snippets.
Because of this, several snippets were out of date or invalid.

This commit moves all those code snippets to actual Java classes
compiled with the documentation.

Fixes gh-1042
2024-08-21 10:44:54 +02:00
Brian Clozel
a9a8d0b745 Add fragments support in GraphQlTester
This commit adds support for GraphQL fragments with `GraphQlTester`.
Fragments allow to avoid repetition in GraphQL requests by reusing
field selection sets.

For example, the "releases" fragment can be reused in multiple queries
and make the overall document shorter:

```
query frameworkReleases {
  project(slug: "spring-framework") {
    name
    ...releases
  }
}
query graphqlReleases {
  project(slug: "spring-graphql") {
    name
    ...releases
  }
}

fragment releases on Project {
  releases {
    version
  }
}
```

With this change, `GraphQlTester` accepts fragments as `String` or can
load them by their name using the configured `DocumentSource`, similarly
to the document support.

Closes gh-964
2024-06-03 18:27:19 +02:00
rstoyanchev
b84d521f1d Polishing documentation
See gh-608
2024-04-11 18:00:09 +01:00
Toby
3f5fc1a5b3 Support keepAlive in WebSocket client
See gh-608
2024-04-11 15:09:17 +01:00
rstoyanchev
c5acccf770 Add DgsGraphQlClient
Closes gh-846
2024-02-19 19:41:23 +00:00
Brian Clozel
1f7063c9b4 Add Server-Sent Events transport
Prior to this commit, the WebFlux and WebMVC infrastructure would only
support subscriptions over the WebSocket and RSocket transports.

This commit adds the `GraphQlSseHandler` implementations for both web
frameworks. This handler will send GraphQL responses as as stream of
Server-Sent Events, over an HTTP response with the "text/event-stream"
content type.

This implementation only supports the "Distinct connections mode" and
will reject all operations other than Subscriptions.

This commit also enhances the `HttpGraphQlTransport` client transport to
support subscriptions over this new protocol.

Closes gh-309
2024-02-15 21:09:27 +01:00
rstoyanchev
87aa98b1d8 Update docs for synchronous GraphQlClient
Closes gh-771
2024-01-31 18:43:34 +00:00
Rob Winch
327a3588bc remove h2 from index.adoc 2023-08-04 15:38:28 +01:00