private void restorePageChanges()
{
int count = 0;
Enumeration e = _session.getAttributeNames();
StringSplitter splitter = null;
while (e.hasMoreElements())
{
String key = (String) e.nextElement();
if (!key.startsWith(_attributePrefix))
continue;
if (LOG.isDebugEnabled())
LOG.debug("Restoring page change from session attribute " + key);
if (_changes == null)
{
_changes = new HashMap();
splitter = new StringSplitter('/');
}
String[] names = splitter.splitToArray(key);
// The first name is the servlet name, which allows
// multiple Tapestry apps to share a HttpSession, even
// when they use the same page names. The second name
// is the page name, which we already know.