TDbiResultSet Class Reference

Concept Abstract base class representing the Result of a single database query. If query suceeded the Result will hold (own) a vector of table row objects that correspond to result of the query. It will also own a TDbiValidityRec that gives the range over which the result is valid. More...

#include <TDbiResultSet.hxx>

Inheritance diagram for TDbiResultSet:
Inheritance graph
[legend]
Collaboration diagram for TDbiResultSet:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 TDbiResultSet (TDbiInRowStream *resultSet=0, const TDbiValidityRec *vrec=0, const string &sqlQualifiers="")
virtual ~TDbiResultSet ()
virtual Bool_t CanReuse () const
virtual Bool_t CanSave () const
virtual void Connect () const
virtual TDbiResultKeyCreateKey () const =0
virtual void Disconnect () const
const TDbiExceptionLogGetExceptionLog () const
Int_t GetID () const
virtual const TDbiResultKeyGetKey () const
virtual UInt_t GetNumAggregates () const =0
virtual UInt_t GetNumClients () const
virtual UInt_t GetNumRows () const =0
const string & GetSqlQualifiers () const
virtual const TDbiTableRowGetTableRow (UInt_t rowNum) const =0
virtual const TDbiTableRowGetTableRowByIndex (UInt_t index) const
virtual const TDbiValidityRecGetValidityRec (const TDbiTableRow *=0) const
virtual const TDbiValidityRecGetValidityRecGlobal () const
Bool_t IsExtendedContext () const
virtual Bool_t Owns (const TDbiTableRow *) const
Bool_t ResultsFromDb () const
virtual const string & TableName () const
void CaptureExceptionLog (UInt_t startFrom)
virtual Bool_t CanDelete (const TDbiResultSet *res=0)
 Return true if no clients and unlikely to be reused.
virtual Bool_t Satisfies (const TVldContext &vc, const TDbi::Task &task)
virtual Bool_t Satisfies (const string &)
virtual Bool_t Satisfies (const TDbiValidityRec &, const string &="")
virtual void GenerateKey ()
 Key handling.
virtual void Streamer (TDbiBinaryFile &file)
virtual void SetCanReuse (Bool_t reuse)

Protected Member Functions

void SetResultsFromDb ()
void BuildLookUpTable () const
Bool_t LookUpBuilt () const
virtual void SetTableName (const string &tableName)
virtual void SetValidityRec (const TDbiValidityRec &vRec)

Private Attributes

Int_t fID
 Unique ID within the current job.
Bool_t fCanReuse
TDbiValidityRec fEffVRec
IndexToRow_t fIndexKeys
const TDbiResultKeyfKey
Bool_t fResultsFromDb
 True is at least part didn't come from cache.
Int_t fNumClients
string fTableName
string fSqlQualifiers
TDbiExceptionLog fExceptionLog
 Exception log produced when query was executed.

Static Private Attributes

static Int_t fgLastID
 Used to allocate unique ID within the current job.

Detailed Description

Concept Abstract base class representing the Result of a single database query. If query suceeded the Result will hold (own) a vector of table row objects that correspond to result of the query. It will also own a TDbiValidityRec that gives the range over which the result is valid.

Purpose To provide suitable objects to cache. TDbiResultSets can be checked to see if they satisfy new queries. Contact: A.Finch@lancaster.ac.uk

Definition at line 49 of file TDbiResultSet.hxx.


Constructor & Destructor Documentation

TDbiResultSet::TDbiResultSet ( TDbiInRowStream resultSet = 0,
const TDbiValidityRec vrec = 0,
const string &  sqlQualifiers = "" 
)

Definition at line 50 of file TDbiResultSet.cxx.

References fEffVRec, fTableName, SK_DBI_Trace, and TDbiRowStream::TableNameTc().

00052                                                   :
00053 fID(++fgLastID),
00054 fCanReuse(kTRUE),
00055 fEffVRec(0),
00056 fKey(0),
00057 fResultsFromDb(kFALSE),
00058 fNumClients(0),
00059 fTableName("Unknown"),
00060 fSqlQualifiers(sqlQualifiers)
00061 {
00062 //
00063 //
00064 //  Purpose:  Default constructor
00065 //
00066 //  Arguments:
00067 //      resultSet     in   Pointer TDbiInRowStream from query. May be null.
00068 //      vrec          in   Pointer to validity record from query.
00069 //                         May be null
00070 //      sqlQualifier  in   Extended Context sql qualifiers
00071 //
00072 //  Return:    n/a
00073 //
00074 //  Contact:   N. West
00075 //
00076 //  Specification:-
00077 //  =============
00078 //
00079 //  o Create Result from TDbiInRowStream generated by query.
00080 
00081 
00082 //  Program Notes:-
00083 //  =============
00084 
00085 // None.
00086 
00087 
00088   SK_DBI_Trace( "Creating TDbiResultSet" << "  ");
00089 
00090   if ( vrec ) fEffVRec = *vrec;
00091   if ( resultSet ) fTableName = resultSet->TableNameTc();
00092 
00093 }

Here is the call graph for this function:

TDbiResultSet::~TDbiResultSet (  )  [virtual]

Definition at line 97 of file TDbiResultSet.cxx.

References fIndexKeys, fKey, fNumClients, SK_DBI_Trace, and SK_DBI_Warn.

00097                               {
00098 //
00099 //
00100 //  Purpose: Destructor
00101 //
00102 //  Arguments:
00103 //    None.
00104 //
00105 //  Return:    n/a
00106 //
00107 //  Contact:   N. West
00108 //
00109 //  Specification:-
00110 //  =============
00111 //
00112 //  o  Destroy Result.
00113 
00114 
00115 //  Program Notes:-
00116 //  =============
00117 
00118 //  None.
00119 
00120 
00121   SK_DBI_Trace( "Destroying TDbiResultSet." << "  ");
00122 
00123   if ( fNumClients ) SK_DBI_Warn(  "Warning: Destroying TDbiResultSet with " << fNumClients
00124     << " clients " << "  ");
00125 
00126   delete fKey;
00127   fKey = 0;
00128   fIndexKeys.clear();
00129 
00130 }


Member Function Documentation

void TDbiResultSet::BuildLookUpTable (  )  const [protected]

Definition at line 133 of file TDbiResultSet.cxx.

References fIndexKeys, TDbiTableRow::GetAggregateNo(), TDbiTableRow::GetIndex(), GetNumRows(), TDbiTableRow::GetOwner(), TDbiValidityRec::GetSeqNo(), GetTableRow(), GetTableRowByIndex(), GetValidityRec(), IsExtendedContext(), SK_DBI_Severe, SK_DBI_Verbose, and TableName().

Referenced by TDbiResultSetNonAgg::GetTableRowByIndex(), and TDbiResultSetNonAgg::Streamer().

00133                                            {
00134 //
00135 //
00136 //  Purpose:  Build look-up Natural Index -> TableRow.
00137 //
00138 //  Contact:   N. West
00139 //
00140 //  Program Notes:-
00141 //  =============
00142 //
00143 //  This member function assumes that the sub-class can support
00144 //  the GetTableRow(...) and GetNumRows methods so take care if
00145 //  called in the sub-class ctor.
00146 
00147 //  Extended Context serach can produce duplicates.
00148   Bool_t duplicatesOK = this->IsExtendedContext();
00149 
00150   SK_DBI_Verbose( "Building look-uptable. Allow duplicates: "
00151                             << duplicatesOK << "  ");
00152 
00153   for ( Int_t rowNo = this->GetNumRows()-1;
00154         rowNo >= 0;
00155         --rowNo ) {
00156     const TDbiTableRow* row  = this->GetTableRow(rowNo);
00157     UInt_t index            = row->GetIndex(rowNo);
00158 //  Ensure we use this class's GetTableRowByIndex, the method is
00159 //  virtual but if the subclass has called this method then it must
00160 //  be the right one to use. [Actually TDbiResultSetAgg overrides
00161 //  GetTableRowByIndex, but only to make building lazy].
00162     const TDbiTableRow* row2 = this->TDbiResultSet::GetTableRowByIndex(index);
00163 
00164     SK_DBI_Verbose(  "Look-up. Row no " << rowNo
00165           << " index " << index
00166           << " row,row2 " << (void*) row << "," << (void*) row2 << "  ");
00167 
00168     if ( row2 != 0 && row2 != row && ! duplicatesOK ) {
00169       std::ostringstream msg;
00170       msg << "Duplicated row natural index: " << index
00171           << " Found at row " <<  rowNo
00172           << " of table " <<  this->TableName()
00173           << ":-\n     index of agg " <<  row->GetAggregateNo();
00174       if ( row->GetOwner() ) msg << "(SEQNO " << row->GetOwner()->GetValidityRec(row).GetSeqNo() << ")";
00175       msg << " matches agg " <<  row2->GetAggregateNo();
00176       if ( row2->GetOwner() ) msg << "(SEQNO " << row2->GetOwner()->GetValidityRec(row2).GetSeqNo() << ")";
00177          SK_DBI_Severe( msg.str() << "  ");
00178    }
00179 
00180     else  fIndexKeys[index] = row;
00181   }
00182 
00183 }

Here is the call graph for this function:

Here is the caller graph for this function:

Bool_t TDbiResultSet::CanDelete ( const TDbiResultSet res = 0  )  [virtual]

Return true if no clients and unlikely to be reused.

Definition at line 187 of file TDbiResultSet.cxx.

References CanReuse(), GetNumClients(), GetValidityRec(), and SetCanReuse().

Referenced by TDbiCache::Purge().

00187                                                         {
00188 //
00189 //
00190 //  Purpose:  See if suitable for deleting.
00191 //
00192 //  Arguments:
00193 //    res          in    A TDbiResultSet that is currently used.
00194 //                       Optional: default = 0.
00195 
00196 //  If the query would be satisfied apart from the date, then
00197 //  assume we have moved out of the validity window, never
00198 //  to return!
00199 
00200   if (     res
00201         && this->CanReuse()
00202         && this->GetValidityRec().HasExpired(res->GetValidityRec())
00203      )  this->SetCanReuse(kFALSE);
00204 
00205   return ! this->GetNumClients() && ! this->CanReuse();
00206 }

Here is the call graph for this function:

Here is the caller graph for this function:

virtual Bool_t TDbiResultSet::CanReuse (  )  const [inline, virtual]

Definition at line 62 of file TDbiResultSet.hxx.

References fCanReuse.

Referenced by CanDelete(), TDbiResultSetNonAgg::Satisfies(), TDbiResultSetAgg::Satisfies(), and Satisfies().

00062 { return fCanReuse; }

Here is the caller graph for this function:

virtual Bool_t TDbiResultSet::CanSave (  )  const [inline, virtual]

Definition at line 63 of file TDbiResultSet.hxx.

Referenced by TDbiTableProxy::SaveToL2Cache().

00063 { return kTRUE; }

Here is the caller graph for this function:

void TDbiResultSet::CaptureExceptionLog ( UInt_t  startFrom  ) 

Definition at line 210 of file TDbiResultSet.cxx.

References TDbiExceptionLog::Clear(), TDbiExceptionLog::Copy(), fExceptionLog, and TDbiExceptionLog::GetGELog().

Referenced by TDbiTableProxy::Query().

00210                                                         {
00211 //
00212 //
00213 //  Purpose: Capture Exception Log from latest entries in Global Exception Log.
00214 
00215   fExceptionLog.Clear();
00216   TDbiExceptionLog::GetGELog().Copy(fExceptionLog,startFrom);
00217 
00218 }

Here is the call graph for this function:

Here is the caller graph for this function:

virtual void TDbiResultSet::Connect (  )  const [inline, virtual]

Definition at line 64 of file TDbiResultSet.hxx.

References fNumClients.

00064 { ++fNumClients; }

virtual TDbiResultKey* TDbiResultSet::CreateKey (  )  const [pure virtual]

Implemented in TDbiResultSetAgg, and TDbiResultSetNonAgg.

Referenced by TDbiResultSetAgg::CreateKey(), and GenerateKey().

Here is the caller graph for this function:

virtual void TDbiResultSet::Disconnect (  )  const [inline, virtual]

Definition at line 66 of file TDbiResultSet.hxx.

References fNumClients.

00066 { --fNumClients; }

void TDbiResultSet::GenerateKey (  )  [virtual]

Key handling.

Definition at line 222 of file TDbiResultSet.cxx.

References CreateKey(), fKey, and GetNumRows().

Referenced by TDbiCache::Adopt().

00222                                 {
00223 //
00224 //
00225 //  Purpose: Create key if set not empty and not already done.
00226 
00227   if ( fKey || this->GetNumRows() == 0) return;
00228   fKey = this->CreateKey();
00229 
00230 }

Here is the call graph for this function:

Here is the caller graph for this function:

const TDbiExceptionLog& TDbiResultSet::GetExceptionLog (  )  const [inline]

Definition at line 67 of file TDbiResultSet.hxx.

References fExceptionLog.

00067 { return fExceptionLog; }

Int_t TDbiResultSet::GetID (  )  const [inline]

Definition at line 68 of file TDbiResultSet.hxx.

References fID.

00068 { return fID; }

const TDbiResultKey * TDbiResultSet::GetKey (  )  const [virtual]

Definition at line 234 of file TDbiResultSet.cxx.

References fKey, and TDbiResultKey::GetEmptyKey().

Referenced by TDbiCache::Adopt().

00234                                                  {
00235 
00236 //  Purpose:  Get the associated TDbiResultKey, or an empty one if none exists.
00237 
00238   return fKey ? fKey : TDbiResultKey::GetEmptyKey();
00239 
00240 }

Here is the call graph for this function:

Here is the caller graph for this function:

virtual UInt_t TDbiResultSet::GetNumAggregates (  )  const [pure virtual]

Implemented in TDbiResultSetAgg, and TDbiResultSetNonAgg.

Referenced by TDbiCache::Search().

Here is the caller graph for this function:

virtual UInt_t TDbiResultSet::GetNumClients (  )  const [inline, virtual]

Definition at line 71 of file TDbiResultSet.hxx.

References fNumClients.

Referenced by CanDelete(), TDbiCache::Purge(), and Satisfies().

00071                                                      {
00072                                                    return fNumClients; }

Here is the caller graph for this function:

virtual UInt_t TDbiResultSet::GetNumRows (  )  const [pure virtual]

Implemented in TDbiResultSetAgg, and TDbiResultSetNonAgg.

Referenced by BuildLookUpTable(), GenerateKey(), TDbiValRecSet::GetNumRows(), TDbiTableProxy::SaveToL2Cache(), and TDbiCache::Search().

Here is the caller graph for this function:

const string& TDbiResultSet::GetSqlQualifiers (  )  const [inline]

Definition at line 74 of file TDbiResultSet.hxx.

References fSqlQualifiers.

Referenced by IsExtendedContext(), TDbiResultSetNonAgg::Satisfies(), and TDbiResultSetAgg::Satisfies().

00074 { return fSqlQualifiers; }

Here is the caller graph for this function:

virtual const TDbiTableRow* TDbiResultSet::GetTableRow ( UInt_t  rowNum  )  const [pure virtual]

Implemented in TDbiResultSetAgg, and TDbiResultSetNonAgg.

Referenced by BuildLookUpTable(), and TDbiValRecSet::GetTableRow().

Here is the caller graph for this function:

const TDbiTableRow * TDbiResultSet::GetTableRowByIndex ( UInt_t  index  )  const [virtual]

Reimplemented in TDbiResultSetNonAgg.

Definition at line 244 of file TDbiResultSet.cxx.

References fIndexKeys.

Referenced by BuildLookUpTable().

00244                                                                         {
00245 //
00246 //
00247 //  Purpose:  Return row corresponding to Natural Index (or 0 if none)
00248 //
00249 //  Contact:   N. West
00250 //
00251 
00252 // Use Find rather than operator[] to avoid creating entry
00253 // if index missing
00254   IndexToRow_t::const_iterator idx = fIndexKeys.find(index);
00255   return ( idx == fIndexKeys.end() ) ? 0 : (*idx).second;
00256 
00257 }

Here is the caller graph for this function:

virtual const TDbiValidityRec& TDbiResultSet::GetValidityRec ( const TDbiTableRow = 0  )  const [inline, virtual]

Reimplemented in TDbiResultSetAgg.

Definition at line 77 of file TDbiResultSet.hxx.

References GetValidityRecGlobal().

Referenced by TDbiCache::Adopt(), BuildLookUpTable(), CanDelete(), TDbiResultSetNonAgg::CreateKey(), TDbiResultSetAgg::CreateKey(), TDbiCache::Purge(), TDbiTableProxy::RestoreFromL2Cache(), TDbiResultSetNonAgg::Satisfies(), and Satisfies().

00078                                                                            {
00079                                         return GetValidityRecGlobal(); }

Here is the call graph for this function:

Here is the caller graph for this function:

virtual const TDbiValidityRec& TDbiResultSet::GetValidityRecGlobal (  )  const [inline, virtual]

Definition at line 80 of file TDbiResultSet.hxx.

References fEffVRec.

Referenced by TDbiCache::Adopt(), TDbiResultSetAgg::GetValidityRec(), GetValidityRec(), and TDbiResultSetAgg::Streamer().

00080                                                              {
00081                                                       return fEffVRec; }

Here is the caller graph for this function:

Bool_t TDbiResultSet::IsExtendedContext (  )  const [inline]

Definition at line 82 of file TDbiResultSet.hxx.

References GetSqlQualifiers().

Referenced by BuildLookUpTable(), and Satisfies().

00082                                                          {
00083                                        return this->GetSqlQualifiers() != ""; }

Here is the call graph for this function:

Here is the caller graph for this function:

Bool_t TDbiResultSet::LookUpBuilt (  )  const [inline, protected]

Definition at line 116 of file TDbiResultSet.hxx.

References fIndexKeys.

Referenced by TDbiResultSetNonAgg::GetTableRowByIndex().

00116 { return fIndexKeys.size() > 0; }

Here is the caller graph for this function:

virtual Bool_t TDbiResultSet::Owns ( const TDbiTableRow  )  const [inline, virtual]

Reimplemented in TDbiResultSetNonAgg.

Definition at line 84 of file TDbiResultSet.hxx.

00084 { return kFALSE; }

Bool_t TDbiResultSet::ResultsFromDb (  )  const [inline]

Definition at line 85 of file TDbiResultSet.hxx.

References fResultsFromDb.

Referenced by TDbiTableProxy::SaveToL2Cache().

00085 { return fResultsFromDb; }

Here is the caller graph for this function:

virtual Bool_t TDbiResultSet::Satisfies ( const TDbiValidityRec ,
const string &  = "" 
) [inline, virtual]

Reimplemented in TDbiResultSetNonAgg.

Definition at line 101 of file TDbiResultSet.hxx.

00102                                                  {return kFALSE;}

virtual Bool_t TDbiResultSet::Satisfies ( const string &   )  [inline, virtual]

Not all TDbiResultSet classes can satisfy these types of query so those that do must override.

Reimplemented in TDbiResultSetAgg.

Definition at line 100 of file TDbiResultSet.hxx.

00100 {return kFALSE;}

Bool_t TDbiResultSet::Satisfies ( const TVldContext vc,
const TDbi::Task task 
) [virtual]

All TDbiResultSet classes can satisfy this type of primary query so impliment here.

Definition at line 261 of file TDbiResultSet.cxx.

References CanReuse(), GetNumClients(), GetValidityRec(), TDbiValidityRec::HasExpired(), TDbiValidityRec::IsCompatible(), IsExtendedContext(), SetCanReuse(), and SK_DBI_Debug.

Referenced by TDbiCache::Search().

00262                                                   {
00263 //
00264 //
00265 //  Purpose:  Check to see if this Result satisfies specific context query.
00266 //
00267 //  Arguments:
00268 //    vc           in    Context of query
00269 //    task         in    Task of query
00270 //
00271 //  Return:    kTRUE if can satisfy query.
00272 //
00273 //  Contact:   N. West
00274 //
00275 //  Program Notes:-
00276 //  =============
00277 
00278 //  If it cannot satisfy the query in a way that suggests
00279 //  that its unlikely that it will satisfy future queries
00280 //  then mark as cannot reuse so that it becomes eligible
00281 //  for purging.
00282 
00283 // Extended Context queries cannot satisfy specific context queries.
00284 
00285   Bool_t isExtendedContext = this->IsExtendedContext();
00286   Bool_t canReuse          = this->CanReuse();
00287   Bool_t isCompatible      = this->GetValidityRec().IsCompatible(vc,task);
00288   Bool_t hasExpired        = this->GetValidityRec().HasExpired(vc,task);
00289   UInt_t numClients        = this->GetNumClients();
00290   SK_DBI_Debug(  "    Checking result with TDbiValidityRec:- \n      " << this->GetValidityRec()
00291     << "  With extended context: " << isExtendedContext
00292     << " CanReuse: " << canReuse
00293     << " Is Compatible: " << isCompatible
00294     << " HasExpired: " <<  hasExpired
00295     << " number of clients: " << numClients
00296     << "  ");
00297 
00298   if ( isExtendedContext ) return kFALSE;
00299 
00300   if ( canReuse && isCompatible )  return kTRUE;
00301 
00302 //  If the query would be satisfied apart from the date, then
00303 //  assume we have moved out of the validity window, never
00304 //  to return!
00305 
00306   if ( canReuse && hasExpired && numClients == 0 )  {
00307     SK_DBI_Debug( "    Marking result as not reusable" << "  ");
00308    this-> SetCanReuse(kFALSE);
00309   }
00310 
00311   return kFALSE;
00312 
00313 }

Here is the call graph for this function:

Here is the caller graph for this function:

virtual void TDbiResultSet::SetCanReuse ( Bool_t  reuse  )  [inline, virtual]

Definition at line 108 of file TDbiResultSet.hxx.

References fCanReuse.

Referenced by CanDelete(), TDbiTableProxy::Query(), and Satisfies().

00108 { fCanReuse = reuse ; }

Here is the caller graph for this function:

void TDbiResultSet::SetResultsFromDb (  )  [inline, protected]

Definition at line 111 of file TDbiResultSet.hxx.

References fResultsFromDb.

00111 { fResultsFromDb = kTRUE; }

virtual void TDbiResultSet::SetTableName ( const string &  tableName  )  [inline, protected, virtual]

Definition at line 120 of file TDbiResultSet.hxx.

References fTableName.

00120                                                      {
00121                                                fTableName = tableName; }

virtual void TDbiResultSet::SetValidityRec ( const TDbiValidityRec vRec  )  [inline, protected, virtual]

Definition at line 122 of file TDbiResultSet.hxx.

References fEffVRec.

00122                                                            {
00123                                                       fEffVRec = vRec; }

void TDbiResultSet::Streamer ( TDbiBinaryFile file  )  [virtual]

Reimplemented in TDbiResultSetAgg, and TDbiResultSetNonAgg.

Definition at line 316 of file TDbiResultSet.cxx.

References fCanReuse, fEffVRec, fNumClients, fResultsFromDb, fTableName, TDbiBinaryFile::IsReading(), TDbiBinaryFile::IsWriting(), SK_DBI_Debug, SK_DBI_Verbose, and TDbiValidityRec::Streamer().

Referenced by operator<<(), and operator>>().

00316                                                  {
00317 //
00318 //
00319 //  Purpose:  I/O to binary file
00320 //
00321 //  Program Notes:-
00322 //  =============
00323 
00324 //  Don't store fIndexKeys; it will be rebuilt on input by the subclass.
00325 
00326   if ( file.IsReading() ) {
00327     SK_DBI_Debug( "    Restoring TDbiResultSet ..." << "  ");
00328     file >> fCanReuse;
00329     fEffVRec.Streamer(file);
00330     SK_DBI_Verbose( "    Restored " << fEffVRec << "  ");
00331     fResultsFromDb = kFALSE;
00332     fNumClients    = 0;
00333     file >> fTableName;
00334     SK_DBI_Verbose( "    Restored string " << fTableName << "  ");
00335   }
00336   else if ( file.IsWriting() ) {
00337     SK_DBI_Debug( "    Saving TDbiResultSet ..." << "  ");
00338     file << fCanReuse;
00339     SK_DBI_Verbose( "    Saving " << fEffVRec << "  ");
00340     fEffVRec.Streamer(file);
00341     SK_DBI_Verbose( "    Saving string " << fTableName << "  ");
00342     file << fTableName;
00343   }
00344 }

Here is the call graph for this function:

Here is the caller graph for this function:

virtual const string& TDbiResultSet::TableName (  )  const [inline, virtual]

Definition at line 86 of file TDbiResultSet.hxx.

References fTableName.

Referenced by TDbiCache::Adopt(), BuildLookUpTable(), TDbiResultSetNonAgg::CreateKey(), TDbiValRecSet::GetTableName(), and TDbiCache::Purge().

00086 { return fTableName; }

Here is the caller graph for this function:


Member Data Documentation

Bool_t TDbiResultSet::fCanReuse [private]

Definition at line 134 of file TDbiResultSet.hxx.

Referenced by CanReuse(), SetCanReuse(), and Streamer().

Definition at line 137 of file TDbiResultSet.hxx.

Referenced by GetValidityRecGlobal(), SetValidityRec(), Streamer(), and TDbiResultSet().

Exception log produced when query was executed.

Definition at line 158 of file TDbiResultSet.hxx.

Referenced by CaptureExceptionLog(), and GetExceptionLog().

Int_t TDbiResultSet::fgLastID [static, private]

Used to allocate unique ID within the current job.

Definition at line 162 of file TDbiResultSet.hxx.

Int_t TDbiResultSet::fID [private]

Unique ID within the current job.

Definition at line 131 of file TDbiResultSet.hxx.

Referenced by GetID().

Definition at line 143 of file TDbiResultSet.hxx.

Referenced by GenerateKey(), GetKey(), and ~TDbiResultSet().

Int_t TDbiResultSet::fNumClients [mutable, private]

Definition at line 148 of file TDbiResultSet.hxx.

Referenced by Connect(), Disconnect(), GetNumClients(), Streamer(), and ~TDbiResultSet().

True is at least part didn't come from cache.

Definition at line 146 of file TDbiResultSet.hxx.

Referenced by ResultsFromDb(), SetResultsFromDb(), and Streamer().

Null unless Extended Context query in which case it contains:- context-sql;data-sql;fill-options

Definition at line 155 of file TDbiResultSet.hxx.

Referenced by GetSqlQualifiers().

string TDbiResultSet::fTableName [private]

Definition at line 151 of file TDbiResultSet.hxx.

Referenced by SetTableName(), Streamer(), TableName(), and TDbiResultSet().


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

Generated on 11 Aug 2013 for SKDatabase by  doxygen 1.6.1