Class AbstractStaticFailoverStrategy

    • Constructor Detail

      • AbstractStaticFailoverStrategy

        public AbstractStaticFailoverStrategy()
    • Method Detail

      • setDelayBetweenRetries

        public void setDelayBetweenRetries​(long delay)
      • getDelayBetweenRetries

        public long getDelayBetweenRetries()
      • setAlternateAddresses

        public void setAlternateAddresses​(List<String> alternateAddresses)
      • getAlternateAddresses

        public List<String> getAlternateAddresses​(Exchange exchange)
        Get the alternate addresses for this invocation.
        Specified by:
        getAlternateAddresses in interface FailoverStrategy
        Parameters:
        exchange - the current Exchange
        Returns:
        a List of alternate addresses if available
      • selectAlternateAddress

        public String selectAlternateAddress​(List<String> alternates)
        Select one of the alternate addresses for a retried invocation.
        Specified by:
        selectAlternateAddress in interface FailoverStrategy
        Parameters:
        alternates - a List of alternate addresses if available
        Returns:
        the selected address or null if no alternate address is available
      • getAlternateEndpoints

        public List<Endpoint> getAlternateEndpoints​(Exchange exchange)
        Get the alternate endpoints for this invocation.
        Specified by:
        getAlternateEndpoints in interface FailoverStrategy
        Parameters:
        exchange - the current Exchange
        Returns:
        a List of alternate endpoints if available
      • selectAlternateEndpoint

        public Endpoint selectAlternateEndpoint​(List<Endpoint> alternates)
        Select one of the alternate endpoints for a retried invocation.
        Specified by:
        selectAlternateEndpoint in interface FailoverStrategy
        Parameters:
        alternates - a List of alternate endpoints if available
        Returns:
        the selected endpoint or null if no alternate endpoint is available
      • getEndpoints

        protected List<Endpoint> getEndpoints​(Exchange exchange,
                                              boolean acceptCandidatesWithSameAddress)
        Get the endpoints for this invocation.
        Parameters:
        exchange - the current Exchange
        acceptCandidatesWithSameAddress - true to accept candidates with the same address
        Returns:
        a List of alternate endpoints if available
      • getNextAlternate

        protected abstract <T> T getNextAlternate​(List<T> alternates)
        Get next alternate endpoint.
        Parameters:
        alternates - non-empty List of alternate endpoints
        Returns:
      • getLogLevel

        protected Level getLogLevel()
        Get the log level for reporting the selection of the new alternative address or endpoint
        Returns:
        the log level