diff options
Diffstat (limited to 'conversion')
-rw-r--r-- | conversion/ConvertDirectory.java | 12 | ||||
-rw-r--r-- | conversion/ignore/Ignored.java | 33 |
2 files changed, 43 insertions, 2 deletions
diff --git a/conversion/ConvertDirectory.java b/conversion/ConvertDirectory.java index 2a0f6a9..a5717bb 100644 --- a/conversion/ConvertDirectory.java +++ b/conversion/ConvertDirectory.java @@ -24,6 +24,7 @@ package scruf.conversion; import java.io.*; import scruf.index.*; import scruf.status.*; +import scruf.conversion.ignore.*; public class ConvertDirectory { private ConvertFile html; @@ -39,6 +40,9 @@ public class ConvertDirectory { " No conversion done on."); return; } + // Ignored object maintains a list of 'ignored' sub-directories + // in this directory. + Ignored ignored = new Ignored(directory); // index creator for the present directory. IndexCreator index = new IndexCreator(directory); // iterate through the directory. @@ -53,8 +57,12 @@ public class ConvertDirectory { } } else if(file.isDirectory()) { - ++DirectoryInfo.level; - this.convert(file); + // Perform conversion, only if, directory + // is not a ignored directory. + if(!ignored.ignored(file)) { + ++DirectoryInfo.level; + this.convert(file); + } } } boolean convertIndex = (index.shouldConvert() || diff --git a/conversion/ignore/Ignored.java b/conversion/ignore/Ignored.java new file mode 100644 index 0000000..8129f18 --- /dev/null +++ b/conversion/ignore/Ignored.java @@ -0,0 +1,33 @@ +package scruf.conversion.ignore; + +import java.io.*; +import scruf.io.*; + +public class Ignored { + private String ignoredList[]; + public Ignored(File directory) { + File ignoredFile = new File(directory,".ignored"); + if(ignoredFile.exists()) { + ignoredList = new ReadFile(ignoredFile).split("\n"); + } + } + public boolean ignored(File subdirectory) { + boolean ignored = false; + if(ignoredList!=null) { + for(String dir:ignoredList) { + if(subdirectory.getName().matches(dir)) { + System.out.println("Ignoring Directory: "+ + subdirectory.getAbsolutePath()); + ignored = true; + break; + } + } + } + return ignored; + } +} + +/** + CVS/ + /home/rsd/projects/scruf/www/CVS/ + */
\ No newline at end of file |