Importing the XDebugProxy code in the HEAD. The repo was tagged with T_BEFORE_XDEBUGP...
[phpeclipse.git] / net.sourceforge.phpeclipse.externaltools / src / net / sourceforge / phpdt / externaltools / internal / registry / ArgumentVariableRegistry.java
1 package net.sourceforge.phpdt.externaltools.internal.registry;
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 net.sourceforge.phpdt.externaltools.model.IExternalToolConstants;
13
14 import org.eclipse.core.runtime.IConfigurationElement;
15
16 /**
17  * Registry of all available argument variables.
18  */
19 public class ArgumentVariableRegistry extends ExternalToolVariableRegistry {
20
21         /**
22          * Creates the registry and loads the variables.
23          */
24         public ArgumentVariableRegistry() {
25                 super(IExternalToolConstants.EXTENSION_POINT_ARGUMENT_VARIABLES);
26         }
27
28         /**
29          * Returns the argument variable for the given tag or <code>null</code> if
30          * none.
31          */
32         public ArgumentVariable getArgumentVariable(String tag) {
33                 return (ArgumentVariable) findVariable(tag);
34         }
35
36         /**
37          * Returns the list of argument variables in the registry.
38          */
39         public ArgumentVariable[] getArgumentVariables() {
40                 ArgumentVariable[] results = new ArgumentVariable[getVariableCount()];
41                 copyVariables(results);
42                 return results;
43         }
44
45         /*
46          * (non-Javadoc) Method declared on ExternalToolVariableRegistry.
47          */
48         protected ExternalToolVariable newVariable(String tag, String description,
49                         IConfigurationElement element) {
50                 return new ArgumentVariable(tag, description, element);
51         }
52 }