code: @Override
      public void setCallback(SourceCallback callback) {
          try {
              mCallbackLock.lock();
              mCallback = callback;
              mCallbackChanged.signal();
          } finally {
              mCallbackLock.unlock();
          }
      }
docs: Set the current source callback to the given value.
  
  @param callback a valid callback or null if you wish to stop the source
  from sending updates.