Interface LoadingStrategy

All Superinterfaces:
Comparable<Prioritized>, Prioritized
All Known Implementing Classes:
DubboInternalLoadingStrategy, DubboLoadingStrategy, ServicesLoadingStrategy

public interface LoadingStrategy extends Prioritized
  • Field Details

    • ALL

      static final String ALL
      when spi is loaded by dubbo framework classloader only, it indicates all LoadingStrategy should load this spi
      See Also:
  • Method Details

    • directory

      String directory()
    • preferExtensionClassLoader

      default boolean preferExtensionClassLoader()
    • excludedPackages

      default String[] excludedPackages()
    • includedPackages

      default String[] includedPackages()
      To restrict some class that should not be loaded from `org.apache.dubbo` package type SPI class. For example, we can restrict the implementation class which package is `org.xxx.xxx` can be loaded as SPI implementation.
      Returns:
      packages can be loaded in `org.apache.dubbo`'s SPI
    • includedPackagesInCompatibleType

      default String[] includedPackagesInCompatibleType()
      To restrict some class that should not be loaded from `org.alibaba.dubbo`(for compatible purpose) package type SPI class. For example, we can restrict the implementation class which package is `org.xxx.xxx` can be loaded as SPI implementation
      Returns:
      packages can be loaded in `org.alibaba.dubbo`'s SPI
    • onlyExtensionClassLoaderPackages

      default String[] onlyExtensionClassLoaderPackages()
      To restrict some class that should load from Dubbo's ClassLoader. For example, we can restrict the class declaration in `org.apache.dubbo` package should be loaded from Dubbo's ClassLoader and users cannot declare these classes.
      Returns:
      class packages should load
      Since:
      3.0.4
    • overridden

      default boolean overridden()
      Indicates current LoadingStrategy supports overriding other lower prioritized instances or not.
      Returns:
      if supports, return true, or false
      Since:
      2.7.7
    • getName

      default String getName()