int main(int argc, char **argv) { // if (argc < 3) // { // USAGE(argv[0]); // return EXIT_FAILURE; // } // // check if we should set broker ip file(s) // if (argc > 3) // setFile(BROKERTXT, argv[3]); // if (argc > 4) // setFile(BROKER2TXT, argv[4]); // char *phpScript = argv[1]; int numProcesses = atoi(argv[1]); if (numProcesses > MAX || numProcesses <= 0) { USAGE(argv[0]); return EXIT_FAILURE; } executeScripts(RECEIVER_GET, numProcesses); executeScripts(RECEIVER_MODIFY, numProcesses); executeScripts(RECEIVER_RENAME, numProcesses); executeScripts(RECEIVER_SEARCH, numProcesses); return EXIT_SUCCESS; }
void EventUpdateManager::run() { while(!d->stopEvent->isSignaled()) { if (!d->eventHandler.waitForAny()) { continue; } if(d->clientConnectEvent->isSignaled()) { // new client added TelldusCore::EventDataRef eventData = d->clientConnectEvent->takeSignal(); ConnectionListenerEventData *data = dynamic_cast<ConnectionListenerEventData*>(eventData.get()); if(data) { d->clients.push_back(data->socket); } } else if(d->updateEvent->isSignaled()) { // device event, signal all clients TelldusCore::EventDataRef eventData = d->updateEvent->takeSignal(); EventUpdateData *data = reinterpret_cast<EventUpdateData*>(eventData.get()); if(data) { sendMessageToClients(data); executeScripts(data); } } } }