} catch (NumberFormatException nfe) {
return SYNTAX_ERROR;
}
try {
MessageMetaData data = MessageMetaDataUtils.getMetaData(session, num);
if (data == null) {
StringBuilder responseBuffer = new StringBuilder(64).append("Message (").append(num).append(") does not exist.");
return new POP3Response(POP3Response.ERR_RESPONSE, responseBuffer.toString());
}
List<Long> deletedUidList = (List<Long>) session.getAttachment(POP3Session.DELETED_UID_LIST, State.Transaction);
Long uid = data.getUid();
if (deletedUidList.contains(uid) == false) {
InputStream body = new CountingBodyInputStream(new ExtraDotInputStream(new CRLFTerminatedInputStream(session.getUserMailbox().getMessageBody(uid))), lines);
InputStream headers = session.getUserMailbox().getMessageHeaders(uid);
if (body != null && headers != null) {