private static void processLoadProject(String dataStr, Object key){
		Project curProject = null;
		ArrayList<Project> myProjs = new ArrayList<Project>();
		
		String[] data = dataStr.trim().split("\n");

		for (String line : data) {
			String[] parts = line.split("\t");
			parts[parts.length-1] = parts[parts.length-1].trim(); //Trim off any whitespace from the last part split, depending on the loading method and file storage mechanism, this can cause issues.
			
			if (parts[0].equals("PROJECT")) {
				if (curProject != null)
					myProjs.add(curProject);

				if( key instanceof Integer)
					curProject = new Project(parts[1], (Integer)key);
				else if( key instanceof String)
					curProject = new Project(parts[1], (String)key);
			} else if (parts[0].equals("FILE")) {
				
				if( key instanceof Integer)
					curProject.addFile(new SymitarFile((Integer)key,parts[2].trim(), FileType.valueOf(parts[1])));
				else if ( key instanceof String )
					curProject.addFile(new SymitarFile((String)key,parts[2].trim(), FileType.valueOf(parts[1])));
			}
		}

		if (curProject != null)
			myProjs.add(curProject);

		projects.put(key, myProjs);
	}