This is an automated email from the ASF dual-hosted git repository. neilcsmith pushed a commit to branch delivery in repository https://gitbox.apache.org/repos/asf/netbeans.git
The following commit(s) were added to refs/heads/delivery by this push: new 995df87 [NETBEANS-6117] Fix Gradle project load operation in Wizards new ced2db4 Merge pull request #3480 from lkishalmi/NETBEANS-6117 995df87 is described below commit 995df87baf6bf7f84b21f42d2645310b329140c9 Author: Laszlo Kishalmi <laszlo.kisha...@gmail.com> AuthorDate: Wed Jan 19 13:54:55 2022 -0800 [NETBEANS-6117] Fix Gradle project load operation in Wizards --- .../gradle/loaders/AbstractProjectLoader.java | 2 +- .../gradle/spi/newproject/TemplateOperation.java | 40 +++++++++++++--------- 2 files changed, 25 insertions(+), 17 deletions(-) diff --git a/extide/gradle/src/org/netbeans/modules/gradle/loaders/AbstractProjectLoader.java b/extide/gradle/src/org/netbeans/modules/gradle/loaders/AbstractProjectLoader.java index a6ccb78..153bbac 100644 --- a/extide/gradle/src/org/netbeans/modules/gradle/loaders/AbstractProjectLoader.java +++ b/extide/gradle/src/org/netbeans/modules/gradle/loaders/AbstractProjectLoader.java @@ -71,7 +71,7 @@ public abstract class AbstractProjectLoader { public ReloadContext(NbGradleProjectImpl project, NbGradleProject.Quality aim, GradleCommandLine cmd, String description) { this.project = project; - this.previous = project.isGradleProjectLoaded() ? project.getGradleProject() : FallbackProjectLoader.createFallbackProject(project.getGradleFiles()); + this.previous = project.isGradleProjectLoaded() ? project.projectWithQuality(null, FALLBACK, false, false) : FallbackProjectLoader.createFallbackProject(project.getGradleFiles()); this.aim = aim; this.cmd = cmd; this.description = description; diff --git a/extide/gradle/src/org/netbeans/modules/gradle/spi/newproject/TemplateOperation.java b/extide/gradle/src/org/netbeans/modules/gradle/spi/newproject/TemplateOperation.java index 0af2084..c47db99 100644 --- a/extide/gradle/src/org/netbeans/modules/gradle/spi/newproject/TemplateOperation.java +++ b/extide/gradle/src/org/netbeans/modules/gradle/spi/newproject/TemplateOperation.java @@ -50,6 +50,8 @@ import static org.netbeans.modules.gradle.spi.newproject.Bundle.*; import java.util.Collections; import java.util.LinkedHashSet; import java.util.Set; +import java.util.logging.Level; +import java.util.logging.Logger; import org.netbeans.api.project.Project; import org.netbeans.api.project.ProjectManager; import org.netbeans.modules.gradle.GradleProjectLoader; @@ -65,6 +67,8 @@ import org.openide.util.NbBundle; * @author Laszlo Kishalmi */ public final class TemplateOperation implements Runnable { + private static final Logger LOG = Logger.getLogger(TemplateOperation.class.getName()); + public interface ProjectConfigurator { void configure(Project project); } @@ -108,6 +112,7 @@ public final class TemplateOperation implements Runnable { if (handle != null) { handle.progress(step.getMessage(), work++); } + LOG.log(Level.FINE, "Executing Gradle Project Template Operation {0}", step); Set<FileObject> filesToOpen = step.execute(); if (filesToOpen != null) { importantFiles.addAll(filesToOpen); @@ -260,8 +265,7 @@ public final class TemplateOperation implements Runnable { public Set<FileObject> execute() { GradleConnector gconn = GradleConnector.newConnector(); target.mkdirs(); - ProjectConnection pconn = gconn.forProjectDirectory(target).connect(); - try { + try (ProjectConnection pconn = gconn.forProjectDirectory(target).connect()) { List<String> args = new ArrayList<>(); args.add("init"); // gradle init --type java-application --test-framework junit-jupiter --dsl groovy --package com.example --project-name example @@ -293,8 +297,6 @@ public final class TemplateOperation implements Runnable { } catch (GradleConnectionException | IllegalStateException ex) { // Well for some reason we were not able to load Gradle. // Ignoring that for now - } finally { - pconn.close(); } return Collections.singleton(FileUtil.toFileObject(target)); } @@ -320,7 +322,14 @@ public final class TemplateOperation implements Runnable { steps.add(new PreloadProject(projectDir)); } - private static class CreateDirStep implements OperationStep { + private static abstract class BaseOperationStep implements OperationStep { + @Override + public final String toString() { + return "Step: " + getMessage(); + } + } + + private static final class CreateDirStep extends BaseOperationStep { final String message; final File dir; @@ -344,9 +353,10 @@ public final class TemplateOperation implements Runnable { } return null; } + } - private static class ConfigureProjectStep implements OperationStep { + private static final class ConfigureProjectStep extends BaseOperationStep { final File dir; final ProjectConfigurator configurator; @@ -367,9 +377,10 @@ public final class TemplateOperation implements Runnable { try { FileObject projectDir = FileUtil.toFileObject(dir); Project project = ProjectManager.getDefault().findProject(projectDir); + ProjectTrust.getDefault().trustProject(project); NbGradleProjectImpl impl = project != null ? project.getLookup().lookup(NbGradleProjectImpl.class): null; if (impl != null) { - impl.fireProjectReload(true); + impl.projectWithQuality(null, Quality.FULL, false, false); configurator.configure(project); } @@ -380,7 +391,7 @@ public final class TemplateOperation implements Runnable { } } - private static class PreloadProject implements OperationStep { + private static final class PreloadProject extends BaseOperationStep { final File dir; @@ -410,7 +421,7 @@ public final class TemplateOperation implements Runnable { } project = ProjectManager.getDefault().findProject(projectDir); if (project != null) { - //Let's trust the generate project + //Let's trust the generated project ProjectTrust.getDefault().trustProject(project); NbGradleProjectImpl nbProject = project.getLookup().lookup(NbGradleProjectImpl.class); if (nbProject != null) { @@ -430,7 +441,7 @@ public final class TemplateOperation implements Runnable { } - private static class InitGradleWrapper implements OperationStep { + private static final class InitGradleWrapper extends BaseOperationStep { final File projectDir; @@ -447,21 +458,18 @@ public final class TemplateOperation implements Runnable { @Override public Set<FileObject> execute() { GradleConnector gconn = GradleConnector.newConnector(); - ProjectConnection pconn = gconn.forProjectDirectory(projectDir).connect(); - try { + try (ProjectConnection pconn = gconn.forProjectDirectory(projectDir).connect()) { pconn.newBuild().withArguments("--offline").forTasks("wrapper").run(); //NOI18N } catch (GradleConnectionException | IllegalStateException ex) { // Well for some reason we were not able to load Gradle. // Ignoring that for now - } finally { - pconn.close(); } return null; } } - private static class CopyFromFileTemplate implements OperationStep { + private static final class CopyFromFileTemplate extends BaseOperationStep { final File target; final Map<String, ? extends Object> tokens; final boolean important; @@ -524,7 +532,7 @@ public final class TemplateOperation implements Runnable { } - private static class CopyFromTemplate implements OperationStep { + private static final class CopyFromTemplate extends BaseOperationStep { final File target; final Map<String, ? extends Object> tokens; final boolean important; --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@netbeans.apache.org For additional commands, e-mail: commits-h...@netbeans.apache.org For further information about the NetBeans mailing lists, visit: https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists