<!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- $Id$ -->
<html>
<head>
<title>Tapestry: Web Application Framework</title>
</head>
<body>

Defines events and listener interfaces for Tapestry.

<p>
{@link org.apache.tapestry.event.ChangeObserver}
and
{@link org.apache.tapestry.event.ObservedChangeEvent}
are used to communicate changes in persistent properties
from pages and components to page recorders.

<p>
The remaining interfaces
{@link org.apache.tapestry.event.PageDetachListener} and
{@link org.apache.tapestry.event.PageRenderListener} allow
objects to know about key lifecycle events regarding
a page.

@author Howard Lewis Ship <a href="mailto:hlship@apache.org">hlship@apache.org</a>

</body>
</html>
