Loading core/java/android/app/StatsManager.java +16 −15 Original line number Diff line number Diff line Loading @@ -51,12 +51,13 @@ public final class StatsManager { private static final String TAG = "StatsManager"; private static final boolean DEBUG = false; private static final Object sLock = new Object(); private final Context mContext; @GuardedBy("this") @GuardedBy("sLock") private IStatsManager mService; @GuardedBy("this") @GuardedBy("sLock") private IStatsCompanionService mStatsCompanion; /** Loading Loading @@ -125,7 +126,7 @@ public final class StatsManager { */ @RequiresPermission(allOf = { DUMP, PACKAGE_USAGE_STATS }) public void addConfig(long configKey, byte[] config) throws StatsUnavailableException { synchronized (this) { synchronized (sLock) { try { IStatsManager service = getIStatsManagerLocked(); // can throw IllegalArgumentException Loading Loading @@ -162,7 +163,7 @@ public final class StatsManager { */ @RequiresPermission(allOf = { DUMP, PACKAGE_USAGE_STATS }) public void removeConfig(long configKey) throws StatsUnavailableException { synchronized (this) { synchronized (sLock) { try { IStatsManager service = getIStatsManagerLocked(); service.removeConfiguration(configKey, mContext.getOpPackageName()); Loading Loading @@ -223,7 +224,7 @@ public final class StatsManager { public void setBroadcastSubscriber( PendingIntent pendingIntent, long configKey, long subscriberId) throws StatsUnavailableException { synchronized (this) { synchronized (sLock) { try { IStatsManager service = getIStatsManagerLocked(); if (pendingIntent != null) { Loading Loading @@ -277,7 +278,7 @@ public final class StatsManager { @RequiresPermission(allOf = { DUMP, PACKAGE_USAGE_STATS }) public void setFetchReportsOperation(PendingIntent pendingIntent, long configKey) throws StatsUnavailableException { synchronized (this) { synchronized (sLock) { try { IStatsManager service = getIStatsManagerLocked(); if (pendingIntent == null) { Loading Loading @@ -315,7 +316,7 @@ public final class StatsManager { @RequiresPermission(allOf = { DUMP, PACKAGE_USAGE_STATS }) public @NonNull long[] setActiveConfigsChangedOperation(@Nullable PendingIntent pendingIntent) throws StatsUnavailableException { synchronized (this) { synchronized (sLock) { try { IStatsManager service = getIStatsManagerLocked(); if (pendingIntent == null) { Loading Loading @@ -363,7 +364,7 @@ public final class StatsManager { */ @RequiresPermission(allOf = { DUMP, PACKAGE_USAGE_STATS }) public byte[] getReports(long configKey) throws StatsUnavailableException { synchronized (this) { synchronized (sLock) { try { IStatsManager service = getIStatsManagerLocked(); return service.getData(configKey, mContext.getOpPackageName()); Loading Loading @@ -400,7 +401,7 @@ public final class StatsManager { */ @RequiresPermission(allOf = { DUMP, PACKAGE_USAGE_STATS }) public byte[] getStatsMetadata() throws StatsUnavailableException { synchronized (this) { synchronized (sLock) { try { IStatsManager service = getIStatsManagerLocked(); return service.getMetadata(mContext.getOpPackageName()); Loading Loading @@ -435,7 +436,7 @@ public final class StatsManager { @RequiresPermission(allOf = {DUMP, PACKAGE_USAGE_STATS}) public long[] getRegisteredExperimentIds() throws StatsUnavailableException { synchronized (this) { synchronized (sLock) { try { IStatsManager service = getIStatsManagerLocked(); if (service == null) { Loading Loading @@ -472,7 +473,7 @@ public final class StatsManager { @RequiresPermission(allOf = { DUMP, PACKAGE_USAGE_STATS }) public void setPullerCallback(int atomTag, IStatsPullerCallback callback) throws StatsUnavailableException { synchronized (this) { synchronized (sLock) { try { IStatsManager service = getIStatsManagerLocked(); if (callback == null) { Loading Loading @@ -515,7 +516,7 @@ public final class StatsManager { if (additiveFields == null) { additiveFields = new int[0]; } synchronized (this) { synchronized (sLock) { IStatsCompanionService service = getIStatsCompanionServiceLocked(); PullAtomCallbackInternal rec = new PullAtomCallbackInternal(atomTag, callback, executor); Loading Loading @@ -649,13 +650,13 @@ public final class StatsManager { private class StatsdDeathRecipient implements IBinder.DeathRecipient { @Override public void binderDied() { synchronized (this) { synchronized (sLock) { mService = null; } } } @GuardedBy("this") @GuardedBy("sLock") private IStatsManager getIStatsManagerLocked() throws StatsUnavailableException { if (mService != null) { return mService; Loading @@ -672,7 +673,7 @@ public final class StatsManager { return mService; } @GuardedBy("this") @GuardedBy("sLock") private IStatsCompanionService getIStatsCompanionServiceLocked() { if (mStatsCompanion != null) { return mStatsCompanion; Loading Loading
core/java/android/app/StatsManager.java +16 −15 Original line number Diff line number Diff line Loading @@ -51,12 +51,13 @@ public final class StatsManager { private static final String TAG = "StatsManager"; private static final boolean DEBUG = false; private static final Object sLock = new Object(); private final Context mContext; @GuardedBy("this") @GuardedBy("sLock") private IStatsManager mService; @GuardedBy("this") @GuardedBy("sLock") private IStatsCompanionService mStatsCompanion; /** Loading Loading @@ -125,7 +126,7 @@ public final class StatsManager { */ @RequiresPermission(allOf = { DUMP, PACKAGE_USAGE_STATS }) public void addConfig(long configKey, byte[] config) throws StatsUnavailableException { synchronized (this) { synchronized (sLock) { try { IStatsManager service = getIStatsManagerLocked(); // can throw IllegalArgumentException Loading Loading @@ -162,7 +163,7 @@ public final class StatsManager { */ @RequiresPermission(allOf = { DUMP, PACKAGE_USAGE_STATS }) public void removeConfig(long configKey) throws StatsUnavailableException { synchronized (this) { synchronized (sLock) { try { IStatsManager service = getIStatsManagerLocked(); service.removeConfiguration(configKey, mContext.getOpPackageName()); Loading Loading @@ -223,7 +224,7 @@ public final class StatsManager { public void setBroadcastSubscriber( PendingIntent pendingIntent, long configKey, long subscriberId) throws StatsUnavailableException { synchronized (this) { synchronized (sLock) { try { IStatsManager service = getIStatsManagerLocked(); if (pendingIntent != null) { Loading Loading @@ -277,7 +278,7 @@ public final class StatsManager { @RequiresPermission(allOf = { DUMP, PACKAGE_USAGE_STATS }) public void setFetchReportsOperation(PendingIntent pendingIntent, long configKey) throws StatsUnavailableException { synchronized (this) { synchronized (sLock) { try { IStatsManager service = getIStatsManagerLocked(); if (pendingIntent == null) { Loading Loading @@ -315,7 +316,7 @@ public final class StatsManager { @RequiresPermission(allOf = { DUMP, PACKAGE_USAGE_STATS }) public @NonNull long[] setActiveConfigsChangedOperation(@Nullable PendingIntent pendingIntent) throws StatsUnavailableException { synchronized (this) { synchronized (sLock) { try { IStatsManager service = getIStatsManagerLocked(); if (pendingIntent == null) { Loading Loading @@ -363,7 +364,7 @@ public final class StatsManager { */ @RequiresPermission(allOf = { DUMP, PACKAGE_USAGE_STATS }) public byte[] getReports(long configKey) throws StatsUnavailableException { synchronized (this) { synchronized (sLock) { try { IStatsManager service = getIStatsManagerLocked(); return service.getData(configKey, mContext.getOpPackageName()); Loading Loading @@ -400,7 +401,7 @@ public final class StatsManager { */ @RequiresPermission(allOf = { DUMP, PACKAGE_USAGE_STATS }) public byte[] getStatsMetadata() throws StatsUnavailableException { synchronized (this) { synchronized (sLock) { try { IStatsManager service = getIStatsManagerLocked(); return service.getMetadata(mContext.getOpPackageName()); Loading Loading @@ -435,7 +436,7 @@ public final class StatsManager { @RequiresPermission(allOf = {DUMP, PACKAGE_USAGE_STATS}) public long[] getRegisteredExperimentIds() throws StatsUnavailableException { synchronized (this) { synchronized (sLock) { try { IStatsManager service = getIStatsManagerLocked(); if (service == null) { Loading Loading @@ -472,7 +473,7 @@ public final class StatsManager { @RequiresPermission(allOf = { DUMP, PACKAGE_USAGE_STATS }) public void setPullerCallback(int atomTag, IStatsPullerCallback callback) throws StatsUnavailableException { synchronized (this) { synchronized (sLock) { try { IStatsManager service = getIStatsManagerLocked(); if (callback == null) { Loading Loading @@ -515,7 +516,7 @@ public final class StatsManager { if (additiveFields == null) { additiveFields = new int[0]; } synchronized (this) { synchronized (sLock) { IStatsCompanionService service = getIStatsCompanionServiceLocked(); PullAtomCallbackInternal rec = new PullAtomCallbackInternal(atomTag, callback, executor); Loading Loading @@ -649,13 +650,13 @@ public final class StatsManager { private class StatsdDeathRecipient implements IBinder.DeathRecipient { @Override public void binderDied() { synchronized (this) { synchronized (sLock) { mService = null; } } } @GuardedBy("this") @GuardedBy("sLock") private IStatsManager getIStatsManagerLocked() throws StatsUnavailableException { if (mService != null) { return mService; Loading @@ -672,7 +673,7 @@ public final class StatsManager { return mService; } @GuardedBy("this") @GuardedBy("sLock") private IStatsCompanionService getIStatsCompanionServiceLocked() { if (mStatsCompanion != null) { return mStatsCompanion; Loading