Update of /cvsroot/cdchamber/CDChamber/aspect/gen/org/cdchamber/elements In directory usw-pr-cvs1:/tmp/cvs-serv2111/aspect/gen/org/cdchamber/elements Modified Files: CompressedFileType.java FileTypeFactory.java Added Files: CVSFileFilter.java FileFilters.java IFileFilter.java Log Message: Add file filters --- NEW FILE: CVSFileFilter.java --- /* * User: Simon * $Id: CVSFileFilter.java,v 1.1 2002/07/26 12:53:23 simon_lei Exp $ */ package org.cdchamber.elements; import java.io.File; public class CVSFileFilter implements IFileFilter { public boolean accept(File file) { if ( file.isDirectory() && file.getName().equals( "CVS")) return false; return true; } } --- NEW FILE: FileFilters.java --- /* * User: Simon * $Id: FileFilters.java,v 1.1 2002/07/26 12:53:23 simon_lei Exp $ */ package org.cdchamber.elements; import java.util.Vector; import java.util.Enumeration; import java.io.File; public class FileFilters { private static Vector filters = new Vector(); public static synchronized void addFilter( IFileFilter filter) { filters.add( filter); } public static synchronized void removeAllFilters() { filters.removeAllElements(); } public static boolean accept( File file) { Enumeration enu = filters.elements(); while (enu.hasMoreElements()) { IFileFilter filter = (IFileFilter) enu.nextElement(); if ( !filter.accept( file)) return false; } return true; } } --- NEW FILE: IFileFilter.java --- /* * User: Simon * $Id: IFileFilter.java,v 1.1 2002/07/26 12:53:23 simon_lei Exp $ */ package org.cdchamber.elements; import java.io.File; public interface IFileFilter { /** * Can the file be accept and add into the cdrom chamber. * @param file the file to be judged. * @return true if the file is accept. */ public boolean accept( File file); } Index: CompressedFileType.java =================================================================== RCS file: /cvsroot/cdchamber/CDChamber/aspect/gen/org/cdchamber/elements/CompressedFileType.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** CompressedFileType.java 26 Jul 2002 10:10:51 -0000 1.2 --- CompressedFileType.java 26 Jul 2002 12:53:23 -0000 1.3 *************** *** 8,11 **** --- 8,13 ---- import java.util.jar.JarFile; + import java.util.jar.JarEntry; + import java.util.Enumeration; import java.io.IOException; import java.io.File; *************** *** 13,18 **** public class CompressedFileType extends DirectoryType { ! public CompressedFileType( String fileName) { ! } --- 15,21 ---- public class CompressedFileType extends DirectoryType { ! public CompressedFileType( String fileName) throws FileParseException { ! super(); ! this.parse( fileName); } *************** *** 23,29 **** JarFile jarFile = new JarFile( fileName); ! } catch (IOException e) { } --- 26,40 ---- JarFile jarFile = new JarFile( fileName); + Enumeration enu = jarFile.entries(); + while (enu.hasMoreElements()) { + JarEntry jarEntry = (JarEntry) enu.nextElement(); + if ( jarEntry.getName().equals( "CVS")) continue; ! FileType fileType = new FileType(); ! fileType.setName( jarEntry.getName()); ! fileType.setDate( jarEntry.getTime()); ! fileType.setSize( jarEntry.getSize()); ! } } catch (IOException e) { } Index: FileTypeFactory.java =================================================================== RCS file: /cvsroot/cdchamber/CDChamber/aspect/gen/org/cdchamber/elements/FileTypeFactory.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** FileTypeFactory.java 26 Jul 2002 10:10:51 -0000 1.3 --- FileTypeFactory.java 26 Jul 2002 12:53:23 -0000 1.4 *************** *** 15,30 **** public static FileType createFileType( File file) throws FileParseException { if ( file.isDirectory()) return new DirectoryType( file.getAbsolutePath()); ! if ( isCompressedFile( file.getName())) return new CompressedFileType( file.getAbsolutePath()); return new FileType( file.getAbsolutePath()); } private static boolean isCompressedFile( String fileName) { - return false; - /* String lowerName = fileName.toLowerCase(); if ( lowerName.endsWith( ".zip")) return true; if ( lowerName.endsWith( ".jar")) return true; return false; - */ } } --- 15,30 ---- public static FileType createFileType( File file) throws FileParseException { if ( file.isDirectory()) return new DirectoryType( file.getAbsolutePath()); ! try { ! if ( isCompressedFile( file.getName())) return new CompressedFileType( file.getAbsolutePath()); ! } catch (FileParseException e) { ! } return new FileType( file.getAbsolutePath()); } private static boolean isCompressedFile( String fileName) { String lowerName = fileName.toLowerCase(); if ( lowerName.endsWith( ".zip")) return true; if ( lowerName.endsWith( ".jar")) return true; return false; } } |