mirror of https://github.com/tongzx/nt5src
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.
222 lines
4.1 KiB
222 lines
4.1 KiB
#pragma once
|
|
|
|
#include "Parameter.h"
|
|
|
|
|
|
//---------------------------------------------------------------------------
|
|
// Migration Class
|
|
//---------------------------------------------------------------------------
|
|
|
|
|
|
class CMigration
|
|
{
|
|
public:
|
|
|
|
CMigration(CParameterMap& mapParams) :
|
|
m_spMigration(__uuidof(Migration))
|
|
{
|
|
Initialize(mapParams);
|
|
}
|
|
|
|
IUserMigrationPtr CreateUserMigration()
|
|
{
|
|
return m_spMigration->CreateUserMigration();
|
|
}
|
|
|
|
IGroupMigrationPtr CreateGroupMigration()
|
|
{
|
|
return m_spMigration->CreateGroupMigration();
|
|
}
|
|
|
|
IComputerMigrationPtr CreateComputerMigration()
|
|
{
|
|
return m_spMigration->CreateComputerMigration();
|
|
}
|
|
|
|
ISecurityTranslationPtr CreateSecurityTranslation()
|
|
{
|
|
return m_spMigration->CreateSecurityTranslation();
|
|
}
|
|
|
|
IServiceAccountEnumerationPtr CreateServiceAccountEnumeration()
|
|
{
|
|
return m_spMigration->CreateServiceAccountEnumeration();
|
|
}
|
|
|
|
IReportGenerationPtr CreateReportGeneration()
|
|
{
|
|
return m_spMigration->CreateReportGeneration();
|
|
}
|
|
|
|
protected:
|
|
|
|
CMigration() {}
|
|
|
|
void Initialize(CParameterMap& mapParams);
|
|
|
|
protected:
|
|
|
|
IMigrationPtr m_spMigration;
|
|
};
|
|
|
|
|
|
//---------------------------------------------------------------------------
|
|
// User Migration Class
|
|
//---------------------------------------------------------------------------
|
|
|
|
|
|
class CUserMigration
|
|
{
|
|
public:
|
|
|
|
CUserMigration(CMigration& rMigration, CParameterMap& mapParams) :
|
|
m_spUser(rMigration.CreateUserMigration())
|
|
{
|
|
Initialize(mapParams);
|
|
}
|
|
|
|
protected:
|
|
|
|
CUserMigration() {}
|
|
|
|
void Initialize(CParameterMap& mapParams);
|
|
|
|
protected:
|
|
|
|
IUserMigrationPtr m_spUser;
|
|
};
|
|
|
|
|
|
//---------------------------------------------------------------------------
|
|
// Group Migration Class
|
|
//---------------------------------------------------------------------------
|
|
|
|
|
|
class CGroupMigration
|
|
{
|
|
public:
|
|
|
|
CGroupMigration(CMigration& rMigration, CParameterMap& mapParams) :
|
|
m_spGroup(rMigration.CreateGroupMigration())
|
|
{
|
|
Initialize(mapParams);
|
|
}
|
|
|
|
protected:
|
|
|
|
CGroupMigration() {}
|
|
|
|
void Initialize(CParameterMap& mapParams);
|
|
|
|
protected:
|
|
|
|
IGroupMigrationPtr m_spGroup;
|
|
};
|
|
|
|
|
|
//---------------------------------------------------------------------------
|
|
// Computer Migration Class
|
|
//---------------------------------------------------------------------------
|
|
|
|
|
|
class CComputerMigration
|
|
{
|
|
public:
|
|
|
|
CComputerMigration(CMigration& rMigration, CParameterMap& mapParams) :
|
|
m_spComputer(rMigration.CreateComputerMigration())
|
|
{
|
|
Initialize(mapParams);
|
|
}
|
|
|
|
protected:
|
|
|
|
CComputerMigration() {}
|
|
|
|
void Initialize(CParameterMap& mapParams);
|
|
|
|
protected:
|
|
|
|
IComputerMigrationPtr m_spComputer;
|
|
};
|
|
|
|
|
|
//---------------------------------------------------------------------------
|
|
// Security Translation Class
|
|
//---------------------------------------------------------------------------
|
|
|
|
|
|
class CSecurityTranslation
|
|
{
|
|
public:
|
|
|
|
CSecurityTranslation(CMigration& rMigration, CParameterMap& mapParams) :
|
|
m_spSecurity(rMigration.CreateSecurityTranslation())
|
|
{
|
|
Initialize(mapParams);
|
|
}
|
|
|
|
protected:
|
|
|
|
CSecurityTranslation() {}
|
|
|
|
void Initialize(CParameterMap& mapParams);
|
|
|
|
protected:
|
|
|
|
ISecurityTranslationPtr m_spSecurity;
|
|
};
|
|
|
|
|
|
//---------------------------------------------------------------------------
|
|
// Service Enumeration Class
|
|
//---------------------------------------------------------------------------
|
|
|
|
|
|
class CServiceEnumeration
|
|
{
|
|
public:
|
|
|
|
CServiceEnumeration(CMigration& rMigration, CParameterMap& mapParams) :
|
|
m_spService(rMigration.CreateServiceAccountEnumeration())
|
|
{
|
|
Initialize(mapParams);
|
|
}
|
|
|
|
protected:
|
|
|
|
CServiceEnumeration() {}
|
|
|
|
void Initialize(CParameterMap& mapParams);
|
|
|
|
protected:
|
|
|
|
IServiceAccountEnumerationPtr m_spService;
|
|
};
|
|
|
|
|
|
//---------------------------------------------------------------------------
|
|
// Report Generation Class
|
|
//---------------------------------------------------------------------------
|
|
|
|
|
|
class CReportGeneration
|
|
{
|
|
public:
|
|
|
|
CReportGeneration(CMigration& rMigration, CParameterMap& mapParams) :
|
|
m_spReport(rMigration.CreateReportGeneration())
|
|
{
|
|
Initialize(mapParams);
|
|
}
|
|
|
|
protected:
|
|
|
|
CReportGeneration() {}
|
|
|
|
void Initialize(CParameterMap& mapParams);
|
|
|
|
protected:
|
|
|
|
IReportGenerationPtr m_spReport;
|
|
};
|