Bdb packages | Design docs | Source docs | Guidelines | Recent releases

Search | Site Map .

Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

BdbDatabase Class Reference
[BdbCond]

#include <BdbDatabase.hh>

Inheritance diagram for BdbDatabase:

BdbCondDatabaseBase BdbObsoleteDatabase List of all members.

Public Types

enum  SelectionStrategyType { RECENT = 0, EARLIEST }

Public Methods

virtual ~BdbDatabase ()
BdbDatabase & operator= (const BdbDatabase &theDB)
const BdbHandle (BdbInterval)&intervalCacheH() const
 BdbHandle (BdbInterval) getIntervalCacheH() const
void getIntervalCacheH (BdbHandle(BdbInterval)&theIntervalH) const
BdbStatus store (const BdbHandle(BdbObject)&theObjectH, const char *theContainerName, const BdbTime &theBeginTime, d_ULong theTag=0)
BdbStatus store (const BdbHandle(BdbObject)&theObjectH, const char *theContainerName, const BdbTime &theBeginTime, const BdbTime &theEndTime, d_ULong theTag=0)
BdbStatus store (const BdbHandle(BdbObject)&theObjectH, const char *theContainerName, const BdbIntervalBase &theInterval, d_ULong theTag=0)
BdbStatus storeAndTruncate (const BdbHandle(BdbObject)&theObjectH, const char *theContainerName, const BdbTime &theInsertTime, const BdbTime &theTruncateTime, d_ULong theTag=0)
BdbStatus storeVector (const std::vector< BdbCondStoreTime > &theVector, const char *theContainerName)
BdbStatus fetch (BdbHandle(BdbObject)&theObjectH, const char *theContainerName, const BdbTime &theTime, d_ULong theTag=0)
BdbStatus fetch (BdbHandle(BdbObject)&theObjectH, BdbIntervalBase &theValidityInterval, const char *theContainerName, const BdbTime &theTime, d_ULong theTag=0)
BdbStatus fetch (BdbHandle(BdbObject)&theObjectH, BdbIntervalBase &theValidityInterval, BdbTime &theVersionTime, const char *theContainerName, const BdbTime &theTime, d_ULong theTag=0)
BdbStatus remove (const char *theContainerName, const BdbTime &theTime)
BdbStatus split (const char *theContainerName, const BdbTime &theTime)
BdbStatus findObject (BdbHandle(BdbObject)&theObjectH, const char *theContainerName, const BdbTime &theTime, d_ULong theTag=0)
BdbStatus findInterval (BdbHandle(BdbInterval)&theIntervalH, const char *theContainerName, const BdbTime &theTime, d_ULong theTag=0)
BdbStatus firstInterval (BdbHandle(BdbInterval)&theIntervalH, const char *theContainerName)
BdbStatus lastInterval (BdbHandle(BdbInterval)&theIntervalH, const char *theContainerName)
BdbRefAny updatedHint ()
BdbStatus getUnassignedList (std::vector< BdbHandle(BdbInterval)> &theList, const char *theContainerName, const BdbTime &theTime)
BdbStatus getList (std::vector< BdbHandle(BdbInterval)> &theList, const char *theContainerName, const BdbTime &theTime)
BdbStatus getUnassignedList (std::vector< BdbHandle(BdbInterval)> &theList, const char *theContainerName, const BdbTime &theBeginValidityTime, const BdbTime &theEndValidityTime, const BdbTime &theBeginVersionTime, const BdbTime &theEndVersionTime=BdbTime::plusInfinity, const SelectionStrategyType theStrategy=RECENT)
BdbStatus getRevisionList (std::vector< BdbHandle(BdbInterval)> &theList, const char *theContainerName, const BdbTime &theBeginTime=BdbTime::minusInfinity, const BdbTime &theEndTime=BdbTime::plusInfinity, d_ULong theRevisionId=BdbCondRevision::BASELINE)
BdbStatus getTree (std::vector< BdbHandle(BdbInterval)> &theList, int &numBranches, const char *theContainerName, const BdbTime &theTime)
BdbStatus getUnassignedTree (std::vector< BdbHandle(BdbInterval)> &theList, int &numBranches, const char *theContainerName, const BdbTime &theTime)
BdbStatus getBaselineInterval (BdbHandle(BdbInterval)&theIntervalH, const char *theContainerName, const BdbTime &theTime)
BdbStatus getTopmostInterval (BdbHandle(BdbInterval)&theIntervalH, const char *theContainerName, const BdbTime &theTime)
BdbStatus getRevisedInterval (BdbHandle(BdbInterval)&theIntervalH, const char *theContainerName, const BdbTime &theTime, d_ULong theRevisionId=BdbCondRevision::BASELINE)
BdbStatus createRevision (std::vector< BdbHandle(BdbInterval)> &theList, const char *theContainerName, d_ULong &theRevisionId, d_ULong theBaseRevisionId, const char *theSite=(char *) 0, const char *theDescr=(char *) 0)
BdbStatus updateRevision (std::vector< BdbHandle(BdbInterval)> &theList, const char *theContainerName, d_ULong theRevisionId)
BdbStatus deleteRevision (const char *theContainerName, d_ULong &theRevisionId)
d_ULong getMostRecentRevisionId (const char *theContainerName)
d_ULong getNextAvailableRevisionId (const char *theContainerName)

Static Public Methods

const BdbCondAccessorgetAccessor ()
BdbCondAccessorsetAccessor (BdbCondAccessor *theAccessor)
BdbCondAccessorsetDefaultAccessor ()
BdbTime setTruncateOverrideTime (const BdbTime &theNewTruncateOverrideTime)
BdbTime getTruncateOverrideTime ()

Protected Methods

 BdbDatabase (const char *theTLA)

Private Methods

 BdbDatabase ()
bool setAuthLevel (const char *theContainerName)
bool verifyAuthLevelOnly (const char *theContainerName)
bool verifyIndexMode ()
BdbStatus findTopInterval (BdbHandle(BdbInterval)&theIntervalH, BdbItr(BdbInterval)&theIntervalItr)
BdbStatus findRevisedInterval (BdbHandle(BdbInterval)&theIntervalH, BdbItr(BdbInterval)&theIntervalItr, d_ULong theRevisionId)
void nextTreeNode (std::vector< BdbHandle(BdbInterval)> &theList, std::vector< BdbHandle(BdbInterval)> &theStack, int &numBranches)
BdbStatus findInterval (BdbHandle(BdbIntervalR)&theIntervalH, const BdbTime &theTime, d_ULong theTag=0)
BdbStatus versionVector (const BdbHandle(BdbObject)&theNewObjectH, const BdbTime &theBeginVectorTime, const BdbTime &theEndVectorTime, const BdbTime &theVersionTime, d_ULong theTag)
void version (const BdbHandle(BdbCondRevision)&theRevisionH, const BdbHandle(BdbObject)&theNewObjectH, const BdbTime &theBeginTime, d_ULong theTag=0)
void version (const BdbHandle(BdbCondRevision)&theRevisionH, const BdbHandle(BdbObject)&theNewObjectH, const BdbTime &theBeginTime, const BdbTime &theEndTime, d_ULong theTag=0, const BdbTime &theVersionTime=BdbTime::minusInfinity)
void version1 (const BdbHandle(BdbCondRevision)&theRevisionH, const BdbHandle(BdbIntervalR)&theIntervalH, const BdbHandle(BdbObject)&theNewObject, d_ULong theTag=0, const BdbTime &theVersionTime=BdbTime::minusInfinity)
void version2L (const BdbHandle(BdbCondRevision)&theRevisionH, const BdbHandle(BdbIntervalR)&theIntervalH, const BdbHandle(BdbObject)&theNewObjectH, const BdbTime &theEndTime, d_ULong theTag=0, const BdbTime &theVersionTime=BdbTime::minusInfinity)
void version2R (const BdbHandle(BdbCondRevision)&theRevisionH, const BdbHandle(BdbIntervalR)&theIntervalH, const BdbHandle(BdbObject)&theNewObjectH, const BdbTime &theBeginTime, d_ULong theTag=0, const BdbTime &theVersionTime=BdbTime::minusInfinity)
void version3M (const BdbHandle(BdbCondRevision)&theRevisionH, const BdbHandle(BdbIntervalR)&theIntervalH, const BdbHandle(BdbObject)&theNewObjectH, const BdbTime &theBeginTime, const BdbTime &theEndTime, d_ULong theTag=0, const BdbTime &theVersionTime=BdbTime::minusInfinity)
BdbStatus updateFirstInterval (const BdbHandle(BdbObject)&theObjectH, const BdbHandle(BdbIntervalR)&firstIntervalH, const BdbTime &theEndTime, d_ULong theTag=0, const BdbTime &theVersionTime=BdbTime::minusInfinity)
BdbStatus cutFirstInterval (const BdbHandle(BdbObject)&theObjectH, const BdbHandle(BdbIntervalR)&firstIntervalH, const BdbTime &theBeginTime, const BdbTime &theEndTime, d_ULong theTag=0, const BdbTime &theVersionTime=BdbTime::minusInfinity)
BdbStatus updateLastInterval (const BdbHandle(BdbObject)&theObjectH, const BdbHandle(BdbIntervalR)&lastIntervalH, d_ULong theTag=0, const BdbTime &theVersionTime=BdbTime::minusInfinity)
BdbStatus cutLastInterval (const BdbHandle(BdbObject)&theObjectH, const BdbHandle(BdbIntervalR)&lastIntervalH, const BdbTime &theBeginTime, const BdbTime &theEndTime, d_ULong theTag=0, const BdbTime &theVersionTime=BdbTime::minusInfinity)
BdbStatus truncateLastInterval (const BdbHandle(BdbObject)&theObjectH, const BdbHandle(BdbIntervalR)&lastIntervalH, const BdbTime &theInsertTime, const BdbTime &theTruncateTime, d_ULong theTag=0)
BdbStatus appendIntervalR (const BdbHandle(BdbObject)&theObjectH, const BdbHandle(BdbIntervalR)&lastIntervalH, const BdbTime &theBeginTime, d_ULong theTag=0, const BdbTime &theVersionTime=BdbTime::minusInfinity)
BdbStatus appendIntervalR (const BdbHandle(BdbObject)&theObjectH, const BdbHandle(BdbIntervalR)&lastIntervalH, const BdbTime &theBeginTime, const BdbTime &theEndTime, d_ULong theTag=0, const BdbTime &theVersionTime=BdbTime::minusInfinity)
void createVersion (const BdbHandle(BdbIntervalR)&theOldIntervalH, BdbHandle(BdbIntervalR)&theNewIntervalH)
void createRevisedTopVersion (const BdbHandle(BdbIntervalR)&theOldIntervalH, BdbHandle(BdbIntervalR)&theNewIntervalH)
void nameVersion (const BdbHandle(BdbInterval)&theOriginalIntervalH, const BdbHandle(BdbInterval)&theIntervalH)
char * upDateVersionName (const char *theOldName) const
int verticalCompare (const BdbHandle(BdbInterval)&theLeftIntervalH, const BdbHandle(BdbInterval)&theRightIntervalH)
BdbStatus verifyIntervals (std::vector< BdbHandle(BdbInterval)> &theList, const char *theContainerName, d_ULong theRevisionId)
void includeIntoRevision (std::vector< BdbHandle(BdbInterval)> &theList, const BdbHandle(BdbCondRevision)&theRevisionH)
BdbStatus getRevisionStack (std::vector< d_ULong > &theRevisionStack, d_ULong theRevisionId)
BdbStatus getRevisedIntervalsInSubTree (std::vector< BdbHandle(BdbIntervalR)> &theIntervalVector, const BdbHandle(BdbIntervalR)&theIntervalH, d_ULong theRevisionId)
BdbStatus getBoundIntervalsInSubTree (std::vector< BdbHandle(BdbInterval)> &theIntervalVector, const std::vector< BdbHandle(BdbInterval)> &theList, const BdbHandle(BdbInterval)&theIntervalH)
BdbStatus sortIntervalsList (std::vector< BdbHandle(BdbInterval)> &theList)
BdbStatus getNextRevisedIntervals (std::vector< BdbHandle(BdbIntervalR)> &theIntervalVector, const BdbHandle(BdbIntervalR)&theIntervalH, d_ULong theRevisionId)
BdbStatus buildTopStoreVector (const std::vector< BdbCondStoreTime > &theVectorIn, const BdbHandle(BdbIntervalR)&theFirstIntervalH, const BdbHandle(BdbIntervalR)&theLastIntervalH, const BdbHandle(BdbIntervalR)&theStartIntervalH, std::vector< BdbCondStoreInterval > &theVectorOut)
BdbStatus verifyStoreVector (const std::vector< BdbCondStoreTime > &theVector)
void addVectorVersion (BdbHandle(BdbIntervalR)&theOldIntervalH, const BdbHandle(BdbObject)&theObjectH, const BdbTime &theBeginTime, const BdbTime &theEndTime, const BdbTime &theVersionTime, d_ULong theTag=0)
const char * getOID (const BdbHandle(BdbPersObj)&thePersObjH)
void resetCacheHandler ()
void setIntervalCache (const BdbHandle(BdbInterval)&theIntervalH)
BdbStatus splitBaselineInterval (BdbHandle(BdbIntervalR)&theOldIntervalH, const BdbTime &theTime)
BdbStatus splitIntervalsTree (const char *theContainerName, BdbHandle(BdbIntervalR)&theOldIntervalH, const BdbTime &theTime)
BdbStatus copyLimitedSubTree (const BdbHandle(BdbIntervalR)&theInIntervalH, const BdbTime &theLeftBorderTime, const BdbTime &theRightBorderTime, BdbHandle(BdbIntervalR)&theOutIntervalH)
BdbStatus linkTopIntervalsInSubTree (const BdbHandle(BdbIntervalR)&theIntervalH, BdbHandle(BdbIntervalR)&thePreviousIntervalH)
void deleteIntervalsInSubTree (BdbHandle(BdbIntervalR)&theIntervalH, bool deleteGeneObject=false)
 BdbHandle (BdbInterval) _intervalCacheH

Static Private Methods

void intializeStaticMembers ()

Private Attributes

BdbCondClusteringHint_myHint
d_Boolean _authLevelIsSet
BdbCondPath_revisionPath

Static Private Attributes

bool _staticMembersAreInitialized = false
BdbTime _truncateOverrideTime = BdbTime::plusInfinity
BdbCondAccessor_defaultAccessor = new BdbCondDirectAccessor( )
BdbCondAccessor_accessor = _defaultAccessor

Friends

class BdbCondDatabaseMgr
class BdbCondDirectAccessor
class BdbCondRemoteAccessor
class BdbCondDebug

Member Enumeration Documentation

enum BdbDatabase::SelectionStrategyType
 

Enumeration values:
RECENT 
EARLIEST 

Definition at line 84 of file BdbDatabase.hh.

Referenced by cmd_revise2d(), main(), and translateStrategy().


Constructor & Destructor Documentation

BdbDatabase::BdbDatabase const char *    theTLA [protected]
 

Definition at line 213 of file BdbDatabase.cc.

References _revisionPath, false, BdbCondPath::instance(), and intializeStaticMembers().

BdbDatabase::~BdbDatabase   [virtual]
 

Definition at line 236 of file BdbDatabase.cc.

References _myHint.

BdbDatabase::BdbDatabase   [private]
 

The default constructor is currently disabled because it's difficult to provide proper cache management when the current working detector changes.

Definition at line 194 of file BdbDatabase.cc.

References _revisionPath, false, BdbCondPath::instance(), and intializeStaticMembers().


Member Function Documentation

void BdbDatabase::addVectorVersion BdbHandle(BdbIntervalR)&    theOldIntervalH,
const BdbHandle(BdbObject)&    theObjectH,
const BdbTime   theBeginTime,
const BdbTime   theEndTime,
const BdbTime   theVersionTime,
d_ULong    theTag = 0
[private]
 

Definition at line 1593 of file BdbDatabase.cc.

References BdbHandle(), BdbIsNull, BdbRef, createRevisedTopVersion(), BdbIntervalBase::getBeginTime(), BdbIntervalBase::getEndTime(), BdbInterval::getObject(), BdbInterval::getTag(), BdbIntervalR::getTopNext(), BdbIntervalR::getTopPrevious(), BdbInterval::getVersionTime(), nameVersion(), BdbIntervalR::setTopNext(), and BdbIntervalR::setTopPrevious().

Referenced by storeVector(), and versionVector().

BdbStatus BdbDatabase::appendIntervalR const BdbHandle(BdbObject)&    theObjectH,
const BdbHandle(BdbIntervalR)&    lastIntervalH,
const BdbTime   theBeginTime,
const BdbTime   theEndTime,
d_ULong    theTag = 0,
const BdbTime   theVersionTime = BdbTime::minusInfinity
[private]
 

Definition at line 5282 of file BdbDatabase.cc.

References appendIntervalR(), BdbContObj, BdbcSuccess, BdbHandle(), BdbCondDatabaseBase::getBaselineRevisionH(), BdbIntervalBase::getBeginTime(), BdbCondDatabaseBase::getIntervalContH(), BdbInterval::getObject(), BdbInterval::getVersionTime(), BdbTime::plusInfinity, BdbIntervalR::setBaselineNext(), BdbIntervalBase::setEndTime(), BdbIntervalR::setTopNext(), and version1().

BdbStatus BdbDatabase::appendIntervalR const BdbHandle(BdbObject)&    theObjectH,
const BdbHandle(BdbIntervalR)&    lastIntervalH,
const BdbTime   theBeginTime,
d_ULong    theTag = 0,
const BdbTime   theVersionTime = BdbTime::minusInfinity
[private]
 

Definition at line 5219 of file BdbDatabase.cc.

References BdbContObj, BdbcSuccess, BdbHandle(), BdbCondDatabaseBase::getBaselineRevisionH(), BdbIntervalBase::getBeginTime(), BdbCondDatabaseBase::getIntervalContH(), BdbTime::minusInfinity, BdbTime::plusInfinity, BdbIntervalR::setBaselineNext(), and BdbIntervalBase::setEndTime().

Referenced by appendIntervalR(), store(), storeVector(), and truncateLastInterval().

BdbDatabase::BdbHandle BdbInterval    [private]
 

This cached data member. It's automatically reset when a base class cache is reset.

Reimplemented from BdbCondDatabaseBase.

BdbDatabase::BdbHandle BdbInterval    const [inline]
 

Reimplemented from BdbCondDatabaseBase.

const BdbDatabase::BdbHandle BdbInterval    const [inline]
 

These accessor functions return requested information from the internal cache of the object.

Reimplemented from BdbCondDatabaseBase.

Referenced by addVectorVersion(), appendIntervalR(), buildTopStoreVector(), copyLimitedSubTree(), createRevision(), cutFirstInterval(), cutLastInterval(), deleteIntervalsInSubTree(), deleteRevision(), findInterval(), findRevisedInterval(), getBaselineInterval(), getBoundIntervalsInSubTree(), getList(), getMostRecentRevisionId(), getNextRevisedIntervals(), getRevisedInterval(), getRevisedIntervalsInSubTree(), getRevisionList(), getRevisionStack(), getTopmostInterval(), getTree(), getUnassignedList(), getUnassignedTree(), includeIntoRevision(), linkTopIntervalsInSubTree(), nameVersion(), nextTreeNode(), sortIntervalsList(), split(), splitBaselineInterval(), splitIntervalsTree(), store(), storeAndTruncate(), storeVector(), truncateLastInterval(), updateFirstInterval(), updateRevision(), verifyIntervals(), version(), version1(), version2L(), version2R(), version3M(), versionVector(), and verticalCompare().

BdbStatus BdbDatabase::buildTopStoreVector const std::vector< BdbCondStoreTime > &    theVectorIn,
const BdbHandle(BdbIntervalR)&    theFirstIntervalH,
const BdbHandle(BdbIntervalR)&    theLastIntervalH,
const BdbHandle(BdbIntervalR)&    theStartIntervalH,
std::vector< BdbCondStoreInterval > &    theVectorOut
[private]
 

The first method translates a vector of points in the validity time into a vector of intervals in the validity time given the current layout of the TOPMOST intervals in the container, starting from the specified (start) interval handle.

The second method is meant to verify the quality of the input vector with the points in the storing sequence.

Definition at line 1383 of file BdbDatabase.cc.

References BdbcSuccess, BdbHandle(), BdbIsNull, and BdbRef.

Referenced by storeVector(), and versionVector().

BdbStatus BdbDatabase::copyLimitedSubTree const BdbHandle(BdbIntervalR)&    theInIntervalH,
const BdbTime   theLeftBorderTime,
const BdbTime   theRightBorderTime,
BdbHandle(BdbIntervalR)&    theOutIntervalH
[private]
 

Copy a subtree of intervals, limited by the left and right borders in validity time, assuming that the passed intervals already exist.

Definition at line 6551 of file BdbDatabase.cc.

References BdbcError, BdbcSuccess, BdbHandle(), BdbItr, BdbStatus, BdbIntervalBase::beginTime(), createVersion(), BdbIntervalBase::endTime(), and nameVersion().

Referenced by splitIntervalsTree().

void BdbDatabase::createRevisedTopVersion const BdbHandle(BdbIntervalR)&    theOldIntervalH,
BdbHandle(BdbIntervalR)&    theNewIntervalH
[private]
 

Definition at line 5395 of file BdbDatabase.cc.

References createVersion(), and BdbIntervalR::setRevision().

Referenced by addVectorVersion(), version1(), version2L(), version2R(), and version3M().

BdbStatus BdbDatabase::createRevision std::vector< BdbHandle(BdbInterval)> &    theList,
const char *    theContainerName,
d_ULong   theRevisionId,
d_ULong    theBaseRevisionId,
const char *    theSite = (char *) 0,
const char *    theDescr = (char *) 0
 

Definition at line 3670 of file BdbDatabase.cc.

References BdbcError, BdbContObj, BdbcSuccess, BdbHandle(), BdbIsNull, BdbStatus, BdbCondDatabaseBase::getIntervalContH(), getNextAvailableRevisionId(), BdbCondDatabaseBase::getRegistryH(), BdbCondDatabaseBase::historyRCreate(), BdbCondRevision::ILLEGAL, includeIntoRevision(), rcsid, setAuthLevel(), BdbCondDatabaseBase::subsystemTLA(), verifyIndexMode(), and verifyIntervals().

Referenced by cmd_create_revision(), cmd_revise2d(), cmd_revise_top(), cmd_revise_top_many(), cmd_reviseOIDs(), and createRevision().

void BdbDatabase::createVersion const BdbHandle(BdbIntervalR)&    theOldIntervalH,
BdbHandle(BdbIntervalR)&    theNewIntervalH
[private]
 

Create a new version of the specified interval. These methods may be reimplemented using various techniques. The only difference of the "createRevisedTopVersion" method is that it may optionally connect new interval to an existing "reviseAfterStore" revision.

Definition at line 5367 of file BdbDatabase.cc.

References BdbIntervalBase::getBeginTime(), BdbIntervalBase::getEndTime(), BdbInterval::getObject(), and BdbInterval::getTag().

Referenced by copyLimitedSubTree(), and createRevisedTopVersion().

BdbStatus BdbDatabase::cutFirstInterval const BdbHandle(BdbObject)&    theObjectH,
const BdbHandle(BdbIntervalR)&    firstIntervalH,
const BdbTime   theBeginTime,
const BdbTime   theEndTime,
d_ULong    theTag = 0,
const BdbTime   theVersionTime = BdbTime::minusInfinity
[private]
 

Definition at line 5000 of file BdbDatabase.cc.

References BdbContObj, BdbcSuccess, BdbHandle(), BdbCondDatabaseBase::getBaselineRevisionH(), BdbCondDatabaseBase::getIntervalContH(), BdbInterval::getObject(), BdbInterval::getTag(), BdbInterval::getVersionTime(), BdbTime::minusInfinity, BdbIntervalR::setBaselinePrevious(), BdbIntervalBase::setBeginTime(), BdbIntervalR::setTopPrevious(), updateFirstInterval(), and version().

Referenced by store(), and storeAndTruncate().

BdbStatus BdbDatabase::cutLastInterval const BdbHandle(BdbObject)&    theObjectH,
const BdbHandle(BdbIntervalR)&    lastIntervalH,
const BdbTime   theBeginTime,
const BdbTime   theEndTime,
d_ULong    theTag = 0,
const BdbTime   theVersionTime = BdbTime::minusInfinity
[private]
 

Definition at line 5099 of file BdbDatabase.cc.

References BdbContObj, BdbcSuccess, BdbHandle(), BdbCondDatabaseBase::getBaselineRevisionH(), BdbCondDatabaseBase::getIntervalContH(), BdbTime::plusInfinity, BdbIntervalR::setBaselineNext(), BdbIntervalBase::setEndTime(), BdbIntervalR::setTopNext(), updateLastInterval(), and version1().

Referenced by store(), storeVector(), truncateLastInterval(), and version().

void BdbDatabase::deleteIntervalsInSubTree BdbHandle(BdbIntervalR)&    theIntervalH,
bool    deleteGeneObject = false
[private]
 

Definition at line 6716 of file BdbDatabase.cc.

References BdbDelete, BdbHandle(), and BdbItr.

Referenced by splitIntervalsTree().

BdbStatus BdbDatabase::deleteRevision const char *    theContainerName,
d_ULong   theRevisionId
 

Definition at line 3910 of file BdbDatabase.cc.

References BdbCondRevision::BASELINE, BdbcError, BdbcSuccess, BdbDelete, BdbHandle(), BdbIsNull, BdbItr, BdbStatus, BdbCondDatabaseBase::findRegistry(), BdbCondDatabaseBase::historyRDelete(), rcsid, setAuthLevel(), BdbCondDatabaseBase::subsystemTLA(), and verifyIndexMode().

Referenced by cmd_delete_revision().

BdbStatus BdbDatabase::fetch BdbHandle(BdbObject)&    theObjectH,
BdbIntervalBase   theValidityInterval,
BdbTime   theVersionTime,
const char *    theContainerName,
const BdbTime   theTime,
d_ULong    theTag = 0
 

Definition at line 1791 of file BdbDatabase.cc.

References _accessor, COUT1, BdbCondAccessor::findObject(), and BdbCondDatabaseBase::subsystemTLA().

BdbStatus BdbDatabase::fetch BdbHandle(BdbObject)&    theObjectH,
BdbIntervalBase   theValidityInterval,
const char *    theContainerName,
const BdbTime   theTime,
d_ULong    theTag = 0
 

Definition at line 1763 of file BdbDatabase.cc.

References _accessor, COUT1, BdbCondAccessor::findObject(), and BdbCondDatabaseBase::subsystemTLA().

BdbStatus BdbDatabase::fetch BdbHandle(BdbObject)&    theObjectH,
const char *    theContainerName,
const BdbTime   theTime,
d_ULong    theTag = 0
 

Definition at line 1752 of file BdbDatabase.cc.

References COUT1, findObject(), and BdbCondDatabaseBase::subsystemTLA().

Referenced by BdbHWMSingleton::BdbHWMSingleton(), EmcFooClassProxy_002::faultHandler(), CdbBdbWCondition::findObject(), and main().

BdbStatus BdbDatabase::findInterval BdbHandle(BdbIntervalR)&    theIntervalH,
const BdbTime   theTime,
d_ULong    theTag = 0
[private]
 

The versioning methods accepts "new" handle of BdbIntervalR. Iven if this is not required -- this is done in order to have more maintanable code.

NOTE; The "versionVector()" is an optimized version of the close-ened regular "vector()" method, which is meant to be used by the "storeAndTruncate()" method only to store versions in the middle of the validity timeline (except the FITS and LAST intervals). If this rule is violated then the error status is returned by the method.

Definition at line 4172 of file BdbDatabase.cc.

References BdbContObj, BdbcRead, BdbHandle(), BdbItr, findTopInterval(), BdbTime::getGmtSec(), and BdbCondDatabaseBase::getIntervalContH().

BdbStatus BdbDatabase::findInterval BdbHandle(BdbInterval)&    theIntervalH,
const char *    theContainerName,
const BdbTime   theTime,
d_ULong    theTag = 0
 

Definition at line 1926 of file BdbDatabase.cc.

References _accessor, BdbcSuccess, BdbIsNull, BdbStatus, COUT1, BdbCondAccessor::findInterval(), BdbCondDatabaseBase::isValidCacheForContainer(), and BdbCondDatabaseBase::subsystemTLA().

Referenced by cmd_fetchnstore(), cmd_findinterval(), cmd_print_genealogy(), BdbCondROIDServerLoader::findInterval(), BdbCondROIDServerLoader::findObject(), BdbCondRemoteAccessor::findObject(), BdbCondDirectAccessor::findObject(), BdbCache::ifdFetch(), main(), storeVector(), version(), and versionVector().

BdbStatus BdbDatabase::findObject BdbHandle(BdbObject)&    theObjectH,
const char *    theContainerName,
const BdbTime   theTime,
d_ULong    theTag = 0
 

Definition at line 1902 of file BdbDatabase.cc.

References _accessor, BdbStatus, COUT1, BdbCondAccessor::findObject(), and BdbCondDatabaseBase::subsystemTLA().

Referenced by fetch(), and BdbCache::ifdFetch().

BdbStatus BdbDatabase::findRevisedInterval BdbHandle(BdbInterval)&    theIntervalH,
BdbItr(BdbInterval)&    theIntervalItr,
d_ULong    theRevisionId
[private]
 

Definition at line 2096 of file BdbDatabase.cc.

References BdbcError, BdbcSuccess, BdbHandle(), BdbIsNull, BdbStatus, BdbCondDatabaseBase::containerName(), getRevisionStack(), and BdbCondDatabaseBase::subsystemTLA().

Referenced by BdbCondDirectAccessor::findInterval().

BdbStatus BdbDatabase::findTopInterval BdbHandle(BdbInterval)&    theIntervalH,
BdbItr(BdbInterval)&    theIntervalItr
[private]
 

The following methods are ment to perform different algorithms of an interval's search.

Definition at line 2036 of file BdbDatabase.cc.

References BdbcError, BdbcSuccess, BdbIsNull, BdbCondDatabaseBase::containerName(), BdbCondDatabaseBase::subsystemTLA(), and verticalCompare().

Referenced by findInterval(), BdbCondDirectAccessor::findInterval(), and getTopmostInterval().

BdbStatus BdbDatabase::firstInterval BdbHandle(BdbInterval)&    theIntervalH,
const char *    theContainerName
 

Definition at line 1972 of file BdbDatabase.cc.

References _accessor, BdbcSuccess, BdbStatus, and BdbCondAccessor::firstInterval().

Referenced by cmd_print_genealogy(), cmd_scan(), BdbCondDatabaseMgr::copyObjects(), BdbCondDirectAccessor::findInterval(), BdbCondROIDServerLoader::firstInterval(), getBaselineInterval(), BdbCondDatabaseMgr::getClasses(), BdbIntervalItr::getFirstBaselineInterval(), BdbIntervalItr::getFirstRevisedInterval(), BdbIntervalItr::getFirstTopmostInterval(), getList(), getRevisedInterval(), getRevisionList(), getTopmostInterval(), BdbCondDebug::initialize(), BdbCondRInfoLoader::load(), BdbCondDatabaseMgr::locateBorderIntervals(), locateFirstAndLast(), main(), BdbCondDatabaseMgr::nanoCorrection(), BdbCondDdOprRunInfo::operation(), BdbCondDatabaseMgr::purgeIntervalContainer(), BdbCondConverter< T, P >::run(), BdbCondDatabaseMgr::scanContainer(), BdbCondDatabaseMgr::validateContainer(), and verifyIntervals().

const BdbCondAccessor * BdbDatabase::getAccessor   [static]
 

Get/Set an accessor object. Return the previous one or just null pointer if this is the default accessor.

NOTE: The idea of returning the null pointer instead of the pointer to the default accessor is to protect the default accessor from being accidentally deleted by the clients' code.

NOTE: If the "setAccessor" method is given a null pointer then the default accessor is set as the current one.

Definition at line 138 of file BdbDatabase.cc.

References _accessor.

BdbStatus BdbDatabase::getBaselineInterval BdbHandle(BdbInterval)&    theIntervalH,
const char *    theContainerName,
const BdbTime   theTime
 

Definition at line 3258 of file BdbDatabase.cc.

References BdbCondRevision::BASELINE, BdbcError, BdbcSuccess, BdbHandle(), BdbIsNull, BdbStatus, firstInterval(), getList(), BdbIntervalBase::inInterval(), lastInterval(), and BdbCondDatabaseBase::subsystemTLA().

Referenced by BdbIntervalItr::getFirstBaselineInterval(), getRevisedInterval(), getRevisionList(), getTree(), getUnassignedList(), BdbCondDatabaseMgr::locateBaselineIntervals(), main(), BdbCondDatabaseMgr::purgeIntervalContainer(), and split().

BdbStatus BdbDatabase::getBoundIntervalsInSubTree std::vector< BdbHandle(BdbInterval)> &    theIntervalVector,
const std::vector< BdbHandle(BdbInterval)> &    theList,
const BdbHandle(BdbInterval)&    theIntervalH
[private]
 

Definition at line 6017 of file BdbDatabase.cc.

References BdbcError, BdbcSuccess, BdbHandle(), BdbIsNull, and BdbStatus.

Referenced by verifyIntervals().

void BdbDatabase::getIntervalCacheH BdbHandle(BdbInterval)&    theIntervalH const [inline]
 

Definition at line 630 of file BdbDatabase.hh.

Referenced by EmcFooClassProxy_002::faultHandler().

BdbStatus BdbDatabase::getList std::vector< BdbHandle(BdbInterval)> &    theList,
const char *    theContainerName,
const BdbTime   theTime
 

Definition at line 2308 of file BdbDatabase.cc.

References BdbContObj, BdbcRead, BdbcSuccess, BdbHandle(), BdbIsNull, BdbItr, BdbStatus, BdbCondDatabaseBase::findIntervalCont(), firstInterval(), BdbTime::getGmtSec(), BdbIntervalBase::inInterval(), lastInterval(), sortIntervalsList(), and BdbCondDatabaseBase::subsystemTLA().

Referenced by getBaselineInterval(), getRevisedInterval(), getUnassignedList(), and main().

d_ULong BdbDatabase::getMostRecentRevisionId const char *    theContainerName
 

Definition at line 3999 of file BdbDatabase.cc.

References BdbCondRevision::BASELINE, BdbcSuccess, BdbHandle(), BdbItr, BdbStatus, BdbCondDatabaseBase::findRegistry(), BdbCondRevision::ILLEGAL, result, and BdbCondDatabaseBase::subsystemTLA().

Referenced by cmd_produce(), cmd_revise_top_many(), cmd_verify_config(), and getNextAvailableRevisionId().

d_ULong BdbDatabase::getNextAvailableRevisionId const char *    theContainerName
 

Definition at line 4057 of file BdbDatabase.cc.

References getMostRecentRevisionId(), BdbCondRevision::ILLEGAL, result, and BdbCondDatabaseBase::subsystemTLA().

Referenced by createRevision().

BdbStatus BdbDatabase::getNextRevisedIntervals std::vector< BdbHandle(BdbIntervalR)> &    theIntervalVector,
const BdbHandle(BdbIntervalR)&    theIntervalH,
d_ULong    theRevisionId
[private]
 

Definition at line 6110 of file BdbDatabase.cc.

References BdbcError, BdbcSuccess, BdbHandle(), BdbIsNull, BdbItr, BdbStatus, and BdbCondRevision::id().

Referenced by getRevisedIntervalsInSubTree().

const char * BdbDatabase::getOID const BdbHandle(BdbPersObj)&    thePersObjH [private]
 

Get a string representation for specified OID.

Definition at line 6276 of file BdbDatabase.cc.

Referenced by verifyIntervals().

BdbStatus BdbDatabase::getRevisedInterval BdbHandle(BdbInterval)&    theIntervalH,
const char *    theContainerName,
const BdbTime   theTime,
d_ULong    theRevisionId = BdbCondRevision::BASELINE
 

Definition at line 3444 of file BdbDatabase.cc.

References BdbCondRevision::BASELINE, BdbcError, BdbContObj, BdbcSuccess, BdbHandle(), BdbIsNull, BdbStatus, BdbCondDatabaseBase::findIntervalCont(), firstInterval(), getBaselineInterval(), getList(), BdbCondDatabaseBase::getRegistryH(), BdbIntervalBase::inInterval(), lastInterval(), and BdbCondDatabaseBase::subsystemTLA().

Referenced by BdbIntervalItr::getFirstRevisedInterval(), and BdbIntervalItr::getNextRevisedInterval().

BdbStatus BdbDatabase::getRevisedIntervalsInSubTree std::vector< BdbHandle(BdbIntervalR)> &    theIntervalVector,
const BdbHandle(BdbIntervalR)&    theIntervalH,
d_ULong    theRevisionId
[private]
 

Definition at line 5923 of file BdbDatabase.cc.

References BdbcError, BdbcSuccess, BdbHandle(), BdbIsNull, BdbStatus, getNextRevisedIntervals(), and BdbCondRevision::id().

Referenced by verifyIntervals().

BdbStatus BdbDatabase::getRevisionList std::vector< BdbHandle(BdbInterval)> &    theList,
const char *    theContainerName,
const BdbTime   theBeginTime = BdbTime::minusInfinity,
const BdbTime   theEndTime = BdbTime::plusInfinity,
d_ULong    theRevisionId = BdbCondRevision::BASELINE
 

Definition at line 2858 of file BdbDatabase.cc.

References BdbCondRevision::BASELINE, BdbcError, BdbContObj, BdbcSuccess, BdbHandle(), BdbIsNull, BdbStatus, BdbCondDatabaseBase::findIntervalCont(), firstInterval(), getBaselineInterval(), lastInterval(), BdbTime::minusInfinity, BdbTime::plusInfinity, and BdbCondDatabaseBase::subsystemTLA().

BdbStatus BdbDatabase::getRevisionStack std::vector< d_ULong > &    theRevisionStack,
d_ULong    theRevisionId
[private]
 

More helprs for the revisions related operations.

Definition at line 5823 of file BdbDatabase.cc.

References BdbcError, BdbcSuccess, BdbHandle(), BdbIsNull, BdbItr, BdbCondRevision::getBaseRevision(), BdbCondDatabaseBase::getRegistryH(), and BdbCondRevision::id().

Referenced by findRevisedInterval().

BdbStatus BdbDatabase::getTopmostInterval BdbHandle(BdbInterval)&    theIntervalH,
const char *    theContainerName,
const BdbTime   theTime
 

Definition at line 3356 of file BdbDatabase.cc.

References BdbContObj, BdbcRead, BdbcSuccess, BdbHandle(), BdbItr, BdbStatus, findTopInterval(), firstInterval(), BdbTime::getGmtSec(), BdbCondDatabaseBase::getIntervalContH(), BdbIntervalBase::inInterval(), and lastInterval().

Referenced by BdbIntervalItr::getFirstRevisedInterval(), BdbIntervalItr::getFirstTopmostInterval(), BdbCondDatabaseMgr::mergeInnerFromBaseline(), BdbCondDatabaseMgr::mergeLeftFromBaseline(), BdbCondDatabaseMgr::purgeIntervalContainer(), and splitIntervalsTree().

BdbStatus BdbDatabase::getTree std::vector< BdbHandle(BdbInterval)> &    theList,
int &    numBranches,
const char *    theContainerName,
const BdbTime   theTime
 

Definition at line 3022 of file BdbDatabase.cc.

References BdbcSuccess, BdbHandle(), BdbStatus, getBaselineInterval(), and nextTreeNode().

Referenced by BdbCondDatabaseMgr::getClasses(), getUnassignedTree(), main(), BdbCondDatabaseMgr::scanContainer(), and BdbCondDatabaseMgr::validateContainer().

BdbTime BdbDatabase::getTruncateOverrideTime   [static]
 

Definition at line 131 of file BdbDatabase.cc.

References _truncateOverrideTime, and intializeStaticMembers().

BdbStatus BdbDatabase::getUnassignedList std::vector< BdbHandle(BdbInterval)> &    theList,
const char *    theContainerName,
const BdbTime   theBeginValidityTime,
const BdbTime   theEndValidityTime,
const BdbTime   theBeginVersionTime,
const BdbTime   theEndVersionTime = BdbTime::plusInfinity,
const SelectionStrategyType    theStrategy = RECENT
 

Definition at line 2456 of file BdbDatabase.cc.

References BdbcError, BdbContObj, BdbcSuccess, BdbHandle(), BdbIsNull, BdbStatus, EARLIEST, BdbCondDatabaseBase::findIntervalCont(), getBaselineInterval(), getUnassignedTree(), BdbTime::plusInfinity, RECENT, BdbCondDatabaseBase::subsystemTLA(), and verticalCompare().

BdbStatus BdbDatabase::getUnassignedList std::vector< BdbHandle(BdbInterval)> &    theList,
const char *    theContainerName,
const BdbTime   theTime
 

The public "revision" interface.

NOTE: This interface does not require extended version of the BdbIntervalR class.

Definition at line 2235 of file BdbDatabase.cc.

References BdbcError, BdbcSuccess, BdbHandle(), BdbIsNull, BdbStatus, and getList().

Referenced by cmd_revise2d(), and main().

BdbStatus BdbDatabase::getUnassignedTree std::vector< BdbHandle(BdbInterval)> &    theList,
int &    numBranches,
const char *    theContainerName,
const BdbTime   theTime
 

Definition at line 3153 of file BdbDatabase.cc.

References BdbcSuccess, BdbHandle(), BdbIsNull, BdbStatus, and getTree().

Referenced by getUnassignedList(), and main().

void BdbDatabase::includeIntoRevision std::vector< BdbHandle(BdbInterval)> &    theList,
const BdbHandle(BdbCondRevision)&    theRevisionH
[private]
 

Definition at line 5756 of file BdbDatabase.cc.

References BdbHandle(), BdbIsNull, BdbIntervalBase::getBeginTime(), BdbIntervalBase::getEndTime(), BdbInterval::getObject(), BdbIntervalR::getRevision(), BdbInterval::getTag(), BdbInterval::getVersionTime(), BdbIntervalR::setRevision(), and version().

Referenced by createRevision(), and updateRevision().

void BdbDatabase::intializeStaticMembers   [static, private]
 

This method is meant to initialize the values of this class's static data members before any operations with these data members are done (either in static methods or constructors of the class).

This solution allows to postpone the initialization of those static members, which are based on the correctness of other static data members from other classes.

Definition at line 103 of file BdbDatabase.cc.

References _staticMembersAreInitialized, _truncateOverrideTime, and BdbTime::plusInfinity.

Referenced by BdbDatabase(), getTruncateOverrideTime(), and setTruncateOverrideTime().

BdbStatus BdbDatabase::lastInterval BdbHandle(BdbInterval)&    theIntervalH,
const char *    theContainerName
 

Definition at line 1996 of file BdbDatabase.cc.

References _accessor, BdbcSuccess, BdbStatus, and BdbCondAccessor::lastInterval().

Referenced by cmd_offsetlast(), cmd_print_genealogy(), cmd_scan(), BdbCondDirectAccessor::findInterval(), getBaselineInterval(), getList(), getRevisedInterval(), getRevisionList(), getTopmostInterval(), BdbCondROIDServerLoader::lastInterval(), BdbCondDatabaseMgr::locateBorderIntervals(), locateFirstAndLast(), main(), BdbCondDatabaseMgr::nanoCorrection(), BdbCondDdOprRunInfo::operation(), BdbCondDatabaseMgr::purgeIntervalContainer(), CdbBdbWCondition::split(), and verifyIntervals().

BdbStatus BdbDatabase::linkTopIntervalsInSubTree const BdbHandle(BdbIntervalR)&    theIntervalH,
BdbHandle(BdbIntervalR)&    thePreviousIntervalH
[private]
 

Definition at line 6666 of file BdbDatabase.cc.

References BdbcError, BdbcSuccess, BdbHandle(), BdbIsNull, BdbItr, BdbStatus, BdbIntervalR::setTopNext(), and BdbIntervalR::setTopPrevious().

Referenced by splitIntervalsTree().

void BdbDatabase::nameVersion const BdbHandle(BdbInterval)&    theOriginalIntervalH,
const BdbHandle(BdbInterval)&    theIntervalH
[private]
 

Manipulate the names of Objectivity versions.

Definition at line 5410 of file BdbDatabase.cc.

References BdbContObj, BdbHandle(), BdbCondDatabaseBase::getIntervalContH(), and upDateVersionName().

Referenced by addVectorVersion(), copyLimitedSubTree(), version1(), version2L(), version2R(), and version3M().

void BdbDatabase::nextTreeNode std::vector< BdbHandle(BdbInterval)> &    theList,
std::vector< BdbHandle(BdbInterval)> &    theStack,
int &    numBranches
[private]
 

The following member function -- is a helper function for getTree() method.

Definition at line 3064 of file BdbDatabase.cc.

References BdbHandle(), and BdbItr.

Referenced by getTree().

BdbDatabase & BdbDatabase::operator= const BdbDatabase &    theDB
 

Definition at line 246 of file BdbDatabase.cc.

References _authLevelIsSet, _myHint, _revisionPath, and BdbCondDatabaseBase::operator=().

Referenced by BdbObsoleteDatabase::operator=().

BdbStatus BdbDatabase::remove const char *    theContainerName,
const BdbTime   theTime
 

Definition at line 1817 of file BdbDatabase.cc.

References BdbcError, COUT1, and BdbCondDatabaseBase::subsystemTLA().

Referenced by cmd_removeinterval().

void BdbDatabase::resetCacheHandler   [private, virtual]
 

This function is called by a base class when it resets their internal cache. This would require to provide an adequate reaction on this event from objects of the current class.

Implements BdbCondDatabaseBase.

Definition at line 6297 of file BdbDatabase.cc.

BdbCondAccessor * BdbDatabase::setAccessor BdbCondAccessor   theAccessor [static]
 

Definition at line 152 of file BdbDatabase.cc.

References _accessor, and BdbCondAccessor::reset().

Referenced by main(), and setDefaultAccessor().

bool BdbDatabase::setAuthLevel const char *    theContainerName [private]
 

Ensure that the proper authorization level is set plus check if the specified interval container is not write-locked.

Definition at line 4080 of file BdbDatabase.cc.

References _authLevelIsSet, BdbStatus, BdbCondDatabaseBase::isValidCacheForContainer(), BdbCondDatabaseBase::isWriteLocked(), BdbCondDatabaseBase::subsystemTLA(), and verifyAuthLevelOnly().

Referenced by createRevision(), deleteRevision(), split(), store(), storeAndTruncate(), storeVector(), and updateRevision().

BdbCondAccessor * BdbDatabase::setDefaultAccessor   [static]
 

Definition at line 185 of file BdbDatabase.cc.

References setAccessor().

Referenced by main().

void BdbDatabase::setIntervalCache const BdbHandle(BdbInterval)&    theIntervalH [private]
 

Explicitly set the internal cache of the object using specified values.

NOTE: This method provides a very fast way to establish the cache of this class's instances.

Definition at line 6303 of file BdbDatabase.cc.

Referenced by BdbCondRemoteAccessor::translateResult().

BdbTime BdbDatabase::setTruncateOverrideTime const BdbTime   theNewTruncateOverrideTime [static]
 

The "setTruncateOverrideTime" method sets the new override and returns the previous one as a result.

The "getTruncateOverrideTime" method returns the current value for this time.

The default value for this time is +Infinity, which means that override does not affect the storeAndTruncate() operation.

Definition at line 112 of file BdbDatabase.cc.

References _truncateOverrideTime, and intializeStaticMembers().

Referenced by BdbSetTruncTime::handle(), and main().

BdbStatus BdbDatabase::sortIntervalsList std::vector< BdbHandle(BdbInterval)> &    theList [private]
 

Definition at line 6171 of file BdbDatabase.cc.

References BdbcError, BdbcSuccess, BdbHandle(), BdbIsNull, BdbCondDatabaseBase::containerName(), and BdbCondDatabaseBase::subsystemTLA().

Referenced by getList().

BdbStatus BdbDatabase::split const char *    theContainerName,
const BdbTime   theTime
 

Definition at line 1832 of file BdbDatabase.cc.

References BdbcError, BdbcSuccess, BdbHandle(), BdbIsNull, BdbStatus, COUT1, getBaselineInterval(), BdbIntervalBase::getBeginTime(), BdbIntervalBase::getEndTime(), BdbCondDatabaseBase::historySplit(), BdbTime::minusInfinity, BdbTime::plusInfinity, rcsid, setAuthLevel(), splitBaselineInterval(), splitIntervalsTree(), BdbCondDatabaseBase::subsystemTLA(), and verifyIndexMode().

Referenced by cmd_split(), main(), BdbCondDdOprMergeIContainers2::operation(), BdbCondDdOprMergeIContainers::operation(), and CdbBdbWCondition::split().

BdbStatus BdbDatabase::splitBaselineInterval BdbHandle(BdbIntervalR)&    theOldIntervalH,
const BdbTime   theTime
[private]
 

The helpers for the split() operation.

Definition at line 6309 of file BdbDatabase.cc.

References BdbContObj, BdbcSuccess, BdbHandle(), BdbIsNull, BdbStatus, BdbIntervalR::getBaselineNext(), BdbIntervalBase::getEndTime(), BdbCondDatabaseBase::getIntervalContH(), BdbInterval::getObject(), BdbIntervalR::getRevision(), BdbInterval::getTag(), BdbIntervalR::getTopNext(), BdbInterval::getVersionTime(), BdbTime::plusInfinity, BdbIntervalR::setBaselineNext(), BdbIntervalBase::setEndTime(), and BdbIntervalR::setTopNext().

Referenced by split().

BdbStatus BdbDatabase::splitIntervalsTree const char *    theContainerName,
BdbHandle(BdbIntervalR)&    theOldIntervalH,
const BdbTime   theTime
[private]
 

Definition at line 6376 of file BdbDatabase.cc.

References BdbcError, BdbcSuccess, BdbHandle(), BdbStatus, copyLimitedSubTree(), deleteIntervalsInSubTree(), BdbIntervalR::getBaselineNext(), BdbIntervalR::getBaselinePrevious(), BdbIntervalBase::getBeginTime(), BdbIntervalBase::getEndTime(), BdbInterval::getObject(), BdbIntervalR::getRevision(), BdbInterval::getTag(), getTopmostInterval(), BdbInterval::getVersionTime(), linkTopIntervalsInSubTree(), and BdbCondDatabaseBase::subsystemTLA().

Referenced by split().

BdbStatus BdbDatabase::store const BdbHandle(BdbObject)&    theObjectH,
const char *    theContainerName,
const BdbIntervalBase   theInterval,
d_ULong    theTag = 0
 

Definition at line 608 of file BdbDatabase.cc.

References BdbIntervalBase::getBeginTime(), BdbIntervalBase::getEndTime(), and store().

BdbStatus BdbDatabase::store const BdbHandle(BdbObject)&    theObjectH,
const char *    theContainerName,
const BdbTime   theBeginTime,
const BdbTime   theEndTime,
d_ULong    theTag = 0
 

Definition at line 414 of file BdbDatabase.cc.

References appendIntervalR(), BdbcError, BdbContObj, BdbcSuccess, BdbcUpdate, BdbHandle(), BdbIsNull, BdbStatus, COUT1, BdbCondDatabaseBase::createIntervalCont(), cutFirstInterval(), cutLastInterval(), BdbCondDatabaseBase::findIntervalCont(), BdbCondDatabaseBase::historyStore(), BdbTime::minusInfinity, BdbTime::plusInfinity, rcsid, setAuthLevel(), store(), BdbCondDatabaseBase::subsystemTLA(), updateFirstInterval(), verifyIndexMode(), and version().

BdbStatus BdbDatabase::store const BdbHandle(BdbObject)&    theObjectH,
const char *    theContainerName,
const BdbTime   theBeginTime,
d_ULong    theTag = 0
 

Basic data storing and data access operations.

NOTE: This public interface always return an "old" un-extended versions of BdbInterval class.

RELOAD THE CACHE.

Definition at line 271 of file BdbDatabase.cc.

References appendIntervalR(), BdbcError, BdbContObj, BdbcSuccess, BdbcUpdate, BdbHandle(), BdbIsNull, BdbStatus, COUT1, BdbCondDatabaseBase::createIntervalCont(), cutFirstInterval(), BdbCondDatabaseBase::findIntervalCont(), BdbCondDatabaseBase::historyStore(), BdbTime::minusInfinity, BdbTime::plusInfinity, rcsid, setAuthLevel(), BdbCondDatabaseBase::subsystemTLA(), updateFirstInterval(), updateLastInterval(), verifyIndexMode(), and version().

Referenced by cmd_fetchnstore(), cmd_store(), cmd_store2(), main(), BdbHWMSingleton::setHighWaterMark(), store(), storeAndTruncate(), and CdbBdbWCondition::storeObject().

BdbStatus BdbDatabase::storeAndTruncate const BdbHandle(BdbObject)&    theObjectH,
const char *    theContainerName,
const BdbTime   theInsertTime,
const BdbTime   theTruncateTime,
d_ULong    theTag = 0
 

Definition at line 620 of file BdbDatabase.cc.

References _truncateOverrideTime, BdbcError, BdbContObj, BdbcSuccess, BdbcUpdate, BdbHandle(), BdbIsNull, BdbStatus, COUT1, BdbCondDatabaseBase::createIntervalCont(), cutFirstInterval(), BdbCondDatabaseBase::findIntervalCont(), BdbCondDatabaseBase::historyTStore(), BdbTime::minusInfinity, BdbTime::plusInfinity, rcsid, setAuthLevel(), store(), BdbCondDatabaseBase::subsystemTLA(), truncateLastInterval(), updateFirstInterval(), verifyIndexMode(), and versionVector().

Referenced by cmd_storetrunc(), main(), and CdbBdbWCondition::storeAndTruncateObject().

BdbStatus BdbDatabase::storeVector const std::vector< BdbCondStoreTime > &    theVector,
const char *    theContainerName
 

Definition at line 929 of file BdbDatabase.cc.

References addVectorVersion(), appendIntervalR(), BdbcError, BdbContObj, BdbcSuccess, BdbcUpdate, BdbHandle(), BdbIsNull, BdbRef, BdbStatus, buildTopStoreVector(), COUT1, BdbCondDatabaseBase::createIntervalCont(), cutLastInterval(), findInterval(), BdbCondDatabaseBase::findIntervalCont(), BdbCondDatabaseBase::getBaselineRevisionH(), BdbIntervalBase::getBeginTime(), BdbIntervalBase::getEndTime(), BdbCondDatabaseBase::getIntervalContH(), BdbCondDatabaseBase::historyStoreVector(), BdbTime::minusInfinity, rcsid, setAuthLevel(), BdbCondDatabaseBase::subsystemTLA(), updateFirstInterval(), verifyIndexMode(), and verifyStoreVector().

Referenced by cmd_storevector(), cmd_storevectorn(), main(), and BdbCondLoadList::storeObjects().

BdbStatus BdbDatabase::truncateLastInterval const BdbHandle(BdbObject)&    theObjectH,
const BdbHandle(BdbIntervalR)&    lastIntervalH,
const BdbTime   theInsertTime,
const BdbTime   theTruncateTime,
d_ULong    theTag = 0
[private]
 

Definition at line 5165 of file BdbDatabase.cc.

References appendIntervalR(), BdbcError, BdbContObj, BdbcSuccess, BdbHandle(), BdbStatus, cutLastInterval(), BdbIntervalBase::getBeginTime(), BdbCondDatabaseBase::getIntervalContH(), and BdbTime::plusInfinity.

Referenced by storeAndTruncate().

BdbRefAny BdbDatabase::updatedHint  
 

Definition at line 2183 of file BdbDatabase.cc.

References _myHint, BdbConditions::instance(), BdbCondDatabaseBase::subsystemTLA(), and BdbAbsRegularClustH::updatedHint().

Referenced by CdbBdbWCondition::hint(), main(), and makeObject().

BdbStatus BdbDatabase::updateFirstInterval const BdbHandle(BdbObject)&    theObjectH,
const BdbHandle(BdbIntervalR)&    firstIntervalH,
const BdbTime   theEndTime,
d_ULong    theTag = 0,
const BdbTime   theVersionTime = BdbTime::minusInfinity
[private]
 

These methods provide modification for the FIRSt and LAST intervals.

Definition at line 4923 of file BdbDatabase.cc.

References BdbContObj, BdbcSuccess, BdbHandle(), BdbCondDatabaseBase::getBaselineRevisionH(), BdbIntervalBase::getEndTime(), BdbCondDatabaseBase::getIntervalContH(), BdbTime::minusInfinity, BdbIntervalR::setBaselinePrevious(), BdbIntervalBase::setBeginTime(), BdbInterval::setObject(), BdbInterval::setTag(), BdbIntervalR::setTopPrevious(), and BdbInterval::setVersionTime().

Referenced by cutFirstInterval(), store(), storeAndTruncate(), and storeVector().

BdbStatus BdbDatabase::updateLastInterval const BdbHandle(BdbObject)&    theObjectH,
const BdbHandle(BdbIntervalR)&    lastIntervalH,
d_ULong    theTag = 0,
const BdbTime   theVersionTime = BdbTime::minusInfinity
[private]
 

Definition at line 5077 of file BdbDatabase.cc.

References BdbcSuccess, BdbTime::minusInfinity, BdbInterval::setObject(), BdbInterval::setTag(), and BdbInterval::setVersionTime().

Referenced by cutLastInterval(), store(), and version().

BdbStatus BdbDatabase::updateRevision std::vector< BdbHandle(BdbInterval)> &    theList,
const char *    theContainerName,
d_ULong    theRevisionId
 

Definition at line 3795 of file BdbDatabase.cc.

References BdbCondRevision::BASELINE, BdbcError, BdbcSuccess, BdbHandle(), BdbIsNull, BdbStatus, BdbCondDatabaseBase::getRegistryH(), BdbCondDatabaseBase::historyRUpdate(), includeIntoRevision(), rcsid, setAuthLevel(), BdbCondDatabaseBase::subsystemTLA(), verifyIndexMode(), and verifyIntervals().

Referenced by cmd_revise2d(), cmd_revise_top(), cmd_revise_top_many(), and cmd_reviseOIDs().

char * BdbDatabase::upDateVersionName const char *    theOldName const [private]
 

Definition at line 5460 of file BdbDatabase.cc.

References Zero.

Referenced by nameVersion().

bool BdbDatabase::verifyAuthLevelOnly const char *    theContainerName [private]
 

Ensure that the proper authorization level is set only.

Definition at line 4120 of file BdbDatabase.cc.

References BdbcSuccess, BdbStatus, BdbCondDatabaseBase::correctedSubsystemName(), BdbDomainAuth::Group, BdbConditions::instance(), BdbDomainAuth::setAuthLevel(), and BdbCondDatabaseBase::subsystemTLA().

Referenced by setAuthLevel().

bool BdbDatabase::verifyIndexMode   [private]
 

Check if we have a proper indexMode which is required for the BdbInterval versioning to work correctly.

Definition at line 4148 of file BdbDatabase.cc.

References BdbDomain::activeInstance(), and BdbDomainOODB::indexMode().

Referenced by createRevision(), deleteRevision(), split(), store(), storeAndTruncate(), storeVector(), and updateRevision().

BdbStatus BdbDatabase::verifyIntervals std::vector< BdbHandle(BdbInterval)> &    theList,
const char *    theContainerName,
d_ULong    theRevisionId
[private]
 

Verify if all the intervals from specified meet the scritearias. This functio is used before to create a new revision from a specified intervals list.

Definition at line 5594 of file BdbDatabase.cc.

References BdbcError, BdbContObj, BdbcSuccess, BdbHandle(), BdbIsNull, BdbStatus, BdbCondDatabaseBase::findIntervalCont(), firstInterval(), getBoundIntervalsInSubTree(), getOID(), getRevisedIntervalsInSubTree(), lastInterval(), and BdbCondDatabaseBase::subsystemTLA().

Referenced by createRevision(), and updateRevision().

BdbStatus BdbDatabase::verifyStoreVector const std::vector< BdbCondStoreTime > &    theVector [private]
 

Definition at line 1331 of file BdbDatabase.cc.

References BdbcError, BdbcSuccess, BdbIsNull, and BdbRef.

Referenced by storeVector().

void BdbDatabase::version const BdbHandle(BdbCondRevision)&    theRevisionH,
const BdbHandle(BdbObject)&    theNewObjectH,
const BdbTime   theBeginTime,
const BdbTime   theEndTime,
d_ULong    theTag = 0,
const BdbTime   theVersionTime = BdbTime::minusInfinity
[private]
 

Definition at line 4431 of file BdbDatabase.cc.

References BdbContObj, BdbcSuccess, BdbHandle(), BdbIsNull, cutLastInterval(), findInterval(), BdbIntervalBase::getBeginTime(), BdbIntervalBase::getEndTime(), BdbCondDatabaseBase::getIntervalContH(), updateLastInterval(), version1(), version2L(), version2R(), and version3M().

void BdbDatabase::version const BdbHandle(BdbCondRevision)&    theRevisionH,
const BdbHandle(BdbObject)&    theNewObjectH,
const BdbTime   theBeginTime,
d_ULong    theTag = 0
[private]
 

Definition at line 4352 of file BdbDatabase.cc.

References BdbContObj, BdbcSuccess, BdbHandle(), BdbIsNull, findInterval(), BdbIntervalBase::getBeginTime(), BdbCondDatabaseBase::getIntervalContH(), updateLastInterval(), version1(), and version2R().

Referenced by cutFirstInterval(), includeIntoRevision(), and store().

void BdbDatabase::version1 const BdbHandle(BdbCondRevision)&    theRevisionH,
const BdbHandle(BdbIntervalR)&    theIntervalH,
const BdbHandle(BdbObject)&    theNewObject,
d_ULong    theTag = 0,
const BdbTime   theVersionTime = BdbTime::minusInfinity
[private]
 

Definition at line 4575 of file BdbDatabase.cc.

References BdbHandle(), BdbIsNull, createRevisedTopVersion(), BdbIntervalR::getTopNext(), BdbIntervalR::getTopPrevious(), BdbTime::minusInfinity, nameVersion(), BdbIntervalR::setTopNext(), and BdbIntervalR::setTopPrevious().

Referenced by appendIntervalR(), cutLastInterval(), and version().

void BdbDatabase::version2L const BdbHandle(BdbCondRevision)&    theRevisionH,
const BdbHandle(BdbIntervalR)&    theIntervalH,
const BdbHandle(BdbObject)&    theNewObjectH,
const BdbTime   theEndTime,
d_ULong    theTag = 0,
const BdbTime   theVersionTime = BdbTime::minusInfinity
[private]
 

Definition at line 4649 of file BdbDatabase.cc.

References BdbHandle(), BdbIsNull, createRevisedTopVersion(), BdbIntervalR::getTopNext(), BdbIntervalR::getTopPrevious(), BdbTime::minusInfinity, nameVersion(), BdbIntervalR::setTopNext(), and BdbIntervalR::setTopPrevious().

Referenced by version().

void BdbDatabase::version2R const BdbHandle(BdbCondRevision)&    theRevisionH,
const BdbHandle(BdbIntervalR)&    theIntervalH,
const BdbHandle(BdbObject)&    theNewObjectH,
const BdbTime   theBeginTime,
d_ULong    theTag = 0,
const BdbTime   theVersionTime = BdbTime::minusInfinity
[private]
 

Definition at line 4738 of file BdbDatabase.cc.

References BdbHandle(), BdbIsNull, createRevisedTopVersion(), BdbIntervalR::getTopNext(), BdbIntervalR::getTopPrevious(), BdbTime::minusInfinity, nameVersion(), BdbIntervalR::setTopNext(), and BdbIntervalR::setTopPrevious().

Referenced by version().

void BdbDatabase::version3M const BdbHandle(BdbCondRevision)&    theRevisionH,
const BdbHandle(BdbIntervalR)&    theIntervalH,
const BdbHandle(BdbObject)&    theNewObjectH,
const BdbTime   theBeginTime,
const BdbTime   theEndTime,
d_ULong    theTag = 0,
const BdbTime   theVersionTime = BdbTime::minusInfinity
[private]
 

Definition at line 4826 of file BdbDatabase.cc.

References BdbHandle(), BdbIsNull, createRevisedTopVersion(), BdbIntervalR::getTopNext(), BdbIntervalR::getTopPrevious(), BdbTime::minusInfinity, nameVersion(), BdbIntervalR::setTopNext(), and BdbIntervalR::setTopPrevious().

Referenced by version().

BdbStatus BdbDatabase::versionVector const BdbHandle(BdbObject)&    theNewObjectH,
const BdbTime   theBeginVectorTime,
const BdbTime   theEndVectorTime,
const BdbTime   theVersionTime,
d_ULong    theTag
[private]
 

Definition at line 4207 of file BdbDatabase.cc.

References addVectorVersion(), BdbcError, BdbContObj, BdbcSuccess, BdbcUpdate, BdbHandle(), BdbIsNull, BdbStatus, buildTopStoreVector(), BdbCondDatabaseBase::containerName(), findInterval(), BdbIntervalBase::getBeginTime(), BdbIntervalBase::getEndTime(), BdbCondDatabaseBase::getIntervalContH(), BdbTime::minusInfinity, and BdbCondDatabaseBase::subsystemTLA().

Referenced by storeAndTruncate().

int BdbDatabase::verticalCompare const BdbHandle(BdbInterval)&    theLeftIntervalH,
const BdbHandle(BdbInterval)&    theRightIntervalH
[private]
 

This helper functions is ment to compare position of two intervals in the version tree.

Definition at line 5538 of file BdbDatabase.cc.

References BdbHandle(), BdbIsNull, and BdbIntervalBase::inInterval().

Referenced by findTopInterval(), and getUnassignedList().


Friends And Related Function Documentation

friend class BdbCondDatabaseMgr [friend]
 

Definition at line 75 of file BdbDatabase.hh.

friend class BdbCondDebug [friend]
 

Definition at line 78 of file BdbDatabase.hh.

friend class BdbCondDirectAccessor [friend]
 

Definition at line 76 of file BdbDatabase.hh.

friend class BdbCondRemoteAccessor [friend]
 

Definition at line 77 of file BdbDatabase.hh.


Member Data Documentation

BdbCondAccessor * BdbDatabase::_accessor = _defaultAccessor [static, private]
 

Definition at line 96 of file BdbDatabase.cc.

Referenced by fetch(), findInterval(), findObject(), firstInterval(), getAccessor(), lastInterval(), and setAccessor().

d_Boolean BdbDatabase::_authLevelIsSet [private]
 

Definition at line 605 of file BdbDatabase.hh.

Referenced by operator=(), and setAuthLevel().

BdbCondAccessor * BdbDatabase::_defaultAccessor = new BdbCondDirectAccessor( ) [static, private]
 

The reference to the accessor object, which allows to implement various access techniques to the real data.

The default accessor is used in two following cases:

  • to set up the initial value for the accessor;
  • to replace the current value of the accessor when the "setDefaultAccessor()" method is called.

Definition at line 93 of file BdbDatabase.cc.

BdbCondClusteringHint* BdbDatabase::_myHint [private]
 

Definition at line 601 of file BdbDatabase.hh.

Referenced by operator=(), updatedHint(), and ~BdbDatabase().

BdbCondPath* BdbDatabase::_revisionPath [private]
 

Definition at line 607 of file BdbDatabase.hh.

Referenced by BdbDatabase(), BdbCondDirectAccessor::findInterval(), and operator=().

bool BdbDatabase::_staticMembersAreInitialized = false [static, private]
 

Definition at line 87 of file BdbDatabase.cc.

Referenced by intializeStaticMembers().

BdbTime BdbDatabase::_truncateOverrideTime = BdbTime::plusInfinity [static, private]
 

Definition at line 90 of file BdbDatabase.cc.

Referenced by getTruncateOverrideTime(), intializeStaticMembers(), setTruncateOverrideTime(), and storeAndTruncate().


The documentation for this class was generated from the following files:

 


BaBar Public Site | SLAC | News | Links | Who's Who | Contact Us

Page Owner: Jacek Becla
Last Update: October 04, 2002