.setMultiAbiTargeting( MultiAbiTargeting.newBuilder() .addAllValue(targeting) .addAllAlternatives( Sets.difference(allTargeting, ImmutableSet.copyOf(targeting))))
/** * Builds multi-Abi targeting of arbitrary values and alternatives. * * @param abiAliases a set of sets of Abi aliases. Each inner set is converted to the repeated * MultiAbi.abi, and the outer set is converted to the repeated MultiAbiTargeting.value. * @param alternatives a set of sets of Abi aliases. Each inner set is converted to the repeated * MultiAbi.abi, and the outer set is converted to the repeated * MultiAbiTargeting.alternatives. */ public static MultiAbiTargeting multiAbiTargeting( ImmutableSet<ImmutableSet<AbiAlias>> abiAliases, ImmutableSet<ImmutableSet<AbiAlias>> alternatives) { return MultiAbiTargeting.newBuilder() .addAllValue(buildMultiAbis(abiAliases)) .addAllAlternatives(buildMultiAbis(alternatives)) .build(); }
/** * Builds multi-Abi targeting of arbitrary values with no alternatives. * * @param abiAliases a set of sets of Abi aliases. Each inner set is converted to the repeated * MultiAbi.abi, and the outer set is converted to the repeated MultiAbiTargeting.value. */ public static MultiAbiTargeting multiAbiTargeting( ImmutableSet<ImmutableSet<AbiAlias>> abiAliases) { return MultiAbiTargeting.newBuilder().addAllValue(buildMultiAbis(abiAliases)).build(); }