This is the abstract factory for graph loader strategy. More...
#include <AbstractGraphLoaderStrategyFactory.h>
Public Types | |
typedef FactoryDictionary < AbstractFactory < AbstractGraphLoaderStrategy, std::string, TKEYCOMPARE > , std::string, TKEYCOMPARE > | 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... | |
virtual const std::string & | getType () const =0 |
Returns the type (name) of this factory. More... | |
virtual | ~AbstractGraphLoaderStrategyFactory () |
Destructor. More... | |
Static Public Member Functions | |
static const factory_type * | find (const std::string &factoryKey) |
static dictionary_type & | getDictionary () |
It returns a reference to the internal dictionary of concrete factories. More... | |
static AbstractGraphLoaderStrategy * | make () |
It creates and returns default graph loader strategy. More... | |
static AbstractGraphLoaderStrategy * | make (const std::string &lsType) |
It creates graph loader strategy with the proper type. More... | |
static AbstractGraphLoaderStrategy * | make (const std::string &lsType, GraphMetadata *gm) |
It creates graph loader strategy with the proper type. More... | |
Protected Member Functions | |
AbstractGraphLoaderStrategyFactory (const std::string &factoryKey) | |
Constructor. More... | |
virtual AbstractGraphLoaderStrategy * | build ()=0 |
Concrete factories (derived from this one) must implement this method in order to create objects. More... | |
virtual AbstractGraphLoaderStrategy * | create (GraphMetadata *gm)=0 |
This method must be implemented by subclasses (loader 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... | |
This is the abstract factory for graph loader strategy.
Definition at line 48 of file AbstractGraphLoaderStrategyFactory.h.
|
inherited |
Definition at line 73 of file AbstractFactory.h.
|
inherited |
Definition at line 77 of file AbstractFactory.h.
|
inlinevirtual |
Destructor.
Definition at line 87 of file AbstractGraphLoaderStrategyFactory.h.
|
protected |
Constructor.
factoryKey | The key that identifies the factory. |
Definition at line 65 of file AbstractGraphLoaderStrategyFactory.cpp.
|
protectedpure virtualinherited |
Concrete factories (derived from this one) must implement this method in order to create objects.
Implemented in te::graph::BoxLoaderStrategyFactory, and te::graph::SequenceLoaderStrategyFactory.
|
protectedpure virtual |
This method must be implemented by subclasses (loader strategy types).
gm |
Implemented in te::graph::BoxLoaderStrategyFactory, and te::graph::SequenceLoaderStrategyFactory.
Referenced by make().
|
staticinherited |
|
staticinherited |
It returns a reference to the internal dictionary of concrete factories.
The dictionary is a singleton.
|
inherited |
It returns the factory key associated to the concreate factory.
|
pure virtual |
Returns the type (name) of this factory.
Implemented in te::graph::BoxLoaderStrategyFactory, and te::graph::SequenceLoaderStrategyFactory.
|
static |
It creates and returns default graph loader strategy.
Definition at line 37 of file AbstractGraphLoaderStrategyFactory.cpp.
References te::common::AbstractFactory< TPRODUCT, TFACTORYKEY, TKEYCOMPARE >::make(), and TE_DEFAULT_GRAPH_LOADER_STRATEGY_TYPE.
Referenced by te::graph::AbstractGraphFactory::getLoaderStrategy().
|
static |
It creates graph loader strategy with the proper type.
lsType | Type The name of the specific graph loader strategy type to be used to create. |
Definition at line 42 of file AbstractGraphLoaderStrategyFactory.cpp.
References te::common::Convert2UCase(), and te::common::AbstractFactory< TPRODUCT, TFACTORYKEY, TKEYCOMPARE >::make().
|
static |
It creates graph loader strategy with the proper type.
lsType | Type The name of the specific graph loader strategy type to be used to create. |
gm | Pointer to a class that defines the graph metadata |
Definition at line 49 of file AbstractGraphLoaderStrategyFactory.cpp.
References te::common::Convert2UCase(), create(), te::common::FactoryDictionary< TFACTORY, TFACTORYKEY, TKEYCOMPARE >::find(), te::common::AbstractFactory< TPRODUCT, TFACTORYKEY, TKEYCOMPARE >::getDictionary(), and TE_TR.
|
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.