summaryrefslogtreecommitdiffstats
path: root/src/main/scripts/appController.sh
blob: bdb2c812e3160cd2990f5416771cf368f1a585aa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#!/bin/bash
###
# ============LICENSE_START=======================================================
# PROJECT
# ================================================================================
# Copyright (C) 2017-2018 AT&T Intellectual Property. All rights reserved.
# Copyright (C) 2018 Nokia Networks Intellectual Property. All rights reserved.
# ================================================================================
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ============LICENSE_END=========================================================
###
source bin/logger.sh

start() {
    log "Starting application"
    appPids=`pidof java`

    if [ ! -z ${appPids} ]; then
        logWarn "Tried to start an application, but it is already running on PID(s): ${appPids}. Startup aborted."
        exit 1
    fi

    ${JAVA_HOME}/bin/java -cp "etc:lib/*" \
      -Xms256m -Xmx512m \
      -XX:ErrorFile=logs/java_error%p.log \
      -XX:+HeapDumpOnOutOfMemoryError \
      -Dhttps.protocols=TLSv1.1,TLSv1.2 \
      org.onap.dcae.VesApplication $* &
}

stop() {
    log "Stopping application"
    appPids=`pidof java`

    if [ ! -z ${appPids} ]; then
        echo "Killing java PID(s): ${appPids}"
        kill -9 ${appPids}
        sleep 5
        if [ ! $(pidof java) ]; then
            log "Application stopped"
        else
            logWarn "Application did not stop after 5 seconds"
        fi
    else
        logWarn "Tried to stop an application, but it was not running";
    fi
}

case $1 in
  "start")    start ;;
  "stop")     stop ;;
  "restart")  stop; start ;;
  *)          echo "Bad usage. Should be: /bin/bash <this> start/stop"
esac