
/**
 *CopyRight 2008 Console Limited 
 *All Rights Reserved
 */

package com.console.web.event;

import com.console.web.BaseProcessor;
import com.console.web.BaseProcessor_Intf;
import com.console.web.LoginBean;
import com.console.web.RegisterBean;
import com.console.web.UserBean;
import java.io.IOException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import net.sourceforge.stripes.action.ActionBean;
import net.sourceforge.stripes.action.ActionBeanContext;

/**
 *
 * @author Farouk Alhassan
 */
public abstract class BaseAction implements ActionBean,BaseProcessor_Intf {
  
  BaseProcessor baseProcessor;
  
  private ActionBeanContext context;
  
  /**
   * Must overide to initialise baseProcessor. Else u can not use BaseProcessor
   */
  abstract void init() throws IOException;

  public void setContext(ActionBeanContext arg0) {
    this.context = arg0;
  }

  public ActionBeanContext getContext() {
    return context;
  }

  public LoginBean getLoginBean() {
    return this.baseProcessor.getLoginBean();
  }

  public RegisterBean getRegisterBean() {
    return this.baseProcessor.getRegisterBean();
  }

  public HttpServletRequest getRequest() {
    return this.context.getRequest();
  }

  public HttpServletResponse getResponse() {
    return this.context.getResponse();
  }

  public HttpSession getSession() {
    return this.context.getRequest().getSession();
  }

  public UserBean getUserBean() {
    return this.baseProcessor.getUserBean();
  }

}
