de.hpi.fgis.dude.similarityfunction
Class AbstractSimilarityFunction

java.lang.Object
  extended by de.hpi.fgis.dude.similarityfunction.AbstractSimilarityFunction
All Implemented Interfaces:
SimilarityFunction, AutoJsonable
Direct Known Subclasses:
Aggregator, ContentBasedSimilarityFunction

public abstract class AbstractSimilarityFunction
extends Object
implements SimilarityFunction

AbstractSimilarityFunction is a skeleton implementation for providing the common functionality of a SimilarityFunction implementation.

Author:
Matthias Pohl, Arvid Heise

Nested Class Summary
 
Nested classes/interfaces inherited from interface de.hpi.fgis.dude.similarityfunction.SimilarityFunction
SimilarityFunction.SimilarityValidationState
 
Constructor Summary
AbstractSimilarityFunction()
           
 
Method Summary
protected abstract  double calculateSimilarity(DuDeObject obj1, DuDeObject obj2)
          Calculates the similarity of the passed DuDeObjects.
 SimilarityFunction.SimilarityValidationState getLastValidationState()
          Returns the validation state of the last SimilarityFunction.getSimilarity(DuDeObjectPair) call.
 double getSimilarity(DuDeObjectPair pair)
          Calculates the similarity of passed DuDeObjectPair's members.
protected  void setValidationState(SimilarityFunction.SimilarityValidationState state)
          Sets the validation state.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractSimilarityFunction

public AbstractSimilarityFunction()
Method Detail

setValidationState

protected void setValidationState(SimilarityFunction.SimilarityValidationState state)
Sets the validation state.

Parameters:
state - The validation state to be set.

getLastValidationState

public SimilarityFunction.SimilarityValidationState getLastValidationState()
Description copied from interface: SimilarityFunction
Returns the validation state of the last SimilarityFunction.getSimilarity(DuDeObjectPair) call. If it was not called, yet, SimilarityFunction.SimilarityValidationState.BothInvalid is returned.

Specified by:
getLastValidationState in interface SimilarityFunction
Returns:
The validation state of the last similarity calculation or SimilarityFunction.SimilarityValidationState.BothInvalid, if SimilarityFunction.getSimilarity(DuDeObjectPair) was not called, yet.

getSimilarity

public double getSimilarity(DuDeObjectPair pair)
Description copied from interface: SimilarityFunction
Calculates the similarity of passed DuDeObjectPair's members. Besides returning the similarity of the pair, this method stores the calculated similarity also in the pair using DuDeObjectPair.setSimilarity(double). Any already calculated similarity will be overwritten.

Specified by:
getSimilarity in interface SimilarityFunction
Parameters:
pair - A pair of DuDeObjects that shall be compared.
Returns:
A value between 0.0 (not equal) and 1.0 (the same object).

calculateSimilarity

protected abstract double calculateSimilarity(DuDeObject obj1,
                                              DuDeObject obj2)
Calculates the similarity of the passed DuDeObjects. This similarity has to be within the range of [0; 1].

Parameters:
obj1 - The first DuDeObject.
obj2 - The second DuDeObject.
Returns:
The similarity of the passed DuDeObjects.


Copyright © 2011 Hasso Plattner Institute - Chair of Information Systems. All Rights Reserved.