This section describes some ways in which you can adjust your applications to deal with the differences in the API.
The API definition, and both of its implementations, ultimately require that a method callback be "idempotent," that is, that it can be called multiple times and that has the same effect as a single call. Pragmatically, a called back method needs to be prepared to deal with the scenario that it has no real work to do, that the work was already accomplished during some previous call to the method. Concretely, this means that the method needs to contain logic that figures out whether there is any work to do for the logical host(s) that are moving. If not, the method should just return. An example of this in shown in Chapter 2, Sample Data Service.
These differences in the API implementations should have minimal impact given that a data service's called-back methods must deal with the basic idempotence issue anyway.