Class SimpleResolver

java.lang.Object
org.flowable.common.engine.impl.javax.el.ELResolver
org.flowable.common.engine.impl.de.odysseus.el.util.SimpleResolver

public class SimpleResolver extends ELResolver
Simple resolver implementation. This resolver handles root properties (top-level identifiers). Resolving "real" properties (base != null) is delegated to a resolver specified at construction time.
Author:
Christoph Beck
  • Constructor Details

    • SimpleResolver

      public SimpleResolver(ELResolver resolver, boolean readOnly)
      Create a resolver capable of resolving top-level identifiers. Everything else is passed to the supplied delegate.
    • SimpleResolver

      public SimpleResolver(ELResolver resolver)
      Create a read/write resolver capable of resolving top-level identifiers. Everything else is passed to the supplied delegate.
    • SimpleResolver

      public SimpleResolver(boolean readOnly)
      Create a resolver capable of resolving top-level identifiers, array values, list values, map values, resource values and bean properties.
    • SimpleResolver

      public SimpleResolver()
      Create a read/write resolver capable of resolving top-level identifiers, array values, list values, map values, resource values and bean properties.
  • Method Details

    • getRootPropertyResolver

      public RootPropertyResolver getRootPropertyResolver()
      Answer our root resolver which provides an API to access top-level properties.
      Returns:
      root property resolver
    • getCommonPropertyType

      public Class<?> getCommonPropertyType(ELContext context, Object base)
      Description copied from class: ELResolver
      Obtain the most common type that is acceptable for the given base object.
      Specified by:
      getCommonPropertyType in class ELResolver
      Parameters:
      context - The context in which the examination takes place
      base - The object to examine
      Returns:
      {code null} if the most common type cannot be determined, otherwise the most common type
    • getType

      public Class<?> getType(ELContext context, Object base, Object property)
      Description copied from class: ELResolver
      Obtain the most generally acceptable type that may be used to set the given property on the given object using the given context.
      Specified by:
      getType in class ELResolver
      Parameters:
      context - The EL context for this evaluation
      base - The base object on which the property is to be found
      property - The property whose type is to be returned
      Returns:
      the most general type that maybe used to set the provided property or null if the resolver is read-only.
    • getValue

      public Object getValue(ELContext context, Object base, Object property)
      Description copied from class: ELResolver
      Obtain the value of the given property on the given object using the given context.
      Specified by:
      getValue in class ELResolver
      Parameters:
      context - The EL context for this evaluation
      base - The base object on which the property is to be found
      property - The property whose value is to be returned
      Returns:
      the value of the provided property
    • isReadOnly

      public boolean isReadOnly(ELContext context, Object base, Object property)
      Description copied from class: ELResolver
      Determine if the given property on the given object is read-only using the given context.
      Specified by:
      isReadOnly in class ELResolver
      Parameters:
      context - The EL context for this evaluation
      base - The base object on which the property is to be found
      property - The property to be checked for read only status
      Returns:
      true if the identified property is read only, otherwise false
    • setValue

      public void setValue(ELContext context, Object base, Object property, Object value)
      Description copied from class: ELResolver
      Set the value of the given property on the given object using the given context.
      Specified by:
      setValue in class ELResolver
      Parameters:
      context - The EL context for this evaluation
      base - The base object on which the property is to be found
      property - The property whose value is to be set
      value - The value to set the property to
    • invoke

      public Object invoke(ELContext context, Object base, Object method, Class<?>[] paramTypes, Object[] params)
      Description copied from class: ELResolver
      Invokes a method on the given object.
      Overrides:
      invoke in class ELResolver
      Parameters:
      context - The EL context for this evaluation
      base - The base object on which the method is to be found
      method - The method to invoke
      paramTypes - The types of the parameters of the method to invoke
      params - The parameters with which to invoke the method
      Returns:
      This default implementation always returns null