Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
#include "ImsMonitorSipPort.hh"
#include "sip_layer_factory.hh"
#include "loggers.hh"
namespace AtsImsIot__TestSystem {
ImsMonitorSipPort::ImsMonitorSipPort(const char *par_port_name): ImsMonitorSipPort_BASE(par_port_name), _cfg_params(), _layer_params(), _layer(nullptr), _time_key("ImsMonitorSipPort::outgoing_send") {
// Nothing to do
} // End of constructor
ImsMonitorSipPort::~ImsMonitorSipPort() {
loggers::get_instance().log(">>> ImsMonitorSipPort::~ImsMonitorSipPort");
if (_layer != nullptr) {
delete _layer;
}
} // End of destructor
void ImsMonitorSipPort::set_parameter(const char * parameter_name, const char * parameter_value)
{
loggers::get_instance().log("ImsMonitorSipPort::set_parameter: %s=%s", parameter_name, parameter_value);
_cfg_params.insert(std::pair<std::string, std::string>(std::string(parameter_name), std::string(parameter_value)));
}
/*void ImsMonitorSipPort::Handle_Fd_Event(int fd, boolean is_readable,
boolean is_writable, boolean is_error) {}*/
void ImsMonitorSipPort::Handle_Fd_Event_Error(int /*fd*/)
{
}
void ImsMonitorSipPort::Handle_Fd_Event_Writable(int /*fd*/)
{
}
void ImsMonitorSipPort::Handle_Fd_Event_Readable(int /*fd*/)
{
}
/*void ImsMonitorSipPort::Handle_Timeout(double time_since_last_call) {}*/
void ImsMonitorSipPort::user_map(const char * system_port)
{
loggers::get_instance().log(">>> ImsMonitorSipPort::user_map: %s", system_port);
// Build layer stack
/*params::iterator it = _cfg_params.find(std::string("params"));
if (it != _cfg_params.end()) {
loggers::get_instance().log("ImsMonitorSipPort::user_map: %s", it->second.c_str());
// Setup parameters
params::convert(_layer_params, it->second); // TODO This _layer_params seems to be useless
// Create layer
_layer = layer_stack_builder::get_instance()->create_layer_stack(it->second.c_str());
if (static_cast<sip_layer *>(_layer) == nullptr) {
loggers::get_instance().error("ImsMonitorSipPort::user_map: Invalid stack configuration: %s", it->second.c_str());
}
static_cast<sip_layer *>(_layer)->add_upper_port(this);
} else {*/
loggers::get_instance().error("ImsMonitorSipPort::user_map: No layers defined in configuration file");
/*}*/
} // End of user_map method
void ImsMonitorSipPort::user_unmap(const char * system_port)
{
loggers::get_instance().log(">>> ImsMonitorSipPort::user_unmap: %s", system_port);
// Reset layers
if (_layer != nullptr) {
delete _layer;
_layer = nullptr;
}
} // End of user_unmap method
void ImsMonitorSipPort::user_start()
{
loggers::get_instance().log(">>> ImsMonitorSipPort::user_start");
} // End of user_start method
void ImsMonitorSipPort::user_stop()
{
loggers::get_instance().log(">>> ImsMonitorSipPort::user_stop");
} // End of user_stop method
void ImsMonitorSipPort::receiveMsg (const LibSip__SIPTypesAndValues::Request& p_ind, const params& p_params) {
loggers::get_instance().log_msg(">>> ImsMonitorSipPort::receive_msg: ", p_ind);
// Sanity check
if (!p_ind.is_bound()) {
return;
}
incoming_message(p_ind);
} // End of method receiveMsg
void ImsMonitorSipPort::receiveMsg (const LibSip__SIPTypesAndValues::Response& p_ind, const params& p_params) {
loggers::get_instance().log_msg(">>> ImsMonitorSipPort::receive_msg: ", p_ind);
// Sanity check
if (!p_ind.is_bound()) {
return;
}
incoming_message(p_ind);
} // End of method receiveMsg
void ImsMonitorSipPort::receiveMsg (const LibMsrp__TypesAndValues::SEND__request& p_ind, const params& p_params) {
loggers::get_instance().log_msg(">>> ImsMonitorSipPort::receive_msg: ", p_ind);
// Sanity check
if (!p_ind.is_bound()) {
return;
}
incoming_message(p_ind);
} // End of method receiveMsg
void ImsMonitorSipPort::receiveMsg (const LibMsrp__TypesAndValues::RECEIVE__response& p_ind, const params& p_params) {
loggers::get_instance().log_msg(">>> ImsMonitorSipPort::receive_msg: ", p_ind);
// Sanity check
if (!p_ind.is_bound()) {
return;
}
incoming_message(p_ind);
} // End of method receiveMsg
}