On 30.03.2008 22:19, [EMAIL PROTECTED] wrote:

Author: joerg
Date: Sun Mar 30 19:19:41 2008
New Revision: 642855

URL: http://svn.apache.org/viewvc?rev=642855&view=rev
Log:
fix synchronization

Can you please review this [1]? It's too easy to mess this up ... I hope I did not introduce any deadlock.

One thing I came across and did not like is the maintenance of the Set "forest" which is according to Javadoc only done for debugging reason, on the other hand exposed even via the interface. I would rather clean up the interface and remove the following 2 methods:

/**
 * Prints debug information about all web continuations into the log file.
 * @see WebContinuation#display()
 */
public void displayAllContinuations();

/**
* Get a list of all continuations as <code>WebContinuationDataBean</code> objects.
 */
public List getWebContinuationsDataBeanList();

At the moment it's only needed for StatusGenerator. We can therefore add another method getContinuations() which only returns a clone of the continuations. Also we should not maintain "forest", but just reuse the Set "expirations". We should be able to reconstruct everything else on demand.

The current interface makes the implementation overly complex. In 2.1 it is even worse due to maintenance of Instrumentable variables.

WDYT? If we don't want to remove the 2 methods for compatibility reasons we can deprecate them and change the implementation to just print a deprecation warning.

Joerg

[1] http://marc.info/?l=xml-cocoon-cvs&m=120693001028779&w=4

Reply via email to