Interface Translator<T>

    • Method Detail

      • getName

        String getName()
        Returns a unique name for the translator. This is used to identify the translator by name, but is also used when locating override messages for the translator.
        Returns:
        unique name for the translator
      • toClient

        String toClient(T value)
        Converts a server-side value to a client-side string. This allows for formatting of the value in a way appropriate to the end user. The output client value should be parsable by parseClient(Field, String, String).
        Parameters:
        value - the server side value (which will not be null)
        Returns:
        client-side value to present to the user
      • getType

        Class<TgetType()
        Returns the type of the server-side value.
        Returns:
        a type
      • parseClient

        T parseClient(Field field,
                      String clientValue,
                      String message)
               throws ValidationException
        Converts a submitted request value into an appropriate server side value.
        Parameters:
        field - for which a value is being parsed
        clientValue - to convert to a server value; this will not be null, but may be blank
        message - formatted validation message, either from validation messages, or from an override
        Returns:
        equivalent server-side value (possibly null)
        Throws:
        ValidationException - if the value can not be parsed
      • render

        void render(Field field,
                    String message,
                    MarkupWriter writer,
                    FormSupport formSupport)
        Hook used by components to allow the validator to contribute additional attributes or (more often) client-side JavaScript (via the FormSupport.addValidation(Field, String, String, Object)).
        Parameters:
        field - the field which is currently being rendered
        message - formatted validation message, either from validation messages, or from an override
        writer - markup writer, allowing additional attributes to be written into the active element
        formSupport - used to add JavaScript