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

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


The following commit(s) were added to refs/heads/master by this push:
     new 044b088  trying to unify the logic in fixPreservedPackages to isolate 
the prefixes we handles in a single 'array like' structure
044b088 is described below

commit 044b088d6270c66b338e0f951b00c37e24e39a2d
Author: Romain Manni-Bucau <rmannibu...@gmail.com>
AuthorDate: Sat Mar 13 19:45:56 2021 +0100

    trying to unify the logic in fixPreservedPackages to isolate the prefixes 
we handles in a single 'array like' structure
---
 .../org/apache/webbeans/proxy/AbstractProxyFactory.java    | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git 
a/webbeans-impl/src/main/java/org/apache/webbeans/proxy/AbstractProxyFactory.java
 
b/webbeans-impl/src/main/java/org/apache/webbeans/proxy/AbstractProxyFactory.java
index 1b156cf..f66d03b 100644
--- 
a/webbeans-impl/src/main/java/org/apache/webbeans/proxy/AbstractProxyFactory.java
+++ 
b/webbeans-impl/src/main/java/org/apache/webbeans/proxy/AbstractProxyFactory.java
@@ -269,15 +269,15 @@ public abstract class AbstractProxyFactory
         return "org.apache.webbeans.custom.signed." + classToProxy.getName();
     }
 
-    protected String fixPreservedPackages(String proxyClassName)
+    protected String fixPreservedPackages(final String proxyClassName)
     {
-        proxyClassName = fixPreservedPackage(proxyClassName, "java.");
-        proxyClassName = fixPreservedPackage(proxyClassName, "javax.");
-        proxyClassName = fixPreservedPackage(proxyClassName, "jakarta.");
-        proxyClassName = fixPreservedPackage(proxyClassName, "sun.misc.");
-
-        return proxyClassName;
+        return Stream.of("java.", "javax.", "jakarta.", "sun.misc.")
+                .filter(proxyClassName::startsWith)
+                .findFirst() // can only be one, you can't start with 2 of them
+                .map(it -> fixPreservedPackage(proxyClassName, it))
+                .orElse(proxyClassName);
     }
+
     /**
      * Detect if the provided className is in the forbidden package.
      * If so, move it to org.apache.webbeans.custom.

Reply via email to