Package org.omegahat.Environment.Databases

Variety of containers for Omegahat objects providing database facilities (storage and retrieval by keys).

See:
          Description

Interface Summary
Activable Interface defining constants representing different states of activity - active or inactive, and methods for querying and setting this state.
Database Interface for object databases
DatabaseAssignListener Interface an object implements to register for notification of events indicating assignments to a particular Database.
DatabaseAttachListener Interface an object implements to register for notification of events indicating that a particular Database has been attached to a SearchPath.
DatabaseCustomer Empty interface that identifies a class as a potential customer or listener of a Database and its events.
DatabaseDetachListener Interface an object implements to register for notification of events indicating that a particular Database has been remove from a SearchPath.
DatabaseListener Aggregate of all the different Database listener interfaces, providing a simple way to declare support for all suitable methods.
DatabaseNotifier Interface defining methods an object should have to be a broadcaster of Omegahat Database events and also handle assignments and deletions.
DatabaseRemoveListener Interface an object implements to register for notification of events indicating removal/deletion of variables in a particular Database.
MergableInt Interface defining methods for merging an object with a Database and/or Hashtable.
ObjectSearchFilter Interface defining a filter method for selecting or discarding named objects, usually Omegahat variables in one or more Databases
ReadWriteDatabaseInt An interface defining the methods of a Database that offers optional read-only facilities on a per-element basis.
SearchPathListener This is a new mechanism to monitor attachments and detachments of databases from a SearchPath rather than handling them via the DatabaseAssignListener.
TypedDatabaseInt Interface defining methods for specifying the type of a variable in a Database.
 

Class Summary
AttachableSearchPath SearchPath that can itself be an element of a SearchPath allowing its database elements to be treated as variables.
AttachedDatabase Return object from call to Evaluator.attach(Database) which gives an identifier for the Database being attached, its position, and the SearchPath so that it can be uniquely identified.
ClosureDatabase A Database for use with the evaluation of so-called closures, or more accurately static variables in Functions.
DatabaseAssignEvent Event identifying an assignment to a Database.
DatabaseAttachEvent Event identifying that a Database has been added to a SearchPath.
DatabaseDetachEvent Event identifying that a Database has been removed from a SearchPath.
DatabaseEvent Base class for all the events associated with a Database, identifying the type of action/event and the Database in question.
DatabaseObjectEvent Basic class for all Database events involving changes to an entry, as opposed to computations on the Database itself (e.g.
DatabaseRemoveEvent Event identifying the removal of a variable from a Database.
EvaluationFrame This is a very simple extension of a typed database, used for function/method calls.
HomogeneousTypedDatabase Database that restricts the types of objects it stores to a user-specifiable base class or interface.
LazyFunctionDatabase Database used to implement lazy arguments keeping the appropriate entires as unevaluated expressions and evaluating them when they are first accessed, caching the resulting values for future access.
NameTypeSearchFilter Filter for locating an object with a given name and of a particular "class", that is, derived from that or implementing it or optionally explicitly of that class.
ObjectDatabase The basic implementation of Database for storing omegahat variables, providing the methods for managing the objects and being an element in the SearchPath.
PersistentObjectDatabase Database that supports serializing the individual entries directly to disk as separate objects, in the S fashion, rather than holding everything in memory with references between the objects, etc.
ReadWriteDatabase Database that supports the specification of individual variables being read-only or read and writable.
SearchPath This class is used to represent a collection of databases that has an order in which to search for objects, etc.
SearchPathEvent Event indicating activity - addition or deletion - of entries in the SearchPath.
TypedDatabase Extension of the basic ObjectDatabase that can optionall store information for an entry about its declared type.
ZipNameFilter FilenameFilter that filters out files whose extension is not the appropriate zip/compression string.
 

Exception Summary
IncorrectTypeException Exception used to indicate an attempt to assign to an Omegahat variable a value that is not of the correct type.
ObjectNotFoundException Exception indicating that no object of a particular name was found on a specified Database.
 

Package org.omegahat.Environment.Databases Description

Variety of containers for Omegahat objects providing database facilities (storage and retrieval by keys).

Specific classes, such as ObjectDatabase will be alternatives to ordinary hash tables, with some additional features. The features provided are used for function frames, call frames, and top-level assignments; collections for database objects managed by the Evaluators; and supporting event classes.