/framework/java/jd-gui/android/database/ContentObserver.java

https://bitbucket.org/chaos_rom/miui_frameworks · Java · 118 lines · 96 code · 18 blank · 4 comment · 9 complexity · dbe0ffc16ada109ca7f58ee9e4912566 MD5 · raw file

  1. package android.database;
  2. import android.net.Uri;
  3. import android.os.Handler;
  4. public abstract class ContentObserver
  5. {
  6. Handler mHandler;
  7. private final Object mLock = new Object();
  8. private Transport mTransport;
  9. public ContentObserver(Handler paramHandler)
  10. {
  11. this.mHandler = paramHandler;
  12. }
  13. public boolean deliverSelfNotifications()
  14. {
  15. return false;
  16. }
  17. @Deprecated
  18. public final void dispatchChange(boolean paramBoolean)
  19. {
  20. dispatchChange(paramBoolean, null);
  21. }
  22. public final void dispatchChange(boolean paramBoolean, Uri paramUri)
  23. {
  24. if (this.mHandler == null)
  25. onChange(paramBoolean, paramUri);
  26. while (true)
  27. {
  28. return;
  29. this.mHandler.post(new NotificationRunnable(paramBoolean, paramUri));
  30. }
  31. }
  32. public IContentObserver getContentObserver()
  33. {
  34. synchronized (this.mLock)
  35. {
  36. if (this.mTransport == null)
  37. this.mTransport = new Transport(this);
  38. Transport localTransport = this.mTransport;
  39. return localTransport;
  40. }
  41. }
  42. public void onChange(boolean paramBoolean)
  43. {
  44. }
  45. public void onChange(boolean paramBoolean, Uri paramUri)
  46. {
  47. onChange(paramBoolean);
  48. }
  49. public IContentObserver releaseContentObserver()
  50. {
  51. synchronized (this.mLock)
  52. {
  53. Transport localTransport = this.mTransport;
  54. if (localTransport != null)
  55. {
  56. localTransport.releaseContentObserver();
  57. this.mTransport = null;
  58. }
  59. return localTransport;
  60. }
  61. }
  62. private static final class Transport extends IContentObserver.Stub
  63. {
  64. private ContentObserver mContentObserver;
  65. public Transport(ContentObserver paramContentObserver)
  66. {
  67. this.mContentObserver = paramContentObserver;
  68. }
  69. public void onChange(boolean paramBoolean, Uri paramUri)
  70. {
  71. ContentObserver localContentObserver = this.mContentObserver;
  72. if (localContentObserver != null)
  73. localContentObserver.dispatchChange(paramBoolean, paramUri);
  74. }
  75. public void releaseContentObserver()
  76. {
  77. this.mContentObserver = null;
  78. }
  79. }
  80. private final class NotificationRunnable
  81. implements Runnable
  82. {
  83. private final boolean mSelfChange;
  84. private final Uri mUri;
  85. public NotificationRunnable(boolean paramUri, Uri arg3)
  86. {
  87. this.mSelfChange = paramUri;
  88. Object localObject;
  89. this.mUri = localObject;
  90. }
  91. public void run()
  92. {
  93. ContentObserver.this.onChange(this.mSelfChange, this.mUri);
  94. }
  95. }
  96. }
  97. /* Location: /home/lithium/miui/chameleon/2.11.16/framework_dex2jar.jar
  98. * Qualified Name: android.database.ContentObserver
  99. * JD-Core Version: 0.6.2
  100. */