/* * Copyright (c) 2003-2004 Christopher Lenz and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Common Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/cpl-v10.html * * Contributors: * Christopher Lenz - initial API * * $Id: IProfileManager.java,v 1.1 2004-09-02 18:07:14 jsurfer Exp $ */ package net.sourceforge.phpeclipse.css.core.profiles; import org.eclipse.core.resources.IResource; /** * Manages the CSS profiles. */ public interface IProfileManager { /** * Returns the list of available profiles. * * @return an array containing the descriptors of all available profiles */ IProfileDescriptor[] getProfileDescriptors(); /** * Returns the profile that is selected for the specified resource or * project. * * @param resource the resource for which the profile should be retrieved, * or null to retrieve the default profile as specified * in the plugin preferences * @return the profile */ IProfile getProfile(IResource resource); /** * Sets the profile that should be used for the specified resource. If the * resource is an IProject, the profile will be used as the * default profile for all resources in the project. Otherwise, it will be * used only for the resource. If the resource is null, the * profile will be selected as the global default profile. * * @param resource * @param profileId The ID of the profile */ void setProfile(IResource resource, String profileId); }