Package org.eclipse.cdt.core.envvar
Class EnvironmentVariable
- java.lang.Object
-
- org.eclipse.cdt.core.envvar.EnvironmentVariable
-
- All Implemented Interfaces:
Cloneable
,IEnvironmentVariable
- Direct Known Subclasses:
StorableEnvVar
public class EnvironmentVariable extends Object implements IEnvironmentVariable, Cloneable
A trivial implementation ofIEnvironmentVariable
- Since:
- 3.0
-
-
Field Summary
Fields Modifier and Type Field Description protected String
fDelimiter
protected String
fName
protected int
fOperation
protected String
fValue
-
Fields inherited from interface org.eclipse.cdt.core.envvar.IEnvironmentVariable
ENVVAR_APPEND, ENVVAR_PREPEND, ENVVAR_REMOVE, ENVVAR_REPLACE
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
EnvironmentVariable()
EnvironmentVariable(String name)
EnvironmentVariable(String name, String value)
EnvironmentVariable(String name, String value, int op, String delimiter)
EnvironmentVariable(String name, String value, String delimiter)
EnvironmentVariable(IEnvironmentVariable var)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Object
clone()
boolean
equals(Object obj)
String
getDelimiter()
String
getName()
int
getOperation()
String
getValue()
int
hashCode()
String
toString()
-
-
-
Constructor Detail
-
EnvironmentVariable
public EnvironmentVariable(String name, String value, int op, String delimiter)
-
EnvironmentVariable
protected EnvironmentVariable()
-
EnvironmentVariable
public EnvironmentVariable(String name)
-
EnvironmentVariable
public EnvironmentVariable(IEnvironmentVariable var)
-
-
Method Detail
-
getName
public String getName()
- Specified by:
getName
in interfaceIEnvironmentVariable
- Returns:
- the variable name
-
getValue
public String getValue()
- Specified by:
getValue
in interfaceIEnvironmentVariable
- Returns:
- the variable value
-
getOperation
public int getOperation()
- Specified by:
getOperation
in interfaceIEnvironmentVariable
- Returns:
- one of the IBuildEnvironmentVariable.ENVVAR_* operation types
-
getDelimiter
public String getDelimiter()
- Specified by:
getDelimiter
in interfaceIEnvironmentVariable
- Returns:
- if the variable can hold the list of values this method returns the String representing
the delimiter that is used to separate values. This information is used for the following:
1. in append and prepend operations:
If the variable already exists and contains some value the new
value will be calculated in the following way:
For the "prepend" operation:
= For the "append" operation: = The Environment Variable Provider will also remove the duplicates of "sub-values" in the resulting value. For example: If the current value is "string1:string2:string3", the getDelimiter() method returns ":" and getValue() method returns "string4:string2" the new value will contain: For the "prepend" operation: "string4:string2:string1:string3" For the "append" operation: "string1:string3:string4:string2" 2. Since the environment variables are also treated as build macros the delimiter is also used by the BuildMacroProvider to determine the type of the macro used to represent the given environment variable. If the variable has the delimiter it is treated as the Text-List macro otherwise it is treated as the Text macro. (See Build Macro design for more details) To specify that no delimiter should be used, the getDelimiter() method should return null or an empty string
-
-