private String downloadFileFromUrl(URL downloadUrl) throws IOException{
		String filename = "gtfs.zip";
		File downloadedFolder = new File("GTFS_Temp");
		String downloadedLocation = downloadedFolder.getAbsolutePath() + System.getProperty("file.separator"); //"\\"; //temporary folder to store downloaded files
		String full_path = downloadedLocation+filename;
		try {
			downloadedFolder.mkdir(); //create the directory if not already created
		} catch (SecurityException ex) {
			_log.info("Unable to create temporary directory to download the GTFS data to. \n" + ex.getLocalizedMessage());
			return null;
		}
		if (downloadedFolder.listFiles().length > 0) { //if the folder has old files in it
			for (File f : downloadedFolder.listFiles()) {
				f.delete(); //delete all the old files
			}
		}

		BufferedInputStream in = new BufferedInputStream(downloadUrl.openStream());

		byte[] buffer = new byte[1024];
		int count;

		FileOutputStream out = new FileOutputStream(full_path);

		while((count = in.read(buffer, 0, 1024)) > 0) {
			out.write(buffer, 0, count);
		}

		out.close();

		return full_path;
	}