1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.springframework.ws.server.endpoint.interceptor;
18
19 import org.springframework.util.Assert;
20 import org.springframework.ws.WebServiceMessage;
21 import org.springframework.ws.context.MessageContext;
22 import org.springframework.ws.server.EndpointInterceptor;
23 import org.springframework.ws.server.SmartEndpointInterceptor;
24
25
26
27
28
29
30
31
32 public class DelegatingSmartEndpointInterceptor implements SmartEndpointInterceptor {
33
34 private final EndpointInterceptor delegate;
35
36
37
38
39
40
41 public DelegatingSmartEndpointInterceptor(EndpointInterceptor delegate) {
42 Assert.notNull(delegate, "'delegate' must not be null");
43 this.delegate = delegate;
44 }
45
46
47
48
49
50 public EndpointInterceptor getDelegate() {
51 return delegate;
52 }
53
54
55
56
57
58
59 public boolean shouldIntercept(MessageContext messageContext, Object endpoint) {
60 WebServiceMessage request = messageContext.getRequest();
61 return request != null && shouldIntercept(request, endpoint);
62 }
63
64
65
66
67
68
69
70
71
72
73 protected boolean shouldIntercept(WebServiceMessage request, Object endpoint) {
74 return true;
75 }
76
77 public boolean handleRequest(MessageContext messageContext, Object endpoint) throws Exception {
78 return getDelegate().handleRequest(messageContext, endpoint);
79 }
80
81 public boolean handleResponse(MessageContext messageContext, Object endpoint) throws Exception {
82 return getDelegate().handleResponse(messageContext, endpoint);
83 }
84
85 public boolean handleFault(MessageContext messageContext, Object endpoint) throws Exception {
86 return getDelegate().handleFault(messageContext, endpoint);
87 }
88
89 public void afterCompletion(MessageContext messageContext, Object endpoint, Exception ex) throws Exception {
90 getDelegate().afterCompletion(messageContext, endpoint, ex);
91 }
92 }