aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/javassist/util
Commit message (Collapse)AuthorAgeFilesLines
* [#171] Allow running on JDK 8 and possibly on JDK 7 as well. Fixes #171Christian Beikov2018-06-221-9/+43
|
* updates for release 3.23.0-GArel_3_23_0_gachibash2018-06-211-4/+4
|
* JASSIST-271 Allow running on Java 11 by falling back to ↵Christian Beikov2018-04-291-6/+15
| | | | ClassLoader.defineClass for Java > 10
* Some code comments to fill in gaps.nickl-2017-11-121-0/+30
|
* Even now Oracle still not happy.nickl-2017-11-122-12/+64
| | | | | | | | | Runtime still throws warnings illegal actions even after all that, there's just no logic to it. We can use Unsafe but don't touch setAccessible. O well might as well enjoy Unsafe while we still can. Wrapped the Unsafe and added method cache with varargs method for invoke calls. Can still do a lot with it but it does what it needs to for now.
* Refactor definePackage as well.nickl-2017-11-121-0/+179
| | | | Yes it is deprecated but seems the right thing to do
* Give helper private constructor fwiw.nickl-2017-11-121-1/+2
| | | | | Wont stop you from getting an instance but it makes it more trouble at least. Also reduce the visibility of the enum method.
* Add caller class checking.nickl-2017-11-122-1/+23
| | | | | | | | The only thing remotely inforceable is caller class checking. You cannot bypass an exception with setAccesible. Oracle went and removed Reflection.getCallerClass() completely in favour of StackWalker. At least we can share the SecurityManage ClassContext, SecurityActions seems the appropriate venue for our stack trace peek to support the older versions
* MethodHandles for JDK7+.nickl-2017-11-121-5/+34
| | | | | | | Java 7 and 8 does support method handles so we can cater for them. When doing repeated invokes to the same method, keeping a reference to the Method handle is much faster than reflection. Also the API is cleaner not having to Object[] args etc. Worth the effort...
* Refactored SecActs methods and retain 1.6 source.nickl-2017-11-121-45/+73
| | | | Remembered that 1.6 won't know about MethodHandles so must use reflection methods for them still.
* Add sun.misc.Unsafe privileged retrieval to SecActions.nickl-2017-11-121-0/+29
| | | | Also do it anonomously so as not to raise the alarms and upset the powers to be.
* Type check and paramatized rawtypes for SecurityActions.nickl-2017-11-121-38/+41
| | | | Some whitespace got shunted around a bit too.
* Add getMethodHandle to SecurityActions.nickl-2017-11-121-2/+28
| | | | | | | | | | | | The main advantage is that we can do the privileged setAccessible during creation and then freely invoke via the authorized method handle. As per the javadocs: Access checks are applied in the factory methods of Lookup, when a method handle is created. his is a key difference from the Core Reflection API, since java.lang.reflect.Method.invoke performs access checking against every caller, on every call. The performance boost is just a bonus.
* Make an effort to secure privileged use.nickl-2017-11-121-76/+82
| | | | | | Oracle (or maybe it was still Sun) warns that we should prevent from exposing access we gain to privileged functionality like the unsafe etc. Before Oracle decides to restrict us even more lets make an effort at least.
* Organize imports to disolve ambiguity.nickl-2017-10-305-16/+50
|
* Source walk/Spring clean/Parameterize/Enhance et.al.nickl-2017-10-309-192/+180
| | | | | | | | | | | | | The following were applied during multiple itterations through the source. * Parameterize raw types. * Mark unused members. * Annotate override and deprecated methods. * Convert loops to enhance for loop. * Remove redundant else statements. * Widening collection type references. * Optimize code for improved readability. * Squash compiler warnings. * Identify smells.
* Added default serialVersionUID.nickl-2017-10-282-0/+5
|
* 3.22.0-GA releaserel_3_22_0_galistchibash2017-10-101-1/+1
|
* delete testHotswap() because java 9 does not seem to allow a java agent to ↵chibash2017-05-311-2/+1
| | | | be attached after the JVM starts
* adds javassist.util.HotSwapAgentchibash2017-04-162-0/+228
|
* adds javassist.util.proxy.ProxyFactory#onlyPublicMethods. If true, ↵chibash2017-04-153-14/+57
| | | | Javassist uses java.lang.invoke.MethodHandles.Lookup to load a class.
* modifies to use sun.misc.Unsafe#defineClass so that Javassist can run with ↵chibash2017-04-133-59/+145
| | | | jigsaw
* fixes calls to a deprecated method in Java 9.rel_3_21_0-java9-eachibash2016-08-022-5/+12
|
* fixes a bug of ProxyFactory. It could not deal with default methods ↵chibash2016-07-301-2/+17
| | | | declared in an interface. https://github.com/jboss-javassist/javassist/issues/45
* updates javassist.util.proxy to support a default interface method in Java 8chibash2016-02-221-1/+2
|
* fixes a concurrency bug in ProxyFactory (JASSIST-259)chibash2016-02-121-5/+6
|
* rebuilt javassist.jarchibash2015-08-071-1/+1
|
* fixed JASSIST-244chibash2015-08-071-3/+20
|
* preparation for 3.19 release. fixed bugs in javadoc commentschibash2015-01-062-17/+15
|
* fixed JASSIST-206chibash2013-07-231-0/+36
|
* fixed JASSIST-199chibash2013-05-261-13/+36
|
* fixed JASSIST-162 and JASSIST-189chiba2013-04-111-13/+27
| | | | git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@701 30ef5769-5b8d-40dd-aea6-55b5d6557bb3
* fixed JASSIST-183chiba2013-03-261-2/+14
| | | | git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@700 30ef5769-5b8d-40dd-aea6-55b5d6557bb3
* fixed JASSIST-163. Eager initialization has been implemented.chiba2012-10-253-62/+88
| | | | git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@676 30ef5769-5b8d-40dd-aea6-55b5d6557bb3
* fixed JASSIST-163chiba2012-08-031-1/+4
| | | | git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@645 30ef5769-5b8d-40dd-aea6-55b5d6557bb3
* fixed JASSIST-163chiba2012-06-141-5/+9
| | | | git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@637 30ef5769-5b8d-40dd-aea6-55b5d6557bb3
* fixed a typo in a javadoc comment.chiba2012-02-051-1/+1
| | | | git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@608 30ef5769-5b8d-40dd-aea6-55b5d6557bb3
* fixed JASSIST-144chiba2011-09-016-17/+88
| | | | git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@591 30ef5769-5b8d-40dd-aea6-55b5d6557bb3
* fixed JASSIST-127chiba2011-08-212-9/+31
| | | | git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@588 30ef5769-5b8d-40dd-aea6-55b5d6557bb3
* added the Apache license.chiba2011-07-0811-23/+34
| | | | git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@584 30ef5769-5b8d-40dd-aea6-55b5d6557bb3
* fixed typos.chiba2010-07-221-1/+1
| | | | git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@561 30ef5769-5b8d-40dd-aea6-55b5d6557bb3
* preparation for GA releasechiba2010-04-142-0/+34
| | | | git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@528 30ef5769-5b8d-40dd-aea6-55b5d6557bb3
* fixed regression introduced by fix to ProxyFactory -- fixes JASSIST-113adinn2010-04-131-13/+17
| | | | git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@527 30ef5769-5b8d-40dd-aea6-55b5d6557bb3
* fixes for JASSIST-42 and JASSIST-97adinn2010-04-121-8/+25
| | | | git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@525 30ef5769-5b8d-40dd-aea6-55b5d6557bb3
* fixes for JASSIST-42 and JASSIST-97chiba2010-04-111-5/+5
| | | | git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@524 30ef5769-5b8d-40dd-aea6-55b5d6557bb3
* fixes for JASSIST-42 and JASSIST-97adinn2010-04-085-200/+566
| | | | git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@522 30ef5769-5b8d-40dd-aea6-55b5d6557bb3
* fixed potential strong cyclic reference from proxy cache entries back to ↵adinn2010-03-091-57/+76
| | | | | | their class loader -- fixes JASSIST-104 git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@517 30ef5769-5b8d-40dd-aea6-55b5d6557bb3
* Mark Struberg's patch for JASSIST-97chiba2010-03-083-1/+34
| | | | git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@516 30ef5769-5b8d-40dd-aea6-55b5d6557bb3
* JASSIST-85chiba2010-02-141-1/+0
| | | | git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@508 30ef5769-5b8d-40dd-aea6-55b5d6557bb3
* fixed JIRA JASSIST-85chiba2009-06-261-0/+11
| | | | git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@483 30ef5769-5b8d-40dd-aea6-55b5d6557bb3