Fire Core  8.0.0.alpha
GIS framework per tutti gli usi
 Tutto Classi Namespace Funzioni Variabili Ridefinizioni di tipo (typedef) Tipi enumerati (enum) Valori del tipo enumerato Friend
ConnectionSpatialDb.hpp
1 // Copyright 2015 GEOSYSTEMS SRL
2 // All Rights Reserved.
3 
4 #ifndef FIRE_DATA_CONNECTIONSPATIALDB_HPP_INCLUDED
5 #define FIRE_DATA_CONNECTIONSPATIALDB_HPP_INCLUDED
6 
7 #include <exception>
8 #include <string>
9 
10 #include "fire/source/vector/ConnectionVector.hpp"
11 #include "fire/source/vector/DataSet.hpp"
12 
13 typedef struct OCIEnv OCIEnv;
14 typedef struct OCISvcCtx OCISvcCtx;
15 
16 namespace fire {
17 namespace source {
18 namespace vector {
19 
20 namespace shared {
21 class ConnectionSpatialDbSh;
22 } // namespace shared
23 
27 class FIRE_GIS_DLL ConnectionSpatialDb : public ConnectionVector {
28  private:
29  // QueryBuilder::QueryBuilderShp _qb;
30 
31  public:
33 
38 
43 
48  // void setQueryBuilder(QueryBuilder::QueryBuilderShp qb);
49  // QueryBuilder::QueryBuilderShp const getQueryBuilder() const;
50 
55  virtual ConnectionType::ConnectionType getType() const;
56 
60  virtual void beginTransaction() = 0;
61 
65  virtual void commitTransaction() = 0;
66 
70  virtual void rollbackTransaction() = 0;
71 
77  virtual void resetFromNative(OCIEnv* env, OCISvcCtx* ctx);
78 
79  virtual void saveOrUpdate(DataRow& row);
80  virtual void insert(DataRow& row);
81  virtual void update(DataRow& row);
82  virtual void erase(DataRow const & row);
83 
84  protected:
85  virtual const std::string _getSaveFieldSql(const std::string& paramName, const Field::FieldShp& fld) const;
86  virtual source::vector::DataValue::DataValueShp _getSaveValueSql(const source::vector::DataValue::DataValueShp& value) const;
87 
88  private:
90  ConnectionSpatialDb & operator=(ConnectionSpatialDb const &) { return *this; }
91 };
92 
93 } // namespace vector
94 } // namespace source
95 } // namespace fire
96 
97 #endif
Specializzazione per connessioni vettoriali su db con supporto spaziale.
Definition: ConnectionSpatialDb.hpp:27
Specializzazione di una connessione per sorgenti dati vettoriali.
Definition: ConnectionVector.hpp:30
Definition: FieldSh.hpp:21
Definition: ConnectionSpatialDbSh.hpp:20
paramName
Definition: Connection.hpp:39
Definition: DataValueSh.hpp:24
Oggetto per l'accesso alle colonne di una riga di dati.
Definition: DataRow.hpp:32