1 /******************************************************************************* 2 * Copyright (c) 2004, 2005 IBM Corporation and others. 3 * All rights reserved. This program and the accompanying materials 4 * are made available under the terms of the Eclipse Public License v1.0 5 * which accompanies this distribution, and is available at 6 * http://www.eclipse.org/legal/epl-v10.html 7 * 8 * Contributors: 9 * IBM Corporation - initial API and implementation 10 *******************************************************************************/ 11 package org.eclipse.core.runtime.preferences; 12 13 /** 14 * Clients contributing a scope to the Eclipse preference system must 15 * implement this interface to aid Eclipse in creating a new node for the 16 * hierarchy. 17 * <p> 18 * Clients may implement this interface. 19 * </p> 20 * @since 3.0 21 */ 22 public interface IScope { 23 24 /** 25 * Create and return a new preference node with the given parent and name. 26 * Must not return <code>null</code>. Clients are able to create a new node 27 * in memory or load the node's contents from the backing store. Neither the 28 * parent or name arguments should be <code>null</code>. 29 * <p> 30 * Implementors should note that the node might not have been added to the 31 * child list of the parent yet, and therefore might not be able to be referenced 32 * through navigation from the root node. 33 * </p> 34 * @param parent the node's parent 35 * @param name the name of the node 36 * @return the new node 37 */ 38 public IEclipsePreferences create(IEclipsePreferences parent, String name); 39 } 40