@Override
    public void exchange(CorbaRoutingTable routingTable) {
        if (routingTable == null) {
            logger_.warn("Received an exchange request but was provided with a null CorbaRoutingTable object.");
            return;
        }
        // a remote peer wants the local to execute the exchange algorithm
        RoutingTable remoteRT = Deserializer.deserializeRoutingTable(routingTable);
        ExchangeContext context = new ExchangeContext(localRoutingTable_, true, REF_MAX);
        context.setRemoteInfo(remoteRT);
        algo_.execute(context);
        // TODO: Implement the reaction to the recursion case of the exchange algorithm.
    }