View Javadoc

1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one
3    * or more contributor license agreements. See the NOTICE file
4    * distributed with this work for additional information
5    * regarding copyright ownership. The ASF licenses this file
6    * to you under the Apache License, Version 2.0 (the
7    * "License"); you may not use this file except in compliance
8    * with the License. You may obtain a copy of the License at
9    *
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   */
19  
20  package javax.xml.ws.spi;
21  
22  import javax.xml.bind.JAXBContext;
23  import javax.xml.namespace.QName;
24  import javax.xml.ws.Dispatch;
25  import javax.xml.ws.EndpointReference;
26  import javax.xml.ws.Service;
27  import javax.xml.ws.WebServiceFeature;
28  import javax.xml.ws.handler.HandlerResolver;
29  import java.net.URL;
30  import java.util.Iterator;
31  import java.util.concurrent.Executor;
32  
33  public abstract class ServiceDelegate {
34  
35      protected ServiceDelegate() {
36      }
37  
38      public abstract <T> T getPort(QName qname, Class<T> class1);
39  
40      public abstract <T> T getPort(Class<T> class1);
41  
42      public abstract <T> T getPort(QName portName, Class<T> serviceEndpointInterface, WebServiceFeature... features);
43      
44      public abstract <T> T getPort(EndpointReference endpointReference, Class<T> serviceEndpointInterface, WebServiceFeature... features);
45      
46      public abstract <T> T getPort(Class<T> serviceEndpointInterface, WebServiceFeature... features);
47      
48      public abstract void addPort(QName qname, String bindingId, String s);
49  
50      public abstract <T>Dispatch<T> createDispatch(QName qname, Class<T> class1, Service.Mode mode);
51  
52      public abstract Dispatch<Object> createDispatch(QName qname, JAXBContext jaxbcontext, javax.xml.ws.Service.Mode mode);
53  
54      public abstract <T> Dispatch<T> createDispatch(QName portName, Class<T> type, Service.Mode mode, WebServiceFeature... features);
55      
56      public abstract <T> Dispatch<T> createDispatch(EndpointReference endpointReference, Class<T> type, Service.Mode mode, WebServiceFeature... features);
57      
58      public abstract Dispatch<Object> createDispatch(QName portName, JAXBContext context, Service.Mode mode, WebServiceFeature... features);
59      
60      public abstract Dispatch<Object> createDispatch(EndpointReference endpointReference, JAXBContext context, Service.Mode mode, WebServiceFeature... features);
61      
62      public abstract QName getServiceName();
63  
64      public abstract Iterator<QName> getPorts();
65  
66      public abstract URL getWSDLDocumentLocation();
67  
68      public abstract HandlerResolver getHandlerResolver();
69  
70      public abstract void setHandlerResolver(HandlerResolver handlerresolver);
71  
72      public abstract Executor getExecutor();
73  
74      public abstract void setExecutor(Executor executor);
75  }