Bug 291755 [Filters] Filters implementation and API cleanup
This bug is raised to track reviewing and cleanup of filters API and implementation.
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/misc/CompoundResourceFilter.java
private static final String T_FILTERS = "filters"; 
	protected IFileInfoFilter instantiate(IProject project,
			IResourceFilter filter) {
		IFilterDescriptor desc = project.getWorkspace().getFilterDescriptor(
				filter.getId());
		if (desc != null)
			return desc.getFactory()
					.instantiate(project, filter.getArguments());
		return null;
	}
	private static final String T_FILTER = "filter"; 
	private static final String T_TYPE = "type"; 
	private static final String T_ID = "id"; 
	private static final String T_ARGUMENTS = "arguments"; 
	/**
	 * Unserialize the filters stored in a memento
	 * 
	 * @param project
	 * @param memento
	 * @return the filter array
	 */
	public static IResourceFilter[] unserialize(final IProject project,
			String memento) {
		LinkedList filters = new LinkedList();
		XMLMemento mementoObject = null;
		try {