Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
Gray::cStreamTransaction Class Reference

#include <cStream.h>

Public Member Functions

 cStreamTransaction (cStreamInput *pInp)
 
 ~cStreamTransaction ()
 
bool isTransactionActive () const
 
void SetTransactionComplete ()
 
void SetTransactionCompleteN (size_t nSize)
 
void SetTransactionFailed ()
 
void SetTransactionRollback ()
 

Public Attributes

cStreamInputm_pInp
 Pull transaction data from this stream. More...
 
STREAM_SEEKRET_t m_lPosStart
 
size_t m_nSeekSizeMinPrev
 Previous value. Maybe nested transactions ! More...
 

Protected Member Functions

HRESULT TransactionRollback ()
 

Detailed Description

we are reading a single message / Transaction from the stream. We need to read all of it or roll back.

Constructor & Destructor Documentation

◆ cStreamTransaction()

Gray::cStreamTransaction::cStreamTransaction ( cStreamInput pInp)
inline

◆ ~cStreamTransaction()

Gray::cStreamTransaction::~cStreamTransaction ( )
inline

if we didn't say it was a success, do a rollback on destruct.

Member Function Documentation

◆ isTransactionActive()

bool Gray::cStreamTransaction::isTransactionActive ( ) const
inline

Was SetTransactionComplete called ?

◆ SetTransactionComplete()

void Gray::cStreamTransaction::SetTransactionComplete ( )
inline

Success. we got what we wanted. no rollback.

◆ SetTransactionCompleteN()

void Gray::cStreamTransaction::SetTransactionCompleteN ( size_t  nSize)
inline

◆ SetTransactionFailed()

void Gray::cStreamTransaction::SetTransactionFailed ( )
inline

The stream broke in some way. e.g. socket close. assume connection is broken. no rollback.

◆ SetTransactionRollback()

void Gray::cStreamTransaction::SetTransactionRollback ( )
inline

default behavior if closed without calling SetTransactionComplete() or SetTransactionFailed(). if we didn't say it was a success, do a rollback on destruct.

◆ TransactionRollback()

HRESULT Gray::cStreamTransaction::TransactionRollback ( )
inlineprotected

Member Data Documentation

◆ m_lPosStart

STREAM_SEEKRET_t Gray::cStreamTransaction::m_lPosStart

◆ m_nSeekSizeMinPrev

size_t Gray::cStreamTransaction::m_nSeekSizeMinPrev

Previous value. Maybe nested transactions !

◆ m_pInp

cStreamInput* Gray::cStreamTransaction::m_pInp

Pull transaction data from this stream.


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