1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.springframework.ws.config;
18
19 import org.springframework.beans.factory.support.BeanDefinitionBuilder;
20 import org.springframework.beans.factory.xml.AbstractSimpleBeanDefinitionParser;
21 import org.springframework.beans.factory.xml.ParserContext;
22 import org.springframework.util.ClassUtils;
23 import org.springframework.util.StringUtils;
24
25 import org.w3c.dom.Element;
26
27
28
29
30
31
32
33
34 @Deprecated
35 class MarshallingEndpointsBeanDefinitionParser extends AbstractSimpleBeanDefinitionParser {
36
37 private static final String GENERIC_MARSHALLING_METHOD_ENDPOINT_ADAPTER_CLASS_NAME =
38 "org.springframework.ws.server.endpoint.adapter.GenericMarshallingMethodEndpointAdapter";
39
40 private static final boolean genericAdapterPresent =
41 ClassUtils.isPresent(GENERIC_MARSHALLING_METHOD_ENDPOINT_ADAPTER_CLASS_NAME,
42 MarshallingEndpointsBeanDefinitionParser.class.getClassLoader());
43
44 private static final String MARSHALLING_METHOD_ENDPOINT_ADAPTER_CLASS_NAME =
45 "org.springframework.ws.server.endpoint.adapter.MarshallingMethodEndpointAdapter";
46
47 @Override
48 protected boolean shouldGenerateIdAsFallback() {
49 return true;
50 }
51
52 @Override
53 protected String getBeanClassName(Element element) {
54 if (genericAdapterPresent) {
55 return GENERIC_MARSHALLING_METHOD_ENDPOINT_ADAPTER_CLASS_NAME;
56 }
57 return MARSHALLING_METHOD_ENDPOINT_ADAPTER_CLASS_NAME;
58 }
59
60 @Override
61 protected void doParse(Element element, ParserContext parserContext, BeanDefinitionBuilder beanDefinitionBuilder) {
62 String marshallerName = element.getAttribute("marshaller");
63 if (StringUtils.hasText(marshallerName)) {
64 beanDefinitionBuilder.addPropertyReference("marshaller", marshallerName);
65 }
66 String unmarshallerName = element.getAttribute("unmarshaller");
67 if (StringUtils.hasText(unmarshallerName)) {
68 beanDefinitionBuilder.addPropertyReference("unmarshaller", unmarshallerName);
69 }
70 }
71
72 }