public NessusClientData downloadReport(String uuid, String path) throws ParserConfigurationException, SAXException  {
		String c = "/file/report/download";
		if(this.url.endsWith("/"))
			c = c.substring(1);
		
		NessusClientData scan = null;
		
		/*
		 * Get a client, setup the POST, and execute.
		 */
		HttpPost post = new HttpPost(String.format("%s%s", this.url, c));
		post.addHeader("User-Agent", DEFAULT_USER_AGENT);
		
		List <NameValuePair> nvps = new ArrayList <NameValuePair>();
    nvps.add(new BasicNameValuePair("seq", r() +""));
    nvps.add(new BasicNameValuePair("report", uuid));
    post.setEntity(new UrlEncodedFormEntity(nvps, Consts.UTF_8));
    
		HttpClient client = this.getClient();
		
		try  {
	    log.finest(String.format("[%s] Executing POST.", post.getURI()));
			HttpResponse resp = client.execute(post);
	    
			try  {
				HttpEntity entity = resp.getEntity();
				
				if(resp.getStatusLine().getStatusCode() == 200)  {
					InputStream in = entity.getContent();
					log.finest(String.format("[%s] Received HTTP code %d: %dbytes (%s)", 
							post.getURI(), 
							resp.getStatusLine().getStatusCode(), 
							entity.getContentLength(), 
							entity.getContentType().getValue()));
					
					File file = new File(path);
					BufferedWriter writer = new BufferedWriter(new FileWriter(file));
					BufferedReader reader = new BufferedReader(new InputStreamReader(in));
					String line = null;
					while((line = reader.readLine()) != null)  {
						writer.write(line);
						writer.flush();
					}
					writer.close();
					
					scan = NessusClientData.parse(file);
					EntityUtils.consumeQuietly(entity);
					
				}else{
					log.warning(String.format("[%s] Received HTTP code %d. Could not download report.", post.getURI(), resp.getStatusLine().getStatusCode()));
				}
			
			}catch(IOException e)  {
				log.warning(String.format("[%s] Could not download report: %s", post.getURI(), e.getMessage()));
			}
			
		}catch(IOException e)  {
			log.warning(String.format("[%s] Could not download report: %s", post.getURI(), e.getMessage()));
		}
		
		return scan;
	}