Lines Matching refs:observer

161      * Register a content observer tied to a specific user's view of the provider.
169 IContentObserver observer, int userHandle) {
170 if (observer == null || uri == null) {
171 throw new IllegalArgumentException("You must pass a valid uri and observer");
190 mRootNode.addObserverLocked(uri, observer, notifyForDescendants, mRootNode,
192 if (false) Log.v(TAG, "Registered observer " + observer + " at " + uri +
198 IContentObserver observer) {
199 registerContentObserver(uri, notifyForDescendants, observer,
203 public void unregisterContentObserver(IContentObserver observer) {
204 if (observer == null) {
205 throw new IllegalArgumentException("You must pass a valid observer");
208 mRootNode.removeObserverLocked(observer);
209 if (false) Log.v(TAG, "Unregistered observer " + observer);
221 public void notifyChange(Uri uri, IContentObserver observer,
226 + " from observer " + observer + ", syncToNetwork " + syncToNetwork);
253 mRootNode.collectObserversLocked(uri, 0, observer, observerWantsSelfNotifications,
266 Log.w(TAG, "Found dead observer, removing");
273 if (oe.observer.asBinder() == binder) {
294 public void notifyChange(Uri uri, IContentObserver observer,
296 notifyChange(uri, observer, observerWantsSelfNotifications, syncToNetwork,
311 ObserverCall(ObserverNode node, IContentObserver observer, boolean selfChange) {
313 mObserver = observer;
744 public final IContentObserver observer;
754 observer = o;
760 observer.asBinder().linkToDeath(this, 0);
768 removeObserverLocked(observer);
780 observer != null ? observer.asBinder() : null)));
847 public void addObserverLocked(Uri uri, IContentObserver observer,
850 addObserverLocked(uri, 0, observer, notifyForDescendants, observersLock,
854 private void addObserverLocked(Uri uri, int index, IContentObserver observer,
857 // If this is the leaf node add the observer
859 mObservers.add(new ObserverEntry(observer, notifyForDescendants, observersLock,
867 throw new IllegalArgumentException("Invalid Uri (" + uri + ") used for observer");
873 node.addObserverLocked(uri, index + 1, observer, notifyForDescendants,
882 node.addObserverLocked(uri, index + 1, observer, notifyForDescendants,
886 public boolean removeObserverLocked(IContentObserver observer) {
889 boolean empty = mChildren.get(i).removeObserverLocked(observer);
897 IBinder observerBinder = observer.asBinder();
901 if (entry.observer.asBinder() == observerBinder) {
915 private void collectMyObserversLocked(boolean leaf, IContentObserver observer,
919 IBinder observerBinder = observer == null ? null : observer.asBinder();
923 // Don't notify the observer if it sent the notification and isn't interested
925 boolean selfChange = (entry.observer.asBinder() == observerBinder);
930 // Does this observer match the target user?
934 // Make sure the observer is interested in the notification
936 calls.add(new ObserverCall(this, entry.observer, selfChange));
945 public void collectObserversLocked(Uri uri, int index, IContentObserver observer,
952 collectMyObserversLocked(true, observer, observerWantsSelfNotifications,
957 collectMyObserversLocked(false, observer, observerWantsSelfNotifications,
967 observer, observerWantsSelfNotifications, targetUserHandle, calls);