Interface ILcdDatabaseDecoder

All Known Subinterfaces:
ILcdDatabaseDecoder2

public interface ILcdDatabaseDecoder
This interface specifies methods to do uncached queries on a database or a set of data files, based on query strings, bounds, and keys. It allows for a generic caching mechanism on top of any class that implements the interface.

The actual implementations of this interface determine the types of the keys and of the objects.

  • Method Details

    • setDatabaseModelDescriptor

      void setDatabaseModelDescriptor(ILcdDatabaseModelDescriptor aDatabaseModelDescriptor)
      Sets the database model descriptor to be used by this encoder.
      Parameters:
      aDatabaseModelDescriptor - the database model descriptor.
    • decodeObjectKeys

      ILcdAutoCloseableEnumeration decodeObjectKeys(ILcdBounds aBounds) throws IOException
      Returns the keys of the database objects that overlap with the given bounds
      Parameters:
      aBounds - the bounds.
      Returns:
      an ILcdAutoCloseableEnumeration of decoded keys.
      Throws:
      IOException - for any I/O errors.
    • decodeObjectKeys

      ILcdAutoCloseableEnumeration decodeObjectKeys(String aWhereString) throws IOException
      Deprecated.
      Not used internally in database models, and should not be used externally. Since 2015.0.
      Returns the keys of the database objects that are returned by the query with a given additional constraint.
      Parameters:
      aWhereString - the WHERE clause of the query to execute.
      Returns:
      an ILcdAutoCloseableEnumeration of decoded objects.
      Throws:
      IOException - for any I/O errors.
    • decodeObjects

      ILcdAutoCloseableEnumeration decodeObjects(Enumeration aQueryKeys) throws IOException
      Decodes the database objects that correspond to the given keys. The objects may be returned in any order. Keys for which no objects can be found are ignored.
      Parameters:
      aQueryKeys - an Enumeration of the query keys.
      Returns:
      an ILcdAutoCloseableEnumeration of objects containing the database objects.
      Throws:
      IOException - for any I/O errors.
    • decodeAllObjects

      ILcdAutoCloseableEnumeration decodeAllObjects(Enumeration aExceptQueryKeys) throws IOException
      Decodes all database objects, except the ones that correspond to the given keys. Keys that do not correspond to any objects are ignored.
      Parameters:
      aExceptQueryKeys - an Enumeration of the query keys of the objects to be excluded.
      Returns:
      an ILcdAutoCloseableEnumeration of objects containing the database objects.
      Throws:
      IOException - for any I/O errors.