Why injecting it in all extensions when it is not used in the abstract class and is not used by all extensions ?