77import org .gradle .api .artifacts .dsl .DependencyHandler ;
88import org .gradle .api .artifacts .dsl .RepositoryHandler ;
99import org .gradle .api .logging .Logger ;
10+ import org .gradle .api .plugins .ExtensionContainer ;
1011import org .gradle .api .plugins .JavaLibraryPlugin ;
1112import org .gradle .api .plugins .JavaPluginExtension ;
1213import org .gradle .api .plugins .PluginManager ;
14+ import org .gradle .api .provider .Property ;
1315import org .gradle .api .publish .maven .plugins .MavenPublishPlugin ;
1416import org .gradle .plugins .signing .SigningPlugin ;
17+ import studio .o7 .remora .extensions .DefaultRemoraExtension ;
1518import studio .o7 .remora .extensions .FrameworkExtension ;
1619import studio .o7 .remora .extensions .RemoraExtension ;
1720
@@ -24,21 +27,30 @@ public void apply(Project project) {
2427 applyNecessaryPlugins (logger , project );
2528 applyNecessaryRepositories (logger , project );
2629
27- RemoraExtension extension = project .getExtensions (). create ( "remora" , RemoraExtension . class );
30+ RemoraExtension extension = setupExtension ( logger , project .getExtensions ());
2831
2932 applyNecessaryProjectConfiguration (logger , project , extension );
3033 applyJavaPluginConfiguration (logger , project , extension );
3134
32- applyDependencies (logger , project , extension );
35+ // applyDependencies(logger, project, extension);
3336
3437 // todo
3538 // applyPlaceholderConfiguration(logger, project, extension);
3639 }
3740
41+ public static RemoraExtension setupExtension (@ NonNull Logger logger , @ NonNull ExtensionContainer extensions ) {
42+ logger .info ("Setting up the `remora` extension" );
43+ return extensions .create ("remora" , DefaultRemoraExtension .class );
44+ }
45+
3846 public static void applyNecessaryProjectConfiguration (@ NonNull Logger logger , @ NonNull Project project , @ NonNull RemoraExtension extension ) {
3947 logger .info ("Applying project `group` and `description` configuration" );
40- project .setGroup (extension .getGroupId ());
41- project .setDescription (extension .getDescription ());
48+ project .setGroup (extension .getGroupId ().get ());
49+
50+ Property <String > description = extension .getDescription ();
51+ if (description .isPresent ()) {
52+ project .setDescription (description .get ());
53+ }
4254 }
4355
4456 public static void applyJavaPluginConfiguration (@ NonNull Logger logger , @ NonNull Project project , @ NonNull RemoraExtension extension ) {
@@ -69,23 +81,20 @@ public static void applyNecessaryRepositories(@NonNull Logger logger, @NonNull P
6981 public static void applyDependencies (@ NonNull Logger logger , @ NonNull Project project , @ NonNull RemoraExtension extension ) {
7082 DependencyHandler dependencies = project .getDependencies ();
7183
72- FrameworkExtension framework = extension . getFramework () ;
84+ FrameworkExtension framework = null ;
7385
74- FrameworkExtension .Lombok lombok = framework .getLombok ();
75- if (lombok .isEnabled ()) {
76- logger .info ("Adding dependency `lombok`" );
86+ logger .info ("Adding dependency `lombok`" );
7787
78- String id = "org.projectlombok:lombok:" + lombok . getVersion () ;
88+ String lombokId = "org.projectlombok:lombok:1.18.36" ;
7989
80- dependencies .add ("compileOnly" , id );
81- dependencies .add ("annotationProcessor" , id );
82- }
90+ dependencies .add ("compileOnly" , lombokId );
91+ dependencies .add ("annotationProcessor" , lombokId );
8392
8493 FrameworkExtension .FastUtils fastUtils = framework .getFastUtils ();
8594 if (fastUtils .isEnabled ()) {
8695 logger .info ("Adding dependency `fastUtils`" );
8796
88- String id = "it.unimi.dsi:fastutil:" + lombok .getVersion ();
97+ String id = "it.unimi.dsi:fastutil:" + fastUtils .getVersion ();
8998
9099 dependencies .add (fastUtils .getScope ().getConfigurationName (), id );
91100 }
0 commit comments