2
0
Fork 0
mirror of https://github.com/ethauvin/rife2-hello.git synced 2025-04-25 23:37:12 -07:00

Minor cleanups

This commit is contained in:
Geert Bevin 2023-02-21 18:20:14 -05:00
parent e02ed25b5a
commit 0d3f587bb4

View file

@ -39,25 +39,25 @@ import java.util.stream.Collectors;
public class Rife2Plugin implements Plugin<Project> { public class Rife2Plugin implements Plugin<Project> {
@Override @Override
public void apply(Project project) { public void apply(Project project) {
PluginContainer plugins = project.getPlugins(); var plugins = project.getPlugins();
plugins.apply("java"); plugins.apply("java");
JavaPluginExtension javaPluginExtension = project.getExtensions().getByType(JavaPluginExtension.class); var javaPluginExtension = project.getExtensions().getByType(JavaPluginExtension.class);
Rife2Extension rife2Extension = createRife2Extension(project, javaPluginExtension); var rife2Extension = createRife2Extension(project, javaPluginExtension);
ConfigurationContainer configurations = project.getConfigurations(); var configurations = project.getConfigurations();
DependencyHandler dependencyHandler = project.getDependencies(); var dependencyHandler = project.getDependencies();
Configuration rife2Configuration = createRife2Configuration(configurations, dependencyHandler, rife2Extension); var rife2Configuration = createRife2Configuration(configurations, dependencyHandler, rife2Extension);
Configuration rife2CompilerClasspath = createRife2CompilerClasspathConfiguration(configurations, rife2Configuration); var rife2CompilerClasspath = createRife2CompilerClasspathConfiguration(configurations, rife2Configuration);
Configuration rife2AgentClasspath = createRife2AgentConfiguration(configurations, dependencyHandler, rife2Extension); var rife2AgentClasspath = createRife2AgentConfiguration(configurations, dependencyHandler, rife2Extension);
configurations.getByName(JavaPlugin.IMPLEMENTATION_CONFIGURATION_NAME).extendsFrom(rife2Configuration); configurations.getByName(JavaPlugin.IMPLEMENTATION_CONFIGURATION_NAME).extendsFrom(rife2Configuration);
TaskProvider<PrecompileTemplates> precompileTemplates = registerPrecompileTemplateTask(project, rife2CompilerClasspath); var precompileTemplates = registerPrecompileTemplateTask(project, rife2CompilerClasspath);
addTemplatesToMainOutput(precompileTemplates, javaPluginExtension); addTemplatesToMainOutput(precompileTemplates, javaPluginExtension);
configureAgent(project, plugins, rife2Extension, rife2AgentClasspath); configureAgent(project, plugins, rife2Extension, rife2AgentClasspath);
project.getTasks().register("uberJar", Jar.class, jar -> { project.getTasks().register("uberJar", Jar.class, jar -> {
BasePluginExtension base = project.getExtensions().getByType(BasePluginExtension.class); var base = project.getExtensions().getByType(BasePluginExtension.class);
jar.getArchiveBaseName().convention(project.provider(() -> base.getArchivesName().get() + "-uber")); jar.getArchiveBaseName().convention(project.provider(() -> base.getArchivesName().get() + "-uber"));
jar.setDuplicatesStrategy(DuplicatesStrategy.EXCLUDE); jar.setDuplicatesStrategy(DuplicatesStrategy.EXCLUDE);
jar.into("webapp", spec -> spec.from("src/main/webapp")); jar.into("webapp", spec -> spec.from("src/main/webapp"));
Configuration runtimeClasspath = project.getConfigurations().getByName(JavaPlugin.RUNTIME_CLASSPATH_CONFIGURATION_NAME); var runtimeClasspath = project.getConfigurations().getByName(JavaPlugin.RUNTIME_CLASSPATH_CONFIGURATION_NAME);
jar.from(javaPluginExtension.getSourceSets().getByName(SourceSet.MAIN_SOURCE_SET_NAME).getOutput()); jar.from(javaPluginExtension.getSourceSets().getByName(SourceSet.MAIN_SOURCE_SET_NAME).getOutput());
jar.from(runtimeClasspath.getElements().map(e -> e.stream().map(project::zipTree).collect(Collectors.toList()))); jar.from(runtimeClasspath.getElements().map(e -> e.stream().map(project::zipTree).collect(Collectors.toList())));
plugins.withId("application", unused -> jar.manifest(manifest -> plugins.withId("application", unused -> jar.manifest(manifest ->
@ -78,7 +78,7 @@ public class Rife2Plugin implements Plugin<Project> {
} }
private static Rife2Extension createRife2Extension(Project project, JavaPluginExtension javaPluginExtension) { private static Rife2Extension createRife2Extension(Project project, JavaPluginExtension javaPluginExtension) {
Rife2Extension rife2 = project.getExtensions().create("rife2", Rife2Extension.class); var rife2 = project.getExtensions().create("rife2", Rife2Extension.class);
rife2.getUseAgent().convention(false); rife2.getUseAgent().convention(false);
rife2.getUberMainClass().convention(project.getExtensions().getByType(JavaApplication.class).getMainClass() rife2.getUberMainClass().convention(project.getExtensions().getByType(JavaApplication.class).getMainClass()
.map(mainClass -> mainClass + "Uber")); .map(mainClass -> mainClass + "Uber"));
@ -102,19 +102,21 @@ public class Rife2Plugin implements Plugin<Project> {
conf.setCanBeConsumed(false); conf.setCanBeConsumed(false);
conf.setCanBeResolved(true); conf.setCanBeResolved(true);
conf.setTransitive(false); conf.setTransitive(false);
conf.getDependencies().addLater(rife2Extension.getVersion().map(version -> dependencyHandler.create("com.uwyn.rife2:rife2:" + version + ":agent"))); conf.getDependencies().addLater(rife2Extension.getVersion()
.map(version -> dependencyHandler.create("com.uwyn.rife2:rife2:" + version + ":agent")));
}); });
} }
private static Configuration createRife2Configuration(ConfigurationContainer configurations, private static Configuration createRife2Configuration(ConfigurationContainer configurations,
DependencyHandler dependencyHandler, DependencyHandler dependencyHandler,
Rife2Extension rife2Extension) { Rife2Extension rife2Extension) {
Configuration config = configurations.create("rife2", conf -> { var config = configurations.create("rife2", conf -> {
conf.setDescription("The RIFE2 framework dependencies"); conf.setDescription("The RIFE2 framework dependencies");
conf.setCanBeConsumed(false); conf.setCanBeConsumed(false);
conf.setCanBeResolved(false); conf.setCanBeResolved(false);
}); });
config.getDependencies().addLater(rife2Extension.getVersion().map(version -> dependencyHandler.create("com.uwyn.rife2:rife2:" + version))); config.getDependencies().addLater(rife2Extension.getVersion()
.map(version -> dependencyHandler.create("com.uwyn.rife2:rife2:" + version)));
return config; return config;
} }