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 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140
|
#!/bin/bash -
#
# This script will start the Artemis circular plot on a UNIX system.
#
QUIET=no
PRG=$0
usage () {
echo "SYNOPSIS"
echo " DNA Plotter: DNA Image Generation Tool"
echo "USAGE"
echo " $0 [options]"
echo "OPTIONS"
echo " -t FILE Read a template file"
echo
echo "EXAMPLES"
echo " % dnaplotter"
echo " % dnaplotter -t <template file>"
echo
echo "HOMEPAGE"
echo " http://www.sanger.ac.uk/science/tools/dnaplotter/"
echo
exit 1
}
add_proxy_properties() {
if [[ "$http_proxy" = "" ]]
then
http_proxy=$HTTP_PROXY
fi
if [[ "$http_proxy" = "" ]]
then
http_proxy=$HTTP_proxy
fi
if [[ "$http_proxy" != "" ]]
then
APPLICATION_PROPERTIES="$APPLICATION_PROPERTIES -DproxySet=true "`echo $http_proxy | sed 's/http:\/\/\(.*\):\(.*\)/ -Dhttp.proxyHost=\1 -Dhttp.proxyPort=\2/'`
fi
}
#
# Resolve links - $0 may be a link
#
while [ -h "$PRG" ] ; do
ls=`ls -ld "$PRG"`
link=`expr "$ls" : '.*-> \(.*\)$'`
if expr "$link" : '.*/.*' > /dev/null; then
PRG="$link"
else
PRG="`dirname $PRG`/$link"
fi
done
#
# Parse arguments.
#
TEMPLATE_FILE_ARG=
APPLICATION_PROPERTIES="-Djdbc.drivers=org.postgresql.Driver -Dartemis.environment=UNIX $SANGER_ARTEMIS_OPTIONS"
while test $# != 0
do
case $1 in
-t) TEMPLATE_FILE_ARG="$1 $2"; shift ;;
-D*) APPLICATION_PROPERTIES="$APPLICATION_PROPERTIES $1" ;;
-quiet) QUIET=yes ; APPLICATION_PROPERTIES="$APPLICATION_PROPERTIES -Drun_quietly=true" ;;
-help) usage ;;
--help) usage ;;
-h) usage ;;
*) usage ;;
esac
shift
done
APPLICATION_HOME=`dirname "$PRG"`
JAR_NAME=dnaplotter.jar
JAR_FILE=$APPLICATION_HOME/$JAR_NAME
#
# Use a custom Java version if necessary
#
if [[ "$ARTEMIS_JAVA_JRE" = "" ]]
then
JAVA=`which java`
else
JAVA_HOME=$ARTEMIS_JAVA_JRE
JAVA=$ARTEMIS_JAVA_JRE/bin/java
fi
#
# Allow URLs to work from behind firewalls.
#
add_proxy_properties
#
# "-mx1g" sets the maximum amount of memory to use.
# This may need to be increased when dealing with large files
#
if [[ "$ARTEMIS_JVM_FLAGS" = "" ]]
then
FLAGS="-mx2g -ms100m -noverify"
else
FLAGS="$ARTEMIS_JVM_FLAGS -noverify"
fi
PLATTMP=`uname`
if [[ "$PLATTMP" = "Darwin" ]]
then
APPLICATION_PROPERTIES="$APPLICATION_PROPERTIES -Dapple.laf.useScreenMenuBar=true -Dcom.apple.mrj.application.apple.menu.about.name=Circular-Plot"
fi
if [[ "$QUIET" = "no" ]]
then
echo "Starting DNA Plotter with arguments: $FLAGS $APPLICATION_PROPERTIES $TEMPLATE_FILE_ARG"
fi
if [[ -e $JAR_FILE ]]
then
$JAVA $FLAGS $APPLICATION_PROPERTIES -jar $JAR_FILE $TEMPLATE_FILE_ARG
result=$?
else
CLASSPATH=$APPLICATION_HOME:$APPLICATION_HOME/lib/biojava.jar:$APPLICATION_HOME/lib/jemAlign.jar:$APPLICATION_HOME/lib/jakarta-regexp-1.2.jar:$APPLICATION_HOME/lib/postgresql-8.4-701.jdbc3.jar:$CLASSPATH
CLASSPATH=$CLASSPATH:$APPLICATION_HOME/lib/j2ssh/commons-logging.jar:$APPLICATION_HOME/lib/j2ssh/j2ssh-core.jar:$APPLICATION_HOME/lib/j2ssh/
CLASSPATH=$CLASSPATH:$APPLICATION_HOME/lib/ibatis/ibatis-2.3.4.726.jar:$APPLICATION_HOME/lib/ibatis/:$APPLICATION_HOME/lib/ibatis/log4j-1.2.14.jar:$APPLICATION_HOME/lib/ibatis/cglib-nodep-2.2.jar
CLASSPATH=$CLASSPATH:$APPLICATION_HOME/lib/batik/batik-awt-util.jar:$APPLICATION_HOME/lib/batik/batik-dom.jar:$APPLICATION_HOME/lib/batik/batik-ext.jar:$APPLICATION_HOME/lib/batik/batik-svggen.jar:$APPLICATION_HOME/lib/batik/batik-util.jar:$APPLICATION_HOME/lib/batik/batik-xml.jar
CLASSPATH=$APPLICATION_HOME/lib/picard/picard.jar:$APPLICATION_HOME/lib/commons-net-3.6.jar:$CLASSPATH
CLASSPATH=$APPLICATION_HOME/lib/commons-lang-2.6.jar:$CLASSPATH
export CLASSPATH
$JAVA $FLAGS $APPLICATION_PROPERTIES uk.ac.sanger.artemis.circular.DNADraw $TEMPLATE_FILE_ARG
result=$?
fi
exit $result
exit $?
|