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

Reply via email to