Synch'ed from Rel_1_3.
[java-idp.git] / bin / metadatatool
1 #!/bin/sh
2
3 ##We need a JVM
4 if [ ! -n "$JAVA_HOME" ] ; then
5   echo "Error: JAVA_HOME is not defined."
6   exit
7 fi
8
9 if [ ! -n "$JAVACMD" ] ; then
10   JAVACMD=$JAVA_HOME/bin/java
11 fi
12
13 if [ ! -x "$JAVACMD" ] ; then
14   echo "Error: JAVA_HOME is not defined correctly."
15   echo "Cannot execute $JAVACMD"
16   exit
17 fi
18
19
20 ##Find the shibboleth components
21 if [ -n "$IDP_HOME" ] ; then
22         SHIB_HOME=$IDP_HOME
23 fi
24 if [ -n "$SP_HOME" ] ; then
25         SHIB_HOME=$SP_HOME
26 fi
27 if [ ! -n "$SHIB_HOME" ] ; then
28         echo "Error: Neither IDP_HOME nor SP_HOME is defined."
29         exit
30 fi
31
32 ENDORSED=$SHIB_HOME/endorsed
33
34 if [ ! \( -f "$SHIB_HOME/lib/shib-util.jar" -a -r "$SHIB_HOME/lib/shib-util.jar" \) ] ; then
35   echo "Error: Cannot find the shibboleth jar (shib-util.jar)."
36   echo "       If you downloaded the shibboleth source, you need to run \"ant build-util\""
37   exit
38 fi
39
40 ##Grab all the dependencies
41 if [ -n "$CLASSPATH" ] ; then
42   SHIB_UTIL_CLASSPATH=$CLASSPATH
43 fi
44
45 DIRLIBS=${SHIB_HOME}/lib/*.jar
46 for i in ${DIRLIBS}
47 do
48     # if the directory is empty, then it will return the input string
49     # this is stupid, so case for it
50     if [ "$i" != "${DIRLIBS}" ] ; then
51       if [ -z "$SHIB_UTIL_CLASSPATH" ] ; then
52         SHIB_UTIL_CLASSPATH=$i
53       else
54         SHIB_UTIL_CLASSPATH="$i":$SHIB_UTIL_CLASSPATH
55       fi
56     fi
57 done
58 SHIB_UTIL_CLASSPATH=$SHIB_UTIL_CLASSPATH:"$SHIB_HOME"
59
60 ##Here we go
61 $JAVACMD -Djava.endorsed.dirs="$ENDORSED" -cp $SHIB_UTIL_CLASSPATH  edu.internet2.middleware.shibboleth.utils.MetadataTool "$@"