Class CheckDigitIBAN

  • All Implemented Interfaces:
    LTRandom, Comparable<LogicalType>

    public class CheckDigitIBAN
    extends CheckDigitLT
    Plugin to detect valid International Bank Account Numbers (IBAN) .
    • Field Detail

      • SEMANTIC_TYPE

        public static final String SEMANTIC_TYPE
        The Semantic type for this Plugin.
        See Also:
        Constant Field Values
      • REGEXP

        public static final String REGEXP
        The Regular Expression for this Semantic type.
        See Also:
        Constant Field Values
    • Constructor Detail

      • CheckDigitIBAN

        public CheckDigitIBAN​(PluginDefinition plugin)
        Construct a plugin to detect IBANs (International Bank Account Numbers) based on the Plugin Definition.
        Parameters:
        plugin - The definition of this plugin.
    • Method Detail

      • isValid

        public boolean isValid​(String input,
                               boolean detectMode,
                               long count)
        Description copied from class: LogicalType
        Is the supplied String an instance of this Semantic type?
        Overrides:
        isValid in class CheckDigitLT
        Parameters:
        input - String to check (trimmed for Numeric base Types, un-trimmed for String base Type)
        detectMode - If true then we are in the process of detection, otherwise it is a simple validity check.
        count - The number of instance of this sample.
        Returns:
        true iff the supplied String is an instance of this Semantic type.
      • getRegExp

        public String getRegExp()
        Description copied from class: LogicalType
        The Regular Expression that most closely matches (See LogicalType.isRegExpComplete()) this Semantic Type. Note: All valid matches will match this RE, but the inverse is not necessarily true.
        Overrides:
        getRegExp in class CheckDigitLT
        Returns:
        The Java Regular Expression that most closely matches this Semantic Type.
      • getSemanticType

        public String getSemanticType()
        Description copied from class: LogicalType
        The name of the Semantic Type. For example, EMAIL for an email address.
        Overrides:
        getSemanticType in class LogicalType
        Returns:
        The name of the Semantic Type.
      • getBaseType

        public FTAType getBaseType()
        Description copied from class: LogicalType
        The underlying type we are qualifying.
        Overrides:
        getBaseType in class CheckDigitLT
        Returns:
        The underlying type - e.g. STRING, LONG, etc.
      • nextRandom

        public String nextRandom()
        Description copied from interface: LTRandom
        nextRandom will generate a random (secure) valid example of this Semantic Type.
        Specified by:
        nextRandom in interface LTRandom
        Overrides:
        nextRandom in class CheckDigitLT
        Returns:
        a new valid example of the Semantic Type.