Interface DataStore

All Known Implementing Classes:
FileSystemDataStore

public interface DataStore
Interface for storing data or objects to some persistent backend.

The data store organizes related data, called Blobs, in collections called Containers. A container is referenced by a Reference, and each blob is referenced by a name. A data store is itself an abstract representation of the underlying storage, as the content could be stored on a local file system, cloud storage, or a database.

  • Method Details

    • getContainer

      Container getContainer(Reference reference)
      Returns the container for the given reference. A container is always returned, though this does not imply the underlying storage exists or has been provisioned.
      Parameters:
      reference - the data reference
      Returns:
      the container
    • listContainers

      List<Container> listContainers() throws IOException
      Returns a list of all containers in this data store.
      Returns:
      a list of containers
      Throws:
      IOException - if an I/O error occurred
    • getContainer

      default Container getContainer(Referenceable reference)
      Returns the container for the given Referenceable object.
      Parameters:
      reference - the data reference
      Returns:
      the container
      See Also: