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
Riferimenti per la classe fire::connection::qt::ConnectionQtSqlabstract

Implementazione Connection per l'accesso a banche dati spaziali basato su QtSql. Continua...

#include <ConnectionQtSql.hpp>

Diagramma delle classi per fire::connection::qt::ConnectionQtSql
fire::source::vector::ConnectionSpatialDb fire::source::vector::ConnectionVector fire::source::Connection fire::Object fire::Groupable< Object > fire::connection::qt::ConnectionQtOracle fire::connection::qt::ConnectionQtPostgres

Tipi pubblici

typedef shared::ConnectionQtSqlSh ConnectionQtSqlShp
 
- Tipi pubblici ereditati da fire::source::vector::ConnectionSpatialDb
typedef
shared::ConnectionSpatialDbSh 
ConnectionSpatialDbShp
 
- Tipi pubblici ereditati da fire::source::vector::ConnectionVector
typedef shared::ConnectionVectorSh ConnectionVectorShp
 
- Tipi pubblici ereditati da fire::source::Connection
enum  paramName {
  HOST = 1, DATASOURCE = 2, USER = 3, PASSWORD = 4,
  PORT = 5
}
 
typedef std::map< int,
std::string > 
ConnectionParams
 
typedef std::vector< std::string > LayerList
 
typedef shared::ConnectionSh ConnectionShp
 
- Tipi pubblici ereditati da fire::Object
typedef boost::unique_lock
< boost::mutex > 
LockGuard
 Guardia per la sincronizzazione dell'oggetto.
 

Membri pubblici

 ConnectionQtSql ()
 Costruttore ConnectionQtSql. Continua...
 
virtual ~ConnectionQtSql ()
 Distruttore connessione.
 
virtual void beginTransaction ()
 Avvia una transazione sul DB.
 
virtual void commitTransaction ()
 Persiste sul DB la transazione corrente.
 
virtual void rollbackTransaction ()
 Effettua il rollback della transazione corrente.
 
virtual bool isValid () const
 Indica se la connessione risulta operativa. Continua...
 
virtual source::Features const getFeatures () const
 Restituisce un oggetto indicante le caratteristiche supportate da questa connessione. Continua...
 
virtual LayerList getLayers () const
 Restituisce la lista degli identificativi testuali dei livelli tematici presenti nella connessione. Continua...
 
virtual
source::vector::VectorLayerInfo::VectorLayerInfoShp 
getLayerInfo (std::string const &name) const
 Estrae le informazioni relative ad un contenitore di dati vettoriali. Continua...
 
virtual
source::vector::DataSet::DataSetShp
const 
getData (const std::string &schema, std::string const &tbl) const
 Interroga il livello tematico restituendo un cursore sui dati in sola lettura. Continua...
 
virtual
source::vector::DataSet::DataSetShp 
getData (const std::string &schema, std::string const &tbl)
 Interroga il livello tematico restituendo un cursore sui dati. Continua...
 
virtual
source::vector::DataSet::DataSetShp
const 
getData (const std::string &schema, std::string const &tbl, gear::geom::Envelope::EnvelopeShp const &rect) const
 Interroga il livello tematico restituendo un cursore sui dati. Continua...
 
virtual
source::vector::DataSet::DataSetShp 
getData (const std::string &schema, std::string const &tbl, const gear::geom::Envelope::EnvelopeShp &rect)
 Interroga il livello tematico restituendo un cursore sui dati. Continua...
 
virtual
source::vector::DataSet::DataSetShp
const 
execQuery (std::string const &sql, const source::vector::DataRow::MapSqlParam &params=source::vector::DataRow::MapSqlParam()) const
 Esegue una interrogazione restituendo un cursore sui dati. Continua...
 
virtual
source::vector::DataSet::DataSetShp 
execQuery (std::string const &sql, const source::vector::DataRow::MapSqlParam &params=source::vector::DataRow::MapSqlParam())
 Esegue una interrogazione restituendo un cursore sui dati. Continua...
 
virtual void execUpdate (std::string const &sql, const source::vector::DataRow::MapSqlParam &params)
 Esegue una interrogazione di modifica (INSERIMENTO, MODIFICA O CANCELLAZIONE) sul contenitore dei dati. Continua...
 
virtual
source::vector::VectorLayerInfo::VectorLayerInfoShp 
createTable (const source::vector::Metadata::MetadataShp &mtd, const source::vector::VectorLayerInfo::VctEnvelope &extents)
 crea una nuova tabella geografica sulla sorgente dati allineando il catalogo spaziale Continua...
 
virtual gear::geom::Geometrybuff2Geom (const QByteArray &buff) const
 
size_t getCount (const std::string &name, const std::string &schema) const
 
int getSrid (const std::string &name, const std::string &schema, const std::string &geom) const
 
virtual
source::vector::Metadata::MetadataShp 
buildMetadata (const std::string &tblName, const std::string &schemaName) const
 
source::vector::Metadata::MetadataShp buildMetadata (const std::string &sql, const source::vector::DataRow::MapSqlParam &prams) const
 
gear::geom::Envelope::EnvelopeShp getExtent (const std::string &tblName, const std::string &schemaName, const std::string &geomFld) const
 
- Membri pubblici ereditati da fire::source::vector::ConnectionSpatialDb
 ConnectionSpatialDb ()
 Costruttore oggetto.
 
 ~ConnectionSpatialDb ()
 Distruttore virtuale oggetto.
 
virtual
ConnectionType::ConnectionType 
getType () const
 Imposta l'oggetto deputato alla costruzione cross db delle interrogazioni SQL. Continua...
 
virtual void resetFromNative (OCIEnv *env, OCISvcCtx *ctx)
 resetFromNative Continua...
 
virtual void saveOrUpdate (DataRow &row)
 Salva la row sulla tabella e nella connessione dati indicata nell'istanza fire::source::vector::Metadata della row stessa. Il metodo effettua sulla sorgente dati una interrogazione per verificare la presenza/assenza della riga e decidere se effettuare un update oppura una insert. La presenza viene effettuata cercando una riga con un valore di chiave primaria uguale a quello della row. La presenza della chiave primaria è obbligatoria per concludere la chiamata con successo. Continua...
 
virtual void insert (DataRow &row)
 Inserisce una nuova riga con i parametri scritti in row all'interno della tabella che si trova nella sorgente dati indicata nell'istanza fire::source::vector::Metadata della row stessa. Continua...
 
virtual void update (DataRow &row)
 Aggiorna la riga con i parametri scritti in row. La tabella e la sorgente dati che verranno aggiornate, sono indicate nell'istanza fire::source::vector::Metadata della row stessa. Continua...
 
virtual void erase (DataRow const &row)
 Elimina dalla sorgente dati la riga indicata. Continua...
 
- Membri pubblici ereditati da fire::source::vector::ConnectionVector
 ConnectionVector ()
 Costruttore oggetto.
 
virtual ~ConnectionVector ()
 Distruttore oggetto. Nel caso fosse aperta la connessione verrà chiusa richiamando il metodo close.
 
virtual void execUpdate (std::string const &query)
 Esegue una interrogazione di modifica (INSERIMENTO, MODIFICA O CANCELLAZIONE) sul contenitore dei dati. Continua...
 
virtual
VectorLayerInfo::VectorLayerInfoShp 
createTable (const Metadata::MetadataShp &mtd)
 createTable Continua...
 
virtual void eraseTable (const std::string &schema, const std::string &tbl, const VectorLayerType::VectorLayerType vlt)=0
 Rimuove completamente una tabella dalla connessione vettoriale. Continua...
 
- Membri pubblici ereditati da fire::source::Connection
 Connection ()
 Costruttore oggetto.
 
virtual ~Connection ()
 Distruttore oggetto. Nel caso fosse aperta la connessione, essa verrà chiusa richiamando il metodo fire::data::Connection::close.
 
- Membri pubblici ereditati da fire::Object
 Object ()
 Costruttore.
 
 Object (const Object &object)
 Costruttore di copia. Continua...
 
fire::Objectoperator= (const fire::Object &object)
 Operatore di assegnamento. Continua...
 
virtual ~Object ()
 Distruttore.
 
virtual fire::Class
< fire::Object > * 
getClass () const
 Restituisce la classe dell'oggetto. Continua...
 
virtual bool equals (const Object &object) const
 Restituisce l'indicazione se l'oggetto è uguale ad un altro oggetto. Continua...
 
virtual bool operator== (const Object &object) const
 Operatore di uguaglianza. Continua...
 
std::size_t hashCode () const
 Restituisce il codice dell'oggetto. Continua...
 
void notify () const
 Notifica.
 
void notifyAll () const
 Notifica tutti.
 
virtual std::string toString () const
 Restituisce la rappresentazione alfabetica dell'oggetto. Continua...
 
void wait () const
 Aspetta.
 
void waitFor (std::size_t timeout) const
 Aspetta per un determinato tempo (in millisecondi) Continua...
 
void waitFor (std::size_t timeout, int nanos) const
 Aspetta per un determinato tempo (in millisecondi) Continua...
 
virtual bool operator< (const Object &object) const
 Operatore di minoranza. Continua...
 

Membri pubblici statici

static void qtToVal (source::vector::DataValue::DataValueShp &data, QVariant const &val, const std::string &poolName)
 Metodo statico che valorizza un DataValue. Continua...
 
static QVariant valToQt (const source::vector::DataValue::DataValueShp &val)
 Trasforma il valore in un Variant. Continua...
 
- Membri pubblici statici ereditati da fire::source::Connection
static std::string idFromParams (Connection::ConnectionParams const &params)
 Costruisceun stringa univoca basandosi sui parametri di connessione di una Connection. Continua...
 

Membri protetti

virtual void _openNoWait ()
 
virtual void _closeNoWait ()
 
virtual bool _isOpenNoWait () const
 
virtual std::string const _getTestSql () const =0
 
virtual std::string const _getQtDriverName () const =0
 
virtual bool _isGeometryNativeType (const int &id) const =0
 
virtual bool _isGeographyNativeType (const int &id) const =0
 
virtual void _configureDb (ConnectionParams const &pramas)
 
virtual void _configureDbNoWait (ConnectionParams const &pramas)
 
virtual std::string const _getBuff2GeomSql (const bool &useWkb) const =0
 
virtual std::string const _getLayersSql (const std::string &schema, const std::string &tbl) const =0
 
virtual std::string _getSridSql (const std::string &tblName, const std::string &schemaName, const std::string &geomFld) const =0
 
virtual std::string const _getLayerExtentSql (const std::string &tblName, const std::string &schemaName, const std::string &geomFld) const =0
 
virtual const std::string _getCreationFieldSql (const source::vector::Field::FieldShp &fld) const =0
 
virtual const std::string _getSpatialIndexCreationSql (const std::string &schema, const std::string &tbl, const source::vector::Field::FieldShp &fld) const =0
 
virtual const std::string _getCatalogInsertSql (const std::string &schema, const std::string &tbl, const source::vector::Field::FieldShp &fld, const gear::geom::Envelope::EnvelopeShp &extent) const =0
 
virtual const std::string _getPkSql (const std::string &tbl, const source::vector::Metadata::MetadataShp &mtd) const =0
 
QVariant _valToQt (const source::vector::DataValue::DataValueShp &val) const
 
std::string const _getConnectionIdNoWait (ConnectionParams const &cnnParams) const
 
source::vector::Metadata::MetadataShp _buildMetadata (const std::string &sql, const source::vector::DataRow::MapSqlParam &prams) const
 
QSqlDatabase _getQtDbNoWait (std::string const &name, const bool &verify=true) const
 
source::vector::Metadata::MetadataShp _recordToMetadataNoWait (QSqlRecord const &rec) const
 
int _getSridNoWait (const std::string &name, const std::string &schema, const std::string &geom) const
 
QSqlQuery _execQueryNoWait (std::string const &sql, const std::string &dbName, const source::vector::DataRow::MapSqlParam &params=source::vector::DataRow::MapSqlParam()) const
 
source::vector::DataSet::DataSetShp _execQueryNoWait (std::string const &sql, const std::string &tbl, const std::string &schema, const std::string &dbName, const source::vector::DataRow::MapSqlParam &params=source::vector::DataRow::MapSqlParam()) const
 
- Membri protetti ereditati da fire::source::vector::ConnectionSpatialDb
virtual const std::string _getSaveFieldSql (const std::string &paramName, const Field::FieldShp &fld) const
 
virtual
source::vector::DataValue::DataValueShp 
_getSaveValueSql (const source::vector::DataValue::DataValueShp &value) const
 
- Membri protetti ereditati da fire::source::Connection
ConnectionParams const & getConnectionString () const
 Restituisce i parametri usati per la connessione alla sorgente dati. Continua...
 
void open ()
 Apre la connessione alla sorgente dati

Eccezioni
fire::plugin::data::exception::ConnectionExceptionse l'apertura non viene eseguita.

 
void open (ConnectionParams const &cnnStr)
 Apre la connessione alla sorgente dati usando la stringa di connessione indicata

Eccezioni
fire::plugin::data::exception::ConnectionExceptionse l'apertura non viene eseguita.
Continua...
 
bool isOpen () const
 Indica se la connessione risulta aperta. Continua...
 
void close ()
 Chiude la connessione alla sorgente dati, rilasciando le risorse allocate.
 
virtual std::string getNamespace () const =0
 Restituisce il namespace univoco che identifica l'istanza concreta dell'oggetto Connection. Continua...
 
void setId (const std::string &pool, const std::string &id)
 Valorizza l'identificativo del fire::gis::data::ConnectionPool e delle istanza di Connection attribuiti ad essa quando viene inserita all'interno di un pool pool - valore testuale identificante il fire::gis::data::ConnectionPool in cui la connessione è inserita id - valore testuale identificante l'istanza di Connection all'interno del pool.
 
std::string getId () const
 Valore testuale identificante l'istanza di Connection all'interno del pool. Continua...
 
std::string getInstanceId () const
 Valore testuale identificante l'istanza di Connection a livello di sessione. Continua...
 
std::string getPoolId () const
 getPoolId Continua...
 
void setConnectionString (const Connection::ConnectionParams &val)
 Imposta la stringa di connessione secondo le specifiche indicate dalla implementazione concreta della connessione dati. Continua...
 
const ConnectionParams & _getConnectionStringNoWait () const
 
const std::string _readParam (ConnectionParams const &pars, unsigned int const &name) const
 Estrae un parametro per nome interpretandolo come stringa. Continua...
 
const int _readIntParam (ConnectionParams const &pars, unsigned int const &name) const
 Estrae un parametro per nome interpretandolo come intero. Continua...
 
std::string _getPoolIdNoWait () const
 
std::string _getInstanceIdNoWait () const
 
- Membri protetti ereditati da fire::Object
Objectclone () const
 Duplica l'oggetto. Continua...
 
void finalize ()
 Finalizza l'oggetto.
 

Attributi protetti

std::string _dbName
 
std::string _defaultSchema
 
- Attributi protetti ereditati da fire::source::Connection
bool _isOpen
 
fire::logging::Logger_log
 
boost::mutex _mtx
 
- Attributi protetti ereditati da fire::Object
boost::mutex mutex
 Variabile per la sincronizzazione dell'oggetto.
 

Descrizione dettagliata

Implementazione Connection per l'accesso a banche dati spaziali basato su QtSql.

Documentazione dei costruttori e dei distruttori

fire::connection::qt::ConnectionQtSql::ConnectionQtSql ( )

Costruttore ConnectionQtSql.

Parametri
group- Valore testuale identificante il gruppo del pool

Documentazione delle funzioni membro

virtual source::vector::VectorLayerInfo::VectorLayerInfoShp fire::connection::qt::ConnectionQtSql::createTable ( const source::vector::Metadata::MetadataShp mtd,
const source::vector::VectorLayerInfo::VctEnvelope &  extents 
)
virtual

crea una nuova tabella geografica sulla sorgente dati allineando il catalogo spaziale

Parametri
mtd- istanza condivisa di fire::source::vector::Metadata descrivente la struttura del livello da creare
extents- lista eventualmente vuota degli ingombri delle colonne geografiche presenti nei metadati
Restituisce
istanza di fire::source::vector::VectorLayerInfo che descrive il nuovo livello creato

Implementa fire::source::vector::ConnectionVector.

virtual source::vector::DataSet::DataSetShp const fire::connection::qt::ConnectionQtSql::execQuery ( std::string const &  query,
const source::vector::DataRow::MapSqlParam params = source::vector::DataRow::MapSqlParam() 
) const
virtual

Esegue una interrogazione restituendo un cursore sui dati.

Parametri
query- valore testuale con il testo SQL da eseguire
Restituisce
puntatore condiviso in sola lettura su un oggetto DataSet

Implementa fire::source::vector::ConnectionVector.

virtual source::vector::DataSet::DataSetShp fire::connection::qt::ConnectionQtSql::execQuery ( std::string const &  query,
const source::vector::DataRow::MapSqlParam params = source::vector::DataRow::MapSqlParam() 
)
virtual

Esegue una interrogazione restituendo un cursore sui dati.

Parametri
query- valore testuale con il testo SQL da eseguire
Restituisce
puntatore condiviso su un oggetto DataSet

Implementa fire::source::vector::ConnectionVector.

virtual void fire::connection::qt::ConnectionQtSql::execUpdate ( std::string const &  query,
const source::vector::DataRow::MapSqlParam params 
)
virtual

Esegue una interrogazione di modifica (INSERIMENTO, MODIFICA O CANCELLAZIONE) sul contenitore dei dati.

Parametri
query- valore testuale con il testo SQL da eseguire
params- Mappa di coppie std::string, fire::source::vector::DataValue::DataValueShp
Restituisce
valore booleano true se e solo se l'esecuzione del comando si è conclusa con successo

Implementa fire::source::vector::ConnectionVector.

virtual source::vector::DataSet::DataSetShp const fire::connection::qt::ConnectionQtSql::getData ( const std::string &  schema,
std::string const &  tbl 
) const
virtual

Interroga il livello tematico restituendo un cursore sui dati in sola lettura.

Parametri
tbl- valore testuale con il nome del livello tematico di interesse
Restituisce
puntatore condiviso in sola lettura su un oggetto DataSet

Implementa fire::source::vector::ConnectionVector.

virtual source::vector::DataSet::DataSetShp fire::connection::qt::ConnectionQtSql::getData ( const std::string &  schema,
std::string const &  tbl 
)
virtual

Interroga il livello tematico restituendo un cursore sui dati.

Parametri
tbl- valore testuale con il nome del livello tematico di interesse
Restituisce
puntatore condiviso su un oggetto DataSet

Implementa fire::source::vector::ConnectionVector.

virtual source::vector::DataSet::DataSetShp const fire::connection::qt::ConnectionQtSql::getData ( const std::string &  schema,
std::string const &  tbl,
gear::geom::Envelope::EnvelopeShp const &  rect 
) const
virtual

Interroga il livello tematico restituendo un cursore sui dati.

Parametri
tbl- valore testuale con il nome del livello tematico di interesse
rect- Riferimento al rettangolo di interesse. Saranno estratti dalla sorgente dati, solo gli elementi che hanno uno dei campi geometrici che ha intersezione non vuota con il rettangolo di interesse
Restituisce
puntatore condiviso in sola lettura su un oggetto DataSet

Implementa fire::source::vector::ConnectionVector.

virtual source::vector::DataSet::DataSetShp fire::connection::qt::ConnectionQtSql::getData ( const std::string &  schema,
std::string const &  tbl,
const gear::geom::Envelope::EnvelopeShp rect 
)
virtual

Interroga il livello tematico restituendo un cursore sui dati.

Parametri
tbl- valore testuale con il nome del livello tematico di interesse
rect- Riferimento al rettangolo di interesse. Saranno estratti dalla sorgente dati, solo gli elementi che hanno uno dei campi geometrici che ha intersezione non vuota con il rettangolo di interesse
Restituisce
puntatore condiviso su un oggetto DataSet

Implementa fire::source::vector::ConnectionVector.

virtual source::Features const fire::connection::qt::ConnectionQtSql::getFeatures ( ) const
virtual

Restituisce un oggetto indicante le caratteristiche supportate da questa connessione.

Restituisce
Istanza di fire::source::Features

Implementa fire::source::Connection.

virtual source::vector::VectorLayerInfo::VectorLayerInfoShp fire::connection::qt::ConnectionQtSql::getLayerInfo ( std::string const &  name) const
virtual

Estrae le informazioni relative ad un contenitore di dati vettoriali.

Parametri
name- valore testuale che identifica il livello tematico di interesse
Restituisce
un puntatore condiviso ad un oggetto VectorLayerInfo

Implementa fire::source::vector::ConnectionVector.

virtual LayerList fire::connection::qt::ConnectionQtSql::getLayers ( ) const
virtual

Restituisce la lista degli identificativi testuali dei livelli tematici presenti nella connessione.

Restituisce
lista di stringhe modellate da fire::data::Connection::LayerList

Implementa fire::source::Connection.

virtual bool fire::connection::qt::ConnectionQtSql::isValid ( ) const
virtual

Indica se la connessione risulta operativa.

Restituisce
Valore booleano true, se e solo se la connessione risulta operativa.

Implementa fire::source::Connection.

static void fire::connection::qt::ConnectionQtSql::qtToVal ( source::vector::DataValue::DataValueShp data,
QVariant const &  val,
const std::string &  poolName 
)
static

Metodo statico che valorizza un DataValue.

Parametri
data- Istanza condivisa fire::source::vector::DataValue da riempire
val- oggetto da cui leggere il valore
poolName- identificativo del pool da cui reperire l'istanza di connessione
static QVariant fire::connection::qt::ConnectionQtSql::valToQt ( const source::vector::DataValue::DataValueShp val)
static

Trasforma il valore in un Variant.

Parametri
val- istanza condivisa di fire::source::vector::DataValue
Restituisce
il Variant contenete il valore passato

La documentazione per questa classe è stata generata a partire dal seguente file: