/** * @see io.apiman.gateway.engine.io.IAbortable#abort() */ @Override public void abort(Throwable t) { if (!finished) { finished = true; connected = false; cacheEntry.abort(t); } }
/** * @see io.apiman.gateway.engine.io.IReadStream#bodyHandler(io.apiman.gateway.engine.async.IAsyncHandler) */ @Override public void bodyHandler(final IAsyncHandler<IApimanBuffer> bodyHandler) { cacheEntry.bodyHandler(bodyHandler); }
/** * @see io.apiman.gateway.engine.io.IReadStream#endHandler(io.apiman.gateway.engine.async.IAsyncHandler) */ @Override public void endHandler(final IAsyncHandler<Void> endHandler) { cacheEntry.endHandler(new IAsyncHandler<Void>() { @Override public void handle(Void result) { endHandler.handle(result); connected = false; finished = true; } }); }
/** * @see io.apiman.gateway.engine.io.IReadStream#getHead() */ @Override public ApiResponse getHead() { return cacheEntry.getHead(); }
/** * @see io.apiman.gateway.engine.io.ISignalReadStream#transmit() */ @Override public void transmit() { cacheEntry.transmit(); }
@Override public void handle(IAsyncResult<ISignalReadStream<ApiResponse>> result) { if (result.isError()) { chain.throwError(result.getError()); } else { ISignalReadStream<ApiResponse> cacheEntry = result.getResult(); if (cacheEntry != null) { context.setConnectorInterceptor(new CacheConnectorInterceptor(cacheEntry)); context.setAttribute(SHOULD_CACHE_ATTR, Boolean.FALSE); context.setAttribute(CACHED_RESPONSE, cacheEntry.getHead()); } chain.doApply(request); } } });
/** * @see io.apiman.gateway.engine.io.IAbortable#abort() */ @Override public void abort(Throwable t) { connectorResponseStream.abort(t); }
/** * @see io.apiman.gateway.engine.io.IAbortable#abort() */ @Override public void abort(Throwable t) { connectorResponseStream.abort(t); }