In porting the JSR250 module from 1.x to 2.x I found an interesting thing in the policy spec.
SCA policy annotations will only be processed when applied to interface operations JSR250 policy annotations will only be processed when applied to implementation operations I've reconstructed the code to read the JSR250 implementation annotations and they are stashed away in the implementation operations. To take account of this I've added a new operation, BasePolicyProvider.findPolicies(Operation operation) which can be used to find all the policies relating to a particular operation. Actually making this work is problematic. As the code stands at the moment it looks in the Endpoint (or EndpointReference) the interface operation (the operation that's passed in) and the implementation operation collection. There is more work to do here to work out what the implications are of implementation inheritance. Simon Apache Tuscany committer: tuscany.apache.org Co-author of a book about Tuscany and SCA: tuscanyinaction.com
