@Override
	public void actionPerformed(ActionEvent e) {
		GuiThreatSelection guiThreatSelection =
				GuiThreatSelection.getInstance(this);
		List<ThreatClass> threats = guiThreatSelection.getSelectedThreats();
		if (guiThreatSelection.getComponentMenuItem() instanceof MenuItemApplet) {
			String url = JOptionPane.showInputDialog("Enter URL below.");
			if (url != null) {
				List<Archive> archives = new WebPage(url).getArchives();
				if (archives.size() > 0)
					for (Archive archive : archives)
						guiThreatSelection.getJScannerInstance().print(
								new ArchiveScanner(archive, threats)
								.getResults());
				else
					guiThreatSelection.getJScannerInstance().print(
							"Could not find any archives on: " + url);
			}
		} else {
			Archive archive = new FileChooserArchive(this).getSelectedArchive();
			if (archive != null)
				guiThreatSelection.getJScannerInstance().print(
						new ArchiveScanner(archive, threats).getResults());
		}
		guiThreatSelection.dispose();
		System.gc();
	}