-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathhsqldb.sh
executable file
·80 lines (65 loc) · 1.76 KB
/
hsqldb.sh
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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
#!/bin/bash
#
# Launches and stops standalone HSQLDB servers from command-line.
# Requires working maven
#
VER=2.3.3
JAR=~/.m2/repository/org/hsqldb/hsqldb/$VER/hsqldb-$VER.jar
function getJar() {
if ! [ -f $JAR ] ; then
# from http://stackoverflow.com/a/1896110/15472
mvn org.apache.maven.plugins:maven-dependency-plugin:2.1:get \
-DrepoUrl=http://repo.maven.apache.org/maven2/ \
-Dartifact=org.hsqldb:hsqldb:$VER
fi
}
function start() {
getJar
(java -cp $JAR org.hsqldb.server.Server &)
}
function gui() {
getJar
(java -cp $JAR org.hsqldb.util.DatabaseManagerSwing &)
}
function stop() {
PID=$(ps -ef | grep server.Server | grep -v grep | awk '{print $2}')
if ! [ -z "$PID" ] ; then kill $PID ; fi
}
function other() {
getJar
shift
echo "java -cp $JAR org.hsqldb.server.Server $@"
(java -cp $JAR org.hsqldb.server.Server $@ &)
}
# help contents
function help() {
cat << EOF
Uso $0 [OPERACION | --help]
Script de IW para iniciar, examinar y parar servidores de bd
HSQLDB.
OPERACION debe ser una de las siguientes:
start: Arranca el servidor
gui: Muestra una interfaz grafica para ver
tablas y realizar consultas
stop: Para el servidor
--help Muestra esta ayuda
EOF
}
# main entrypoint, called after defining all functions
function main() {
if [[ $# -eq 0 ]] ; then
echo " Uso: $0 [OPERACION | --help]"
exit 0
fi
case "$1" in
"start") start ;;
"stop") stop ;;
"gui") gui ;;
"other") other $@ ;;
"--help") help ;;
*) echo \
" Uso: $0 [OPERACION | --help]" \
&& echo " ('$1' NO es una operacion valida)'" ;;
esac
}
main $@