|
#ifndef IADMINISTRATION_PROVIDER_H
#define IADMINISTRATION_PROVIDER_H
#include <string>
#include <vector>
#include "../../config/BundleConfiguration.h"
using namespace std;
using namespace sof::config;
namespace sof { namespace services { namespace admin {
/**
* The <code>IAdministrationProvider</code> interface provides methods
* for administrating the SOF container (starting, stopping bundles, asking
* for bundle information etc.)
*
* @author magr74
*/
class IAdministrationProvider
{
public:
/**
* Returns a vector containing all names of the bundles
* which are currently started.
*
* @return
* A vector of bundle names.
*/
virtual vector<string> getBundleNames() = 0;
/**
* Dumps the bundle information of the specified bundle.
*
* @param bundleName
* The name of the bundle which is dumped.
*
* @return
* The string containing the complete bundle information
* (registered services and service listeners etc.)
*/
virtual string dumpBundleInfo( const string& bundleName ) = 0;
/**
* Dumps the name of all started bundles.
*
* @return
* The string containing the names of all started
* bundles.
*/
virtual string dumpAllBundleNames() = 0;
/**
* Stops the specified bundle.
*
* @param bundleName
* The name of the bundle which is stopped.
*/
virtual void stopBundle( const string& bundleName ) = 0;
/**
* Stops all bundles.
*/
virtual void stop() = 0;
/**
* Starts a bundle which must be loaded from a DLL.
*
* @param config
* The bundle configuration.
*/
virtual void start( vector<BundleConfiguration> &config ) = 0;
};
}}}
#endif
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.