private static Content parse(String entry) {
	Content content = new Content();

	switch (entry.charAt(0)) {
	    case 'u':
		content.type = Content.USER;
		break;
	    case 'f':
		content.type = Content.FILE;
		break;
	    case 'd':
		content.type = Content.DIR;
		break;
	}

	int pos = 1;
	int secondSpcPos = entry.indexOf(' ', 2);
	if (content.type == Content.FILE || content.type == Content.DIR) {
	    content.level = Integer.parseInt(entry.substring(2, secondSpcPos));
	    pos = secondSpcPos;

	    if (content.type == Content.FILE) {
		int thirdpos = entry.indexOf(' ', secondSpcPos + 1);
		content.size = Long.parseLong(entry.substring(secondSpcPos + 1, thirdpos));
		pos = entry.indexOf(' ', thirdpos + 1);
		content.TTH = entry.substring(thirdpos + 1, pos);
	    }

	} else if (content.type == Content.USER) {
	    pos = secondSpcPos;
	    content.ip = entry.substring(2, secondSpcPos);
	}

	content.value = entry.substring(pos + 1);

	return content;
    }