public void close() { if (closed) { return; } if (!connection.isDestroyed() && !connection.removeChannel(id)) { throw HornetQClientMessageBundle.BUNDLE.noChannelToClose(id); } if (failingOver) { unlock(); } closed = true; }