Class CacheConnectorInterceptor
- java.lang.Object
-
- io.apiman.gateway.engine.policies.caching.CacheConnectorInterceptor
-
- All Implemented Interfaces:
IApiConnection,IApiConnectionResponse,IApiConnector,IAbortable,IReadStream<ApiResponse>,ISignalReadStream<ApiResponse>,ISignalWriteStream,IStream,IWriteStream,IConnectorInterceptor
public class CacheConnectorInterceptor extends Object implements IConnectorInterceptor, IApiConnector, IApiConnection, IApiConnectionResponse
A connector interceptor responsible for skipping the invokation to the back end API. Instead of connecting to the real back-end, this simply provides the previously-cached back-end response.- Author:
- eric.wittmann@redhat.com
-
-
Constructor Summary
Constructors Constructor Description CacheConnectorInterceptor(ISignalReadStream<ApiResponse> cacheEntry)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidabort(Throwable t)voidbodyHandler(IAsyncHandler<IApimanBuffer> bodyHandler)IApiConnectionconnect(ApiRequest request, IAsyncResultHandler<IApiConnectionResponse> handler)IApiConnectorcreateConnector()voidend()voidendHandler(IAsyncHandler<Void> endHandler)ApiResponsegetHead()booleanisConnected()booleanisFinished()voidtransmit()voidwrite(IApimanBuffer chunk)-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.apiman.gateway.engine.io.IAbortable
abort
-
Methods inherited from interface io.apiman.gateway.engine.io.ISignalWriteStream
drainHandler, isFull
-
-
-
-
Constructor Detail
-
CacheConnectorInterceptor
public CacheConnectorInterceptor(ISignalReadStream<ApiResponse> cacheEntry)
Constructor.- Parameters:
cacheEntry-
-
-
Method Detail
-
createConnector
public IApiConnector createConnector()
- Specified by:
createConnectorin interfaceIConnectorInterceptor- See Also:
IConnectorInterceptor.createConnector()
-
connect
public IApiConnection connect(ApiRequest request, IAsyncResultHandler<IApiConnectionResponse> handler) throws ConnectorException
- Specified by:
connectin interfaceIApiConnector- Throws:
ConnectorException- See Also:
IApiConnector.connect(io.apiman.gateway.engine.beans.ApiRequest, io.apiman.gateway.engine.async.IAsyncResultHandler)
-
write
public void write(IApimanBuffer chunk)
- Specified by:
writein interfaceIWriteStream- See Also:
IWriteStream.write(io.apiman.gateway.engine.io.IApimanBuffer)
-
end
public void end()
- Specified by:
endin interfaceIWriteStream- See Also:
IWriteStream.end()
-
isFinished
public boolean isFinished()
- Specified by:
isFinishedin interfaceIStream- See Also:
IStream.isFinished()
-
abort
public void abort(Throwable t)
- Specified by:
abortin interfaceIAbortable- See Also:
IAbortable.abort()
-
isConnected
public boolean isConnected()
- Specified by:
isConnectedin interfaceIApiConnection- See Also:
IApiConnection.isConnected()
-
transmit
public void transmit()
- Specified by:
transmitin interfaceISignalReadStream<ApiResponse>- See Also:
ISignalReadStream.transmit()
-
bodyHandler
public void bodyHandler(IAsyncHandler<IApimanBuffer> bodyHandler)
- Specified by:
bodyHandlerin interfaceIReadStream<ApiResponse>- See Also:
IReadStream.bodyHandler(io.apiman.gateway.engine.async.IAsyncHandler)
-
endHandler
public void endHandler(IAsyncHandler<Void> endHandler)
- Specified by:
endHandlerin interfaceIReadStream<ApiResponse>- See Also:
IReadStream.endHandler(io.apiman.gateway.engine.async.IAsyncHandler)
-
getHead
public ApiResponse getHead()
- Specified by:
getHeadin interfaceIReadStream<ApiResponse>- See Also:
IReadStream.getHead()
-
-