Interface TranslatorSource

  • All Known Implementing Classes:
    TranslatorSourceImpl

    ,
                             value=Translator.class)
    public interface TranslatorSource
    A source for Translators, either by name or by property type. The source knows about two sets of translators: the standard translators contributed directly to the service and the alternate translators, contributed to the TranslatorAlternatesSource service. Each contributed translator must have a unique name. Generally, Translators are matched by type (i.e., the type matching a particular property that will be read or updated). Contributions to this service use a StrategyRegistry to match by type. Translators can also be selected by name. The TranslatorAlternatesSource service configuration is often used for this purpose. The contribution key must match the translator type.
    • Method Detail

      • get

         name)
        Returns the translator with the given name (either a standard translator, or an alternate).
        Parameters:
        name - name of translator (as configured, but case is ignored)
        Returns:
        the shared translator instance
        Throws:
        - if no translator is configured for the provided name
      • findByType

         valueType)
        Finds a Translator that is appropriate to the given type, which is usually obtained via Binding.getBindingType(). Performs an inheritance-based search for the best match, among the standard translator (not alternates).
        Parameters:
        valueType - the type of value for which a default translator is needed
        Returns:
        the matching translator, or null if no match can be found
      • getByType

         valueType)
        Finds a Translator that is appropriate to the given type, which is usually obtained via Binding.getBindingType(). Performs an inheritance-based search for the best match, among the standard translators (not alternates).
        Parameters:
        valueType - the type of value for which a default translator is needed
        Returns:
        the matching translator
        Throws:
        - if no standard validator matches the provided type