add rest api updateAllPlugins

This commit is contained in:
Eduard Heimbuch
2019-09-27 15:30:21 +02:00
parent 32cb67f92e
commit 281d812065
11 changed files with 99 additions and 2 deletions

View File

@@ -193,7 +193,6 @@ public class DefaultPluginManager implements PluginManager {
.orElseThrow(() -> NotFoundException.notFound(entity(InstalledPlugin.class, name)));
doThrow().violation("plugin is a core plugin and cannot be uninstalled").when(installed.isCore());
markForUninstall(installed);
if (restartAfterInstallation) {
@@ -279,4 +278,19 @@ public class DefaultPluginManager implements PluginManager {
pendingUninstallQueue.forEach(PendingPluginUninstallation::cancel);
pendingInstallQueue.forEach(PendingPluginInstallation::cancel);
}
@Override
public void updateAll(boolean restartAfterInstallation) {
PluginPermissions.manage().check();
for (InstalledPlugin installedPlugin : getInstalled()) {
String pluginName = installedPlugin.getDescriptor().getInformation().getName();
if (isUpdatable(pluginName)) {
install(pluginName, false);
}
if (restartAfterInstallation) {
restart("update all plugin");
}
}
}
}