Commit 16441425 authored by Pavel Vainerman's avatar Pavel Vainerman

Переделал функцию getSharedMemoryID() для поиска секции в зависимости от --smemory-id

parent 6d01c387
...@@ -15,30 +15,19 @@ namespace UniSetExtensions ...@@ -15,30 +15,19 @@ namespace UniSetExtensions
UniSetTypes::ObjectId getSharedMemoryID() UniSetTypes::ObjectId getSharedMemoryID()
{ {
if( shmID != DefaultObjectId ) if( shmID != DefaultObjectId )
return shmID; return shmID;
xmlNode* cnode = conf->getNode("SharedMemory"); string sname = conf->getArgParam("--smemory-id","SharedMemory1");
if( cnode == NULL ) shmID = conf->getControllerID(sname);
{
ostringstream err; if( shmID == UniSetTypes::DefaultObjectId )
err << "Not find conf-node for SharedMemory"; {
cerr << err.str() << endl; ostringstream err;
throw SystemError(err.str()); err << ": Unknown ID for '" << sname << "'" << endl;
} dlog[Debug::CRIT] << err.str() << endl;
throw SystemError(err.str());
UniXML_iterator it(cnode); }
shmID = conf->getControllerID(it.getProp("shmID"));
if( shmID == UniSetTypes::DefaultObjectId )
{
ostringstream err;
err << ": идентификатор '" << it.getProp("shmID")
<< "' не найден в конф. файле!"
<< " в секции " << conf->getControllersSection() << endl;
dlog[Debug::CRIT] << err.str() << endl;
throw SystemError(err.str());
}
// cout << "(uniset): shm=" << name << " id=" << shmID << endl; // cout << "(uniset): shm=" << name << " id=" << shmID << endl;
return shmID; return shmID;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment