26 #ifndef __TERRALIB_DATAACCESS_INTERNAL_DATASOURCEMANAGER_H 
   27 #define __TERRALIB_DATAACCESS_INTERNAL_DATASOURCEMANAGER_H 
   30 #include "../../common/Comparators.h" 
   31 #include "../../common/Singleton.h" 
   32 #include "../../common/ThreadingPolicies.h" 
   62                                                                                         ::boost::recursive_mutex,
 
   63                                                                                         ::boost::lock_guard< ::boost::recursive_mutex>,
 
   64                                                                                         ::boost::lock_guard< ::boost::recursive_mutex> >,
 
   72         typedef std::map<std::string, DataSourcePtr>::iterator 
iterator;
 
   86         DataSourcePtr make(
const std::string& 
id, 
const std::string& dsType);
 
  103         DataSourcePtr open(
const std::string& 
id, 
const std::string& dsType, 
const std::map<std::string, std::string>& connInfo);
 
  120         DataSourcePtr open(
const std::string& 
id, 
const std::string& dsType, 
const std::string& connInfo);
 
  137         DataSourcePtr get(
const std::string& id, 
const std::string& dsType, 
const std::map<std::string, std::string>& connInfo);
 
  146         std::size_t size() 
const;
 
  202         void detachAll(
const std::string& dsType);
 
  249         std::map<std::string, DataSourcePtr> 
m_dss;   
 
  259       return m_dss.begin();
 
  264       return m_dss.begin();
 
  281 #endif  // __TERRALIB_DATAACCESS_INTERNAL_DATASOURCEMANAGER_H 
Template support for singleton pattern. 
 
const_iterator begin() const 
It returns an iterator to the beginning of the conteiner. 
 
mydialect insert("+", new te::da::BinaryOpEncoder("+"))
 
std::size_t size() const 
It returns the number of data sources that the manager are keeping track of. 
 
std::map< std::string, DataSourcePtr > m_dss
The data sources kept in the manager. 
 
This is a singleton for managing all data source instances available in the system. 
 
An abstract class for data providers like a DBMS, Web Services or a regular file. ...
 
const_iterator end() const 
It returns an iterator to the end of the conteiner. 
 
#define TEDATAACCESSEXPORT
You can use this macro in order to export/import classes and functions from this module. 
 
std::map< std::string, DataSourcePtr >::iterator iterator
 
boost::shared_ptr< DataSource > DataSourcePtr
 
This policy assures an object-level locking scheme for a derived class. 
 
std::map< std::string, DataSourcePtr >::const_iterator const_iterator