|
12 | 12 |
|
13 | 13 | import java.lang.ref.WeakReference;
|
14 | 14 |
|
15 |
| -class OSNotificationDataController { |
| 15 | +class OSNotificationDataController extends OSBackgroundManager { |
16 | 16 |
|
17 | 17 | private final static long NOTIFICATION_CACHE_DATA_LIFETIME = 604_800L; // 7 days in second
|
18 | 18 |
|
@@ -58,7 +58,7 @@ public void run() {
|
58 | 58 | }
|
59 | 59 | };
|
60 | 60 |
|
61 |
| - runRunnableOnThread(notificationCacheCleaner); |
| 61 | + runRunnableOnThread(notificationCacheCleaner, OS_NOTIFICATIONS_THREAD); |
62 | 62 | }
|
63 | 63 |
|
64 | 64 | void clearOneSignalNotifications(final WeakReference<Context> weakReference) {
|
@@ -105,7 +105,7 @@ public void run() {
|
105 | 105 | }
|
106 | 106 | };
|
107 | 107 |
|
108 |
| - runRunnableOnThread(runClearOneSignalNotifications); |
| 108 | + runRunnableOnThread(runClearOneSignalNotifications, OS_NOTIFICATIONS_THREAD); |
109 | 109 | }
|
110 | 110 |
|
111 | 111 | void removeGroupedNotifications(final String group, final WeakReference<Context> weakReference) {
|
@@ -154,7 +154,7 @@ public void run() {
|
154 | 154 | }
|
155 | 155 | };
|
156 | 156 |
|
157 |
| - runRunnableOnThread(runCancelGroupedNotifications); |
| 157 | + runRunnableOnThread(runCancelGroupedNotifications, OS_NOTIFICATIONS_THREAD); |
158 | 158 | }
|
159 | 159 |
|
160 | 160 | void removeNotification(final int id, final WeakReference<Context> weakReference) {
|
@@ -185,7 +185,7 @@ public void run() {
|
185 | 185 | }
|
186 | 186 | };
|
187 | 187 |
|
188 |
| - runRunnableOnThread(runCancelNotification); |
| 188 | + runRunnableOnThread(runCancelNotification, OS_NOTIFICATIONS_THREAD); |
189 | 189 | }
|
190 | 190 |
|
191 | 191 | void notValidOrDuplicated(JSONObject jsonPayload, final InvalidOrDuplicateNotificationCallback callback) {
|
@@ -240,15 +240,7 @@ public void run() {
|
240 | 240 | }
|
241 | 241 | };
|
242 | 242 |
|
243 |
| - runRunnableOnThread(runCancelNotification); |
244 |
| - } |
245 |
| - |
246 |
| - private void runRunnableOnThread(Runnable runnable) { |
247 |
| - // DB access is a heavy task, dispatch to a thread if running on main thread |
248 |
| - if (OSUtils.isRunningOnMainThread()) |
249 |
| - new Thread(runnable, OS_NOTIFICATIONS_THREAD).start(); |
250 |
| - else |
251 |
| - runnable.run(); |
| 243 | + runRunnableOnThread(runCancelNotification, OS_NOTIFICATIONS_THREAD); |
252 | 244 | }
|
253 | 245 |
|
254 | 246 | interface InvalidOrDuplicateNotificationCallback {
|
|
0 commit comments