This is an automated email from the ASF dual-hosted git repository. lkishalmi pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/netbeans.git
The following commit(s) were added to refs/heads/master by this push: new e934db6 Prepare the code that GradleFiles.getFile() can return null e934db6 is described below commit e934db6a4003f312a6cda992b7741965782545eb Author: Laszlo Kishalmi <laszlo.kisha...@gmail.com> AuthorDate: Wed Mar 16 12:36:24 2022 -0700 Prepare the code that GradleFiles.getFile() can return null --- .../org/netbeans/modules/gradle/NbGradleProjectImpl.java | 5 ++++- .../src/org/netbeans/modules/gradle/spi/GradleFiles.java | 13 ++++++++++--- .../org/netbeans/modules/gradle/spi/GradleFilesTest.java | 11 +++++++++++ 3 files changed, 25 insertions(+), 4 deletions(-) diff --git a/extide/gradle/src/org/netbeans/modules/gradle/NbGradleProjectImpl.java b/extide/gradle/src/org/netbeans/modules/gradle/NbGradleProjectImpl.java index 14c92c7..0986a57 100644 --- a/extide/gradle/src/org/netbeans/modules/gradle/NbGradleProjectImpl.java +++ b/extide/gradle/src/org/netbeans/modules/gradle/NbGradleProjectImpl.java @@ -211,7 +211,10 @@ public final class NbGradleProjectImpl implements Project { GradleFiles gf = getGradleFiles(); Set<File> ret = new LinkedHashSet<>(); for (GradleFiles.Kind kind : GradleFiles.Kind.PROJECT_FILES) { - ret.add(gf.getFile(kind)); + File f = gf.getFile(kind); + if (f != null) { + ret.add(f); + } } return ret; } diff --git a/extide/gradle/src/org/netbeans/modules/gradle/spi/GradleFiles.java b/extide/gradle/src/org/netbeans/modules/gradle/spi/GradleFiles.java index 1da428c..788aea7 100644 --- a/extide/gradle/src/org/netbeans/modules/gradle/spi/GradleFiles.java +++ b/extide/gradle/src/org/netbeans/modules/gradle/spi/GradleFiles.java @@ -105,7 +105,7 @@ public final class GradleFiles implements Serializable { List<File> ret = new ArrayList<>(3); for (Kind kind:Kind.PROPERTIES){ File f = getFile(kind); - if (f.exists()){ + if ((f != null) && f.exists()){ ret.add(f); } } @@ -175,6 +175,12 @@ public final class GradleFiles implements Serializable { return settingsScript; } + /** + * The list of the existing property files in the current project in + * the order of: user, root, and project properties. + * + * @return the list of existing project property files. + */ public List<File> getPropertyFiles() { return searchPropertyFiles(); } @@ -261,10 +267,11 @@ public final class GradleFiles implements Serializable { } /** - * Returns the possible file names for a Gradle project file, + * Returns the possible file names for a Gradle project file, or + * {@code null} if that kind is not accepted in the project context. * * @param kind The role of the project file. - * @return + * @return a possible project file or {@code null} */ public File getFile(Kind kind) { if (isBuildSrcProject()) { diff --git a/extide/gradle/test/unit/src/org/netbeans/modules/gradle/spi/GradleFilesTest.java b/extide/gradle/test/unit/src/org/netbeans/modules/gradle/spi/GradleFilesTest.java index 4487f2a..5e1ff5e 100644 --- a/extide/gradle/test/unit/src/org/netbeans/modules/gradle/spi/GradleFilesTest.java +++ b/extide/gradle/test/unit/src/org/netbeans/modules/gradle/spi/GradleFilesTest.java @@ -433,6 +433,17 @@ public class GradleFilesTest { assertEquals(null, gf.getFile(GradleFiles.Kind.BUILD_SRC)); } + @Test + public void testGetBuildSrcProperties() throws IOException { + root.newFile("settings.gradle"); + + File buildSrc = root.newFolder("buildSrc"); + GradleFiles gf = new GradleFiles(buildSrc); + assertTrue(gf.isBuildSrcProject()); + int expectedSize = gf.getFile(GradleFiles.Kind.USER_PROPERTIES).exists() ? 1 : 0; + assertEquals(expectedSize, gf.getPropertyFiles().size()); + } + /** * Test of getProjectFiles method, of class GradleFiles. */ --------------------------------------------------------------------- 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