QGIS API Documentation 4.3.0-Master (389d690bb77)
Loading...
Searching...
No Matches
qgsstacconnection.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsstacconnection.h
3 ---------------------
4 begin : August 2024
5 copyright : (C) 2024 by Stefanos Natsis
6 email : uclaros at gmail dot com
7 ***************************************************************************
8 * *
9 * This program is free software; you can redistribute it and/or modify *
10 * it under the terms of the GNU General Public License as published by *
11 * the Free Software Foundation; either version 2 of the License, or *
12 * (at your option) any later version. *
13 * *
14 ***************************************************************************/
15
16#ifndef QGSSTACCONNECTION_H
17#define QGSSTACCONNECTION_H
18
19
20#include "qgis_core.h"
22#include "qgshttpheaders.h"
23#include "qgssettingstree.h"
24#include "qgssettingstreenode.h"
25
26#include <QString>
27#include <QStringList>
28
29using namespace Qt::StringLiterals;
30
33
42{
43 public:
44#ifndef SIP_RUN
45
48
49 static const QgsSettingsEntryString *settingsUrl;
50 static const QgsSettingsEntryString *settingsAuthcfg;
51 static const QgsSettingsEntryString *settingsUsername;
52 static const QgsSettingsEntryString *settingsPassword;
53 static const QgsSettingsEntryVariantMap *settingsHeaders;
54
56#endif
57
61 QgsStacConnection( const QString &name );
62
66 QgsStacConnection( const QString &uri, const QVariantMap &configuration );
67
68 void store( const QString &name ) const override;
69 void remove( const QString &name ) const override;
70
72 struct Data
73 {
75 QString url;
77 QString authCfg;
79 QString username;
81 QString password;
84 };
85
87 static QString encodedUri( const Data &conn );
89 static Data decodedUri( const QString &uri );
90
92 static QStringList connectionList();
94 static Data connection( const QString &name );
96 static void deleteConnection( const QString &name );
98 static void addConnection( const QString &name, const Data &conn );
100 static QString selectedConnection();
102 static void setSelectedConnection( const QString &connName );
103};
104
105#endif // QGSSTACCONNECTION_H
@ NamedListSelectedItemSetting
Creates a setting to store which is the current item.
Definition qgis.h:708
QVariantMap configuration() const
Returns the connection configuration parameters.
QgsAbstractProviderConnection(const QString &name)
Creates a new connection with name by reading its configuration from the settings.
QString uri() const
Returns the connection data source URI string representation.
Implements simple HTTP header management.
A string settings entry.
A string list settings entry.
A named list tree node for the settings tree to help organizing and introspecting the tree.
static QgsSettingsTreeNode * sTreeConnections
static void setSelectedConnection(const QString &connName)
Saves name of the last used connection.
static QString selectedConnection()
Returns last used connection.
static Data decodedUri(const QString &uri)
Decodes connection string to a data structure.
PRIVATE QgsStacConnection(const QString &name)
Constructor for QgsStacConnection, using the stored settings with the specified connection name.
void remove(const QString &name) const override
Deletes the connection from the settings.
QgsStacConnection(const QString &uri, const QVariantMap &configuration)
Constructor for QgsStacConnection, using the a specific connection details.
static void addConnection(const QString &name, const Data &conn)
Adds a new connection to the list.
void store(const QString &name) const override
Stores the connection in the settings.
static QStringList connectionList()
Returns list of existing connections, unless the hidden ones.
static Data connection(const QString &name)
Returns connection details.
static QString encodedUri(const Data &conn)
Returns connection data encoded as a string.
static void deleteConnection(const QString &name)
Removes a connection from the list.
Represents decoded data of a connection.
QgsHttpHeaders httpHeaders
HTTP headers.
QString username
HTTP Basic username.
QString authCfg
Authentication configuration id.
QString url
Catalog URL.
QString password
HTTP Basic password.