When there is a decorator which inherits from a base implementation.
BaseDecorator - BaseModuleDecorator - ServiceDecorator(abstract) where the ServiceDecorator injects the delegate.
It does not matter if the BaseDecorator or BaseModuleDecorator are abstract or not.
The base decorators hold common resources for the concrete decorator implementation.
The BaseDecorator is not removed from the 'decoratedTypes - set' but the BaseModuleDecorator is.
This happens in org.apache.webbeans.component.creation.DecoratorBeanBuilder#defineDecoratedTypes(line: 189 - 196)
Is a decorator not supposed to inherit from another class ?