This is an automated email from the ASF dual-hosted git repository.

buhhunyx pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cxf.git

commit 04876cc1556108d78c04653cd22867fb295cfff8
Author: Alexey Markevich <[email protected]>
AuthorDate: Wed Mar 17 02:02:51 2021 +0300

    cxf-core: cleanup ServiceUtils
---
 .../org/apache/cxf/common/util/PackageUtils.java   |   5 -
 .../java/org/apache/cxf/helpers/ServiceUtils.java  | 124 ---------------------
 .../apache/cxf/common/util/PackageUtilsTest.java   |   4 +-
 .../apache/cxf/aegis/type/AbstractTypeCreator.java |   2 +-
 .../cxf/aegis/type/java5/Java5TypeCreator.java     |   2 +-
 .../org/apache/cxf/aegis/util/ServiceUtils.java    |  78 -------------
 6 files changed, 4 insertions(+), 211 deletions(-)

diff --git a/core/src/main/java/org/apache/cxf/common/util/PackageUtils.java 
b/core/src/main/java/org/apache/cxf/common/util/PackageUtils.java
index 49e19ff..b07874b 100644
--- a/core/src/main/java/org/apache/cxf/common/util/PackageUtils.java
+++ b/core/src/main/java/org/apache/cxf/common/util/PackageUtils.java
@@ -110,11 +110,6 @@ public final class PackageUtils {
         }
 
         String domain = tokens.remove(0);
-        // comma was removed by tokenize
-//        idx = domain.indexOf(':');
-//        if (idx >= 0) {
-//            domain = domain.substring(0, idx);
-//        }
         List<String> r = tokenize(domain, urnScheme ? ".-" : ".");
         Collections.reverse(r);
         if ("www".equalsIgnoreCase(r.get(r.size() - 1))) {
diff --git a/core/src/main/java/org/apache/cxf/helpers/ServiceUtils.java 
b/core/src/main/java/org/apache/cxf/helpers/ServiceUtils.java
index 4abd6a3..a39ee94 100644
--- a/core/src/main/java/org/apache/cxf/helpers/ServiceUtils.java
+++ b/core/src/main/java/org/apache/cxf/helpers/ServiceUtils.java
@@ -19,13 +19,8 @@
 
 package org.apache.cxf.helpers;
 
-import java.lang.reflect.Method;
-import java.net.MalformedURLException;
-import java.net.URL;
 import java.util.StringTokenizer;
 
-import javax.xml.namespace.QName;
-
 import org.apache.cxf.annotations.SchemaValidation.SchemaValidationType;
 import org.apache.cxf.endpoint.Endpoint;
 import org.apache.cxf.message.Exchange;
@@ -183,30 +178,6 @@ public final class ServiceUtils {
         return name;
     }
 
-    public static QName makeQualifiedNameFromClass(Class<?> clazz) {
-        String namespace = makeNamespaceFromClassName(clazz.getName(), "http");
-        String localPart = makeServiceNameFromClassName(clazz);
-        return new QName(namespace, localPart);
-    }
-
-    public static String getMethodName(Method m) {
-        StringBuilder sb = new StringBuilder();
-        sb.append(m.getDeclaringClass().getName());
-        sb.append('.');
-        sb.append(m.getName());
-        sb.append('(');
-        Class<?>[] params = m.getParameterTypes();
-        for (int i = 0; i < params.length; i++) {
-            Class<?> param = params[i];
-            sb.append(param.getName());
-            if (i < params.length - 1) {
-                sb.append(", ");
-            }
-        }
-        sb.append(')');
-        return sb.toString();
-    }
-
     /**
      * Generates the name of a XML namespace from a given class name and
      * protocol. The returned namespace will take the form
@@ -240,99 +211,4 @@ public final class ServiceUtils {
         return protocol + "://" + String.join(".", words) + "/";
     }
 
-    /**
-     * Method makePackageName
-     *
-     * @param namespace
-     */
-    public static String makePackageName(String namespace) {
-
-        String hostname;
-        String path = "";
-
-        // get the target namespace of the document
-        try {
-            URL u = new URL(namespace);
-
-            hostname = u.getHost();
-            path = u.getPath();
-        } catch (MalformedURLException e) {
-            if (namespace.indexOf(':') > -1) {
-                hostname = namespace.substring(namespace.indexOf(':') + 1);
-
-                if (hostname.indexOf('/') > -1) {
-                    hostname = hostname.substring(0, hostname.indexOf('/'));
-                }
-            } else {
-                hostname = namespace;
-            }
-        }
-
-        // if we didn't file a hostname, bail
-        if (hostname == null) {
-            return null;
-        }
-
-        // convert illegal java identifier
-        hostname = hostname.replace('-', '_');
-        path = path.replace('-', '_');
-
-        // chomp off last forward slash in path, if necessary
-        if ((path.length() > 0) && (path.charAt(path.length() - 1) == '/')) {
-            path = path.substring(0, path.length() - 1);
-        }
-
-        // tokenize the hostname and reverse it
-        StringTokenizer st = new StringTokenizer(hostname, ".:");
-        String[] words = new String[st.countTokens()];
-
-        for (int i = 0; i < words.length; ++i) {
-            words[i] = st.nextToken();
-        }
-
-        StringBuilder sb = new StringBuilder(namespace.length());
-
-        for (int i = words.length - 1; i >= 0; --i) {
-            addWordToPackageBuffer(sb, words[i], i == words.length - 1);
-        }
-
-        // tokenize the path
-        StringTokenizer st2 = new StringTokenizer(path, "/");
-
-        while (st2.hasMoreTokens()) {
-            addWordToPackageBuffer(sb, st2.nextToken(), false);
-        }
-
-        return sb.toString();
-    }
-
-    /**
-     * Massage <tt>word</tt> into a form suitable for use in a Java package
-     * name. Append it to the target string buffer with a <tt>.</tt> delimiter
-     * iff <tt>word</tt> is not the first word in the package name.
-     *
-     * @param sb the buffer to append to
-     * @param word the word to append
-     * @param firstWord a flag indicating whether this is the first word
-     */
-    private static void addWordToPackageBuffer(StringBuilder sb, String word, 
boolean firstWord) {
-
-        if (JavaUtils.isJavaKeyword(word)) {
-            word = JavaUtils.makeNonJavaKeyword(word);
-        }
-
-        // separate with dot after the first word
-        if (!firstWord) {
-            sb.append('.');
-        }
-
-        // prefix digits with underscores
-        if (Character.isDigit(word.charAt(0))) {
-            sb.append('_');
-        }
-
-        // replace periods with underscores
-        sb.append(word.replace('.', '_'));
-    }
-
 }
diff --git 
a/core/src/test/java/org/apache/cxf/common/util/PackageUtilsTest.java 
b/core/src/test/java/org/apache/cxf/common/util/PackageUtilsTest.java
index 6dad735..3f930ba 100644
--- a/core/src/test/java/org/apache/cxf/common/util/PackageUtilsTest.java
+++ b/core/src/test/java/org/apache/cxf/common/util/PackageUtilsTest.java
@@ -132,8 +132,8 @@ public class PackageUtilsTest {
                 
PackageUtils.getPackageNameByNameSpaceURI("uri:cxf.apache.org:jstest"));
         assertEquals("soapinterface.ems.esendex.com",
                 
PackageUtils.getPackageNameByNameSpaceURI("com.esendex.ems.soapinterface"));
-        assertEquals("ddd.cc.bb.aa.eee.fff_v01_00",
-                
PackageUtils.getPackageNameByNameSpaceURI("http://aa.bb.cc.ddd/eee/fff_v01.00";));
+        assertEquals("ddd.cc.bb.aa._int.fff_v01_00",
+                
PackageUtils.getPackageNameByNameSpaceURI("http://aa.bb.cc.ddd/Int/fff-v01.00";));
         assertEquals("org.apache.cxf._case",
                 
PackageUtils.getPackageNameByNameSpaceURI("http://www.case.cxf.apache.org";));
         assertEquals("org.apache.cxf._case",
diff --git 
a/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/AbstractTypeCreator.java
 
b/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/AbstractTypeCreator.java
index 8ed3fef..33a59ef 100644
--- 
a/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/AbstractTypeCreator.java
+++ 
b/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/AbstractTypeCreator.java
@@ -34,8 +34,8 @@ import org.apache.cxf.aegis.type.basic.ObjectType;
 import org.apache.cxf.aegis.type.collection.CollectionType;
 import org.apache.cxf.aegis.type.collection.MapType;
 import org.apache.cxf.aegis.util.NamespaceHelper;
-import org.apache.cxf.aegis.util.ServiceUtils;
 import org.apache.cxf.common.util.StringUtils;
+import org.apache.cxf.helpers.ServiceUtils;
 import org.apache.cxf.wsdl.WSDLConstants;
 import org.apache.ws.commons.schema.constants.Constants;
 
diff --git 
a/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/java5/Java5TypeCreator.java
 
b/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/java5/Java5TypeCreator.java
index 9033212..02da76e 100644
--- 
a/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/java5/Java5TypeCreator.java
+++ 
b/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/type/java5/Java5TypeCreator.java
@@ -40,8 +40,8 @@ import org.apache.cxf.aegis.type.TypeClassInfo;
 import org.apache.cxf.aegis.type.TypeUtil;
 import org.apache.cxf.aegis.type.basic.BeanType;
 import org.apache.cxf.aegis.util.NamespaceHelper;
-import org.apache.cxf.aegis.util.ServiceUtils;
 import org.apache.cxf.common.logging.LogUtils;
+import org.apache.cxf.helpers.ServiceUtils;
 
 public class Java5TypeCreator extends AbstractTypeCreator {
     private static final Logger LOG = 
LogUtils.getL7dLogger(Java5TypeCreator.class);
diff --git 
a/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/util/ServiceUtils.java
 
b/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/util/ServiceUtils.java
deleted file mode 100644
index 574efc0..0000000
--- 
a/rt/databinding/aegis/src/main/java/org/apache/cxf/aegis/util/ServiceUtils.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.cxf.aegis.util;
-
-import java.lang.reflect.Method;
-
-import javax.xml.namespace.QName;
-
-/**
- * Helps when constructing, or using services.
- */
-public final class ServiceUtils {
-    private ServiceUtils() {
-
-    }
-
-    /**
-     * Generates a suitable service name from a given class. The returned name
-     * is the simple name of the class, i.e. without the package name.
-     *
-     * @param clazz the class.
-     * @return the name.
-     */
-    public static String makeServiceNameFromClassName(Class<?> clazz) {
-        String name = clazz.getName();
-        int last = name.lastIndexOf('.');
-        if (last != -1) {
-            name = name.substring(last + 1);
-        }
-
-        int inner = name.lastIndexOf('$');
-        if (inner != -1) {
-            name = name.substring(inner + 1);
-        }
-
-        return name;
-    }
-
-    public static QName makeQualifiedNameFromClass(Class<?> clazz) {
-        String namespace = 
NamespaceHelper.makeNamespaceFromClassName(clazz.getName(), "http");
-        String localPart = makeServiceNameFromClassName(clazz);
-        return new QName(namespace, localPart);
-    }
-
-    public static String getMethodName(Method m) {
-        StringBuilder sb = new StringBuilder();
-        sb.append(m.getDeclaringClass().getName());
-        sb.append('.');
-        sb.append(m.getName());
-        sb.append('(');
-        Class<?>[] params = m.getParameterTypes();
-        for (int i = 0; i < params.length; i++) {
-            Class<?> param = params[i];
-            sb.append(param.getName());
-            if (i < params.length - 1) {
-                sb.append(", ");
-            }
-        }
-        sb.append(')');
-        return sb.toString();
-    }
-}

Reply via email to