Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement filter interface to test if provided class pass the test (predicate) #15

Open
OlehYakovenko opened this issue Nov 9, 2023 · 1 comment

Comments

@OlehYakovenko
Copy link
Contributor

  • should include predicate information of what classes we are looking for (e.g. - class with @BringComponent annotation or class with annotation derived from @BringComponent annotation)
  • test input class and returns 'true' if a class candidate passes the test
    - AnnotationBasedFilter - test if specified annotation present on the class
    - SuperAnnotationBasedFilter - test if a specified annotation is present as a parent in the target annotation chain
@OlehYakovenko OlehYakovenko converted this from a draft issue Nov 9, 2023
@JoshukLite
Copy link
Contributor

JoshukLite commented Nov 9, 2023

Main goal of this class is to check if candidate class is the one we need to create BeanDefinition for.
It should have single method that takes class full qualified name or class type and return boolean as result.
Base functionality should include test if @BringComponent annotation present.
Advanced implementation (or as separate filter) should include test if @BringComponent annotation is parent annotation of one of the direct annotations on tested class.
Main method migh look like public boolean match(String classFullName) or `public boolean match(Class<?> classType)'.

This filter should be created by a ConfigurationParser class based on the target configuration class and injected into ClassPathAnnotationBasedScanner.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Archived in project
Development

No branches or pull requests

2 participants