import java.io.*;
import java.util.Date;
/**
*/
public class JTemplate
{
public JTemplate (String classname)
{
Date d = new Date ();
String s = createClass ("" + d, classname);
writeToFile (classname + ".java", s);
}
public static void main (String args[])
{
if (args.length == 1)
{
new JTemplate (args[0]);
}
else usage ();
}
public static void usage ()
{
System.out.println ( "Eine neue Javaklasse aus einem Tempate erzeugen\n");
System.out.println ( " usage: java JTemplate Classname");
System.out.println ( " example: java JTemplate FooBar");
System.out.println ( " generates File FooBar in FooBar.java with a main method\n");
System.out.println ( "(c) 2006 Stefan Wagner, Berlin, Sch\u00efneberg");
}
public String createClass (String date, String name)
{
StringBuffer sb = new StringBuffer (2000);
sb.append ("// package\n");
sb.append ("\n");
sb.append ("// import\n");
sb.append ("/**\n");
sb.append (" " + name + "\n");
sb.append ("\n");
sb.append (" @author Stefan Wagner\n");
sb.append (" @date "+ date + "\n");
sb.append ("\n");
sb.append ("*/\n");
sb.append ("public class " + name + "\n");
sb.append ("{\n");
sb.append ("\n");
sb.append (" /** */\n");
sb.append (" public " + name + " (String param)\n");
sb.append (" {\n");
sb.append ("\n");
sb.append (" }\n");
sb.append ("\n");
sb.append (" /** */\n");
sb.append (" public static void main (String args[])\n");
sb.append (" {\n");
sb.append (" String param = null;\n");
sb.append (" if (args.length == 1)\n");
sb.append (" {\n");
sb.append (" param = args[0];\n");
sb.append (" }\n");
sb.append (" // usage ();\n");
sb.append (" // System.exit (1);\n");
sb.append (" // " + name + " app = new " + name + " ();\n");
sb.append (" new " + name + " (param);\n");
sb.append (" }\n");
sb.append ("\n");
sb.append (" /** */\n");
sb.append (" public static void usage ()\n");
sb.append (" {\n");
sb.append (" System.out.println (\"Usage:\tjava " + name + " param\");\n");
sb.append (" }\n");
sb.append ("}\n");
return sb.toString ();
}
public void writeToFile (String filename, String text)
{
File file = new File (filename);
if (file.exists ())
{
System.err.println ("File exists - exiting");
System.exit (1);
}
try
{
file.createNewFile ();
}
catch (IOException e)
{
e.printStackTrace ();
System.exit (2);
}
try
{
BufferedWriter out = new BufferedWriter (new FileWriter (file, true));
out.write (text);
out.close ();
}
catch (IOException e1)
{
e1.printStackTrace ();
}
}
}
|
import java.io.*;
import java.util.Date;
/**
*/
public class JTemplate
{
public JTemplate (String classname)
{
Date d = new Date ();
String s = createClass ("" + d, classname);
writeToFile (classname + ".java", s);
}
public static void main (String args [])
{
if (args.length == 1)
{
new JTemplate (args [0]);
}
else usage ();
}
public static void usage ()
{
System.out.println ("Eine neue Javaklasse aus einem Tempate erzeugen\n");
System.out.println (" usage: java JTemplate Classname");
System.out.println (" example: java JTemplate FooBar");
System.out.println (" generates File FooBar in FooBar.java with a main method\n");
System.out.println ("(c) 2006 Stefan Wagner, Berlin, Sch\u00efneberg");
}
public String createClass (String date, String name)
{
StringBuffer sb = new StringBuffer (2000);
sb.append ("// package\n");
sb.append ("\n");
sb.append ("// import\n");
sb.append ("/**\n");
sb.append (" " + name + "\n");
sb.append ("\n");
sb.append (" @author Stefan Wagner\n");
sb.append (" @date "+ date + "\n");
sb.append ("\n");
sb.append ("*/\n");
sb.append ("public class " + name + "\n");
sb.append ("{
\n");
sb.append ("\n");
sb.append (" /** */\n");
sb.append (" public " + name + " (String param)\n");
sb.append (" {
\n");
sb.append ("\n");
sb.append ("}\n");
sb.append ("\n");
sb.append (" /** */\n");
sb.append (" public static void main (String args [])\n");
sb.append (" {
\n");
sb.append (" String param = null;\n");
sb.append (" if (args.length == 1)\n");
sb.append (" {
\n");
sb.append (" param = args [0];\n");
sb.append ("}\n");
sb.append (" // usage ();\n");
sb.append (" // System.exit (1);\n");
sb.append (" // " + name + " app = new " + name + " ();\n");
sb.append (" new " + name + " (param);\n");
sb.append ("}\n");
sb.append ("\n");
sb.append (" /** */\n");
sb.append (" public static void usage ()\n");
sb.append (" {
\n");
sb.append (" System.out.println (\"Usage:\tjava " + name + " param\");\n");
sb.append ("}\n");
sb.append ("}\n");
return sb.toString ();
}
public void writeToFile (String filename, String text)
{
File file = new File (filename);
if (file.exists ())
{
System.err.println ("File exists - exiting");
System.exit (1);
}
try
{
file.createNewFile ();
}
catch (IOException e)
{
e.printStackTrace ();
System.exit (2);
}
try
{
BufferedWriter out = new BufferedWriter (new FileWriter (file, true));
out.write (text);
out.close ();
}
catch (IOException e1)
{
e1.printStackTrace ();
}
}
}
|