CVS: TapestryBook/examples/src/examples DirectArea.java,NONE,1.1
Howard Lewis Ship <[email protected]> Sat, 15 Mar 2003 18:55:43 -0800
| Newsgroups | gmane.comp.java.tapestry.cvs |
|---|---|
| Message-ID | <[email protected]> |
Update of /cvsroot/tapestry/TapestryBook/examples/src/examples
In directory sc8-pr-cvs1:/tmp/cvs-serv9012/examples/src/examples
Added Files:
DirectArea.java
Log Message:
Update book, adding chapter 06.
--- NEW FILE: DirectArea.java ---
package examples;
import org.apache.tapestry.AbstractComponent;
import org.apache.tapestry.IActionListener;
import org.apache.tapestry.IBinding;
import org.apache.tapestry.IDirect;
import org.apache.tapestry.IMarkupWriter;
import org.apache.tapestry.IRequestCycle;
import org.apache.tapestry.Tapestry;
import org.apache.tapestry.engine.IEngineService;
import org.apache.tapestry.engine.ILink;
import org.apache.tapestry.link.DirectLink;
public abstract class DirectArea extends AbstractComponent implements IDirect
{
public abstract IBinding getListenerBinding();
public abstract Object getParameters();
protected void renderComponent(IMarkupWriter writer, IRequestCycle cycle)
{
if (cycle.isRewinding())
return;
Object[] parameters = DirectLink.constructServiceParameters(getParameters());
IEngineService service = cycle.getEngine().getService(Tapestry.DIRECT_SERVICE);
ILink link = service.getLink(cycle, this, parameters);
writer.beginEmpty("area");
writer.attribute("href", link.getURL());
generateAttributes(writer, cycle);
}
public void trigger(IRequestCycle cycle)
{
IBinding listenerBinding = getListenerBinding();
IActionListener listener = null;
listener = (IActionListener) listenerBinding.getObject("listener", IActionListener.class);
if (listener == null)
throw Tapestry.createRequiredParameterException(this, "listener");
listener.actionTriggered(this, cycle);
}
public boolean isStateful()
{
return false;
}
}
-------------------------------------------------------
This SF.net email is sponsored by:Crypto Challenge is now open!
Get cracking and register here for some mind boggling fun and
the chance of winning an Apple iPod:
http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0031en