Class BioStore

  • All Implemented Interfaces:
    IndexStore

    public class BioStore
    extends Object
    implements IndexStore
    BioStores represent directory and file structures which index flat files according to the OBDA specification. The preferred method of constructing new instances is to use BioStoreFactory.
    Author:
    Matthew Pocock, Keith James
    • Constructor Summary

      Constructors 
      Constructor Description
      BioStore​(File location, boolean cache)
      Creates a new BioStore flatfile index at the specified location with the specified caching behaviour.
    • Constructor Detail

      • BioStore

        public BioStore​(File location,
                        boolean cache)
                 throws IOException,
                        BioException
        Creates a new BioStore flatfile index at the specified location with the specified caching behaviour.
        Parameters:
        location - a File indicating the index directory.
        cache - a boolean indicating whether the implementation should cache its state.
        Throws:
        IOException - if an error occurs.
        BioException - if an error occurs.
    • Method Detail

      • getName

        public String getName()
        The name of this store or null if the name has not been set.
      • getLocation

        public File getLocation()
        getLocation returns the directory where the index is located.
        Returns:
        a File.
      • getMetaData

        public Annotation getMetaData()
        Description copied from interface: IndexStore
        getMetaData returns a data structure which represents an OBDA "config.dat" flatfile indexing configuration file.
        Specified by:
        getMetaData in interface IndexStore
        Returns:
        an Annotation.
      • get

        public Record get​(String id)
        Description copied from interface: IndexStore
        get returns a record specified by a primary identifier.
        Specified by:
        get in interface IndexStore
        Parameters:
        id - a String primary ID.
        Returns:
        a Record.
      • get

        public List get​(String id,
                        String namespace)
                 throws BioException
        Description copied from interface: IndexStore
        get returns a list of Records by searching against the primary identifiers if the namespace argument is equal to the primary namespace or otherwise by searching the secondary namespaces. The list of Record instances retuned may be empty, but is never null.
        Specified by:
        get in interface IndexStore
        Parameters:
        id - a String primary ID.
        namespace - a String.
        Returns:
        a List of Records.
        Throws:
        BioException - if an error occurs.
      • writeRecord

        public void writeRecord​(RAF file,
                                long offset,
                                int length,
                                String id,
                                Map secIDs)
        Description copied from interface: IndexStore
        writeRecord creates and writes a new Record
        Specified by:
        writeRecord in interface IndexStore
        Parameters:
        file - a RAF file.
        offset - a long byte offset.
        length - an int byte record length.
        id - a String primary ID.
        secIDs - a Map of primary ID to a List of secondary IDs.
      • getRecordList

        public List getRecordList()
        getRecordList returns all the Records in the index.
        Returns:
        a List of Records.