PersistenceManager API for persistence and overflow.
More...
#include <PersistenceManager.hpp>
|
virtual void | close ()=0 |
| Closes the persistence manager instance.
|
|
virtual void | destroy (const std::shared_ptr< CacheableKey > &key, const std::shared_ptr< void > &PersistenceInfo)=0 |
| destroys the entry specified by the key in the argument.
|
|
virtual void | init (const std::shared_ptr< Region > ®ion, const std::shared_ptr< Properties > &diskProperties)=0 |
| This method gets called after an implementation object is created.
|
|
virtual std::shared_ptr< Cacheable > | read (const std::shared_ptr< CacheableKey > &key, const std::shared_ptr< void > &PersistenceInfo)=0 |
| Reads the value for the key from the disk.
|
|
virtual bool | readAll ()=0 |
| Reads all the values from the region.
|
|
virtual void | write (const std::shared_ptr< CacheableKey > &key, const std::shared_ptr< Cacheable > &value, std::shared_ptr< void > &persistenceInfo)=0 |
| Writes a key, value pair of region to the disk.
|
|
virtual bool | writeAll ()=0 |
| Writes all the entries for a region.
|
|
PersistenceManager API for persistence and overflow.
This class abstracts the disk-related operations in case of persistence or overflow to disk. A specific disk storage implementation will implement all the methods described here.
◆ close()
virtual void apache::geode::client::PersistenceManager::close |
( |
| ) |
|
|
pure virtual |
Closes the persistence manager instance.
- Exceptions
-
◆ destroy()
virtual void apache::geode::client::PersistenceManager::destroy |
( |
const std::shared_ptr< CacheableKey > & |
key, |
|
|
const std::shared_ptr< void > & |
PersistenceInfo |
|
) |
| |
|
pure virtual |
destroys the entry specified by the key in the argument.
- Parameters
-
key | is the key of the entry which is being destroyed. |
PersistenceInfo | related persistence information. |
- Exceptions
-
◆ getPersistenceManager()
static std::shared_ptr< PersistenceManager > apache::geode::client::PersistenceManager::getPersistenceManager |
( |
| ) |
|
|
static |
Returns the current persistence manager.
- Returns
- persistence manager
◆ init()
virtual void apache::geode::client::PersistenceManager::init |
( |
const std::shared_ptr< Region > & |
region, |
|
|
const std::shared_ptr< Properties > & |
diskProperties |
|
) |
| |
|
pure virtual |
This method gets called after an implementation object is created.
Initializes all the implementation specific environments needed.
- Exceptions
-
InitfailedException | if the persistence manager cannot be initialized. |
◆ read()
virtual std::shared_ptr< Cacheable > apache::geode::client::PersistenceManager::read |
( |
const std::shared_ptr< CacheableKey > & |
key, |
|
|
const std::shared_ptr< void > & |
PersistenceInfo |
|
) |
| |
|
pure virtual |
Reads the value for the key from the disk.
- Parameters
-
key | is the key for which the value has to be read. |
PersistenceInfo | related persistence information. |
- Returns
- value of type std::shared_ptr<Cacheable>.
- Exceptions
-
◆ readAll()
virtual bool apache::geode::client::PersistenceManager::readAll |
( |
| ) |
|
|
pure virtual |
Reads all the values from the region.
- Returns
- true
◆ write()
virtual void apache::geode::client::PersistenceManager::write |
( |
const std::shared_ptr< CacheableKey > & |
key, |
|
|
const std::shared_ptr< Cacheable > & |
value, |
|
|
std::shared_ptr< void > & |
persistenceInfo |
|
) |
| |
|
pure virtual |
Writes a key, value pair of region to the disk.
The actual file or database related write operations should be implemented in this method by the class implementing this method.
- Parameters
-
key | the key to write. |
value | the value to write |
persistenceInfo | related persistence information. |
- Exceptions
-
◆ writeAll()
virtual bool apache::geode::client::PersistenceManager::writeAll |
( |
| ) |
|
|
pure virtual |
Writes all the entries for a region.
Refer persistance requirement doc for the use case.
- Exceptions
-
◆ m_regionPtr
std::shared_ptr<Region> apache::geode::client::PersistenceManager::m_regionPtr |
|
protected |
Region for this persistence manager.