Skip to content

Persistence Common Interface Specification

Bill Barrett edited this page Jan 13, 2021 · 2 revisions

This document describes a Common Interface: the Persistence Common Interface. The Common Interfaces are interfaces and implementation models for handling concepts that may be required by any process modelling component that implements CAPE-OPEN interfaces. This Persistence Common interface specification is part of version 2.0 of the CAPE-OPEN standards.

An interface is defined on a Persistable Object (PO), typically a Process Modelling Component (PMC) that indicates that the component is a PO and is capable of being persisted and restore from persistence by the Persistence Host (PH), typically the PME. Persistence of a PO occurs when the PO requests the PO to save itself by invoking the ICapePersistence.Save method, providing access to a data store used to store its internal information, indicating whether the PO should clear its dirty status. The PH can request that the PO restored by invoking the ICapePersist.Load method, providing a data store that contains internal information previously written by the PO. The data store implements the ICapePersistReader and ICapePersistWriter interfaces that allow the PO to place data into and read data out of the data store.

The scenarios envisioned for the use of these persistence interfaces include storing and retrieving instances of POs as part of saving a flowsheet to a file and copying of POs applications such as cut and paste copying, or duplication of the PO on different threads.

An appendix is included that provides mechanisms for transitioning COM persisted CAPE-OPEN v1.x objects to persistence using CAPE-OPEN v.20 persistence.

Clone this wiki locally