org.mvel2.integration.impl
Class MapVariableResolverFactory

java.lang.Object
  extended by org.mvel2.integration.impl.BaseVariableResolverFactory
      extended by org.mvel2.integration.impl.MapVariableResolverFactory
All Implemented Interfaces:
java.io.Serializable, VariableResolverFactory
Direct Known Subclasses:
DefaultLocalVariableResolverFactory, Proto.InvokationContextFactory, Proto.ProtoContextFactory, TypeInjectionResolverFactoryImpl

public class MapVariableResolverFactory
extends BaseVariableResolverFactory

See Also:
Serialized Form

Field Summary
protected  java.util.Map<java.lang.String,java.lang.Object> variables
          Holds the instance of the variables.
 
Fields inherited from class org.mvel2.integration.impl.BaseVariableResolverFactory
indexedVariableNames, indexedVariableResolvers, indexOffset, nextFactory, variableResolvers
 
Constructor Summary
MapVariableResolverFactory()
           
MapVariableResolverFactory(java.util.Map variables)
           
MapVariableResolverFactory(java.util.Map<java.lang.String,java.lang.Object> variables, boolean cachingSafe)
           
MapVariableResolverFactory(java.util.Map<java.lang.String,java.lang.Object> variables, VariableResolverFactory nextFactory)
           
 
Method Summary
protected  VariableResolver addResolver(java.lang.String name, VariableResolver vr)
           
 void clear()
           
 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.util.Set<java.lang.String> getKnownVariables()
          Return a list of known variables inside the factory.
 VariableResolver getVariableResolver(java.lang.String name)
          Return a variable resolver for the specified variable name.
 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.
 
Methods inherited from class org.mvel2.integration.impl.BaseVariableResolverFactory
appendFactory, createIndexedVariable, createIndexedVariable, getIndexedVariableNames, getIndexedVariableResolver, getNextFactory, getVariableResolvers, insertFactory, isIndexedFactory, isNextResolveable, setIndexedVariableNames, setIndexedVariableResolver, setNextFactory, setVariableResolvers, variableIndexOf
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

variables

protected java.util.Map<java.lang.String,java.lang.Object> variables
Holds the instance of the variables.

Constructor Detail

MapVariableResolverFactory

public MapVariableResolverFactory()

MapVariableResolverFactory

public MapVariableResolverFactory(java.util.Map variables)

MapVariableResolverFactory

public MapVariableResolverFactory(java.util.Map<java.lang.String,java.lang.Object> variables,
                                  VariableResolverFactory nextFactory)

MapVariableResolverFactory

public MapVariableResolverFactory(java.util.Map<java.lang.String,java.lang.Object> variables,
                                  boolean cachingSafe)
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.

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.

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

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

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.

Parameters:
name - - variable name
Returns:
- boolean

addResolver

protected VariableResolver addResolver(java.lang.String name,
                                       VariableResolver vr)

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.

Parameters:
name - - variable name
Returns:
- boolean indicating whether or not factory is the physical target

getKnownVariables

public java.util.Set<java.lang.String> getKnownVariables()
Description copied from interface: VariableResolverFactory
Return a list of known variables inside the factory. This method should not recurse into other factories. But rather return only the variables living inside this factory.

Specified by:
getKnownVariables in interface VariableResolverFactory
Overrides:
getKnownVariables in class BaseVariableResolverFactory
Returns:

clear

public void clear()


Copyright © 2010. All Rights Reserved.