public class AbstractBeanDefinitionExcludeFilter extends java.lang.Object implements BeanRegistrationExcludeFilter
Keeps abstract bean definitions out of ahead-of-time processing.
An abstract definition is a template: it carries property values for children to inherit
and is never instantiated. Spring's bean-definition code generator has no representation for
that — it emits neither the abstract flag nor a bean class, so the definition is regenerated
as a concrete bean of type Object carrying the template's properties, which fails as
soon as the context applies them.
Children are unaffected: ahead-of-time processing generates them from their merged definition, so inherited values are already folded in and no parent is needed at runtime. A definition contributed dynamically still finds its parent, because the post-processor that registers the template runs during refresh in an ahead-of-time context as it does in any other.
| Type Params | Return Type | Name and description |
|---|---|---|
|
public boolean |
isExcludedFromAotProcessing(RegisteredBean registeredBean) |
| Methods inherited from class | Name |
|---|---|
class java.lang.Object |
java.lang.Object#equals(java.lang.Object), java.lang.Object#getClass(), java.lang.Object#hashCode(), java.lang.Object#notify(), java.lang.Object#notifyAll(), java.lang.Object#toString(), java.lang.Object#wait(), java.lang.Object#wait(long), java.lang.Object#wait(long, int) |