QGIS API Documentation  3.9.0-Master (3ff8ca5736)
Public Types | Public Member Functions | Static Public Member Functions | List of all members
QgsDataSourceUri Class Reference

Class for storing the component parts of a RDBMS data source URI (e.g. More...

#include <qgsdatasourceuri.h>

Public Types

enum  SslMode {
  SslPrefer, SslDisable, SslAllow, SslRequire,
  SslVerifyCa, SslVerifyFull
}
 Available SSQL connection modes. More...
 

Public Member Functions

 QgsDataSourceUri ()
 
 QgsDataSourceUri (const QString &uri)
 Constructor for QgsDataSourceUri which parses an input uri string. More...
 
 QgsDataSourceUri (const QByteArray &uri)
 Constructor for QgsDataSourceUri which parses an input encoded uri). More...
 
QString authConfigId () const
 Returns any associated authentication configuration ID stored in the URI. More...
 
void clearSchema ()
 Clears the schema stored in the URI. More...
 
QString connectionInfo (bool expandAuthConfig=true) const
 Returns the connection part of the URI. More...
 
QString database () const
 Returns the database name stored in the URI. More...
 
void disableSelectAtId (bool flag)
 Set to true to disable selection by feature ID. More...
 
QString driver () const
 Returns the driver name stored in the URI. More...
 
QByteArray encodedUri () const
 Returns the complete encoded URI as a byte array. More...
 
QString geometryColumn () const
 Returns the name of the geometry column stored in the URI, if set. More...
 
bool hasParam (const QString &key) const
 Returns true if a parameter with the specified key exists. More...
 
QString host () const
 Returns the host name stored in the URI. More...
 
QString keyColumn () const
 Returns the name of the (primary) key column for the referenced table. More...
 
QString param (const QString &key) const
 Returns a generic parameter value corresponding to the specified key. More...
 
QStringList params (const QString &key) const
 Returns multiple generic parameter values corresponding to the specified key. More...
 
QString password () const
 Returns the password stored in the URI. More...
 
QString port () const
 Returns the port stored in the URI. More...
 
QString quotedTablename () const
 Returns the URI's table name, escaped and quoted. More...
 
int removeParam (const QString &key)
 Removes a generic parameter by key. More...
 
QString schema () const
 Returns the schema stored in the URI. More...
 
bool selectAtIdDisabled () const
 Returns whether the selection by feature ID is disabled. More...
 
QString service () const
 Returns the service name associated with the URI. More...
 
void setAuthConfigId (const QString &authcfg)
 Sets the authentication configuration ID for the URI. More...
 
void setConnection (const QString &aHost, const QString &aPort, const QString &aDatabase, const QString &aUsername, const QString &aPassword, SslMode sslmode=SslPrefer, const QString &authConfigId=QString())
 Sets all connection related members at once. More...
 
void setConnection (const QString &aService, const QString &aDatabase, const QString &aUsername, const QString &aPassword, SslMode sslmode=SslPrefer, const QString &authConfigId=QString())
 Sets all connection related members at once (for a service case). More...
 
void setDatabase (const QString &database)
 Sets the URI database name. More...
 
void setDataSource (const QString &aSchema, const QString &aTable, const QString &aGeometryColumn, const QString &aSql=QString(), const QString &aKeyColumn=QString())
 Sets all data source related members at once. More...
 
void setDriver (const QString &driver)
 Sets the driver name stored in the URI. More...
 
void setEncodedUri (const QByteArray &uri)
 Sets the complete encoded uri. More...
 
void setEncodedUri (const QString &uri)
 Sets the complete encoded uri from a string value. More...
 
void setGeometryColumn (const QString &geometryColumn)
 Sets geometry column name to geometryColumn. More...
 
void setKeyColumn (const QString &column)
 Sets the name of the (primary) key column. More...
 
void setParam (const QString &key, const QString &value)
 Sets a generic parameter value on the URI. More...
 
void setParam (const QString &key, const QStringList &value)
 Sets a generic parameter list value on the URI. More...
 
void setPassword (const QString &password)
 Sets the password for the URI. More...
 
void setSchema (const QString &schema)
 Sets the scheme for the URI. More...
 
void setSql (const QString &sql)
 Sets the SQL query for the URI. More...
 
void setSrid (const QString &srid)
 Sets the spatial reference ID associated with the URI. More...
 
void setTable (const QString &table)
 Sets table to table. More...
 
void setUseEstimatedMetadata (bool flag)
 Sets whether estimated metadata should be used for the connection. More...
 
void setUsername (const QString &username)
 Sets the username for the URI. More...
 
void setWkbType (QgsWkbTypes::Type type)
 Sets the WKB type associated with the URI. More...
 
QString sql () const
 Returns the SQL query stored in the URI, if set. More...
 
QString srid () const
 Returns the spatial reference ID associated with the URI. More...
 
SslMode sslMode () const
 Returns the SSL mode associated with the URI. More...
 
QString table () const
 Returns the table name stored in the URI. More...
 
QString uri (bool expandAuthConfig=true) const
 Returns the complete URI as a string. More...
 
bool useEstimatedMetadata () const
 Returns true if estimated metadata should be used for the connection. More...
 
QString username () const
 Returns the username stored in the URI. More...
 
QgsWkbTypes::Type wkbType () const
 Returns the WKB type associated with the URI. More...
 

Static Public Member Functions

static SslMode decodeSslMode (const QString &sslMode)
 Decodes SSL mode string into enum value. More...
 
static QString encodeSslMode (SslMode sslMode)
 Encodes SSL mode enum value into a string. More...
 
static QString removePassword (const QString &aUri)
 Removes the password element from a URI. More...
 

Detailed Description

Class for storing the component parts of a RDBMS data source URI (e.g.

a Postgres data source).

This structure stores the database connection information, including host, database, user name, password, schema, password, and SQL where clause.

Definition at line 35 of file qgsdatasourceuri.h.

Member Enumeration Documentation

◆ SslMode

Available SSQL connection modes.

Enumerator
SslPrefer 
SslDisable 
SslAllow 
SslRequire 
SslVerifyCa 
SslVerifyFull 

Definition at line 43 of file qgsdatasourceuri.h.

Constructor & Destructor Documentation

◆ QgsDataSourceUri() [1/3]

QgsDataSourceUri::QgsDataSourceUri ( )

Definition at line 29 of file qgsdatasourceuri.cpp.

◆ QgsDataSourceUri() [2/3]

QgsDataSourceUri::QgsDataSourceUri ( const QString &  uri)

Constructor for QgsDataSourceUri which parses an input uri string.

Definition at line 34 of file qgsdatasourceuri.cpp.

◆ QgsDataSourceUri() [3/3]

QgsDataSourceUri::QgsDataSourceUri ( const QByteArray &  uri)

Constructor for QgsDataSourceUri which parses an input encoded uri).

Note
not available in Python bindings

Member Function Documentation

◆ authConfigId()

QString QgsDataSourceUri::authConfigId ( ) const

Returns any associated authentication configuration ID stored in the URI.

Definition at line 250 of file qgsdatasourceuri.cpp.

◆ clearSchema()

void QgsDataSourceUri::clearSchema ( )

Clears the schema stored in the URI.

Definition at line 368 of file qgsdatasourceuri.cpp.

◆ connectionInfo()

QString QgsDataSourceUri::connectionInfo ( bool  expandAuthConfig = true) const

Returns the connection part of the URI.

Definition at line 472 of file qgsdatasourceuri.cpp.

◆ database()

QString QgsDataSourceUri::database ( ) const

Returns the database name stored in the URI.

Definition at line 275 of file qgsdatasourceuri.cpp.

◆ decodeSslMode()

QgsDataSourceUri::SslMode QgsDataSourceUri::decodeSslMode ( const QString &  sslMode)
static

Decodes SSL mode string into enum value.

If the string is not recognized, SslPrefer is returned.

Since
QGIS 3.2

Definition at line 701 of file qgsdatasourceuri.cpp.

◆ disableSelectAtId()

void QgsDataSourceUri::disableSelectAtId ( bool  flag)

Set to true to disable selection by feature ID.

Definition at line 353 of file qgsdatasourceuri.cpp.

◆ driver()

QString QgsDataSourceUri::driver ( ) const

Returns the driver name stored in the URI.

Since
QGIS 2.16

Definition at line 295 of file qgsdatasourceuri.cpp.

◆ encodedUri()

QByteArray QgsDataSourceUri::encodedUri ( ) const

Returns the complete encoded URI as a byte array.

Definition at line 587 of file qgsdatasourceuri.cpp.

◆ encodeSslMode()

QString QgsDataSourceUri::encodeSslMode ( QgsDataSourceUri::SslMode  sslMode)
static

Encodes SSL mode enum value into a string.

Since
QGIS 3.2

Definition at line 719 of file qgsdatasourceuri.cpp.

◆ geometryColumn()

QString QgsDataSourceUri::geometryColumn ( ) const

Returns the name of the geometry column stored in the URI, if set.

Definition at line 320 of file qgsdatasourceuri.cpp.

◆ hasParam()

bool QgsDataSourceUri::hasParam ( const QString &  key) const

Returns true if a parameter with the specified key exists.

Definition at line 763 of file qgsdatasourceuri.cpp.

◆ host()

QString QgsDataSourceUri::host ( ) const

Returns the host name stored in the URI.

Definition at line 270 of file qgsdatasourceuri.cpp.

◆ keyColumn()

QString QgsDataSourceUri::keyColumn ( ) const

Returns the name of the (primary) key column for the referenced table.

Definition at line 325 of file qgsdatasourceuri.cpp.

◆ param()

QString QgsDataSourceUri::param ( const QString &  key) const

Returns a generic parameter value corresponding to the specified key.

Definition at line 753 of file qgsdatasourceuri.cpp.

◆ params()

QStringList QgsDataSourceUri::params ( const QString &  key) const

Returns multiple generic parameter values corresponding to the specified key.

Definition at line 758 of file qgsdatasourceuri.cpp.

◆ password()

QString QgsDataSourceUri::password ( ) const

Returns the password stored in the URI.

Definition at line 280 of file qgsdatasourceuri.cpp.

◆ port()

QString QgsDataSourceUri::port ( ) const

Returns the port stored in the URI.

Definition at line 290 of file qgsdatasourceuri.cpp.

◆ quotedTablename()

QString QgsDataSourceUri::quotedTablename ( ) const

Returns the URI's table name, escaped and quoted.

Definition at line 615 of file qgsdatasourceuri.cpp.

◆ removeParam()

int QgsDataSourceUri::removeParam ( const QString &  key)

Removes a generic parameter by key.

Note
Calling this method removes all the occurrences of key, and returns the number of parameters removed.

Definition at line 748 of file qgsdatasourceuri.cpp.

◆ removePassword()

QString QgsDataSourceUri::removePassword ( const QString &  aUri)
static

Removes the password element from a URI.

Definition at line 216 of file qgsdatasourceuri.cpp.

◆ schema()

QString QgsDataSourceUri::schema ( ) const

Returns the schema stored in the URI.

Definition at line 305 of file qgsdatasourceuri.cpp.

◆ selectAtIdDisabled()

bool QgsDataSourceUri::selectAtIdDisabled ( ) const

Returns whether the selection by feature ID is disabled.

Definition at line 358 of file qgsdatasourceuri.cpp.

◆ service()

QString QgsDataSourceUri::service ( ) const

Returns the service name associated with the URI.

Definition at line 265 of file qgsdatasourceuri.cpp.

◆ setAuthConfigId()

void QgsDataSourceUri::setAuthConfigId ( const QString &  authcfg)

Sets the authentication configuration ID for the URI.

Definition at line 671 of file qgsdatasourceuri.cpp.

◆ setConnection() [1/2]

void QgsDataSourceUri::setConnection ( const QString &  aHost,
const QString &  aPort,
const QString &  aDatabase,
const QString &  aUsername,
const QString &  aPassword,
SslMode  sslmode = SslPrefer,
const QString &  authConfigId = QString() 
)

Sets all connection related members at once.

Definition at line 626 of file qgsdatasourceuri.cpp.

◆ setConnection() [2/2]

void QgsDataSourceUri::setConnection ( const QString &  aService,
const QString &  aDatabase,
const QString &  aUsername,
const QString &  aPassword,
SslMode  sslmode = SslPrefer,
const QString &  authConfigId = QString() 
)

Sets all connection related members at once (for a service case).

Definition at line 643 of file qgsdatasourceuri.cpp.

◆ setDatabase()

void QgsDataSourceUri::setDatabase ( const QString &  database)

Sets the URI database name.

Definition at line 676 of file qgsdatasourceuri.cpp.

◆ setDataSource()

void QgsDataSourceUri::setDataSource ( const QString &  aSchema,
const QString &  aTable,
const QString &  aGeometryColumn,
const QString &  aSql = QString(),
const QString &  aKeyColumn = QString() 
)

Sets all data source related members at once.

Definition at line 658 of file qgsdatasourceuri.cpp.

◆ setDriver()

void QgsDataSourceUri::setDriver ( const QString &  driver)

Sets the driver name stored in the URI.

Since
QGIS 2.16

Definition at line 331 of file qgsdatasourceuri.cpp.

◆ setEncodedUri() [1/2]

void QgsDataSourceUri::setEncodedUri ( const QByteArray &  uri)

Sets the complete encoded uri.

Note
not available in Python bindings

Definition at line 597 of file qgsdatasourceuri.cpp.

◆ setEncodedUri() [2/2]

void QgsDataSourceUri::setEncodedUri ( const QString &  uri)

Sets the complete encoded uri from a string value.

Definition at line 610 of file qgsdatasourceuri.cpp.

◆ setGeometryColumn()

void QgsDataSourceUri::setGeometryColumn ( const QString &  geometryColumn)

Sets geometry column name to geometryColumn.

Since
QGIS 3.10

Definition at line 388 of file qgsdatasourceuri.cpp.

◆ setKeyColumn()

void QgsDataSourceUri::setKeyColumn ( const QString &  column)

Sets the name of the (primary) key column.

Definition at line 337 of file qgsdatasourceuri.cpp.

◆ setParam() [1/2]

void QgsDataSourceUri::setParam ( const QString &  key,
const QString &  value 
)

Sets a generic parameter value on the URI.

Note
If a parameter with the specified key already exists, another is inserted and the existing value is left unchanged.

Definition at line 733 of file qgsdatasourceuri.cpp.

◆ setParam() [2/2]

void QgsDataSourceUri::setParam ( const QString &  key,
const QStringList &  value 
)

Sets a generic parameter list value on the URI.

Note
available in Python as setParamList

Definition at line 739 of file qgsdatasourceuri.cpp.

◆ setPassword()

void QgsDataSourceUri::setPassword ( const QString &  password)

Sets the password for the URI.

Definition at line 285 of file qgsdatasourceuri.cpp.

◆ setSchema()

void QgsDataSourceUri::setSchema ( const QString &  schema)

Sets the scheme for the URI.

Since
QGIS 2.12

Definition at line 373 of file qgsdatasourceuri.cpp.

◆ setSql()

void QgsDataSourceUri::setSql ( const QString &  sql)

Sets the SQL query for the URI.

Definition at line 363 of file qgsdatasourceuri.cpp.

◆ setSrid()

void QgsDataSourceUri::setSrid ( const QString &  srid)

Sets the spatial reference ID associated with the URI.

Definition at line 696 of file qgsdatasourceuri.cpp.

◆ setTable()

void QgsDataSourceUri::setTable ( const QString &  table)

Sets table to table.

Since
QGIS 3.10

Definition at line 393 of file qgsdatasourceuri.cpp.

◆ setUseEstimatedMetadata()

void QgsDataSourceUri::setUseEstimatedMetadata ( bool  flag)

Sets whether estimated metadata should be used for the connection.

Definition at line 343 of file qgsdatasourceuri.cpp.

◆ setUsername()

void QgsDataSourceUri::setUsername ( const QString &  username)

Sets the username for the URI.

Definition at line 260 of file qgsdatasourceuri.cpp.

◆ setWkbType()

void QgsDataSourceUri::setWkbType ( QgsWkbTypes::Type  type)

Sets the WKB type associated with the URI.

Definition at line 686 of file qgsdatasourceuri.cpp.

◆ sql()

QString QgsDataSourceUri::sql ( ) const

Returns the SQL query stored in the URI, if set.

Definition at line 315 of file qgsdatasourceuri.cpp.

◆ srid()

QString QgsDataSourceUri::srid ( ) const

Returns the spatial reference ID associated with the URI.

Definition at line 691 of file qgsdatasourceuri.cpp.

◆ sslMode()

QgsDataSourceUri::SslMode QgsDataSourceUri::sslMode ( ) const

Returns the SSL mode associated with the URI.

Definition at line 300 of file qgsdatasourceuri.cpp.

◆ table()

QString QgsDataSourceUri::table ( ) const

Returns the table name stored in the URI.

Definition at line 310 of file qgsdatasourceuri.cpp.

◆ uri()

QString QgsDataSourceUri::uri ( bool  expandAuthConfig = true) const

Returns the complete URI as a string.

Definition at line 534 of file qgsdatasourceuri.cpp.

◆ useEstimatedMetadata()

bool QgsDataSourceUri::useEstimatedMetadata ( ) const

Returns true if estimated metadata should be used for the connection.

Definition at line 348 of file qgsdatasourceuri.cpp.

◆ username()

QString QgsDataSourceUri::username ( ) const

Returns the username stored in the URI.

Definition at line 255 of file qgsdatasourceuri.cpp.

◆ wkbType()

QgsWkbTypes::Type QgsDataSourceUri::wkbType ( ) const

Returns the WKB type associated with the URI.

Definition at line 681 of file qgsdatasourceuri.cpp.


The documentation for this class was generated from the following files: