1 /*
2  * Copyright (C) 2022 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package com.android.server.audio;
18 
19 import android.content.ContentResolver;
20 
21 import java.util.HashMap;
22 import java.util.Map;
23 
24 public class NoOpSettingsAdapter extends SettingsAdapter {
25 
26     /**
27      * No-op methods for Settings.Global
28      */
29 
30     private Map<String, Integer> mGlobalIntSettings = new HashMap<>();
31     private Map<String, String> mGlobalStringSettings = new HashMap<>();
32 
33     @Override
getGlobalInt(ContentResolver cr, String name, int def)34     public int getGlobalInt(ContentResolver cr, String name, int def) {
35         return mGlobalIntSettings.getOrDefault(name, def);
36     }
37 
38     @Override
getGlobalString(ContentResolver resolver, String name)39     public String getGlobalString(ContentResolver resolver, String name) {
40         return mGlobalStringSettings.getOrDefault(name, null);
41     }
42 
43     @Override
putGlobalInt(ContentResolver cr, String name, int value)44     public boolean putGlobalInt(ContentResolver cr, String name, int value) {
45         mGlobalIntSettings.put(name, value);
46         return true;
47     }
48 
49     @Override
putGlobalString(ContentResolver resolver, String name, String value)50     public boolean putGlobalString(ContentResolver resolver, String name, String value) {
51         mGlobalStringSettings.put(name, value);
52         return true;
53     }
54 
55     /**
56      * No-op methods for Settings.System
57      */
58 
59     private Map<String, Integer> mSystemIntSettings = new HashMap<>();
60 
61     @Override
getSystemIntForUser(ContentResolver cr, String name, int def, int userHandle)62     public int getSystemIntForUser(ContentResolver cr, String name, int def, int userHandle) {
63         return mSystemIntSettings.getOrDefault(name, def);
64     }
65 
66     @Override
putSystemIntForUser(ContentResolver cr, String name, int value, int userHandle)67     public boolean putSystemIntForUser(ContentResolver cr, String name, int value, int userHandle) {
68         mSystemIntSettings.put(name, value);
69         return true;
70     }
71 
72     /**
73      * No-op methods for Settings.Secure
74      */
75 
76     private Map<String, Integer> mSecureIntSettings = new HashMap<>();
77     private Map<String, String> mSecureStringSettings = new HashMap<>();
78 
79     @Override
getSecureIntForUser(ContentResolver cr, String name, int def, int userHandle)80     public int getSecureIntForUser(ContentResolver cr, String name, int def, int userHandle) {
81         return mSecureIntSettings.getOrDefault(name, def);
82     }
83 
84     @Override
getSecureStringForUser(ContentResolver resolver, String name, int userHandle)85     public String getSecureStringForUser(ContentResolver resolver, String name, int userHandle) {
86         return mSecureStringSettings.getOrDefault(name, null);
87     }
88 
89     @Override
putSecureIntForUser(ContentResolver cr, String name, int value, int userHandle)90     public boolean putSecureIntForUser(ContentResolver cr, String name, int value, int userHandle) {
91         mSecureIntSettings.put(name, value);
92         return true;
93     }
94 
95     @Override
putSecureStringForUser(ContentResolver cr, String name, String value, int userHandle)96     public boolean putSecureStringForUser(ContentResolver cr, String name, String value,
97             int userHandle) {
98         mSecureStringSettings.put(name, value);
99         return true;
100     }
101 }
102 
103