#!/bin/sh
#
# pdbase,v 1.6 2003/05/02 23:33:36 dsg Exp
# unix shell script to run the MMS relational database loader
#
# Copyright 2001 Douglas S. Greer
#

# set local variable definitions
execname=`echo $0`
execdir=`dirname ${execname}`
. ${execdir}/_vars.sh

#  public static void main class
rclass=org.rcsb.openmms.apps.rdb.PDBase

# defaults
#data_dir="file:/${TEST_CIF_DATA_DIR}"
data_dir=ftp://beta.rcsb.org/pub/pdb/uniformity/data/mmCIF.gz/all
#manifest_file=""
manifest_file=ftp://ftp.rcsb.org/pub/pdb/ls-lR
exclude_file="../dev/openmms/data/lists/ExcludeStructureIDs.list"

exactness=LenientParse
jdbc="${JDBC_DRIVER_CLASSES}"
log=PDBASE.LOG
vm_size=1500M
verbosity=3

# process command line
while getopts d:ej:l:m:s:v:x: option
do
    case "${option}"
    in
	d)   data_dir=${OPTARG};;
	e)   exactness="";;
	j)   jdbc=${OPTARG};;
	l)   log=${OPTARG};;
	m)   manifest_file=${OPTARG};;
	s)   vm_size=${OPTARG};;
	v)   verbosity=${OPTARG};;
	x)   exclude_file=${OPTARG};;
	\?)  echo "Usage: $0 [-d ddir] [-e] [-j jdbc_path] [-l log ] \c"
		echo " [-s vm_size] [-v verbosity][-m ftp_manifest]"
		echo "     [-x exclude_file]"
		echo "\t   ddir = mmcif data directory"
		echo "\t   -e = use exact parsing rules (no lenient parsing)"
		echo "\t   jdbc_path = classpath for JDBC driver(s)"
		echo "\t   log = message log file (default = PDBASE.LOG)"
		echo "\t   vm_size = java virtual machine memory size\c"
		echo " (default = 1000M)"
		echo "\t   verbosity = message verbosity level (default = 3)"
		exit 1;;
    esac
done

# classpath for JDBC classes
if [ -n ${jdbc} ]    
then
    RUN_JAVA="${RUN_JAVA}:${jdbc}"
fi

cmd_line="${RUN_JAVA} -Xmx${vm_size} ${rclass} ${exactness} data=${data_dir}\
	 manifest=${manifest_file} log=${log} debug=${verbosity}\
	 exclude=${exclude_file}"
if [ ${verbosity} -ge 4 ]
then
    echo ${cmd_line}
fi

${cmd_line}
