Instead of having ignore code in all listeners, what if the recorder gets decorated with something that ignores ignored projects? That way all ignore code is contained there.