Class DiskRowStore

java.lang.Object
uk.ac.starlink.table.storage.ByteStoreRowStore
uk.ac.starlink.table.storage.DiskRowStore
All Implemented Interfaces:
RowStore, TableSink

public class DiskRowStore extends ByteStoreRowStore
Implementation of RowStore which stores data on disk. The temporary file is deleted by the finalizer (if it runs) or failing that at JVM exit. Since there's no guarantee when or if the finalizer will run even after this object is a candidate for garbage collection, this does raise the possibility that large numbers of potentially large temporary files will accumulate during JVM operation. It depends on your GC.
Since:
3 Aug 2004
Author:
Mark Taylor (Starlink)
  • Constructor Details

    • DiskRowStore

      public DiskRowStore(File file) throws IOException
      Constructs a new DiskRowStore which uses the given file as a backing store. Nothing is done to mark this file as temporary. Since the storage format is not public, specifying the file like this isn't very useful except for test purposes.
      Parameters:
      file - location of the backing file which will be used
      Throws:
      IOException - if there is some I/O-related problem with opening the file
      SecurityException - if the current security context does not allow writing to a temporary file
    • DiskRowStore

      public DiskRowStore() throws IOException
      Constructs a new DiskRowStore which uses a temporary file as backing store. The temporary file will be written to the default temporary directory, given by the value of the java.io.tmpdir system property.
      Throws:
      IOException - if there is some I/O-related problem with opening the file
      SecurityException - if the current security context does not allow writing to a temporary file