
org.robolectric.shadows.ShadowCarrierConfigManager Maven / Gradle / Ivy
package org.robolectric.shadows;
import static android.os.Build.VERSION_CODES.M;
import android.os.PersistableBundle;
import android.telephony.CarrierConfigManager;
import android.util.SparseArray;
import org.robolectric.annotation.Implementation;
import org.robolectric.annotation.Implements;
@Implements(value = CarrierConfigManager.class, minSdk = M)
public class ShadowCarrierConfigManager {
private SparseArray bundles = new SparseArray<>();
/**
* Returns {@link android.os.PersistableBundle} previously set by {@link #setConfigForSubId(int)},
* or default values for an invalid {@code subId}.
*/
@Implementation
protected PersistableBundle getConfigForSubId(int subId) {
PersistableBundle persistableBundle = bundles.get(subId);
if (persistableBundle == null) {
return new PersistableBundle();
}
return persistableBundle;
}
/**
* Sets that the {@code config} PersistableBundle for a particular {@code subId}; controls the
* return value of {@link CarrierConfigManager#getConfigForSubId()}.
*/
public void setConfigForSubId(int subId, PersistableBundle config) {
bundles.put(subId, config);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy