The package xxl.core.cursors provides a whole algebra of cursors
that extends the functionality of the classes
{@link java.util.Iterator Iterator} and
{@link java.util.Enumeration Enumeration}. A cursor is an abstract
concept for manipulating objects within a stream. The cursors provided in
XXL are independent from the specific structure of the objects as well
as from the kind of storage representation of the underlying stream. This
property is closely related to the notion of physical independence
which is one of the key concepts of database systems. XXL offers an
algebra of cursors which is suitable for defining complex queries in a
declarative fashion similar to SQL. In addition, our cursor algebra is
also beneficial for a very compact implementation of low-level core
functionality (e.g. index structures).
This package provides the interfaces and some fundamental classes of
XXL's cursor algebra whereas its concrete operators are arranged into
subpackages. If you want to get an overview of this package (and its
subpackages) please take a closer look to section
Cursors
at our paper:
XXL - A Library Approach to Supporting Efficient Implementations of
Advanced Database Queries
.