Class AbstractExchange
java.lang.Object
com.predic8.membrane.core.exchange.AbstractExchange
- Direct Known Subclasses:
Exchange
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidvoidabstract <T extends AbstractExchange>
TcreateSnapshot(Runnable bodyUpdatedCallback, BodyCollectingMessageObserver.Strategy strategy, long limit) voiddetach()Prepares for long-term storage (for example, in-memoryExchangeStores).protected intvoidfinishExchange(boolean refresh) voidfinishExchange(boolean refresh, String errmsg) intabstract longgetId()getProperty(String key) <T> TgetProperty(String key, Class<T> clazz) If <transport reverseDNS="true"/>, getRemoteAddr() returns the hostname of the incoming TCP connection's remote address.longlonggetRule()getStringProperty(String key) getTime()longlonglonglongvoidbooleanvoidvoidreceived()voidvoidintvoidvoidsetDestinations(List<String> destinations) voidsetErrorMessage(String errMessage) voidsetForceToStop(boolean forceToStop) voidsetInterceptorStack(ArrayList<Interceptor> interceptorStack) voidsetOriginalRequestUri(String requestUri) voidsetProperties(Map<String, Object> properties) voidsetProperty(String key, Object value) voidvoidsetRemoteAddr(String remoteAddr) voidsetRemoteAddrIp(String remoteAddrIp) voidsetRequest(Request request) voidsetResponse(Response res) voidvoidsetStatus(ExchangeState state) voidvoidvoidsetTimeReqReceived(long tReqReceived) voidsetTimeReqSent(long tReqSent) voidsetTimeResReceived(long tResReceived) voidsetTimeResSent(long tResSent) toString()static <T extends AbstractExchange>
TupdateCopy(T source, T copy, Runnable bodyUpdatedCallback, BodyCollectingMessageObserver.Strategy strategy, long limit)
-
Field Details
-
request
-
rule
-
properties
-
-
Constructor Details
-
AbstractExchange
public AbstractExchange() -
AbstractExchange
For HttpResendRunnable
-
-
Method Details
-
setStatus
-
getStatus
-
getTime
-
setTime
-
getRequest
-
setRequest
-
getResponse
-
setResponse
-
getRule
-
setRule
-
addExchangeViewerListener
-
removeExchangeViewerListener
-
addExchangeStoreListener
-
removeExchangeStoreListener
-
setCompleted
public void setCompleted() -
setStopped
public void setStopped() -
finishExchange
public void finishExchange(boolean refresh) -
finishExchange
-
setForceToStop
public void setForceToStop(boolean forceToStop) -
isForcedToStop
public boolean isForcedToStop() -
getErrorMessage
-
setErrorMessage
-
informExchangeViewerOnRemoval
public void informExchangeViewerOnRemoval() -
setReceived
public void setReceived() -
getProperty
-
getProperty
-
getStringProperty
-
setProperty
-
getTimeReqSent
public long getTimeReqSent() -
setTimeReqSent
public void setTimeReqSent(long tReqSent) -
getTimeReqReceived
public long getTimeReqReceived() -
setTimeReqReceived
public void setTimeReqReceived(long tReqReceived) -
received
public void received() -
getTimeResSent
public long getTimeResSent() -
setTimeResSent
public void setTimeResSent(long tResSent) -
getTimeResReceived
public long getTimeResReceived() -
setTimeResReceived
public void setTimeResReceived(long tResReceived) -
getOriginalRequestUri
-
setOriginalRequestUri
-
getServer
-
getResponseContentLength
public long getResponseContentLength() -
getRequestContentLength
public long getRequestContentLength() -
getRequestContentType
-
getResponseContentType
-
setDestinations
-
getDestinations
- Returns:
- Probably never empty. Is this guaranteed to always contain at least 1 entry? There are many hardcoded calls with getDestinations().get(0) in the system.
-
getRemoteAddr
If <transport reverseDNS="true"/>, getRemoteAddr() returns the hostname of the incoming TCP connection's remote address. If false, it returns the IP address. -
setRemoteAddr
-
getRemoteAddrIp
- Returns:
- The IP address of the incoming TCP connection's remote address.
-
setRemoteAddrIp
-
toString
-
pushInterceptorToStack
-
popInterceptorFromStack
-
getHeapSizeEstimation
public int getHeapSizeEstimation() -
resetHeapSizeEstimation
public int resetHeapSizeEstimation() -
estimateHeapSize
protected int estimateHeapSize() -
updateCopy
public static <T extends AbstractExchange> T updateCopy(T source, T copy, Runnable bodyUpdatedCallback, BodyCollectingMessageObserver.Strategy strategy, long limit) -
getPublicUrl
-
detach
public void detach()Prepares for long-term storage (for example, in-memoryExchangeStores). -
getId
public abstract long getId() -
getProperties
-
setProperties
-
createSnapshot
public abstract <T extends AbstractExchange> T createSnapshot(Runnable bodyUpdatedCallback, BodyCollectingMessageObserver.Strategy strategy, long limit) throws Exception - Throws:
Exception
-
getInterceptorStack
-
setInterceptorStack
-