类 ExtensionLoader<T>


  • public class ExtensionLoader<T>
    extends 
    Load dubbo extensions
    • auto inject dependency extension
    • auto wrap extension in wrapper
    • default extension is an adaptive instance
    另请参阅:
    , SPI, Adaptive, Activate
    • 方法详细资料

      • getExtensionLoader

        public static <T> <T> type)
      • getExtensionName

        public  getExtensionName​(T extensionInstance)
      • getExtensionName

        public  getExtensionName​(<?> extensionClass)
      • getActivateExtension

        public <T> getActivateExtension​(URL url,
                                             key,
                                             group)
        This is equivalent to getActivateExtension(url, url.getParameter(key).split(","), null)
        参数:
        url - url
        key - url parameter key which used to get extension point names
        group - group
        返回:
        extension list which are activated.
        另请参阅:
        getActivateExtension(com.alibaba.dubbo.common.URL, String[], String)
      • getActivateExtension

        public <T> getActivateExtension​(URL url,
                                            [] values,
                                             group)
        Get activate extensions.
        参数:
        url - url
        values - extension point names
        group - group
        返回:
        extension list which are activated
        另请参阅:
        Activate
      • getLoadedExtension

        public  name)
        Get extension's instance. Return null if extension is not found or is not initialized. Pls. note that this method will not trigger extension load.

        In order to trigger extension load, call getExtension(String) instead.

        另请参阅:
        getExtension(String)
      • getExtension

        public  name)
        Find the extension with the given name. If the specified name is not found, then will be thrown.
      • getDefaultExtension

        public T getDefaultExtension()
        Return default extension, return null if it's not configured.
      • hasExtension

        public boolean hasExtension​( name)
      • getSupportedExtensions

        public <> getSupportedExtensions()
      • getDefaultExtensionName

        public  getDefaultExtensionName()
        Return default extension name, return null if not configured.
      • addExtension

        public void addExtension​( name,
                                 <?> clazz)
        Register new extension via API
        参数:
        name - extension name
        clazz - extension class
        抛出:
        - when extension with the same name has already been registered.
      • replaceExtension

        public void replaceExtension​( name,
                                     <?> clazz)
        已过时。
        not recommended any longer, and use only when test
        Replace the existing extension via API
        参数:
        name - extension name
        clazz - extension class
        抛出:
        - when extension to be placed doesn't exist
      • getAdaptiveExtension

        public T getAdaptiveExtension()
      • toString

        public  toString()
        覆盖:
         在类中