Change ptw-20110123-v6D by [email protected] on 2011-01-23 11:34:46 EST in /Users/ptw/OpenLaszlo/trunk-3 for http://svn.openlaszlo.org/openlaszlo/trunk
Summary: Once more with feeling on LZO's Bugs Fixed: LPP-9691 Child nodes not created for instance classes when created in LZO Technical Reviewer: [email protected] (pending) QA Reviewer: [email protected] (pending) Overview: This change addresses all the recently added regression tests discovered by Yuwen. Hoping this is the charm. Details: lfc-undeclared: I need interfaces to be able to specify both `extends` and `implements` to describe LZO interstitials. If that seems nonsensical, then we will have to invent some new LZO-only schema tag to describe interstitials, but this is my solution for now. ViewCompiler: Gather dependencies specified by `implements` to ensure external mixin references will be linked. ViewSchema: Emit mixin definitions first so they can be referred to by interfaces. Emit interfaces even if they have not been modelled (which means they were included from another LZO). When looking for childClassModels, they may be interfaces. NodeModel: LZO interface children have to refer to the actual interstitial class. ClassModel: Track interfaces implemented by interstitials. Give interstitials valid XML names. Interstitial interfaces need to specify the interfaces they implement (whether they are internal interfaces that need to be resolved at load time or external interfaces which will need to be linked at link time). Mixins in LZO's must be written both as XML (for cloning) and as JS (to link to by `implements`). Tests: ant lztest, Yuwen will verify jade LZO compile Files: M WEB-INF/lps/schema/lfc-undeclared.lzx M WEB-INF/lps/server/src/org/openlaszlo/compiler/ViewCompiler.java M WEB-INF/lps/server/src/org/openlaszlo/compiler/InterfaceCompiler.java M WEB-INF/lps/server/src/org/openlaszlo/compiler/ViewSchema.java M WEB-INF/lps/server/src/org/openlaszlo/compiler/CompilationEnvironment.java M WEB-INF/lps/server/src/org/openlaszlo/compiler/NodeModel.java M WEB-INF/lps/server/src/org/openlaszlo/compiler/ClassModel.java Changeset: http://svn.openlaszlo.org/openlaszlo/patches/ptw-20110123-v6D.tar
