@Override protected void colClear() { clear(); } };
@Override public boolean isAppInstalled(String packageName) { return packageName != null && PackageCacheManager.PACKAGE_CACHE.containsKey(packageName); }
/** * Perform a {@link #put(Object, Object)} of all key/value pairs in <var>map</var> * @param map The map whose contents are to be retrieved. */ @Override public void putAll(Map<? extends K, ? extends V> map) { ensureCapacity(mSize + map.size()); for (Map.Entry<? extends K, ? extends V> entry : map.entrySet()) { put(entry.getKey(), entry.getValue()); } }
/** * Return a {@link java.util.Collection} for iterating over and interacting with all values * in the array map. * * <p><b>Note:</b> this is a fairly inefficient way to access the array contents, it * requires generating a number of temporary objects.</p> */ @Override public Collection<V> values() { return getCollection().getValues(); } }
public static VPackage get(String packageName) { synchronized (PackageCacheManager.class) { return PACKAGE_CACHE.get(packageName); } }
@Override protected void colPut(K key, V value) { put(key, value); }
public static ServiceConnectionDelegate removeDelegate(IServiceConnection conn) { return DELEGATE_MAP.remove(conn.asBinder()); }
@Override protected int colIndexOfValue(Object value) { return indexOfValue(value); }
@Override protected void colRemoveAt(int index) { removeAt(index); }
@Override protected int colIndexOfKey(Object key) { return indexOfKey(key); }
public static ServiceConnectionDelegate getDelegate(IServiceConnection conn) { if(conn instanceof ServiceConnectionDelegate){ return (ServiceConnectionDelegate)conn; } IBinder binder = conn.asBinder(); ServiceConnectionDelegate delegate = DELEGATE_MAP.get(binder); if (delegate == null) { delegate = new ServiceConnectionDelegate(conn); DELEGATE_MAP.put(binder, delegate); } return delegate; }
public void stopApp(String packageName) { synchronized (mBroadcastRecords) { Iterator<Map.Entry<IBinder, BroadcastRecord>> iterator = mBroadcastRecords.entrySet().iterator(); while (iterator.hasNext()) { Map.Entry<IBinder, BroadcastRecord> entry = iterator.next(); BroadcastRecord record = entry.getValue(); if (record.receiverInfo.packageName.equals(packageName)) { record.pendingResult.finish(); iterator.remove(); } } } synchronized (mReceivers) { List<BroadcastReceiver> receivers = mReceivers.get(packageName); if (receivers != null) { for (BroadcastReceiver r : receivers) { mContext.unregisterReceiver(r); } } mReceivers.remove(packageName); } }
/** * Return a {@link java.util.Set} for iterating over and interacting with all keys * in the array map. * * <p><b>Note:</b> this is a fairly inefficient way to access the array contents, it * requires generating a number of temporary objects.</p> */ @Override public Set<K> keySet() { return getCollection().getKeySet(); }
public static PackageSetting getSetting(String packageName) { synchronized (PackageCacheManager.class) { VPackage p = PACKAGE_CACHE.get(packageName); if (p != null) { return (PackageSetting) p.mExtras; } return null; } }
public static void put(VPackage pkg, PackageSetting ps) { synchronized (PackageCacheManager.class) { PackageParserEx.initApplicationInfoBase(ps, pkg); PACKAGE_CACHE.put(pkg.packageName, pkg); pkg.mExtras = ps; VPackageManagerService.get().analyzePackageLocked(pkg); } }
public static VPackage remove(String packageName) { synchronized (PackageCacheManager.class) { VPackageManagerService.get().deletePackageLocked(packageName); return PACKAGE_CACHE.remove(packageName); } } }
@Override protected int colIndexOfValue(Object value) { return indexOfValue(value); }
@Override protected void colRemoveAt(int index) { removeAt(index); }