Specializing a Checkpoint Kind
Any attempt to access a checkpoint of a kind which is not registered will simply fail. Developers need to specialize the checkpoint::CheckpointKind to implement recovery and migration operation.
interface CheckpointKind : checkpoint::CheckpointKind { }; entity CheckpointKindImpl {` [ virtual ] void migrate( in string i_key, in string i_productVersion, in string i_applicationVersion, in string i_originalBuffer, out string o_modifiedBuffer) raises (checkpoint::OperationFailed); [ virtual ] void recover( in string i_key, in string i_buffer) raises (checkpoint::OperationFailed); `}; expose entity CheckpointKindImpl with interface CheckpointKind; action ::pkg::CheckpointKindImpl::recover {` // Recover from the checkpoint buffer // `}; action ::pkg::CheckpointKindImpl::migrate {` // Migrate the checkpoint buffer // `};
Copyright © Cloud Software Group, Inc. All rights reserved.