Files
artloglaby/java/generate_newclass.sh
philippe lhardy 850744326a initial commit for labryinth project on git_hub.
Signed-off-by: philippe lhardy <philippe@pavilionartlogiciel>
2014-12-24 17:28:23 +01:00

75 lines
1.0 KiB
Bash
Executable File

#!/bin/bash
PACKAGE=org.artisanlogiciel.games
while [[ $# > 0 ]]
do
case $1 in
package=*)
PACKAGE=${1/package=/}
;;
*)
CLASS=${1}
;;
esac
shift 1
done
if [[ -z $CLASS ]]
then
echo "[ERROR] Missing class" >&2
exit 1
fi
PACKAGE_DIR=${PACKAGE//\./\/}
if [[ ! -d $PACKAGE_DIR ]]
then
echo "Missing $PACKAGE_DIR" >&2
exit 1
fi
JAVA_FILE=$PACKAGE_DIR/$CLASS.java
if [[ -e $JAVA_FILE ]]
then
echo "[ERROR] $JAVA_FILE already exists" >&2
exit 1
else
cat <<EOF >$JAVA_FILE
package $PACKAGE;
/**
$CLASS was autogenerated by $0
**/
public class $CLASS
{
Object param;
$CLASS(Object param)
{
this.param=param;
}
void method()
{
System.out.println("Method of $PACKAGE.$CLASS");
}
public static void main(String args[]) {
if ( args.length > 1 )
{
$CLASS instance=new $CLASS(args[1]);
instance.method();
}
else
{
System.err.println("Missing argument for $CLASS");
}
}
}
EOF
fi
echo "$JAVA_FILE generated"