Proud::IDbCacheClientDelegate2 클래스 참조abstract

클래스

class  CCallbackArgs
 

Public 멤버 함수

virtual void OnJoinDbCacheServerComplete (ErrorInfo *info)=0
 
virtual void OnLeaveDbCacheServer (ErrorType reason)=0
 
virtual void OnDbmsWriteDone (DbmsWritePropNodePendType type, Guid loadedDataGuid)=0
 
virtual void OnExclusiveLoadDataComplete (CCallbackArgs &args)=0
 
virtual void OnDataUnloadRequested (CCallbackArgs &args)=0
 
virtual void OnDataForceUnloaded (CCallbackArgs &args)=0
 
virtual void OnIsolateDataSuccess (CCallbackArgs &args)=0
 
virtual void OnIsolateDataFailed (CCallbackArgs &args)=0
 
virtual void OnDeisolateDataSuccess (CCallbackArgs &args)=0
 
virtual void OnDeisolateDataFailed (CCallbackArgs &args)=0
 
virtual void OnAddDataFailed (CCallbackArgs &args)=0
 
virtual void OnAddDataSuccess (CCallbackArgs &args)=0
 
virtual void OnUpdateDataFailed (CCallbackArgs &args)=0
 
virtual void OnUpdateDataSuccess (CCallbackArgs &args)=0
 
virtual void OnRemoveDataFailed (CCallbackArgs &args)=0
 
virtual void OnRemoveDataSuccess (CCallbackArgs &args)=0
 
virtual void OnNonExclusiveSnapshotDataComplete (CCallbackArgs &args)
 
virtual void OnNonExclusiveAddDataAck (CCallbackArgs &args)
 
virtual void OnNonExclusiveRemoveDataAck (CCallbackArgs &args)
 
virtual void OnNonExclusiveModifyValueSuccess (CCallbackArgs &args)
 
virtual void OnNonExclusiveModifyValueFailed (CCallbackArgs &args)
 
virtual void OnNonExclusiveSetValueIfSuccess (CCallbackArgs &args)
 
virtual void OnNonExclusiveSetValueIfFailed (CCallbackArgs &args)
 
virtual void OnSomeoneAddData (CCallbackArgs &args)
 
virtual void OnSomeoneRemoveData (CCallbackArgs &args)
 
virtual void OnSomeoneModifyValue (CCallbackArgs &args)
 
virtual void OnSomeoneSetValue (CCallbackArgs &args)
 
virtual void OnAccessError (CCallbackArgs &args)=0
 
virtual void OnError (ErrorInfo *errorInfo)=0
 
virtual void OnWarning (ErrorInfo *errorInfo)=0
 
virtual void OnException (Exception &e)=0
 

상세한 설명

DB cache client2로부터의 이벤트 콜백을 받기 위한 delegate 객체

멤버 함수 문서화

virtual void Proud::IDbCacheClientDelegate2::OnAccessError ( CCallbackArgs args)
pure virtual

Data Access 에러

  • 콜백되는 예 : 요청형 메서드가 실행되는 사이에 일방적 메서드가 호출된경우 업데이트시에 업데이트할 데이터를 못찾는 경우, 혹은 지워야할 데이터를 못찾는 경우 등등에 이 이벤트가 호출됩니다.
    매개변수
    argsIDbCacheClientDelegate2의 이벤트 argument 구조체입니다. 참고 CCallbackArgs
virtual void Proud::IDbCacheClientDelegate2::OnAddDataFailed ( CCallbackArgs args)
pure virtual

CDbCacheClient2.RequestAddData, CDbCacheClient2.BlockedAddData 에서 실패했을때 도착하는 이벤트입니다.

  • args.m_loadResults[index].m_reason,args.m_loadResults[index].m_comment에 값이 채워집니다.
    매개변수
    argsIDbCacheClientDelegate2의 이벤트 argument 구조체입니다. 참고 CCallbackArgs
virtual void Proud::IDbCacheClientDelegate2::OnAddDataSuccess ( CCallbackArgs args)
pure virtual

CDbCacheClient2.RequestAddData, CDbCacheClient2.BlockedAddData 에서 성공했을때 도착하는 이벤트입니다.

  • args.m_loadResults[index].m_loadedData,args.m_loadResults[index].m_data에 값이 채워집니다.
    매개변수
    argsIDbCacheClientDelegate2의 이벤트 argument 구조체입니다. 참고 CCallbackArgs
virtual void Proud::IDbCacheClientDelegate2::OnDataForceUnloaded ( CCallbackArgs args)
pure virtual

특정 데이터가 서버로부터 강제로 Unload 되었을 때 발생하는 이벤트입니다. 현재 독점로드 중인 데이터에 또다른 독점요청이 들어오는 경우 OnDataUnloadRequested()가 콜백되지만, DB cache가 다루는 데이터를 DB가 직접 억세스하기 를 하려고 하는 경우에는 불가피하게 이 함수가 콜백됩니다.

virtual void Proud::IDbCacheClientDelegate2::OnDataUnloadRequested ( CCallbackArgs args)
pure virtual

다른 DB cache client2가 독점적 불러오기 을 시도하는 바람에 이미 로딩했던 데이터의 독점 접근 권한을 소실할 것인지 결정할수 있는 이벤트 입니다.

  • args.m_loadResults[index].m_loadedData 에 값이 채워집니다.
  • DbCacheClient 의 DenyUnloadData 를 콜 하거나, UnloadDataBySessionGuid 를 콜하여 독점권을 넘겨 줄것인지 결정할수 있습니다.
    매개변수
    argsIDbCacheClientDelegate2의 이벤트 argument 구조체입니다. 참고 CCallbackArgs
virtual void Proud::IDbCacheClientDelegate2::OnDbmsWriteDone ( DbmsWritePropNodePendType  type,
Guid  loadedDataGuid 
)
pure virtual

DB cache server에서 DBMS에 기록하는 과정이 끝날 때마다 도착하는 이벤트입니다.

매개변수
type어떤작업을 했는지에대한 type입니다.
loadedDataGuid완료한 작업 data의 Guid입니다.
virtual void Proud::IDbCacheClientDelegate2::OnDeisolateDataFailed ( CCallbackArgs args)
pure virtual

DB cache가 다루는 데이터를 DB가 직접 억세스하기 기능입니다. Proud.CDbCacheClient2.RequestDeisolateData() 실행 실패를 알립니다. args에는 m_rootUUID, m_data, m_sessionGuid가 채워집니다.

virtual void Proud::IDbCacheClientDelegate2::OnDeisolateDataSuccess ( CCallbackArgs args)
pure virtual

DB cache가 다루는 데이터를 DB가 직접 억세스하기 기능입니다. Proud.CDbCacheClient2.RequestDeisolateData() 실행 성공을 알립니다. args에는 m_rootUUID, m_data, m_sessionGuid가 채워집니다.

virtual void Proud::IDbCacheClientDelegate2::OnError ( ErrorInfo errorInfo)
pure virtual

내부 에러 발생시 호출됩니다

매개변수
errorInfo에러에 대한 정보입니다. ErrorInfo::ToString 으로 편하게 자세한 Error 정보를 확인하실 수 있습니다.
virtual void Proud::IDbCacheClientDelegate2::OnException ( Exception e)
pure virtual

Proud.Exception 으로 통합되었습니다.

  • 일반적으로 유저 코드에서 나는 에러를 처리합니다.
  • 유저는 필요한 것들을 구현하면 됩니다.
  • ExceptionType 으로 해당 Exception 객체를 얻어서 사용하면 됩니다.
  • _com_error, void*, std::exception 등을 모두 처리합니다. 또한 catch(...)를 처리하는 OnUnhandledException()도 있습니다.
  • void*는 예외 객체의 타입을 캐스팅해서 받을 수 있습니다. 가령 MFC CException을 받는데 사용됩니다.
virtual void Proud::IDbCacheClientDelegate2::OnExclusiveLoadDataComplete ( CCallbackArgs args)
pure virtual
  • 독점로드 요청에 대한 응답입니다.
  • 요청 시 입력한 검색 조건에 따라 args.m_items를 통해 복수의 데이터 트리를 받을 수도 있습니다.
  • args.m_items에는 독점로드에 성공한 결과와 실패한 결과가 섞여있을 수 있는데 CItem.m_reason값이 ErrorType_Ok이면 성공한 결과입니다.
  • 성공한 경우 CItem객체의 멤버변수 중 m_loadedData, m_data, m_sessionGuid, m_rootUUID, m_UUID, m_message에 관련 정보가 기록됩니다.
  • 실패한 경우 CItem객체의 멤버변수 중 m_reason, m_comment, m_UUID, m_hResult, m_message에 관련 정보가 기록됩니다.
  • m_message는 해당 데이터가 이미 독점되어있는 경우 기존 독점자가 독점권 이양 또는 거부를 하면서 넘긴 메시지가 기록됩니다.
  • args.m_tag에 요청 시 사용자가 임의로 입력했던 tag값이 그대로 돌아오므로 이를 통해 어떤 요청에 대한 응답인지 알 수 있습니다.
virtual void Proud::IDbCacheClientDelegate2::OnIsolateDataFailed ( CCallbackArgs args)
pure virtual

DB cache가 다루는 데이터를 DB가 직접 억세스하기 기능입니다. Proud.CDbCacheClient2.RequestIsolateData() 실행 실패를 알립니다. args에는 m_rootUUID, m_data, m_sessionGuid가 채워집니다.

virtual void Proud::IDbCacheClientDelegate2::OnIsolateDataSuccess ( CCallbackArgs args)
pure virtual

DB cache가 다루는 데이터를 DB가 직접 억세스하기 기능입니다. Proud.CDbCacheClient2.RequestIsolateData() 실행 성공을 알립니다. args에는 m_rootUUID, m_data, m_sessionGuid가 채워집니다.

virtual void Proud::IDbCacheClientDelegate2::OnJoinDbCacheServerComplete ( ErrorInfo info)
pure virtual

서버 연결 시도 결과를 리턴합니다.

매개변수
info실패했을때의 실패정보입니다. 성공시에는 info.m_errorType 에 ErrorType_Ok 입니다.
virtual void Proud::IDbCacheClientDelegate2::OnLeaveDbCacheServer ( ErrorType  reason)
pure virtual

DB cache server와의 연결이 해제됐음을 노티합니다.

  • 이것이 호출된 상황에서는, 이미 DB cache client의 모든 데이터가 unload된 상태입니다.
    매개변수
    reason연결해제 사유
virtual void Proud::IDbCacheClientDelegate2::OnNonExclusiveAddDataAck ( CCallbackArgs args)
inlinevirtual

비독점적 접근에 대한 콜백. 비독점적 데이터 접근하기 참고.

  • 실패시엔 args.m_loadResults[index].m_reason, args.m_loadResults[index].m_comment에 값이 채워집니다.
  • 성공시엔 args.m_loadResults[index].m_rootUUID, args.m_loadResults[index].m_data에 값이 채워집니다.
    매개변수
    argsIDbCacheClientDelegate2 의 이벤트 argument 구조체입니다. 참고 CCallbackArgs
virtual void Proud::IDbCacheClientDelegate2::OnNonExclusiveModifyValueFailed ( CCallbackArgs args)
inlinevirtual

비독점적 접근에 대한 콜백. 비독점적 데이터 접근하기 참고.

  • args.m_loadResults[index].m_reason, args.m_loadResults[index].m_comment에 값이 채워집니다.
    매개변수
    argsIDbCacheClientDelegate2 의 이벤트 argument 구조체입니다. 참고 CCallbackArgs
virtual void Proud::IDbCacheClientDelegate2::OnNonExclusiveModifyValueSuccess ( CCallbackArgs args)
inlinevirtual

비독점적 접근에 대한 콜백. 비독점적 데이터 접근하기 참고.

  • args.m_loadResults[index].m_rootUUID, args.m_loadResults[index].m_data에 값이 채워집니다.
    매개변수
    argsIDbCacheClientDelegate2 의 이벤트 argument 구조체입니다. 참고 CCallbackArgs
virtual void Proud::IDbCacheClientDelegate2::OnNonExclusiveRemoveDataAck ( CCallbackArgs args)
inlinevirtual

비독점적 접근에 대한 콜백. 비독점적 데이터 접근하기 참고.

  • 실패시엔 args.m_loadResults[index].m_reason, args.m_loadResults[index].m_comment에 값이 채워집니다.
  • 성공시엔 args.m_loadResults[index].m_rootUUID, args.m_loadResults[index].m_removeUUID에 값이 채워집니다.
    매개변수
    argsIDbCacheClientDelegate2 의 이벤트 argument 구조체입니다. 참고 CCallbackArgs
virtual void Proud::IDbCacheClientDelegate2::OnNonExclusiveSetValueIfFailed ( CCallbackArgs args)
inlinevirtual

비독점적 접근에 대한 콜백. 비독점적 데이터 접근하기 참고.

  • args.m_loadResults[index].m_reason, args.m_loadResults[index].m_comment에 값이 채워집니다.
    매개변수
    argsIDbCacheClientDelegate2 의 이벤트 argument 구조체입니다. 참고 CCallbackArgs
virtual void Proud::IDbCacheClientDelegate2::OnNonExclusiveSetValueIfSuccess ( CCallbackArgs args)
inlinevirtual

비독점적 접근에 대한 콜백. 비독점적 데이터 접근하기 참고.

  • args.m_loadResults[index].m_rootUUID, args.m_loadResults[index].m_data에 값이 채워집니다.
    매개변수
    argsIDbCacheClientDelegate2 의 이벤트 argument 구조체입니다. 참고 CCallbackArgs
virtual void Proud::IDbCacheClientDelegate2::OnNonExclusiveSnapshotDataComplete ( CCallbackArgs args)
inlinevirtual
  • 비독점 조회 요청에 대한 응답입니다.
  • 요청 시 입력한 검색 조건에 따라 args.m_items를 통해 복수의 데이터 트리를 받을 수도 있습니다.
  • args.m_items에는 조회에 성공한 결과와 실패한 결과가 섞여있을 수 있는데 CItem.m_reason값이 ErrorType_Ok이면 성공한 결과입니다.
  • 성공한 경우 CItem객체의 멤버변수 중 m_loadedData, m_data, m_sessionGuid, m_rootUUID, m_UUID에 관련 정보가 기록됩니다.
  • 실패한 경우 CItem객체의 멤버변수 중 m_reason, m_comment, m_UUID, m_hResult에 관련 정보가 기록됩니다.
  • args.m_tag에 요청 시 사용자가 임의로 입력했던 tag값이 그대로 돌아오므로 이를 통해 어떤 요청에 대한 응답인지 알 수 있습니다.
virtual void Proud::IDbCacheClientDelegate2::OnRemoveDataFailed ( CCallbackArgs args)
pure virtual

OnAddDataFailed 참고.

  • args.m_loadResults[index].m_reason,args.m_loadResults[index].m_comment에 값이 채워집니다.
    매개변수
    argsIDbCacheClientDelegate2의 이벤트 argument 구조체입니다. 참고 CCallbackArgs
virtual void Proud::IDbCacheClientDelegate2::OnRemoveDataSuccess ( CCallbackArgs args)
pure virtual

OnAddDataFailed 참고.

  • args.m_loadResults[index].m_reason,args.m_loadResults[index].m_comment에 값이 채워집니다.
    매개변수
    argsIDbCacheClientDelegate2의 이벤트 argument 구조체입니다. 참고 CCallbackArgs
virtual void Proud::IDbCacheClientDelegate2::OnSomeoneAddData ( CCallbackArgs args)
inlinevirtual

비독점적 접근에 대한 콜백. 비독점적 데이터 접근하기 참고.

  • args.m_loadResults[index].m_loadedData, args.m_loadResults[index].m_data, args.m_loadResults[index].m_message에 값이 채워집니다.
    매개변수
    argsIDbCacheClientDelegate2 의 이벤트 argument 구조체입니다. 참고 CCallbackArgs
virtual void Proud::IDbCacheClientDelegate2::OnSomeoneModifyValue ( CCallbackArgs args)
inlinevirtual

비독점적 접근에 대한 콜백. 비독점적 데이터 접근하기 참고.

  • args.m_loadResults[index].m_loadedData, args.m_loadResults[index].m_data, args.m_loadResults[index].m_message에 값이 채워집니다.
    매개변수
    argsIDbCacheClientDelegate2 의 이벤트 argument 구조체입니다. 참고 CCallbackArgs
virtual void Proud::IDbCacheClientDelegate2::OnSomeoneRemoveData ( CCallbackArgs args)
inlinevirtual

비독점적 접근에 대한 콜백. 비독점적 데이터 접근하기 참고.

  • args.m_loadResults[index].m_loadedData, args.m_loadResults[index].m_data, args.m_loadResults[index].m_message에 값이 채워집니다.
    매개변수
    argsIDbCacheClientDelegate2 의 이벤트 argument 구조체입니다. 참고 CCallbackArgs
virtual void Proud::IDbCacheClientDelegate2::OnSomeoneSetValue ( CCallbackArgs args)
inlinevirtual

비독점적 접근에 대한 콜백. 비독점적 데이터 접근하기 참고.

  • args.m_loadResults[index].m_loadedData, args.m_loadResults[index].m_data, args.m_loadResults[index].m_message에 값이 채워집니다.
    매개변수
    argsIDbCacheClientDelegate2 의 이벤트 argument 구조체입니다. 참고 CCallbackArgs
virtual void Proud::IDbCacheClientDelegate2::OnUpdateDataFailed ( CCallbackArgs args)
pure virtual

OnAddDataFailed 참고.

  • args.m_loadResults[index].m_reason,args.m_loadResults[index].m_comment에 값이 채워집니다.
    매개변수
    argsIDbCacheClientDelegate2의 이벤트 argument 구조체입니다. 참고 CCallbackArgs
virtual void Proud::IDbCacheClientDelegate2::OnUpdateDataSuccess ( CCallbackArgs args)
pure virtual

OnAddDataSuccess 참고.

  • args.m_loadResults[index].m_loadedData,args.m_loadResults[index].m_data에 값이 채워집니다.
    매개변수
    argsIDbCacheClientDelegate2의 이벤트 argument 구조체입니다. 참고 CCallbackArgs
virtual void Proud::IDbCacheClientDelegate2::OnWarning ( ErrorInfo errorInfo)
pure virtual

내부 경고 발생시 호출됩니다. 에러보다는 낮은 수위의 문제를 보고함.

매개변수
errorInfo에러에 대한 정보입니다. ErrorInfo::ToString 으로 편하게 자세한 Error 정보를 확인하실 수 있습니다.