public boolean match(BugInstance bugInstance) { FieldAnnotation fieldAnnotation = null; if (role == null || role.equals("")) fieldAnnotation = bugInstance.getPrimaryField(); else for (BugAnnotation a : bugInstance.getAnnotations()) if (a instanceof FieldAnnotation && role.equals(a.getDescription())) { fieldAnnotation = (FieldAnnotation) a; break; } if (fieldAnnotation == null) { return false; } if (!name.match(fieldAnnotation.getFieldName())) { return false; } if (signature != null && !signature.equals(fieldAnnotation.getFieldSignature())) return false; return true; }