Polishing
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2002-2018 the original author or authors.
|
||||
* Copyright 2002-2019 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -40,8 +40,10 @@ import org.springframework.lang.Nullable;
|
||||
public interface DeferredImportSelector extends ImportSelector {
|
||||
|
||||
/**
|
||||
* Return a specific import group or {@code null} if no grouping is required.
|
||||
* @return the import group class or {@code null}
|
||||
* Return a specific import group.
|
||||
* <p>The default implementations return {@code null} for no grouping required.
|
||||
* @return the import group class, or {@code null} if none
|
||||
* @since 5.0
|
||||
*/
|
||||
@Nullable
|
||||
default Class<? extends Group> getImportGroup() {
|
||||
@@ -61,11 +63,12 @@ public interface DeferredImportSelector extends ImportSelector {
|
||||
void process(AnnotationMetadata metadata, DeferredImportSelector selector);
|
||||
|
||||
/**
|
||||
* Return the {@link Entry entries} of which class(es) should be imported for this
|
||||
* group.
|
||||
* Return the {@link Entry entries} of which class(es) should be imported
|
||||
* for this group.
|
||||
*/
|
||||
Iterable<Entry> selectImports();
|
||||
|
||||
|
||||
/**
|
||||
* An entry that holds the {@link AnnotationMetadata} of the importing
|
||||
* {@link Configuration} class and the class name to import.
|
||||
@@ -97,16 +100,16 @@ public interface DeferredImportSelector extends ImportSelector {
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(Object o) {
|
||||
if (this == o) {
|
||||
public boolean equals(Object other) {
|
||||
if (this == other) {
|
||||
return true;
|
||||
}
|
||||
if (o == null || getClass() != o.getClass()) {
|
||||
if (other == null || getClass() != other.getClass()) {
|
||||
return false;
|
||||
}
|
||||
Entry entry = (Entry) o;
|
||||
return Objects.equals(this.metadata, entry.metadata) &&
|
||||
Objects.equals(this.importClassName, entry.importClassName);
|
||||
Entry entry = (Entry) other;
|
||||
return (Objects.equals(this.metadata, entry.metadata) &&
|
||||
Objects.equals(this.importClassName, entry.importClassName));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2002-2013 the original author or authors.
|
||||
* Copyright 2002-2019 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -58,7 +58,6 @@ public interface ImportBeanDefinitionRegistrar {
|
||||
* @param importingClassMetadata annotation metadata of the importing class
|
||||
* @param registry current bean definition registry
|
||||
*/
|
||||
public void registerBeanDefinitions(
|
||||
AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry);
|
||||
void registerBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry);
|
||||
|
||||
}
|
||||
|
||||
@@ -20,12 +20,12 @@ import org.springframework.core.type.AnnotationMetadata;
|
||||
|
||||
/**
|
||||
* Interface to be implemented by types that determine which @{@link Configuration}
|
||||
* class(es) should be imported based on a given selection criteria, usually one or more
|
||||
* annotation attributes.
|
||||
* class(es) should be imported based on a given selection criteria, usually one or
|
||||
* more annotation attributes.
|
||||
*
|
||||
* <p>An {@link ImportSelector} may implement any of the following
|
||||
* {@link org.springframework.beans.factory.Aware Aware} interfaces, and their respective
|
||||
* methods will be called prior to {@link #selectImports}:
|
||||
* {@link org.springframework.beans.factory.Aware Aware} interfaces,
|
||||
* and their respective methods will be called prior to {@link #selectImports}:
|
||||
* <ul>
|
||||
* <li>{@link org.springframework.context.EnvironmentAware EnvironmentAware}</li>
|
||||
* <li>{@link org.springframework.beans.factory.BeanFactoryAware BeanFactoryAware}</li>
|
||||
@@ -33,10 +33,10 @@ import org.springframework.core.type.AnnotationMetadata;
|
||||
* <li>{@link org.springframework.context.ResourceLoaderAware ResourceLoaderAware}</li>
|
||||
* </ul>
|
||||
*
|
||||
* <p>ImportSelectors are usually processed in the same way as regular {@code @Import}
|
||||
* annotations, however, it is also possible to defer selection of imports until all
|
||||
* {@code @Configuration} classes have been processed (see {@link DeferredImportSelector}
|
||||
* for details).
|
||||
* <p>{@code ImportSelector} implementations are usually processed in the same way
|
||||
* as regular {@code @Import} annotations, however, it is also possible to defer
|
||||
* selection of imports until all {@code @Configuration} classes have been processed
|
||||
* (see {@link DeferredImportSelector} for details).
|
||||
*
|
||||
* @author Chris Beams
|
||||
* @since 3.1
|
||||
|
||||
@@ -91,24 +91,24 @@ import org.springframework.util.ReflectionUtils;
|
||||
* to detect special beans defined in its internal bean factory:
|
||||
* Therefore, this class automatically registers
|
||||
* {@link org.springframework.beans.factory.config.BeanFactoryPostProcessor BeanFactoryPostProcessors},
|
||||
* {@link org.springframework.beans.factory.config.BeanPostProcessor BeanPostProcessors}
|
||||
* {@link org.springframework.beans.factory.config.BeanPostProcessor BeanPostProcessors},
|
||||
* and {@link org.springframework.context.ApplicationListener ApplicationListeners}
|
||||
* which are defined as beans in the context.
|
||||
*
|
||||
* <p>A {@link org.springframework.context.MessageSource} may also be supplied
|
||||
* as a bean in the context, with the name "messageSource"; otherwise, message
|
||||
* resolution is delegated to the parent context. Furthermore, a multicaster
|
||||
* for application events can be supplied as "applicationEventMulticaster" bean
|
||||
* for application events can be supplied as an "applicationEventMulticaster" bean
|
||||
* of type {@link org.springframework.context.event.ApplicationEventMulticaster}
|
||||
* in the context; otherwise, a default multicaster of type
|
||||
* {@link org.springframework.context.event.SimpleApplicationEventMulticaster} will be used.
|
||||
*
|
||||
* <p>Implements resource loading through extending
|
||||
* <p>Implements resource loading by extending
|
||||
* {@link org.springframework.core.io.DefaultResourceLoader}.
|
||||
* Consequently treats non-URL resource paths as class path resources
|
||||
* (supporting full class path resource names that include the package path,
|
||||
* e.g. "mypackage/myresource.dat"), unless the {@link #getResourceByPath}
|
||||
* method is overwritten in a subclass.
|
||||
* method is overridden in a subclass.
|
||||
*
|
||||
* @author Rod Johnson
|
||||
* @author Juergen Hoeller
|
||||
@@ -392,7 +392,7 @@ public abstract class AbstractApplicationContext extends DefaultResourceLoader
|
||||
else {
|
||||
applicationEvent = new PayloadApplicationEvent<>(this, event);
|
||||
if (eventType == null) {
|
||||
eventType = ((PayloadApplicationEvent) applicationEvent).getResolvableType();
|
||||
eventType = ((PayloadApplicationEvent<?>) applicationEvent).getResolvableType();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -714,7 +714,7 @@ public abstract class AbstractApplicationContext extends DefaultResourceLoader
|
||||
}
|
||||
|
||||
/**
|
||||
* Instantiate and invoke all registered BeanPostProcessor beans,
|
||||
* Instantiate and register all BeanPostProcessor beans,
|
||||
* respecting explicit order if given.
|
||||
* <p>Must be called before any instantiation of application beans.
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user