@Override public List<ResolveInfo> queryBroadcastReceivers(final Intent intent, final int flags) { return mCondom.proceedQuery(OutboundType.QUERY_RECEIVERS, intent, new CondomCore.WrappedValueProcedure<List<ResolveInfo>>() { @Override public List<ResolveInfo> proceed() { return CondomPackageManager.super.queryBroadcastReceivers(intent, flags); } }, CondomCore.RECEIVER_PACKAGE_GETTER); }
@Nullable @Override public String[] getPackagesForUid(final int uid) { final List<String> result = mCondom.proceedQuery(OutboundType.QUERY_PACKAGES, null, new CondomCore.WrappedValueProcedure<List<String>>() { @Override public @Nullable List<String> proceed() { final String[] result = CondomPackageManager.super.getPackagesForUid(uid); return result != null ? Arrays.asList(result) : null; } }, IDENTITY_FUNCTION); return result != null && ! result.isEmpty() ? result.toArray(new String[0]) : null; }
@Override public List<ResolveInfo> queryIntentServices(final Intent intent, final int flags) { final int original_intent_flags = intent.getFlags(); return mCondom.proceedQuery(OutboundType.QUERY_SERVICES, intent, new CondomCore.WrappedValueProcedure<List<ResolveInfo>>() { @Override public List<ResolveInfo> proceed() { final List<ResolveInfo> result = CondomPackageManager.super.queryIntentServices(intent, flags); mCondom.filterCandidates(OutboundType.QUERY_SERVICES, intent.setFlags(original_intent_flags), result, TAG, true); return result; } }, CondomCore.SERVICE_PACKAGE_GETTER); }
final List<ResolveInfo> list = mCondom.proceedQuery(outbound_type, (Intent) args[0], new CondomCore.WrappedValueProcedureThrows<List<ResolveInfo>, Exception>() { @Override public List<ResolveInfo> proceed() throws Exception { return asList(result);
@Override public List<ResolveInfo> queryBroadcastReceivers(final Intent originalIntent, final int flags) { final Intent intent = applyRedirect(originalIntent); return mCondom.proceedQuery(OutboundType.QUERY_RECEIVERS, intent, new CondomCore.WrappedValueProcedure<List<ResolveInfo>>() { @Override public List<ResolveInfo> proceed() { return CondomPackageManager.super.queryBroadcastReceivers(intent, flags); }}); }
@Override public List<ResolveInfo> queryIntentServices(final Intent originalIntent, final int flags) { final Intent intent = applyRedirect(originalIntent); final int original_intent_flags = intent.getFlags(); return mCondom.proceedQuery(OutboundType.QUERY_SERVICES, intent, new CondomCore.WrappedValueProcedure<List<ResolveInfo>>() { @Override public List<ResolveInfo> proceed() { final List<ResolveInfo> result = CondomPackageManager.super.queryIntentServices(intent, flags); mCondom.filterCandidates(OutboundType.QUERY_SERVICES, intent.setFlags(original_intent_flags), result, TAG, true); return result; }}); }
final List<ResolveInfo> list = mCondom.proceedQuery(outbound_type, (Intent) args[0], new CondomCore.WrappedValueProcedureThrows<List<ResolveInfo>, Exception>() { @Override public List<ResolveInfo> proceed() throws Exception { return asList(result); }});