Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.commons.codec.language
Class DoubleMetaphone

    java.lang.Object
      org.apache.commons.codec.language.DoubleMetaphone

All Implemented Interfaces:
  Encoder, StringEncoder

    public class DoubleMetaphone

extends Object
implements StringEncoder

Encodes a string into a double metaphone value. This Implementation is based on the algorithm by Lawrence Philips.

- Original Article: http://www.cuj.com/documents/s=8038/cuj0006philips/
- Original Source Code: ftp://ftp.cuj.com/pub/2000/1806/philips.zip

Version:
  $Id: DoubleMetaphone.java 1157192 2011-08-12 17:27:38Z ggregory $
Author:
  Apache Software Foundation

Nested Class Summary
`class` | `DoubleMetaphone.DoubleMetaphoneResult` Inner class for storing results, since there is the optional alternate encoding.

Constructor Summary
`DoubleMetaphone()` Creates an instance of this DoubleMetaphone encoder

Method Summary
`protected char` | `charAt(String value, int index)` Gets the character at index `index` if available, otherwise it returns `Character.MIN_VALUE` so that there is some sort of a default
`protected static boolean` | `contains(String value, int start, int length, String[] criteria)` Determines whether `value` contains any of the criteria starting at index `start` and matching up to length `length`
`String` | `doubleMetaphone(String value)` Encode a value with Double Metaphone
`String` | `doubleMetaphone(String value, boolean alternate)` Encode a value with Double Metaphone, optionally using the alternate encoding.
`Object` | `encode(Object obj)` Encode the value using DoubleMetaphone.
`String` | `encode(String value)` Encode the value using DoubleMetaphone.
`int` | `getMaxCodeLen()` Returns the maxCodeLen.
`boolean` | `isDoubleMetaphoneEqual(String value1, String value2)` Check if the Double Metaphone values of two `String` values are equal.
`boolean` | `isDoubleMetaphoneEqual(String value1, String value2, boolean alternate)` Check if the Double Metaphone values of two `String` values are equal, optionally using the alternate value.
`void` | `setMaxCodeLen(int maxCodeLen)` Sets the maxCodeLen.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### DoubleMetaphone

    public DoubleMetaphone()

  Creates an instance of this DoubleMetaphone encoder

Method Detail

### doubleMetaphone

    public String doubleMetaphone(String value)

  Encode a value with Double Metaphone

  Parameters:
    `value` - String to encode
  Returns:
    an encoded string

### doubleMetaphone

    public String doubleMetaphone(String value,
                                  boolean alternate)

  Encode a value with Double Metaphone, optionally using the alternate encoding.

  Parameters:
    `value` - String to encode
    `alternate` - use alternate encode
  Returns:
    an encoded string

### encode

    public Object encode(Object obj)
                  throws EncoderException

  Encode the value using DoubleMetaphone. It will only work if `obj` is a `String` (like `Metaphone`).

  Specified by:
    `encode` in interface `Encoder`
  Parameters:
    `obj` - Object to encode (should be of type String)
  Returns:
    An encoded Object (will be of type String)
  Throws:
    `EncoderException` - encode parameter is not of type String

### encode

    public String encode(String value)

  Encode the value using DoubleMetaphone.

  Specified by:
    `encode` in interface `StringEncoder`
  Parameters:
    `value` - String to encode
  Returns:
    An encoded String

### isDoubleMetaphoneEqual

    public boolean isDoubleMetaphoneEqual(String value1,
                                          String value2)

  Check if the Double Metaphone values of two `String` values are equal.

  Parameters:
    `value1` - The left-hand side of the encoded `String.equals(Object)`.
    `value2` - The right-hand side of the encoded `String.equals(Object)`.
  Returns:
    `true` if the encoded `String`s are equal; `false` otherwise.
  See Also:
    `isDoubleMetaphoneEqual(String,String,boolean)`

### isDoubleMetaphoneEqual

    public boolean isDoubleMetaphoneEqual(String value1,
                                          String value2,
                                          boolean alternate)

  Check if the Double Metaphone values of two `String` values are equal, optionally using the alternate value.

  Parameters:
    `value1` - The left-hand side of the encoded `String.equals(Object)`.
    `value2` - The right-hand side of the encoded `String.equals(Object)`.
    `alternate` - use the alternate value if `true`.
  Returns:
    `true` if the encoded `String`s are equal; `false` otherwise.

### getMaxCodeLen

    public int getMaxCodeLen()

  Returns the maxCodeLen.

  Returns:
    int

### setMaxCodeLen

    public void setMaxCodeLen(int maxCodeLen)

  Sets the maxCodeLen.

  Parameters:
    `maxCodeLen` - The maxCodeLen to set

### charAt

    protected char charAt(String value,
                          int index)

  Gets the character at index `index` if available, otherwise it returns `Character.MIN_VALUE` so that there is some sort of a default

### contains

    protected static boolean contains(String value,
                                      int start,
                                      int length,
                                      String[] criteria)

  Determines whether `value` contains any of the criteria starting at index `start` and matching up to length `length`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2002-2011 The Apache Software Foundation. All Rights Reserved.