Thread.currentThread().interrupt();
interrupt();
	public void run() {		String defaultHost;					if (this.startURI.getPort() > 0) {			defaultHost = this.startURI.getScheme() + HtmlConstants.SCHEME_AND_AUTHORITY_SEPARATOR + this.startURI.getHost() + ":" + this.startURI.getPort();		} else {			defaultHost = this.startURI.getScheme() + HtmlConstants.SCHEME_AND_AUTHORITY_SEPARATOR + this.startURI.getHost();		}				DownloadAndParseFile downloadFile;		boolean isInterrupted = false;				while(!Thread.interrupted() && (this.htmlFileToDownload.isEmpty() == false || this.linkedFileToDownload.isEmpty() == false || this.htmlFileInDownloading.isEmpty() == false || this.linkedFileInDownloading.isEmpty() == false)) {						if (this.currentDLHtml < this.maxDLHtml && this.htmlFileToDownload.isEmpty() == false) {				WebHtmlFile webHtmlFile;				webHtmlFile = this.htmlFileToDownload.get(0);				this.htmlFileToDownload.remove(0);				this.htmlFileInDownloading.add(webHtmlFile);				//start a new download of Html File in a new Thread				downloadFile = new DownloadAndParseFile(this, webHtmlFile, defaultHost, this.destDirectory, detailledModel);				Thread htmlThread = new Thread(downloadFile);				htmlThread.start();				threadList.add(htmlThread);				this.currentDLHtml++;			}						if (this.currentDLLink < this.maxDLLink && this.linkedFileToDownload.isEmpty() == false) {				WebLinkedFile webLinkedFile;				webLinkedFile = this.linkedFileToDownload.get(0);				this.linkedFileToDownload.remove(0);				this.linkedFileInDownloading.add(webLinkedFile);				//start a new download of Linked File in a new Thread				downloadFile = new DownloadAndParseFile(this, webLinkedFile, defaultHost, this.destDirectory, detailledModel);				Thread linkThread = new Thread(downloadFile);				linkThread.start();				threadList.add(linkThread);				this.currentDLLink++;			}						//TODO: tmp, a voir			try {				Thread.sleep(500);			} catch (InterruptedException e) {				Thread.currentThread().interrupt();				isInterrupted = true;			}		}				//TODO: mettre en rouge tous les downloads dans la JTable		if (isInterrupted) {			//Download was cancelled			JOptionPane.showMessageDialog(JHMainFrame.getInstance(), Labels.DOWNLOAD_CANCELLED_LABEL, Labels.DOWNLOAD_STATUS_LABEL, JOptionPane.ERROR_MESSAGE);		} else {				//End of Download			JOptionPane.showMessageDialog(JHMainFrame.getInstance(), Labels.DOWNLOAD_FINISHED_LABEL, Labels.DOWNLOAD_STATUS_LABEL, JOptionPane.INFORMATION_MESSAGE);			}	}