tools/binary_dumper.sh
author Jan Vrany <jan.vrany@labware.com>
Tue, 09 Aug 2022 14:33:27 +0100
changeset 4012 117835eb9839
parent 3353 0f2df59e58e2
permissions -rwxr-xr-x
Remove Mauve tests See previous commit for explanation.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3353
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
     1
#!/bin/bash
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
     2
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
     3
OUTPUT_DIR=`pwd`
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
     4
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
     5
help() {
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
     6
    echo "Binary Dumper dumps detailed information about the given Java classes."
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
     7
    echo "The classes can be specified by their names or by paths to .jar files."
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
     8
    echo
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
     9
    echo "Parameters:"
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    10
    echo "	-h, --help		print help for this script"
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    11
    echo "	-o, --outputdir <dir>	specify the directory for the output (if not specified the current directory is used)"
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    12
    echo ""
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    13
    echo "EXAMPLE:"
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    14
    echo "./binary_dumper -o ./test java.lang.Object /path/to/file.jar java.lang.String"
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    15
    echo "(Dumps Object, String and classes from file.jar to the ./test directory.)"
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    16
    echo ""
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    17
    exit 0
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    18
}
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    19
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    20
# Run the Binary Dumper
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    21
run() {
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    22
	echo "Starting Binary Dumper"
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    23
	echo "Output directory is: ${OUTPUT_DIR}"
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    24
	java -cp java/bin:java/libs/org.eclipse.jdt.core_3.8.3.v20130121-145325.jar stx.libjava.tools.environment.utils.BinaryDumper $OUTPUT_DIR $@
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    25
}
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    26
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    27
if [[ $1 == "--help" || $1 == "-h" ]]; then
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    28
    help
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    29
fi
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    30
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    31
if [[ $1 == "--outdir" || $1 == "-o" ]]; then
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    32
    OUTPUT_DIR=$2
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    33
    shift
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    34
	shift
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    35
fi
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    36
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    37
if [[ -z "$1" ]]; then
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    38
    echo "No classes to dump. Specify them as a space separated list of arguments (see the --help or -h)"
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    39
	exit
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    40
fi
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    41
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    42
run "$@"
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    43
0f2df59e58e2 Shell script for easier launching of BinaryDumper added.
Tomas Heger <heger.tomas@gmail.com>
parents:
diff changeset
    44