1 /******************************************************************************* 2 * Copyright (c) 2000, 2011 IBM Corporation and others. 3 * 4 * This program and the accompanying materials 5 * are made available under the terms of the Eclipse Public License 2.0 6 * which accompanies this distribution, and is available at 7 * https://www.eclipse.org/legal/epl-2.0/ 8 * 9 * SPDX-License-Identifier: EPL-2.0 10 * 11 * Contributors: 12 * IBM Corporation - initial API and implementation 13 *******************************************************************************/ 14 package org.eclipse.pde.core.plugin; 15 16 import org.eclipse.core.runtime.CoreException; 17 import org.eclipse.pde.core.IIdentifiable; 18 19 /** 20 * Classes that implement this interface model the extension 21 * element found in the plug-in or fragment manifest. 22 * 23 * @noimplement This interface is not intended to be implemented by clients. 24 * @noextend This interface is not intended to be extended by clients. 25 */ 26 public interface IPluginExtension extends IPluginParent, IIdentifiable { 27 /** 28 * A name of the property that will be used to 29 * notify about the "point" change 30 */ 31 String P_POINT = "point"; //$NON-NLS-1$ 32 33 /** 34 * Returns the full ID of the extension point that this extension 35 * is plugged into. 36 * 37 * @return the full extension point ID 38 */ getPoint()39 String getPoint(); 40 41 /** 42 * Returns the schema for the extension point that this extension 43 * is plugged into or <code>null</code> if not found. 44 * <p>This method is an implementation detail - schema object 45 * is not needed for clients outside PDE and should not be used. 46 * 47 * @return The schema for the associated extension point or <code>null</code> 48 */ getSchema()49 Object getSchema(); 50 51 /** 52 * Sets the value of the extension point Id 53 * This method will throw a CoreException if 54 * this model is not editable. 55 * @param point the new extension point Id 56 * @throws CoreException if the model is not editable 57 */ setPoint(String point)58 void setPoint(String point) throws CoreException; 59 } 60