private void computeUidlCommand(String message) {
		String[] cmd = message.split(" ");
		// Auf Argument ueberpruefen
		if (cmd.length > 1) {
			// Es wurde ein Argument gefunden
			int n = Integer.parseInt(cmd[1]);
			// -ERR Antwort, wenn Mail geloescht wurde
			if (mailIsDeleted(n)) {
				try {
					writeToClient("-ERR no such message");
				} catch (IOException e) {
					deleteMailsOnException();
					sTrace.error("Connection aborted by client! Thread" + name);
				}
			} else {
				// Sende Antwort der Form "+OK n s", fuer n = Nummer der
				// Nachricht, s = UIDL (und Name) der Nachricht, zuruck
				try {
					writeToClient("+OK " + n + " " + mails.get(n));
				} catch (IOException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
		} else {
			// Es wurde kein Argument gefunden.
			try {
				// Positive Antwort schicken
				writeToClient("+OK");
				// Liste der UIDLs schicken
				for (int i = 1; i <= mailCounter; i++) {
					if (!mailIsDeleted(i)) {
						String response = "" + i + " " + mails.get(i);
						writeToClient(response);
					}

				}
				// Ende der Mehrzeiligen Antwort senden
				writeToClient(".");
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}

	}