private void disconnectAbnormally(String message) { try { halt(); // Disconnect abnormally. The user code should reconnect using the mail client. errorStack.push(new Error(completions.poll(), message, wireTrace.list())); idler.disconnect(); } finally { disconnected(); } }