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:
20: package org.apache.axis2.tool.codegen.eclipse.util;
21:
22: public class NamespaceFinder {
23:
24: private static String NS_PREFIX = "http://";
25: private static String SCHEMA_NS_SUFFIX = "/xsd";
26: private static String SCHEMA_NS_DEFAULT_PREFIX = "xsd";
27: private static String NS_DEFAULT_PREFIX = "ns";
28:
29: public static String getTargetNamespaceFromClass(
30: String fullyQualifiedClassName) {
31: //tokenize the className
32: String[] classNameParts = fullyQualifiedClassName.split("\\.");
33: //add the strings in reverse order to make the namespace
34: String nsUri = "";
35: for (int i = classNameParts.length - 2; i >= 0; i--) {
36: nsUri = nsUri + classNameParts[i] + (i == 0 ? "" : ".");
37: }
38:
39: return NS_PREFIX + nsUri;
40:
41: }
42:
43: public static String getSchemaTargetNamespaceFromClass(
44: String fullyQualifiedClassName) {
45: return getTargetNamespaceFromClass(fullyQualifiedClassName)
46: + SCHEMA_NS_SUFFIX;
47: }
48:
49: public static String getDefaultSchemaNamespacePrefix() {
50: return SCHEMA_NS_DEFAULT_PREFIX;
51: }
52:
53: public static String getDefaultNamespacePrefix() {
54: return NS_DEFAULT_PREFIX;
55: }
56:
57: public static String getServiceNameText(
58: String fullyQualifiedClassName) {
59: //tokenize the className
60: String[] classNameParts = fullyQualifiedClassName.split("\\.");
61: return classNameParts[classNameParts.length - 1];
62: }
63:
64: }
|