Class MapVariableResolverFactory

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

public class MapVariableResolverFactory extends BaseVariableResolverFactory
See Also:
  • Field Details

    • variables

      protected Map<String,Object> variables
      Holds the instance of the variables.
  • Constructor Details

    • MapVariableResolverFactory

      public MapVariableResolverFactory()
    • MapVariableResolverFactory

      public MapVariableResolverFactory(Map variables)
    • MapVariableResolverFactory

      public MapVariableResolverFactory(Map<String,Object> variables, VariableResolverFactory nextFactory)
    • MapVariableResolverFactory

      public MapVariableResolverFactory(Map<String,Object> variables, boolean cachingSafe)
  • Method Details

    • createVariable

      public VariableResolver createVariable(String name, 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(String name, Object value, 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(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(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(String name, VariableResolver vr)
    • isTarget

      public boolean isTarget(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 Set<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:
      variables
    • clear

      public void clear()