| //------------------------------------------------------------------------------ |
| // Copyright (c) 2005, 2006 IBM Corporation and others. |
| // All rights reserved. This program and the accompanying materials |
| // are made available under the terms of the Eclipse Public License v1.0 |
| // which accompanies this distribution, and is available at |
| // http://www.eclipse.org/legal/epl-v10.html |
| // |
| // Contributors: |
| // IBM Corporation - initial implementation |
| //------------------------------------------------------------------------------ |
| package org.eclipse.epf.library; |
| |
| import org.eclipse.epf.uma.MethodElement; |
| |
| /** |
| * interface to manage library resources |
| * |
| * @author Jinhua Xi |
| * @since 1.0 |
| * |
| */ |
| public interface ILibraryResourceManager { |
| |
| /** |
| * get the logical path of the element in the library, |
| * the path should start with the plugin name. |
| * i.e. <plugin name>/path/to/element |
| * |
| * The implementation class should encapsulate the physical storage |
| * of the resource and return the path of the element start with it's plugin name |
| * |
| * @param element MethodElement |
| * @return String |
| */ |
| public String getLogicalPath(MethodElement element); |
| |
| /** |
| * get the element's back path of the element based on the logical path, for example, |
| * "OpenUP\guidance\concept\c1.xml", the back path is "./../../../" |
| * |
| * @param element MethodElement |
| * @return String |
| */ |
| public String getBackPath(MethodElement element); |
| |
| /** |
| * get the logical resource path of the element in the |
| * library. the path should start with the plugin name. |
| * i.e. <plugin name>/path/to/element/resources |
| * |
| * @param element MethodElement |
| * @return String |
| */ |
| public String getLogicalResourcePath(MethodElement element); |
| |
| /** |
| * Gets the physical path of a method element |
| * |
| * @param element |
| * @return the physical path of the element |
| */ |
| public String getPhysicalPath(MethodElement element); |
| |
| /** |
| * Gets the absolute path of the resource folder of the element in the library. |
| * |
| * @param e |
| * @return the physical resource path of the element |
| */ |
| public String getPhysicalResourcePath(MethodElement element); |
| |
| /** |
| * get the physical path of the plugin associated with the element |
| * |
| * @param element |
| * @return String |
| */ |
| public String getPhysicalPluginPath(MethodElement element); |
| |
| /** |
| * get the logical path of the plugin |
| * |
| * @param element |
| * @return String |
| */ |
| public String getLogicalPluginPath(MethodElement element); |
| |
| |
| /** |
| * get the physical path associated with the given logical path |
| * |
| * @param element MethodElement an element in the library to access the library resource |
| * usually this is the owner element that references the logicalPath |
| * @param logicalPath String |
| * @return String the physical path resolved from the logical path |
| */ |
| public String resolve(MethodElement element, String logicalPath); |
| |
| } |