com.sleepycat.je (Oracle - Berkeley DB Java Edition API)
Date: 2014-12-16

# Package com.sleepycat.je

Foundation for creating environments, databases and transactions; provides cursor based data access.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  BinaryEqualityComparator | A tag interface used to mark a BTree or duplicate comparator class as a binary equality comparator, that is, a comparator that considers two keys (byte arrays) to be equal if and only if they have the same length and they are equal byte-per-byte.
  CustomStats | A custom statistics object.
  DatabaseComparator | Implemented by btree and duplicate comparators that need to be initialized before they are used or need access to the environment's ClassLoader property.
  ExceptionListener | A callback to notify the application program when an exception occurs in a JE Daemon thread.
  ForeignKeyNullifier | The interface implemented for setting single-valued foreign keys to null.
  ForeignMultiKeyNullifier | The interface implemented for setting multi-valued foreign keys to null.
  ForwardCursor | The interface for forward-moving Cursor operations.
  PartialComparator | A tag interface used to mark a B-tree or duplicate comparator class as a partial comparator.
  ProgressListener<T extends Enum<T>> | ProgressListener provides feedback to the application that progress is being made on a potentially long running or asynchronous JE operation.
  ReplicaConsistencyPolicy | The interface for Consistency policies used to provide consistency guarantees at a Replica.
  SecondaryKeyCreator | The interface implemented for extracting single-valued secondary keys from primary records.
  SecondaryMultiKeyCreator | The interface implemented for extracting multi-valued secondary keys from primary records.

- Class Summary
  Class | Description
  --- | ---
  BtreeStats | The BtreeStats object is used to return Btree database statistics.
  CheckpointConfig | Specifies the attributes of a checkpoint operation invoked from `Environment.checkpoint`.
  CommitToken | Defines an opaque token that can be used to identify a specific transaction commit in a replicated environment.
  Cursor | A database cursor.
  CursorConfig | Specifies the attributes of database cursor.
  Database | A database handle.
  DatabaseConfig | Specifies the attributes of a database.
  DatabaseEntry | Encodes database key and data items as a byte array.
  DatabaseStats | Statistics for a single database.
  DiskOrderedCursor | DiskOrderedCursor returns records in unsorted order in exchange for generally faster retrieval times.
  DiskOrderedCursorConfig | Specifies the attributes of a DiskOrderedCursor.
  Durability | Durability defines the overall durability characteristics associated with a transaction.
  Environment | A database environment.
  EnvironmentConfig | Specifies the attributes of an environment.
  EnvironmentMutableConfig | Specifies the environment attributes that may be changed after the environment has been opened.
  EnvironmentStats | Statistics for a single environment.
  ExceptionEvent | A class representing an exception event.
  JEVersion | Berkeley DB Java Edition version information.
  JoinConfig | The configuration properties of a `JoinCursor`.
  JoinCursor | A specialized join cursor for use in performing equality or natural joins on secondary indices.
  LockStats | Deprecated as of 4.0.10, replaced by `Environment.getStats(StatsConfig)`.
  PreloadConfig | Specifies the attributes of an application invoked preload operation.
  PreloadStats | Statistics returned from `Database.preload` or `Environment.preload(com.sleepycat.je.Database[], com.sleepycat.je.PreloadConfig)`.
  PreloadStatus | Describes the result of the `Database.preload` operation.
  SecondaryConfig | The configuration properties of a `SecondaryDatabase` extend those of a primary `Database`.
  SecondaryCursor | A database cursor for a secondary database.
  SecondaryDatabase | A secondary database handle.
  Sequence | A Sequence handle is used to manipulate a sequence record in a database.
  SequenceConfig | Specifies the attributes of a sequence.
  SequenceStats | A SequenceStats object is used to return sequence statistics.
  StatsConfig | Specifies the attributes of a statistics retrieval operation.
  Transaction | The Transaction object is the handle for a transaction.
  TransactionConfig | Specifies the attributes of a database environment transaction.
  TransactionStats | Transaction statistics for a database environment.
  TransactionStats.Active | The Active class represents an active transaction.
  VerifyConfig | Specifies the attributes of a verification operation.
  XAEnvironment | An Environment that implements XAResource.

- Enum Summary
  Enum | Description
  --- | ---
  CacheMode | Modes that can be specified for control over caching of records in the JE in-memory cache.
  Durability.ReplicaAckPolicy | A replicated environment makes it possible to increase an application's transaction commit guarantees by committing changes to its replicas on the network.
  Durability.SyncPolicy | Defines the synchronization policy to be used when committing a transaction.
  ForeignKeyDeleteAction | The action taken when a referenced record in the foreign key database is deleted.
  LockMode | Record lock modes for read operations.
  OperationStatus | Status values from database operations.
  PreloadConfig.Phases | Preload progress listeners report this phase value, along with a count of the number if times that the preload has fetched from disk.
  RecoveryProgress | Describes the different phases of initialization that be executed when an Environment is instantiated.
  Transaction.State | The current state of the transaction.

- Exception Summary
  Exception | Description
  --- | ---
  DatabaseException | The root of all BDB JE-defined exceptions.
  DatabaseExistsException | Thrown by `Environment.openDatabase` and `Environment.openSecondaryDatabase` if the database already exists and the `DatabaseConfig ExclusiveCreate` parameter is true.
  DatabaseNotFoundException | Thrown when an operation requires a database and that database does not exist.
  DeadlockException | Deprecated temporarily until true deadlock detection is implemented.
  DeleteConstraintException | Thrown when an attempt is made to delete a key from a foreign key database, when that key is referenced by a secondary database, and the secondary is configured to cause an abort in this situation.
  DiskOrderedCursorProducerException | Thrown by `ForwardCursor.getNext` when a `DiskOrderedCursor` producer thread throws an exception.
  DuplicateDataException | Thrown by `Cursor.putCurrent` if the old and new data are not equal according to the configured duplicate comparator or default comparator.
  EnvironmentFailureException | Indicates that a failure has occurred that could impact the `Environment` as a whole.
  EnvironmentLockedException | Thrown by the `Environment` constructor when an environment cannot be opened for write access because another process has the same environment open for write access.
  EnvironmentNotFoundException | Thrown by the `Environment` constructor when `EnvironmentConfig AllowCreate` property is false (environment creation is not permitted), but there are no log files in the environment directory.
  ForeignConstraintException | Thrown when an attempt to write a primary database record would insert a secondary record with a key that does not exist in a foreign key database, when the secondary key is configured as a foreign key.
  LockConflictException | The common base class for all exceptions that result from record lock conflicts during read and write operations.
  LockNotAvailableException | Thrown when a non-blocking operation fails to get a lock.
  LockNotGrantedException | Deprecated replaced by `LockNotAvailableException`
  LockTimeoutException | Thrown when multiple threads are competing for a lock and the lock timeout interval is exceeded for the current thread.
  LogWriteException | Thrown when an `IOException` or other failure occurs when writing to the JE log.
  OperationFailureException | Indicates that a failure has occurred that impacts the current operation and/or transaction.
  RunRecoveryException | Deprecated replaced by `EnvironmentFailureException` and `Environment.isValid()`.
  SecondaryConstraintException | Base class for exceptions thrown when a write operation fails because of a secondary constraint.
  SecondaryIntegrityException | Thrown when an integrity problem is detected while accessing a secondary database, including access to secondaries while writing to a primary database.
  SecondaryReferenceException | Base class for exceptions thrown when a read or write operation fails because of a secondary constraint or integrity problem.
  SequenceExistsException | Thrown by `Database.openSequence` if the sequence record already exists and the `SequenceConfig ExclusiveCreate` parameter is true.
  SequenceIntegrityException | Thrown by `Sequence.get` if the sequence record has been deleted.
  SequenceNotFoundException | Thrown by `Database.openSequence` if the sequence record does not exist and the `SequenceConfig AllowCreate` parameter is false.
  SequenceOverflowException | Thrown by `Sequence.get` if the end of the sequence is reached and wrapping is not configured.
  ThreadInterruptedException | Thrown when `java.lang.InterruptedException` (a thread interrupt) or `java.nio.channels.ClosedChannelException` (which also results from a thread interrupt) occurs in any JE method.
  TransactionTimeoutException | Thrown when multiple threads are competing for a lock and the transaction timeout interval is exceeded for the current thread.
  UniqueConstraintException | Thrown when an attempt to write a primary database record would insert a secondary record with a duplicate key, for secondaries that represent one-to-one and one-to-many relationships.
  VersionMismatchException | Thrown by the Environment constructor when an environment cannot be opened because the version of the existing log is not compatible with the version of JE that is running.
  XAFailureException | Thrown if an attempt is made to use a `Transaction` after it has been invalidated as the result of an XA failure.

## Package com.sleepycat.je Description

Foundation for creating environments, databases and transactions; provides cursor based data access.

## Package Specification

This package constitutes the base public API for Berkeley DB, Java Edition. The classes here are used to create database objects, and insert and retrieve data.

This package provides a key/data pair model of a database record. Databases and database cursors are the key objects used to access data. An alternative collections based API is available through com.sleepycat.collections.

The Environment class embodies the database environment and is the starting point for the application. Databases and transaction objects are created through the Environment class.

Data can be inserted and retrieved directly through the Database object, or through a Cursor obtained from the Database. A database record consist of a key/data pair, where key and data are each individually represented by a DatabaseEntry object. Classes in com.sleepycat.bind provide optional support for mapping a Java object to a DatabaseEntry.

Configuration classes are used to specify the attributes of particular operations. For example the attributes of a database environment are specified in the EnvironmentConfig class. An instance of that class is required for Environment construction. Likewise, the attributes of a database are described in DatabaseConfig, which is a parameter to the Environment.openDatabase() method.

See Also:
  [Getting Started Guide]

Copyright (c) 2004, 2014 Oracle and/or its affiliates. All rights reserved.