Skip to content

feat: add GraphQL subscriptions over SSE (G3) - #1592

Merged
jlouvel merged 2 commits into
feat/graphql-g2-clientfrom
feat/graphql-g3-sse
Nov 1, 2026
Merged

jlouvel merged 2 commits into
feat/graphql-g2-clientfrom
feat/graphql-g3-sse

fix: harden the GraphQL SSE subscription lifecycle

08f497f
Select commit
Loading
Failed to load commit list.
SonarQubeCloud / SonarCloud Code Analysis succeeded Nov 1, 2026 in 39s

Annotations

Check warning on line 179 in org.restlet.ext.graphql/src/main/java/org/restlet/ext/graphql/internal/GraphqlEventStream.java

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Use the record pattern instead of this pattern match variable.

See more on https://sonarcloud.io/project/issues?id=restlet_restlet-framework-java&issues=AaGKuPFATD99LZxLGSDw&open=AaGKuPFATD99LZxLGSDw&pullRequest=1592

Check warning on line 269 in org.restlet.ext.graphql/src/main/java/org/restlet/ext/graphql/GraphqlSsePublisher.java

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Replace "e" with an unnamed pattern.

See more on https://sonarcloud.io/project/issues?id=restlet_restlet-framework-java&issues=AaGKuPCiTD99LZxLGSDt&open=AaGKuPCiTD99LZxLGSDt&pullRequest=1592

Check failure on line 224 in org.restlet.ext.graphql/src/main/java/org/restlet/ext/graphql/GraphqlSsePublisher.java

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Refactor this method to reduce its Cognitive Complexity from 18 to the 15 allowed.

See more on https://sonarcloud.io/project/issues?id=restlet_restlet-framework-java&issues=AaGKuPCiTD99LZxLGSDs&open=AaGKuPCiTD99LZxLGSDs&pullRequest=1592

Check warning on line 433 in org.restlet.ext.graphql/src/test/java/org/restlet/ext/graphql/GraphqlSseTestCase.java

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Refactor the code of the lambda to have only one invocation possibly throwing a runtime exception.

See more on https://sonarcloud.io/project/issues?id=restlet_restlet-framework-java&issues=AaGKuPFMTD99LZxLGSD2&open=AaGKuPFMTD99LZxLGSD2&pullRequest=1592

Check warning on line 302 in org.restlet.ext.graphql/src/test/java/org/restlet/ext/graphql/GraphqlSseTestCase.java

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Remove this use of "Thread.sleep()".

See more on https://sonarcloud.io/project/issues?id=restlet_restlet-framework-java&issues=AaGKuPFMTD99LZxLGSD1&open=AaGKuPFMTD99LZxLGSD1&pullRequest=1592

Check failure on line 377 in org.restlet.ext.graphql/src/main/java/org/restlet/ext/graphql/GraphqlServerAdapter.java

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Refactor this method to reduce its Cognitive Complexity from 27 to the 15 allowed.

See more on https://sonarcloud.io/project/issues?id=restlet_restlet-framework-java&issues=AaGKuPFETD99LZxLGSDy&open=AaGKuPFETD99LZxLGSDy&pullRequest=1592

Check warning on line 159 in org.restlet.ext.graphql/src/test/java/org/restlet/ext/graphql/GraphqlSseTestCase.java

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Remove this use of "Thread.sleep()".

See more on https://sonarcloud.io/project/issues?id=restlet_restlet-framework-java&issues=AaGKuPFLTD99LZxLGSD0&open=AaGKuPFLTD99LZxLGSD0&pullRequest=1592

Check warning on line 162 in org.restlet.ext.graphql/src/main/java/org/restlet/ext/graphql/internal/GraphqlEventStream.java

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Rename "subscriber" which hides the field declared at line 56.

See more on https://sonarcloud.io/project/issues?id=restlet_restlet-framework-java&issues=AaGKuPFATD99LZxLGSDu&open=AaGKuPFATD99LZxLGSDu&pullRequest=1592

Check failure on line 553 in org.restlet.ext.graphql/src/main/java/org/restlet/ext/graphql/GraphqlClientAdapter.java

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Refactor this method to reduce its Cognitive Complexity from 21 to the 15 allowed.

See more on https://sonarcloud.io/project/issues?id=restlet_restlet-framework-java&issues=AaGQmNdsQ4iSPc4VzLDM&open=AaGQmNdsQ4iSPc4VzLDM&pullRequest=1592

Check warning on line 472 in org.restlet.ext.graphql/src/test/java/org/restlet/ext/graphql/GraphqlSseTestCase.java

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Use assertNotNull instead.

See more on https://sonarcloud.io/project/issues?id=restlet_restlet-framework-java&issues=AaGKuPFMTD99LZxLGSD3&open=AaGKuPFMTD99LZxLGSD3&pullRequest=1592

Check warning on line 191 in org.restlet.ext.graphql/src/main/java/org/restlet/ext/graphql/internal/GraphqlEventStream.java

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Replace "e" with an unnamed pattern.

See more on https://sonarcloud.io/project/issues?id=restlet_restlet-framework-java&issues=AaGKuPFATD99LZxLGSDx&open=AaGKuPFATD99LZxLGSDx&pullRequest=1592

Check warning on line 176 in org.restlet.ext.graphql/src/main/java/org/restlet/ext/graphql/internal/GraphqlEventStream.java

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Replace the chain of if/else with a switch expression.

See more on https://sonarcloud.io/project/issues?id=restlet_restlet-framework-java&issues=AaGKuPFATD99LZxLGSDv&open=AaGKuPFATD99LZxLGSDv&pullRequest=1592

Check failure on line 306 in org.restlet.ext.graphql/src/main/java/org/restlet/ext/graphql/GraphqlClientAdapter.java

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Define a constant instead of duplicating this literal "document" 4 times.

See more on https://sonarcloud.io/project/issues?id=restlet_restlet-framework-java&issues=AaGKuPFJTD99LZxLGSDz&open=AaGKuPFJTD99LZxLGSDz&pullRequest=1592

Check failure on line 134 in org.restlet.ext.graphql/src/test/java/org/restlet/ext/graphql/GraphqlSseEdgeCasesTestCase.java

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Add a nested comment explaining why this method is empty, throw an UnsupportedOperationException or complete the implementation.

See more on https://sonarcloud.io/project/issues?id=restlet_restlet-framework-java&issues=AaGQmNfKQ4iSPc4VzLDN&open=AaGQmNfKQ4iSPc4VzLDN&pullRequest=1592