Commit Graph

750 Commits

Author SHA1 Message Date
Juergen Hoeller
61c3db0869 MethodHandles.Lookup.defineClass for CGLIB class definition purposes
Spring's CGLIB fork is patched with local copies of affected files here, introducing the notion of a "contextClass" (e.g. the proxy superclass) which gets passed through to ReflectUtils.defineClass for delegating to MethodHandles.Lookup.defineClass eventually, against a privateLookupIn(contextClass) lookup context on JDK 9/10/11.

Issue: SPR-15859
2018-04-11 12:47:55 +02:00
Thor Andreas Rognan
17c16eaa9e Upgrade to Gradle 4.6
Issue: SPR-16475
2018-04-04 12:39:09 +02:00
Bian Jiaping
8f525f07e9 Fix typos, formatting and escaping in reference
Note: Some symbol combinations (including <=) serve as textual symbol
replacements in AsciiDoc.

http://asciidoctor.org/docs/asciidoc-syntax-quick-reference/#text-replacement
2018-03-30 10:06:33 -04:00
Juergen Hoeller
d553ddc5b3 Nullability refinements (based on IntelliJ IDEA 2018.1 introspection)
Issue: SPR-15756
2018-03-29 23:50:17 +02:00
igor-suhorukov
93abe0e94b All branches in a conditional structure should not have exactly the same implementation 2018-03-29 23:33:50 +02:00
Juergen Hoeller
e3d0ef6015 Use Map.forEach instead of manual Map.Entry iteration wherever possible
Issue: SPR-16646
2018-03-27 00:38:32 +02:00
Juergen Hoeller
24aae2e104 Defensive containsSingleton cache guard within getObjectFromFactoryBean
Issue: SPR-16625
2018-03-27 00:24:03 +02:00
Juergen Hoeller
8d5587fe4f Consistent thread-safe iteration in DefaultSingletonBeanRegistry
Issue: SPR-16620
2018-03-24 16:30:51 +01:00
Juergen Hoeller
8d8e218b52 Consistent FactoryBean cache visibility in concurrent creation scenarios
Issue: SPR-16625
Issue: SPR-16627
2018-03-23 17:34:33 +01:00
Juergen Hoeller
937cd48fcb Contextual BeanCreationException in case of depending on a missing bean
Issue: SPR-16628
2018-03-23 17:32:08 +01:00
Christoph Dreis
d3a0a8e007 Use Collection.removeIf() where possible (#1747)
Use Collection.removeIf() where possible

Issue: SPR-16622
2018-03-22 11:36:11 +01:00
Juergen Hoeller
499128dae7 URIEditor uses straight ClassPathResource.getURI() access
Issue: SPR-16581
2018-03-12 22:26:18 +01:00
igor-suhorukov
32b689a994 use StringBuilder for complex string concatenation 2018-03-08 21:25:47 +01:00
Juergen Hoeller
139dc1d373 Polishing (collapsed if checks, consistent downcasts, refined javadoc) 2018-03-08 18:11:57 +01:00
igor-suhorukov
0f7485b01d Polish: reorder the modifiers to comply with the Java Language Specification. 2018-03-08 17:57:47 +01:00
Juergen Hoeller
a02aafe5fe Regular getBeanInfo call for interfaces (enabling Introspector's cache)
Issue: SPR-16568
2018-03-08 12:29:09 +01:00
Juergen Hoeller
f57fcdee3c Polishing 2018-03-07 15:49:58 +01:00
Juergen Hoeller
4f8c4546f1 Upgrade to SnakeYAML 1.20 and Selenium 3.10 2018-03-05 15:25:01 +01:00
igor-suhorukov
129530f792 Polish
Closes gh-1715
2018-03-03 12:12:15 +01:00
Juergen Hoeller
bfddbbe731 Polishing 2018-03-01 01:39:06 +01:00
Juergen Hoeller
6f7ad0304c Polishing 2018-03-01 00:29:38 +01:00
igor-suhorukov
8080f56db8 Polish: "@Override" should be used on overriding and implementing methods 2018-03-01 00:15:18 +01:00
Juergen Hoeller
a19d4deb24 Polishing 2018-02-28 16:41:59 +01:00
Juergen Hoeller
9962df6527 Polishing 2018-02-28 00:09:15 +01:00
igor-suhorukov
d1ccecd021 Polish: to get rid unnecessary array creation 2018-02-27 23:37:54 +01:00
igor-suhorukov
7bce04c06c Polish: combine catches block with same body 2018-02-27 12:51:28 +01:00
igor-suhorukov
b202205d77 Polish: String.valueOf() should not be appended to a String 2018-02-25 21:10:19 +01:00
igor-suhorukov
49fd724d8f Polish: String function use should be optimized for single characters 2018-02-25 20:48:47 +01:00
igor-suhorukov
c782075a13 Polish: Array designators "[]" should be on the type, not the variable 2018-02-25 13:14:20 +01:00
Juergen Hoeller
7f58d9ede0 Efficiently merge bean name result with parent result (possibly empty) 2018-02-25 00:27:06 +01:00
igor-suhorukov
67a91cf6f9 Polish: redundant pairs of parentheses should be removed 2018-02-25 00:01:43 +01:00
Juergen Hoeller
a5cbf5fe24 Consistent use of Collection.toArray with zero-sized array argument
Includes consistent use of ClassUtils.toClassArray (as non-null variant)

Issue: SPR-16523
2018-02-22 11:29:46 +01:00
Juergen Hoeller
d7cab23e6d Consistent use of StringUtils.toStringArray
(cherry picked from commit 6d11b40)
2018-02-16 20:49:17 +01:00
Juergen Hoeller
c9d08bff41 DefaultListableBeanFactory only calls getPriority for non-null instance
Issue: SPR-16508
2018-02-16 17:27:42 +01:00
Juergen Hoeller
8d3264f680 Prefer List.sort(Comparator) over Collections.sort(List, Comparator) 2018-02-16 10:23:18 +01:00
igor-suhorukov
2be4985b8f Polish: anonymous inner classes containing only one method should become lambdas,
use getOrDefault instead of ternary operator
2018-02-16 09:38:19 +01:00
Juergen Hoeller
3b810f3544 Consistent Class array vs vararg declarations (and related polishing) 2018-02-14 14:44:00 +01:00
Juergen Hoeller
d5cabca2f7 Internal adaptation to Deque semantics 2018-02-12 15:55:09 +01:00
igor-suhorukov
711b0f50f2 Polish: replace the synchronized class "Stack" by an unsynchronized one such as "Deque". 2018-02-11 21:15:46 +01:00
igor-suhorukov
0ee505b73e Polish: assertion arguments should be passed in the correct order,
use assertNull instead of assertEquals(null, value),
declare delta as double value in assertEquals
2018-02-10 17:17:28 +01:00
igor-suhorukov
6ea0af3540 Polish: Lambdas should be replaced with method references 2018-02-10 12:09:46 +01:00
igor-suhorukov
9a6fbf59c5 Polish: follow name convention - make immutable fields final 2018-02-10 12:09:19 +01:00
Stephane Nicoll
991eb4858e Update copyright header 2018-02-09 10:16:58 +01:00
igor-suhorukov
c0b4b5787f Change this "try" to a try-with-resources
Closes gh-1671
2018-02-09 10:12:55 +01:00
Juergen Hoeller
285b01fc79 Test with all-negated profile condition
Issue: SPR-16465
2018-02-07 14:14:11 +01:00
Juergen Hoeller
5c813a366b Consistent use of @throws instead of @exception 2018-02-05 22:51:51 +01:00
Kamil Szymanski
61117245a6 Replace manual array copy with native method call
Closes gh-1606
2018-02-04 11:39:43 +01:00
Juergen Hoeller
4a1cc9ced7 Constructor-provided field values get recorded for failed binding result
Also, TypeMismatchExceptions get registered via BindingErrorProcessor.

Issue: SPR-16449
2018-02-02 11:33:56 +01:00
Juergen Hoeller
7772b914c6 Deep BeanCurrentlyInCreationException check in getTypeForFactoryBean
Issue: SPR-16427
2018-01-29 21:13:59 +01:00
Juergen Hoeller
ea5f8f5a7c Consistently handle NoClassDefFoundError in BeanUtils and related places
Issue: SPR-16369
2018-01-17 20:24:57 +01:00