001 /*
002 * Licensed to the Apache Software Foundation (ASF) under one
003 * or more contributor license agreements. See the NOTICE file
004 * distributed with this work for additional information
005 * regarding copyright ownership. The ASF licenses this file
006 * to you under the Apache License, Version 2.0 (the
007 * "License"); you may not use this file except in compliance
008 * with the License. You may obtain a copy of the License at
009 *
010 * http://www.apache.org/licenses/LICENSE-2.0
011 *
012 * Unless required by applicable law or agreed to in writing,
013 * software distributed under the License is distributed on an
014 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
015 * KIND, either express or implied. See the License for the
016 * specific language governing permissions and limitations
017 * under the License.
018 */
019
020 package javax.xml.ws;
021
022 import javax.xml.ws.spi.Provider;
023 import java.util.List;
024 import java.util.Map;
025 import java.util.concurrent.Executor;
026
027 public abstract class Endpoint {
028
029 public Endpoint() {
030 }
031
032 public static Endpoint create(Object implementor) {
033 return create(null, implementor);
034 }
035
036 public static Endpoint create(String bindingId, Object implementor) {
037 return Provider.provider().createEndpoint(bindingId, implementor);
038 }
039
040 public abstract Binding getBinding();
041
042 public abstract Object getImplementor();
043
044 public abstract void publish(String s);
045
046 public static Endpoint publish(String address, Object implementor) {
047 return Provider.provider().createAndPublishEndpoint(address, implementor);
048 }
049
050 public abstract void publish(Object obj);
051
052 public abstract void stop();
053
054 public abstract boolean isPublished();
055
056 public abstract List<javax.xml.transform.Source> getMetadata();
057
058 public abstract void setMetadata(List<javax.xml.transform.Source> list);
059
060 public abstract Executor getExecutor();
061
062 public abstract void setExecutor(Executor executor);
063
064 public abstract Map<java.lang.String, java.lang.Object> getProperties();
065
066 public abstract void setProperties(Map<java.lang.String, java.lang.Object> map);
067
068 public abstract EndpointReference getEndpointReference(org.w3c.dom.Element... referenceParameters);
069
070 public abstract <T extends EndpointReference> T getEndpointReference(Class<T> clazz, org.w3c.dom.Element... referenceParameters);
071
072 public static final String WSDL_SERVICE = "javax.xml.ws.wsdl.service";
073 public static final String WSDL_PORT = "javax.xml.ws.wsdl.port";
074 }