Class BaseRepositoryGenerator

java.lang.Object
io.helidon.data.codegen.common.BaseRepositoryGenerator
All Implemented Interfaces:
RepositoryGenerator

public abstract class BaseRepositoryGenerator extends Object implements RepositoryGenerator
Specific data repository (e.g. Jakarta Data, Micronaut Data, ...) generator base class.
  • Constructor Details

    • BaseRepositoryGenerator

      protected BaseRepositoryGenerator()
      Creates an instance of specific data repository generator base class.
  • Method Details

    • hasInterface

      public static boolean hasInterface(TypeInfo interfaceInfo, TypeName interfaceName)
      Search for the provided interfaceName in TypeInfo interfaces hierarchy.
      Parameters:
      interfaceInfo - interfaces hierarchy to walk through
      interfaceName - interface name to search for
      Returns:
      value of true when interfaces hierarchy contains interfaceName or false otherwise
    • createRepositoryInfo

      public RepositoryInfo createRepositoryInfo(TypeInfo interfaceInfo, CodegenContext codegenContext)
      Create data repository interface info.
      Specified by:
      createRepositoryInfo in interface RepositoryGenerator
      Parameters:
      interfaceInfo - data repository interface type
      codegenContext - code processing and generation context
      Returns:
      data repository interface info
    • repositoryInfoBuilder

      protected abstract RepositoryInfo.Builder repositoryInfoBuilder(CodegenContext codegenContext)
      Data repository specific repository interface info builder (RepositoryInfo.Builder).
      Parameters:
      codegenContext - code processing and generation context
      Returns:
      repository interface info builder