and then finally I realized that the AggState was a request
attribute, so it doesn't get lost when replacing the context...
seems a bit obscure to me. Am also surprised that we do
request.getAttribute() to retrieve it, but we store it with
(thisContext.)setAttribute.
In any case, our new recruit, Andriy, is working closely with
Philipp on some refactorings and changes of the Context API, so I
suppose we can expect improvements and cleanup there in the near
future.
Here some notes from the front:
- in future a login won't replace the context instance, but will
change some inner strategies
- no need for hacks like passing objects by putting it into the
request
- the contexts should NOT store objects in the attributes but keep
them as a field (AS, HM, AM,...)
- for session objects this is still as before but a rarely used
any more (user object only)
- In the attributes (mainly the local scope), we should only find the
objects which a user put there explicitly or implicitly (by a request
or workitem)
I hope this clarifies the things a bit.
Philipp Bracher
----------------------------------------------------------------
for list details see
http://documentation.magnolia.info/docs/en/editor/stayupdated.html
----------------------------------------------------------------