Keith Donald
c7cae10364
simplified TypeDescriptor usage and updated use of the API across BeanWrapper and SpEL; collapsed PropertyTypeDescriptor into TypeDescriptor for simplicity and ease of use; improved docs
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4424 50f2f4bb-b051-0410-bef5-90022cba6387
15 years ago
Keith Donald
c9789d3a37
moved applyIndexedObject internal, now invoked inside forObject static factory method
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4346 50f2f4bb-b051-0410-bef5-90022cba6387
15 years ago
Andy Clement
2a04e8c444
SPR-8211: property accessor ordering correction and removal of unnecessary duplicates
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4298 50f2f4bb-b051-0410-bef5-90022cba6387
15 years ago
Andy Clement
96160448ac
SFW-8228
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4293 50f2f4bb-b051-0410-bef5-90022cba6387
15 years ago
Andy Clement
c399e1e033
SFW-8224: distance can be used when computing method matches in ReflectiveMethodResolver
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4292 50f2f4bb-b051-0410-bef5-90022cba6387
15 years ago
Andy Clement
3b666f9897
SPR-8174: varargs and primitive handling in SpEL
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4157 50f2f4bb-b051-0410-bef5-90022cba6387
15 years ago
Andy Clement
5b07305e7d
SPR-7840: comparator dealing with nulls
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@4156 50f2f4bb-b051-0410-bef5-90022cba6387
15 years ago
Juergen Hoeller
4bd265f0a4
removed ConversionService/TypeConverter convenience methods in order to restore 3.0's SPI (for backwards compatibility with implementers)
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3983 50f2f4bb-b051-0410-bef5-90022cba6387
15 years ago
Chris Beams
adc9400905
Include license.txt and notice.txt in module JARs
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3967 50f2f4bb-b051-0410-bef5-90022cba6387
15 years ago
Chris Beams
dc22760978
Introduce FeatureSpecification support
...
Introduce FeatureSpecification interface and implementations
FeatureSpecification objects decouple the configuration of
spring container features from the concern of parsing XML
namespaces, allowing for reuse in code-based configuration
(see @Feature* annotations below).
* ComponentScanSpec
* TxAnnotationDriven
* MvcAnnotationDriven
* MvcDefaultServletHandler
* MvcResources
* MvcViewControllers
Refactor associated BeanDefinitionParsers to delegate to new impls above
The following BeanDefinitionParser implementations now deal only
with the concern of XML parsing. Validation is handled by their
corresponding FeatureSpecification object. Bean definition creation
and registration is handled by their corresponding
FeatureSpecificationExecutor type.
* ComponentScanBeanDefinitionParser
* AnnotationDrivenBeanDefinitionParser (tx)
* AnnotationDrivenBeanDefinitionParser (mvc)
* DefaultServletHandlerBeanDefinitionParser
* ResourcesBeanDefinitionParser
* ViewControllerBeanDefinitionParser
Update AopNamespaceUtils to decouple from XML (DOM API)
Methods necessary for executing TxAnnotationDriven specification
(and eventually, the AspectJAutoProxy specification) have been
added that accept boolean arguments for whether to proxy
target classes and whether to expose the proxy via threadlocal.
Methods that accepted and introspected DOM Element objects still
exist but have been deprecated.
Introduce @FeatureConfiguration classes and @Feature methods
Allow for creation and configuration of FeatureSpecification objects
at the user level. A companion for @Configuration classes allowing
for completely code-driven configuration of the Spring container.
See changes in ConfigurationClassPostProcessor for implementation
details.
See Feature*Tests for usage examples.
FeatureTestSuite in .integration-tests is a JUnit test suite designed
to aggregate all BDP and Feature* related tests for a convenient way
to confirm that Feature-related changes don't break anything.
Uncomment this test and execute from Eclipse / IDEA. Due to classpath
issues, this cannot be compiled by Ant/Ivy at the command line.
Introduce @FeatureAnnotation meta-annotation and @ComponentScan impl
@FeatureAnnotation provides an alternate mechanism for creating
and executing FeatureSpecification objects. See @ComponentScan
and its corresponding ComponentScanAnnotationParser implementation
for details. See ComponentScanAnnotationIntegrationTests for usage
examples
Introduce Default[Formatting]ConversionService implementations
Allows for convenient instantiation of ConversionService objects
containing defaults appropriate for most environments. Replaces
similar support originally in ConversionServiceFactory (which is now
deprecated). This change was justified by the need to avoid use
of FactoryBeans in @Configuration classes (such as
FormattingConversionServiceFactoryBean). It is strongly preferred
that users simply instantiate and configure the objects that underlie
our FactoryBeans. In the case of the ConversionService types, the
easiest way to do this is to create Default* subtypes. This also
follows convention with the rest of the framework.
Minor updates to util classes
All in service of changes above. See diffs for self-explanatory
details.
* BeanUtils
* ObjectUtils
* ReflectionUtils
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3954 50f2f4bb-b051-0410-bef5-90022cba6387
15 years ago
Keith Donald
61d54ae436
Favor convertValue(Object, TypeDescriptor) where possible and TypedValue(Object); check with Andy on Selection and Projection TypedValue usage
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3881 50f2f4bb-b051-0410-bef5-90022cba6387
15 years ago
Keith Donald
d3d7951265
added forNestedType(MethodParameter) for resolution of nested parameter types for collection, array, and map parameter types
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3875 50f2f4bb-b051-0410-bef5-90022cba6387
15 years ago
Keith Donald
ed2a257e69
added initial support for handling unknown nested type values when converting collections; now favor factory method for constructing nested type descriptors for clarity (made constructor private); improved javadoc
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3867 50f2f4bb-b051-0410-bef5-90022cba6387
15 years ago
Keith Donald
cf4062ed33
method naming improvements; applyIndexObject call for array indexing
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3851 50f2f4bb-b051-0410-bef5-90022cba6387
15 years ago
Keith Donald
1e2a8083a1
TypeDescriptor cleanup and general polishing; fixed a number of bugs related to TypeDescriptor usage in client code across beans and spel packages
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3846 50f2f4bb-b051-0410-bef5-90022cba6387
15 years ago
Chris Beams
7ac69dff5f
Normalize indentation of Apache license URL
...
In accordance with recommendations at
http://www.apache.org/licenses/LICENSE-2.0.html .
A number of classes had strayed from this format, now all
are the same.
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3831 50f2f4bb-b051-0410-bef5-90022cba6387
15 years ago
Juergen Hoeller
37957aee1e
revised TypedValue toString representation (SPR-7569)
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3733 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Juergen Hoeller
e531a28d3b
polishing
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3728 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Juergen Hoeller
502d2b0779
initialize cache Maps early, turning them into final fields
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3727 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Juergen Hoeller
8c9f96584e
SpEL method invocations prefer method with fewest parameters (e.g. no-arg over vararg; SPR-7633)
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3726 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Juergen Hoeller
73480a5431
pass full TypeDescriptor context through to ConversionService calls (SPR-7519)
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3661 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Juergen Hoeller
118b0b0b80
SpEL supports projection on any kind of Collection (SPR-7493)
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3630 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Juergen Hoeller
892d44f8c0
polishing
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3569 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Juergen Hoeller
425b471694
SpEL passes full collection type context to ConversionService (SPR-7410)
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3542 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Juergen Hoeller
6b55137d3e
JSP EvalTag resolves "@myBeanName" references in expressions against the WebApplicationContext (SPR-7312); for consistency, expressions in an ApplicationContext support the same syntax against the local BeanFactory
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3479 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Andy Clement
3f09b6a313
SPR-7335: support for expression inline lists and array construction
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3473 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Andy Clement
8d0e8fe165
SPR-7343: StandardEvaluationContext not threadsafe in its lazy initialization
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3472 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Andy Clement
bef5616753
polish
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3471 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Andy Clement
748b6a4ec9
polish
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3470 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Sam Brannen
0a6eb139c4
[SPR-7323] SpEL 'select last' operator now works consistently with maps.
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3461 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Juergen Hoeller
54a35be552
growCollection fails for element type Object as well; prefer use of getElementTypeDescriptor()
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3454 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Andy Clement
e7319ba5e5
javadoc fix
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3439 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Andy Clement
d8c51fdf7f
SPR-7244: double indexing with a collection of different types of element
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3377 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Andy Clement
a276e7c21a
SPR-7209: parsing poorly formed Elvis expressions
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3349 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Andy Clement
4e32e896ab
SPR-6941
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3314 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Andy Clement
dedf6489ac
SPR-7173, SPR-7100
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3313 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Keith Donald
eca3e5d0b8
improved conversion system logging, collection converter simplification/polish, several optimizations, annotation-driven formatting caching
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3255 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Andy Clement
efc8a513d1
SPR-7100: '_' supported as first char of identifier
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3254 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Juergen Hoeller
5d87fe71fa
fixed TemplateParserContext documentation (SPR-7059)
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3216 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Juergen Hoeller
74705a7aea
revised BeanTypeDescriptor into core PropertyTypeDescriptor; consider method annotations for return type (SPR-6979)
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3162 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Andy Clement
3b8b27e391
SPR-6984: auto grow collections on write through indexer
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3109 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Juergen Hoeller
b4c7a7cd31
made getName() public; added isNullSafe() accessor (SPR-6980)
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3108 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Andy Clement
0d3e60e5b7
SPR-6968: indexing via square brackets can now treat the index as an attempt at property access
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3080 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Andy Clement
e996bd83ff
SPR-6941: part (1) correct exception handling when null cachedExecutor
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3071 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Andy Clement
43ea572fd5
SPR-6866: unhelpful NPE when expression badly formed
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@3064 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Andy Clement
878f937f23
SPR-6745: metadata (annotations) attached to property accessors allowing formatting of values during conversion
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@2964 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Andy Clement
5024290980
SPR-6763: more methods on StandardEvaluationContext supporting add/remove from resolver/accessor strategies
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@2902 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Andy Clement
21cb4a0bfc
SPR-6764: filtering strategy for SpEL method invocation
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@2901 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Andy Clement
55f8409ea0
SPR-6610: don't wrap runtime exceptions thrown from methods invoked via an expression
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@2899 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago
Andy Clement
a8ee8c4cda
SPR-6760: method called twice if exits via exception in a 'normal' case
...
git-svn-id: https://src.springframework.org/svn/spring-framework/trunk@2897 50f2f4bb-b051-0410-bef5-90022cba6387
16 years ago