OSDN Git Service

Delete Subversion Tags (Revision, Id)
[stigmata/stigmata.git] / src / main / java / jp / sourceforge / stigmata / birthmarks / uc / UsedClassesBirthmarkExtractor.java
1 package jp.sourceforge.stigmata.birthmarks.uc;
2
3 import jp.sourceforge.stigmata.Birthmark;
4 import jp.sourceforge.stigmata.BirthmarkContext;
5 import jp.sourceforge.stigmata.ExtractionUnit;
6 import jp.sourceforge.stigmata.birthmarks.ASMBirthmarkExtractor;
7 import jp.sourceforge.stigmata.birthmarks.BirthmarkExtractVisitor;
8 import jp.sourceforge.stigmata.spi.BirthmarkSpi;
9
10 import org.objectweb.asm.ClassWriter;
11
12 /**
13  * 
14  * @author Haruaki TAMADA
15  */
16 public class UsedClassesBirthmarkExtractor extends ASMBirthmarkExtractor{
17     public UsedClassesBirthmarkExtractor(BirthmarkSpi spi){
18         super(spi);
19     }
20
21     public UsedClassesBirthmarkExtractor(){
22         super();
23     }
24
25     @Override
26     public BirthmarkExtractVisitor createExtractVisitor(ClassWriter writer, Birthmark birthmark, BirthmarkContext context){
27         return new UsedClassesBirthmarkExtractVisitor(writer, birthmark, context);
28     }
29
30     @Override
31     public ExtractionUnit[] getAcceptableUnits(){
32         return new ExtractionUnit[] {
33             ExtractionUnit.CLASS, ExtractionUnit.PACKAGE, ExtractionUnit.ARCHIVE, 
34         };
35     }
36
37     @Override
38     public Birthmark createBirthmark(){
39         return new UsedClassesBirthmark(getProvider().getType());
40     }
41 }