Refactor AbstractClassnameChecker
Move out of namespace LegacyClassnames
.
This class handles all class name occurrences.
Therefore it should be more generic and contain less code. Just implement basic necessary logic and extend the new class for the different namespaces? Currently the concrete class occurrences are handled in concrete classes that extend the current one. Therefore code in this class is executed for all found class occurrences. How to solve that? Perhaps with some system like events? We have to find a better solution, the basic Problem is:
We need to work on Classnames at any position, therefore we need finders (currently the concrete classes) and work on that class at the given position.
The benefit will be easier to maintain, understandable and extendable code.