public abstract class AbstractProcessingHandler<COMPONENT extends com.yahoo.processing.Processor> extends LoggingRequestHandler
COMPONENT: The type of the processing components of which this executes a chain
Modifier and Type | Class and Description |
---|---|
private static class |
AbstractProcessingHandler.FreezeListener |
ThreadedHttpRequestHandler.LazyContentChannel
Modifier and Type | Field and Description |
---|---|
private com.yahoo.processing.execution.chain.ChainRegistry<COMPONENT> |
chainRegistry |
static String |
DEFAULT_RENDERER_ID |
private Renderer |
defaultRenderer |
private static com.yahoo.processing.request.CompoundName |
freezeListenerKey |
private com.yahoo.component.provider.ComponentRegistry<Renderer> |
renderers |
private Executor |
renderingExecutor |
CONTENT_TYPE, DATE, log
metric
Constructor and Description |
---|
AbstractProcessingHandler(com.yahoo.processing.execution.chain.ChainRegistry<COMPONENT> chainRegistry,
com.yahoo.component.provider.ComponentRegistry<Renderer> renderers,
Executor executor,
com.yahoo.container.logging.AccessLog accessLog) |
AbstractProcessingHandler(com.yahoo.processing.execution.chain.ChainRegistry<COMPONENT> chainRegistry,
com.yahoo.component.provider.ComponentRegistry<Renderer> renderers,
Executor executor,
com.yahoo.container.logging.AccessLog accessLog,
com.yahoo.jdisc.Metric metric) |
AbstractProcessingHandler(com.yahoo.container.core.ChainsConfig processingChainsConfig,
com.yahoo.component.provider.ComponentRegistry<COMPONENT> chainedComponents,
com.yahoo.component.provider.ComponentRegistry<Renderer> renderers,
Executor executor,
com.yahoo.container.logging.AccessLog accessLog) |
AbstractProcessingHandler(com.yahoo.container.core.ChainsConfig processingChainsConfig,
com.yahoo.component.provider.ComponentRegistry<COMPONENT> chainedComponents,
com.yahoo.component.provider.ComponentRegistry<Renderer> renderers,
Executor executor,
com.yahoo.container.logging.AccessLog accessLog,
com.yahoo.jdisc.Metric metric) |
Modifier and Type | Method and Description |
---|---|
private static <COMPONENT extends com.yahoo.component.chain.ChainedComponent> |
createChainRegistry(com.yahoo.container.core.ChainsConfig processingChainsConfig,
com.yahoo.component.provider.ComponentRegistry<COMPONENT> availableComponents) |
com.yahoo.processing.execution.Execution |
createExecution(com.yahoo.component.chain.Chain<COMPONENT> chain,
com.yahoo.processing.Request processingRequest) |
com.yahoo.processing.execution.chain.ChainRegistry<COMPONENT> |
getChainRegistry() |
Renderer<com.yahoo.processing.Response> |
getRendererCopy(com.yahoo.component.ComponentSpecification spec)
For internal use only
|
com.yahoo.component.provider.ComponentRegistry<Renderer> |
getRenderers() |
HttpResponse |
handle(HttpRequest request)
Throws UnsupportedOperationException: Call handle(request, channel instead)
|
HttpResponse |
handle(HttpRequest request,
com.yahoo.jdisc.handler.ContentChannel channel)
Override this rather than handle(request) to be able to write to the channel before returning from this method.
|
private static Renderer<com.yahoo.processing.Response> |
perRenderingCopy(Renderer<com.yahoo.processing.Response> renderer) |
private void |
populate(String prefixName,
Map<String,?> parameters,
com.yahoo.processing.request.Properties properties) |
private String |
resolveChainId(com.yahoo.processing.request.Properties properties) |
private static Renderer |
selectRenderer(com.yahoo.processing.Request processingRequest,
com.yahoo.component.provider.ComponentRegistry<Renderer> renderers,
Renderer defaultRenderer) |
createLoggingCompletionHandler
addDateHeader, asHttpRequest, handleRequest
getTimeout, handleRequest
currentState, destroy, refer, release, retainCount
private static final com.yahoo.processing.request.CompoundName freezeListenerKey
public static final String DEFAULT_RENDERER_ID
private final Executor renderingExecutor
private com.yahoo.processing.execution.chain.ChainRegistry<COMPONENT extends com.yahoo.processing.Processor> chainRegistry
private final com.yahoo.component.provider.ComponentRegistry<Renderer> renderers
private final Renderer defaultRenderer
public AbstractProcessingHandler(com.yahoo.processing.execution.chain.ChainRegistry<COMPONENT> chainRegistry, com.yahoo.component.provider.ComponentRegistry<Renderer> renderers, Executor executor, com.yahoo.container.logging.AccessLog accessLog, com.yahoo.jdisc.Metric metric)
public AbstractProcessingHandler(com.yahoo.processing.execution.chain.ChainRegistry<COMPONENT> chainRegistry, com.yahoo.component.provider.ComponentRegistry<Renderer> renderers, Executor executor, com.yahoo.container.logging.AccessLog accessLog)
public AbstractProcessingHandler(com.yahoo.container.core.ChainsConfig processingChainsConfig, com.yahoo.component.provider.ComponentRegistry<COMPONENT> chainedComponents, com.yahoo.component.provider.ComponentRegistry<Renderer> renderers, Executor executor, com.yahoo.container.logging.AccessLog accessLog)
@Inject public AbstractProcessingHandler(com.yahoo.container.core.ChainsConfig processingChainsConfig, com.yahoo.component.provider.ComponentRegistry<COMPONENT> chainedComponents, com.yahoo.component.provider.ComponentRegistry<Renderer> renderers, Executor executor, com.yahoo.container.logging.AccessLog accessLog, com.yahoo.jdisc.Metric metric)
public HttpResponse handle(HttpRequest request)
handle
in class ThreadedHttpRequestHandler
request
- incoming HTTP requestpublic HttpResponse handle(HttpRequest request, com.yahoo.jdisc.handler.ContentChannel channel)
ThreadedHttpRequestHandler
handle
in class ThreadedHttpRequestHandler
public com.yahoo.processing.execution.Execution createExecution(com.yahoo.component.chain.Chain<COMPONENT> chain, com.yahoo.processing.Request processingRequest)
public com.yahoo.processing.execution.chain.ChainRegistry<COMPONENT> getChainRegistry()
public com.yahoo.component.provider.ComponentRegistry<Renderer> getRenderers()
public Renderer<com.yahoo.processing.Response> getRendererCopy(com.yahoo.component.ComponentSpecification spec)
private static Renderer<com.yahoo.processing.Response> perRenderingCopy(Renderer<com.yahoo.processing.Response> renderer)
private static Renderer selectRenderer(com.yahoo.processing.Request processingRequest, com.yahoo.component.provider.ComponentRegistry<Renderer> renderers, Renderer defaultRenderer)
private static <COMPONENT extends com.yahoo.component.chain.ChainedComponent> com.yahoo.processing.execution.chain.ChainRegistry<COMPONENT> createChainRegistry(com.yahoo.container.core.ChainsConfig processingChainsConfig, com.yahoo.component.provider.ComponentRegistry<COMPONENT> availableComponents)
private String resolveChainId(com.yahoo.processing.request.Properties properties)
Copyright © 2017. All rights reserved.