Skip to content

Commit

Permalink
Gradle Toolchain remove PropertyOrigin.java and other cleanups (#28911)
Browse files Browse the repository at this point in the history
  • Loading branch information
bot-gradle committed May 9, 2024
2 parents d1f8f3d + f3a22da commit 006dedb
Show file tree
Hide file tree
Showing 13 changed files with 31 additions and 89 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -39,22 +39,18 @@ public static void updateJvmCriteria(
) {
validateToolchainVersion(toolchainVersion);

Properties daemonJVMProperties = new Properties();
daemonJVMProperties.put(DaemonJvmPropertiesDefaults.TOOLCHAIN_VERSION_PROPERTY, toolchainVersion.getMajorVersion());
Properties daemonJvmProperties = new Properties();
daemonJvmProperties.put(DaemonJvmPropertiesDefaults.TOOLCHAIN_VERSION_PROPERTY, toolchainVersion.getMajorVersion());
if (toolchainVendor != null) {
daemonJVMProperties.put(DaemonJvmPropertiesDefaults.TOOLCHAIN_VENDOR_PROPERTY, toolchainVendor.getKnownVendor().name());
} else {
daemonJVMProperties.remove(DaemonJvmPropertiesDefaults.TOOLCHAIN_VENDOR_PROPERTY);
daemonJvmProperties.put(DaemonJvmPropertiesDefaults.TOOLCHAIN_VENDOR_PROPERTY, toolchainVendor.getKnownVendor().name());
}
if (toolchainImplementation != null) {
daemonJVMProperties.put(DaemonJvmPropertiesDefaults.TOOLCHAIN_IMPLEMENTATION_PROPERTY, toolchainImplementation.toString());
} else {
daemonJVMProperties.remove(DaemonJvmPropertiesDefaults.TOOLCHAIN_IMPLEMENTATION_PROPERTY);
daemonJvmProperties.put(DaemonJvmPropertiesDefaults.TOOLCHAIN_IMPLEMENTATION_PROPERTY, toolchainImplementation.toString());
}

GFileUtils.parentMkdirs(propertiesFile);
try {
PropertiesUtils.store(daemonJVMProperties, propertiesFile, "This file is generated by " + DaemonJvmPropertiesConfigurator.TASK_NAME);
PropertiesUtils.store(daemonJvmProperties, propertiesFile, "This file is generated by " + DaemonJvmPropertiesConfigurator.TASK_NAME);
} catch (IOException e) {
throw new UncheckedIOException(e);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,39 +31,25 @@
*/
public abstract class AbstractBuildOption<T, V extends CommandLineOptionConfiguration> implements BuildOption<T> {

protected final PropertyOrigin propertyOrigin;
protected final String property;
protected final List<V> commandLineOptionConfigurations;
protected final String deprecatedProperty;

public AbstractBuildOption(String property) {
this(property, null, PropertyOrigin.GRADLE_PROPERTIES, Collections.<V>emptyList());
this(property, null, Collections.<V>emptyList());
}

public AbstractBuildOption(String property, String deprecatedProperty, V... commandLineOptionConfiguration) {
this(property, deprecatedProperty, PropertyOrigin.GRADLE_PROPERTIES, commandLineOptionConfiguration != null ? Arrays.asList(commandLineOptionConfiguration) : Collections.<V>emptyList());
this(property, deprecatedProperty, commandLineOptionConfiguration != null ? Arrays.asList(commandLineOptionConfiguration) : Collections.<V>emptyList());
}

public AbstractBuildOption(String property, V... commandLineOptionConfiguration) {
this(property, null, PropertyOrigin.GRADLE_PROPERTIES, commandLineOptionConfiguration != null ? Arrays.asList(commandLineOptionConfiguration) : Collections.<V>emptyList());
this(property, null, commandLineOptionConfiguration != null ? Arrays.asList(commandLineOptionConfiguration) : Collections.<V>emptyList());
}

public AbstractBuildOption(String property, PropertyOrigin propertyOrigin) {
this(property, null, propertyOrigin, Collections.<V>emptyList());
}

public AbstractBuildOption(String property, String deprecatedProperty, PropertyOrigin propertyOrigin, V... commandLineOptionConfiguration) {
this(property, deprecatedProperty, propertyOrigin, commandLineOptionConfiguration != null ? Arrays.asList(commandLineOptionConfiguration) : Collections.<V>emptyList());
}

public AbstractBuildOption(String property, PropertyOrigin propertyOrigin, V... commandLineOptionConfiguration) {
this(property, null, propertyOrigin, commandLineOptionConfiguration != null ? Arrays.asList(commandLineOptionConfiguration) : Collections.<V>emptyList());
}

private AbstractBuildOption(String property, String deprecatedProperty, PropertyOrigin propertyOrigin, List<V> commandLineOptionConfigurations) {
private AbstractBuildOption(String property, String deprecatedProperty, List<V> commandLineOptionConfigurations) {
this.property = property;
this.deprecatedProperty = deprecatedProperty;
this.propertyOrigin = propertyOrigin;
this.commandLineOptionConfigurations = commandLineOptionConfigurations;
}

Expand Down Expand Up @@ -99,24 +85,24 @@ protected CommandLineOption configureCommandLineOption(CommandLineParser parser,
protected OptionValue<String> getFromProperties(Map<String, String> properties) {
String value = properties.get(property);
if (value != null) {
return new OptionValue<String>(value, property, propertyOrigin);
return new OptionValue<String>(value, Origin.forGradleProperty(property));
}
if (deprecatedProperty != null) {
value = properties.get(deprecatedProperty);
if (value != null) {
return new OptionValue<String>(value, deprecatedProperty, propertyOrigin);
return new OptionValue<String>(value, Origin.forGradleProperty(deprecatedProperty));
}
}
return new OptionValue<String>(null, null, propertyOrigin);
return new OptionValue<String>(null, null);
}

protected static class OptionValue<T> {
private final T value;
private final Origin origin;

public OptionValue(T value, String property, PropertyOrigin propertyOrigin) {
public OptionValue(T value, Origin origin) {
this.value = value;
this.origin = propertyOrigin.toOrigin(property);
this.origin = origin;
}

public T getValue() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ public EnabledOnlyBooleanBuildOption(String property, CommandLineOptionConfigura
@Override
public void applyFromProperty(Map<String, String> properties, T settings) {
if (properties.get(property) != null) {
applyTo(settings, propertyOrigin.toOrigin(property));
applyTo(settings, Origin.forGradleProperty(property));
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,25 +35,17 @@ public abstract class EnumBuildOption<E extends Enum<E>, T> extends AbstractBuil
private final Class<E> enumClass;
private final List<E> possibleValues;

public EnumBuildOption(String displayName, Class<E> enumClass, E[] possibleValues, String property, String deprecatedProperty, CommandLineOptionConfiguration... commandLineOptionConfigurations) {
this(displayName, enumClass, possibleValues, property, deprecatedProperty, PropertyOrigin.GRADLE_PROPERTIES, commandLineOptionConfigurations);
}

public EnumBuildOption(String displayName, Class<E> enumClass, E[] possibleValues, String property, CommandLineOptionConfiguration... commandLineOptionConfigurations) {
this(displayName, enumClass, possibleValues, property, null, PropertyOrigin.GRADLE_PROPERTIES, commandLineOptionConfigurations);
}

public EnumBuildOption(String displayName, Class<E> enumClass, E[] possibleValues, String property, PropertyOrigin propertyOrigin, CommandLineOptionConfiguration... commandLineOptionConfigurations) {
this(displayName, enumClass, possibleValues, property, null, propertyOrigin, commandLineOptionConfigurations);
}

public EnumBuildOption(String displayName, Class<E> enumClass, E[] possibleValues, String property, String deprecatedProperty, PropertyOrigin propertyOrigin, CommandLineOptionConfiguration... commandLineOptionConfigurations) {
super(property, deprecatedProperty, propertyOrigin, commandLineOptionConfigurations);
public EnumBuildOption(String displayName, Class<E> enumClass, E[] possibleValues, String gradleProperty, String deprecatedProperty, CommandLineOptionConfiguration... commandLineOptionConfigurations) {
super(gradleProperty, deprecatedProperty, commandLineOptionConfigurations);
this.displayName = displayName;
this.enumClass = enumClass;
this.possibleValues = Collections.unmodifiableList(Arrays.asList(possibleValues));
}

public EnumBuildOption(String displayName, Class<E> enumClass, E[] possibleValues, String gradleProperty, CommandLineOptionConfiguration... commandLineOptionConfigurations) {
this(displayName, enumClass, possibleValues, gradleProperty, null, commandLineOptionConfigurations);
}

@Override
public void applyFromProperty(Map<String, String> properties, T settings) {
OptionValue<String> propertyValue = getFromProperties(properties);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ public void applyFromProperty(Map<String, String> properties, T settings) {

if (value != null) {
String[] splitValues = value.split("\\s*,\\s*");
applyTo(Arrays.asList(splitValues), settings, propertyOrigin.toOrigin(property));
applyTo(Arrays.asList(splitValues), settings, Origin.forGradleProperty(property));
}
}

Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -32,10 +32,6 @@ public StringBuildOption(String property) {
super(property);
}

public StringBuildOption(String property, PropertyOrigin propertyOrigin) {
super(property, propertyOrigin);
}

public StringBuildOption(String property, CommandLineOptionConfiguration... commandLineOptionConfigurations) {
super(property, commandLineOptionConfigurations);
}
Expand All @@ -45,7 +41,7 @@ public void applyFromProperty(Map<String, String> properties, T settings) {
String value = properties.get(property);

if (value != null) {
applyTo(value, settings, propertyOrigin.toOrigin(property));
applyTo(value, settings, Origin.forGradleProperty(property));
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -70,9 +70,9 @@ public AllProperties convert(InitialProperties initialProperties, BuildLayoutRes
configureFromSystemPropertiesOfThisJvm(Cast.uncheckedNonnullCast(properties));
properties.putAll(initialProperties.getRequestedSystemProperties());

Map<String, String> daemonJVMProperties = new HashMap<>();
configureFromDaemonJVMProperties(layout, daemonJVMProperties);
return new Result(properties, daemonJVMProperties, initialProperties);
Map<String, String> daemonJvmProperties = new HashMap<>();
configureFromDaemonJVMProperties(layout, daemonJvmProperties);
return new Result(properties, daemonJvmProperties, initialProperties);
}

private void configureFromSystemPropertiesOfThisJvm(Map<Object, Object> properties) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
package org.gradle.launcher.daemon.context;

import org.gradle.api.internal.specs.ExplainingSpec;
import org.gradle.internal.jvm.JavaInfo;
import org.gradle.internal.jvm.Jvm;

import java.io.File;
Expand Down Expand Up @@ -67,9 +68,10 @@ private boolean jvmCompatible(DaemonContext potentialContext) {
} else {
try {
File potentialJavaHome = potentialContext.getJavaHome();
if (potentialJavaHome.exists()) {
JavaInfo desiredJavaHome = desiredContext.getJavaHome();
if (potentialJavaHome.exists() && desiredJavaHome != null) {
File potentialJava = Jvm.forHome(potentialJavaHome).getJavaExecutable();
File desiredJava = desiredContext.getJavaHome().getJavaExecutable();
File desiredJava = desiredJavaHome.getJavaExecutable();
return Files.isSameFile(potentialJava.toPath(), desiredJava.toPath());
}
} catch (IOException e) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@ import org.gradle.internal.logging.text.StyledTextOutputFactory
import org.gradle.internal.nativeintegration.services.NativeServices
import org.gradle.internal.service.DefaultServiceRegistry
import org.gradle.internal.service.ServiceRegistry
import org.gradle.internal.time.Clock
import org.gradle.launcher.daemon.bootstrap.ForegroundDaemonAction
import org.gradle.launcher.daemon.client.DaemonClient
import org.gradle.launcher.daemon.client.SingleUseDaemonClient
Expand Down Expand Up @@ -58,7 +57,6 @@ class BuildActionsFactoryTest extends Specification {

def setup() {
def factoryLoggingManager = Mock(Factory) { _ * create() >> Mock(LoggingManagerInternal) }
loggingServices.add(Clock, Mock(Clock))
loggingServices.add(OutputEventListener, Mock(OutputEventListener))
loggingServices.add(GlobalUserInputReceiver, Mock(GlobalUserInputReceiver))
loggingServices.add(StyledTextOutputFactory, Mock(StyledTextOutputFactory))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -154,7 +154,7 @@ public void applyFromProperty(Map<String, String> properties, LoggingConfigurati
} else if (value.equalsIgnoreCase("full")) {
settings.setShowStacktrace(ShowStacktrace.ALWAYS_FULL);
} else {
propertyOrigin.toOrigin(GRADLE_PROPERTY).handleInvalidValue(value, "must be one of internal, all, or full");
Origin.forGradleProperty(GRADLE_PROPERTY).handleInvalidValue(value, "must be one of internal, all, or full");
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1753,7 +1753,6 @@ Class <org.gradle.internal.buildoption.Origin$CommandLineOrigin> is not annotate
Class <org.gradle.internal.buildoption.Origin$GradlePropertyOrigin> is not annotated (directly or via its package) with @org.gradle.api.NonNullApi in (Origin.java:0)
Class <org.gradle.internal.buildoption.Origin> is not annotated (directly or via its package) with @org.gradle.api.NonNullApi in (Origin.java:0)
Class <org.gradle.internal.buildoption.PropertiesConverter> is not annotated (directly or via its package) with @org.gradle.api.NonNullApi in (PropertiesConverter.java:0)
Class <org.gradle.internal.buildoption.PropertyOrigin> is not annotated (directly or via its package) with @org.gradle.api.NonNullApi in (PropertyOrigin.java:0)
Class <org.gradle.internal.buildoption.StringBuildOption> is not annotated (directly or via its package) with @org.gradle.api.NonNullApi in (StringBuildOption.java:0)
Class <org.gradle.internal.buildoption.StringInternalOption> is not annotated (directly or via its package) with @org.gradle.api.NonNullApi in (StringInternalOption.java:0)
Class <org.gradle.internal.cache.MonitoredCleanupAction> is not annotated (directly or via its package) with @org.gradle.api.NonNullApi in (MonitoredCleanupAction.java:0)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,6 @@
import org.gradle.api.internal.file.FileCollectionFactory;
import org.gradle.api.internal.file.TestFiles;
import org.gradle.api.logging.configuration.ConsoleOutput;
import org.gradle.api.model.ObjectFactory;
import org.gradle.api.specs.Spec;
import org.gradle.api.tasks.TaskState;
import org.gradle.cli.CommandLineParser;
Expand Down Expand Up @@ -370,7 +369,6 @@ private BuildResult executeBuild(GradleInvocation invocation, OutputStream outpu
// TODO: Reuse more of CommandlineActionFactory
CommandLineParser parser = new CommandLineParser();
FileCollectionFactory fileCollectionFactory = TestFiles.fileCollectionFactory();
ObjectFactory propertyFactory = GLOBAL_SERVICES.get(ObjectFactory.class);
BuildEnvironmentConfigurationConverter buildEnvironmentConfigurationConverter = new BuildEnvironmentConfigurationConverter(new BuildLayoutFactory(), fileCollectionFactory);
buildEnvironmentConfigurationConverter.configure(parser);
Parameters parameters = buildEnvironmentConfigurationConverter.convertParameters(parser.parse(getAllArgs()), getWorkingDir());
Expand Down

0 comments on commit 006dedb

Please sign in to comment.