#!/bin/sh

# Use for core dump creation on programm crash
ulimit -c unlimited

# User directory prepare
if [ ! -d ~/.openscada_my ]; then mkdir -m 700 ~/.openscada_my; fi
if [ ! -d ~/.openscada_my/ARCHIVES ]; then
    mkdir -pm 700 ~/.openscada_my/ARCHIVES/MESS;
    mkdir -pm 700 ~/.openscada_my/ARCHIVES/VAL;
fi
if [ ! -L ~/.openscada_my/icons ]; then ln -s /var/spool/openscada/icons ~/.openscada_my/icons; fi
if [ ! -d ~/.openscada_my/LibsDB ]; then cp -R /var/spool/openscada/LibsDB ~/.openscada_my/; fi
#if [ ! -e ~/.openscada_my/oscada_my.xml ]; then cp /etc/oscada_my.xml ~/.openscada_my/; fi
cd ~/.openscada_my

# Programm command and lock file
pCmd="openscada --Config=./oscada_my.xml"
pLock=".MY.lock"

# Check for already started programm present
if [ -f $pLock ] && ps -Ao pid,command | grep "$(cat ${pLock})[ ]*${pCmd}" > /dev/null; then
    echo "OpenSCADA Model MY-station already started!";
    exit 1;
fi

# Call programm
$pCmd $@ &
pPid=$!

# Create lock file
echo $pPid > $pLock

# Wait for programm stop
wait $pPid
echo "Program rezult: $?"

# Remove lock file
rm -f $pLock
