Zen: Store notification zen policy per-user.

 - Keep a zen config per user in NoMan.
 - Add zen config for all users to xml policy storage mechanism.
 - Initialize config to default for new secondary users.
 - Re-evaluate global zen on user switch.
 - Remove some unused code in NoMan.
 - Make ZenModeHelper aware of multiple users, keep all configs,
   add to dump.
 - Log config diffs in addition to the config itself in ZenLog.

Bug: 15845915
Change-Id: Ic847451e5d111c74916def1ea0948db5a76966c9
diff --git a/services/core/java/com/android/server/notification/ConditionProviders.java b/services/core/java/com/android/server/notification/ConditionProviders.java
index 33c666a..40956c1 100644
--- a/services/core/java/com/android/server/notification/ConditionProviders.java
+++ b/services/core/java/com/android/server/notification/ConditionProviders.java
@@ -262,6 +262,14 @@
         return null;
     }
 
+    public Condition findCondition(ComponentName component, Uri conditionId) {
+        if (component == null || conditionId == null) return null;
+        synchronized (mMutex) {
+            final ConditionRecord r = getRecordLocked(conditionId, component, false /*create*/);
+            return r != null ? r.condition : null;
+        }
+    }
+
     public void ensureRecordExists(ComponentName component, Uri conditionId,
             IConditionProvider provider) {
         // constructed by convention, make sure the record exists...