Beispiel #1
0
bool Manager::exist(unsigned int id)
{
    if(id>=resources.size())
    {
        logger->addError("Resource id is out of range.");
        return false;
    }

    GenericResource* res = resources[id];
    if(compareString(res->getName(), "localhost"))
        return true;

    if(dynamic_cast<Computer*>(res) || dynamic_cast<ResYarpPort*>(res))
    {
        if(res->getName())
        {
            //YarpBroker broker;
            //broker.init();
            string strPort = res->getName();
            if(strPort[0] != '/')
                strPort = string("/") + strPort;
            res->setAvailability(connector.exists(strPort.c_str()));
        }
    }
    return res->getAvailability();
}