I have a number of situations where I would like to do compile-time checks to see if annotations are used in proper contexts. For example, is an annotation (possibly in a nested control) being used within a call-chain rooted in an environment (say a Pageflow) that the annotation does not support or doesn't make sense in?
I was thinking of using an annotation processor to detect @Control or @ControlReference annotations in a class which is a pageflow controller, and walking down the nested control dependency chain to inspect any referenced controls to make sure the annotation is used properly. But it looks like apt will only allow a single processor to register for each annotation. Does anyone know how to accomplish this kind of compile-time check in apt or Beehive another way? If not, could Beehive's TwoPhaseAnnotationProcessor be enhanced to allow other annotation processors to plug-in somehow, allowing third-parties to do additional checking on Beehive annotations like @Control? Thanks! - Jim.
