|
14 | 14 | */
|
15 | 15 | package graphql.servlet;
|
16 | 16 |
|
17 |
| -import graphql.execution.ExecutionStrategy; |
18 | 17 | import graphql.execution.instrumentation.Instrumentation;
|
19 |
| -import graphql.schema.GraphQLFieldDefinition; |
20 | 18 | import graphql.schema.GraphQLObjectType;
|
21 | 19 | import graphql.schema.GraphQLSchema;
|
22 | 20 | import graphql.schema.GraphQLType;
|
@@ -103,13 +101,13 @@ public void bindProvider(GraphQLProvider provider) {
|
103 | 101 | }
|
104 | 102 | public void unbindProvider(GraphQLProvider provider) {
|
105 | 103 | if (provider instanceof GraphQLQueryProvider) {
|
106 |
| - queryProviders.remove((GraphQLQueryProvider) provider); |
| 104 | + queryProviders.remove(provider); |
107 | 105 | }
|
108 | 106 | if (provider instanceof GraphQLMutationProvider) {
|
109 |
| - mutationProviders.remove((GraphQLMutationProvider) provider); |
| 107 | + mutationProviders.remove(provider); |
110 | 108 | }
|
111 | 109 | if (provider instanceof GraphQLTypesProvider) {
|
112 |
| - typesProviders.remove((GraphQLTypesProvider) provider); |
| 110 | + typesProviders.remove(provider); |
113 | 111 | }
|
114 | 112 | updateSchema();
|
115 | 113 | }
|
@@ -144,6 +142,14 @@ public void unbindTypesProvider(GraphQLTypesProvider typesProvider) {
|
144 | 142 | updateSchema();
|
145 | 143 | }
|
146 | 144 |
|
| 145 | + @Reference(cardinality = ReferenceCardinality.MULTIPLE, policyOption = ReferencePolicyOption.GREEDY) |
| 146 | + public void bindServletListener(GraphQLServletListener listener) { |
| 147 | + this.addListener(listener); |
| 148 | + } |
| 149 | + public void unbindServletListener(GraphQLServletListener listener) { |
| 150 | + this.removeListener(listener); |
| 151 | + } |
| 152 | + |
147 | 153 | @Reference(cardinality = ReferenceCardinality.OPTIONAL, policyOption = ReferencePolicyOption.GREEDY)
|
148 | 154 | public void setContextProvider(GraphQLContextBuilder contextBuilder) {
|
149 | 155 | this.contextBuilder = contextBuilder;
|
|
0 commit comments