History log of /external/dexmaker/dexmaker/src/main/java/com/android/dx/stock/ProxyBuilder.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
309cc66e50aaac713a5c2c72e3ea6b236716b036 05-Aug-2016 Paul Duffin <paulduffin@google.com> Scan for methods in extra interface hierarchy

The ProxyBuilder was not traversing the interface hierarchy
of the extra interfaces provided by the caller to find methods
to proxy. That resulted in an AbstractMethodError when those
methods were called.

(cherry picked from d6b8d02d4fc7d57f0b72dba598b6320ef02a8213)

Bug: 36407367
Bug: 32912773
Test: Added a failing test then fixed it, reran tests
Change-Id: If68105da3b7e62383c8fa8ececc21383b299d854
/external/dexmaker/dexmaker/src/main/java/com/android/dx/stock/ProxyBuilder.java
db20bbcc82de39f499a804d215851995041f3bcf 15-Mar-2017 Paul Duffin <paulduffin@google.com> Reapply - Hacks to allow mocking of package private classes

2 things are required to allow mocking for package private classes.
First is creating the mock in the same class as the base, that part
is simple and seems to have no effect. The second is to have a matching
ClassLoader as the source class.

To make the classloader match, instead of generating a new ClassLoader,
add the new dex to the existing one and share the base class's ClassLoader.
Since this is a persistent change and could affect the process, it will be
opt-in through setting a system property.

This also appears to have unintended speedup in the tests I was testing,
possible through cache fixes or brokenness.

(cherry picked from commit 31b974435499d3c9769ed6a746e946187f3be64f)

Test: Add System.setProperty("dexmaker.share_classloader", "true) to SysuiTestCase
then runtest systemui

Change-Id: I35c805ee3797ff151ac19bd0c931ebfd41d3b670
/external/dexmaker/dexmaker/src/main/java/com/android/dx/stock/ProxyBuilder.java
b8a5896885d4da2b798888b688a46df1adbf5b89 15-Mar-2017 Paul Duffin <paulduffin@google.com> Update to version 2.2.0 and make it build

Updated using ./update_source.sh 2.2.0

Added lib directory to contain prebuilt versions of the dx and
dex libraries to replace the contents of the dx directory which
was deleted upstream.

Bug: 36231644
Test: make checkbuild
Change-Id: I31de03f40e4af097be01b5d9f2fe2c71ae879b54
/external/dexmaker/dexmaker/src/main/java/com/android/dx/stock/ProxyBuilder.java