- 08 5月, 2019 5 次提交
-
-
由 Phillip Webb 提交于
Replace the existing ASM based readers with new implementations that also support MergedAnnotations. The meta-data classes themselves are now immutable, and constructed via separate reader classes. The `SimpleMetadataReader` class has been updated to return the new classes, however the old ones remain since some of them are public and might be being used directly. Closes gh-22884
-
由 Phillip Webb 提交于
Add `AnnotatedTypeMetaData.getAnnotations()` that can be used to access annotation details using the `MergedAnnotations` interface. Where possible, the existing annotation methods have been migrated to call `getAnnotation()`, rather than needing their own implementation. The existing ASM based meta-data implementations have not been updated since they will be deprecated and replaced in a subsequent commit. See gh-22884
-
由 Phillip Webb 提交于
Add some additional tests to provide more coverage of class and method meta-data support. See gh-22884
-
由 Phillip Webb 提交于
Update `StandardAnnotationMetadata` and `AnnotationMetadataReadingVisitor` so that `java.lang.annotation` annotations are consistently skipped. Closes gh-22885
-
由 Phillip Webb 提交于
Update ASM based metadata readers so that only RetentionPolicy.RUNTIME annotations are exposed. This aligned behavior with the reflection based implementation. Closes gh-22886
-
- 06 5月, 2019 1 次提交
-
-
由 Sam Brannen 提交于
org.junit.Assert.assertThat() is deprecated as of JUnit 4.13. See gh-22894
-
- 09 4月, 2019 1 次提交
-
-
由 Juergen Hoeller 提交于
-
- 08 4月, 2019 2 次提交
-
-
由 Juergen Hoeller 提交于
Closes gh-22766
-
由 Juergen Hoeller 提交于
-
- 23 3月, 2019 1 次提交
-
-
由 Spring Operator 提交于
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener). # Fixed URLs ## Fixed Success These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended. * [ ] http://www.apache.org/licenses/ with 1 occurrences migrated to: https://www.apache.org/licenses/ ([https](https://www.apache.org/licenses/) result 200). * [ ] http://www.apache.org/licenses/LICENSE-2.0 with 6515 occurrences migrated to: https://www.apache.org/licenses/LICENSE-2.0 ([https](https://www.apache.org/licenses/LICENSE-2.0) result 200).
-
- 22 3月, 2019 1 次提交
-
-
由 Spring Operator 提交于
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener). # Fixed URLs ## Fixed Success These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended. * [ ] http://www.apache.org/licenses/ with 1 occurrences migrated to: https://www.apache.org/licenses/ ([https](https://www.apache.org/licenses/) result 200). * [ ] http://www.apache.org/licenses/LICENSE-2.0 with 6625 occurrences migrated to: https://www.apache.org/licenses/LICENSE-2.0 ([https](https://www.apache.org/licenses/LICENSE-2.0) result 200).
-
- 19 11月, 2018 2 次提交
-
-
由 Stephane Nicoll 提交于
Closes gh-2019
-
由 Hanope 提交于
See gh-2019
-
- 10 10月, 2018 1 次提交
-
-
由 Juergen Hoeller 提交于
Issue: SPR-17347
-
- 30 3月, 2018 1 次提交
-
-
由 Juergen Hoeller 提交于
Issue: SPR-16667
-
- 14 2月, 2018 1 次提交
-
-
由 Juergen Hoeller 提交于
-
- 11 2月, 2018 1 次提交
-
-
由 igor-suhorukov 提交于
use assertNull instead of assertEquals(null, value), declare delta as double value in assertEquals
-
- 01 9月, 2016 1 次提交
-
-
由 Stephane Nicoll 提交于
This commit adds a "spring-context-indexer" module that can be added to any project in order to generate an index of candidate components defined in the project. `CandidateComponentsIndexer` is a standard annotation processor that looks for source files with target annotations (typically `@Component`) and references them in a `META-INF/spring.components` generated file. Each entry in the index is the fully qualified name of a candidate component and the comma-separated list of stereotypes that apply to that candidate. A typical example of a stereotype is `@Component`. If a project has a `com.example.FooService` annotated with `@Component` the following `META-INF/spring.components` file is generated at compile time: ``` com.example.FooService=org.springframework.stereotype.Component ``` A new `@Indexed` annotation can be added on any annotation to instructs the scanner to include a source file that contains that annotation. For instance, `@Component` is meta-annotated with `@Indexed` now and adding `@Indexed` to more annotation types will transparently improve the index with additional information. This also works for interaces or parent classes: adding `@Indexed` on a `Repository` base interface means that the indexed can be queried for its implementation by using the fully qualified name of the `Repository` interface. The indexer also adds any class or interface that has a type-level annotation from the `javax` package. This includes obviously JPA (`@Entity` and related) but also CDI (`@Named`, `@ManagedBean`) and servlet annotations (i.e. `@WebFilter`). These are meant to handle cases where a component needs to identify candidates and use classpath scanning currently. If a `package-info.java` file exists, the package is registered using a "package-info" stereotype. Such files can later be reused by the `ApplicationContext` to avoid using component scan. A global `CandidateComponentsIndex` can be easily loaded from the current classpath using `CandidateComponentsIndexLoader`. The core framework uses such infrastructure in two areas: to retrieve the candidate `@Component`s and to build a default `PersistenceUnitInfo`. Rather than scanning the classpath and using ASM to identify candidates, the index is used if present. As long as the include filters refer to an annotation that is directly annotated with `@Indexed` or an assignable type that is directly annotated with `@Indexed`, the index can be used since a dedicated entry wil be present for that type. If any other unsupported include filter is specified, we fallback on classpath scanning. In case the index is incomplete or cannot be used, The `spring.index.ignore` system property can be set to `true` or, alternatively, in a "spring.properties" at the root of the classpath. Issue: SPR-11890
-
- 15 7月, 2016 1 次提交
-
-
由 Juergen Hoeller 提交于
Issue: SPR-14427
-
- 05 7月, 2016 1 次提交
-
-
由 Stephane Nicoll 提交于
Issue: SPR-13188
-
- 25 3月, 2016 1 次提交
-
-
由 Juergen Hoeller 提交于
-
- 05 11月, 2015 1 次提交
-
-
由 Juergen Hoeller 提交于
-
- 28 9月, 2015 1 次提交
-
-
由 Sam Brannen 提交于
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
-
- 20 8月, 2015 1 次提交
-
-
由 Sam Brannen 提交于
-
- 06 5月, 2015 1 次提交
-
-
由 Sam Brannen 提交于
This commit picks up where SPR-11483 left off, with the goal of eliminating all unnecessary inspection of core JDK annotations in Spring's annotation search algorithms in AnnotatedElementUtils and AnnotationMetadataReadingVisitor. Issue: SPR-12989
-
- 26 11月, 2014 1 次提交
-
-
由 Juergen Hoeller 提交于
Issue: SPR-12473 (cherry picked from commit 5ac86803)
-
- 21 10月, 2014 1 次提交
-
-
由 Juergen Hoeller 提交于
-
- 31 5月, 2014 1 次提交
-
-
由 Juergen Hoeller 提交于
ClassMetadata exposes isAnnotation() now, and correctly returns false from hasSuperClass() for interfaces and annotations Issue: SPR-11711
-
- 01 5月, 2014 1 次提交
-
-
由 Juergen Hoeller 提交于
AnnotationMetadataReadingVisitor passes metaAnnotationMap into getMergedAnnotationAttributes algorithm, for finding out about applicable overrides Issue: SPR-11649
-
- 22 4月, 2014 1 次提交
-
-
由 Sam Brannen 提交于
Prior to this commit, invoking the getMergedAnnotationAttributes() method in AnnotationReadingVisitorUtils resulted in mutation of the internal state of the ASM-based annotation metadata supplied to the method. This commit fixes this issue by making a copy of the original AnnotationAttributes for the target annotation before merging attribute values from the meta-annotation hierarchy. This commit also introduces a slight performance improvement by avoiding duplicate processing of the attributes of the target annotation. Issue: SPR-11710
-
- 06 4月, 2014 1 次提交
-
-
由 Sam Brannen 提交于
-
- 26 3月, 2014 1 次提交
-
-
由 Sam Brannen 提交于
Changes introduced in conjunction with issue SPR-11475 altered the behavior of StandardAnnotationMetadata such that annotations could be detected on superclasses, specifically in the case where the AnnotatedElementUtils.getAllAnnotationAttributes() method is invoked to obtain multiple annotations of the same type (on the lowest level in the class hierarchy), as is the case for @Profile and @Conditional. This commit partially reverts these changes as follows: - All methods in AnnotatedElementUtils now set the traverseClassHierarchy to false, thereby effectively reverting the changes made in commit 1d30bf83. Note, however, that the changes made to AnnotationUtils remain in place. - Introduced tests in AnnotationMetadataTests that verify behavior present in Spring Framework 4.0.2 and earlier. - Updated tests in AnnotatedElementUtilsTests so that they pass against the reverted changes (i.e., align with the behavior present in Spring Framework 4.0.2 and earlier). - Refined Javadoc in AnnotationMetadata with regard to annotations being "present" vs. "defined". - Refined Javadoc in AnnotatedTypeMetadata. Issue: SPR-11475, SPR-11595
-
- 20 3月, 2014 1 次提交
-
-
由 Sam Brannen 提交于
Prior to this commit, Spring supported meta-annotation attribute overrides in custom composed annotations with reflection-based annotation processing but not with ASM-based annotation processing. This commit ensures that meta-annotation attribute overrides are supported in AnnotationMetadataReadingVisitor.getAnnotationAttributes(). Issue: SPR-11574
-
- 09 2月, 2014 1 次提交
-
-
由 Sam Brannen 提交于
-
- 04 2月, 2014 1 次提交
-
-
由 Sam Brannen 提交于
Prior to this commit several test classes named "*Test" were not recognized as tests by the Gradle build. This is due to the configured inclusion of '**/*Tests.*' which follows Spring's naming convention for test classes. This commit addresses this issue by: - Renaming real test classes consistently to "*Tests". - Renaming internal test classes to "*TestCase". - Renaming @WebTest to @WebTestStereotype. - Disabling broken tests in AnnoDrivenStaticEntityMockingControlTest. - Modifying the Gradle build configuration so that classes ending in either "*Tests" or "*Test" are considered test classes. Issue: SPR-11384
-
- 28 9月, 2013 1 次提交
-
-
由 Phillip Webb 提交于
Fix ASM AnnotationAttributesReadingVisitor to correctly deal with subclasses enums. Issue: SPR-10914
-
- 09 5月, 2013 1 次提交
-
-
由 Phillip Webb 提交于
Update AnnotationMetadata and MethodMetadata to extend from a new AnnotatedTypeMetadata base interface containing the methods that are common to both. Also introduce new getAllAnnotationAttributes methods providing MultiValueMap access to both annotation and meta-annotation attributes. Existing classreading and standard implementations have been refactored to support the new interface.
-
- 26 1月, 2013 2 次提交
-
-
由 Phillip Webb 提交于
-
由 Phillip Webb 提交于
-
- 04 1月, 2013 1 次提交
-
-
由 Chris Beams 提交于
-