LCOV - code coverage report
Current view: top level - envoy/server - request_id_extension_config.h (source / functions) Hit Total Coverage
Test: coverage.dat Lines: 1 2 50.0 %
Date: 2024-01-05 06:35:25 Functions: 1 2 50.0 %

          Line data    Source code
       1             : #pragma once
       2             : 
       3             : #include <string>
       4             : 
       5             : #include "envoy/http/request_id_extension.h"
       6             : #include "envoy/server/filter_config.h"
       7             : 
       8             : #include "source/common/protobuf/protobuf.h"
       9             : 
      10             : namespace Envoy {
      11             : namespace Server {
      12             : namespace Configuration {
      13             : 
      14             : /**
      15             :  * Implemented for each RequestIDExtension and registered via Registry::registerFactory
      16             :  * or the convenience class RegisterFactory.
      17             :  */
      18             : class RequestIDExtensionFactory : public Envoy::Config::TypedFactory {
      19             : public:
      20           0 :   ~RequestIDExtensionFactory() override = default;
      21             : 
      22             :   /**
      23             :    * Create a Request ID Extension instance from the provided config proto.
      24             :    * @param config the custom configuration for this request id extension type.
      25             :    * @param context general filter context through which persistent resources can be accessed.
      26             :    */
      27             :   virtual Http::RequestIDExtensionSharedPtr createExtensionInstance(const Protobuf::Message& config,
      28             :                                                                     FactoryContext& context) PURE;
      29             : 
      30          86 :   std::string category() const override { return "envoy.request_id"; }
      31             : };
      32             : 
      33             : } // namespace Configuration
      34             : } // namespace Server
      35             : } // namespace Envoy

Generated by: LCOV version 1.15