aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/analysis
diff options
context:
space:
mode:
authorGravatar cparsons <cparsons@google.com>2018-08-07 14:20:20 -0700
committerGravatar Copybara-Service <copybara-piper@google.com>2018-08-07 14:22:11 -0700
commit075ab1e258902360bbd039d4b9fb4a6041a988d2 (patch)
tree0a008f43b97e61b3d16601921117aa36523faa53 /src/main/java/com/google/devtools/build/lib/analysis
parentdf8ee192ca59dfd5b534f2268ea1cd62c48c4ab5 (diff)
Migrate ObjcProvider to BuiltinProvider from NativeProvider
RELNOTES: None. PiperOrigin-RevId: 207778688
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/analysis')
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java26
1 files changed, 25 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java b/src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java
index 9e2ca2924e..3eebb2d037 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/RuleContext.java
@@ -902,10 +902,34 @@ public final class RuleContext extends TargetContext
* For a given attribute, returns all declared provider provided by targets of that attribute.
* Each declared provider is keyed by the {@link BuildConfiguration} under which the provider was
* created.
+ *
+ * @deprecated use {@link #getPrerequisitesByConfiguration(String, Mode, BuiltinProvider)}
+ * instead
+ */
+ @Deprecated
+ public <C extends Info>
+ ImmutableListMultimap<BuildConfiguration, C> getPrerequisitesByConfiguration(
+ String attributeName, Mode mode, final NativeProvider<C> provider) {
+ ImmutableListMultimap.Builder<BuildConfiguration, C> result =
+ ImmutableListMultimap.builder();
+ for (ConfiguredTargetAndData prerequisite :
+ getPrerequisiteConfiguredTargetAndTargets(attributeName, mode)) {
+ C prerequisiteProvider = prerequisite.getConfiguredTarget().get(provider);
+ if (prerequisiteProvider != null) {
+ result.put(prerequisite.getConfiguration(), prerequisiteProvider);
+ }
+ }
+ return result.build();
+ }
+
+ /**
+ * For a given attribute, returns all declared provider provided by targets of that attribute.
+ * Each declared provider is keyed by the {@link BuildConfiguration} under which the provider was
+ * created.
*/
public <C extends Info>
ImmutableListMultimap<BuildConfiguration, C> getPrerequisitesByConfiguration(
- String attributeName, Mode mode, final NativeProvider<C> provider) {
+ String attributeName, Mode mode, final BuiltinProvider<C> provider) {
ImmutableListMultimap.Builder<BuildConfiguration, C> result =
ImmutableListMultimap.builder();
for (ConfiguredTargetAndData prerequisite :