Package org.mvel2.ast
Class Proto.ProtoContextFactory
- java.lang.Object
-
- org.mvel2.integration.impl.BaseVariableResolverFactory
-
- org.mvel2.integration.impl.MapVariableResolverFactory
-
- org.mvel2.ast.Proto.ProtoContextFactory
-
- All Implemented Interfaces:
java.io.Serializable
,VariableResolverFactory
- Enclosing class:
- Proto
public class Proto.ProtoContextFactory extends MapVariableResolverFactory
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private SimpleIndexHashMapWrapper<java.lang.String,VariableResolver>
variableResolvers
-
Fields inherited from class org.mvel2.integration.impl.MapVariableResolverFactory
variables
-
Fields inherited from class org.mvel2.integration.impl.BaseVariableResolverFactory
indexedVariableNames, indexedVariableResolvers, indexOffset, nextFactory
-
-
Constructor Summary
Constructors Constructor Description ProtoContextFactory(SimpleIndexHashMapWrapper variables)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description VariableResolver
createIndexedVariable(int index, java.lang.String name, java.lang.Object value)
VariableResolver
createIndexedVariable(int index, java.lang.String name, java.lang.Object value, java.lang.Class<?> type)
VariableResolver
createVariable(java.lang.String name, java.lang.Object value)
Creates a new variable.VariableResolver
createVariable(java.lang.String name, java.lang.Object value, java.lang.Class<?> type)
Creates a new variable, and assigns a static type.java.lang.String[]
getIndexedVariableNames()
VariableResolver
getIndexedVariableResolver(int index)
VariableResolver
getVariableResolver(java.lang.String name)
Return a variable resolver for the specified variable name.void
setIndexedVariableNames(java.lang.String[] indexedVariableNames)
VariableResolver
setIndexedVariableResolver(int index, VariableResolver resolver)
int
variableIndexOf(java.lang.String name)
-
Methods inherited from class org.mvel2.integration.impl.MapVariableResolverFactory
addResolver, clear, getKnownVariables, isResolveable, isTarget
-
Methods inherited from class org.mvel2.integration.impl.BaseVariableResolverFactory
appendFactory, getNextFactory, getVariableResolvers, insertFactory, isIndexedFactory, isNextResolveable, setNextFactory, setTiltFlag, setVariableResolvers, tiltFlag
-
-
-
-
Field Detail
-
variableResolvers
private final SimpleIndexHashMapWrapper<java.lang.String,VariableResolver> variableResolvers
-
-
Constructor Detail
-
ProtoContextFactory
public ProtoContextFactory(SimpleIndexHashMapWrapper variables)
-
-
Method Detail
-
createVariable
public VariableResolver createVariable(java.lang.String name, java.lang.Object value)
Description copied from interface:VariableResolverFactory
Creates a new variable. This probably doesn't need to be implemented in most scenarios. This is used for variable assignment.- Specified by:
createVariable
in interfaceVariableResolverFactory
- Overrides:
createVariable
in classMapVariableResolverFactory
- Parameters:
name
- - name of the variable being createdvalue
- - value of the variable- Returns:
- instance of the variable resolver associated with the variable
-
createVariable
public VariableResolver createVariable(java.lang.String name, java.lang.Object value, java.lang.Class<?> type)
Description copied from interface:VariableResolverFactory
Creates a new variable, and assigns a static type. It is expected the underlying factory and resolver will enforce this.- Specified by:
createVariable
in interfaceVariableResolverFactory
- Overrides:
createVariable
in classMapVariableResolverFactory
- Parameters:
name
- - name of the variable being createdvalue
- - value of the variabletype
- - the static type- Returns:
- instance of the variable resolver associated with the variable
-
setIndexedVariableNames
public void setIndexedVariableNames(java.lang.String[] indexedVariableNames)
- Overrides:
setIndexedVariableNames
in classBaseVariableResolverFactory
-
getIndexedVariableNames
public java.lang.String[] getIndexedVariableNames()
- Overrides:
getIndexedVariableNames
in classBaseVariableResolverFactory
-
createIndexedVariable
public VariableResolver createIndexedVariable(int index, java.lang.String name, java.lang.Object value, java.lang.Class<?> type)
- Specified by:
createIndexedVariable
in interfaceVariableResolverFactory
- Overrides:
createIndexedVariable
in classBaseVariableResolverFactory
-
createIndexedVariable
public VariableResolver createIndexedVariable(int index, java.lang.String name, java.lang.Object value)
- Specified by:
createIndexedVariable
in interfaceVariableResolverFactory
- Overrides:
createIndexedVariable
in classBaseVariableResolverFactory
-
getIndexedVariableResolver
public VariableResolver getIndexedVariableResolver(int index)
- Specified by:
getIndexedVariableResolver
in interfaceVariableResolverFactory
- Overrides:
getIndexedVariableResolver
in classBaseVariableResolverFactory
-
setIndexedVariableResolver
public VariableResolver setIndexedVariableResolver(int index, VariableResolver resolver)
- Specified by:
setIndexedVariableResolver
in interfaceVariableResolverFactory
- Overrides:
setIndexedVariableResolver
in classBaseVariableResolverFactory
-
variableIndexOf
public int variableIndexOf(java.lang.String name)
- Specified by:
variableIndexOf
in interfaceVariableResolverFactory
- Overrides:
variableIndexOf
in classBaseVariableResolverFactory
-
getVariableResolver
public VariableResolver getVariableResolver(java.lang.String name)
Description copied from interface:VariableResolverFactory
Return a variable resolver for the specified variable name. This method is expected to traverse the heirarchy of ResolverFactories.- Specified by:
getVariableResolver
in interfaceVariableResolverFactory
- Overrides:
getVariableResolver
in classMapVariableResolverFactory
- Parameters:
name
- - variable name- Returns:
- - instance of the VariableResolver for the specified variable
-
-