org.springframework.expression

Interface PropertyAccessor

    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method and Description
      boolean canRead(EvaluationContext context, java.lang.Object target, java.lang.String name)
      Called to determine if a resolver instance is able to access a specified property on a specified target object.
      boolean canWrite(EvaluationContext context, java.lang.Object target, java.lang.String name)
      Called to determine if a resolver instance is able to write to a specified property on a specified target object.
      java.lang.Class<?>[] getSpecificTargetClasses()
      Return an array of classes for which this resolver should be called.
      TypedValue read(EvaluationContext context, java.lang.Object target, java.lang.String name)
      Called to read a property from a specified target object.
      void write(EvaluationContext context, java.lang.Object target, java.lang.String name, java.lang.Object newValue)
      Called to write to a property on a specified target object.
    • Method Detail

      • getSpecificTargetClasses

        @Nullable
        java.lang.Class<?>[] getSpecificTargetClasses()
        Return an array of classes for which this resolver should be called.

        >Returning null indicates this is a general resolver that can be called in an attempt to resolve a property on any type.

        Returns:
        an array of classes that this resolver is suitable for (or null if a general resolver)
      • canRead

        boolean canRead(EvaluationContext context,
                        @Nullable
                        java.lang.Object target,
                        java.lang.String name)
                 throws AccessException
        Called to determine if a resolver instance is able to access a specified property on a specified target object.
        Parameters:
        context - the evaluation context in which the access is being attempted
        target - the target object upon which the property is being accessed
        name - the name of the property being accessed
        Returns:
        true if this resolver is able to read the property
        Throws:
        AccessException - if there is any problem determining whether the property can be read
      • canWrite

        boolean canWrite(EvaluationContext context,
                         @Nullable
                         java.lang.Object target,
                         java.lang.String name)
                  throws AccessException
        Called to determine if a resolver instance is able to write to a specified property on a specified target object.
        Parameters:
        context - the evaluation context in which the access is being attempted
        target - the target object upon which the property is being accessed
        name - the name of the property being accessed
        Returns:
        true if this resolver is able to write to the property
        Throws:
        AccessException - if there is any problem determining whether the property can be written to