package edu.umd.cs.findbugs; public class ParameterWarningSuppressor extends ClassWarningSuppressor { final MethodAnnotation method; final int register; public ParameterWarningSuppressor(String bugPattern, ClassAnnotation clazz, MethodAnnotation method, int register) { super(bugPattern, clazz); this.method = method; this.register = register; } @Override public boolean match(BugInstance bugInstance) { if (!super.match(bugInstance)) return false; MethodAnnotation bugMethod = bugInstance.getPrimaryMethod(); LocalVariableAnnotation localVariable = bugInstance.getPrimaryLocalVariableAnnotation(); if (bugMethod == null || !method.equals(bugMethod)) return false; if (localVariable == null || localVariable.getRegister() != register) return false; if (DEBUG) System.out.println("Suppressing " + bugInstance); return true; } }