org.littleshoot.proxy.ChainedProxyManager Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of littleproxy Show documentation
Show all versions of littleproxy Show documentation
LittleProxy is a high performance HTTP proxy written in Java and using the Netty networking framework.
package org.littleshoot.proxy;
import io.netty.handler.codec.http.HttpRequest;
import java.util.Queue;
/**
*
* Interface for classes that manage chained proxies.
*
*/
public interface ChainedProxyManager {
/**
*
* Based on the given httpRequest, add any {@link ChainedProxy}s to the list
* that should be used to process the request. The downstream proxy will
* attempt to connect to each of these in the order that they appear until
* it successfully connects to one.
*
*
*
* To allow the proxy to fall back to a direct connection, you can add
* {@link ChainedProxyAdapter#FALLBACK_TO_DIRECT_CONNECTION} to the end of
* the list.
*
*
*
* To keep the proxy from attempting any connection, leave the list blank.
* This will cause the proxy to return a 502 response.
*
*
* @param httpRequest
* @param chainedProxies
*/
void lookupChainedProxies(HttpRequest httpRequest,
Queue chainedProxies);
}