@Override
    public void swapState(Routable rhs) {
        super.swapState(rhs);
        if (rhs instanceof Reply) {
            Reply reply = (Reply)rhs;

            double retryDelay = this.retryDelay;
            this.retryDelay = reply.retryDelay;
            reply.retryDelay = retryDelay;

            Message msg = this.msg;
            this.msg = reply.msg;
            reply.msg = msg;

            List<Error> errors = this.errors;
            this.errors = reply.errors;
            reply.errors = errors;
        }
    }
<p>A reply is a response to a message that has been sent throught the messagebus. No reply will ever exist without a
corresponding message. There are no error-replies defined, as errors can instead piggyback any reply by the {@link
#errors} member variable.</p>

@author Simon Thoresen Hult
messagebus/src/main/java/com/yahoo/messagebus/Reply.java