The EntityScanner, used by Spring Boot starter implementations to correct discover domain objects with specific annotations (such as @Entity, @PlanningEntity, etc), only scans for concrete classes, not for abstract classes nor interfaces. Some starter implementations (such as the optaplanner one) need to scan for abstract classes and interfaces too.

This change allows them to do that, by enabling it with a constructor parameter (it's still excluding them by default), so they don't have to duplicate the EntityScanner logic (so they remain compatible with future Spring Boot releases).

Comment From: snicoll

@ge0ffrey how is it going? Did you get a chance to look at the review?

Comment From: ge0ffrey

Sorry for the delay, I'll do the sugested changes the week of 17 Aug.

Comment From: ge0ffrey

@snicoll Ready for review I think

Comment From: snicoll

@ge0ffrey how is it going? I'd like to get a resolution on this one and will take over next week unless you beat me to it. Thanks!

Comment From: snicoll

Thanks for the PR but I've decided to implement this differently as described in my review. See #23154