public void close() throws ChannelException { logger.trace("close() - entry"); try { MulticastSocket socket = (MulticastSocket) getSocket(); if (socket != null) { socket.leaveGroup(getGroup()); } super.close(); } catch (IOException ex) { logger.error("close() - Error closing sockets", ex); } logger.trace("close() - exit"); }