Skip to content

Instantly share code, notes, and snippets.

@srbaker
Created April 18, 2016 17:02
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save srbaker/615ce40a10106638ba7826c2041f1619 to your computer and use it in GitHub Desktop.
Save srbaker/615ce40a10106638ba7826c2041f1619 to your computer and use it in GitHub Desktop.
#!/bin/bash
# Copyright (c) 2002-2016 "Neo Technology,"
# Network Engine for Objects in Lund AB [http://neotechnology.com]
#
# This file is part of Neo4j.
#
# Neo4j is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
set -euo pipefail
[[ "${TRACE:-}" ]] && set -x
: "${NEO4J_BIN:=$(dirname "$0")}"
readonly NEO4J_BIN
. "${NEO4J_BIN}/neo4j-shared.sh"
resolve_path() {
orig_filename=$1
if [[ ${orig_filename} == /* ]]; then
filename="${orig_filename}"
else
filename="$(pwd)/${orig_filename}"
fi
echo "${filename}"
}
declare -a ARGS=("")
while [[ $# > 0 ]]
do
option="$1"
case "${option}" in
--file=*|-file=*|--path=*|-path=*|--conf=*|-conf=*)
orig_filename="${option#*=}"
orig_arg="${option%=*}"
ARGS+="${orig_arg}=$(resolve_path "${orig_filename}") "
shift
;;
--file|-file|--path|-path|--conf|-conf)
orig_filename="${2}"
ARGS+="${option} $(resolve_path "${orig_filename}") "
shift
shift
;;
*)
ARGS+="${option} "
shift
;;
esac
done
setup_environment
check_java
build_classpath
exec "$JAVA_CMD" ${JAVA_OPTS:-} \
-classpath "$CLASSPATH" \
-Dfile.encoding=UTF-8 \
org.neo4j.shell.StartClient \
"${ARGS}"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment