1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.springframework.ws.soap.axiom;
18
19 import javax.xml.transform.Result;
20 import javax.xml.transform.Source;
21
22 import org.apache.axiom.soap.SOAPBody;
23 import org.apache.axiom.soap.SOAPFactory;
24
25 import org.springframework.ws.soap.SoapBody;
26
27
28
29
30
31
32
33 abstract class AxiomSoapBody extends AxiomSoapElement implements SoapBody {
34
35 private final Payload payload;
36
37 protected AxiomSoapBody(SOAPBody axiomBody, SOAPFactory axiomFactory, boolean payloadCaching) {
38 super(axiomBody, axiomFactory);
39 if (payloadCaching) {
40 payload = new CachingPayload(axiomBody, axiomFactory);
41 }
42 else {
43 payload = new NonCachingPayload(axiomBody, axiomFactory);
44 }
45 }
46
47 public Source getPayloadSource() {
48 return payload.getSource();
49 }
50
51 public Result getPayloadResult() {
52 return payload.getResult();
53 }
54
55 public boolean hasFault() {
56 return getAxiomBody().hasFault();
57 }
58
59 protected final SOAPBody getAxiomBody() {
60 return (SOAPBody) getAxiomElement();
61 }
62 }