Skip to content

Commit 7b609e4

Browse files
committed
Update everything to use SuperLocalPluginTracker
1 parent cf0c4e7 commit 7b609e4

15 files changed

+560
-568
lines changed

src/main/java/org/hydev/mcpm/client/DatabaseManager.java

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package org.hydev.mcpm.client;
22

3-
import org.hydev.mcpm.client.database.tracker.PluginTracker;
3+
import org.hydev.mcpm.client.database.tracker.SuperPluginTracker;
44
import org.hydev.mcpm.client.search.SearchPackagesBoundary;
55
import org.hydev.mcpm.client.search.SearchPackagesInput;
66
import org.hydev.mcpm.client.search.SearchPackagesResult;
@@ -15,10 +15,10 @@
1515
* (Goal: avoid the dependency and cluster of parameters to connect to database).
1616
*/
1717
public class DatabaseManager {
18-
private final PluginTracker localPluginTracker;
18+
private final SuperPluginTracker localPluginTracker;
1919
private final SearchPackagesBoundary searchInteractor;
2020

21-
public DatabaseManager(PluginTracker tracker, SearchPackagesBoundary searcher) {
21+
public DatabaseManager(SuperPluginTracker tracker, SearchPackagesBoundary searcher) {
2222
this.localPluginTracker = tracker;
2323
this.searchInteractor = searcher;
2424
}
@@ -76,10 +76,10 @@ public boolean checkPluginInstalledByVersion(PluginVersion pluginVersion) {
7676
*
7777
* @param pluginVersion The version of the installed plugin
7878
* */
79-
public void addManualInstalled(PluginVersion pluginVersion, boolean isManuallyInstalled) {
80-
String pluginName = pluginVersion.meta().name();
81-
localPluginTracker.addEntry(pluginName, isManuallyInstalled || localPluginTracker.listManuallyInstalled()
82-
.contains(pluginName));
83-
79+
public void addManualInstalled(long id, PluginVersion pluginVersion, boolean isManuallyInstalled) {
80+
localPluginTracker.addEntry(pluginVersion.meta().name(),
81+
isManuallyInstalled,
82+
pluginVersion.id() + "",
83+
id + "");
8484
}
8585
}

src/main/java/org/hydev/mcpm/client/arguments/ArgsParser.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import net.sourceforge.argparse4j.inf.ArgumentParserException;
66
import org.hydev.mcpm.client.arguments.parsers.CommandHandler;
77
import org.hydev.mcpm.client.arguments.parsers.CommandParser;
8+
import org.hydev.mcpm.utils.ColorLogger;
89

910
import java.io.PrintWriter;
1011
import java.io.StringWriter;
@@ -118,9 +119,9 @@ public static void main(String[] args) {
118119
var parser = CommandsFactory.baseArgsParser();
119120

120121
try {
121-
parser.parse(args, System.out::println);
122+
parser.parse(args, ColorLogger.toStdOut());
122123
} catch (ArgumentParserException e) {
123-
parser.fail(e, System.out::println);
124+
parser.fail(e, ColorLogger.toStdOut());
124125
}
125126
}
126127
}

src/main/java/org/hydev/mcpm/client/arguments/CommandsFactory.java

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,9 @@
2929
import org.hydev.mcpm.client.commands.controllers.UninstallController;
3030
import org.hydev.mcpm.client.commands.controllers.UnloadController;
3131
import org.hydev.mcpm.client.commands.controllers.UpdateController;
32+
import org.hydev.mcpm.client.local.SuperLocalPluginTracker;
3233
import org.hydev.mcpm.client.updater.CheckForUpdatesInteractor;
3334
import org.hydev.mcpm.client.list.ListAllInteractor;
34-
import org.hydev.mcpm.client.local.LocalPluginTracker;
3535
import org.hydev.mcpm.client.matcher.MatchPluginsInteractor;
3636
import org.hydev.mcpm.client.export.ExportInteractor;
3737
import org.hydev.mcpm.client.local.LocalDatabaseFetcher;
@@ -67,30 +67,31 @@ public static List<CommandParser> baseParsers(boolean isMinecraft) {
6767
var pager = new PageController(20);
6868
var mirror = new MirrorSelector();
6969
var fetcher = new LocalDatabaseFetcher(mirror.selectedMirrorSupplier());
70-
var tracker = new LocalPluginTracker();
70+
// TODO: Change all implementation to SuperLocalPluginTracker
71+
var superTracker = new SuperLocalPluginTracker();
7172
var jarFinder = new LocalJarFinder();
7273

7374
var loader = isMinecraft ? new PluginLoader(jarFinder) : null;
7475
var listener = new ProgressBarFetcherListener();
7576
var searcher = new SearchInteractor(fetcher, listener);
7677
var installer = new InstallInteractor(
7778
new SpigotPluginDownloader(new Downloader(), mirror.selectedMirrorSupplier()),
78-
new DatabaseManager(tracker, searcher),
79+
new DatabaseManager(superTracker, searcher),
7980
loader
8081
);
8182
var matcher = new MatchPluginsInteractor(fetcher, listener);
8283
var updateChecker = new CheckForUpdatesInteractor(matcher);
83-
var updater = new UpdateInteractor(updateChecker, installer, tracker);
84+
var updater = new UpdateInteractor(updateChecker, installer, superTracker);
8485

8586
// Controllers
86-
var exportPluginsController = new ExportPluginsController(new ExportInteractor(tracker));
87-
var listController = new ListController(new ListAllInteractor(tracker));
87+
var exportPluginsController = new ExportPluginsController(new ExportInteractor(superTracker));
88+
var listController = new ListController(new ListAllInteractor(superTracker), updateChecker);
8889
var searchController = new SearchPackagesController(searcher, pager);
8990
var mirrorController = new MirrorController(mirror);
90-
var infoController = new InfoController(tracker);
91+
var infoController = new InfoController(superTracker);
9192

9293
var installController = new InstallController(installer);
93-
var uninstallController = new UninstallController(new Uninstaller(tracker, loader, jarFinder));
94+
var uninstallController = new UninstallController(new Uninstaller(superTracker, loader, jarFinder));
9495
var updateController = new UpdateController(updater);
9596
var refreshController = new RefreshController(fetcher, listener, mirror);
9697

src/main/java/org/hydev/mcpm/client/commands/controllers/InfoController.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import org.apache.commons.lang3.StringUtils;
44
import org.apache.commons.text.WordUtils;
5-
import org.hydev.mcpm.client.database.tracker.PluginTracker;
5+
import org.hydev.mcpm.client.database.tracker.SuperPluginTracker;
66
import org.hydev.mcpm.utils.ColorLogger;
77

88
import javax.annotation.Nullable;
@@ -14,7 +14,7 @@
1414
/**
1515
* Controller for the info use case
1616
*/
17-
public record InfoController(PluginTracker tracker)
17+
public record InfoController(SuperPluginTracker tracker)
1818
{
1919
private static final int LEN_LEFT = 12;
2020
private static final int LEN_RIGHT = 60;

src/main/java/org/hydev/mcpm/client/database/ListAllBoundary.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package org.hydev.mcpm.client.database;
22

3-
import org.hydev.mcpm.client.database.boundary.CheckForUpdatesBoundary;
43
import org.hydev.mcpm.client.models.PluginYml;
4+
import org.hydev.mcpm.client.updater.CheckForUpdatesBoundary;
55

66
import java.util.List;
77

src/main/java/org/hydev/mcpm/client/database/ListAllInteractor.java

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,10 @@
11
package org.hydev.mcpm.client.database;
22

33
import org.apache.commons.lang3.NotImplementedException;
4-
import org.hydev.mcpm.client.database.boundary.CheckForUpdatesBoundary;
5-
import org.hydev.mcpm.client.database.inputs.CheckForUpdatesInput;
6-
import org.hydev.mcpm.client.database.inputs.CheckForUpdatesResult;
7-
import org.hydev.mcpm.client.database.model.PluginVersionState;
84
import org.hydev.mcpm.client.models.PluginYml;
9-
import org.hydev.mcpm.client.models.PluginTrackerModel;
10-
import org.hydev.mcpm.client.database.model.PluginVersionId;
11-
import org.hydev.mcpm.client.database.model.PluginModelId;
12-
import org.hydev.mcpm.client.models.PluginModel;
5+
import org.hydev.mcpm.client.updater.CheckForUpdatesBoundary;
136

147
import java.util.List;
15-
import java.util.ArrayList;
16-
import java.util.Collection;
17-
import java.util.OptionalLong;
188

199
/**
2010
* Implementation to the ListAll functionality

src/main/java/org/hydev/mcpm/client/database/SuperLocalPluginTracker.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,14 @@
44
import com.fasterxml.jackson.databind.JsonMappingException;
55
import com.fasterxml.jackson.databind.ObjectMapper;
66

7-
import org.hydev.mcpm.client.database.boundary.SearchPackagesBoundary;
8-
import org.hydev.mcpm.client.database.inputs.SearchPackagesInput;
9-
import org.hydev.mcpm.client.database.inputs.SearchPackagesType;
10-
import org.hydev.mcpm.client.database.results.SearchPackagesResult;
117
import org.hydev.mcpm.client.models.PluginModel;
128
import org.hydev.mcpm.client.models.PluginVersion;
139
import org.hydev.mcpm.client.models.PluginYml;
1410
import org.hydev.mcpm.client.models.PluginYml.InvalidPluginMetaStructure;
11+
import org.hydev.mcpm.client.search.SearchPackagesBoundary;
12+
import org.hydev.mcpm.client.search.SearchPackagesInput;
13+
import org.hydev.mcpm.client.search.SearchPackagesResult;
14+
import org.hydev.mcpm.client.search.SearchPackagesType;
1515
import org.hydev.mcpm.utils.PluginJarFile;
1616
import org.hydev.mcpm.client.models.PluginTrackerModel;
1717

src/main/java/org/hydev/mcpm/client/database/SuperPluginTracker.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
package org.hydev.mcpm.client.database;
22

3-
import org.hydev.mcpm.client.database.boundary.SearchPackagesBoundary;
43
import org.hydev.mcpm.client.models.PluginModel;
54
import org.hydev.mcpm.client.models.PluginYml;
65
import org.hydev.mcpm.client.models.PluginTrackerModel;
6+
import org.hydev.mcpm.client.search.SearchPackagesBoundary;
77

88
import java.io.File;
99
import java.util.List;

src/main/java/org/hydev/mcpm/client/database/TestLocalPluginTracker.java

Whitespace-only changes.

src/main/java/org/hydev/mcpm/client/database/tracker/PluginTracker.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
/**
1111
* Plugin tracker interface
1212
*/
13+
1314
public interface PluginTracker {
1415
void addEntry(String name, boolean status);
1516

0 commit comments

Comments
 (0)