OSDN Git Service

a2fb5b924127c096b7b8c42107793e723aac5279
[stigmata/stigmata.git] / src / main / java / jp / sourceforge / stigmata / birthmarks / comparators / AbstractBirthmarkComparator.java
1 package jp.sourceforge.stigmata.birthmarks.comparators;
2
3 /*
4  * $Id$
5  */
6
7 import jp.sourceforge.stigmata.Birthmark;
8 import jp.sourceforge.stigmata.BirthmarkComparator;
9 import jp.sourceforge.stigmata.BirthmarkContext;
10 import jp.sourceforge.stigmata.spi.BirthmarkSpi;
11
12 /**
13  * abstract birthmark comparator.
14  *
15  * @author Haruaki Tamada
16  */
17 public abstract class AbstractBirthmarkComparator implements BirthmarkComparator{
18     private BirthmarkSpi spi;
19
20     @Deprecated
21     public AbstractBirthmarkComparator(){
22     }
23
24     public AbstractBirthmarkComparator(BirthmarkSpi spi){
25         this.spi = spi;
26     }
27
28     public BirthmarkSpi getProvider(){
29         return spi;
30     }
31
32     @Override
33     public String getType(){
34         return spi.getType();
35     }
36
37     @Override
38     public abstract double compare(Birthmark b1, Birthmark b2, BirthmarkContext context);
39
40     @Override
41     public int getCompareCount(Birthmark b1, Birthmark b2){
42         return b1.getElementCount() + b2.getElementCount();
43     }
44 }