CountDown2


import java.applet.*;
import java.awt.*;

class ImageProviderException extends Exception
{
	public ImageProviderException(String string)
	{
		super(string);
	}
}

public class ImageProvider
{
	private Applet applet;
	private MediaTracker mediaTracker;

	public ImageProvider(Applet applet)
	{
		this.applet=applet;
		mediaTracker=new MediaTracker(applet);
	}

	public Image get(String filename) throws InterruptedException,ImageProviderException
	{
		Image image=applet.getImage(applet.getCodeBase(),filename);

		mediaTracker.addImage(image,0);
		mediaTracker.waitForAll();

		if(mediaTracker.isErrorAny())
			throw new ImageProviderException(filename);

		return image;
	}

	public Image[] get(String filename[]) throws InterruptedException,ImageProviderException
	{
		Image[] image=new Image[filename.length];

		for(int n=0;n<image.length;n++)
			mediaTracker.addImage(image[n]=applet.getImage(applet.getCodeBase(),filename[n]),0);

		mediaTracker.waitForAll();

		if(mediaTracker.isErrorAny())
		{
			String filenameString="";

			for(int n=0;n<image.length;n++)
				filenameString+=filename[n]+" ";

			throw new ImageProviderException(filenameString);
		}

		return image;
	}
}

How to Add Java Applets to Your Site

New on the Java Boutique:

New Review:

Time Management Made Easy with the Quartz Enterprise Job Scheduler
Why not just use the Java timer API? This open source scheduling API boasts simplicity, ease-of-integration, a well-rounded feature set, and it's free!

New Applet:

Reverse Complement
Reverse Complement is a simple applet that converts DNA or RNA sequences into three useful formats.

Elsewhere on internet.com:

WebDeveloper Java
Lots of Java information on webdeveloper.com

WDVL Java
Thorough Java resource at the Web Developer's Virtual Library.

ScriptSearch Java
Hundreds of free Java code files to download.

jGuru: Your View of the Java Universe
Customizable portal with online training, FAQs, regular news updates, and tutorials.