Skip to content

Commit 7008f6c

Browse files
committed
ContributionsIndexer now has bundled hardware path as a field
1 parent 9669d67 commit 7008f6c

File tree

3 files changed

+17
-12
lines changed

3 files changed

+17
-12
lines changed

Diff for: app/src/processing/app/Base.java

+4-2
Original file line numberDiff line numberDiff line change
@@ -344,13 +344,15 @@ public Base(String[] args) throws Exception {
344344
PreferencesData.save();
345345

346346
if (parser.isInstallBoard()) {
347-
ContributionsIndexer indexer = new ContributionsIndexer(BaseNoGui.getSettingsFolder(), BaseNoGui.getPlatform(), new GPGDetachedSignatureVerifier());
347+
ContributionsIndexer indexer = new ContributionsIndexer(
348+
BaseNoGui.getSettingsFolder(), BaseNoGui.getHardwareFolder(),
349+
BaseNoGui.getPlatform(), new GPGDetachedSignatureVerifier());
348350
ProgressListener progressListener = new ConsoleProgressListener();
349351

350352
List<String> downloadedPackageIndexFiles = contributionInstaller.updateIndex(progressListener);
351353
contributionInstaller.deleteUnknownFiles(downloadedPackageIndexFiles);
352354
indexer.parseIndex();
353-
indexer.syncWithFilesystem(BaseNoGui.getHardwareFolder());
355+
indexer.syncWithFilesystem();
354356

355357
String[] boardToInstallParts = parser.getBoardToInstall().split(":");
356358

Diff for: arduino-core/src/cc/arduino/contributions/packages/ContributionsIndexer.java

+10-8
Original file line numberDiff line numberDiff line change
@@ -66,12 +66,14 @@ public class ContributionsIndexer {
6666
private final File packagesFolder;
6767
private final File stagingFolder;
6868
private final File preferencesFolder;
69+
private final File builtInHardwareFolder;
6970
private final Platform platform;
7071
private final SignatureVerifier signatureVerifier;
7172
private ContributionsIndex index;
7273

73-
public ContributionsIndexer(File preferencesFolder, Platform platform, SignatureVerifier signatureVerifier) {
74+
public ContributionsIndexer(File preferencesFolder, File builtInHardwareFolder, Platform platform, SignatureVerifier signatureVerifier) {
7475
this.preferencesFolder = preferencesFolder;
76+
this.builtInHardwareFolder = builtInHardwareFolder;
7577
this.platform = platform;
7678
this.signatureVerifier = signatureVerifier;
7779
packagesFolder = new File(preferencesFolder, "packages");
@@ -188,22 +190,22 @@ private ContributionsIndex parseIndex(File indexFile) throws IOException {
188190
}
189191
}
190192

191-
public void syncWithFilesystem(File hardwareFolder) throws IOException {
192-
syncBuiltInHardwareFolder(hardwareFolder);
193+
public void syncWithFilesystem() throws IOException {
194+
syncBuiltInHardware();
193195

194-
syncLocalPackagesFolder();
196+
syncLocalPackages();
195197
}
196198

197-
private void syncBuiltInHardwareFolder(File hardwareFolder) throws IOException {
199+
private void syncBuiltInHardware() throws IOException {
198200
if (index == null) {
199201
return;
200202
}
201-
for (File folder : hardwareFolder.listFiles(ONLY_DIRS)) {
203+
for (File folder : builtInHardwareFolder.listFiles(ONLY_DIRS)) {
202204
ContributedPackage pack = index.findPackage(folder.getName());
203205
if (pack != null) {
204206
syncBuiltInPackageWithFilesystem(pack, folder);
205207

206-
File toolsFolder = new File(hardwareFolder, "tools");
208+
File toolsFolder = new File(builtInHardwareFolder, "tools");
207209
if (toolsFolder.isDirectory()) {
208210
for (File toolFolder : toolsFolder.listFiles(ONLY_DIRS)) {
209211
File builtInToolsMetadata = new File(toolFolder, "builtin_tools_versions.txt");
@@ -231,7 +233,7 @@ private void syncBuiltInPackageWithFilesystem(ContributedPackage pack, File hard
231233
}
232234
}
233235

234-
private void syncLocalPackagesFolder() {
236+
private void syncLocalPackages() {
235237
if (!packagesFolder.isDirectory()) {
236238
return;
237239
}

Diff for: arduino-core/src/processing/app/BaseNoGui.java

+3-2
Original file line numberDiff line numberDiff line change
@@ -608,7 +608,8 @@ static public void initLogger() {
608608
}
609609

610610
static public void initPackages() throws Exception {
611-
indexer = new ContributionsIndexer(BaseNoGui.getSettingsFolder(), BaseNoGui.getPlatform(), new GPGDetachedSignatureVerifier());
611+
indexer = new ContributionsIndexer(getSettingsFolder(), getHardwareFolder(), getPlatform(),
612+
new GPGDetachedSignatureVerifier());
612613
File indexFile = indexer.getIndexFile("package_index.json");
613614
File defaultPackageJsonFile = new File(getContentFile("dist"), "package_index.json");
614615
if (!indexFile.isFile() || (defaultPackageJsonFile.isFile() && defaultPackageJsonFile.lastModified() > indexFile.lastModified())) {
@@ -637,7 +638,7 @@ static public void initPackages() throws Exception {
637638
FileUtils.deleteIfExists(indexSignatureFile);
638639
throw e;
639640
}
640-
indexer.syncWithFilesystem(getHardwareFolder());
641+
indexer.syncWithFilesystem();
641642

642643
packages = new LinkedHashMap<String, TargetPackage>();
643644
loadHardware(getHardwareFolder());

0 commit comments

Comments
 (0)