/******************************************************************************* * Copyright (c) 2007, 2008 Intel Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Intel Corporation - Initial API and implementation *******************************************************************************/ package org.eclipse.cdt.internal.core.settings.model; import org.eclipse.cdt.core.settings.model.ICResourceDescription; import org.eclipse.cdt.core.settings.model.util.PathSettingsContainer; import org.eclipse.core.runtime.IPath; public class ProviderBasedRcDesHolder extends ResourceDescriptionHolder { private IProxyProvider fProvider; public ProviderBasedRcDesHolder(IProxyProvider provider, PathSettingsContainer pathContainer, boolean includeCurrent) { super(pathContainer, includeCurrent); fProvider = provider; } @Override public ICResourceDescription getResourceDescription(IPath path, boolean exactPath){ fProvider.cacheValues(); return super.getResourceDescription(path, exactPath); } @Override public void addResourceDescription(IPath path, ICResourceDescription des){ fProvider.cacheValues(); super.addResourceDescription(path, des); } @Override public ICResourceDescription[] getResourceDescriptions(final int kind){ fProvider.cacheValues(); return super.getResourceDescriptions(kind); } @Override public ICResourceDescription getCurrentResourceDescription() { fProvider.cacheValues(); return super.getCurrentResourceDescription(); } @Override public ICResourceDescription[] getResourceDescriptions() { fProvider.cacheValues(); return super.getResourceDescriptions(); } @Override public ICResourceDescription[] getDirectChildren() { fProvider.cacheValues(); return super.getDirectChildren(); } // public ICSourceEntry[] calculateSourceEntriesFromPaths(IProject project, IPath[] paths) { // fProvider.cacheValues(); // return super.calculateSourceEntriesFromPaths(project, paths); // } }