com.mkdoc.util
Class SourceList

java.lang.Object
  |
  +--com.mkdoc.util.SourceList

public final class SourceList
extends java.lang.Object

Generate a source file listing from a root directory.

Traverses all Java source files and directories under a given location and creates a one file path per line output stream. The output can be directed to a file.

The source file listing is designed to be used as input for the GNU compiler for Java, GCJ.

Version:
0.1 2004-11-05
Author:
Philip Shaw

Constructor Summary
private SourceList()
          Private default constructor.
 
Method Summary
private static boolean canReadDirectory(java.io.File directory)
          Check a directory exists and is readable.
private static boolean canWriteDirectory(java.io.File directory)
          Check a directory exists and is writeable.
private static boolean canWriteFile(java.io.File file)
          Check a file could be written.
private static void invalidDirectory(java.io.File directory)
          Report an invalid base directory to standard error.
private static void invalidFile(java.io.File file)
          Report an invalid output file to standard error.
static void main(java.lang.String[] args)
          Generate a source listing for a base directory.
private static void printUsage(java.io.PrintStream out)
          Print standard command line usage.
private static void writeList(java.io.File baseDir, java.io.PrintStream out)
          Write a source listing to the output stream.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SourceList

private SourceList()
Private default constructor.

Since:
Verison 0.1 2004-11-05
Method Detail

main

public static final void main(java.lang.String[] args)
                       throws java.io.IOException
Generate a source listing for a base directory.

If the output file already exists, it will be overwritten.

Parameters:
args - The first argument is the base directory to start from. The second argument is the output file name.
Throws:
java.io.IOException - If there is a problem writing to the selected output.
Since:
Version 0.1 2004-11-05

writeList

private static final void writeList(java.io.File baseDir,
                                    java.io.PrintStream out)
                             throws java.io.IOException
Write a source listing to the output stream.

Method calls recursively on all child directories.

Parameters:
baseDir - An initial directory to work from. All source and directories beneath will be listed.
out - An output stream to write the list to.
Throws:
java.io.IOException - If there is a problem writing to the specified output, or closing the stream.
Since:
Version 0.1 2004-11-05

printUsage

private static final void printUsage(java.io.PrintStream out)
Print standard command line usage.

Parameters:
out - Either System.err or System.out, depending on context.
Since:
Version 0.1 2004-11-05

canReadDirectory

private static final boolean canReadDirectory(java.io.File directory)
Check a directory exists and is readable.

Parameters:
directory - A file system directory reference.
Returns:
true if the referenced file system object exists, is a directory and has read permission.
Since:
Version 0.1 2004-11-05

canWriteDirectory

private static final boolean canWriteDirectory(java.io.File directory)
Check a directory exists and is writeable.

Parameters:
directory - A file system directory reference.
Returns:
true if the referenced file system object exists, is a directory and has write permission.
Since:
Version 0.1 2004-11-05

canWriteFile

private static final boolean canWriteFile(java.io.File file)
Check a file could be written.

Parameters:
file - A file reference.
Returns:
true if the file has a valid parent directory that has write permission.
Since:
Version 0.1 2004-11-05

invalidDirectory

private static final void invalidDirectory(java.io.File directory)
Report an invalid base directory to standard error.

Parameters:
directory - An invalid File reference.
Since:
Version 0.1 2004-11-05

invalidFile

private static final void invalidFile(java.io.File file)
Report an invalid output file to standard error.

Parameters:
file - An invalid File reference.
Since:
Version 0.1 2004-11-05