OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
flow_handler.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2013 Juniper Networks, Inc. All rights reserved.
3  */
4 
5 #ifndef vnsw_agent_flow_handler_hpp
6 #define vnsw_agent_flow_handler_hpp
7 
8 #include "pkt/proto_handler.h"
9 
10 static const std::string unknown_vn_ = "__UNKNOWN__";
11 
12 struct PktInfo;
13 class PktFlowInfo;
14 
15 class FlowHandler : public ProtoHandler {
16 public:
17  FlowHandler(Agent *agent, boost::shared_ptr<PktInfo> info,
18  boost::asio::io_context &io, FlowProto *proto, uint16_t index) :
19  ProtoHandler(agent, info, io), flow_proto_(proto),
20  flow_table_index_(index) {
21  }
22  virtual ~FlowHandler() {}
23 
24  bool Run();
25 
26  static const std::string UnknownVn() { return unknown_vn_; }
27  static const VnListType UnknownVnList() {
28  VnListType unknown_vn_list;
29  unknown_vn_list.insert(unknown_vn_);
30  return unknown_vn_list;
31  }
32  static const std::string LinkLocalVn() {
34  }
35  bool IsL3ModeFlow() const;
36 
37 private:
40 };
41 
42 #endif // vnsw_agent_flow_handler_hpp
static const std::string LinkLocalVn()
Definition: flow_handler.h:32
const std::string & linklocal_vn_name()
Definition: agent.h:920
static Agent * GetInstance()
Definition: agent.h:436
static const std::string unknown_vn_
Definition: flow_handler.h:10
FlowHandler(Agent *agent, boost::shared_ptr< PktInfo > info, boost::asio::io_context &io, FlowProto *proto, uint16_t index)
Definition: flow_handler.h:17
Agent * agent() const
Definition: proto_handler.h:80
static const VnListType UnknownVnList()
Definition: flow_handler.h:27
static const std::string UnknownVn()
Definition: flow_handler.h:26
Definition: agent.h:358
FlowProto * flow_proto_
Definition: flow_handler.h:38
virtual ~FlowHandler()
Definition: flow_handler.h:22
bool IsL3ModeFlow() const
Definition: flow_handler.cc:29
std::set< std::string > VnListType
Definition: agent.h:212
uint16_t flow_table_index_
Definition: flow_handler.h:39