Class ComponentResourceSelector


  • public final class ComponentResourceSelector
    extends Object
    Encapsulates the information that is used when locating a template or message catalog associated with a component. The selector is combined with the component class name to locate the other resources. The selector defines one or more axes that are combined with a ComponentResourceLocator implementation to enforce a naming convention for locating resources. The primary axis is Locale (Tapestry 5.2 and earlier used a Locale instance as the selector), but Tapestry 5.3 adds support for additional axes.
    Since:
    5.3
    • Method Detail

      • withAxis

        public <T> ComponentResourceSelector withAxis​(Class<T> axisType,
                                                      T axisValue)
        Returns a new selector with the given axis data. It is not allowed to redefine an existing axis type. Typically, the axis type is an enum type. Axis values are expected to be immutable, and to implement equals() and hashCode().
        Parameters:
        axisType - non-blank axis key
        axisValue - non-null axis value
        Returns:
        new selector including axis value
      • getAxis

        public <T> T getAxis​(Class<T> axisType)
        Returns a previously stored axis value, or null if no axis value of the specified type has been stored.
        Type Parameters:
        T -
        Parameters:
        axisType -
        Returns:
        value or null
      • equals

        public boolean equals​(Object obj)
        Returns true if the object is another selector with the same locale and set of axis.
        Overrides:
        equals in class Object
      • toShortString

        public String toShortString()
        Returns a string identifying the locale, and any additional axis types and values. Example, "en" or "fr com.example.Skin=RED".