Class AbstractCaverphone

java.lang.Object
org.apache.commons.codec.language.AbstractCaverphone
All Implemented Interfaces:
Encoder, StringEncoder
Direct Known Subclasses:
Caverphone1, Caverphone2

public abstract class AbstractCaverphone extends Object implements StringEncoder
Encodes a string into a Caverphone value. This is an algorithm created by the Caversham Project at the University of Otago. It implements the Caverphone 2.0 algorithm:

This class is immutable and thread-safe.

Since:
1.5
See Also:
  • Constructor Details

    • AbstractCaverphone

      Constructs a new instance for subclasses.
  • Method Details

    • encode

      public Object encode(Object source) throws EncoderException
      Encodes an Object using the Caverphone algorithm. This method is provided in order to satisfy the requirements of the Encoder interface, and will throw an EncoderException if the supplied object is not of type String.
      Specified by:
      encode in interface Encoder
      Parameters:
      source - Object to encode.
      Returns:
      An object (or type String) containing the Caverphone code which corresponds to the String supplied.
      Throws:
      EncoderException - if the parameter supplied is not of type String.
    • isEncodeEqual

      public boolean isEncodeEqual(String str1, String str2) throws EncoderException
      Tests if the encodings of two strings are equal. This method might be promoted to a new AbstractStringEncoder superclass.
      Parameters:
      str1 - First of two strings to compare.
      str2 - Second of two strings to compare.
      Returns:
      true if the encodings of these strings are identical, false otherwise.
      Throws:
      EncoderException - thrown if there is an error condition during the encoding process.