Skip to content

Commit

Permalink
Delete unused JavaInfo code
Browse files Browse the repository at this point in the history
PiperOrigin-RevId: 717476829
Change-Id: I474e4c59843d3bd185cc392548615f93306695d3
  • Loading branch information
hvadehra authored and copybara-github committed Jan 20, 2025
1 parent 88f7977 commit a5ce577
Show file tree
Hide file tree
Showing 5 changed files with 15 additions and 170 deletions.
167 changes: 15 additions & 152 deletions src/main/java/com/google/devtools/build/lib/rules/java/JavaInfo.java
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,6 @@
import com.google.devtools.build.lib.starlarkbuildapi.cpp.CcInfoApi;
import com.google.devtools.build.lib.starlarkbuildapi.java.JavaInfoApi;
import com.google.devtools.build.lib.starlarkbuildapi.java.JavaModuleFlagsProviderApi;
import com.google.errorprone.annotations.CanIgnoreReturnValue;
import com.google.errorprone.annotations.Keep;
import com.google.protobuf.CodedInputStream;
import com.google.protobuf.CodedOutputStream;
Expand Down Expand Up @@ -120,19 +119,6 @@ public static CcInfo ccInfo(TransitiveInfoCollection target) throws RuleErrorExc
return CcInfo.EMPTY;
}

public static ImmutableList<CcInfo> ccInfos(Iterable<? extends TransitiveInfoCollection> targets)
throws RuleErrorException {
ImmutableList.Builder<CcInfo> builder = ImmutableList.builder();
for (TransitiveInfoCollection target : targets) {
builder.add(JavaInfo.ccInfo(target));
}
return builder.build();
}

public Optional<JavaCompilationArgsProvider> compilationArgsProvider() {
return Optional.ofNullable(providerJavaCompilationArgs);
}

/** Marker interface for encapuslated providers */
public interface JavaInfoInternalProvider {}

Expand All @@ -141,7 +127,20 @@ static <T> T nullIfNone(Object object, Class<T> type) {
return object != Starlark.NONE ? type.cast(object) : null;
}

static final JavaInfo EMPTY_JAVA_INFO_FOR_TESTING = Builder.create().build();
static final JavaInfo EMPTY_JAVA_INFO_FOR_TESTING =
new JavaInfo(
null,
null,
null,
null,
null,
null,
null,
null,
ImmutableList.of(),
false,
ImmutableList.of(),
Location.BUILTIN);

private final JavaCompilationArgsProvider providerJavaCompilationArgs;
private final JavaSourceJarsProvider providerJavaSourceJars;
Expand Down Expand Up @@ -221,6 +220,7 @@ public static JavaInfo getJavaInfo(TransitiveInfoCollection target) throws RuleE
return info;
}

@VisibleForTesting
public static JavaInfo wrap(Info info) throws RuleErrorException {
Provider.Key key = info.getProvider().getKey();
if (key.equals(RULES_JAVA_PROVIDER.getKey())) {
Expand Down Expand Up @@ -519,35 +519,6 @@ public JavaInfoProvider getProvider() {
}

static final class WorkspaceJavaInfo extends JavaInfo {

private WorkspaceJavaInfo(
JavaCcInfoProvider javaCcInfoProvider,
JavaCompilationArgsProvider javaCompilationArgsProvider,
JavaCompilationInfoProvider javaCompilationInfoProvider,
JavaGenJarsProvider javaGenJarsProvider,
JavaModuleFlagsProvider javaModuleFlagsProvider,
JavaPluginInfo javaPluginInfo,
JavaRuleOutputJarsProvider javaRuleOutputJarsProvider,
JavaSourceJarsProvider javaSourceJarsProvider,
ImmutableList<Artifact> directRuntimeJars,
boolean neverlink,
ImmutableList<String> javaConstraints,
Location creationLocation) {
super(
javaCcInfoProvider,
javaCompilationArgsProvider,
javaCompilationInfoProvider,
javaGenJarsProvider,
javaModuleFlagsProvider,
javaPluginInfo,
javaRuleOutputJarsProvider,
javaSourceJarsProvider,
directRuntimeJars,
neverlink,
javaConstraints,
creationLocation);
}

private WorkspaceJavaInfo(StructImpl javaInfo)
throws EvalException, TypeException, RuleErrorException {
super(javaInfo);
Expand Down Expand Up @@ -634,114 +605,6 @@ public Location getLocation() {
}
}

/** A Builder for {@link JavaInfo}. */
public static class Builder {

private JavaCompilationArgsProvider providerJavaCompilationArgs;
private JavaCompilationInfoProvider providerJavaCompilationInfo;
private JavaRuleOutputJarsProvider providerJavaRuleOutputJars;
private JavaSourceJarsProvider providerJavaSourceJars;
private ImmutableList<Artifact> runtimeJars;
private ImmutableList<String> javaConstraints;
private boolean neverlink;
private Location creationLocation = Location.BUILTIN;
private Provider provider = PROVIDER;

private Builder() {}

private static Builder create() {
return new Builder()
.setRuntimeJars(ImmutableList.of())
.setJavaConstraints(ImmutableList.of());
}

@CanIgnoreReturnValue
public Builder setRuntimeJars(ImmutableList<Artifact> runtimeJars) {
this.runtimeJars = runtimeJars;
return this;
}

@CanIgnoreReturnValue
public Builder setNeverlink(boolean neverlink) {
this.neverlink = neverlink;
return this;
}

@CanIgnoreReturnValue
public Builder setJavaConstraints(ImmutableList<String> javaConstraints) {
this.javaConstraints = javaConstraints;
return this;
}

@CanIgnoreReturnValue
public Builder setLocation(Location location) {
this.creationLocation = location;
return this;
}

@CanIgnoreReturnValue
public Builder javaCompilationArgs(JavaCompilationArgsProvider provider) {
this.providerJavaCompilationArgs = provider;
return this;
}

@CanIgnoreReturnValue
public Builder javaCompilationInfo(JavaCompilationInfoProvider provider) {
this.providerJavaCompilationInfo = provider;
return this;
}

@CanIgnoreReturnValue
public Builder javaRuleOutputs(JavaRuleOutputJarsProvider provider) {
this.providerJavaRuleOutputJars = provider;
return this;
}

@CanIgnoreReturnValue
public Builder javaSourceJars(JavaSourceJarsProvider provider) {
this.providerJavaSourceJars = provider;
return this;
}

@CanIgnoreReturnValue
public Builder setProvider(Provider provider) {
this.provider = provider;
return this;
}

public JavaInfo build() {
if (provider.getKey().equals(WORKSPACE_PROVIDER.getKey())) {
return new WorkspaceJavaInfo(
/* javaCcInfoProvider= */ null,
providerJavaCompilationArgs,
providerJavaCompilationInfo,
/* javaGenJarsProvider= */ null,
/* javaModuleFlagsProvider= */ null,
/* javaPluginInfo= */ null,
providerJavaRuleOutputJars,
providerJavaSourceJars,
runtimeJars,
neverlink,
javaConstraints,
creationLocation);
} else {
return new JavaInfo(
/* javaCcInfoProvider= */ null,
providerJavaCompilationArgs,
providerJavaCompilationInfo,
/* javaGenJarsProvider= */ null,
/* javaModuleFlagsProvider= */ null,
/* javaPluginInfo= */ null,
providerJavaRuleOutputJars,
providerJavaSourceJars,
runtimeJars,
neverlink,
javaConstraints,
creationLocation);
}
}
}

// TODO: b/359437873 - generate with @AutoCodec.
@Keep
private static final class JavaInfoValueSharingCodec extends DeferredObjectCodec<JavaInfo> {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -368,13 +368,6 @@ public boolean isJavaInfoMergeRuntimeModuleFlagsEnabled(StarlarkThread thread)
.getBool(BuildLanguageOptions.INCOMPATIBLE_JAVA_INFO_MERGE_RUNTIME_MODULE_FLAGS);
}

@Override
public JavaInfo wrapJavaInfo(Info javaInfo, StarlarkThread thread)
throws EvalException, RuleErrorException {
checkPrivateAccess(thread);
return JavaInfo.wrap(javaInfo);
}

@Override
public boolean incompatibleDisableNonExecutableJavaBinary(StarlarkThread thread) {
return thread
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -670,14 +670,6 @@ void checkJavaToolchainIsDeclaredOnRuleForStarlark(
useStarlarkThread = true)
boolean isJavaInfoMergeRuntimeModuleFlagsEnabled(StarlarkThread thread) throws EvalException;

@StarlarkMethod(
name = "wrap_java_info",
parameters = {@Param(name = "java_info")},
documented = false,
useStarlarkThread = true)
JavaInfoT wrapJavaInfo(Info javaInfo, StarlarkThread thread)
throws EvalException, RuleErrorException;

@StarlarkMethod(
name = "incompatible_disable_non_executable_java_binary",
useStarlarkThread = true,
Expand Down
1 change: 0 additions & 1 deletion src/main/starlark/builtins_bzl/common/java/java_common.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,6 @@ def _internal_exports():
incompatible_disable_non_executable_java_binary = _java_common_internal.incompatible_disable_non_executable_java_binary,
incompatible_java_info_merge_runtime_module_flags = _java_common_internal._incompatible_java_info_merge_runtime_module_flags,
target_kind = _java_common_internal.target_kind,
wrap_java_info = _java_common_internal.wrap_java_info,
)

java_common = struct(internal_DO_NOT_USE = _internal_exports)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -387,7 +387,6 @@ def impl(ctx):
new StarlarkProvider.Key(
keyForBuild(Label.parseCanonical("//java/test:extension.bzl")), "result"));

@SuppressWarnings("unchecked") // deserialization
ImmutableList<JavaOutput> javaOutputs =
JavaOutput.wrapSequence(info.getValue("outputs", Sequence.class));

Expand Down Expand Up @@ -4934,7 +4933,6 @@ public void testNoArgsPrivateAPIsAreIndeedPrivate(String module, String api) thr
"{api: check_provider_instances}",
"{api: _google_legacy_api_enabled}",
"{api: _check_java_toolchain_is_declared_on_rule}",
"{api: wrap_java_info}",
"{api: tokenize_javacopts}",
})
public void testJavaCommonPrivateApis_areNotVisibleToPublicStarlark(String api) throws Exception {
Expand Down

0 comments on commit a5ce577

Please sign in to comment.