Bug 221337 [Markers] MarkerItem has too much API
We are exposing too much as API in MarkerItem. We should only provide getAtttributeValue and the methods that support PATH_ATTRIBUTE and NAME_ATTRIBUTE as they are tricky. Everything else needs to be pushed down to an internal class. We should mention the relevant IMarker constants for those removed.
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/views/markers/CachedMarkerBuilder.java
| IResourceChangeEvent.PRE_BUILD
						| IResourceChangeEvent.POST_BUILD);
	}
	/**
	 * Create a preference listener for any preference updates.
	 */
	private void initializePreferenceListener() {
		IDEWorkbenchPlugin.getDefault().getPreferenceStore()
				.addPropertyChangeListener(new IPropertyChangeListener() {
					/*
					 * (non-Javadoc)
					 * 
					 * @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
					 */
					public void propertyChange(PropertyChangeEvent event) {
						if(event.getProperty().equals(getMementoPreferenceName())){
							rebuildFilters();
						}
							
					}
				});
	}
	/**
	 * Rebuild the list of filters
	 */
	protected void rebuildFilters() {
		filters = null;
		enabledFilters = null;
		scheduleMarkerUpdate();