te::graph::BoxLoaderStrategyFactory Class Reference

This is the concrete factory for the database box loader strategy. More...

#include <BoxLoaderStrategyFactory.h>

Inheritance diagram for te::graph::BoxLoaderStrategyFactory:
te::graph::AbstractGraphLoaderStrategyFactory te::common::AbstractFactory< AbstractGraphLoaderStrategy, std::string >

Public Types

typedef FactoryDictionary< AbstractFactory< AbstractGraphLoaderStrategy, std::string, std::less< std::string > >, std::string, std::less< std::string > > dictionary_type
 
typedef AbstractFactory factory_type
 

Public Member Functions

const std::string & getKey () const
 It returns the factory key associated to the concreate factory. More...
 
const std::string & getType () const
 Returns the type (name) of this factory. More...
 
 ~BoxLoaderStrategyFactory ()
 Destructor. More...
 

Static Public Member Functions

static void finalize ()
 It finalizes the factory: the singleton instance will be destroyed and will be unregistered from the abstract factory ... More...
 
static const factory_typefind (const std::string &factoryKey)
 
static dictionary_typegetDictionary ()
 It returns a reference to the internal dictionary of concrete factories. More...
 
static void initialize ()
 It initializes the factory: the singleton instance will be registered in the abstract factory ... More...
 
static AbstractGraphLoaderStrategymake ()
 It creates and returns default graph loader strategy. More...
 
static AbstractGraphLoaderStrategymake (const std::string &lsType)
 It creates graph loader strategy with the proper type. More...
 
static AbstractGraphLoaderStrategymake (const std::string &lsType, GraphMetadata *gm)
 It creates graph loader strategy with the proper type. More...
 

Protected Member Functions

 BoxLoaderStrategyFactory ()
 Constructor. More...
 
te::graph::AbstractGraphLoaderStrategybuild ()
 Builder Function used to create the class object. More...
 
te::graph::AbstractGraphLoaderStrategycreate (GraphMetadata *gm)
 This method must be implemented by subclasses (load strategy types). More...
 

Protected Attributes

std::string m_factoryKey
 The key that identifies the concrete factory: it will be used for unregistering the factory during destruction. More...
 

Static Private Attributes

static BoxLoaderStrategyFactorysm_factory
 Static instance used to register the factory. More...
 

Detailed Description

This is the concrete factory for the database box loader strategy.

See also
te::graph::AbstractLoaderStrategyFactory

Definition at line 47 of file BoxLoaderStrategyFactory.h.

Member Typedef Documentation

typedef FactoryDictionary<AbstractFactory<AbstractGraphLoaderStrategy , std::string , std::less<std::string > >, std::string , std::less<std::string > > te::common::AbstractFactory< AbstractGraphLoaderStrategy , std::string , std::less<std::string > >::dictionary_type
inherited

Definition at line 73 of file AbstractFactory.h.

typedef AbstractFactory te::common::AbstractFactory< AbstractGraphLoaderStrategy , std::string , std::less<std::string > >::factory_type
inherited

Definition at line 77 of file AbstractFactory.h.

Constructor & Destructor Documentation

te::graph::BoxLoaderStrategyFactory::~BoxLoaderStrategyFactory ( )
inline

Destructor.

Definition at line 52 of file BoxLoaderStrategyFactory.h.

te::graph::BoxLoaderStrategyFactory::BoxLoaderStrategyFactory ( )
protected

Constructor.

Member Function Documentation

te::graph::AbstractGraphLoaderStrategy* te::graph::BoxLoaderStrategyFactory::build ( )
protectedvirtual

Builder Function used to create the class object.

Implements te::common::AbstractFactory< AbstractGraphLoaderStrategy, std::string >.

te::graph::AbstractGraphLoaderStrategy* te::graph::BoxLoaderStrategyFactory::create ( GraphMetadata gm)
protectedvirtual

This method must be implemented by subclasses (load strategy types).

Parameters
gmThe necessary graph information
Returns
The new loader strategy.
Note
The caller will take the ownership of the returned pointer.

Implements te::graph::AbstractGraphLoaderStrategyFactory.

static void te::graph::BoxLoaderStrategyFactory::finalize ( )
static

It finalizes the factory: the singleton instance will be destroyed and will be unregistered from the abstract factory ...

static const factory_type* te::common::AbstractFactory< AbstractGraphLoaderStrategy , std::string , std::less<std::string > >::find ( const std::string &  factoryKey)
staticinherited
static dictionary_type& te::common::AbstractFactory< AbstractGraphLoaderStrategy , std::string , std::less<std::string > >::getDictionary ( )
staticinherited

It returns a reference to the internal dictionary of concrete factories.

The dictionary is a singleton.

Returns
A reference to the internal dictionary.
const std::string & te::common::AbstractFactory< AbstractGraphLoaderStrategy , std::string , std::less<std::string > >::getKey ( ) const
inherited

It returns the factory key associated to the concreate factory.

Returns
The factory key associated to the concreate factory.
const std::string& te::graph::BoxLoaderStrategyFactory::getType ( ) const
virtual

Returns the type (name) of this factory.

Implements te::graph::AbstractGraphLoaderStrategyFactory.

static void te::graph::BoxLoaderStrategyFactory::initialize ( )
static

It initializes the factory: the singleton instance will be registered in the abstract factory ...

static AbstractGraphLoaderStrategy* te::graph::AbstractGraphLoaderStrategyFactory::make ( )
staticinherited

It creates and returns default graph loader strategy.

Returns
A default graph loader strategy.
Note
The caller will take the ownership of the returned pointer.
static AbstractGraphLoaderStrategy* te::graph::AbstractGraphLoaderStrategyFactory::make ( const std::string &  lsType)
staticinherited

It creates graph loader strategy with the proper type.

Parameters
lsTypeType The name of the specific graph loader strategy type to be used to create.
Returns
A proper graph loader strategy.
Note
The caller will take the ownership of the returned pointer.
static AbstractGraphLoaderStrategy* te::graph::AbstractGraphLoaderStrategyFactory::make ( const std::string &  lsType,
GraphMetadata gm 
)
staticinherited

It creates graph loader strategy with the proper type.

Parameters
lsTypeType The name of the specific graph loader strategy type to be used to create.
gmPointer to a class that defines the graph metadata
Returns
A proper graph loader strategy.
Note
The caller will take the ownership of the returned pointer.

Member Data Documentation

std::string te::common::AbstractFactory< AbstractGraphLoaderStrategy , std::string , std::less<std::string > >::m_factoryKey
protectedinherited

The key that identifies the concrete factory: it will be used for unregistering the factory during destruction.

Definition at line 136 of file AbstractFactory.h.

BoxLoaderStrategyFactory* te::graph::BoxLoaderStrategyFactory::sm_factory
staticprivate

Static instance used to register the factory.

Definition at line 86 of file BoxLoaderStrategyFactory.h.


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