Class MaskConverter<C>

  • Type Parameters:
    C -
    All Implemented Interfaces:
    java.io.Serializable, IConverter<C>, IClusterable

    public class MaskConverter<C>
    extends java.lang.Object
    implements IConverter<C>
    A converter that takes a mask into account. It is specifically meant for overrides on individual components, that provide their own converter by returning it from Component#getConverter(Class). It uses an instance of MaskFormatter to delegate the masking and unmasking to.

    The following characters can be specified (adopted from the MaskFormatter documentation):

    Character 

    Description

    # Any valid number, uses Character.isDigit.
    ' Escape character, used to escape any of the special formatting characters.
    U Any character (Character.isLetter). All lowercase letters are mapped to upper case.
    L Any character (Character.isLetter). All upper case letters are mapped to lower case.
    A Any character or number (Character.isLetter or Character.isDigit)
    ? Any character (Character.isLetter).
    Anything.
    H Any hex character (0-9, a-f or A-F).

    Typically characters correspond to one char, but in certain languages this is not the case. The mask is on a per character basis, and will thus adjust to fit as many chars as are needed.

    Author:
    Eelco Hillenius
    See Also:
    MaskFormatter, Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      MaskConverter​(java.lang.String mask)
      Construct; converts to Strings.
      MaskConverter​(java.lang.String mask, java.lang.Class<?> type)
      Construct.
      MaskConverter​(javax.swing.text.MaskFormatter maskFormatter)
      Construct.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      C convertToObject​(java.lang.String value, java.util.Locale locale)
      Converts a string to an object using MaskFormatter.stringToValue(String).
      java.lang.String convertToString​(C value, java.util.Locale locale)
      Converts the value to a string using MaskFormatter.valueToString(Object).
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • MaskConverter

        public MaskConverter​(javax.swing.text.MaskFormatter maskFormatter)
        Construct.
        Parameters:
        maskFormatter - The mask formatter to use for masking and unmasking values
      • MaskConverter

        public MaskConverter​(java.lang.String mask)
        Construct; converts to Strings.
        Parameters:
        mask - The mask to use for this converter instance
        See Also:
        MaskFormatter
      • MaskConverter

        public MaskConverter​(java.lang.String mask,
                             java.lang.Class<?> type)
        Construct.
        Parameters:
        mask - The mask to use for this converter instance
        type - The type to convert string values to.
        See Also:
        MaskFormatter
    • Method Detail

      • convertToObject

        public C convertToObject​(java.lang.String value,
                                 java.util.Locale locale)
        Converts a string to an object using MaskFormatter.stringToValue(String).
        Specified by:
        convertToObject in interface IConverter<C>
        Parameters:
        value - The string value to convert
        locale - The locale used to convert the value
        Returns:
        The converted value
      • convertToString

        public java.lang.String convertToString​(C value,
                                                java.util.Locale locale)
        Converts the value to a string using MaskFormatter.valueToString(Object).
        Specified by:
        convertToString in interface IConverter<C>
        Parameters:
        value - The value to convert
        locale - The locale used to convert the value
        Returns:
        The converted string value