private void processLockRequest(final String message)	{
		final String lock = messageParser.getMessageContent(message);
		if (lockManager.haveLock(lock))
			refuseLock(message, lock);
		else	{
			if (lockManager.isLockProcessing(lock))	{
				final int requesterLoad = messageParser.getMessageLoad(message);
				if (requesterLoad < getLoad())
					grantLock(message, lock);
				else	{
					refuseLock(message, lock);

					final String clientIp = messageParser.getMessageClientIp(message);
					final int clientId = clients.size();
					clients.add(clientIp);

					ArrayList<Integer> excludedNodes = messageParser.getExcludedNodes(message);
					excludedNodes.add(messageParser.getMessageSender(message));

					lockManager.makeLockProcessing(lock, clientId);
					askForLock(lock, clientIp, excludedNodes);
				}
			}
			else
				grantLock(message, lock);
		}
	}