public void disconnect() { if (isConnected()) { try { Envelope message = new Envelope("DISCONNECT"); message.addObject(messageIndex); output.writeObject(encryptCipher.doFinal(message.getBytes())); sock.close(); sock = null; } catch (Exception e) { System.err.println("Error: " + e.getMessage()); e.printStackTrace(System.err); } } }