JSPTokenizer.java
01 /**
02  * BSD-style license; for more info see http://pmd.sourceforge.net/license.html
03  */
04 package net.sourceforge.pmd.cpd;
05 
06 import java.io.StringReader;
07 
08 import net.sourceforge.pmd.lang.Language;
09 import net.sourceforge.pmd.lang.TokenManager;
10 import net.sourceforge.pmd.lang.jsp.ast.Token;
11 
12 public class JSPTokenizer implements Tokenizer {
13 
14     public void tokenize(SourceCode sourceCode, Tokens tokenEntries) {
15   StringBuffer buffer = sourceCode.getCodeBuffer();
16   TokenManager tokenMgr = Language.JSP.getDefaultVersion().getLanguageVersionHandler().getParser()
17     .getTokenManager(sourceCode.getFileName()new StringReader(buffer.toString()));
18   Token currentToken = (TokentokenMgr.getNextToken();
19   while (currentToken.image.length() 0) {
20       tokenEntries.add(new TokenEntry(String.valueOf(currentToken.kind), sourceCode.getFileName(),
21         currentToken.beginLine));
22       currentToken = (TokentokenMgr.getNextToken();
23   }
24   tokenEntries.add(TokenEntry.getEOF());
25     }
26 }