Ejemplo n.º 1
0
void ZoneServerImplementation::processMessage(Message* message) {
	ZonePacketHandler* zonePacketHandler = processor->getPacketHandler();

	ZoneClientSession* client = zoneHandler->getClientSession(message->getClient());

	Task* task = zonePacketHandler->generateMessageTask(client, message);

	if (task != NULL) {
		Core::getTaskManager()->executeTask(task, ((MessageCallback*)task)->getTaskQueue());
	}

	delete message;
}
void ZoneServerImplementation::processMessage(Message* message) {
	ZonePacketHandler* zonePacketHandler = processor->getPacketHandler();

	auto client = zoneHandler->getClientSession(message->getClient());

	Task* task = zonePacketHandler->generateMessageTask(client, message);

	if (task != NULL) {
		auto taskManager = Core::getTaskManager();

		if (taskManager) {
			taskManager->executeTask(task);
		} else {
			delete task;
		}
	}

	delete message;
}