26 #ifndef __TERRALIB_GPKG_INTERNAL_TRANSACTOR_H 
   27 #define __TERRALIB_GPKG_INTERNAL_TRANSACTOR_H 
   29 #include "../Config.h" 
   31 #include "../../../../dataaccess/datasource/DataSourceTransactor.h" 
   37   namespace da { 
class DataSetType;}
 
   59         bool isInTransaction() 
const;
 
   61         std::auto_ptr<te::da::DataSet> getDataSet(
const std::string& name, 
 
   63                                                   bool connected = 
false,
 
   66         std::auto_ptr<te::da::DataSet> getDataSet(
const std::string& name,
 
   67                                                   const std::string& propertyName,
 
   71                                                   bool connected = 
false,
 
   74         std::auto_ptr<te::da::DataSet> getDataSet(
const std::string& name,
 
   75                                                   const std::string& propertyName,
 
   79                                                   bool connected = 
false,
 
   84                                              bool connected = 
false,
 
   87         std::auto_ptr<te::da::DataSet> query(
const std::string& query,
 
   89                                              bool connected = 
false,
 
   94         void execute(
const std::string& command);
 
   96         std::auto_ptr<te::da::PreparedQuery> getPrepared(
const std::string& qName = std::string(
""));
 
   98         std::auto_ptr<te::da::BatchExecutor> getBatchExecutor();
 
  102         boost::int64_t getLastGeneratedId();
 
  104         std::string escape(
const std::string& value);
 
  106         std::vector<std::string> getDataSetNames();
 
  108         std::size_t getNumberOfDataSets();
 
  110         std::auto_ptr<te::da::DataSetType> getDataSetType(
const std::string& name);
 
  112         std::auto_ptr<te::da::DataSetTypeCapabilities> getCapabilities(
const std::string& name);
 
  114         boost::ptr_vector<te::dt::Property> getProperties(
const std::string& datasetName);
 
  116         std::auto_ptr<te::dt::Property> getProperty(
const std::string& datasetName, 
const std::string& name);
 
  118         std::auto_ptr<te::dt::Property> getProperty(
const std::string& datasetName, std::size_t propertyPos);
 
  120         std::vector<std::string> getPropertyNames(
const std::string& datasetName);
 
  122         std::size_t getNumberOfProperties(
const std::string& datasetName);
 
  124         bool propertyExists(
const std::string& datasetName, 
const std::string& name);
 
  128         void dropProperty(
const std::string& datasetName, 
const std::string& name);
 
  130         void renameProperty(
const std::string& datasetName,
 
  131                                     const std::string& propertyName,
 
  132                                     const std::string& newPropertyName);
 
  134         void changePropertyDefinition(
const std::string& datasetName, 
const std::string& propName, 
te::dt::Property* newProp);
 
  136         std::auto_ptr<te::da::PrimaryKey> getPrimaryKey(
const std::string& datasetName);
 
  138         bool primaryKeyExists(
const std::string& datasetName, 
const std::string& name);
 
  142         void dropPrimaryKey(
const std::string& datasetName);
 
  144         std::auto_ptr<te::da::ForeignKey> getForeignKey(
const std::string& datasetName, 
const std::string& name);
 
  146         std::vector<std::string> getForeignKeyNames(
const std::string& datasetName);
 
  148         bool foreignKeyExists(
const std::string& datasetName, 
const std::string& name);
 
  152         void dropForeignKey(
const std::string& datasetName, 
const std::string& fkName);
 
  154         std::auto_ptr<te::da::UniqueKey> getUniqueKey(
const std::string& datasetName, 
const std::string& name);
 
  156         std::vector<std::string> getUniqueKeyNames(
const std::string& datasetName);
 
  158         bool uniqueKeyExists(
const std::string& datasetName, 
const std::string& name);
 
  162         void dropUniqueKey(
const std::string& datasetName, 
const std::string& name);
 
  164         std::auto_ptr<te::da::CheckConstraint> getCheckConstraint(
const std::string& datasetName, 
const std::string& name);
 
  166         std::vector<std::string> getCheckConstraintNames(
const std::string& datasetName);
 
  168         bool checkConstraintExists(
const std::string& datasetName, 
const std::string& name);
 
  172         void dropCheckConstraint(
const std::string& datasetName, 
const std::string& name);
 
  174         std::auto_ptr<te::da::Index> getIndex(
const std::string& datasetName, 
const std::string& name);
 
  176         std::vector<std::string> getIndexNames(
const std::string& datasetName);
 
  178         bool indexExists(
const std::string& datasetName, 
const std::string& name);
 
  180         void addIndex(
const std::string& datasetName, 
te::da::Index* idx,
 
  181                               const std::map<std::string, std::string>& options); 
 
  183         void dropIndex(
const std::string& datasetName, 
const std::string& idxName);
 
  185         std::auto_ptr<te::da::Sequence> getSequence(
const std::string& name);
 
  187         std::vector<std::string> getSequenceNames();
 
  189         bool sequenceExists(
const std::string& name);
 
  193         void dropSequence(
const std::string& name);
 
  195         std::auto_ptr<te::gm::Envelope> getExtent(
const std::string& datasetName,
 
  196                                                           const std::string& propertyName);
 
  198         std::auto_ptr<te::gm::Envelope> getExtent(
const std::string& datasetName,
 
  199                                                           std::size_t propertyPos);
 
  201         std::size_t getNumberOfItems(
const std::string& datasetName);
 
  205         bool dataSetExists(
const std::string& name);
 
  207         void createDataSet(
te::da::DataSetType* dt, 
const std::map<std::string, std::string>& options);
 
  209         void cloneDataSet(
const std::string& name,
 
  210                                   const std::string& cloneName,
 
  211                                   const std::map<std::string, std::string>& options);
 
  213         void dropDataSet(
const std::string& name);
 
  215         void renameDataSet(
const std::string& name, 
const std::string& newName);
 
  217         void add(
const std::string& datasetName,
 
  219                          const std::map<std::string, std::string>& options,
 
  220                          std::size_t limit = 0);
 
  224         void update(
const std::string& datasetName,
 
  226                             const std::vector<std::size_t>& properties,
 
  228                             const std::map<std::string, std::string>& options,
 
  229                             std::size_t limit = 0);
 
  231         virtual void update(
const std::string& datasetName,
 
  233                             const std::vector< std::set<int> >& properties,
 
  234                             const std::vector<size_t>& ids);
 
  237         void optimize(
const std::map<std::string, std::string>& opInfo);
 
  249 #endif //__TERRALIB_GPKG_INTERNAL_TRANSACTOR_H 
This file contains include headers for the memory data source of TerraLib. 
A class that models the description of a dataset. 
SpatialRelation
Spatial relations between geometric objects. 
It describes a sequence (a number generator). 
A class that describes a check constraint. 
An abstract class for data providers like a DBMS, Web Services or a regular file. ...
It models a property definition. 
EncodingType
Supported character encodings. 
AccessPolicy
Supported data access policies (can be used as bitfield). 
TraverseType
A dataset can be traversed in two ways: 
An Envelope defines a 2D rectangular region. 
This class represents a set of unique ids created in the same context. i.e. from the same data set...
It models a foreign key constraint for a DataSetType. 
It describes a unique key (uk) constraint. 
A DataSourceTransactor can be viewed as a connection to the data source for reading/writing things in...
Geometry is the root class of the geometries hierarchy, it follows OGC and ISO standards. 
A Select models a query to be used when retrieving data from a DataSource. 
#define TERRAMOBILEPLUGINSDLLEXPORT
A dataset is the unit of information manipulated by the data access module of TerraLib. 
It describes a primary key (pk) constraint. 
A Query is independent from the data source language/dialect. 
It describes an index associated to a DataSetType. 
The OGR data source provider.