Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(5)

Side by Side Diff: chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java

Issue 2830843004: Update to newer Android Lint and suppress new Lint errors (Closed)
Patch Set: rebase Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 package org.chromium.chrome.browser; 5 package org.chromium.chrome.browser;
6 6
7 import android.annotation.SuppressLint;
7 import android.content.Context; 8 import android.content.Context;
8 import android.content.SharedPreferences; 9 import android.content.SharedPreferences;
9 import android.os.AsyncTask; 10 import android.os.AsyncTask;
10 import android.os.Looper; 11 import android.os.Looper;
11 import android.os.MessageQueue; 12 import android.os.MessageQueue;
12 import android.os.SystemClock; 13 import android.os.SystemClock;
13 import android.support.annotation.UiThread; 14 import android.support.annotation.UiThread;
14 import android.support.annotation.WorkerThread; 15 import android.support.annotation.WorkerThread;
15 import android.view.inputmethod.InputMethodInfo; 16 import android.view.inputmethod.InputMethodInfo;
16 import android.view.inputmethod.InputMethodManager; 17 import android.view.inputmethod.InputMethodManager;
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
62 * Handler for application level tasks to be completed on deferred startup. 63 * Handler for application level tasks to be completed on deferred startup.
63 */ 64 */
64 public class DeferredStartupHandler { 65 public class DeferredStartupHandler {
65 private static final String TAG = "DeferredStartup"; 66 private static final String TAG = "DeferredStartup";
66 /** Prevents race conditions when deleting snapshot database. */ 67 /** Prevents race conditions when deleting snapshot database. */
67 private static final Object SNAPSHOT_DATABASE_LOCK = new Object(); 68 private static final Object SNAPSHOT_DATABASE_LOCK = new Object();
68 private static final String SNAPSHOT_DATABASE_REMOVED = "snapshot_database_r emoved"; 69 private static final String SNAPSHOT_DATABASE_REMOVED = "snapshot_database_r emoved";
69 private static final String SNAPSHOT_DATABASE_NAME = "snapshots.db"; 70 private static final String SNAPSHOT_DATABASE_NAME = "snapshots.db";
70 71
71 private static class Holder { 72 private static class Holder {
73 @SuppressLint("StaticFieldLeak")
72 private static final DeferredStartupHandler INSTANCE = new DeferredStart upHandler(); 74 private static final DeferredStartupHandler INSTANCE = new DeferredStart upHandler();
73 } 75 }
74 76
75 private boolean mDeferredStartupInitializedForApp; 77 private boolean mDeferredStartupInitializedForApp;
76 private boolean mDeferredStartupCompletedForApp; 78 private boolean mDeferredStartupCompletedForApp;
77 private long mDeferredStartupDuration; 79 private long mDeferredStartupDuration;
78 private long mMaxTaskDuration; 80 private long mMaxTaskDuration;
79 private final Context mAppContext; 81 private final Context mAppContext;
80 82
81 private final Queue<Runnable> mDeferredTasks; 83 private final Queue<Runnable> mDeferredTasks;
82 84
83 /** 85 /**
84 * This class is an application specific object that handles the deferred st artup. 86 * This class is an application specific object that handles the deferred st artup.
85 * @return The singleton instance of {@link DeferredStartupHandler}. 87 * @return The singleton instance of {@link DeferredStartupHandler}.
86 */ 88 */
87 public static DeferredStartupHandler getInstance() { 89 public static DeferredStartupHandler getInstance() {
88 return sDeferredStartupHandler == null ? Holder.INSTANCE : sDeferredStar tupHandler; 90 return sDeferredStartupHandler == null ? Holder.INSTANCE : sDeferredStar tupHandler;
89 } 91 }
90 92
91 @VisibleForTesting 93 @VisibleForTesting
92 public static void setInstanceForTests(DeferredStartupHandler handler) { 94 public static void setInstanceForTests(DeferredStartupHandler handler) {
93 sDeferredStartupHandler = handler; 95 sDeferredStartupHandler = handler;
94 } 96 }
95 97
98 @SuppressLint("StaticFieldLeak")
96 private static DeferredStartupHandler sDeferredStartupHandler; 99 private static DeferredStartupHandler sDeferredStartupHandler;
97 100
98 protected DeferredStartupHandler() { 101 protected DeferredStartupHandler() {
99 mAppContext = ContextUtils.getApplicationContext(); 102 mAppContext = ContextUtils.getApplicationContext();
100 mDeferredTasks = new LinkedList<>(); 103 mDeferredTasks = new LinkedList<>();
101 } 104 }
102 105
103 /** 106 /**
104 * Add the idle handler which will run deferred startup tasks in sequence wh en idle. This can 107 * Add the idle handler which will run deferred startup tasks in sequence wh en idle. This can
105 * be called multiple times by different activities to schedule their own de ferred startup 108 * be called multiple times by different activities to schedule their own de ferred startup
(...skipping 368 matching lines...) Expand 10 before | Expand all | Expand 10 after
474 } 477 }
475 478
476 /** 479 /**
477 * @return Whether deferred startup has been completed. 480 * @return Whether deferred startup has been completed.
478 */ 481 */
479 @VisibleForTesting 482 @VisibleForTesting
480 public boolean isDeferredStartupCompleteForApp() { 483 public boolean isDeferredStartupCompleteForApp() {
481 return mDeferredStartupCompletedForApp; 484 return mDeferredStartupCompletedForApp;
482 } 485 }
483 } 486 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698