mirror of
https://github.com/essentials/Essentials.git
synced 2025-08-11 17:15:07 +02:00
Basic automatic updates downloader
This commit is contained in:
@@ -1,9 +1,14 @@
|
||||
package com.earth2me.essentials.update;
|
||||
|
||||
import com.earth2me.essentials.update.tasks.InstallModule;
|
||||
import java.util.Iterator;
|
||||
import java.util.Map.Entry;
|
||||
import java.util.logging.Level;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.plugin.Plugin;
|
||||
|
||||
|
||||
public class UpdatesDownloader extends WorkListener
|
||||
public class UpdatesDownloader extends WorkListener implements Runnable
|
||||
{
|
||||
public UpdatesDownloader(final Plugin plugin, final VersionInfo newVersionInfo)
|
||||
{
|
||||
@@ -12,17 +17,38 @@ public class UpdatesDownloader extends WorkListener
|
||||
|
||||
public void start()
|
||||
{
|
||||
iterator = getNewVersionInfo().getModules().entrySet().iterator();
|
||||
Bukkit.getScheduler().scheduleAsyncDelayedTask(getPlugin(), this);
|
||||
}
|
||||
private transient Iterator<Entry<String, ModuleInfo>> iterator;
|
||||
|
||||
@Override
|
||||
public void run()
|
||||
{
|
||||
if (iterator.hasNext())
|
||||
{
|
||||
final Entry<String, ModuleInfo> entry = iterator.next();
|
||||
if (Bukkit.getPluginManager().getPlugin(entry.getKey()) == null)
|
||||
{
|
||||
run();
|
||||
}
|
||||
else
|
||||
{
|
||||
new InstallModule(this, entry.getKey()).start();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onWorkAbort(String message)
|
||||
public void onWorkAbort(final String message)
|
||||
{
|
||||
throw new UnsupportedOperationException("Not supported yet.");
|
||||
Bukkit.getLogger().log(Level.SEVERE, message);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onWorkDone(String message)
|
||||
public void onWorkDone(final String message)
|
||||
{
|
||||
throw new UnsupportedOperationException("Not supported yet.");
|
||||
Bukkit.getLogger().log(Level.INFO, message);
|
||||
Bukkit.getScheduler().scheduleAsyncDelayedTask(getPlugin(), this);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user