本文整理汇总了C++中NetworkNode::setSession方法的典型用法代码示例。如果您正苦于以下问题:C++ NetworkNode::setSession方法的具体用法?C++ NetworkNode::setSession怎么用?C++ NetworkNode::setSession使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类NetworkNode
的用法示例。
在下文中一共展示了NetworkNode::setSession方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: _addNetworkNode
/**
* Given a NodeInfoMsg inserts the node into NetworkNode database.
* @param session can be null
* Returns true if new node inserted, false if already present
* Delete the message
*/
bool NodeNetworkSystem::_addNetworkNode(Session* session, NodeInfoMsg* msg) {
if (_DEBUG)
cout << "NodeNetworkSystem::_addNetworkNode" << endl;
bool retval = false;
NetworkNode* connectedNode = NetworkNode::getNodeById(msg->getId());
if (connectedNode == NULL) {
/* The connected node is unknown. Add it */
retval = true;
if (_DEBUG)
cout
<< "NodeNetworkSystem::_addNetworkNode: creating a new NetworkNode"
<< endl;
switch (msg->getNodeType()) {
case NODETYPE_CAMERA:
connectedNode = NetworkNode::addCamera(msg->getId(),
msg->getAmAddress(), msg->getIpAddress(),
msg->getServerPort());
break;
case NODETYPE_COOPERATOR:
connectedNode = NetworkNode::addCooperator(msg->getId());
break;
default:
if (_DEBUG)
cerr
<< "NodeNetworkSystem::_addNetworkNode: Error! Notification of a type "
<< msg->getNodeType() << " node!" << endl;
return false;
}
if (_DEBUG) {
cout
<< "NodeNetworkSystem::_addNetworkNode: Network Topology updated "
<< endl;
NetworkNode::printNetwork();
}
}
if (session) {
connectedNode->setSession(session);
}
if (connectedNode->getType() == NODETYPE_COOPERATOR) {
switch (NetworkNode::getMyself()->getType()) {
case NODETYPE_CAMERA: {
_offloadingManager->addCooperator(connectedNode);
CoopInfoMsg* infoMsg = new CoopInfoMsg(NetworkNode::getMyself(),
NetworkNode::getSink(), LINKTYPE_TCP,
_offloadingManager->getCooperatorsIds());
sendMessage(infoMsg);
break;
}
default:
break;
}
}
delete msg;
return retval;
}
示例2: serverRemoveSessionHandler
void NodeNetworkSystem::serverRemoveSessionHandler(Session* session) {
switch (_nodeProcessingSystem->getNodeType()) {
case NODETYPE_SINK: {
NetworkNode* camera = NetworkNode::getCameraBySession(session);
if (camera) {
if (_DEBUG)
cout << "NodeNetworkSystem::serverAddSessionHandler: Camera "
<< (unsigned short) camera->getId() << " disconnected "
<< endl;
camera->setSession(NULL);
}
break;
}
case NODETYPE_CAMERA: {
NetworkNode* cooperator = NetworkNode::getCooperatorBySession(session);
if (cooperator) {
if (_DEBUG)
cout
<< "NodeNetworkSystem::serverAddSessionHandler: Cooperator "
<< (unsigned short) cooperator->getId()
<< " disconnected " << endl;
cooperator->setSession(NULL);
_offloadingManager->removeCooperator(cooperator);
CoopInfoMsg* infoMsg = new CoopInfoMsg(NetworkNode::getMyself(),
NetworkNode::getSink(), LINKTYPE_TCP,
_offloadingManager->getCooperatorsIds());
sendMessage(infoMsg);
}
break;
}
default: {
if (_DEBUG)
cerr << "NodeNetworkSystem::serverAddSessionHandler: Node of type "
<< _nodeProcessingSystem->getNodeType()
<< " can't reach this point" << endl;
}
}
}