01: /*
02: * Licensed to the Apache Software Foundation (ASF) under one
03: * or more contributor license agreements. See the NOTICE file
04: * distributed with this work for additional information
05: * regarding copyright ownership. The ASF licenses this file
06: * to you under the Apache License, Version 2.0 (the
07: * "License"); you may not use this file except in compliance
08: * with the License. You may obtain a copy of the License at
09: *
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: package org.apache.axis2.wsdl;
20:
21: import org.apache.axis2.description.WSDL2Constants;
22:
23: import javax.xml.namespace.QName;
24:
25: /**
26: * Some utility methods for the WSDL users
27: */
28: public class WSDLUtil {
29:
30: /**
31: * returns whether the given mep uri is one of the
32: * input meps
33: *
34: * @param mep
35: */
36: public static boolean isInputPresentForMEP(String mep) {
37: return WSDLConstants.WSDL20_2006Constants.MEP_URI_IN_OPTIONAL_OUT
38: .equals(mep)
39: || WSDL2Constants.MEP_URI_IN_ONLY.equals(mep)
40: || WSDL2Constants.MEP_URI_IN_OUT.equals(mep)
41: || WSDL2Constants.MEP_URI_OUT_IN.equals(mep)
42: || WSDL2Constants.MEP_URI_OUT_OPTIONAL_IN.equals(mep)
43: || WSDL2Constants.MEP_URI_ROBUST_IN_ONLY.equals(mep);
44: }
45:
46: /**
47: * returns whether the given mep URI is one of the output meps
48: *
49: * @param MEP
50: */
51: public static boolean isOutputPresentForMEP(String MEP) {
52: return WSDL2Constants.MEP_URI_IN_OPTIONAL_OUT.equals(MEP)
53: || WSDL2Constants.MEP_URI_IN_OUT.equals(MEP)
54: || WSDL2Constants.MEP_URI_OUT_IN.equals(MEP)
55: || WSDL2Constants.MEP_URI_OUT_ONLY.equals(MEP)
56: || WSDL2Constants.MEP_URI_OUT_OPTIONAL_IN.equals(MEP)
57: || WSDL2Constants.MEP_URI_ROBUST_OUT_ONLY.equals(MEP);
58: }
59:
60: /**
61: * part names are not unique across messages. Hence
62: * we need some way of making the part name a unique
63: * one (due to the fact that the type mapper
64: * is a global list of types).
65: * The seemingly best way to do that is to
66: * specify a namespace for the part QName reference which
67: * is stored in the list. This part qname is
68: * temporary and should not be used with it's
69: * namespace URI (which happened to be the operation name)
70: * with _input (or a similar suffix) attached to it
71: *
72: * @param opName
73: * @param suffix
74: * @param partName
75: */
76: public static QName getPartQName(String opName, String suffix,
77: String partName) {
78: return new QName(opName + suffix, partName);
79: }
80:
81: }
|