A placeholder module for archives, to support the CVS modules reorg
[phpeclipse.git] / net.sourceforge.phpeclipse.externaltools / src / net / sourceforge / phpdt / externaltools / variable / IVariableResourceExpander.java
1 package net.sourceforge.phpdt.externaltools.variable;
2
3 /**********************************************************************
4 Copyright (c) 2002 IBM Corp. and others. All rights reserved.
5 This file is made available under the terms of the Common Public License v1.0
6 which accompanies this distribution, and is available at
7 http://www.eclipse.org/legal/cpl-v10.html
8  
9 Contributors:
10 **********************************************************************/
11
12 import org.eclipse.core.resources.IResource;
13
14 /**
15  * Responsible for expanding a variable into a list of
16  * <code>IResource</code>.
17  * <p>
18  * Implementation of this interface will be treated like
19  * a singleton. That is, only one instance will be created
20  * per variable extension.
21  * </p><p>
22  * This interface is not to be extended by clients. Clients
23  * may implement this interface.
24  * </p>
25  */
26 public interface IVariableResourceExpander {
27         /**
28          * Returns the <code>IResource</code> list
29          * for the given variable tag and value.
30          * 
31          * @param varTag the variable tag name
32          * @param varValue the value for the variable
33          * @param context the context the variable should use to expand itself
34          * @return the list of <code>IResource</code> or <code>null</code> if not
35          *              possible (note, elements of the list can be <code>null</code>)
36          */
37         public IResource[] getResources(String varTag, String varValue, ExpandVariableContext context);
38 }