Class EnvironmentAccessor

    • Method Detail

      • getSpecificTargetClasses

        public Class<?>[] getSpecificTargetClasses()
        Description copied from interface: PropertyAccessor
        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.

        Specified by:
        getSpecificTargetClasses in interface PropertyAccessor
        Returns:
        an array of classes that this resolver is suitable for (or null if a general resolver)
      • read

        public TypedValue read​(EvaluationContext context,
                               @Nullable
                               Object target,
                               String name)
                        throws AccessException
        Access the given target object by resolving the given property name against the given target environment.
        Specified by:
        read in interface PropertyAccessor
        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:
        a TypedValue object wrapping the property value read and a type descriptor for it
        Throws:
        AccessException - if there is any problem accessing the property value
      • canWrite

        public boolean canWrite​(EvaluationContext context,
                                @Nullable
                                Object target,
                                String name)
                         throws AccessException
        Read-only: returns false.
        Specified by:
        canWrite in interface PropertyAccessor
        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