Class JavaSourceSearchHelper

java.lang.Object
io.micrometer.docs.commons.JavaSourceSearchHelper

public class JavaSourceSearchHelper extends Object
Helper class to search any JavaSource from java files under specified directory.
  • Method Summary

    Modifier and Type
    Method
    Description
    create(Path projectRoot, Pattern inclusionPattern)
     
    org.jboss.forge.roaster.model.source.JavaSource<?>
    search(String qualifiedName)
    Search a JavaSource by qualified class name.
    org.jboss.forge.roaster.model.source.MethodSource<?>
    searchMethodSource(org.jboss.forge.roaster.model.source.JavaSource<?> javaSource, String methodName)
    Search the method source in the hierarchy(parents/interfaces) of the given JavaSource.
    searchObservationConventionInterfaceName(org.jboss.forge.roaster.model.source.JavaSource<?> javaSource)
    Hierarchically search the implementing name of ObservationConvention or GlobalObservationConvention.
    org.jboss.forge.roaster.model.source.JavaSource<?>
    searchReferencingClass(org.jboss.forge.roaster.model.source.JavaSource<?> enclosingJavaSource, String className)
    Search the class which is referenced by the enclosing class.
    org.jboss.forge.roaster.model.source.EnumConstantSource
    searchReferencingEnumConstant(org.jboss.forge.roaster.model.source.JavaSource<?> enclosingJavaSource, org.jboss.forge.roaster._shade.org.eclipse.jdt.core.dom.Expression expression)
    Search an enum constant referenced by the enclosing class.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Method Details

    • create

      public static JavaSourceSearchHelper create(Path projectRoot, Pattern inclusionPattern)
    • search

      @Nullable public org.jboss.forge.roaster.model.source.JavaSource<?> search(String qualifiedName)
      Search a JavaSource by qualified class name.
      Parameters:
      qualifiedName - a qualified class name
      Returns:
      matched JavaSource or null if not found.
    • searchReferencingClass

      @Nullable public org.jboss.forge.roaster.model.source.JavaSource<?> searchReferencingClass(org.jboss.forge.roaster.model.source.JavaSource<?> enclosingJavaSource, String className)
      Search the class which is referenced by the enclosing class.
      Parameters:
      enclosingJavaSource - enclosing java class source
      className - search target class name. This cannot be an enum constant name.
      Returns:
      matched java source or null
    • searchReferencingEnumConstant

      @Nullable public org.jboss.forge.roaster.model.source.EnumConstantSource searchReferencingEnumConstant(org.jboss.forge.roaster.model.source.JavaSource<?> enclosingJavaSource, org.jboss.forge.roaster._shade.org.eclipse.jdt.core.dom.Expression expression)
      Search an enum constant referenced by the enclosing class.
      Parameters:
      enclosingJavaSource - enclosing class JavaSource.
      expression - target enum constant. This can be QualifiedName, such as MyEnum.FOO or SimpleName, such as FOO for static imported one.
      Returns:
      an enum constant source or null if not found.
    • searchMethodSource

      @Nullable public org.jboss.forge.roaster.model.source.MethodSource<?> searchMethodSource(org.jboss.forge.roaster.model.source.JavaSource<?> javaSource, String methodName)
      Search the method source in the hierarchy(parents/interfaces) of the given JavaSource.
      Parameters:
      javaSource - a JavaSource to search from
      methodName - target method name
      Returns:
      found MethodSource or null if not found
    • searchObservationConventionInterfaceName

      @Nullable public String searchObservationConventionInterfaceName(org.jboss.forge.roaster.model.source.JavaSource<?> javaSource)
      Hierarchically search the implementing name of ObservationConvention or GlobalObservationConvention.

      NOTE: the observation convention has generics and returning name will contain the generics information.

      Parameters:
      javaSource - enclosing java source
      Returns:
      name of the convention class with generics. (e.g. "io.micrometer.observation.ObservationConvention<KafkaRecordReceiverContext>")