Skip to content

Commit cddfa28

Browse files
author
Federico Fissore
committed
Boards Manager: package index file with name starting with "test_package_" are preserved
1 parent 9d65b41 commit cddfa28

File tree

3 files changed

+29
-2
lines changed

3 files changed

+29
-2
lines changed

arduino-core/src/cc/arduino/contributions/packages/ContributionsIndexer.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ public void parseIndex() throws Exception {
7575
}
7676
index = parseIndex(defaultIndexFile);
7777

78-
File[] indexFiles = preferencesFolder.listFiles(new PackageIndexFilenameFilter(Constants.DEFAULT_INDEX_FILE_NAME));
78+
File[] indexFiles = preferencesFolder.listFiles(new TestPackageIndexFilenameFilter(new PackageIndexFilenameFilter(Constants.DEFAULT_INDEX_FILE_NAME)));
7979

8080
for (File indexFile : indexFiles) {
8181
ContributionsIndex contributionsIndex = parseIndex(indexFile);

arduino-core/src/cc/arduino/contributions/packages/PackageIndexFilenameFilter.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,6 @@ public PackageIndexFilenameFilter(String defaultPackageIndexFileName) {
1313

1414
@Override
1515
public boolean accept(File file, String name) {
16-
return !defaultPackageIndexFileName.equals(name) && name.startsWith("package_") && name.endsWith("_index.json");
16+
return new File(file, name).isFile() && !defaultPackageIndexFileName.equals(name) && name.startsWith("package_") && name.endsWith("_index.json");
1717
}
1818
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
package cc.arduino.contributions.packages;
2+
3+
import java.io.File;
4+
import java.io.FilenameFilter;
5+
6+
public class TestPackageIndexFilenameFilter implements FilenameFilter {
7+
8+
private final FilenameFilter parent;
9+
10+
public TestPackageIndexFilenameFilter(FilenameFilter parent) {
11+
this.parent = parent;
12+
}
13+
14+
public TestPackageIndexFilenameFilter() {
15+
this(null);
16+
}
17+
18+
@Override
19+
public boolean accept(File file, String name) {
20+
boolean result = false;
21+
if (parent != null) {
22+
result = parent.accept(file, name);
23+
}
24+
result = result || (new File(file, name).isFile() && name.startsWith("test_package_") && name.endsWith("_index.json"));
25+
return result;
26+
}
27+
}

0 commit comments

Comments
 (0)