Search in sources :

Example 26 with Trace

use of com.enonic.xp.trace.Trace in project xp by enonic.

the class PostProcessingRenderer method executeResponseProcessors.

private PortalResponse executeResponseProcessors(final PortalRequest portalRequest, final PortalResponse portalResponse) {
    final ResponseProcessorDescriptors filters = this.processorChainResolver.resolve(portalRequest);
    if (!portalResponse.applyFilters() || filters.isEmpty()) {
        return portalResponse;
    }
    PortalResponse filterResponse = portalResponse;
    for (ResponseProcessorDescriptor filter : filters) {
        final PortalResponse filterPortalResponse = filterResponse;
        final Trace trace = Tracer.newTrace("renderFilter");
        if (trace == null) {
            filterResponse = processorExecutor.execute(filter, portalRequest, filterPortalResponse);
        } else {
            trace.put("app", filter.getApplication().toString());
            trace.put("name", filter.getName());
            trace.put("type", "filter");
            filterResponse = Tracer.trace(trace, () -> processorExecutor.execute(filter, portalRequest, filterPortalResponse));
        }
        if (!filterResponse.applyFilters()) {
            break;
        }
    }
    return filterResponse;
}
Also used : Trace(com.enonic.xp.trace.Trace) PortalResponse(com.enonic.xp.portal.PortalResponse) ResponseProcessorDescriptor(com.enonic.xp.site.processor.ResponseProcessorDescriptor) ResponseProcessorDescriptors(com.enonic.xp.site.processor.ResponseProcessorDescriptors)

Example 27 with Trace

use of com.enonic.xp.trace.Trace in project xp by enonic.

the class WebAppHandler method getScript.

private ControllerScript getScript(final ApplicationKey applicationKey) {
    final ResourceKey script = ResourceKey.from(applicationKey, "/webapp/webapp.js");
    final Trace trace = Tracer.current();
    if (trace != null) {
        trace.put("script", script.getPath());
    }
    return this.controllerScriptFactory.fromScript(script);
}
Also used : Trace(com.enonic.xp.trace.Trace) ResourceKey(com.enonic.xp.resource.ResourceKey)

Example 28 with Trace

use of com.enonic.xp.trace.Trace in project xp by enonic.

the class MappingFilterHandlerWorker method execute.

@Override
public PortalResponse execute() throws Exception {
    final Trace trace = Tracer.current();
    if (trace != null) {
        trace.put("contentPath", this.request.getContentPath().toString());
        trace.put("type", "filter");
    }
    final FilterScript filterScript = getScript();
    return filterScript.execute(this.request, this.response, this.webHandlerChain);
}
Also used : Trace(com.enonic.xp.trace.Trace) FilterScript(com.enonic.xp.portal.filter.FilterScript)

Example 29 with Trace

use of com.enonic.xp.trace.Trace in project xp by enonic.

the class MappingHandlerWorker method execute.

@Override
public PortalResponse execute() throws Exception {
    final ControllerScript controllerScript = getScript();
    final Trace trace = Tracer.current();
    if (trace != null) {
        trace.put("contentPath", this.request.getContentPath().toString());
        trace.put("type", "mapping");
    }
    this.request.setControllerScript(controllerScript);
    final PortalResponse portalResponse = rendererDelegate.render(mappingDescriptor, this.request);
    final WebSocketConfig webSocketConfig = portalResponse.getWebSocket();
    final WebSocketContext webSocketContext = this.request.getWebSocketContext();
    if (webSocketContext != null && webSocketConfig != null) {
        final WebSocketEndpoint webSocketEndpoint = newWebSocketEndpoint(webSocketConfig, this::getScript, request.getApplicationKey());
        webSocketContext.apply(webSocketEndpoint);
    }
    return portalResponse;
}
Also used : Trace(com.enonic.xp.trace.Trace) PortalResponse(com.enonic.xp.portal.PortalResponse) WebSocketConfig(com.enonic.xp.web.websocket.WebSocketConfig) ControllerScript(com.enonic.xp.portal.controller.ControllerScript) WebSocketEndpoint(com.enonic.xp.web.websocket.WebSocketEndpoint) WebSocketContext(com.enonic.xp.web.websocket.WebSocketContext)

Example 30 with Trace

use of com.enonic.xp.trace.Trace in project xp by enonic.

the class PageHandler method doHandle.

@Override
protected PortalResponse doHandle(final WebRequest webRequest, final WebResponse webResponse, final WebHandlerChain webHandlerChain) throws Exception {
    WebHandlerHelper.checkAdminAccess(webRequest);
    final PageHandlerWorker worker = new PageHandlerWorker((PortalRequest) webRequest);
    worker.contentResolver = new ContentResolver(contentService);
    worker.rendererDelegate = rendererDelegate;
    worker.pageResolver = new PageResolver(pageTemplateService);
    worker.pageDescriptorService = pageDescriptorService;
    worker.portalUrlService = portalUrlService;
    final Trace trace = Tracer.newTrace("renderComponent");
    if (trace == null) {
        return worker.execute();
    }
    return Tracer.traceEx(trace, worker::execute);
}
Also used : Trace(com.enonic.xp.trace.Trace) ContentResolver(com.enonic.xp.portal.impl.ContentResolver)

Aggregations

Trace (com.enonic.xp.trace.Trace)37 Content (com.enonic.xp.content.Content)6 PortalResponse (com.enonic.xp.portal.PortalResponse)6 Node (com.enonic.xp.node.Node)4 PortalRequest (com.enonic.xp.portal.PortalRequest)4 Site (com.enonic.xp.site.Site)4 DescriptorKey (com.enonic.xp.page.DescriptorKey)3 ContentResolver (com.enonic.xp.portal.impl.ContentResolver)3 ApplicationKey (com.enonic.xp.app.ApplicationKey)2 ContentResolverResult (com.enonic.xp.portal.impl.ContentResolverResult)2 WebResponse (com.enonic.xp.web.WebResponse)2 Matcher (java.util.regex.Matcher)2 Attachment (com.enonic.xp.attachment.Attachment)1 FindContentByParentResult (com.enonic.xp.content.FindContentByParentResult)1 FindContentIdsByQueryResult (com.enonic.xp.content.FindContentIdsByQueryResult)1 Media (com.enonic.xp.content.Media)1 ThrottlingException (com.enonic.xp.exception.ThrottlingException)1 ReadImageParams (com.enonic.xp.image.ReadImageParams)1 ImageOrientation (com.enonic.xp.media.ImageOrientation)1 FindNodesByParentResult (com.enonic.xp.node.FindNodesByParentResult)1