When a broker registers routing information with a cluster of nameservers, the broker needs to decide whether it is necessary to register routing information with a cluster of nameservers, by sending requests to the cluster to compare whether they have the same version of data.
Nameserver cluster receives a request, and after comparing the versions of the data, it will give feedback on the changed property of the header in the response. This value must not be null, so the broker only needs to decode the changed property of the response message.
So, I think the method needRegister(..) of BrokerOuterAPI.java can delete the code that decode the body of the response. In addition,the return value of the method needRegister(...) of BrokerController.java can depend on whether the size of the changedList is greater than 0