Package org.mvel2.integration.impl
Class FunctionVariableResolverFactory
- java.lang.Object
-
- org.mvel2.integration.impl.BaseVariableResolverFactory
-
- org.mvel2.integration.impl.FunctionVariableResolverFactory
-
- All Implemented Interfaces:
Serializable,LocalVariableResolverFactory,VariableResolverFactory
public class FunctionVariableResolverFactory extends BaseVariableResolverFactory implements LocalVariableResolverFactory
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class org.mvel2.integration.impl.BaseVariableResolverFactory
indexedVariableNames, indexedVariableResolvers, indexOffset, nextFactory, variableResolvers
-
-
Constructor Summary
Constructors Constructor Description FunctionVariableResolverFactory(Function function, VariableResolverFactory nextFactory, String[] indexedVariables, Object[] parameters)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description VariableResolvercreateIndexedVariable(int index, String name, Object value)VariableResolvercreateIndexedVariable(int index, String name, Object value, Class<?> type)VariableResolvercreateVariable(String name, Object value)Creates a new variable.VariableResolvercreateVariable(String name, Object value, Class<?> type)Creates a new variable, and assigns a static type.FunctiongetFunction()VariableResolvergetIndexedVariableResolver(int index)VariableResolver[]getIndexedVariableResolvers()VariableResolvergetVariableResolver(String name)Return a variable resolver for the specified variable name.booleanisIndexedFactory()booleanisResolveable(String name)Determines whether or not the variable is resolver in the chain of factories.booleanisTarget(String name)Deterimines whether or not the current VariableResolverFactory is the physical target for the actual variable.voidsetIndexedVariableResolvers(VariableResolver[] vr)voidsetIndexOffset(int offset)VariableResolverFactorysetNoTilt(boolean noTilt)voidsetTiltFlag(boolean tiltFlag)voidupdateParameters(Object[] parameters)-
Methods inherited from class org.mvel2.integration.impl.BaseVariableResolverFactory
appendFactory, breakFlag, getIndexedVariableNames, getKnownVariables, getNextFactory, getVariableResolvers, insertFactory, isNextResolveable, setBreakFlag, setIndexedVariableNames, setIndexedVariableResolver, setNextFactory, setVariableResolvers, tiltFlag, variableIndexOf
-
-
-
-
Constructor Detail
-
FunctionVariableResolverFactory
public FunctionVariableResolverFactory(Function function, VariableResolverFactory nextFactory, String[] indexedVariables, Object[] parameters)
-
-
Method Detail
-
isResolveable
public boolean isResolveable(String name)
Description copied from interface:VariableResolverFactoryDetermines whether or not the variable is resolver in the chain of factories.- Specified by:
isResolveablein interfaceVariableResolverFactory- Parameters:
name- - variable name- Returns:
- - boolean
-
createVariable
public VariableResolver createVariable(String name, Object value)
Description copied from interface:VariableResolverFactoryCreates a new variable. This probably doesn't need to be implemented in most scenarios. This is used for variable assignment.- Specified by:
createVariablein interfaceVariableResolverFactory- 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(String name, Object value, Class<?> type)
Description copied from interface:VariableResolverFactoryCreates a new variable, and assigns a static type. It is expected the underlying factory and resolver will enforce this.- Specified by:
createVariablein interfaceVariableResolverFactory- 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
-
createIndexedVariable
public VariableResolver createIndexedVariable(int index, String name, Object value)
- Specified by:
createIndexedVariablein interfaceVariableResolverFactory- Overrides:
createIndexedVariablein classBaseVariableResolverFactory
-
createIndexedVariable
public VariableResolver createIndexedVariable(int index, String name, Object value, Class<?> type)
- Specified by:
createIndexedVariablein interfaceVariableResolverFactory- Overrides:
createIndexedVariablein classBaseVariableResolverFactory
-
getIndexedVariableResolver
public VariableResolver getIndexedVariableResolver(int index)
- Specified by:
getIndexedVariableResolverin interfaceVariableResolverFactory- Overrides:
getIndexedVariableResolverin classBaseVariableResolverFactory
-
getVariableResolver
public VariableResolver getVariableResolver(String name)
Description copied from interface:VariableResolverFactoryReturn a variable resolver for the specified variable name. This method is expected to traverse the heirarchy of ResolverFactories.- Specified by:
getVariableResolverin interfaceVariableResolverFactory- Overrides:
getVariableResolverin classBaseVariableResolverFactory- Parameters:
name- - variable name- Returns:
- - instance of the VariableResolver for the specified variable
-
isIndexedFactory
public boolean isIndexedFactory()
- Specified by:
isIndexedFactoryin interfaceVariableResolverFactory- Overrides:
isIndexedFactoryin classBaseVariableResolverFactory
-
isTarget
public boolean isTarget(String name)
Description copied from interface:VariableResolverFactoryDeterimines whether or not the current VariableResolverFactory is the physical target for the actual variable.- Specified by:
isTargetin interfaceVariableResolverFactory- Parameters:
name- - variable name- Returns:
- - boolean indicating whether or not factory is the physical target
-
updateParameters
public void updateParameters(Object[] parameters)
-
getIndexedVariableResolvers
public VariableResolver[] getIndexedVariableResolvers()
-
setIndexedVariableResolvers
public void setIndexedVariableResolvers(VariableResolver[] vr)
-
getFunction
public Function getFunction()
-
setIndexOffset
public void setIndexOffset(int offset)
-
setNoTilt
public VariableResolverFactory setNoTilt(boolean noTilt)
-
setTiltFlag
public void setTiltFlag(boolean tiltFlag)
- Specified by:
setTiltFlagin interfaceVariableResolverFactory- Overrides:
setTiltFlagin classBaseVariableResolverFactory
-
-