fesa-core  4.2.0
fesa::ControllerFactory Class Reference

#include <ControllerFactory.h>

Public Member Functions

 ControllerFactory (bool multiProcess)
 
virtual std::auto_ptr
< cmw::rda3::server::ServerBuilder > 
createRDAServerBuilder () const
 
virtual
cmw::rda3::client::ClientService & 
getRDAClientService ()
 
virtual std::auto_ptr
< PropertyBuilder
createPropertyBuilder () const
 
virtual MetricsManagergetMetricsManager () const
 
virtual NotificationProducergetNotificationProducer () const
 
virtual ProcessConfigurergetProcessConfigurer () const
 
virtual ParserElementFactory & getParserElementFactory () const
 
virtual ThreadConfigurergetThreadConfigurer () const
 
virtual XMLParsergetInstantiationFileXMLParser () const
 
virtual NotificationProcessor & getNotificationProcessor () const
 
virtual ExporterFactorygetExporterFactory () const
 
virtual PropertyInfoRegistry & getPropertyInfoRegistry () const
 

Static Public Member Functions

static void setInstance (std::auto_ptr< ControllerFactory > instance)
 
static ControllerFactorygetInstance ()
 

Detailed Description

This factory provides access to controller objects used by the framework. All methods must be virtual (and may be pure as well) in order to allow lab-specific implementations and fake objects (for testing purposes).

Any instance of a controller object needed by the framework should be obtainable by a method of this class.

Constructor & Destructor Documentation

fesa::ControllerFactory::ControllerFactory ( bool  multiProcess)

Constructor.

Parameters
multiProcesstrue if the process is part of a split FESA DU.

Member Function Documentation

std::auto_ptr< PropertyBuilder > fesa::ControllerFactory::createPropertyBuilder ( ) const
virtual

Creates and returns a PropertyBuilder which can be used to build Properties

std::auto_ptr< cmw::rda3::server::ServerBuilder > fesa::ControllerFactory::createRDAServerBuilder ( ) const
virtual

Creates and returns an RDA ServerBuilder which can then be used to create an RDA server.

ExporterFactory & fesa::ControllerFactory::getExporterFactory ( ) const
virtual

Get a reference to the ExporterFactory object

ControllerFactory & fesa::ControllerFactory::getInstance ( )
static
Returns
the ControllerFactory instance.
Exceptions
FesaExceptionif no instance has been set
XMLParser & fesa::ControllerFactory::getInstantiationFileXMLParser ( ) const
virtual

Get the instantiation's file XMLParser object

MetricsManager & fesa::ControllerFactory::getMetricsManager ( ) const
virtual

Returns a reference to the configured MetricsManager object.

NotificationProcessor & fesa::ControllerFactory::getNotificationProcessor ( ) const
virtual

Get a reference to the NotificationProcessor object

NotificationProducer & fesa::ControllerFactory::getNotificationProducer ( ) const
virtual

Get a reference to the NotificationProducer object

ParserElementFactory & fesa::ControllerFactory::getParserElementFactory ( ) const
virtual

Returns a reference to the ParserElementFactory.

ProcessConfigurer & fesa::ControllerFactory::getProcessConfigurer ( ) const
virtual

Get a reference to the ProcessConfigurer object

PropertyInfoRegistry & fesa::ControllerFactory::getPropertyInfoRegistry ( ) const
virtual

Get a reference to the PropertyInfoRegistry object

cmw::rda3::client::ClientService & fesa::ControllerFactory::getRDAClientService ( )
virtual

Returns a reference to an RDA ClientService. Always returns the same instance.

ThreadConfigurer & fesa::ControllerFactory::getThreadConfigurer ( ) const
virtual

Get a reference to the ThreadConfigurer object

void fesa::ControllerFactory::setInstance ( std::auto_ptr< ControllerFactory instance)
static

This method must be used at startup to specify the ControllerFactory instance to use. It can be an instance of this class, or of any child class.

Parameters
instancethe ControllerFactory object to use.

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