Interface ValueResolver

All Known Implementing Classes:
FieldValueResolver, JavaBeanValueResolver, MapValueResolver, MemberValueResolver, MethodValueResolver

public interface ValueResolver
A hook interface for resolving values from the context stack.
Since:
0.1.1
  • Field Details

    • UNRESOLVED

      static final Object UNRESOLVED
      A mark object.
  • Method Details

    • resolve

      Object resolve(Object context, String name)
      Resolve the attribute's name in the context object. If a UNRESOLVED is returned, the context stack will continue with the next value resolver in the chain.
      Parameters:
      context - The context object. Not null.
      name - The attribute's name. Not null.
      Returns:
      A UNRESOLVED is returned, the context stack will continue with the next value resolver in the chain. Otherwise, it returns the associated value.
    • resolve

      Object resolve(Object context)
      Resolve the the context object by optionally converting the value if necessary. If a UNRESOLVED is returned, the context stack will continue with the next value resolver in the chain.
      Parameters:
      context - The context object. Not null.
      Returns:
      A UNRESOLVED is returned, the context stack will continue with the next value resolver in the chain. Otherwise, it returns the associated value.
    • propertySet

      Set<Map.Entry<String,Object>> propertySet(Object context)
      List all the properties and their values for the given object.
      Parameters:
      context - The context object. Not null.
      Returns:
      All the properties and their values for the given object.
    • defaultValueResolvers

      static List<ValueResolver> defaultValueResolvers()
      Default value resolvers. Including: - MapValueResolver - JavaBeanValueResolver - MethodValueResolver. On Java 14 or higher.
      Returns:
      Immutable list of value resolvers.