Interface TypeResolver

All Known Implementing Classes:
AbstractArtifactScopedTypeResolver, AbstractTypeResolver, ArtifactScopedTypeResolver

public interface TypeResolver
Defines the interface for type resolvers.
  • Method Summary

    Modifier and Type
    Method
    Description
    create(String fullQualifiedName, com.buschmais.jqassistant.plugin.common.api.model.FileDescriptor fileDescriptor, Class<T> descriptorType, com.buschmais.jqassistant.core.scanner.api.ScannerContext scannerContext)
    Resolve or create the descriptor for a Java type name.
    resolve(String fullQualifiedName, com.buschmais.jqassistant.core.scanner.api.ScannerContext context)
    Resolve or create the descriptor for Java type name to be used as dependency.
  • Method Details

    • create

      <T extends ClassFileDescriptor> TypeCache.CachedType<T> create(String fullQualifiedName, com.buschmais.jqassistant.plugin.common.api.model.FileDescriptor fileDescriptor, Class<T> descriptorType, com.buschmais.jqassistant.core.scanner.api.ScannerContext scannerContext)
      Resolve or create the descriptor for a Java type name.

      If a the descriptor already exists it will be used and migrated to the given type.

      Type Parameters:
      T - The expected type of the descriptor.
      Parameters:
      fullQualifiedName - The fully qualified type name, e.g. "java.lang.Object".
      fileDescriptor - The file descriptor.
      descriptorType - The expected type of the descriptor.
      scannerContext - The scanner context. @return The type descriptor.
    • resolve

      TypeCache.CachedType<TypeDescriptor> resolve(String fullQualifiedName, com.buschmais.jqassistant.core.scanner.api.ScannerContext context)
      Resolve or create the descriptor for Java type name to be used as dependency.
      Parameters:
      fullQualifiedName - The fully qualified type name, e.g. "java.lang.Object".
      context - The scanner context.