You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openwebbeans.apache.org by rm...@apache.org on 2020/12/30 13:48:07 UTC
[openwebbeans] branch master updated: [OWB-1364] ensure we ignore
non proxied Object class when computing stable proxy names
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 c5103b0 [OWB-1364] ensure we ignore non proxied Object class when computing stable proxy names
c5103b0 is described below
commit c5103b076723075832cdb981aedc085d7467b548
Author: Romain Manni-Bucau <rm...@gmail.com>
AuthorDate: Wed Dec 30 14:48:01 2020 +0100
[OWB-1364] ensure we ignore non proxied Object class when computing stable proxy names
---
.../apache/webbeans/corespi/scanner/xbean/OwbAnnotationFinder.java | 4 ++--
.../main/java/org/apache/webbeans/proxy/AbstractProxyFactory.java | 5 ++++-
.../test/java/org/apache/webbeans/test/managed/ProxyFactoryTest.java | 2 +-
3 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/webbeans-impl/src/main/java/org/apache/webbeans/corespi/scanner/xbean/OwbAnnotationFinder.java b/webbeans-impl/src/main/java/org/apache/webbeans/corespi/scanner/xbean/OwbAnnotationFinder.java
index 1b4b13c..afd4e44 100644
--- a/webbeans-impl/src/main/java/org/apache/webbeans/corespi/scanner/xbean/OwbAnnotationFinder.java
+++ b/webbeans-impl/src/main/java/org/apache/webbeans/corespi/scanner/xbean/OwbAnnotationFinder.java
@@ -42,8 +42,8 @@ public class OwbAnnotationFinder extends AnnotationFinder
public OwbAnnotationFinder(final Class<?>[] classes)
{
- super(new ClassesArchive(/*empty since we want to read from reflection, not form resources*/));
- Stream.of(classes).forEach(super::readClassDef);
+ super(new ClassesArchive(/*empty since we want to read from reflection, not from resources*/));
+ Stream.of(classes).forEach(c -> super.readClassDef(c));
}
public ClassInfo getClassInfo(String className)
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 f9625f1..6be6ee3 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
@@ -252,7 +252,10 @@ public abstract class AbstractProxyFactory
proxiedMethods == null ? Stream.empty() :
Stream.of(proxiedMethods).map(Method::toGenericString).sorted(),
notProxiedMethods == null ? Stream.empty() :
- Stream.of(notProxiedMethods).map(Method::toGenericString).map(it -> "<NOT>" + it).sorted()
+ Stream.of(notProxiedMethods)
+ .filter(it -> it.getDeclaringClass() != Object.class)
+ .map(Method::toGenericString)
+ .map(it -> "<NOT>" + it).sorted()
).collect(joining("_")))));
}
// else unsafe - 1 proxy per class max!
diff --git a/webbeans-impl/src/test/java/org/apache/webbeans/test/managed/ProxyFactoryTest.java b/webbeans-impl/src/test/java/org/apache/webbeans/test/managed/ProxyFactoryTest.java
index 38f3945..0ff1ecd 100644
--- a/webbeans-impl/src/test/java/org/apache/webbeans/test/managed/ProxyFactoryTest.java
+++ b/webbeans-impl/src/test/java/org/apache/webbeans/test/managed/ProxyFactoryTest.java
@@ -123,7 +123,7 @@ public class ProxyFactoryTest extends AbstractUnitTest
final ABean bean1 = getInstance("bean1");
final ABean bean2 = getInstance("bean2");
assertEquals(
- "org.apache.webbeans.test.managed.ProxyFactoryTest$ABean$$OwbNormalScopeProxy8050522010792129812",
+ "org.apache.webbeans.test.managed.ProxyFactoryTest$ABean$$OwbNormalScopeProxy5751833139562769786",
bean1.getClass().getName());
assertEquals(
"org.apache.webbeans.test.managed.ProxyFactoryTest$ABean$$OwbInterceptProxy5751833139562769786",