List allAvailableList = new ArrayList(); factoriesToBugAbbrev = new HashMap();
List<DetectorFactory> allAvailableList = new ArrayList<DetectorFactory>(); factoriesToBugAbbrev = new HashMap<DetectorFactory, String>();
	private void populateAvailableRulesTable(IProject project) {		List allAvailableList = new ArrayList();		factoriesToBugAbbrev = new HashMap();		Iterator iterator =			DetectorFactoryCollection.instance().factoryIterator();		while (iterator.hasNext()) {			DetectorFactory factory = (DetectorFactory) iterator.next();						// Only configure non-hidden factories			if (factory.isHidden()) {				//System.out.println("Factory " + factory.getFullName() + " is hidden");				continue;			}						// Only add items for detectors which report in currently-enabled categories			if (!reportsInEnabledCategory(factory))				continue;						allAvailableList.add(factory);			addBugsAbbreviation(factory);		}		availableFactoriesTableViewer.setInput(allAvailableList);		TableItem[] itemList =			availableFactoriesTableViewer.getTable().getItems();		for (int i = 0; i < itemList.length; i++) {			DetectorFactory rule = (DetectorFactory) itemList[i].getData();			//set enabled if defined in configuration			if (currentUserPreferences.isDetectorEnabled(rule)) {				itemList[i].setChecked(true);			}						// Listen for check/uncheck events, update user preferences accordingly			itemList[i].addListener(SWT.Selection, new Listener() {				public void handleEvent(Event event) {					System.out.println("Detector selection changed!");					syncUserPreferencesWithTable();				}			});		}	}