diff options
author | Adrian Roos <roosa@google.com> | 2015-03-11 00:12:53 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2015-03-11 00:12:56 +0000 |
commit | bd5e03b6d996aa39a6f607a55ffd0691a55b1cee (patch) | |
tree | 704906b3cb84fd2af3a661d7d41f3461038a1cac | |
parent | b7f101225e6fa951df262eeacf235ffa5f6cc7e3 (diff) | |
parent | a43fd03b9b23f9ad0deae9ee69ee80aaa1433cdb (diff) | |
download | frameworks_base-bd5e03b6d996aa39a6f607a55ffd0691a55b1cee.zip frameworks_base-bd5e03b6d996aa39a6f607a55ffd0691a55b1cee.tar.gz frameworks_base-bd5e03b6d996aa39a6f607a55ffd0691a55b1cee.tar.bz2 |
Merge "Notify TrustAgentService when device policy configuration no longer applies"
-rw-r--r-- | core/java/android/service/trust/TrustAgentService.java | 14 | ||||
-rw-r--r-- | services/core/java/com/android/server/trust/TrustAgentWrapper.java | 3 |
2 files changed, 11 insertions, 6 deletions
diff --git a/core/java/android/service/trust/TrustAgentService.java b/core/java/android/service/trust/TrustAgentService.java index 706b934..a3178e2 100644 --- a/core/java/android/service/trust/TrustAgentService.java +++ b/core/java/android/service/trust/TrustAgentService.java @@ -122,12 +122,14 @@ public class TrustAgentService extends Service { case MSG_CONFIGURE: ConfigurationData data = (ConfigurationData) msg.obj; boolean result = onConfigure(data.options); - try { - synchronized (mLock) { - mCallback.onConfigureCompleted(result, data.token); + if (data.token != null) { + try { + synchronized (mLock) { + mCallback.onConfigureCompleted(result, data.token); + } + } catch (RemoteException e) { + onError("calling onSetTrustAgentFeaturesEnabledCompleted()"); } - } catch (RemoteException e) { - onError("calling onSetTrustAgentFeaturesEnabledCompleted()"); } break; case MSG_TRUST_TIMEOUT: @@ -203,7 +205,7 @@ public class TrustAgentService extends Service { * PersistableBundle)}. * <p>Agents that support configuration options should overload this method and return 'true'. * - * @param options bundle containing all options or null if none. + * @param options The aggregated list of options or an empty list if no restrictions apply. * @return true if the {@link TrustAgentService} supports configuration options. */ public boolean onConfigure(List<PersistableBundle> options) { diff --git a/services/core/java/com/android/server/trust/TrustAgentWrapper.java b/services/core/java/com/android/server/trust/TrustAgentWrapper.java index 583cc6b..0109313 100644 --- a/services/core/java/com/android/server/trust/TrustAgentWrapper.java +++ b/services/core/java/com/android/server/trust/TrustAgentWrapper.java @@ -40,6 +40,7 @@ import android.util.Slog; import android.service.trust.ITrustAgentService; import android.service.trust.ITrustAgentServiceCallback; +import java.util.Collections; import java.util.List; /** @@ -359,6 +360,8 @@ public class TrustAgentWrapper { mSetTrustAgentFeaturesToken = new Binder(); mTrustAgentService.onConfigure(config, mSetTrustAgentFeaturesToken); } + } else { + mTrustAgentService.onConfigure(Collections.EMPTY_LIST, null); } final long maxTimeToLock = dpm.getMaximumTimeToLock(null); if (maxTimeToLock != mMaximumTimeToLock) { |