1 /******************************************************************************* 2 * Copyright (c) 2000, 2004 IBM Corporation and others. 3 * All rights reserved. This program and the accompanying materials 4 * are made available under the terms of the Common Public License v1.0 5 * which accompanies this distribution, and is available at 6 * http://www.eclipse.org/legal/cpl-v10.html 7 * 8 * Contributors: 9 * IBM Corporation - initial API and implementation 10 *******************************************************************************/ 11 12 package org.eclipse.ui.internal.contexts; 13 14 import java.util.Set; 15 16 import org.eclipse.ui.contexts.IContextManager; 17 18 /** 19 * <p> 20 * A context manager is a type of context manager that allows its enabled 21 * context identifiers to be modified. The list can only be modified wholesale -- 22 * individual addition and removal is not permitted. 23 * </p> 24 * <p> 25 * This interface is not intended to be extended or implemented by clients. 26 * </p> 27 * 28 * @since 3.0 29 * @see ContextManagerFactory 30 */ 31 public interface IMutableContextManager extends IContextManager { 32 33 /** 34 * Sets the set of identifiers to enabled contexts. If there are any 35 * ancestors of these contexts that are not enabled, they should be enabled 36 * as well. 37 * 38 * @param enabledContextIds 39 * the set of identifiers to enabled contexts. This set may be 40 * empty, but it must not be <code>null</code>. If this set is 41 * not empty, it must only contain instances of 42 * <code>String</code>. 43 */ 44 void setEnabledContextIds(Set enabledContextIds); 45 } 46