Files
interactive/rcts/rc_cmove/src/RcSyncdRequestData.h
T
2026-08-07 17:38:18 +09:00

94 lines
2.0 KiB
C++

/***************************************************************************
rc_syncd Request Data Header ( RcSyncdRequestData.h )
- used : rc_cmove, rc_syncd(Scheduler)
-----------------------------------------
begin : 2014/09/02
copyright : (C) 2005 Solbox Inc.
author : Storage Dev Team
email : storage.sd@solbox.com
version : 3.4
CopyRight(C) 2005 Solbox Inc. All Rights reserved.
Redistribution and use in source and binary forms, with or with out
modification, are not permitted in outside of Solbox Inc.
***************************************************************************/
#ifndef __RC_SYNCD_REQUEST_DATA_H__
#define __RC_SYNCD_REQUEST_DATA_H__
#include <list>
#include <string>
using namespace std;
namespace SYNC_TYPE
{
enum SYNC_TYPE
{
NORMAL = 0, // 동기화 요청(O), 모든 데이터 (복제, 캐쉬 제외)
NORMA_N_ONLY = 1, // 동기화 요청(O), deleted_yn = N
CHK_ONLY = 3, // 동기화 요청(X), 모든 데이터 (복제, 캐쉬 제외)
CHK_ONLY_N_ONLY = 4 // 동기화 요청(X), deleted_yn = N
};
}
// Requeset Data
/// base Data
class CReqServiceData
{
public:
CReqServiceData(){};
~CReqServiceData(){};
public:
SYNC_TYPE::SYNC_TYPE sync_type;
string start_time;
string end_time;
};
// admin(scheduler) => rc_syncd(Master)
class CReqMasterData : public CReqServiceData
{
public:
CReqMasterData(){};
~CReqMasterData(){};
public:
// one_service 값이 없을 수도 있음
// Scheduler : 해당 정보를 보내지 않음(RCDB 작업 회피를 위함)
// 운영자(rc_cmove) : 특정 고객만 수행 시킬 수 있으므로 해당 값은 유동적임
string one_service;
};
// rc_syncd(Master) => rc_syncd(slave)
class CReqSlaveData : public CReqServiceData
{
public:
CReqSlaveData(){};
~CReqSlaveData(){};
public:
string master;
string slave;
};
// rc_syncd(Master) => rc_syncd(slave)
class CReqSyncData : public CReqServiceData
{
public:
CReqSyncData(){};
~CReqSyncData(){};
public:
string master;
string slave;
};
#endif /* __RC_SYNCD_REQUEST_DATA_H__ */