updating version for 1.2.3 release
[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 <code>IResource</code>.
16  * <p>
17  * Implementation of this interface will be treated like a singleton. That is,
18  * only one instance will be created per variable extension.
19  * </p>
20  * <p>
21  * This interface is not to be extended by clients. Clients may implement this
22  * interface.
23  * </p>
24  */
25 public interface IVariableResourceExpander {
26         /**
27          * Returns the <code>IResource</code> list for the given variable tag and
28          * value.
29          * 
30          * @param varTag
31          *            the variable tag name
32          * @param varValue
33          *            the value for the variable
34          * @param context
35          *            the context the variable should use to expand itself
36          * @return the list of <code>IResource</code> or <code>null</code> if
37          *         not possible (note, elements of the list can be <code>null</code>)
38          */
39         public IResource[] getResources(String varTag, String varValue,
40                         ExpandVariableContext context);
41 }