@Override public void registerCallback(IProviderCallback cb){
synchronized (mCallbacks) {
    mCallbacks.add(cb);
  }
}

@ Override public void registerCallback ( IProviderCallback cb ) { synchronized ( mCallbacks ) { mCallbacks . add ( cb ) ; } }
register a callback for the app to be notified of events . remember that the providers calls should all be asynchronous ( every request must return immediately , and the result be posted later on to all the callbacks registered here ) .
