Containment Domains C++ API  0.1
Containment Domains C++ API v0.1
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Groups Pages
Public Member Functions | List of all members
RecoverObject Class Reference

Recovery method that can be inherited and specialized by user. More...

#include <cd.h>

Public Member Functions

virtual void Recover (CDInternalPtr *cd_instance, uint error_name_mask, unit error_location_mask, std::vector< SysErrT > errors)
 Recover method to be specialized by inheriting and overloading. More...
 

Detailed Description

Recovery method that can be inherited and specialized by user.

The purpose of RecoverObject is to provide an interface to enable a programer to create custom Recover routines. The idea is that for each CD, each error type+location may be bound to a specialized recovery routine, which is expressed through a Recover object. The Recover object inherits the default RecoverObject and extends or replaces the default restore+reexecute recovery method.

Todo:
Write some example for custom recovery (see GVR interpolation example, although they do it between versions).
See also
CDHandle::RegisterRecovery()

Member Function Documentation

virtual void RecoverObject::Recover ( CDInternalPtr cd_instance,
uint  error_name_mask,
unit  error_location_mask,
std::vector< SysErrT >  errors 
)
inlinevirtual

Recover method to be specialized by inheriting and overloading.

Recover uses methods that are internal to the CD itself and should only be called by customized recovery routines that inherit from RecoverObject and modify the Recover() method.

Parameters
cd_instanceA pointer to the actual CD instance so that the internal methods can be called.
[in]error_name_maskMask of all error/fail types that require recovery
[in]error_location_maskMask of all error/fail locations that require recovery
[in]errorsErrors/failures to recover from (typically just one).

The documentation for this class was generated from the following file: