1
#pragma once
2

            
3
#include "envoy/server/platform.h"
4

            
5
namespace Envoy {
6

            
7
class PlatformImpl : public Server::Platform {
8
public:
9
  PlatformImpl();
10
  ~PlatformImpl() override;
11
51
  Thread::ThreadFactory& threadFactory() override { return *thread_factory_; }
12
43
  Filesystem::Instance& fileSystem() override { return *file_system_; }
13
  bool enableCoreDump() override;
14

            
15
private:
16
  Thread::ThreadFactoryPtr thread_factory_;
17
  Filesystem::InstancePtr file_system_;
18
};
19

            
20
} // namespace Envoy