I got this working locally. Code coverage remains at the extraordinary 100% level (both for lines and branches)
To recap, this addition allows MethodAnnotationEnhancementWorkers to throw a (new) RetryAnnotationEnhancementException. In this way, they get re-processed after all other annotations from all other methods have. BTW, this is very different from SecondaryAnnotationWorkers. It also allows retries based on runtime conditions. andyhot wrote: > Currently, for a given annotated class: > - class-level workers are applied first. > - for each method : > 1) all its method-level workers are applied, then > 2) all secondary workers are tested and applied > 3) move on to the next method. > > While taking a look at copy-of > http://tapestry.apache.org/tapestry4/UsersGuide/spec.html#spec.component > and adding it to the @Component annotation, there is the need to apply a > worker > after all the other workers (from all other methods) have run. > > That's because we have to capture all bindings from the original > component before > copying them to the copyOf component. And perhaps other annotations can > make use > of this scheduling. > > Now, what i have in mind involves the > AnnotationEnhancementWorker.performMethodEnhancement method which in > turn calls > MethodAnnotationEnhancementWorker.performEnhancement > https://svn.apache.org/repos/asf/tapestry/tapestry4/trunk/tapestry-annotations/src/java/org/apache/tapestry/annotations/MethodAnnotationEnhancementWorker.java > > The idea is that if that last method throws a new > RetryLaterKindOfException, we grab all its arguments in a queue > and run it at the end. > > So, will this be useful? Am i missing an easy way out of this? > > > > -- Andreas Andreou - [EMAIL PROTECTED] - http://andyhot.di.uoa.gr Tapestry / Tacos developer Open Source / J2EE Consulting --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
