86 lines
2.2 KiB
C++
86 lines
2.2 KiB
C++
/////////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Copyright(C) 2000 Microsoft Corporation all rights reserved.
|
|
//
|
|
// Module: GlobalTransaction.h
|
|
//
|
|
// Project: Windows 2000 IAS
|
|
//
|
|
// Description: CGlobalTransaction
|
|
//
|
|
// Author: tperraut
|
|
//
|
|
// Revision 02/24/2000 created
|
|
//
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
#ifndef _GLOBALTRANSACTION_H_3F0038C3_D139_4C04_BAF9_86F1E14A256C
|
|
#define _GLOBALTRANSACTION_H_3F0038C3_D139_4C04_BAF9_86F1E14A256C
|
|
|
|
#if _MSC_VER > 1000
|
|
#pragma once
|
|
#endif // _MSC_VER > 1000
|
|
#include "nocopy.h"
|
|
|
|
class CGlobalTransaction : private NonCopyable
|
|
{
|
|
protected:
|
|
CGlobalTransaction()
|
|
:m_StdInitialized(FALSE),
|
|
m_RefInitialized(FALSE),
|
|
m_DnaryInitialized(FALSE),
|
|
m_NT4Initialized(FALSE)
|
|
{
|
|
};
|
|
|
|
~CGlobalTransaction();
|
|
|
|
public:
|
|
static CGlobalTransaction& Instance();
|
|
void OpenStdDataSource(LPCWSTR DataSourceName);
|
|
void OpenRefDataSource(LPCWSTR DataSourceName);
|
|
void OpenDnaryDataSource(LPCWSTR DataSourceName);
|
|
void OpenNT4DataSource(LPCWSTR DataSourceName);
|
|
void Commit();
|
|
void Abort() throw();
|
|
void MyCloseDataSources();
|
|
|
|
CSession& GetStdSession() throw()
|
|
{
|
|
return m_StdSession; // private member returned
|
|
}
|
|
|
|
CSession& GetRefSession() throw()
|
|
{
|
|
return m_RefSession; // private member returned
|
|
}
|
|
|
|
CSession& GetNT4Session() throw()
|
|
{
|
|
return m_NT4Session; // private member returned
|
|
}
|
|
|
|
CSession& GetDnarySession() throw()
|
|
{
|
|
return m_DnarySession; // private member returned
|
|
}
|
|
|
|
private:
|
|
BOOL m_StdInitialized;
|
|
BOOL m_RefInitialized;
|
|
BOOL m_DnaryInitialized;
|
|
BOOL m_NT4Initialized;
|
|
|
|
CSession m_StdSession;
|
|
CSession m_RefSession;
|
|
CSession m_DnarySession;
|
|
CSession m_NT4Session;
|
|
|
|
CDataSource m_StdDataSource;
|
|
CDataSource m_RefDataSource;
|
|
CDataSource m_DnaryDataSource;
|
|
CDataSource m_NT4DataSource;
|
|
|
|
static CGlobalTransaction _instance;
|
|
};
|
|
#endif // _GLOBALTRANSACTION_H_3F0038C3_D139_4C04_BAF9_86F1E14A256C
|