//============================================================================== // DiskCacheTest.java //------------------------------------------------------------------------------ package tribble.io; // System imports import java.io.File; import java.io.IOException; import java.lang.String; import java.lang.Exception; import java.util.Date; // Local imports import tribble.io.DiskCacheManager; import tribble.io.FileCacheManagerI; /******************************************************************************* * Disk file cache manager test driver. * * @version $Revision: 1.2 $ $Date: 2002/06/07 04:11:17 $ * @since 2002-06-05 * @author * David R. Tribble, * david@tribble.com *
* Copyright ©2002 by David R. Tribble, all rights reserved. * * @see DiskCacheManager * @see FileCacheManagerI */ class DiskCacheTest { // Identification /** Revision information. */ static final String REV = "@(#)tribble/io/DiskCacheTest.java $Revision: 1.2 $ $Date: 2002/06/07 04:11:17 $\n"; // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // Private variables /** Local cache directory name. */ private File m_dir = new File("/tmp/cache"); /** Local cache directory control (index) file. */ private String m_indexFname = "cache.ind"; /** Local cache directory lock (mutex) file. */ private File m_lockFname = new File("cache.lck"); /** A disk cache manager. */ private FileCacheManagerI m_cache; // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // Public static methods /*************************************************************************** * Test driver. * * @param args * Command line arguments. * * @since 1.1, 2002-06-05 */ public static void main(String[] args) { (new DiskCacheTest()).run(args); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // Private constructors /*************************************************************************** * Default constructor. * * @since 1.1, 2002-06-05 */ private DiskCacheTest() { // Do nothing } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // Private methods /*************************************************************************** * Test driver. * * @param args * Command line arguments. * * @since 1.1, 2002-06-05 * * @see #main */ private void run(String[] args) { try { Date now; int r; now = new Date(); // Get args if (args.length > 0) m_dir = new File(args[0]); if (args.length > 1) m_indexFname = args[1]; // Create and open a disk cache manager object m_cache = new DiskCacheManager(); m_cache.open(m_dir, m_indexFname); r = (int) now.getTime(); for (int i = 1; i <= 3; i++) { String docId; File f; // Create a new cached document file r = 37*r + 5; r = (r < 0 ? -r : r); switch (r % 5) { case 0: case 1: docId = "Document No. " + (r % 100000); break; case 2: case 3: docId = "My File " + (r % 100000); break; case 4: default: docId = "le " + (r % 100000) + " fiche"; break; } f = m_cache.createFile(docId); System.out.println("Created: docId=[" + docId + "]"); System.out.println(" fname=\"" + f.getAbsolutePath() + "\""); } ///... m_cache.close(); } catch (IOException ex) { // Exception System.out.println("*** IOException"); //System.out.println(ex); ex.printStackTrace(); } } } // End DiskCacheTest.java