QGIS API Documentation 4.1.0-Master (5bf3c20f3c9)
Loading...
Searching...
No Matches
qgsaccesscontrolfilter.cpp
Go to the documentation of this file.
1/***************************************************************************
2 qgsaccesscontrolplugin.cpp
3 --------------------------
4 Access control interface for QGIS Server plugins
5
6 begin : 2015-05-19
7 copyright : (C) 2015 by Stéphane Brunner
8 email : stephane dot brunner at camptocamp dot org
9 ***************************************************************************/
10
11/***************************************************************************
12 * *
13 * This program is free software; you can redistribute it and/or modify *
14 * it under the terms of the GNU General Public License as published by *
15 * the Free Software Foundation; either version 2 of the License, or *
16 * (at your option) any later version. *
17 * *
18 ***************************************************************************/
19
20
22
23#include "qgsfeature.h"
24#include "qgsmessagelog.h"
25
26#include <QString>
27
28using namespace Qt::StringLiterals;
29
34
37{
38 QgsMessageLog::logMessage( u"QgsAccessControlFilter plugin default layerFilterExpression called"_s, u"AccessControlFilter"_s, Qgis::MessageLevel::Info );
39 Q_UNUSED( layer )
40 return QString();
41}
42
45{
46 QgsMessageLog::logMessage( u"QgsAccessControlFilter plugin default layerFilterSubsetString called"_s, u"AccessControlFilter"_s, Qgis::MessageLevel::Info );
47 Q_UNUSED( layer )
48 return QString();
49}
50
53{
54 QgsMessageLog::logMessage( u"QgsAccessControlFilter plugin default layerPermissions called"_s, u"AccessControlFilter"_s, Qgis::MessageLevel::Info );
55 Q_UNUSED( layer )
57 permissions.canRead = permissions.canUpdate = permissions.canInsert = permissions.canDelete = true;
58 return permissions;
59}
60
62QStringList QgsAccessControlFilter::authorizedLayerAttributes( const QgsVectorLayer *layer, const QStringList &attributes ) const
63{
64 Q_UNUSED( layer )
65 QgsMessageLog::logMessage( u"QgsAccessControlFilter plugin default authorizedLayerAttributes called"_s, u"AccessControlFilter"_s, Qgis::MessageLevel::Info );
66 return attributes;
67}
68
70bool QgsAccessControlFilter::allowToEdit( const QgsVectorLayer *layer, const QgsFeature &feature ) const
71{
72 QgsMessageLog::logMessage( u"QgsAccessControlFilter plugin default allowToEdit called"_s, u"AccessControlFilter"_s, Qgis::MessageLevel::Info );
73 Q_UNUSED( layer )
74 Q_UNUSED( feature )
75 return true;
76}
77
80{
81 return QString();
82}
@ Info
Information message.
Definition qgis.h:161
const QgsServerInterface * serverInterface() const
Returns the QgsServerInterface instance.
virtual LayerPermissions layerPermissions(const QgsMapLayer *layer) const
Returns the layer permissions.
QgsAccessControlFilter(const QgsServerInterface *serverInterface)
Constructor QgsServerInterface passed to plugins constructors and must be passed to QgsAccessControlF...
virtual QStringList authorizedLayerAttributes(const QgsVectorLayer *layer, const QStringList &attributes) const
Returns the authorized layer attributes.
virtual QString cacheKey() const
Cache key to used to create the capabilities cache.
virtual QString layerFilterExpression(const QgsVectorLayer *layer) const
Returns an additional expression filter.
virtual bool allowToEdit(const QgsVectorLayer *layer, const QgsFeature &feature) const
Are we authorized to modify the following geometry.
virtual QString layerFilterSubsetString(const QgsVectorLayer *layer) const
Returns an additional subset string (typically SQL) filter.
The feature class encapsulates a single feature including its unique ID, geometry and a list of field...
Definition qgsfeature.h:60
Base class for all map layer types.
Definition qgsmaplayer.h:83
static void logMessage(const QString &message, const QString &tag=QString(), Qgis::MessageLevel level=Qgis::MessageLevel::Warning, bool notifyUser=true, const char *file=__builtin_FILE(), const char *function=__builtin_FUNCTION(), int line=__builtin_LINE(), Qgis::StringFormat format=Qgis::StringFormat::PlainText)
Adds a message to the log instance (and creates it if necessary).
Defines interfaces exposed by QGIS Server and made available to plugins.
Represents a vector layer which manages a vector based dataset.