类 AbstractDirectory<T>

  • 所有已实现的接口:
    org.apache.dubbo.common.Node, Directory<T>
    直接已知子类:
    StaticDirectory

    public abstract class AbstractDirectory<T>
    extends Object
    implements Directory<T>
    Abstract implementation of Directory: Invoker list returned from this Directory's list method have been filtered by Routers
    • 构造器详细资料

      • AbstractDirectory

        public AbstractDirectory​(org.apache.dubbo.common.URL url)
      • AbstractDirectory

        public AbstractDirectory​(org.apache.dubbo.common.URL url,
                                 boolean isUrlFromRegistry)
      • AbstractDirectory

        public AbstractDirectory​(org.apache.dubbo.common.URL url,
                                 RouterChain<T> routerChain,
                                 boolean isUrlFromRegistry)
    • 方法详细资料

      • getUrl

        public org.apache.dubbo.common.URL getUrl()
        指定者:
        getUrl 在接口中 org.apache.dubbo.common.Node
      • setRouterChain

        public void setRouterChain​(RouterChain<T> routerChain)
      • getConsumerUrl

        public org.apache.dubbo.common.URL getConsumerUrl()
        指定者:
        getConsumerUrl 在接口中 Directory<T>
      • setConsumerUrl

        public void setConsumerUrl​(org.apache.dubbo.common.URL consumerUrl)
      • destroy

        public void destroy()
        指定者:
        destroy 在接口中 org.apache.dubbo.common.Node
      • addInvalidateInvoker

        public void addInvalidateInvoker​(Invoker<T> invoker)
        从接口复制的说明: Directory
        invalidate an invoker, add it into reconnect task, remove from list next time will be recovered by address refresh notification or reconnect success notification
        指定者:
        addInvalidateInvoker 在接口中 Directory<T>
        参数:
        invoker - invoker to invalidate
      • checkConnectivity

        public void checkConnectivity()
      • refreshInvoker

        public void refreshInvoker()
        Refresh invokers from total invokers 1. all the invokers in need to reconnect list should be removed in the valid invokers list 2. all the invokers in disabled invokers list should be removed in the valid invokers list 3. all the invokers disappeared from total invokers should be removed in the need to reconnect list 4. all the invokers disappeared from total invokers should be removed in the disabled invokers list
      • addDisabledInvoker

        public void addDisabledInvoker​(Invoker<T> invoker)
        从接口复制的说明: Directory
        disable an invoker, remove from list next time will be removed when invoker is removed by address refresh notification using in service offline notification
        指定者:
        addDisabledInvoker 在接口中 Directory<T>
        参数:
        invoker - invoker to invalidate
      • recoverDisabledInvoker

        public void recoverDisabledInvoker​(Invoker<T> invoker)
        从接口复制的说明: Directory
        recover a disabled invoker
        指定者:
        recoverDisabledInvoker 在接口中 Directory<T>
        参数:
        invoker - invoker to invalidate
      • getCheckConnectivityPermit

        @Deprecated
        public Semaphore getCheckConnectivityPermit()
        已过时。
        for ut only
      • getInvokersToReconnect

        public List<Invoker<T>> getInvokersToReconnect()
      • getDisabledInvokers

        public Set<Invoker<T>> getDisabledInvokers()