package ij.plugin;
import ij.*;
import ij.gui.*;
import ij.util.Tools;
import java.io.*;
import java.net.*;
import java.util.*;
import java.lang.reflect.*;
/** This plugin implements the Help/Update ImageJ command. */
public class ImageJ_Updater implements PlugIn {
private static final String URL = "http://wsr.imagej.net";
private String notes;
public void run(String arg) {
if (arg.equals("menus")) {
updateMenus();
return;
}
if (IJ.getApplet()!=null)
return;
URL url = getClass().getResource("/ij/IJ.class");
String ij_jar = url == null ? null : url.toString().replaceAll("%20", " ");
if (ij_jar==null || !ij_jar.startsWith("jar:file:")) {
error("Could not determine location of ij.jar");
return;
}
int exclamation = ij_jar.indexOf('!');
ij_jar = ij_jar.substring(9, exclamation);
if (IJ.debugMode) IJ.log("Updater (jar loc): "+ij_jar);
File file = new File(ij_jar);
if (!file.exists()) {
error("File not found: "+file.getPath());
return;
}
if (!file.canWrite()) {
String msg = "No write access: "+file.getPath();
error(msg);
return;
}
String[] list = openUrlAsList(URL+"/jars/list.txt");
if (list==null || list.length==0) {
error("Error opening "+URL+"/jars/list.txt");
return;
}
int count = list.length + 2;
String[] versions = new String[count];
String[] urls = new String[count];
versions[0] = list[0];
urls[0] = URL+"/jars/ij.jar";
for (int i=1; i
Ads help maintain this website.