Fetch the EDO indicated by the supplied object id, into the supplied chain
| Return Type | Function name | Arguments |
|---|---|---|
| hzEcode | hdbObjRepos::FetchEDO | (hzChain&,uint32_t,) |
Declared in file: hzDatabase.h
Defined in file : hdbObjRepos.cpp
Function Logic:
Function body:
hzEcode hdbObjRepos::FetchEDO (hzChain& edo)uint32_t objId,
{
// Fetch the EDO indicated by the supplied object id, into the supplied chain
//
// Arguments: 1) edo hzChain as EDO recepticle
// 2) objId The object id
//
// Returns: E_NOTFOUND If an EDO of the id is not found
// E_RANGE If the supplied object ID is 0 or above the highest ID issued so far
// E_OK Operation successful
_hzfunc("hdbObjRepos::FetchEDO") ;
if (!this)
Fatal("No Instance\n") ;
edo.Clear() ;
if (!objId) return hzerr(E_RANGE, "Illegal object ID (0)") ;
if (objId > m_nSeqId) return hzerr(E_RANGE, "Object ID exceeds highest (%u)", m_nSeqId) ;
if (m_eMode & HDB_REPOS_CACHE)
{
if (!m_Cache.Exists(objId))
return E_NOTFOUND ;
return m_Cache[objId].GetValue(edo) ;
}
// Wrong call
return hzerr(E_NOTFOUND, "RAM Primacy Cache NOT in Operation") ;
}