gov.lanl.Database
Class sODatabaseMgr

java.lang.Object
  |
  +--gov.lanl.Database.sODatabaseMgr
All Implemented Interfaces:
DatabaseMgr

public class sODatabaseMgr
extends java.lang.Object
implements DatabaseMgr

An implmentation of DatabaseMgr interface based on the StoredObjects OODBMS from http://www.jdbms.org

 

Field Summary
 
Fields inherited from interface gov.lanl.Database.DatabaseMgr
DEEP, SHALLOW
 
Constructor Summary
sODatabaseMgr()
          Constructor
 
Method Summary
 java.util.Vector accessElements(gov.lanl.Database.PersistentObject obj, java.lang.String element, java.lang.String subelement)
          obtain a Vector of elements from the Object obj already obtained (via shallow copy)
static gov.lanl.Database.DatabaseMgr current()
           
 void deleteElement(gov.lanl.Database.PersistentObject obj)
          Delete object completely
 long getNextSeq(java.lang.Class clazz, java.lang.String field)
          return next number in a persistent sequence
 gov.lanl.Database.PersistentObjectFactory getObjectFactory()
          return persistent object factory
 void init(java.lang.String databaseURL)
          Initialize the DatabaseMgr
 void insertElement(gov.lanl.Database.PersistentObject obj, java.lang.String name)
          input an object into database
static gov.lanl.Database.DatabaseMgr open(gov.lanl.Utility.ConfigProperties props)
           
 gov.lanl.Database.PersistentObject retrieveElement(java.lang.Object obj, java.lang.String elementName, java.lang.String value)
          get single element (DEEP) with simple query returns the first element (if there is one)
 gov.lanl.Database.PersistentObject retrieveElement(java.lang.Object obj, java.lang.String elementName, java.lang.String value, int deep)
          get a single element (SHALLOW) with simple query
 java.util.Vector retrieveElements(java.lang.Object obj, gov.lanl.Database.SearchFilter query, int deep)
          Retrieve elements of type Object with SearchFilter query and depth flag
 java.util.Vector retrieveElements(java.lang.Object obj, java.lang.String[] elements, java.lang.String[] name)
          retrieve elements with multiple constraints Objects to be retrieved elements String array of elements to be filtered on name String array of values of the elements desired
 java.util.Vector retrieveElements(java.lang.Object obj, java.lang.String operator, java.lang.String element, int[] values, int deep)
          retrieve elements with complext query
 java.util.Vector retrieveElements(java.lang.Object obj, java.lang.String operator, java.lang.String element, java.lang.String[] values, int deep)
          retrieve elements with complext query
 void setDebug(boolean flag)
          turns the debug mode on/off (default is off)
 void setObjectFactory(java.lang.String objectPackage)
          Create Persistent Object Factory
 void txn_abort()
          Cancel transaction
 void txn_begin()
          set Transaction context
 void txn_commit()
          complete transaction
 void updateElement(gov.lanl.Database.PersistentObject obj)
          update object fully
 void updateElement(gov.lanl.Database.PersistentObject obj, int deep)
          update object optionally shallowly
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

sODatabaseMgr

public sODatabaseMgr()
Constructor

Method Detail

init

public void init(java.lang.String databaseURL)
Description copied from interface: DatabaseMgr
Initialize the DatabaseMgr

Specified by:
init in interface DatabaseMgr
Parameters:
databaseURL -

open

public static gov.lanl.Database.DatabaseMgr open(gov.lanl.Utility.ConfigProperties props)
Parameters:
props -
Returns:

current

public static gov.lanl.Database.DatabaseMgr current()
Returns:

txn_begin

public void txn_begin()
               throws DBException
set Transaction context

Specified by:
txn_begin in interface DatabaseMgr
Throws:
DBException

txn_commit

public void txn_commit()
                throws DBException
complete transaction

Specified by:
txn_commit in interface DatabaseMgr
Throws:
DBException

retrieveElement

public gov.lanl.Database.PersistentObject retrieveElement(java.lang.Object obj,
                                                          java.lang.String elementName,
                                                          java.lang.String value)
                                                   throws DBException
get single element (DEEP) with simple query returns the first element (if there is one)

Specified by:
retrieveElement in interface DatabaseMgr
Throws:
DBException
Parameters:
obj - is the input object being requested
elementName - is the element desired
value - is the value of the element desired
Returns:

retrieveElement

public gov.lanl.Database.PersistentObject retrieveElement(java.lang.Object obj,
                                                          java.lang.String elementName,
                                                          java.lang.String value,
                                                          int deep)
                                                   throws DBException
Description copied from interface: DatabaseMgr
get a single element (SHALLOW) with simple query

Specified by:
retrieveElement in interface DatabaseMgr
Throws:
DBException
Parameters:
obj -
elementName -
value -
deep -
Returns:

updateElement

public void updateElement(gov.lanl.Database.PersistentObject obj,
                          int deep)
                   throws DBException
update object optionally shallowly

Specified by:
updateElement in interface DatabaseMgr
Throws:
DBException
Parameters:
obj -
deep -

updateElement

public void updateElement(gov.lanl.Database.PersistentObject obj)
                   throws DBException
update object fully

Specified by:
updateElement in interface DatabaseMgr
Throws:
DBException
Parameters:
obj -

deleteElement

public void deleteElement(gov.lanl.Database.PersistentObject obj)
                   throws DBException
Delete object completely

Specified by:
deleteElement in interface DatabaseMgr
Throws:
DBException
Parameters:
obj -

insertElement

public void insertElement(gov.lanl.Database.PersistentObject obj,
                          java.lang.String name)
                   throws DBException
input an object into database

Specified by:
insertElement in interface DatabaseMgr
Throws:
DBException
Parameters:
obj - is the input object
name - of the object

accessElements

public java.util.Vector accessElements(gov.lanl.Database.PersistentObject obj,
                                       java.lang.String element,
                                       java.lang.String subelement)
                                throws DBException
obtain a Vector of elements from the Object obj already obtained (via shallow copy)

Specified by:
accessElements in interface DatabaseMgr
Throws:
DBException
Parameters:
obj - is the input Object
element - is the name of the element to be returned
subelement -
Returns:

retrieveElements

public java.util.Vector retrieveElements(java.lang.Object obj,
                                         java.lang.String[] elements,
                                         java.lang.String[] name)
                                  throws DBException
retrieve elements with multiple constraints Objects to be retrieved elements String array of elements to be filtered on name String array of values of the elements desired

Specified by:
retrieveElements in interface DatabaseMgr
Throws:
DBException
Parameters:
obj -
elements -
name -
Returns:

retrieveElements

public java.util.Vector retrieveElements(java.lang.Object obj,
                                         gov.lanl.Database.SearchFilter query,
                                         int deep)
                                  throws DBException
Retrieve elements of type Object with SearchFilter query and depth flag

Specified by:
retrieveElements in interface DatabaseMgr
Throws:
DBException
Parameters:
obj -
query -
deep -
Returns:

retrieveElements

public java.util.Vector retrieveElements(java.lang.Object obj,
                                         java.lang.String operator,
                                         java.lang.String element,
                                         java.lang.String[] values,
                                         int deep)
                                  throws DBException
retrieve elements with complext query

Specified by:
retrieveElements in interface DatabaseMgr
Throws:
DBException
Parameters:
obj - object to be retrieved
operator - operator in query
element - element in query
values - array of elements in query
deep -
Returns:

retrieveElements

public java.util.Vector retrieveElements(java.lang.Object obj,
                                         java.lang.String operator,
                                         java.lang.String element,
                                         int[] values,
                                         int deep)
                                  throws DBException
retrieve elements with complext query

Specified by:
retrieveElements in interface DatabaseMgr
Throws:
DBException
Parameters:
obj - object to be retrieved
operator - operator in query
element - element in query
values - array of elements in query
deep -
Returns:

txn_abort

public void txn_abort()
Cancel transaction

Specified by:
txn_abort in interface DatabaseMgr

getNextSeq

public long getNextSeq(java.lang.Class clazz,
                       java.lang.String field)
return next number in a persistent sequence

Specified by:
getNextSeq in interface DatabaseMgr
Parameters:
clazz -
field -

setObjectFactory

public void setObjectFactory(java.lang.String objectPackage)
Create Persistent Object Factory

Specified by:
setObjectFactory in interface DatabaseMgr

getObjectFactory

public gov.lanl.Database.PersistentObjectFactory getObjectFactory()
return persistent object factory

Specified by:
getObjectFactory in interface DatabaseMgr

setDebug

public void setDebug(boolean flag)
turns the debug mode on/off (default is off)

Specified by:
setDebug in interface DatabaseMgr
Parameters:
flag -