org.mvel2.integration.impl
Class FunctionVariableResolverFactory

java.lang.Object
  extended by org.mvel2.integration.impl.BaseVariableResolverFactory
      extended by org.mvel2.integration.impl.FunctionVariableResolverFactory
All Implemented Interfaces:
java.io.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
FunctionVariableResolverFactory(Function function, VariableResolverFactory nextFactory, java.lang.String[] indexedVariables, java.lang.Object[] parameters)
           
 
Method Summary
 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.
 Function getFunction()
           
 VariableResolver getIndexedVariableResolver(int index)
           
 VariableResolver[] getIndexedVariableResolvers()
           
 VariableResolver getVariableResolver(java.lang.String name)
          Return a variable resolver for the specified variable name.
 boolean isIndexedFactory()
           
 boolean isResolveable(java.lang.String name)
          Determines whether or not the variable is resolver in the chain of factories.
 boolean isTarget(java.lang.String name)
          Deterimines whether or not the current VariableResolverFactory is the physical target for the actual variable.
 void setIndexedVariableResolvers(VariableResolver[] vr)
           
 void setIndexOffset(int offset)
           
 void updateParameters(java.lang.Object[] parameters)
           
 
Methods inherited from class org.mvel2.integration.impl.BaseVariableResolverFactory
appendFactory, getIndexedVariableNames, getKnownVariables, getNextFactory, getVariableResolvers, insertFactory, isNextResolveable, setIndexedVariableNames, setIndexedVariableResolver, setNextFactory, setVariableResolvers, variableIndexOf
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FunctionVariableResolverFactory

public FunctionVariableResolverFactory(Function function,
                                       VariableResolverFactory nextFactory,
                                       java.lang.String[] indexedVariables,
                                       java.lang.Object[] parameters)
Method Detail

isResolveable

public boolean isResolveable(java.lang.String name)
Description copied from interface: VariableResolverFactory
Determines whether or not the variable is resolver in the chain of factories.

Specified by:
isResolveable in interface VariableResolverFactory
Parameters:
name - - variable name
Returns:
- boolean

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 interface VariableResolverFactory
Parameters:
name - - name of the variable being created
value - - 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 interface VariableResolverFactory
Parameters:
name - - name of the variable being created
value - - value of the variable
type - - the static type
Returns:
instance of the variable resolver associated with the variable

createIndexedVariable

public VariableResolver createIndexedVariable(int index,
                                              java.lang.String name,
                                              java.lang.Object value)
Specified by:
createIndexedVariable in interface VariableResolverFactory
Overrides:
createIndexedVariable in class BaseVariableResolverFactory

createIndexedVariable

public VariableResolver createIndexedVariable(int index,
                                              java.lang.String name,
                                              java.lang.Object value,
                                              java.lang.Class<?> type)
Specified by:
createIndexedVariable in interface VariableResolverFactory
Overrides:
createIndexedVariable in class BaseVariableResolverFactory

getIndexedVariableResolver

public VariableResolver getIndexedVariableResolver(int index)
Specified by:
getIndexedVariableResolver in interface VariableResolverFactory
Overrides:
getIndexedVariableResolver in class BaseVariableResolverFactory

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 interface VariableResolverFactory
Overrides:
getVariableResolver in class BaseVariableResolverFactory
Parameters:
name - - variable name
Returns:
- instance of the VariableResolver for the specified variable

isIndexedFactory

public boolean isIndexedFactory()
Specified by:
isIndexedFactory in interface VariableResolverFactory
Overrides:
isIndexedFactory in class BaseVariableResolverFactory

isTarget

public boolean isTarget(java.lang.String name)
Description copied from interface: VariableResolverFactory
Deterimines whether or not the current VariableResolverFactory is the physical target for the actual variable.

Specified by:
isTarget in interface VariableResolverFactory
Parameters:
name - - variable name
Returns:
- boolean indicating whether or not factory is the physical target

updateParameters

public void updateParameters(java.lang.Object[] parameters)

getIndexedVariableResolvers

public VariableResolver[] getIndexedVariableResolvers()

setIndexedVariableResolvers

public void setIndexedVariableResolvers(VariableResolver[] vr)

getFunction

public Function getFunction()

setIndexOffset

public void setIndexOffset(int offset)


Copyright © 2011. All Rights Reserved.