1 19 20 package edu.umd.cs.findbugs.filter; 21 22 import java.util.regex.Pattern ; 23 24 import edu.umd.cs.findbugs.BugInstance; 25 import edu.umd.cs.findbugs.FieldAnnotation; 26 27 30 public class FieldMatcher implements Matcher { 31 private NameMatch name; 32 private String signature; 33 34 public FieldMatcher(String name) { 35 this.name = new NameMatch(name); 36 } 37 38 public FieldMatcher(String name, String type) { 39 this.name = new NameMatch(name); 40 this.signature = SignatureUtil.createFieldSignature(type); 41 } 42 43 public boolean match(BugInstance bugInstance) { 44 FieldAnnotation fieldAnnotation = bugInstance.getPrimaryField(); 45 if(fieldAnnotation == null) { 46 return false; 47 } 48 if(!name.match(fieldAnnotation.getFieldName())) { 49 return false; 50 } 51 if (signature != null && !signature.equals(fieldAnnotation.getFieldSignature())) 52 return false; 53 return true; 54 } 55 } 56 | Popular Tags |