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

Reply via email to