public NOAAHurricaneData(String urlPrefix, String indexURL)
		throws MalformedURLException, IOException
	{
		if(log.isDebugEnabled())
			log.debug("Fetch index from " + indexURL);
		
		this.urlPrefix = urlPrefix;
		indexContent = new WebPage(indexURL).getContents();

		if(log.isDebugEnabled())
			log.debug("Get Storms...");
		if(storms == null){
			storms = new LinkedHashMap<String, String>();
			StringTokenizer st = new StringTokenizer(indexContent, "\n");
			while(st.hasMoreTokens()){
				String line = st.nextToken();
				if(line.matches(".*<a href=\".*.shtml.\">.*</a><br>.*")){
					if(log.isDebugEnabled())
						log.debug("line:" + line);
					String storm = line.replaceAll("^.*<a href=\".*.shtml.\">", "");
					storm = storm.replaceAll("</a><br>.*$", "").replaceAll("^.*  *", "").replaceAll("[*]", "");
					if(log.isDebugEnabled())
						log.debug("storm:" + storm);

					String stormFile = line.replaceAll("^.*<a href=\"", "");
					stormFile = stormFile.replaceAll("[?]\">.*$", "");
					if(log.isDebugEnabled())
						log.debug("storm file:" + stormFile);

					storms.put(storm, stormFile);
				}
			}
		}

	}