Persistent storage and recovery is provided by a plug-in module to the C++ broker. This page describes the relationship between the persistent message store module and the rest of the C++ broker.

A high-level view of the major classes involved in the store module plugin are shown below:

Concrete Plugin

When the plugin is loaded, the Concrete Plugin is instantiated. It is responsible for managing both the Concrete Options and the Concrete Message Store.

Concrete Options

The Concrete Options class defines and parses the options which are valid for the plugin. The particular options can vary by plugin.

Concrete Message Store

The Concrete Message Store implements the qpid::broker::MessageStore interface. The broker invokes methods on the MessageStore interface as operations requiring persistence take place during broker execution.

Note that the Concrete Message Store class can also inherit from Manageable to allow it to be managed via QMF. The particular message store should develop its own schema that makes sense.

  • No labels