package org.japanosample.action;

import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpServletRequest;
import org.japanosample.SampleSession;
import org.japano.metadata.annotation.*;

/**
 
 Action which adds to a number stored in the sample session
 
 @author  Sven Helmberger ( sven dot helmberger at gmx dot de )
 @version $Id: AddForm.java,v 1.4 2005/09/11 20:34:40 fforw Exp $
 */
 ( library="/sample", name="add2", repeatable=true )
public class AddForm implements org.japano.action.Action
{      
  /** Value to be added */
  private int number=1;
  
  /**
   Sets the value to be added
   */
   ( value="1", maxLength=10 )
   ( required=true, regex="-?[0-9]+", errorMessage="Invalid number" )
  public void setNumber(int number)
  {
    this.number=number;
  }
    
  /** Performs the action */  
  public void perform(HttpServletRequest request, HttpServletResponse response) throws java.io.IOException
  {
    SampleSession session=(SampleSession)request.getSession();    
    session.setNumber(session.getNumber()+number);
    session.setView("/jsupdate.jsp");
  }  
}