On Thu, Sep 15, 2011 at 2:52 PM, Greg Dritschler <[email protected]> wrote: > I stumbled upon one case where HeuristicPojoProcessor can cause this. In > visitEnd(), it tests separately whether an implementation has services, > references, or properties (as determined by previous introspectors). If an > implementation has services but no references or properties, it will fall > into calcPropRefs() which will turn unannotated setters into properties. > One would think that the first thing HeuristicPojoProcessor.visitEnd() > should do is > if (!type.getServices().isEmpty() || !type.getReferenceMembers().isEmpty() > || !type.getPropertyMembers().isEmpty()) > return; > > If all 3 are empty, then it can do its thing. > But visitEnd() also calls evaluateConstructor() in 2 places, including when > it knows there are references or properties. I'm not sure why it's trying > to evaluate constructors in an annotated POJO. > Greg
Yes, it looks like that method has evolved somewhat and I can't say precisely what it's trying to do by looking at it. In particular that spec reference is from OSOA I think. I'll have to crawl through it. Simon -- Apache Tuscany committer: tuscany.apache.org Co-author of a book about Tuscany and SCA: tuscanyinaction.com
