Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

119 lines
3.3 KiB

//////////////////////////////////////////////////////////////////////////////
//
// Copyright (c) 2000 Microsoft Corporation
//
// Module Name:
// CClusDBForm.h
//
// Description:
// Header file for CClusDBForm class.
// The CClusDBForm class is an action that creates the cluster database
// during a cluster formation.
//
// Implementation Files:
// CClusDBForm.cpp
//
// Maintained By:
// Vij Vasu (Vvasu) 03-MAR-2000
//
//////////////////////////////////////////////////////////////////////////////
// Make sure that this file is included only once per compile path.
#pragma once
//////////////////////////////////////////////////////////////////////////
// Include Files
//////////////////////////////////////////////////////////////////////////
// For the CClusDB base class
#include "CClusDB.h"
//////////////////////////////////////////////////////////////////////////
// Forward declaration
//////////////////////////////////////////////////////////////////////////
class CBaseClusterForm;
//////////////////////////////////////////////////////////////////////////////
//++
//
// class CClusDBForm
//
// Description:
// The CClusDBForm class is an action that creates the cluster database
// during a cluster formation.
//
//--
//////////////////////////////////////////////////////////////////////////////
class CClusDBForm : public CClusDB
{
public:
//////////////////////////////////////////////////////////////////////////
// Constructors and destructors
//////////////////////////////////////////////////////////////////////////
// Constructor.
CClusDBForm( CBaseClusterForm * pcfClusterFormIn );
// Default destructor.
~CClusDBForm();
//////////////////////////////////////////////////////////////////////////
// Public methods
//////////////////////////////////////////////////////////////////////////
//
// Create the ClusDB.
//
void Commit();
//
// Rollback this creation.
//
void Rollback();
// Returns the number of progress messages that this action will send.
UINT
UiGetMaxProgressTicks() const throw()
{
//
// The three notifications are:
// 1. Cleaning up any old cluster database files that may exist.
// 2. Creating cluster database.
// 3. Customizing cluster database.
//
return 3;
}
private:
//////////////////////////////////////////////////////////////////////////
// Private types
//////////////////////////////////////////////////////////////////////////
typedef CClusDB BaseClass;
//////////////////////////////////////////////////////////////////////////
// Private methods
//////////////////////////////////////////////////////////////////////////
// Create the cluster database.
void Create();
// Make the entries required by the cluster service in the hive.
void PopulateHive( CBaseClusterForm * pcfClusterFormIn );
// Customize the cluster group and the core resources.
void CustomizeClusterGroup(
CBaseClusterForm * pcfClusterFormIn
, CRegistryKey & rkClusterHiveRootIn
);
}; //*** class CClusDBForm