QGIS API Documentation
2.2.0-Valmiera
|
Class for storing the component parts of a PostgreSQL/RDBMS datasource URI. More...
#include <qgsdatasourceuri.h>
Public Types | |
enum | SSLmode { SSLprefer, SSLdisable, SSLallow, SSLrequire } |
Public Member Functions | |
QgsDataSourceURI () | |
default constructor | |
QgsDataSourceURI (QString uri) | |
constructor which parses input URI | |
QgsDataSourceURI (const QByteArray &uri) | |
constructor which parses input encoded URI (generic mode) | |
QString | connectionInfo () const |
return connection part of URI | |
QString | uri () const |
return complete uri | |
QByteArray | encodedUri () const |
return complete encoded uri (generic mode) | |
void | setEncodedUri (const QByteArray &uri) |
set complete encoded uri (generic mode) | |
void | setEncodedUri (const QString &uri) |
set complete encoded uri (generic mode) | |
QString | quotedTablename () const |
quoted table name | |
void | setParam (const QString &key, const QString &value) |
Set generic param (generic mode) | |
void | setParam (const QString &key, const QStringList &value) |
int | removeParam (const QString &key) |
Remove generic param (generic mode) | |
QString | param (const QString &key) const |
Get generic param (generic mode) | |
QStringList | params (const QString &key) const |
Get multiple generic param (generic mode) | |
bool | hasParam (const QString &key) const |
Test if param exists (generic mode) | |
void | setConnection (const QString &aHost, const QString &aPort, const QString &aDatabase, const QString &aUsername, const QString &aPassword, SSLmode sslmode=SSLprefer) |
Set all connection related members at once. | |
void | setConnection (const QString &aService, const QString &aDatabase, const QString &aUsername, const QString &aPassword, SSLmode sslmode=SSLprefer) |
Set all connection related members at once (for the service case) | |
void | setDatabase (const QString &database) |
Set database. | |
void | setDataSource (const QString &aSchema, const QString &aTable, const QString &aGeometryColumn, const QString &aSql=QString(), const QString &aKeyColumn=QString()) |
Set all data source related members at once. | |
void | setUsername (QString username) |
set username | |
void | setPassword (QString password) |
set password | |
QString | username () const |
QString | schema () const |
QString | table () const |
QString | sql () const |
QString | geometryColumn () const |
void | setUseEstimatedMetadata (bool theFlag) |
set use Estimated Metadata | |
bool | useEstimatedMetadata () const |
void | disableSelectAtId (bool theFlag) |
bool | selectAtIdDisabled () const |
void | clearSchema () |
void | setSql (QString sql) |
QString | host () const |
QString | database () const |
QString | port () const |
QString | password () const |
enum SSLmode | sslMode () const |
QString | service () const |
QString | keyColumn () const |
void | setKeyColumn (QString column) |
QGis::WkbType | wkbType () const |
void | setWkbType (QGis::WkbType type) |
QString | srid () const |
void | setSrid (QString srid) |
Static Public Member Functions | |
static QString | removePassword (const QString &aUri) |
Removes password element from uris. |
Private Member Functions | |
void | skipBlanks (const QString &uri, int &i) |
QString | getValue (const QString &uri, int &i) |
QString | escape (const QString &uri, QChar delim) const |
Private Attributes | |
QString | mHost |
host name | |
QString | mPort |
port the database server listens on | |
QString | mService |
service name | |
QString | mDatabase |
database name | |
QString | mSchema |
schema | |
QString | mTable |
spatial table | |
QString | mGeometryColumn |
geometry column | |
QString | mSql |
SQL query or where clause used to limit features returned from the layer. | |
QString | mUsername |
username | |
QString | mPassword |
password | |
enum SSLmode | mSSLmode |
ssl mode | |
QString | mKeyColumn |
key column | |
bool | mUseEstimatedMetadata |
Use estimated metadata flag. | |
bool | mSelectAtIdDisabled |
Disable SelectAtId capability (eg. to trigger the attribute table memory model for expensive views) | |
QGis::WkbType | mWkbType |
geometry type (or QGis::WKBUnknown if not specified) | |
QString | mSrid |
SRID or a null string if not specified. | |
QMap< QString, QString > | mParams |
Generic params store. |
Class for storing the component parts of a PostgreSQL/RDBMS datasource URI.
This structure stores the database connection information, including host, database, user name, password, schema, password, and sql where clause
Extended to support generic params so that it may be used by any provider. The 2 modes (the old - RDMS specific and the new generic) may not yet be mixed. (Radim Blazek 4/2012)
Definition at line 35 of file qgsdatasourceuri.h.
Definition at line 39 of file qgsdatasourceuri.h.
QgsDataSourceURI::QgsDataSourceURI | ( | ) |
default constructor
Definition at line 26 of file qgsdatasourceuri.cpp.
QgsDataSourceURI::QgsDataSourceURI | ( | QString | uri | ) |
constructor which parses input URI
Definition at line 36 of file qgsdatasourceuri.cpp.
References getValue(), mDatabase, mGeometryColumn, mHost, mKeyColumn, mPassword, mPort, mSchema, mSelectAtIdDisabled, mService, mSql, mSrid, mSSLmode, mTable, mUseEstimatedMetadata, mUsername, mWkbType, QgsDebugMsg, skipBlanks(), SSLallow, SSLdisable, SSLprefer, SSLrequire, QGis::WKBLineString, QGis::WKBMultiLineString, QGis::WKBMultiPoint, QGis::WKBMultiPolygon, QGis::WKBPoint, QGis::WKBPolygon, and QGis::WKBUnknown.
QgsDataSourceURI::QgsDataSourceURI | ( | const QByteArray & | uri | ) |
constructor which parses input encoded URI (generic mode)
void QgsDataSourceURI::clearSchema | ( | ) |
Definition at line 384 of file qgsdatasourceuri.cpp.
References mSchema.
QString QgsDataSourceURI::connectionInfo | ( | ) | const |
return connection part of URI
Definition at line 473 of file qgsdatasourceuri.cpp.
References escape(), mDatabase, mHost, mPassword, mPort, mService, mSSLmode, mUsername, SSLallow, SSLdisable, SSLprefer, and SSLrequire.
Referenced by uri().
QString QgsDataSourceURI::database | ( | ) | const |
Definition at line 303 of file qgsdatasourceuri.cpp.
References mDatabase.
Referenced by QgsVectorLayer::loadNamedStyle(), QgsMapLayer::readLayerXML(), setConnection(), setDatabase(), and QgsMapLayer::writeLayerXML().
void QgsDataSourceURI::disableSelectAtId | ( | bool | theFlag | ) |
Definition at line 369 of file qgsdatasourceuri.cpp.
References mSelectAtIdDisabled.
QByteArray QgsDataSourceURI::encodedUri | ( | ) | const |
return complete encoded uri (generic mode)
Definition at line 605 of file qgsdatasourceuri.cpp.
References mParams.
Referenced by QgsMapLayer::readLayerXML(), and QgsRasterLayer::readXml().
|
private |
Definition at line 389 of file qgsdatasourceuri.cpp.
Referenced by connectionInfo(), quotedTablename(), and uri().
QString QgsDataSourceURI::geometryColumn | ( | ) | const |
Definition at line 343 of file qgsdatasourceuri.cpp.
References mGeometryColumn.
Referenced by setDataSource().
|
private |
Definition at line 406 of file qgsdatasourceuri.cpp.
References QgsDebugMsg, and skipBlanks().
Referenced by QgsDataSourceURI().
bool QgsDataSourceURI::hasParam | ( | const QString & | key | ) | const |
Test if param exists (generic mode)
Definition at line 741 of file qgsdatasourceuri.cpp.
References mParams.
QString QgsDataSourceURI::host | ( | ) | const |
Definition at line 298 of file qgsdatasourceuri.cpp.
References mHost.
Referenced by setConnection(), and QgsMapLayer::writeLayerXML().
QString QgsDataSourceURI::keyColumn | ( | ) | const |
Definition at line 348 of file qgsdatasourceuri.cpp.
References mKeyColumn.
Referenced by setDataSource().
QString QgsDataSourceURI::param | ( | const QString & | key | ) | const |
Get generic param (generic mode)
Definition at line 731 of file qgsdatasourceuri.cpp.
References mParams.
QStringList QgsDataSourceURI::params | ( | const QString & | key | ) | const |
Get multiple generic param (generic mode)
Definition at line 736 of file qgsdatasourceuri.cpp.
References mParams.
QString QgsDataSourceURI::password | ( | ) | const |
Definition at line 308 of file qgsdatasourceuri.cpp.
References mPassword.
Referenced by setConnection(), setPassword(), and QgsMapLayer::writeLayerXML().
QString QgsDataSourceURI::port | ( | ) | const |
Definition at line 318 of file qgsdatasourceuri.cpp.
References mPort.
Referenced by setConnection(), and QgsMapLayer::writeLayerXML().
QString QgsDataSourceURI::quotedTablename | ( | ) | const |
int QgsDataSourceURI::removeParam | ( | const QString & | key | ) |
Remove generic param (generic mode)
Definition at line 726 of file qgsdatasourceuri.cpp.
References mParams.
|
static |
Removes password element from uris.
Definition at line 249 of file qgsdatasourceuri.cpp.
Referenced by QgsMapLayer::publicSource().
QString QgsDataSourceURI::schema | ( | ) | const |
Definition at line 328 of file qgsdatasourceuri.cpp.
References mSchema.
Referenced by setDataSource().
bool QgsDataSourceURI::selectAtIdDisabled | ( | ) | const |
Definition at line 374 of file qgsdatasourceuri.cpp.
References mSelectAtIdDisabled.
QString QgsDataSourceURI::service | ( | ) | const |
Definition at line 293 of file qgsdatasourceuri.cpp.
References mService.
Referenced by setConnection().
void QgsDataSourceURI::setConnection | ( | const QString & | aHost, |
const QString & | aPort, | ||
const QString & | aDatabase, | ||
const QString & | aUsername, | ||
const QString & | aPassword, | ||
SSLmode | sslmode = SSLprefer |
||
) |
Set all connection related members at once.
Definition at line 646 of file qgsdatasourceuri.cpp.
References database(), host(), mDatabase, mHost, mPassword, mPort, mSSLmode, mUsername, password(), port(), and username().
Referenced by QgsMapLayer::writeLayerXML().
void QgsDataSourceURI::setConnection | ( | const QString & | aService, |
const QString & | aDatabase, | ||
const QString & | aUsername, | ||
const QString & | aPassword, | ||
SSLmode | sslmode = SSLprefer |
||
) |
Set all connection related members at once (for the service case)
Definition at line 661 of file qgsdatasourceuri.cpp.
References database(), mDatabase, mPassword, mService, mSSLmode, mUsername, password(), service(), and username().
void QgsDataSourceURI::setDatabase | ( | const QString & | database | ) |
Set database.
Definition at line 687 of file qgsdatasourceuri.cpp.
References database(), and mDatabase.
Referenced by QgsProject::createEmbeddedLayer(), and QgsMapLayer::readLayerXML().
void QgsDataSourceURI::setDataSource | ( | const QString & | aSchema, |
const QString & | aTable, | ||
const QString & | aGeometryColumn, | ||
const QString & | aSql = QString() , |
||
const QString & | aKeyColumn = QString() |
||
) |
Set all data source related members at once.
Definition at line 674 of file qgsdatasourceuri.cpp.
References geometryColumn(), keyColumn(), mGeometryColumn, mKeyColumn, mSchema, mSql, mTable, schema(), sql(), and table().
void QgsDataSourceURI::setEncodedUri | ( | const QByteArray & | uri | ) |
set complete encoded uri (generic mode)
Definition at line 618 of file qgsdatasourceuri.cpp.
References mParams.
Referenced by QgsRasterLayer::readXml(), and setEncodedUri().
void QgsDataSourceURI::setEncodedUri | ( | const QString & | uri | ) |
set complete encoded uri (generic mode)
Definition at line 630 of file qgsdatasourceuri.cpp.
References setEncodedUri().
void QgsDataSourceURI::setKeyColumn | ( | QString | column | ) |
Definition at line 353 of file qgsdatasourceuri.cpp.
References mKeyColumn.
void QgsDataSourceURI::setParam | ( | const QString & | key, |
const QString & | value | ||
) |
Set generic param (generic mode)
Definition at line 712 of file qgsdatasourceuri.cpp.
References mParams.
Referenced by QgsOWSConnection::QgsOWSConnection(), QgsMapLayer::readLayerXML(), and QgsRasterLayer::readXml().
void QgsDataSourceURI::setParam | ( | const QString & | key, |
const QStringList & | value | ||
) |
Definition at line 718 of file qgsdatasourceuri.cpp.
References mParams.
void QgsDataSourceURI::setPassword | ( | QString | password | ) |
set password
Definition at line 313 of file qgsdatasourceuri.cpp.
References mPassword, and password().
void QgsDataSourceURI::setSql | ( | QString | sql | ) |
Definition at line 379 of file qgsdatasourceuri.cpp.
void QgsDataSourceURI::setSrid | ( | QString | srid | ) |
Definition at line 707 of file qgsdatasourceuri.cpp.
void QgsDataSourceURI::setUseEstimatedMetadata | ( | bool | theFlag | ) |
set use Estimated Metadata
Definition at line 359 of file qgsdatasourceuri.cpp.
References mUseEstimatedMetadata.
void QgsDataSourceURI::setUsername | ( | QString | username | ) |
set username
Definition at line 288 of file qgsdatasourceuri.cpp.
References mUsername, and username().
void QgsDataSourceURI::setWkbType | ( | QGis::WkbType | type | ) |
Definition at line 697 of file qgsdatasourceuri.cpp.
|
private |
Definition at line 399 of file qgsdatasourceuri.cpp.
Referenced by getValue(), and QgsDataSourceURI().
QString QgsDataSourceURI::sql | ( | ) | const |
Definition at line 338 of file qgsdatasourceuri.cpp.
References mSql.
Referenced by setDataSource(), and setSql().
QString QgsDataSourceURI::srid | ( | ) | const |
QgsDataSourceURI::SSLmode QgsDataSourceURI::sslMode | ( | ) | const |
Definition at line 323 of file qgsdatasourceuri.cpp.
References mSSLmode.
QString QgsDataSourceURI::table | ( | ) | const |
Definition at line 333 of file qgsdatasourceuri.cpp.
References mTable.
Referenced by QgsOfflineEditing::committedFeaturesAdded(), and setDataSource().
QString QgsDataSourceURI::uri | ( | ) | const |
return complete uri
Definition at line 521 of file qgsdatasourceuri.cpp.
References connectionInfo(), escape(), mGeometryColumn, mKeyColumn, mSelectAtIdDisabled, mSql, mSrid, mUseEstimatedMetadata, mWkbType, quotedTablename(), QGis::WKBLineString, QGis::WKBLineString25D, QGis::WKBMultiLineString, QGis::WKBMultiLineString25D, QGis::WKBMultiPoint, QGis::WKBMultiPoint25D, QGis::WKBMultiPolygon, QGis::WKBMultiPolygon25D, QGis::WKBNoGeometry, QGis::WKBPoint, QGis::WKBPoint25D, QGis::WKBPolygon, QGis::WKBPolygon25D, and QGis::WKBUnknown.
Referenced by QgsOWSSourceSelect::on_mConnectButton_clicked(), QgsMapLayer::readLayerXML(), and QgsMapLayer::writeLayerXML().
bool QgsDataSourceURI::useEstimatedMetadata | ( | ) | const |
Definition at line 364 of file qgsdatasourceuri.cpp.
References mUseEstimatedMetadata.
QString QgsDataSourceURI::username | ( | ) | const |
Definition at line 283 of file qgsdatasourceuri.cpp.
References mUsername.
Referenced by setConnection(), setUsername(), and QgsMapLayer::writeLayerXML().
QGis::WkbType QgsDataSourceURI::wkbType | ( | ) | const |
Definition at line 692 of file qgsdatasourceuri.cpp.
References mWkbType.
Referenced by setWkbType().
|
private |
database name
Definition at line 188 of file qgsdatasourceuri.h.
Referenced by connectionInfo(), database(), QgsDataSourceURI(), setConnection(), and setDatabase().
|
private |
geometry column
Definition at line 194 of file qgsdatasourceuri.h.
Referenced by geometryColumn(), QgsDataSourceURI(), setDataSource(), and uri().
|
private |
host name
Definition at line 182 of file qgsdatasourceuri.h.
Referenced by connectionInfo(), host(), QgsDataSourceURI(), and setConnection().
|
private |
key column
Definition at line 204 of file qgsdatasourceuri.h.
Referenced by keyColumn(), QgsDataSourceURI(), setDataSource(), setKeyColumn(), and uri().
|
private |
Generic params store.
Definition at line 214 of file qgsdatasourceuri.h.
Referenced by encodedUri(), hasParam(), param(), params(), removeParam(), setEncodedUri(), and setParam().
|
private |
password
Definition at line 200 of file qgsdatasourceuri.h.
Referenced by connectionInfo(), password(), QgsDataSourceURI(), setConnection(), and setPassword().
|
private |
port the database server listens on
Definition at line 184 of file qgsdatasourceuri.h.
Referenced by connectionInfo(), port(), QgsDataSourceURI(), and setConnection().
|
private |
schema
Definition at line 190 of file qgsdatasourceuri.h.
Referenced by clearSchema(), QgsDataSourceURI(), quotedTablename(), schema(), and setDataSource().
|
private |
Disable SelectAtId capability (eg. to trigger the attribute table memory model for expensive views)
Definition at line 208 of file qgsdatasourceuri.h.
Referenced by disableSelectAtId(), QgsDataSourceURI(), selectAtIdDisabled(), and uri().
|
private |
service name
Definition at line 186 of file qgsdatasourceuri.h.
Referenced by connectionInfo(), QgsDataSourceURI(), service(), and setConnection().
|
private |
SQL query or where clause used to limit features returned from the layer.
Definition at line 196 of file qgsdatasourceuri.h.
Referenced by QgsDataSourceURI(), setDataSource(), setSql(), sql(), and uri().
|
private |
SRID or a null string if not specified.
Definition at line 212 of file qgsdatasourceuri.h.
Referenced by QgsDataSourceURI(), setSrid(), srid(), and uri().
|
private |
ssl mode
Definition at line 202 of file qgsdatasourceuri.h.
Referenced by connectionInfo(), QgsDataSourceURI(), setConnection(), and sslMode().
|
private |
spatial table
Definition at line 192 of file qgsdatasourceuri.h.
Referenced by QgsDataSourceURI(), quotedTablename(), setDataSource(), and table().
|
private |
Use estimated metadata flag.
Definition at line 206 of file qgsdatasourceuri.h.
Referenced by QgsDataSourceURI(), setUseEstimatedMetadata(), uri(), and useEstimatedMetadata().
|
private |
username
Definition at line 198 of file qgsdatasourceuri.h.
Referenced by connectionInfo(), QgsDataSourceURI(), setConnection(), setUsername(), and username().
|
private |
geometry type (or QGis::WKBUnknown if not specified)
Definition at line 210 of file qgsdatasourceuri.h.
Referenced by QgsDataSourceURI(), setWkbType(), uri(), and wkbType().