001 package com.croftsoft.core.util.filemap;
002
003 import java.io.*;
004 import java.util.*;
005
006 /*********************************************************************
007 * This Set is required for the AbstractMap implementation of
008 * FileMap.
009 *
010 * @see
011 * FileMap
012 * @see
013 * java.util.AbstractSet
014 *
015 * @version
016 * 1999-04-03
017 * @author
018 * <a href="http://www.CroftSoft.com/">David Wallace Croft</a>
019 *********************************************************************/
020
021 public class FileMapEntrySet extends AbstractSet
022 //////////////////////////////////////////////////////////////////////
023 //////////////////////////////////////////////////////////////////////
024 {
025
026 private File rootDirectory;
027
028 //////////////////////////////////////////////////////////////////////
029 //////////////////////////////////////////////////////////////////////
030
031 public FileMapEntrySet ( File rootDirectory )
032 //////////////////////////////////////////////////////////////////////
033 {
034 this.rootDirectory = rootDirectory;
035 }
036
037 //////////////////////////////////////////////////////////////////////
038 //////////////////////////////////////////////////////////////////////
039
040 public Iterator iterator ( )
041 //////////////////////////////////////////////////////////////////////
042 {
043 return new FileMapEntryIterator ( rootDirectory );
044 }
045
046 public int size ( )
047 //////////////////////////////////////////////////////////////////////
048 {
049 String [ ] files = rootDirectory.list ( );
050
051 if ( files == null ) return 0;
052
053 return files.length;
054 }
055
056 //////////////////////////////////////////////////////////////////////
057 //////////////////////////////////////////////////////////////////////
058 }