Line data Source code
1 : #pragma once 2 : 3 : #include "envoy/stream_info/filter_state.h" 4 : 5 : namespace Envoy { 6 : namespace Network { 7 : 8 : /** 9 : * ALPN to set in the upstream connection. Filters can use this one to override the ALPN in TLS 10 : * context. 11 : */ 12 : class ApplicationProtocols : public StreamInfo::FilterState::Object { 13 : public: 14 : explicit ApplicationProtocols(const std::vector<std::string>& application_protocols) 15 0 : : application_protocols_(application_protocols) {} 16 0 : const std::vector<std::string>& value() const { return application_protocols_; } 17 : static const std::string& key(); 18 : 19 : private: 20 : const std::vector<std::string> application_protocols_; 21 : }; 22 : 23 : } // namespace Network 24 : } // namespace Envoy