|
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