01: /**
02: * Licensed to the Apache Software Foundation (ASF) under one
03: * or more contributor license agreements. See the NOTICE file
04: * distributed with this work for additional information
05: * regarding copyright ownership. The ASF licenses this file
06: * to you under the Apache License, Version 2.0 (the
07: * "License"); you may not use this file except in compliance
08: * with the License. You may obtain a copy of the License at
09: *
10: * http://www.apache.org/licenses/LICENSE-2.0
11: *
12: * Unless required by applicable law or agreed to in writing,
13: * software distributed under the License is distributed on an
14: * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15: * KIND, either express or implied. See the License for the
16: * specific language governing permissions and limitations
17: * under the License.
18: */package org.apache.cxf.transport.http;
19:
20: import java.util.ArrayList;
21: import java.util.List;
22:
23: import javax.annotation.PostConstruct;
24: import javax.annotation.Resource;
25:
26: import org.apache.cxf.Bus;
27: import org.apache.cxf.transports.http.QueryHandler;
28: import org.apache.cxf.transports.http.QueryHandlerRegistry;
29:
30: public class QueryHandlerRegistryImpl implements QueryHandlerRegistry {
31:
32: List<QueryHandler> queryHandlers;
33: Bus bus;
34:
35: @PostConstruct
36: public void register() {
37: if (null != bus) {
38: bus.setExtension(this , QueryHandlerRegistry.class);
39: }
40: }
41:
42: @PostConstruct
43: public void init() {
44: queryHandlers = new ArrayList<QueryHandler>();
45: registerHandler(new WSDLQueryHandler(bus));
46: }
47:
48: public List<QueryHandler> getHandlers() {
49: return queryHandlers;
50: }
51:
52: public void registerHandler(QueryHandler handler) {
53: queryHandlers.add(handler);
54: }
55:
56: public void registerHandler(QueryHandler handler, int position) {
57: queryHandlers.add(position, handler);
58: }
59:
60: @Resource
61: public void setBus(Bus b) {
62: bus = b;
63: }
64:
65: public Bus getBus() {
66: return bus;
67: }
68:
69: }
|