Buteo Synchronization Framework: Buteo::PluginManager Class Reference

Buteo Synchronization Framework

Classes | Public Member Functions | Protected Slots | List of all members
Buteo::PluginManager Class Reference

Manages plugins. More...

`#include <PluginManager.h>`

Inheritance diagram for Buteo::PluginManager:

## Public Member Functions
| PluginManager (const QString &aPluginPath)
| Constructor. More...
| ~PluginManager ()
| Destructor.
StorageChangeNotifierPlugin * | createStorageChangeNotifier (const QString &aStorageName)
| Creates a new storage change notifier plugin for the storage aStoragName. More...
void | destroyStorageChangeNotifier (StorageChangeNotifierPlugin *aPlugin)
| Destroys a storage change notifier plugin instance. More...
StoragePlugin * | createStorage (const QString &aPluginName)
| Creates a new storage plugin instance. More...
void | destroyStorage (StoragePlugin *aPlugin)
| Destroys a storage plugin instance. More...
ClientPlugin * | createClient (const QString &aPluginName, const SyncProfile &aProfile, PluginCbInterface *aCbInterface)
| Creates a new client plugin instance. More...
void | destroyClient (ClientPlugin *aPlugin)
| Destroys a client plugin instance. More...
ServerPlugin * | createServer (const QString &aPluginName, const Profile &aProfile, PluginCbInterface *aCbInterface)
| Creates a new server plugin instance. More...
void | destroyServer (ServerPlugin *aPlugin)
| Destroys a server plugin. More...

## Protected Slots
void | onProcessFinished (int exitCode, QProcess::ExitStatus exitStatus)

## Detailed Description

Manages plugins.

Is responsible for creating and destroying storage, server and client plugins.

## Constructor & Destructor Documentation

## ◆ PluginManager()

PluginManager::PluginManager | ( | const QString & | aPluginPath | ) |

Constructor.

Parameters

  aPluginPath | Path where plugins are stored

## Member Function Documentation

## ◆ createClient()

ClientPlugin * PluginManager::createClient | ( | const QString & | aPluginName,
|  | const SyncProfile & | aProfile,
|  | PluginCbInterface * | aCbInterface
| ) |  |

Creates a new client plugin instance.

Parameters

  aPluginName | Name of the plugin
  aProfile | Sync profile
  aCbInterface | Callback interface

Returns
  Client plugin on success, otherwise NULL

## ◆ createServer()

ServerPlugin * PluginManager::createServer | ( | const QString & | aPluginName,
|  | const Profile & | aProfile,
|  | PluginCbInterface * | aCbInterface
| ) |  |

Creates a new server plugin instance.

Parameters

  aPluginName | Name of the plugin
  aProfile | Server profile
  aCbInterface | Callback interface

Returns
  Server plugin on success, otherwise NULL

## ◆ createStorage()

StoragePlugin * PluginManager::createStorage | ( | const QString & | aPluginName | ) |

Creates a new storage plugin instance.

Parameters

  aPluginName | Name of the plugin

Returns
  Storage plugin if success, otherwise NULL

## ◆ createStorageChangeNotifier()

StorageChangeNotifierPlugin * PluginManager::createStorageChangeNotifier | ( | const QString & | aStorageName | ) |

Creates a new storage change notifier plugin for the storage aStoragName.

Parameters

  aStorageName | well-known name of the storage

## ◆ destroyClient()

void PluginManager::destroyClient | ( | ClientPlugin * | aPlugin | ) |

Destroys a client plugin instance.

Parameters

  aPlugin | Plugin to destroy

## ◆ destroyServer()

void PluginManager::destroyServer | ( | ServerPlugin * | aPlugin | ) |

Destroys a server plugin.

Parameters

  aPlugin | Plugin to destroy

## ◆ destroyStorage()

void PluginManager::destroyStorage | ( | StoragePlugin * | aPlugin | ) |

Destroys a storage plugin instance.

Parameters

  aPlugin | Plugin to destroy

## ◆ destroyStorageChangeNotifier()

void PluginManager::destroyStorageChangeNotifier | ( | StorageChangeNotifierPlugin * | aPlugin | ) |

Destroys a storage change notifier plugin instance.

Parameters

  aStorageName | well-known storage name of the plugin to be destroyed

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

- PluginManager.h
- PluginManager.cpp