>Chris, how about sending me a URL for a complete patch?
(If nothing else, read the last two paragraphs...)
I've been looking at the code in order to make the patch; but I've
come across some items that I think I should bring up...
Basically, some of the 'Assemblers' treat the 'build' method in one
of two ways:
1 - construct the page and return it as a concrete element
2 - store the page into the document created when 'RunData.getPage' is invoked
Examples of assemblers that follow this model are 'Screen' and
'Navigation' and probably others.
Other Assemblers treat build only in the second way:
- store the page into the document created when 'RunData.getPage' is invoked
Examples of assemblers following this model are 'Page' and 'Layout'.
I think this multi-technique facet of 'build' will lead to problems
in the future. Since RunData is an object that is passed around to
lots of things throughout the code, one can almost treat it as a
global variable and I tend to think that storing data into that
object will lead to maintenance problems down the road. I would think
the better technique would be to always return a Concrete object. If
one wanted to chain together multiple objects one could always create
a 'MultiScreen' class to do that...
Is the multiple definitions of 'build' intentional or a result of
migrating code? Is anyone else concerned about this? Is anyone not
concerned? Should we try to do something to clear up the definition a
bit?
Along the same lines, the RunData.getPage() method worries me a
little. It has a non-trivial side-effect which is to create a page
and mark the RunData as 'having a page' in the variable 'isPageSet'.
Usually 'get' methods don't have side effects within the class...
Does anyone else know more about this than me?
Is anyone else worried about stuff like this? As a new, serious user
of Turbine, items like this concern me. Is this the type of stuff
that is still useful to discuss in this project or have these
decisions already been hashed out? I would like to work on Turbine
and make it an industrial strength framework that professional sites
use out of the box. Towards that end, it seems to me that discussions
like this need to take place... Any opinions?
Any responses would be greatly appreciated as it will allow me to
focus my efforts in the appropriate places...
Chris
------------------------------------------------------------
To subscribe: [EMAIL PROTECTED]
To unsubscribe: [EMAIL PROTECTED]
Problems?: [EMAIL PROTECTED]