aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/objc/XcTestAppProvider.java
diff options
context:
space:
mode:
authorGravatar dslomov <dslomov@google.com>2017-07-25 13:20:12 +0200
committerGravatar Jakob Buchgraber <buchgr@google.com>2017-07-25 13:38:00 +0200
commit4e9190ae0198a90d5ab07ade3f2054b4125ea98f (patch)
tree2d2e9b8e29d4d7adcbb52f87d424cee4ca88ee12 /src/main/java/com/google/devtools/build/lib/rules/objc/XcTestAppProvider.java
parent560b0ae4701dd2084160c45bb772396535b31f47 (diff)
Automated rollback of commit 6d884afa8da1b08288cb0108e8bbf6c22ec63393.
*** Reason for rollback *** Broke bazel_apple_rules *** Original change description *** Make all WithLegacySkylarkName providers declared providers. RELNOTES: None PiperOrigin-RevId: 163054821
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/objc/XcTestAppProvider.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/XcTestAppProvider.java41
1 files changed, 17 insertions, 24 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/XcTestAppProvider.java b/src/main/java/com/google/devtools/build/lib/rules/objc/XcTestAppProvider.java
index a0a306ffc2..051bcd5dca 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/XcTestAppProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/XcTestAppProvider.java
@@ -16,9 +16,9 @@ package com.google.devtools.build.lib.rules.objc;
import com.google.common.collect.ImmutableMap;
import com.google.devtools.build.lib.actions.Artifact;
+import com.google.devtools.build.lib.analysis.TransitiveInfoProvider;
import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable;
import com.google.devtools.build.lib.packages.NativeClassObjectConstructor;
-import com.google.devtools.build.lib.packages.NativeClassObjectConstructor.WithLegacySkylarkName;
import com.google.devtools.build.lib.packages.SkylarkClassObject;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModule;
import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory;
@@ -33,21 +33,33 @@ import com.google.devtools.build.lib.util.Preconditions;
"Deprecated. A provider for XCTest apps for testing. This is a legacy provider and should "
+ "not be used."
)
-public final class XcTestAppProvider extends SkylarkClassObject {
+public final class XcTestAppProvider extends SkylarkClassObject
+ implements TransitiveInfoProvider, TransitiveInfoProvider.WithLegacySkylarkName {
/**
* The skylark struct key name for a rule implementation to use when exporting an ObjcProvider.
*/
public static final String XCTEST_APP_SKYLARK_PROVIDER_NAME = "xctest_app";
- public static final NativeClassObjectConstructor<XcTestAppProvider> SKYLARK_CONSTRUCTOR =
- new Constructor();
+ @Override
+ public String getSkylarkName() {
+ return XCTEST_APP_SKYLARK_PROVIDER_NAME;
+ }
+
+ private static final NativeClassObjectConstructor<XcTestAppProvider> XCTEST_APP_PROVIDER =
+ new NativeClassObjectConstructor<XcTestAppProvider>(
+ XcTestAppProvider.class, "xctest_app_provider") {
+ @Override
+ public String getErrorMessageFormatForInstances() {
+ return "XcTestAppProvider field %s could not be instantiated";
+ }
+ };
private final Artifact bundleLoader;
private final Artifact ipa;
private final ObjcProvider objcProvider;
XcTestAppProvider(Artifact bundleLoader, Artifact ipa, ObjcProvider objcProvider) {
- super(SKYLARK_CONSTRUCTOR, getSkylarkFields(bundleLoader, ipa, objcProvider));
+ super(XCTEST_APP_PROVIDER, getSkylarkFields(bundleLoader, ipa, objcProvider));
this.bundleLoader = Preconditions.checkNotNull(bundleLoader);
this.ipa = Preconditions.checkNotNull(ipa);
this.objcProvider = Preconditions.checkNotNull(objcProvider);
@@ -84,23 +96,4 @@ public final class XcTestAppProvider extends SkylarkClassObject {
.put("objc", objcProvider)
.build();
}
-
- private static class Constructor
- extends NativeClassObjectConstructor<XcTestAppProvider>
- implements WithLegacySkylarkName {
-
- private Constructor() {
- super(XcTestAppProvider.class, "xctest_app_provider");
- }
-
- @Override
- public String getSkylarkName() {
- return XCTEST_APP_SKYLARK_PROVIDER_NAME;
- }
-
- @Override
- public String getErrorMessageFormatForInstances() {
- return "XcTestAppProvider field %s could not be instantiated";
- }
- }
}