Juergen Hoeller
cbda46984c
Polishing
2024-04-30 15:46:28 +02:00
Juergen Hoeller
39cd31613b
Polishing
2024-04-10 18:06:32 +02:00
Sébastien Deleuze
23696b7db8
Add a classpath check for AOP Coroutines/Reactive conversion
...
Closes gh-32599
2024-04-09 15:21:21 +02:00
Sébastien Deleuze
4a7c24d90f
Refine null-safety
...
See gh-32475
2024-04-05 14:30:50 +02:00
Sébastien Deleuze
290a41d398
Refine null-safety in more modules
...
This commit refines the null-safety in all remaining modules
except spring-test.
See gh-32475
2024-03-26 15:39:18 +01:00
Sébastien Deleuze
1b563f8ba4
Refine null-safety in more modules
...
This commit refines the null-safety in:
- spring-jdbc
- spring-r2dbc
- spring-orm
- spring-beans
- spring-aop
See gh-32475
2024-03-26 09:46:34 +01:00
Juergen Hoeller
c531a8a705
Nullability refinements and related polishing
...
See gh-32475
2024-03-19 09:58:44 +01:00
Stéphane Nicoll
4983a802a7
Polish "Fix Javadoc"
...
See gh-32403
2024-03-09 16:02:01 +01:00
Maksim Sasnouski
abdccffa39
Fix Javadoc
...
This commit fixes various Javadoc issues across the code base.
See gh-32403
2024-03-09 16:02:00 +01:00
Juergen Hoeller
4300fec023
Restore ability to return original method at ClassUtils level as well
...
Closes gh-32365
2024-03-04 23:48:26 +01:00
Juergen Hoeller
24759a75f4
Restore ability to return original method for proxy-derived method
...
Closes gh-32365
2024-03-04 22:48:46 +01:00
Juergen Hoeller
f22a1eece4
Polishing
2024-02-28 19:14:37 +01:00
Sam Brannen
db535863dd
Consistently use class literals for primitive types
...
To improve consistency and avoid confusion regarding primitive types
and their wrapper types, this commit ensures that we always use class
literals for primitive types.
For example, instead of using the `Void.TYPE` constant, we now
consistently use `void.class`.
2024-01-30 15:26:12 +01:00
Sam Brannen
9eae0ba50e
Clean up warnings in build
2024-01-29 17:47:46 +01:00
Juergen Hoeller
c6121da151
Polishing
2024-01-24 22:30:33 +01:00
Juergen Hoeller
89e7174cc4
Share cached interceptors for entire Advised instance if possible
...
Closes gh-32104
2024-01-24 22:30:22 +01:00
Juergen Hoeller
00bda65848
Polishing
2024-01-19 17:09:58 +01:00
Stéphane Nicoll
0c42965fc3
Polish
2024-01-15 11:17:19 +01:00
Stéphane Nicoll
2a43cc7574
Polish
2024-01-12 17:21:21 +01:00
Juergen Hoeller
4d11307b84
Polishing
2024-01-09 11:55:04 +01:00
Juergen Hoeller
03b6e51225
Evaluate thread-bound MethodInvocation only if it matches current Method
...
Closes gh-26068
2024-01-09 11:54:05 +01:00
Stéphane Nicoll
1f2d29ee08
Polish
2024-01-08 17:12:33 +01:00
Juergen Hoeller
419e34e571
Introduce getMostSpecificMethod variant on BridgeMethodResolver
...
This is able to resolve the original method even if no bridge method has been generated at the same class hierarchy level (a known difference between the Eclipse compiler and regular javac).
Closes gh-21843
2024-01-07 16:33:06 +01:00
Juergen Hoeller
43107e7eb1
Propagate arguments for dynamic prototype-scoped advice
...
Closes gh-28407
2024-01-07 00:12:15 +01:00
Stéphane Nicoll
e22d1efdc0
Update copyright year of changed files
...
See gh-31930
2024-01-01 11:00:56 +01:00
Johnny Lim
ff8097d37c
Polish
...
See gh-31930
2024-01-01 10:59:35 +01:00
Juergen Hoeller
fdb454b9a4
Declare JdkDynamicAopProxy's ProxiedInterfacesCache as private
...
See gh-30499
2023-12-31 13:48:50 +01:00
Yanming Zhou
cfa3aa001f
Replace if with switch where feasible
...
See gh-31916
2023-12-28 13:29:50 +01:00
Yanming Zhou
4a450c6fab
Use enhanced for loop where feasible
...
See gh-31916
2023-12-28 13:01:44 +01:00
Yanming Zhou
7474af4f09
Cleanup kotlin sources
...
1. remove unused import
2. remove redundant semicolon
3. remove redundant empty constructor and SAM-constructor
4. remove unnecessary type argument
5. adjust indent
See gh-31913
2023-12-28 11:46:47 +01:00
Sébastien Deleuze
8bd8c4f627
Add support for `@Async` Kotlin function returning `Unit?`
...
Closes gh-31881
2023-12-22 15:33:34 +01:00
Juergen Hoeller
cd11219fa7
Declare proxyMetadataCache as volatile and ProxiedInterfacesCache fields as final
...
See gh-30499
2023-12-22 12:27:03 +01:00
Juergen Hoeller
44c652ec98
Introduce ProxiedInterfacesCache for JdkDynamicAopProxy
...
Closes gh-30499
2023-12-22 11:55:59 +01:00
Stéphane Nicoll
68931a2091
Upgrade copyright year of changed file
...
See gh-31847
2023-12-15 07:36:50 +01:00
achhibi
7f79ccbec0
Combine conditions for better readability and simplicity
2023-12-14 20:29:09 +01:00
Sam Brannen
c0683cd30b
Update copyright headers
2023-12-12 14:51:03 +01:00
Sam Brannen
1c58511cb2
Polishing
2023-12-12 14:51:03 +01:00
Juergen Hoeller
6bb9775309
Declare isStatic and releaseTarget as default methods on TargetSource
...
Closes gh-31820
2023-12-12 12:39:52 +01:00
Sébastien Deleuze
9aded3fcad
Fix a NPE in proxied suspending functions
...
Closes gh-31809
2023-12-11 21:21:34 +01:00
Yanming Zhou
7b16ef90f1
Replace assertThat(x.equals(y)) with assertThat(x).isEqualTo(y)
...
Search for : assertThat\((.+)\.equals\((\w+)\)\)\.isTrue\(\)
Replace with : assertThat($1).isEqualTo($2)
Search for : assertThat\((.+)\.equals\((\w+)\)\)\.isFalse\(\)
Replace with : assertThat($1).isNotEqualTo($2)
Closes gh-31763
2023-12-06 09:50:15 +01:00
Yanming Zhou
e2852e7355
Replace assertThat(x.contains(y)).isTrue() with assertThat(x).contains(y)
...
Search for : assertThat\((.+)\.contains\((.+)\)\)\.isTrue\(\)
Replace with : assertThat($1).contains($2)
Search for : assertThat\((.+)\.contains\((.+)\)\)\.isFalse\(\)
Replace with : assertThat($1).doesNotContain($2)
Closes gh-31762
2023-12-06 09:48:49 +01:00
Yanming Zhou
59815cefce
Replace assertThat(x.get(i)). with assertThat(x).element(i).
...
Search for : assertThat\((.+)\.get\((\d+)\)\)\.
Replace with : assertThat($1).element($2).
Closes gh-31759
2023-12-06 09:43:59 +01:00
Juergen Hoeller
121e3540cc
Clear cached executors in setBeanFactory (for reused AspectJ aspect)
...
Closes gh-28201
2023-11-23 16:15:01 +01:00
Juergen Hoeller
0d8dee2878
Apply fallback for proxy with negative match or annotation pointcut
...
See gh-30534
2023-11-23 16:14:33 +01:00
Yanming Zhou
3a6d0c1d5b
Always fall back to original method if annotation pointcut used
...
Prior to this commit, AspectJExpressionPointcut doesn't fall back to original method if `!@annotation()` is used, it can cause false positive result.
Fix GH-27119
2023-11-23 16:01:18 +01:00
Juergen Hoeller
99378fe947
Polishing
2023-11-16 11:22:09 +01:00
Brian Clozel
8eebb5e27b
Polish
...
See gh-31575
2023-11-15 15:26:49 +01:00
Sébastien Deleuze
92c3843dae
Add required AspectJ field hints
...
This commit adds reflection hints on fields for
classes compiled by AspectJ.
Closes gh-31575
2023-11-15 10:30:02 +01:00
Sam Brannen
c7bb981db1
Ensure it's possible to extend ControlFlowPointcut with RegEx support
...
Commit d3fba6d49b
introduced built-in pattern matching support for
method names in ControlFlowPointcut; however, it was still cumbersome
to extend ControlFlowPointcut with support for regular expressions
instead of simple pattern matching.
To address that, this commit introduces a variant of isMatch() that
accepts the pattern index instead of the pre-resolved method name
pattern. The default implementation retrieves the method name pattern
from the methodNamePatterns field and delegates to isMatch(String, String).
Subclasses can override the new isMatch(String, int) method to support
regular expressions, as can be seen in the example
RegExControlFlowPointcut class in ControlFlowPointcutTests.
See gh-31435
2023-10-28 16:30:02 +02:00
Sam Brannen
7f1beb0140
Polishing
2023-10-28 16:24:59 +02:00