1
#pragma once
2

            
3
#include "envoy/extensions/resource_monitors/fixed_heap/v3/fixed_heap.pb.h"
4
#include "envoy/extensions/resource_monitors/fixed_heap/v3/fixed_heap.pb.validate.h"
5
#include "envoy/server/resource_monitor_config.h"
6

            
7
#include "source/extensions/resource_monitors/common/factory_base.h"
8

            
9
namespace Envoy {
10
namespace Extensions {
11
namespace ResourceMonitors {
12
namespace FixedHeapMonitor {
13

            
14
class FixedHeapMonitorFactory
15
    : public Common::FactoryBase<
16
          envoy::extensions::resource_monitors::fixed_heap::v3::FixedHeapConfig> {
17
public:
18
4
  FixedHeapMonitorFactory() : FactoryBase("envoy.resource_monitors.fixed_heap") {}
19

            
20
private:
21
  Server::ResourceMonitorPtr createResourceMonitorFromProtoTyped(
22
      const envoy::extensions::resource_monitors::fixed_heap::v3::FixedHeapConfig& config,
23
      Server::Configuration::ResourceMonitorFactoryContext& context) override;
24
};
25

            
26
} // namespace FixedHeapMonitor
27
} // namespace ResourceMonitors
28
} // namespace Extensions
29
} // namespace Envoy