CVS: TapestryBook/examples/src/java/examples/todo4 ToDo4.java,NONE,1.1 ToDoItem4.java,NONE,1.1

Howard Lewis Ship <[email protected]> Fri, 11 Jul 2003 21:16:48 -0700
Newsgroups gmane.comp.java.tapestry.cvs
Message-ID <[email protected]>
Update of /cvsroot/tapestry/TapestryBook/examples/src/java/examples/todo4
In directory sc8-pr-cvs1:/tmp/cvs-serv6871/examples/src/java/examples/todo4

Added Files:
	ToDo4.java ToDoItem4.java 
Log Message:
Reorganize examples application to reflect standard organization

--- NEW FILE: ToDo4.java ---
package examples.todo4;

import java.util.List;

import org.apache.tapestry.IRequestCycle;
import org.apache.tapestry.PageRedirectException;
import org.apache.tapestry.event.PageEvent;
import org.apache.tapestry.form.ListEditMap;

import examples.todo1.ToDoItem;
import examples.todo3.ToDo3;

public abstract class ToDo4 extends ToDo3
{
    public abstract void setErrorMessage(String message);

    public abstract void setListEditMap(ListEditMap listEditMap);
    public abstract ListEditMap getListEditMap();
    
    public abstract void setItem(ToDoItem item);

    protected ToDoItem createNewItem(String title)
    {
        return new ToDoItem4(title);
    }

    public void pageBeginRender(PageEvent event)
    {
        super.pageBeginRender(event);

        // Construct a ListEditMap with all the current items.

        ListEditMap map = new ListEditMap();

        List items = getToDoList();
        int count = items.size();

        for (int i = 0; i < count; i++)
        {
            ToDoItem4 item = (ToDoItem4) items.get(i);
            int uid = item.getUid();

            map.add(new Integer(uid), item);
        }

        setListEditMap(map);
    }

    public void synchronizeItem(IRequestCycle cycle)
    {
        ListEditMap map = getListEditMap();

        ToDoItem item = (ToDoItem) map.getValue();

        if (item == null)
        {
            setErrorMessage("Your form submission is out of date.  Please retry.");
            throw new PageRedirectException(this);
        }
	
		setItem(item);
    }

}

--- NEW FILE: ToDoItem4.java ---
package examples.todo4;

import examples.todo3.ToDoItem3;

public class ToDoItem4 extends ToDoItem3
{
	private static int _nextuid = 0;
	
    private int _uid = _nextuid++;


    public ToDoItem4()
    {
        super();
    }

    public ToDoItem4(String title)
    {
        super(title);
    }

    public int getUid()
    {
        return _uid;
    }
}



-------------------------------------------------------
This SF.Net email sponsored by: Parasoft
Error proof Web apps, automate testing & more.
Download & eval WebKing and get a free book.
www.parasoft.com/bulletproofapps1