[weld-issues] [JBoss JIRA] (WELD-2618) ProxyFactory#getProxyName() produces non-deterministic verbose proxy names
Title: Message Title Matěj Novotný assigned an issue to Matěj Novotný Weld / WELD-2618 ProxyFactory#getProxyName() produces non-deterministic verbose proxy names Change By: Matěj Novotný Assignee: Matěj Novotný Add Comment This message was sent by Atlassian Jira (v7.13.8#713008-sha1:1606a5c) ___ weld-issues mailing list weld-issues@lists.jboss.org https://lists.jboss.org/mailman/listinfo/weld-issues
[weld-issues] [JBoss JIRA] (WELD-2618) ProxyFactory#getProxyName() produces non-deterministic verbose proxy names
Title: Message Title Matěj Novotný updated an issue Weld / WELD-2618 ProxyFactory#getProxyName() produces non-deterministic verbose proxy names Change By: Matěj Novotný Fix Version/s: 3.1.6.Final Fix Version/s: 3.1.5.Final Add Comment This message was sent by Atlassian Jira (v7.13.8#713008-sha1:1606a5c) ___ weld-issues mailing list weld-issues@lists.jboss.org https://lists.jboss.org/mailman/listinfo/weld-issues
[weld-issues] [JBoss JIRA] (WELD-2618) ProxyFactory#getProxyName() produces non-deterministic verbose proxy names
Title: Message Title Matěj Novotný updated an issue Weld / WELD-2618 ProxyFactory#getProxyName() produces non-deterministic verbose proxy names Change By: Matěj Novotný Fix Version/s: 3.1.5.Final Fix Version/s: 3.1.4.Final Add Comment This message was sent by Atlassian Jira (v7.13.8#713008-sha1:1606a5c) ___ weld-issues mailing list weld-issues@lists.jboss.org https://lists.jboss.org/mailman/listinfo/weld-issues
[weld-issues] [JBoss JIRA] (WELD-2618) ProxyFactory#getProxyName() produces non-deterministic verbose proxy names
Title: Message Title Matěj Novotný updated an issue Weld / WELD-2618 ProxyFactory#getProxyName() produces non-deterministic verbose proxy names Change By: Matěj Novotný Fix Version/s: 3.1.4.Final Add Comment This message was sent by Atlassian Jira (v7.13.8#713008-sha1:1606a5c) ___ weld-issues mailing list weld-issues@lists.jboss.org https://lists.jboss.org/mailman/listinfo/weld-issues
[weld-issues] [JBoss JIRA] (WELD-2618) ProxyFactory#getProxyName() produces non-deterministic verbose proxy names
Title: Message Title Laird Nelson created an issue Weld / WELD-2618 ProxyFactory#getProxyName() produces non-deterministic verbose proxy names Issue Type: Bug Affects Versions: 3.1.3.Final Assignee: Unassigned Components: Proxies Created: 10/Mar/20 6:42 PM Priority: Minor Reporter: Laird Nelson (I created this issue partially at the request of Matej Novotny: https://lists.jboss.org/pipermail/weld-dev/2020-March/003768.html) This is a minor bug with no practical impact but I wanted to capture it so it doesn't get lost. The getProxyName() method can produce different proxy names for the same inputs. This is due in part to the fact that Proxies.TypeInfo does not sort its Set instances. In addition, the getProxyName() method does not actually produce the final proxy name that is used. The getProxyClass() method adds additional computation. The net result is that this kind of thing produces slightly bizarre proxy names: final Method getProxyName = ProxyFactory.class.getDeclaredMethod("getProxyName", String.class, Class.class, Set.class, Bean.class); getProxyName.setAccessible(true); final Set typeSet = new LinkedHashSet<>(); // Let's add two disparate interfaces in an arbitrary, but predictable, order. typeSet.add(Serializable.class); typeSet.add(Cloneable.class); final String proxyName = (String)getProxyName.invoke(null, null, Object.class, typeSet, null); // Serializable.class comes first, so is used to calculate the package name. // Then the interfaces are sorted by their simple names, not their full package names. // So Cloneable comes first. Finally everything is put together, so