Ok,

Jason (primarily) and I implemented a portion of the PullModel within
Turbine that allows for you to use a configuration file based methodology to
place objects into the "global" scope of a Context. In other words, when the
VelocityService is started, it will attempt to load any "tools" that you
have defined and then place them into your "toolbox" which is essentially a
nested Context object (Velocity supports the idea of nesting a Context
within another Context).

This is a good first start for making tools easily available. In fact, Jason
also included his first tool which is a UIManager (@see
org.apache.turbine.util.pull.UIManager.java). The advantage of this is that
the class is then available to you on a global basis at any point both
within your all of your Modules but also within your templates. One thing to
note is that since these tools could be accessed by multiple threads at the
same time, they need to be threadsafe as well as connectionsafe (ie:
multiple connections could be accessing the tool at the same time).

The next step is to implement the second step of the process which is to
create an additional portion that will allow us to have per-connection tools
placed into the toolbox. These will be re-instantiated for each request
(around the time the Page Module is executed) and then destroyed when the
processing is over. I'm going to work on this part today and it should just
be an extension of what we have in the PullService.

thanks,

-jon

-- 
Honk if you love peace and quiet.



------------------------------------------------------------
To subscribe:        [EMAIL PROTECTED]
To unsubscribe:      [EMAIL PROTECTED]
Search: <http://www.mail-archive.com/turbine%40list.working-dogs.com/>
Problems?:           [EMAIL PROTECTED]

Reply via email to