#!/bin/ash

LOG() {
  #printf "$1\n"
  local FAC=${3:-user}
  local LEV=${2:-info}
  logger -t mpkghandler -p $FAC.$LEV "$1"
}

EXCL="0"

RARGS=""

while [[ $# -gt 0 ]]; do
  case $1 in
    -e|--exclusive)
      EXCL="1"
      shift # past argument
      ;;
#    -a|--arg-with-value)
#      AWV=$1
#      shift # past argument
#      shift # past value
#      ;;
#    -b|--arg-no-value)
#      ANV=YES
#      shift # past argument
#      ;;
    -*|--*)
      echo "Unknown option $1"
      exit 1
      ;;
    *)
      RARGS="$RARGS $1" # save positional args
      shift # past argument
      ;;
  esac
done

eval set -- $RARGS # restore positional parameters

if [ ! -z $1 ]; then
  if [ "$EXCL" == "1" ]; then
    memictl stop
  fi

  LOG "Process package '$1' ..."
  python3 -m mpkghandler $1
  LOG "Process package '$1' done."

  if [ "$EXCL" == "1" ]; then
    memictl start
  fi
fi
