Hi,
thanks for sharing the PoC. Few questions:
1) Your PoC links it to the Portable Extension model (and uses AnnotatedMethod as a basis) - but I assume you want this to work in Lite as well, correct?
- if so, then the ExecutableMethod interface needs to be independent of AnnotatedMethod (which won't be used/present in Lite) so that it can be reused in both extension models
2) Could you clarify what does the "process"[1] property on Executable interface mean in practice?
- it talks about the method being "processed at startup" but I assume all executable methods are processed during CDI bootstrap (hence the PE observer method notifications)
- also, a startup of what? CDI container? If so, user can easily do that by invoking the method within relevant observer
3) Is it intended that the only way to get hold of ExecutableMethod reference is via extension?
- I actually like that it is semi-public and oriented at integrators, just not sure that's the intention :)
4) We should think of a better name for this feature because all methods are executable. We needn't solve that now, just something to keep in mind.
- something that indicated that the method has injection and is part of a bean might be better
I might think of some more, these are just the first few thoughts I had.
Regards
Matej
____________________________________________________________________________