The Java Classes

As Java is an object oriented language, the eXtremeDB Java Native Interface (JNI) it is implemented as a "wrapper" over the core C language eXtremeDB libraries. However, the JNI does not simply translate calls to the underlying C API (with all of the appropriate arguments) but implements an object model of database interface where functionalities are grouped and encapsulated in classes.

For example, the Connection class encapsulates the C API connection handle mco_db_h. Instances of Connection internally call the C function mco_db_connect() in its constructor and function mco_db_disconnect() in its close() method and in its destructor. So the Connection class logically aggregates wrappers of the C API functions that require a connection handle mco_db_h as main argument.

Likewise, class Database implements methods which directly or indirectly call C API functions that are not related to a separated connection, like mco_runtime_start(), mco_runtime_stop(), mco_db_open(), mco_db_close() etc.

Please use the links below to view the individual class definitions:

Database Database creation, open and close
Connection Methods for database operations
Cursor Methods for iterating through instances of a class
Aggregator Used to perform aggregation
GroupByResult Represents the result of group by aggregation operation
Sequence Used to store an array field in the database as a sequence
SequenceIterator Used to iterate sequence fields
Statistic Used to provide runtime database statistics
SQL Classes
SqlAggregator Aggregate multiple SqlLocalConnection engines
SqlCursor Used to iterate through the result of an SQL query
SqlLocalConnection Used for local (in process) SQL access
SqlRemoteConnection Used for remote SQL access to a SqlServer instance
SqlResultSet Data set for SQL query results
SqlServer Provides a SQL server for SqlLocalConnection and SqlRemoteConnection access
SqlTuple The unit (a row) of SQL query results
Transaction Logging Classes
LogReader eXtremeDB Transaction Logging transaction log reader
LogWriter eXtremeDB Transaction Logging transaction log writer
High Availability Classes
MasterConnection Extends Connection for eXtremeDB High Availability master applications
ReplicaConnection Extends Connection for eXtremeDB High Availability replica applications
ClusterConnection Extends Connection for eXtremeDB Cluster applications