1 23 package org.hammurapi.inspectors; 24 25 import org.hammurapi.InspectorBase; 26 27 import com.pavelvlasov.jsel.LanguageElement; 28 import com.pavelvlasov.jsel.VariableDefinition; 29 30 31 38 public class HardcodedLiteralsRule extends InspectorBase { 39 40 private VariableDefinition currentStaticFinalField; 41 42 public void visit(VariableDefinition vd) { 43 if (currentStaticFinalField==null && vd.getModifiers().contains("static") && vd.getModifiers().contains("final")) { 44 currentStaticFinalField = vd; 45 } 46 } 47 48 public void leave(VariableDefinition vd) { 49 currentStaticFinalField=null; 50 } 51 52 protected void analyze(LanguageElement element) { 53 if (currentStaticFinalField==null) { 54 context.reportViolation(element); 55 } 56 } 57 } 58 | Popular Tags |