| /* |
| * <copyright> |
| * |
| * Copyright (c) 2005-2006 Sven Efftinge 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: |
| * Sven Efftinge - Initial API and implementation |
| * |
| * </copyright> |
| */ |
| package org.eclipse.gmf.internal.xpand; |
| |
| import java.io.IOException; |
| import java.io.Reader; |
| |
| import org.eclipse.gmf.internal.xpand.model.XpandResource; |
| import org.eclipse.gmf.internal.xpand.xtend.ast.XtendResource; |
| |
| |
| /** |
| * FIXME no much sense to depend on File here, it's only builder who cares about files |
| * TODO describe contract - when returns null |
| */ |
| public interface ResourceManager { |
| |
| XtendResource loadXtendResource(String fullyQualifiedName); |
| |
| XpandResource loadXpandResource(String fullyQualifiedName); |
| |
| /** |
| * Returns an array of resolutions, in the order from newest to oldest. |
| * This is to enable one template to partially override only a subset of parent templates. |
| * |
| * @return never return <code>null</code> or an empty array, throw exception instead |
| * @throws IOException in case resource can't be read. Throw {@link java.io.FileNotFoundException} to indicate resource was not found. |
| */ |
| Reader[] resolveMultiple(String fullyQualifiedName, String extension) throws IOException; |
| |
| } |