View Javadoc

1   /*
2    * Copyright 2005 the original author or authors.
3    *
4    * Licensed under the Apache License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    *
8    *      http://www.apache.org/licenses/LICENSE-2.0
9    *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  
17  package org.springframework.ws.soap;
18  
19  import org.springframework.ws.FaultAwareWebServiceMessage;
20  import org.springframework.ws.mime.MimeMessage;
21  
22  /**
23   * Represents an abstraction for SOAP messages, providing access to a SOAP Envelope. The contents of the SOAP body can
24   * be retrieved by <code>getPayloadSource()</code> and <code>getPayloadResult()</code> on
25   * <code>WebServiceMessage</code>, the super-interface of this interface.
26   *
27   * @author Arjen Poutsma
28   * @see #getPayloadSource()
29   * @see #getPayloadResult()
30   * @see #getEnvelope()
31   * @since 1.0.0
32   */
33  public interface SoapMessage extends MimeMessage, FaultAwareWebServiceMessage {
34  
35      /** Returns the <code>SoapEnvelope</code> associated with this <code>SoapMessage</code>. */
36      SoapEnvelope getEnvelope() throws SoapEnvelopeException;
37  
38      /**
39       * Get the SOAP Action for this message, or <code>null</code> if not present.
40       *
41       * @return the SOAP Action.
42       */
43      String getSoapAction();
44  
45      /**
46       * Sets the SOAP Action for this message.
47       *
48       * @param soapAction the SOAP Action.
49       */
50      void setSoapAction(String soapAction);
51  
52      /**
53       * Returns the <code>SoapBody</code> associated with this <code>SoapMessage</code>. This is a convenience method for
54       * <code>getEnvelope().getBody()</code>.
55       *
56       * @see SoapEnvelope#getBody()
57       */
58      SoapBody getSoapBody() throws SoapBodyException;
59  
60      /**
61       * Returns the <code>SoapHeader</code> associated with this <code>SoapMessage</code>. This is a convenience method
62       * for <code>getEnvelope().getHeader()</code>.
63       *
64       * @see SoapEnvelope#getHeader()
65       */
66      SoapHeader getSoapHeader() throws SoapHeaderException;
67  
68      /**
69       * Returns the SOAP version of this message. This can be either SOAP 1.1 or SOAP 1.2.
70       *
71       * @return the SOAP version
72       * @see SoapVersion#SOAP_11
73       * @see SoapVersion#SOAP_12
74       */
75      SoapVersion getVersion();
76  
77  }