Class ServerValues

java.lang.Object
org.apache.juneau.console.widgets.ServerValues
All Implemented Interfaces:
Widget

public class ServerValues extends Object implements Widget
A Widget-marked declaration of named server-side scalar values.

This is a thin, typed facade over the existing VarResolver engine — not a second templating language. An author declares named scalar value providers (for example failedCount or lookbackReadable); a widget emitter publishes them into a per-render registry and interpolates their resolved values into widget chrome text (titles / labels) as "$FV{name}" / "$FV{name,default}" at serve time.

Not $W. $FV resolves declared scalar values as plain text (serializer-encoded); it is distinct from $W (HtmlWidgetVar), which emits raw widget HTML. $FV never injects HTML.

Providers must return a scalar (String / Number / Boolean) or null; non-scalar results are rejected at resolve time (no List.toString() join — collection rendering is out of scope here). Values are session-aware: each provider is a Function of the per-render VarResolverSession.

Example:

ServerValues sv = ServerValues.create() .value("failedCount", session -> metrics.failed()) .value("env", session -> "prod"); // Chrome: column title "Failures ($FV{failedCount})" resolves at serve time.

Since:
10.0.0
  • Field Details

  • Constructor Details

  • Method Details

    • create

      public static ServerValues create()
      Creates an empty declaration.
      Returns:
      A new ServerValues.
    • value

      public ServerValues value(String name, Function<VarResolverSession,?> provider)
      Declares a named scalar value provider.
      Parameters:
      name - The interpolation name (the x in "$FV{x}"). Must not be null or blank.
      provider - The session-aware scalar provider. Must not be null.
      Returns:
      This object.
    • values

      Sets the full ordered map of value declarations.
      Parameters:
      value - The declarations, keyed by interpolation name. Must not be null.
      Returns:
      This object.
    • validate

      public void validate()
      Description copied from interface: Widget
      Fail-closed bean validation.
      Specified by:
      validate in interface Widget