1 /**
2 * Licensed to the Apache Software Foundation (ASF) under one
3 * or more contributor license agreements. See the NOTICE file
4 * distributed with this work for additional information
5 * regarding copyright ownership. The ASF licenses this file
6 * to you under the Apache License, Version 2.0 (the
7 * "License"); you may not use this file except in compliance
8 * with the License. You may obtain a copy of the License at
9 *
10 * http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing,
13 * software distributed under the License is distributed on an
14 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 * KIND, either express or implied. See the License for the
16 * specific language governing permissions and limitations
17 * under the License.
18 */
19
20 package org.apache.ws.security;
21
22 import javax.xml.namespace.QName;
23 import java.io.Serializable;
24
25 /**
26 * An interface defining SOAP constants. This allows various parts of the
27 * engine to avoid hardcoding dependence on a particular SOAP version and its
28 * associated URIs, etc.
29 * <p/>
30 * This might be fleshed out later to encapsulate factories for behavioral
31 * objects which act differently depending on the SOAP version, but for now
32 * it just supplies common namespaces + QNames.
33 *
34 * @author Glen Daniels (gdaniels@apache.org)
35 * @author Andras Avar (andras.avar@nokia.com)
36 */
37 public interface SOAPConstants extends Serializable {
38 /**
39 * SOAP 1.1 constants - thread-safe and shared
40 */
41 SOAP11Constants SOAP11_CONSTANTS = new SOAP11Constants();
42 /**
43 * SOAP 1.2 constants - thread-safe and shared
44 */
45 SOAP12Constants SOAP12_CONSTANTS = new SOAP12Constants();
46
47 /**
48 * Obtain the envelope namespace for this version of SOAP
49 */
50 String getEnvelopeURI();
51
52 /**
53 * Obtain the QName for the Header element
54 */
55 QName getHeaderQName();
56
57 /**
58 * Obtain the QName for the Body element
59 */
60 QName getBodyQName();
61
62 /**
63 * Obtain the QName for the role attribute (actor/role)
64 */
65 QName getRoleAttributeQName();
66
67 /**
68 * Obtain the "next" role/actor URI
69 */
70 String getNextRoleURI();
71
72 /**
73 * Obtain the "next" role/actor URI
74 */
75 String getMustUnderstand();
76
77
78 }