I think I have already agreed on a separate class since it seems to be the only option due to generics issue. Should we extract a super class?
We can put hard requirement that filter and transformer cannot throw exception (same as cache interceptor). If exception is thrown then we cancel the query globally and unregister all the listeners. This may sound too much but inconsistencies brought by listener notifications may be terrible for app. --Yakov
