Class ComponentScanner

java.lang.Object
com.ultikits.ultitools.context.ComponentScanner

@Internal public class ComponentScanner extends Object
Component scanner to find and register components.
组件扫描器,用于查找和注册组件。
  • Field Details

  • Constructor Details

  • Method Details

    • scanPackages

      public void scanPackages(String... basePackages)
      Scan packages for components.
      扫描包以查找组件。
      Parameters:
      basePackages - packages to scan
      要扫描的包
    • scanPackage

      public void scanPackage(String basePackage)
      Scan a single package for components.
      扫描单个包以查找组件。
      Parameters:
      basePackage - package to scan
      要扫描的包
    • scanJar

      private void scanJar(URL resource, String basePackage, ClassLoader classLoader)
      Scan inside a JAR file for class files.
      扫描JAR文件中的类文件。
    • scanDirectory

      private void scanDirectory(File directory, String packageName, ClassLoader classLoader)
      Scan directory for class files.
      扫描目录以查找类文件。
    • processClass

      private void processClass(Class<?> clazz)
      Process a class for component annotations.
      处理类的组件注解。
    • shouldRegister

      private boolean shouldRegister(Class<?> clazz)
      Check if a class should be registered based on @ConditionalOnConfig.
      根据 @ConditionalOnConfig 检查类是否应被注册。
      Parameters:
      clazz - the class to check
      Returns:
      true if the class should be registered
    • isComponent

      private boolean isComponent(Class<?> clazz)
      Check if class is a component.
      检查类是否是组件。
    • hasComponentAnnotation

      private boolean hasComponentAnnotation(Class<?> clazz)
      Check if class has meta-component annotation.
      检查类是否有元组件注解。
    • registerComponent

      private void registerComponent(Class<?> clazz)
      Register a component class.
      注册组件类。
    • registerConfiguration

      private void registerConfiguration(Class<?> clazz)
      Register a configuration class.
      注册配置类。
    • processBeanMethod

      private void processBeanMethod(Object configInstance, Method method)
      Process @Bean method.
      处理@Bean方法。
    • getBeanName

      private String getBeanName(Class<?> clazz)
      Get bean name from class.
      从类获取Bean名称。