Class DatabaseImpl

All Implemented Interfaces:
Configurable, Database

public class DatabaseImpl extends SimpleDatabase
Reference Database implmentation. The reference Database simply resides on the file system. It isn't speedy but it serves the purpose of illustrating how a driver should work..

The path where the data files are located is specified through the property xmldb.data.dir. If this property is not specified it defaults to a directory named data in the current working directory. If the directory does not exist an attempt will be made to create it.

  • Constructor Details

    • DatabaseImpl

      public DatabaseImpl()
  • Method Details

    • getCollection

      public Collection getCollection(String uri, String username, String password) throws XMLDBException
      Retrieves a Collection instance based on the URI provided in the uri parameter. The URI format for this implementation is ref:///path where path is a path in the file system. To locate the data files the database expects a directory data to exist in the current directory.
      Specified by:
      getCollection in interface Database
      Overrides:
      getCollection in class SimpleDatabase
      Parameters:
      uri - the URI to use to locate the collection.
      password - The password to use for authentication to the database or null if the database does not support authentication.
      Returns:
      The Collection instance
      Throws:
      XMLDBException - with expected error codes.
      ErrorCodes.VENDOR_ERROR for any vendor specific errors that occur.
      ErrroCodes.INVALID_URI If the URI is not in a valid format.
      ErrroCodes.PERMISSION_DENIED If the username and password were not accepted by the database.