> > It's some extra work at coding, but it doesn't interfere with the > > loading of the initial template, so the testing and debugging should be > > easier. > > It sounds about right yes. I'll take a closer look at > DeferringMustacheFactory.
Maybe i'm blind but i can't see any satisfactory solution here. The visitor pattern provides the "deferring" functionality, and that is only for the rendering of the partial, not the load/compile of it. What we are trying to do is add a context to MustacheFactory where one previously doesn't exist, a hint that lambdas are better suited. It would be better if the definition name was also explicit in the partial, eg {{>definitionName/attributeName}} but in practice often you would want definitionName to be relative, ie the current definition. > > We're still working our way through things (it's important that > > including partials by tiles attribute names works both client and server > > side), it may well be that we use lambdas instead of partials... and > > that leads to implementing an autotag implementation against lambdas. > > I was thinking of implementing something (a DefinitionRenderer?) that > evaluates all the definition attributes first, and delivers the results > as request attributes (through a RequestWrapper, and possibly an extra > scope "definition") before calling the definition template. Indeed we're working on that problem. AttributeContext provides what we want. Our first attempt is simply to dump all attributes as a Map<String,Object> into the request scope under the name "tiles" (in a subclass of the MustacheRenderer). But this might not work so smoothly client side. Which brings us back to lambdas, as they might be easier to implement with one javascript library than to provide examples on how to make the client-side stuff compatible… (lambdas weren't our first approach as they were in mustache java 0.6). Either way the server must provide a url that returns a json object holding all tiles attributes. But that is easy enough to demonstrate how to do. ~mck -- "A mind that has been stretched will never return to its original dimension." Albert Einstein | http://github.com/finn-no | http://tech.finn.no |
signature.asc
Description: This is a digitally signed message part