public int compare(File o1, File o2) throws NullPointerException {
		logger.debug("Belépés a compare metódusba {} {}.", o1, o2);

		if (o1 == null || o2 == null) {
			NullPointerException exp = new NullPointerException(
					"Nem adtal meg fajlt!");
			logger.debug("Kivétel lépett fel {}.", exp);
			throw exp;
		}

		if (o1.isDirectory()) {
			if (o2.isDirectory()) {
				logger.debug("Kilépés a compare metódusból. Visszatérés 0.");
				return 0;
			} else {
				if (this.sorrend) {
					int result = new Long(0).compareTo(o2.length());
					logger.debug(
							"Kilépés a compare metódusból. Visszatérés {}.",
							result);
					return result;
				} else {
					int result = new Long(o2.length()).compareTo(new Long(0));
					logger.debug(
							"Kilépés a compare metódusból. Visszatérés {}.",
							result);
					return result;
				}
			}
		} else {
			if (o2.isDirectory()) {
				if (this.sorrend) {
					int result = new Long(o1.length()).compareTo(new Long(0));
					logger.debug(
							"Kilépés a compare metódusból. Visszatérés {}.",
							result);
					return result;
				} else {
					int result = new Long(0).compareTo(o1.length());
					logger.debug(
							"Kilépés a compare metódusból. Visszatérés {}.",
							result);
					return result;
				}
			} else {
				if (this.sorrend) {
					int result = new Long(o1.length()).compareTo(o2.length());
					logger.debug(
							"Kilépés a compare metódusból. Visszatérés {}.",
							result);
					return result;
				} else {
					int result = new Long(o2.length()).compareTo(o1.length());
					logger.debug(
							"Kilépés a compare metódusból. Visszatérés {}.",
							result);
					return result;
				}
			}
		}
	}