Juergen Hoeller
43e806c733
Refined log message for interface-implementing method
...
Issue: SPR-15436
(cherry picked from commit 665e6cf
)
2017-04-17 19:47:24 +02:00
Juergen Hoeller
0d0b879a23
CglibAopProxy logs explicit warning for interface-implementing method marked as final
...
Issue: SPR-15436
2017-04-17 15:02:13 +02:00
Juergen Hoeller
9abf249cee
Explicitly replace target ApplicationListener with singleton proxy, if any (avoiding double registration/invocation)
...
Issue: SPR-15452
2017-04-15 14:10:28 +02:00
Stephane Nicoll
bf6e7d0c26
Update copyright header
...
Closes gh-1382
2017-04-09 09:47:16 +02:00
John S. Ryan
9287bbb91a
Fix typo in AfterReturningAdviceInterceptor JavaDoc
...
See gh-1382
2017-04-09 09:45:46 +02:00
Juergen Hoeller
67ea4b3a05
package-info for repackaged libraries (and other polishing)
2017-04-06 14:10:46 +02:00
Juergen Hoeller
f4de1ea147
Polishing
2017-02-22 15:32:19 +01:00
Juergen Hoeller
5f531a7a7d
Comparators entry point with generically typed factory methods
...
Issue: SPR-14779
2017-02-15 18:05:32 +01:00
Juergen Hoeller
1b2dc3638f
Revisit Assert to avoid single-arg assert methods (with refined messages)
...
Issue: SPR-15196
2017-01-30 22:15:55 +01:00
Juergen Hoeller
ed40b1c8ee
Remove outdated abstractions/delegates from core/util
...
Issue: SPR-15159
2017-01-23 13:41:55 +01:00
Juergen Hoeller
fc629bb508
Polishing
2016-12-29 22:39:36 +01:00
Juergen Hoeller
209e7a700d
Avoid FactoryBean initialization on isSingleton check for decorated bean definition
...
Issue: SPR-14892
Issue: SPR-15042
2016-12-28 17:27:06 +01:00
Juergen Hoeller
a8741dd371
Polishing
2016-12-26 11:26:58 +01:00
Juergen Hoeller
f51fe5fd39
Polishing
2016-12-23 12:27:07 +01:00
Juergen Hoeller
d64d9ab370
Consistent ClassLoader propagation and ConcurrentHashMap setup for AspectJ pointcuts
...
Issue: SPR-15040
2016-12-22 17:00:04 +01:00
Juergen Hoeller
97ea22cb4a
Defensively catch any exception from match attempts (for compatibility with AspectJ 1.8.10)
...
Issue: SPR-15019
2016-12-20 12:17:51 +01:00
Juergen Hoeller
3370f41c61
Defensively catch IllegalStateException from match attempts (for compatibility with AspectJ 1.8.10)
...
Issue: SPR-15019
2016-12-14 22:06:13 +01:00
Juergen Hoeller
6d1cae2f57
Avoid proxy replacement for generic return type signatures
...
Issue: SPR-15010
2016-12-14 22:00:41 +01:00
Juergen Hoeller
84d3808b3b
Upgrade to Mockito 2.2
...
Issue: SPR-14880
2016-11-03 22:53:35 +01:00
Juergen Hoeller
36332441ae
DefaultListableBeanFactory allows early type matching against ScopedProxyFactoryBean
...
Issue: SPR-14816
2016-10-28 23:37:58 +02:00
Juergen Hoeller
5ac5ec1046
No external locking for singleton advice/aspect beans
...
Issue: SPR-14324
2016-10-28 23:35:01 +02:00
Juergen Hoeller
3726c6f18d
Polishing
2016-10-21 12:26:27 +02:00
Juergen Hoeller
cfa0f6c84b
Consistent final logger fields
2016-10-04 23:00:36 +02:00
Juergen Hoeller
ab0d523cc0
Polishing
...
(cherry picked from commit 1932a9d
)
2016-08-17 21:54:40 +02:00
Juergen Hoeller
214c919742
AspectJ bean pointcut supports qualifier match
...
Issue: SPR-11217
2016-08-17 00:43:41 +02:00
Juergen Hoeller
b9ab895743
Inferred generics for newSetFromMap arrangements
...
Issue: SPR-13188
2016-07-26 21:26:31 +02:00
Juergen Hoeller
e03dea1d64
Polishing
2016-07-26 17:15:19 +02:00
Juergen Hoeller
0e3f0bd9d0
Avoid JDK proxy against CGLIB Factory interface and assert required type when resolving dependency
...
Issue: SPR-14478
2016-07-20 18:05:51 +02:00
Juergen Hoeller
a4743c07d4
Polishing
2016-07-19 20:09:00 +02:00
Juergen Hoeller
88fcd0a2ed
Framework build compatible with JDK 9 (tests running against java.base module)
...
Issue: SPR-13344
2016-07-19 19:37:34 +02:00
Juergen Hoeller
aaac199e8b
Consistently use constructor-based instantiation instead of Class.newInstance / BeanUtils.instantiate
...
Issue: SPR-14486
2016-07-19 19:21:06 +02:00
Juergen Hoeller
a1f5fb53db
Java 8 getParameterCount() instead of getParameterTypes().length
...
Issue: SPR-13188
2016-07-07 01:04:24 +02:00
Stephane Nicoll
e4b0486c5a
Add @FunctionalInterface on candidate interfaces
...
Issue: SPR-14432
2016-07-06 14:32:13 +02:00
Juergen Hoeller
bc2c22d51e
Streamline XML namespace support towards unversioned schemas
...
This commit also removes support code for outdated options which were only available in older schema versions.
Issue: SPR-13499
2016-07-05 20:50:03 +02:00
Juergen Hoeller
acdb43f470
Remove remaining JRuby and Commons Pool test resources
...
Issue: SPR-14429
2016-07-05 20:47:39 +02:00
Sam Brannen
1391248ea6
Introduce log4j 2 for Spring's test suite
...
This commit adds a test runtime dependency on log4j 2 for every project
and migrates all log4j.properties files to log4j2-test.xml files.
Issue: SPR-14431
2016-07-05 19:19:09 +02:00
Stephane Nicoll
00d2606b00
Explicit type can be replaced by <>
...
Issue: SPR-13188
2016-07-05 17:00:34 +02:00
Juergen Hoeller
0fc0ce78ae
Drop deprecated dependencies on Log4j, JRuby, JExcel, Burlap, Commons Pool/DBCP
...
This commit also removes outdated support classes for Oracle, GlassFish, JBoss.
Issue: SPR-14429
2016-07-05 15:46:53 +02:00
Juergen Hoeller
51252ebbca
Avoid defensive checks against Java 8 API (java.util.Optional etc)
...
This commit also fixes broken javadoc links and code references.
Issue: SPR-13188
2016-07-05 02:09:00 +02:00
Juergen Hoeller
fd9d518c36
Avoid potential deadlock in AbstractBeanFactoryPointcutAdvisor
...
Issue: SPR-14388
2016-06-22 14:41:20 +02:00
Juergen Hoeller
8cb9d5ebae
EnableAspectJAutoProxy features exposeProxy flag (analogous to XML namespace)
...
Issue: SPR-10454
2016-06-20 13:50:04 +02:00
Juergen Hoeller
162aedccbe
Polishing
2016-05-04 17:02:16 +02:00
Juergen Hoeller
e6e3ca3e96
LazySingletonAspectInstanceFactoryDecorator uses shared singleton mutex
...
Issue: SPR-14241
2016-05-04 09:03:28 +02:00
Johnny Lim
44e652f99e
Remove duplicate words
...
Closes gh-1039
2016-04-19 08:24:21 +02:00
Juergen Hoeller
999112216d
AopUtils.canApply properly matches package-visible methods (aligned with advice matching within proxies)
...
Also, AbstractAutoProxyCreator considers Pointcut as infrastructure class, analogous to Advice and Advisor.
Issue: SPR-14174
2016-04-14 21:46:25 +02:00
Juergen Hoeller
54aeb7a5d6
Cache key classes implement Comparable and consistently provide a toString representation
...
Issue: SPR-14017
2016-03-26 14:32:10 +01:00
Juergen Hoeller
517ebd1d3e
Consistent formatting
2016-03-24 19:22:50 +01:00
Juergen Hoeller
6e3fac85f3
AnnotationAwareOrderComparator uses DecoratingProxy interface for target class introspection
...
Issue: SPR-13884
2016-03-18 22:12:10 +01:00
Juergen Hoeller
f2f87ff1e0
Explicit javadoc references to BeanFactory-based default executor lookup
...
Issue: SPR-14030
2016-03-11 23:52:31 +01:00
Juergen Hoeller
155fa3754b
Consistent lazy resolution of default executor/scheduler for Async/ScheduledAnnotationBeanPostProcessor
...
Issue: SPR-14030
2016-03-11 23:23:58 +01:00
Juergen Hoeller
ab16053ed4
Redistribute AOP Alliance interfaces in spring-aop again (as in Spring 2.x)
...
Issue: SPR-13984
2016-02-26 12:40:00 +01:00
Juergen Hoeller
470ea977e1
Consistent validation of annotated methods behind AOP proxies
...
Issue: SPR-13816
2015-12-23 20:47:28 +01:00
Juergen Hoeller
1cfeb07fa5
Consistent use of varargs plus related polishing
...
(cherry picked from commit deae872
)
2015-12-23 00:31:11 +01:00
Juergen Hoeller
4adb7e2500
AOP proxies with annotation-based aspects are serializable now
...
Issue: SPR-6910
2015-12-22 21:20:33 +01:00
Stephane Nicoll
752d3c715a
Initiate structure for 4.3 XSDs
2015-12-17 15:43:23 +01:00
Juergen Hoeller
753347ea98
Consistent static final logger declarations
2015-12-16 20:44:00 +01:00
Juergen Hoeller
11806b9215
Class identity comparisons wherever possible (and further polishing)
...
Issue: SPR-12926
2015-12-09 12:28:09 +01:00
Juergen Hoeller
20a286b4d6
ASM ClassWriter uses application ClassLoader for its getCommonSuperClass check
...
Issue: SPR-13695
2015-11-24 17:38:02 +01:00
Sam Brannen
de9c030ba1
Suppress warnings in Gradle build
2015-11-17 14:10:35 +01:00
Juergen Hoeller
4b2ce60d65
Polishing
2015-11-13 08:31:13 +01:00
Juergen Hoeller
98be36a306
Extended default collection size for common per-bean caches
...
Issue: SPR-13621
2015-11-13 08:31:00 +01:00
Juergen Hoeller
7b711c4aac
AbstractAutoProxyCreator uses prefixed bean name as cache key
...
Issue: SPR-13655
2015-11-13 08:26:43 +01:00
Juergen Hoeller
90c9d96a4d
Avoid exposeTargetClass attempt if bean name is null
...
Issue: SPR-13650
2015-11-13 08:23:15 +01:00
Johnny Lim
2defb6555e
Fix broken Javadoc related to `<` and `>`
2015-11-12 11:22:08 +01:00
Juergen Hoeller
d5efe4f983
Detect event listener methods behind interface proxies as well
...
Issue: SPR-13650
2015-11-09 15:00:03 +01:00
Juergen Hoeller
400749667a
Polishing
2015-10-26 23:10:33 +01:00
Juergen Hoeller
8c4b8d253a
Auto-adapt reflective arguments in case of vararg array type mismatch
...
Issue: SPR-13328
2015-10-26 22:43:37 +01:00
Sam Brannen
d5ee787e1e
Migrate JUnit 3 tests to JUnit 4
...
This commit migrates all remaining tests from JUnit 3 to JUnit 4, with
the exception of Spring's legacy JUnit 3.8 based testing framework that
is still in use in the spring-orm module.
Issue: SPR-13514
2015-09-27 21:17:51 +02:00
Sam Brannen
d91806d7ab
Suppress warnings in Gradle build
2015-09-24 19:56:10 +02:00
Juergen Hoeller
a8432bc8a1
Tests for enum array with varargs (and related refinements)
...
Issue: SPR-13328
2015-09-08 11:13:23 +02:00
Kazuki Shimizu
9524f96405
Fix default value of CommonsPool2TargetSource#maxWait
...
Issue: SPR-13350
2015-08-14 16:34:32 +02:00
Stephane Nicoll
a3f39d5257
Add missing 4.2 XSDs
...
Issue: SPR-13300
2015-08-01 09:50:36 +02:00
Juergen Hoeller
edd6e76b9f
Polishing
2015-07-21 22:58:34 +02:00
Juergen Hoeller
2934256257
Polishing
2015-07-15 00:08:11 +02:00
Juergen Hoeller
dd4bc630c3
Common code in AsyncExecutionAspectSupport allows for CompletableFuture processing with AspectJ as well
...
Issue: SPR-13128
2015-06-22 00:29:44 +02:00
Juergen Hoeller
600e5915b4
ObjenesisCglibAopProxy defensively catches Throwable
...
Issue: SPR-13131
2015-06-17 17:03:01 +02:00
Juergen Hoeller
9f64230131
TransactionAttributeSourcePointcut pointcut skips target classes with TransactionalProxy marker (e.g. Spring Data proxies)
...
This 4.2 commit also makes TransactionProxyFactoryBean expose the TransactionalProxy marker and refines SpringProxy marker handling.
Issue: SPR-13109
2015-06-17 13:02:26 +02:00
Juergen Hoeller
92f1754b1e
Fixed fallback mode in ObjenesisCglibAopProxy, plus consistent support for bypassing Objenesis (e.g. on Google App Engine)
...
This 4.2 commit revises SpringObjenesis towards a smart delegate, including support for a "spring.objenesis.ignore" system property.
Issue: SPR-13131
2015-06-16 22:01:37 +02:00
Juergen Hoeller
c41779f895
AsyncExecutionInterceptor supports Java 8's CompletableFuture as a return type
...
Issue: SPR-13128
2015-06-15 20:35:48 +02:00
Juergen Hoeller
75edb3979e
AspectJExpressionPointcut defensively catches exceptions thrown from ShadowMatch.matchesJoinPoint
...
Issue: SPR-13102
2015-06-11 14:44:19 +02:00
Stephane Nicoll
e8441edcb7
Remove commons pool 2.x workaround
...
While working on SPR-12532, an extra IdentityWrapper was added to work
around a backward compatible issue between commons pool 1.x and 2.x. This
issue (POOL-283) has actually been fixed in 2.4 and their IdentityWrapper
is using object equality so our wrapper is in the way.
Looking retrospectively, the code looks all fine without the workaround
and commons pool 2.4 or later so it has been removed.
2015-06-05 16:41:21 +02:00
Juergen Hoeller
d195ad216a
Polishing
2015-06-04 23:27:40 +02:00
Juergen Hoeller
9410dff99c
AsyncResult allows for exposing an execution exception
...
Issue: SPR-13076
2015-06-04 23:25:18 +02:00
Stephane Nicoll
3d86f15a84
Merge BeanWrapperImpl and DirectFieldAccessor
...
`BeanWrapperImpl` and `DirectFieldAccessor` are two
`ConfigurablePropertyAccessor` implementations with different features
set.
This commit harmonizes the two implementations to use a common base class
that delegates the actual property handling to the sub-classes:
* `BeanWrapperImpl`: `PropertyDescriptor` and introspection utilities
* `DirectFieldAccessor`: reflection on `java.lang.Field`
Issues: SPR-12206 - SPR-12805
2015-05-21 13:49:55 +02:00
Juergen Hoeller
b4095c3e1d
Class identity comparisons wherever possible
...
Issue: SPR-12926
2015-05-20 14:34:16 +02:00
Sam Brannen
1f54ba001b
Polish Javadoc for AopUtils, Advised, & related classes
2015-05-09 20:32:27 +02:00
Juergen Hoeller
dbd82d128d
Polishing
2015-05-07 20:18:17 +02:00
Juergen Hoeller
e1395a6c68
Avoid repeated exposure of SpringProxy/Advised for fallback interfaces as well
...
Issue: SPR-12870
2015-04-01 18:54:47 +02:00
Juergen Hoeller
f9c2d1d171
DefaultAopProxyFactory falls back to JdkDynamicAopProxy when encountering JDK proxy as target
...
Issue: SPR-12870
2015-03-31 16:15:22 +02:00
Juergen Hoeller
bc6a98c144
Polishing (in particular updating javadoc references to Apache Commons)
2015-03-13 18:19:10 +01:00
Juergen Hoeller
13659d645b
Consistent support for @Order annotation as alternative to Ordered interface
...
Issue: SPR-12806
2015-03-13 18:18:33 +01:00
Stephane Nicoll
8f8a85912a
Call AsyncUncaughtExceptionHandler when necessary
...
If a sub-class of Future (such as ListenableFuture) is used as a return
type and an exception is thrown, the AsyncUncaughtExceptionHandler is
called. Now checking for any Future implementation instead of a faulty
strict matching.
Issue: SPR-12797
2015-03-09 09:57:53 +01:00
Juergen Hoeller
ee74fe6c27
Latest dependency updates (HttpClient 4.4, TestNG 6.8.21, SnakeYAML 1.15, FreeMarker 2.3.22, JRuby 1.7.19, JAMon 2.81, JiBX 1.2.6, XMLUnit 1.6, JsonPath 1.2)
2015-03-02 20:00:17 +01:00
Stephane Nicoll
babbf6e871
Harmonize resources location
...
Issue: SPR-12766
2015-02-28 10:32:40 +01:00
Juergen Hoeller
287045ef74
Allow for shared Objenesis caching in ObjenesisCglibAopProxy
...
Issue: SPR-12755
2015-02-26 18:34:52 +01:00
Stephane Nicoll
44075d7205
Add missing test
...
Add test that wasn't committed because it matches the ignore list.
2015-02-25 13:29:10 +01:00
Stephane Nicoll
aabf73dea4
Add Commons Pool 2 support
...
Deprecated CommonsPoolTargetSource (supporting commons pool 1.5+) in
favor of CommonsPool2TargetSource with a similar contract.
Commons Pool 2.x uses object equality while Commons Pool 1.x used
identity equality. This clearly means that Commons Pool 2 behaves
differently if several instances having the same identity according to
their `Object#equals(Object)` method are managed in the same pool. To
provide a smooth upgrade, a backward-compatible pool is created by
default; use `setUseObjectEquality(boolean)` if you need the standard
Commons Pool 2.x behavior.
Issue: SPR-12532
2015-02-19 13:07:04 +01:00
John Tims
4c00a3b4c8
fix javadoc typo
2015-02-12 08:43:01 +01:00
Juergen Hoeller
9ac02b319d
Remove pre-3.2 deprecated classes and methods
...
Issue: SPR-12578
2014-12-30 20:05:15 +01:00
Juergen Hoeller
86b8112c90
Polishing
2014-12-29 15:13:40 +01:00