dk.netarkivet.archive.arcrepositoryadmin
Class DerbyEmbeddedSpecifics

java.lang.Object
  extended by dk.netarkivet.common.utils.SettingsFactory<DBSpecifics>
      extended by dk.netarkivet.archive.arcrepositoryadmin.DBSpecifics
          extended by dk.netarkivet.archive.arcrepositoryadmin.DerbySpecifics
              extended by dk.netarkivet.archive.arcrepositoryadmin.DerbyEmbeddedSpecifics

public class DerbyEmbeddedSpecifics
extends DerbySpecifics

A class that implement functionality specific to the embedded Derby system.


Field Summary
 
Fields inherited from class dk.netarkivet.archive.arcrepositoryadmin.DerbySpecifics
log
 
Constructor Summary
DerbyEmbeddedSpecifics()
           
 
Method Summary
 void backupDatabase(java.sql.Connection c, java.io.File backupDir)
          Backup the database.
 java.lang.String getDriverClassName()
          Get the name of the JDBC driver class that handles interfacing to this server.
static DBSpecifics getInstance()
          Get an instance of the Embedded Derby specifics.
 void shutdownDatabase()
          Shutdown the database system, if running embeddedly.
 
Methods inherited from class dk.netarkivet.common.utils.SettingsFactory
getInstance
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DerbyEmbeddedSpecifics

public DerbyEmbeddedSpecifics()
Method Detail

getInstance

public static DBSpecifics getInstance()
Get an instance of the Embedded Derby specifics.

Returns:
Instance of the Derby specifics implementation

shutdownDatabase

public void shutdownDatabase()
Shutdown the database system, if running embeddedly. Otherwise, this is ignored.

Will log a warning on errors, but otherwise ignore them.

Specified by:
shutdownDatabase in class DBSpecifics

backupDatabase

public void backupDatabase(java.sql.Connection c,
                           java.io.File backupDir)
                    throws PermissionDenied,
                           ArgumentNotValid,
                           IOFailure
Backup the database. For server-based databases, where the administrator is expected to perform the backups, this method should do nothing. This method gets called within one hour of the hour-of-day indicated by the DB_BACKUP_INIT_HOUR settings.

Specified by:
backupDatabase in class DBSpecifics
Parameters:
backupDir - Directory to which the database should be backed up
c - The connection to the database.
Throws:
PermissionDenied - if the directory cannot be created.
IOFailure - If we cannot connect to the database
ArgumentNotValid - If the connection or the backupDir if null.

getDriverClassName

public java.lang.String getDriverClassName()
Get the name of the JDBC driver class that handles interfacing to this server.

Specified by:
getDriverClassName in class DBSpecifics
Returns:
The name of a JDBC driver class