Annotation Interface JpaEntityScan


@Retention(RUNTIME) @Target(TYPE) @Documented @Import(JpaEntityScanBeanRegistrar.class) public @interface JpaEntityScan
Similar to EntityScan, but allows for tying the scanned entities to a particular route for use with JpaDataRoute and RoutingJpaDataSource. It is expected that the routePackage() values matches that of JpaDataRoute.routePackage(). The end result is that one or more entities will be tied to a particular datasource, thereby limiting the scope to a specific backing datastore or database partition.
Author:
Jeff Fischer
  • Required Element Summary

    Required Elements
    Modifier and Type
    Required Element
    Description
    One or more packages to scan for valid JPA annotated entities.
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    boolean
    If routePackage() is left empty, the system will normally try to infer a route package.
    The portion of a package name that uniquely identifies this route.
  • Element Details

    • basePackages

      String[] basePackages
      One or more packages to scan for valid JPA annotated entities.
      Returns:
      One or more packages to scan for valid JPA annotated entities.
    • routePackage

      String routePackage
      The portion of a package name that uniquely identifies this route. For example, the Broadleaf offer service exposes a package com.broadleafcommerce.promotion.offer that uniquely belongs to all classes in the offer service. This can be left blank, in which case, the domain classes in the basePackages will be reviewed for extensions of out-of-the-box domain by which the routePackage may be deduced. Failing that, all scanned entities in the basePackages() will be included in all EntityManagerFactory instances.
      Returns:
      The portion of a package name that uniquely identifies this route.
      Default:
      ""
    • includeInAllRoutesIfRoutePackageEmpty

      boolean includeInAllRoutesIfRoutePackageEmpty
      If routePackage() is left empty, the system will normally try to infer a route package. If includeInAllRoutesIfRoutePackageEmpty is set to true, the system will skip that step and automatically include the scanned entities in all routes. The default is false.
      Returns:
      Whether or not to include scanned entities in all routes if routePackage() is empty.
      Default:
      false