Flex  0.17.9
Public Types | Static Public Member Functions | Static Private Member Functions | List of all members
gs::LoaderFactory Class Reference

LoaderFactory is a factory class to create IFragmentLoader. Support Using dynamically built library as plugin. More...

#include <loader_factory.h>

Public Types

using loader_initializer_t = std::shared_ptr< IFragmentLoader >(*)(const std::string &work_dir, const Schema &schema, const LoadingConfig &loading_config)
 

Static Public Member Functions

static void Init ()
 
static void Finalize ()
 
static std::shared_ptr< IFragmentLoaderCreateFragmentLoader (const std::string &work_dir, const Schema &schema, const LoadingConfig &loading_config)
 
static bool Register (const std::string &scheme_type, const std::string &format_type, loader_initializer_t initializer)
 

Static Private Member Functions

static std::unordered_map< std::string, loader_initializer_t > & getKnownLoaders ()
 

Detailed Description

LoaderFactory is a factory class to create IFragmentLoader. Support Using dynamically built library as plugin.

Member Typedef Documentation

◆ loader_initializer_t

using gs::LoaderFactory::loader_initializer_t = std::shared_ptr<IFragmentLoader> (*)( const std::string& work_dir, const Schema& schema, const LoadingConfig& loading_config)

Member Function Documentation

◆ CreateFragmentLoader()

std::shared_ptr< IFragmentLoader > gs::LoaderFactory::CreateFragmentLoader ( const std::string &  work_dir,
const Schema schema,
const LoadingConfig loading_config 
)
static

◆ Finalize()

void gs::LoaderFactory::Finalize ( )
static

◆ getKnownLoaders()

std::unordered_map< std::string, LoaderFactory::loader_initializer_t > & gs::LoaderFactory::getKnownLoaders ( )
staticprivate

◆ Init()

void gs::LoaderFactory::Init ( )
static

◆ Register()

bool gs::LoaderFactory::Register ( const std::string &  scheme_type,
const std::string &  format_type,
LoaderFactory::loader_initializer_t  initializer 
)
static

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