/proc/self/cwd/source/server/listener_manager_factory.h
Line | Count | Source |
1 | | #pragma once |
2 | | |
3 | | #include "envoy/config/typed_config.h" |
4 | | #include "envoy/server/instance.h" |
5 | | #include "envoy/server/listener_manager.h" |
6 | | #include "envoy/server/worker.h" |
7 | | |
8 | | #include "source/common/quic/quic_stat_names.h" |
9 | | |
10 | | namespace Envoy { |
11 | | namespace Server { |
12 | | |
13 | | class ListenerManagerFactory : public Config::TypedFactory { |
14 | | public: |
15 | | virtual std::unique_ptr<ListenerManager> |
16 | | createListenerManager(Instance& server, std::unique_ptr<ListenerComponentFactory>&& factory, |
17 | | WorkerFactory& worker_factory, bool enable_dispatcher_stats, |
18 | | Quic::QuicStatNames& quic_stat_names) PURE; |
19 | | |
20 | 52 | std::string category() const override { return "envoy.listener_manager_impl"; } |
21 | | }; |
22 | | |
23 | | class ConnectionHandler : public Network::TcpConnectionHandler, |
24 | | public Network::UdpConnectionHandler, |
25 | | public Network::InternalListenerManager {}; |
26 | | |
27 | | class ConnectionHandlerFactory : public Config::UntypedFactory { |
28 | | public: |
29 | | virtual std::unique_ptr<ConnectionHandler> |
30 | | createConnectionHandler(Event::Dispatcher& dispatcher, |
31 | | absl::optional<uint32_t> worker_index) PURE; |
32 | | virtual std::unique_ptr<ConnectionHandler> |
33 | | createConnectionHandler(Event::Dispatcher& dispatcher, absl::optional<uint32_t> worker_index, |
34 | | OverloadManager& overload_manager) PURE; |
35 | | |
36 | 72 | std::string category() const override { return "envoy.connection_handler"; } |
37 | | }; |
38 | | |
39 | | } // namespace Server |
40 | | } // namespace Envoy |