1 /******************************************************************************* 2 * Copyright (c) 2000, 2007 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.ui.editors.text; 12 13 import org.eclipse.core.runtime.IPath; 14 15 16 /** 17 * This class gets the location for a given 18 * object. 19 * <p> 20 * In order to provided backward compatibility for clients of 21 * <code>ILocationProvider</code>, extension interfaces are used to provide a means 22 * of evolution. The following extension interfaces exist: 23 * <ul> 24 * <li>{@link org.eclipse.ui.editors.text.ILocationProviderExtension} since version 3.3 25 * allowing to get the location as <code>URI</code>.</li> 26 * </ul> 27 * </p> 28 * 29 * @see org.eclipse.ui.editors.text.ILocationProviderExtension 30 * @since 3.0 31 */ 32 public interface ILocationProvider { 33 34 /** 35 * Returns the location of the given object or <code>null</code>. 36 * <p> 37 * The provided location is either a full path of a workspace resource or 38 * an absolute path in the local file system. 39 * </p> 40 * 41 * @param element the object for which to get the location 42 * @return the location of the given object or <code>null</code> 43 */ 44 IPath getPath(Object element); 45 } 46