diff options
author | gkipnis <gkipnis@cyngn.com> | 2015-11-13 15:03:34 -0800 |
---|---|---|
committer | Steve Kondik <steve@cyngn.com> | 2016-08-27 00:01:06 -0700 |
commit | dd347247d218906f1393809b4f264955c9e3660d (patch) | |
tree | 3add7f4b9304ed835e6a32031f2b0da4bd83de98 /src/com/android/messaging/BugleApplication.java | |
parent | b326ec3affa36711808bd56513cd86e77b9a1343 (diff) | |
download | android_packages_apps_Messaging-dd347247d218906f1393809b4f264955c9e3660d.tar.gz android_packages_apps_Messaging-dd347247d218906f1393809b4f264955c9e3660d.tar.bz2 android_packages_apps_Messaging-dd347247d218906f1393809b4f264955c9e3660d.zip |
Added local blacklist and framework blacklist database synchronization
Local blacklist DB acts as a WriteThrough cache of the FW blacklist DB.
1. At the App startup time, the local DB is initialized with FW DB values.
2. A ContentObserver is registered to monitor FW Blacklist DB
3. Updates to local DB are also passed to the FW DB
Change-Id: I56e1965884c383782710c90563940d75a17a7264
Diffstat (limited to 'src/com/android/messaging/BugleApplication.java')
-rw-r--r-- | src/com/android/messaging/BugleApplication.java | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/com/android/messaging/BugleApplication.java b/src/com/android/messaging/BugleApplication.java index a5aea9f..756864a 100644 --- a/src/com/android/messaging/BugleApplication.java +++ b/src/com/android/messaging/BugleApplication.java @@ -22,13 +22,23 @@ import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.content.res.Configuration; +import android.database.ContentObserver; +import android.database.Cursor; +import android.net.Uri; import android.os.Handler; import android.os.Looper; +import android.provider.Telephony; import android.support.v7.mms.CarrierConfigValuesLoader; import android.support.v7.mms.MmsManager; import android.telephony.CarrierConfigManager; +import android.util.Log; +import com.android.messaging.datamodel.BugleDatabaseOperations; import com.android.messaging.datamodel.DataModel; +import com.android.messaging.datamodel.DatabaseWrapper; +import com.android.messaging.datamodel.MessagingContentProvider; +import com.android.messaging.datamodel.action.UpdateConversationArchiveStatusAction; +import com.android.messaging.datamodel.action.UpdateDestinationBlockedAction; import com.android.messaging.receiver.SmsReceiver; import com.android.messaging.sms.ApnDatabase; import com.android.messaging.sms.BugleApnSettingsLoader; @@ -44,6 +54,8 @@ import com.android.messaging.util.LogUtil; import com.android.messaging.util.OsUtil; import com.android.messaging.util.PhoneUtils; import com.android.messaging.util.Trace; +import com.android.messaging.util.BlacklistObserver; +import com.android.messaging.util.BlacklistSync; import com.google.common.annotations.VisibleForTesting; import java.io.File; @@ -83,8 +95,19 @@ public class BugleApplication extends Application implements UncaughtExceptionHa LogUtil.e(TAG, "BugleApplication.onCreate: FactoryImpl.register skipped for test run"); } + BlacklistObserver observer = new BlacklistObserver(new Handler(), getContentResolver()); + // TODO - need to extract URI from TelephonyProvider + Uri CONTENT_URI = Uri.parse("content://blacklist"); + getContentResolver().registerContentObserver(CONTENT_URI, true, observer); + + BlacklistSync blacklistSync = new BlacklistSync(getApplicationContext()); + blacklistSync.execute(); + + sSystemUncaughtExceptionHandler = Thread.getDefaultUncaughtExceptionHandler(); Thread.setDefaultUncaughtExceptionHandler(this); + + Trace.endSection(); } |