OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
sandesh_state_machine.cc File Reference
#include <typeinfo>
#include <boost/bind.hpp>
#include <boost/date_time/posix_time/posix_time.hpp>
#include <boost/statechart/custom_reaction.hpp>
#include <boost/statechart/event.hpp>
#include <boost/statechart/simple_state.hpp>
#include <boost/statechart/state.hpp>
#include <boost/statechart/state_machine.hpp>
#include <boost/statechart/transition.hpp>
#include <boost/statechart/in_state_reaction.hpp>
#include <base/logging.h>
#include <base/task_annotations.h>
#include <io/event_manager.h>
#include <io/tcp_session.h>
#include <io/tcp_server.h>
#include <sandesh/sandesh_constants.h>
#include <sandesh/sandesh_types.h>
#include <sandesh/sandesh.h>
#include <sandesh/sandesh_session.h>
#include <sandesh/sandesh_uve_types.h>
#include <sandesh/sandesh_message_builder.h>
#include "sandesh_statistics.h"
#include "sandesh_connection.h"
#include "sandesh_state_machine.h"
Include dependency graph for sandesh_state_machine.cc:

Go to the source code of this file.

Classes

struct  ssm::EvStart
 
struct  ssm::EvStop
 
struct  ssm::EvIdleHoldTimerExpired
 
struct  ssm::EvTcpPassiveOpen
 
struct  ssm::EvTcpClose
 
struct  ssm::EvTcpDeleteSession
 
struct  ssm::EvSandeshMessageRecv
 
struct  ssm::EvSandeshCtrlMessageRecv
 
struct  ssm::EvResourceUpdate
 
struct  ssm::TransitToIdle< Ev >
 
struct  ssm::ReleaseSandesh< Ev >
 
struct  ssm::DeleteTcpSession< Ev >
 
struct  ssm::ProcessMessage< Ev >
 
struct  ssm::Idle
 
struct  ssm::Active
 
struct  ssm::ServerInit
 
struct  ssm::Established
 
struct  HasValidate< Ev >
 
struct  HasValidate< Ev >::SFINAE< T, const >
 
struct  ValidateFn< Ev, has_validate >
 
struct  ValidateFn< Ev, true >
 

Namespaces

 ssm
 

Macros

#define SM_LOG(_Level, _Msg)
 
#define SESSION_LOG(session)   SANDESH_LOG(DEBUG, ((session) ? (session)->ToString() : "*") << ":" << Name())
 

Functions

bool GetEvSandeshMessageRecvSize (SandeshStateMachine::EventContainer *ec, size_t *msg_size)
 

Variables

static const std::string state_names []
 

Macro Definition Documentation

#define SESSION_LOG (   session)    SANDESH_LOG(DEBUG, ((session) ? (session)->ToString() : "*") << ":" << Name())

Definition at line 57 of file sandesh_state_machine.cc.

#define SM_LOG (   _Level,
  _Msg 
)
Value:
do { \
if (LoggingDisabled()) break; \
log4cplus::Logger _Xlogger = Sandesh::logger(); \
if (_Xlogger.isEnabledFor(log4cplus::_Level##_LOG_LEVEL)) { \
log4cplus::tostringstream _Xbuf; \
SandeshStateMachine *_sm = &context<SandeshStateMachine>(); \
_Xbuf << _sm->prefix() << _Msg; \
_Xlogger.forcedLog(log4cplus::_Level##_LOG_LEVEL, \
_Xbuf.str()); \
} \
} while (false)
bool LoggingDisabled()
Definition: logging.cc:24

Definition at line 44 of file sandesh_state_machine.cc.

Function Documentation

bool GetEvSandeshMessageRecvSize ( SandeshStateMachine::EventContainer ec,
size_t *  msg_size 
)

Definition at line 914 of file sandesh_state_machine.cc.

Here is the call graph for this function:

Variable Documentation

const std::string state_names[]
static
Initial value:
= {
"Idle",
"Active",
"Established",
"ServerInit"
}

Definition at line 739 of file sandesh_state_machine.cc.