/**
 * Copyright (c) 2003-2004 System Integrator Corporation.
 *                 All Rights Reserved.
 */
package jp.co.sint.upload;

import java.io.FileNotFoundException;
import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import jp.co.sint.beans.mallmgr.UICmdtyUploadImgList;
import jp.co.sint.config.SIConfig;
import jp.co.sint.tools.SIErrorFactory;
import jp.co.sint.tools.SIFileExistException;
import jp.co.sint.tools.SIUtil;

import org.apache.commons.fileupload.FileUploadException;
import org.apache.log4j.Category;

/**
 * @version $Id: SICmdtyUploadImgSrv.java,v 1.0 2003/12/04 Exp $
 * @author  Jinwang Chen
 * <br>Description:
 * <p>History</p>
 * <p>Author&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Date&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Reason</p>
 *  ============&nbsp;&nbsp;&nbsp;==========&nbsp;&nbsp;===========================<br>
 * Jinwang Chen   2003/12/04 14:03:42  Original
 */
public class SICmdtyUploadImgSrv extends SIUploadSrv{
  //ログ用のインスタンスの生成
  private static Category log=Category.getInstance(SIConfig.SILOG4J_WEBSHOP_CATEGORY_NAME);

  /**
   * <b>doUpdate</b>
   * HTTP リクエストの処理
   * @param  request　リクエスト
   * @param  response
   * @return なし
   * @throws ServletException
   * @throws IOException
   * @throws FileNotFoundException
   */
  public void doUpdate(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException, FileNotFoundException {
    HttpSession session=request.getSession();
    try {

      super.doUpload(request,response);

      UICmdtyUploadImgList uploadImgList = new UICmdtyUploadImgList();
      uploadImgList.setDestPath(getMultiParameter(request,"destPath"));
      uploadImgList.setShopCode(getMultiParameter(request,"subDir"));
      session.setAttribute(SIConfig.SISESSION_MAN_UPLOAD_IMG_NAME,uploadImgList);
      String lUploadMsg=(String)request.getAttribute(SIConfig.SIMESSAGE_ATTRIBUTE_RESULT_NAME);

      if (SIUtil.isNull(lUploadMsg)){//アップロード成功
        request.setAttribute(SIConfig.SIMESSAGE_ATTRIBUTE_RESULT_NAME,SIErrorFactory.getErrorMsg("manager.message.success.upload"));
      }
    } catch (FileNotFoundException e) {
      request.setAttribute(SIConfig.SIMESSAGE_ATTRIBUTE_RESULT_NAME,SIErrorFactory.getErrorMsg("manager.message.failure.exist","画像"));
      log.warn(e);
    } catch (FileUploadException e) {
      request.setAttribute(SIConfig.SIMESSAGE_ATTRIBUTE_RESULT_NAME,SIErrorFactory.getErrorMsg("manager.message.failure.upload"));
      log.warn(e);
    }catch(SIFileExistException e){
      request.setAttribute(SIConfig.SIMESSAGE_ATTRIBUTE_RESULT_NAME,e.toString());
      log.warn(e);
    }
    forwardKey(request,response,"webshop.jsp.manager.cmdty.uploadimg");
  }
}
