def METHOD_NAME(app, request, integration):
    # type: (Bottle, LocalRequest, BottleIntegration) -> EventProcessor
    def event_processor(event, hint):
        # type: (Dict[str, Any], Dict[str, Any]) -> Dict[str, Any]
        _set_transaction_name_and_source(event, integration.transaction_style, request)
        with capture_internal_exceptions():
            BottleRequestExtractor(request).extract_into_event(event)
        return event
    return event_processor