#!/bin/sh
# SMX jsch patch install
# ---------------------------------------------- #

##### Function読み込み ###########################
. ${INST_HOME}/function.sh

##### Define #####################################
moduleFile="${MODULE_DIR}/jsch_module.tar.gz"
targetDir="/opt/cse/smx/setup/servlet/webapps/ROOT/WEB-INF/lib/"

##### Function ###################################
CLEAR_FILE(){
  rm -f ${TMP_FILE} > /dev/null 2>&1
}

# エラー表示統一
error_msg(){
    echo "エラー発生！"
    echo ""
    msg_err "${SECUREMATRIX} EasySetup のモジュール復旧に失敗しました。" \
            "処理を中断します。" \
            " " \
            "<!> 予期せぬエラーです。サポートに連絡してください。"
}

# ファイルのチェック jsch-0.1.28.jar の有無の判別をする。無ければ中断 ----- #
check_file(){
  ## EasySetup パッチモジュールがインストール済みだったかフラグを確認
  if [ -f "${INST_HOME}/${JSCH_FLG}" ] ; then
    echo_sp "中断"
    echo " "
    write_log "EasySetup パッチモジュールがインストールされていた事を確認したのでスキップします。"
    msg_dialog  "${SECUREMATRIX} EasySetup のモジュール復旧は不要と判断した為スキップします。" \
                " " \
                "処理を継続します。"
    ## EasySetup モジュールインストール済みフラグ削除
    $rm -f ${INST_HOME}/${JSCH_FLG}
    WAIT_ENTER
    exit 0
  fi
  # cfFlag= 0:OK , 2:バックアップが無い
  if [ ! -f ${bakJschFile} ] ; then
    # bak no exist -> error!
    arize_err "dmy" "${SECUREMATRIX} EasySetup のバックアップモジュールがありません。"
    error_msg
    exit 1
  fi
  echo_sp "."
}

# ファイル復旧 ----------------------------------------------------------- #
restore_files(){
  ## function.sh にインストール失敗用が存在しているので、それを使用する
  jsch_restore
  echo_sp "."
}

# EZS 再起動 ----------------------------------------------------------------- #
ezs_reboot(){
  echo -n "EasySetup の再起動を行います..."

  service smx-setup restart > /dev/null 2>&1
  sleep 3
  ps -efww | grep -v grep | grep java | grep setup >/dev/null 2>&1
  
  if [ $? -ne 0 ] ; then
    error_msg
    arize_err "dmy" "${SECUREMATRIX} EasySetup の再起動に失敗しました。"
    exit 1
  else
    echo_sp "完了"
  fi
}


##### Main routine ###############################

# 初期処理
initialize


# フラグの初期化
FLAG=0


# 開始出力
CLEAR
msg_info "${SECUREMATRIX} EasySetup のモジュールを復旧します。"
#echo ""
echo_sp "${SECUREMATRIX} EasySetup モジュール復旧中."

ORG_IFS=$IFS

## パッチインストール済みか確認
check_file

## 旧 jsch に戻す
restore_files

IFS=$ORG_IFS

# 結果出力
echo "完了"
## EasySetup を再起動させる
#ezs_reboot

echo " "
msg_dialog  "${SECUREMATRIX} EasySetup のモジュール復旧が完了しました。" \
            " " \
            "処理を継続します。"
write_log "${SECUREMATRIX} EasySetup のモジュール復旧が完了しました。"
WAIT_ENTER
exit 0
