Class RotatingNanoIpRoutePlanner

  • All Implemented Interfaces:
    org.apache.http.conn.routing.HttpRoutePlanner

    public final class RotatingNanoIpRoutePlanner
    extends AbstractRoutePlanner
    • Constructor Detail

      • RotatingNanoIpRoutePlanner

        public RotatingNanoIpRoutePlanner​(java.util.List<IpBlock> ipBlocks)
      • RotatingNanoIpRoutePlanner

        public RotatingNanoIpRoutePlanner​(java.util.List<IpBlock> ipBlocks,
                                          java.util.function.Predicate<java.net.InetAddress> ipFilter)
      • RotatingNanoIpRoutePlanner

        public RotatingNanoIpRoutePlanner​(java.util.List<IpBlock> ipBlocks,
                                          java.util.function.Predicate<java.net.InetAddress> ipFilter,
                                          boolean handleSearchFailure)
    • Method Detail

      • getCurrentBlock

        public java.math.BigInteger getCurrentBlock()
        Returns the current block index
        Returns:
        block index which is currently used
      • getAddressIndexInBlock

        public long getAddressIndexInBlock()
        Returns the address offset for the current nano time
        Returns:
        address offset as long
      • determineAddressPair

        protected Tuple<java.net.InetAddress,​java.net.InetAddress> determineAddressPair​(Tuple<java.net.Inet4Address,​java.net.Inet6Address> remoteAddresses)
                                                                                       throws org.apache.http.HttpException
        Description copied from class: AbstractRoutePlanner
        Determines the local and remote address pair to use
        Specified by:
        determineAddressPair in class AbstractRoutePlanner
        Parameters:
        remoteAddresses - The remote address pair containing IPv4 and IPv6 addresses - which can be null
        Returns:
        a Tuple which contains l = localAddress & r = remoteAddress
        Throws:
        org.apache.http.HttpException - when no route can be determined
      • onAddressFailure

        protected void onAddressFailure​(java.net.InetAddress address)
        Description copied from class: AbstractRoutePlanner
        Called when an address is marked as failing
        Overrides:
        onAddressFailure in class AbstractRoutePlanner
        Parameters:
        address - the failing address