#!/bin/sh -e

CODEPATH=/usr/lib/unifi

if [ "$1" = "remove" ] || [ "$1" = "upgrade" ] ; then
    if [ -d /run/systemd/system ]; then
      deb-systemd-invoke stop "unifi.service" >/dev/null
    elif which invoke-rc.d >/dev/null 2>&1; then
        invoke-rc.d unifi stop
    else
        /etc/init.d/unifi stop
    fi
    for i in $(seq 1 30); do
        [ -z "$(pgrep -f ${CODEPATH}/lib/ace.jar)" ] && break
        # graceful shutdown
        [ $i -gt 1 ] && touch ${CODEPATH}/run/server.stop || true
        # savage shutdown
        [ $i -gt 15 ] && pkill -f ${CODEPATH}/lib/ace.jar || true
        sleep 1
    done
    [ ! -d ${CODEPATH}/webapps/ROOT ] || rm -rf ${CODEPATH}/webapps/ROOT
    [ ! -d ${CODEPATH}/work ] || rm -rf ${CODEPATH}/work
    rm -rf ${CODEPATH}/data ${CODEPATH}/logs ${CODEPATH}/run ${CODEPATH}/bin/mongod
fi
exit 0
