aboutsummaryrefslogtreecommitdiffstats
path: root/runtime/src/main
Commit message (Collapse)AuthorAgeFilesLines
* Avoid ThreadLocal memory leak in JoinPointImplAlexander Kriegisch2024-03-121-29/+16
| | | | | | | | | | | | | | | | | | | | | | | according to https://rules.sonarsource.com/java/tag/leak/RSPEC-5164/. Now, there no longer is a thread-local stack of AroundClosure instances, but rather a list of them, which can only grow but never shrink. Instead, we now have a thread-local (integer) list index, for every thread being initialised with pointing to the last element. I.e., every thread can unwind by decrementing the index while proceeding, independently of other threads. A positive side effect is that this approach also works for long-lived threads from thread pools, used by executor services. Hence, test Bugs199Tests.testAsyncProceedNestedAroundAdviceThreadPool_gh128, which was previously commented out, has been activated and passes, see #141. I am not sure if this brings @AspectJ style, non-inlined, nested around advice execution functionally on par with native ones, but at least for current scenarios it seems to work. Fixes #288, #141. Signed-off-by: Alexander Kriegisch <Alexander@Kriegisch.name>
* Globally fix spelling error "dependancy/dependancies"Alexander Kriegisch2024-01-062-2/+2
| | | | Signed-off-by: Alexander Kriegisch <Alexander@Kriegisch.name>
* Remove redundant casts after generics updateAndrey Turbanov2022-04-127-10/+10
|
* Make Stack<AroundClosure> in JoinPointImpl InheritableThreadLocalAlexander Kriegisch2022-03-231-6/+19
| | | | | | | | | | In case of asynchronous proceeding for nested around-advice, child threads need copies of the original around-closure stack. Otherwise, the target method thread will have popped the stack empty after unwinding. Fixes #128. Signed-off-by: Alexander Kriegisch <Alexander@Kriegisch.name>
* Cleanup redundant type casts, due to too weak variable type declarationAndrey Turbanov2022-02-261-2/+1
|
* Update 'runtime' code to use genericsAndrey Turbanov2022-01-1024-98/+98
|
* Replace uses of StringBuffer with StringBuilder.Andrey Turbanov2021-11-2013-13/+13
| | | | StringBuffer is a legacy synchronized class. StringBuilder is a direct replacement to StringBuffer which generally have better performance.
* Upgrade license from CPLv1/EPLv1 to EPLv2Alexander Kriegisch2021-06-04114-1123/+1123
| | | | | | | This was required by the Eclipse team as one precondition for the next release. Signed-off-by: Alexander Kriegisch <Alexander@Kriegisch.name>
* Remove unnecessary interface modifiersLars Grefer2020-08-1711-286/+286
| | | | Signed-off-by: Lars Grefer <eclipse@larsgrefer.de>
* Cleanup unused importsLars Grefer2020-08-161-1/+0
| | | | Signed-off-by: Lars Grefer <eclipse@larsgrefer.de>
* Use the diamond operator where possibleLars Grefer2020-08-133-27/+27
| | | | Signed-off-by: Lars Grefer <eclipse@larsgrefer.de>
* Unnecessary unboxingLars Grefer2020-08-083-8/+8
| | | | | | Reports "unboxing", e.g. explicit unwrapping of wrapped primitive values. Unboxing is unnecessary under Java 5 and newer, and can be safely removed. Signed-off-by: Lars Grefer <eclipse@larsgrefer.de>
* Unnecessary boxingLars Grefer2020-08-081-7/+7
| | | | | | Reports explicit boxing, i.e. wrapping of primitive values in objects. Explicit manual boxing is unnecessary under Java 5 and newer, and can be safely removed. Signed-off-by: Lars Grefer <eclipse@larsgrefer.de>
* 'String.indexOf()' expression is replaceable with 'contains()'Lars Grefer2020-08-081-1/+1
| | | | | | Reports any String.indexOf() expressions which can be replaced with a call to the String.contains() method available in Java 5 and newer. Signed-off-by: Lars Grefer <eclipse@larsgrefer.de>
* 'for' loop replaceable with enhanced 'for' loopLars Grefer2020-08-083-7/+7
| | | | | | Reports for loops which iterate over collections or arrays, and can be replaced with an enhanced for loop (i.e. the foreach iteration syntax). Signed-off-by: Lars Grefer <eclipse@larsgrefer.de>
* PolishAndy Clement2020-07-221-37/+37
|
* 333274: more tests and fixes: nested @Around advice with proceedAndy Clement2019-02-193-20/+82
|
* polish javadoc in runtime moduleAndy Clement2019-02-0759-467/+324
|
* mavenizing runtime module - merged in aspectj5rtAndy Clement2019-01-2468-0/+4849
|
* mavenizing runtime module - completeAndy Clement2019-01-2448-0/+3590