1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package javax.xml.ws;
21
22 import javax.xml.bind.annotation.XmlTransient;
23 import javax.xml.transform.Result;
24 import javax.xml.transform.Source;
25 import javax.xml.transform.stream.StreamResult;
26 import javax.xml.ws.spi.Provider;
27 import java.io.ByteArrayOutputStream;
28
29 @XmlTransient
30 public abstract class EndpointReference {
31 protected EndpointReference() {
32 }
33
34 public static EndpointReference readFrom(Source eprInfoset) {
35 return Provider.provider().readEndpointReference(eprInfoset);
36 }
37
38 public abstract void writeTo(Result result);
39
40 public <T> T getPort(Class<T> serviceEndpointInterface, WebServiceFeature... features) {
41 return Provider.provider().getPort(this, serviceEndpointInterface, features);
42 }
43
44 @Override
45 public String toString() {
46 ByteArrayOutputStream baos = new ByteArrayOutputStream();
47 writeTo(new StreamResult(baos));
48
49 return baos.toString();
50 }
51 }