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