MCPcopy Create free account
hub / github.com/RangeNetworks/openbts / dmPeriodicService

Method dmPeriodicService

SIP/SIP2Interface.cpp:191–215  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

189#endif
190
191void SipDialogMap::dmPeriodicService()
192{
193 try {
194#if USE_SCOPED_ITERATORS
195 DialogMap_t::ScopedIterator it(mDialogMap);
196#else
197 ScopedLock lock(mDialogMap.qGetLock());
198 DialogMap_t::iterator it;
199#endif
200 for (it = mDialogMap.begin(); it != mDialogMap.end(); ) {
201 SipDialog *dialog = it->second;
202 it++;
203 if (dialog->dialogPeriodicService()) {
204 gSipInterface.dmRemoveDialog(dialog);
205 }
206 }
207 } catch(exception &e) {
208 // We dont expect any throws; just being ultra cautious.
209 LOG(ERR) << "SIP processing exception "<<e.what() << " " << typeid(&e).name();
210 } catch(...) {
211 LOG(CRIT) << "Unhandled exception attempted to kill OpenBTS SIP processor"; // pat added
212 devassert(0);
213 }
214 //LOG(DEBUG) << "end";
215}
216
217void SipTUMap::tuMapAdd(SipTransaction*tup) {
218 LOG(DEBUG) <<LOGVAR(tup);

Callers 1

periodicServiceLoopFunction · 0.80

Calls 6

dialogPeriodicServiceMethod · 0.80
dmRemoveDialogMethod · 0.80
whatMethod · 0.80
beginMethod · 0.45
endMethod · 0.45
nameMethod · 0.45

Tested by

no test coverage detected