Skip to content

Conversation

@dariuszkuc
Copy link
Collaborator

📝 Description

FlowSubscriptionExecutionStrategy was available in the schema-generator library but we never integrated it with the spring-server. Since all our subscription handlers are based on the publisher API, I also updated flow subscription strategy to return publisher as well. This is a breaking for the existing flow subscription strategy users but without this change we would need to rewrite all our subscription handling logic to support flow natively (which we should do eventually when/if we move away from graphql-java based execution).

Explicit casts are required due to the type erasure and also Java reliance on site-variance vs Kotlin declaration-variance.

🔗 Related Issues

#358
#970

`FlowSubscriptionExecutionStrategy` was available in the schema-generator library but we never integrated it with the spring-server. Since all our subscription handlers are based on the publisher API, I also updated flow subscription strategy to return publisher as well. This is a breaking for the existing flow subscription strategy users but without this change we would need to rewrite all our subscription handling logic to support flow natively (which we should do eventually when/if we move away from `graphql-java` based execution).

Explicit casts are required due to the type erasure and also Java reliance on site-variance vs Kotlin declaration-variance.
@dariuszkuc dariuszkuc added changes: major Changes require a major version module: generator Issue affects the schema generator and federation code module: server Issue affects the server code labels Dec 16, 2020
@smyrick smyrick merged commit e518536 into ExpediaGroup:master Dec 16, 2020
@dariuszkuc dariuszkuc deleted the flow_subscriptions branch December 16, 2020 23:55
@dariuszkuc dariuszkuc added this to the 4.0.0 milestone Jan 12, 2021
huehnerlady pushed a commit to huehnerlady/graphql-kotlin that referenced this pull request Apr 27, 2021
* [server] add support for flow subscriptions

`FlowSubscriptionExecutionStrategy` was available in the schema-generator library but we never integrated it with the spring-server. Since all our subscription handlers are based on the publisher API, I also updated flow subscription strategy to return publisher as well. This is a breaking for the existing flow subscription strategy users but without this change we would need to rewrite all our subscription handling logic to support flow natively (which we should do eventually when/if we move away from `graphql-java` based execution).

Explicit casts are required due to the type erasure and also Java reliance on site-variance vs Kotlin declaration-variance.

* update docs
dariuszkuc added a commit to dariuszkuc/graphql-kotlin that referenced this pull request Aug 5, 2022
* [server] add support for flow subscriptions

`FlowSubscriptionExecutionStrategy` was available in the schema-generator library but we never integrated it with the spring-server. Since all our subscription handlers are based on the publisher API, I also updated flow subscription strategy to return publisher as well. This is a breaking for the existing flow subscription strategy users but without this change we would need to rewrite all our subscription handling logic to support flow natively (which we should do eventually when/if we move away from `graphql-java` based execution).

Explicit casts are required due to the type erasure and also Java reliance on site-variance vs Kotlin declaration-variance.

* update docs
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changes: major Changes require a major version module: generator Issue affects the schema generator and federation code module: server Issue affects the server code

Development

Successfully merging this pull request may close these issues.

2 participants