28 #ifndef __TERRALIB_WS_OGC_WCS_DATAACCESS_TRANSACTOR_H
29 #define __TERRALIB_WS_OGC_WCS_DATAACCESS_TRANSACTOR_H
37 #include "../../../../dataaccess/datasource/DataSourceTransactor.h"
38 #include "../client/WCSClient.h"
41 #include "../client/DataTypes.h"
66 Transactor(
const std::shared_ptr<te::ws::ogc::WCSClient> wcs);
82 bool isInTransaction()
const;
84 std::auto_ptr<te::da::DataSet> getDataSet(
const std::string& name,
86 bool connected =
false,
89 std::auto_ptr<te::da::DataSet> getDataSet(
const std::string& name,
90 const std::string& propertyName,
94 bool connected =
false,
97 std::auto_ptr<te::da::DataSet> getDataSet(
const std::string& name,
98 const std::string& propertyName,
102 bool connected =
false,
105 std::auto_ptr<te::da::DataSet> getDataSet(
const std::string& name,
108 bool connected =
false,
113 bool connected =
false,
116 std::auto_ptr<te::da::DataSet> query(
const std::string& query,
118 bool connected =
false,
123 void execute(
const std::string& command);
125 std::auto_ptr<te::da::PreparedQuery> getPrepared(
const std::string& qName = std::string(
""));
127 std::auto_ptr<te::da::BatchExecutor> getBatchExecutor();
131 boost::int64_t getLastGeneratedId();
133 std::string escape(
const std::string& value);
135 bool isDataSetNameValid(
const std::string& datasetName);
137 bool isPropertyNameValid(
const std::string& propertyName);
139 std::vector<std::string> getDataSetNames();
141 std::size_t getNumberOfDataSets();
143 std::auto_ptr<te::da::DataSetType> getDataSetType(
const std::string& name);
145 boost::ptr_vector<te::dt::Property> getProperties(
const std::string& datasetName);
147 std::auto_ptr<te::dt::Property> getProperty(
const std::string& datasetName,
const std::string& name);
149 std::auto_ptr<te::dt::Property> getProperty(
const std::string& datasetName, std::size_t propertyPos);
151 std::vector<std::string> getPropertyNames(
const std::string& datasetName);
153 std::size_t getNumberOfProperties(
const std::string& datasetName);
155 bool propertyExists(
const std::string& datasetName,
const std::string& name);
159 void dropProperty(
const std::string& datasetName,
const std::string& name);
161 void renameProperty(
const std::string& datasetName ,
const std::string& propertyName,
const std::string& newPropertyName);
163 std::auto_ptr<te::da::PrimaryKey> getPrimaryKey(
const std::string& datasetName);
165 bool primaryKeyExists(
const std::string& datasetName,
const std::string& name);
169 void dropPrimaryKey(
const std::string& datasetName);
171 std::auto_ptr<te::da::ForeignKey> getForeignKey(
const std::string& datasetName,
const std::string& name);
173 std::vector<std::string> getForeignKeyNames(
const std::string& datasetName);
175 bool foreignKeyExists(
const std::string& datasetName ,
const std::string& name);
179 void dropForeignKey(
const std::string& datasetName ,
const std::string& fkName);
181 std::auto_ptr<te::da::UniqueKey> getUniqueKey(
const std::string& datasetName,
const std::string& name);
183 std::vector<std::string> getUniqueKeyNames(
const std::string& datasetName);
185 bool uniqueKeyExists(
const std::string& datasetName,
const std::string& name);
189 void dropUniqueKey(
const std::string& datasetName,
const std::string& name);
191 std::auto_ptr<te::da::CheckConstraint> getCheckConstraint(
const std::string& datasetName,
const std::string& name);
193 std::vector<std::string> getCheckConstraintNames(
const std::string& datasetName);
195 bool checkConstraintExists(
const std::string& datasetName,
const std::string& name);
199 void dropCheckConstraint(
const std::string& datasetName,
const std::string& name);
201 std::auto_ptr<te::da::Index> getIndex(
const std::string& datasetName,
const std::string& name);
203 std::vector<std::string> getIndexNames(
const std::string& datasetName);
205 bool indexExists(
const std::string& datasetName,
const std::string& name);
207 void addIndex(
const std::string& datasetName,
te::da::Index* idx,
const std::map<std::string, std::string>& options);
209 void dropIndex(
const std::string& datasetName,
const std::string& idxName);
211 std::auto_ptr<te::da::Sequence> getSequence(
const std::string& name);
213 std::vector<std::string> getSequenceNames();
215 bool sequenceExists(
const std::string& name);
219 void dropSequence(
const std::string& name);
221 std::auto_ptr<te::gm::Envelope> getExtent(
const std::string& datasetName,
222 const std::string& propertyName);
224 std::auto_ptr<te::gm::Envelope> getExtent(
const std::string& datasetName,
225 std::size_t propertyPos);
227 std::size_t getNumberOfItems(
const std::string& datasetName);
231 bool dataSetExists(
const std::string& name);
234 const std::map<std::string, std::string>& options);
236 void cloneDataSet(
const std::string& name,
237 const std::string& cloneName,
238 const std::map<std::string, std::string>& options);
240 void dropDataSet(
const std::string& name);
242 void renameDataSet(
const std::string& name,
243 const std::string& newName);
245 void add(
const std::string& datasetName,
247 const std::map<std::string, std::string>& options,
248 std::size_t limit = 0);
252 void update(
const std::string& datasetName,
254 const std::vector<std::size_t>& properties,
256 const std::map<std::string, std::string>& options,
257 std::size_t limit = 0);
259 void optimize(
const std::map<std::string, std::string>& opInfo);
263 std::shared_ptr<te::ws::ogc::WCSClient>
m_wcs;
276 #endif // __TERRALIB_WS_OGC_WCS_DATAACCESS_TRANSACTOR_H
#define TEOGCWCSDATAACCESSEXPORT
You can use this macro in order to export/import classes and functions from this module.
A class that models the description of a dataset.
SpatialRelation
Spatial relations between geometric objects.
It describes a sequence (a number generator).
std::shared_ptr< te::ws::ogc::WCSClient > m_wcs
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.
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.
CoverageRequest m_coverageRequest
A DataSourceTransactor can be viewed as a connection to the data source for reading/writing things in...
A struct to set the parameters of requested coverage.
Geometry is the root class of the geometries hierarchy, it follows OGC and ISO standards.
Configuration flags for the Terrralib WS OGC WCS DATA ACCESS module.
A Select models a query to be used when retrieving data from a DataSource.
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.
Implementation of the transactor for the WCS driver.