1
#pragma once
2

            
3
#include "envoy/compression/compressor/factory.h"
4
#include "envoy/config/typed_config.h"
5
#include "envoy/server/filter_config.h"
6

            
7
namespace Envoy {
8
namespace Compression {
9
namespace Compressor {
10

            
11
class NamedCompressorLibraryConfigFactory : public Config::TypedFactory {
12
public:
13
337
  ~NamedCompressorLibraryConfigFactory() override = default;
14

            
15
  virtual CompressorFactoryPtr
16
  createCompressorFactoryFromProto(const Protobuf::Message& config,
17
                                   Server::Configuration::GenericFactoryContext& context) PURE;
18

            
19
29
  std::string category() const override { return "envoy.compression.compressor"; }
20
};
21

            
22
} // namespace Compressor
23
} // namespace Compression
24
} // namespace Envoy