mirror of
https://github.com/qgis/QGIS.git
synced 2025-02-23 00:02:38 -05:00
160 lines
4.3 KiB
Plaintext
160 lines
4.3 KiB
Plaintext
/************************************************************************
|
|
* This file has been generated automatically from *
|
|
* *
|
|
* src/server/qgsaccesscontrol.h *
|
|
* *
|
|
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
|
|
************************************************************************/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class QgsAccessControl : QgsFeatureFilterProvider
|
|
{
|
|
%Docstring(signature="appended")
|
|
A helper class that centralizes restrictions given by all the access control filter plugins.
|
|
%End
|
|
|
|
%TypeHeaderCode
|
|
#include "qgsaccesscontrol.h"
|
|
#include "qgsaccesscontrolfilter.h"
|
|
%End
|
|
public:
|
|
QgsAccessControl();
|
|
%Docstring
|
|
Constructor
|
|
%End
|
|
|
|
QgsAccessControl( const QgsAccessControl © );
|
|
|
|
|
|
~QgsAccessControl();
|
|
|
|
|
|
void resolveFilterFeatures( const QList<QgsMapLayer *> &layers );
|
|
%Docstring
|
|
Resolve features' filter of layers
|
|
The method fetch filter's expressions returned from access control plugins and
|
|
and combine them to a unique expression for each layer.
|
|
The resulted expressions are stored in cache for efficiency; between each requests, the cache
|
|
must be cleared using ':py:func:`~QgsAccessControl.unresolveFilterFeatures`'.
|
|
|
|
:param layers: to filter
|
|
%End
|
|
|
|
void unresolveFilterFeatures();
|
|
%Docstring
|
|
Clear expression's cache computed from `resolveFilterFeatures`
|
|
%End
|
|
|
|
virtual void filterFeatures( const QgsVectorLayer *layer, QgsFeatureRequest &filterFeatures ) const;
|
|
|
|
%Docstring
|
|
Filter the features of the layer
|
|
|
|
:param layer: the layer to control
|
|
:param filterFeatures: the request to fill
|
|
%End
|
|
|
|
virtual QgsFeatureFilterProvider *clone() const /Factory/;
|
|
|
|
%Docstring
|
|
Returns a clone of the object
|
|
|
|
:return: A clone
|
|
%End
|
|
|
|
QString extraSubsetString( const QgsVectorLayer *layer ) const;
|
|
%Docstring
|
|
Returns an additional subset string (typically SQL) filter
|
|
|
|
:param layer: the layer to control
|
|
|
|
:return: the subset string to use
|
|
%End
|
|
|
|
bool layerReadPermission( const QgsMapLayer *layer ) const;
|
|
%Docstring
|
|
Returns the layer read right
|
|
|
|
:param layer: the layer to control
|
|
|
|
:return: ``True`` if it can be read
|
|
%End
|
|
|
|
bool layerInsertPermission( const QgsVectorLayer *layer ) const;
|
|
%Docstring
|
|
Returns the layer insert right
|
|
|
|
:param layer: the layer to control
|
|
|
|
:return: ``True`` if we can insert on it
|
|
%End
|
|
|
|
bool layerUpdatePermission( const QgsVectorLayer *layer ) const;
|
|
%Docstring
|
|
Returns the layer update right
|
|
|
|
:param layer: the layer to control
|
|
|
|
:return: ``True`` if we can do an update
|
|
%End
|
|
|
|
bool layerDeletePermission( const QgsVectorLayer *layer ) const;
|
|
%Docstring
|
|
Returns the layer delete right
|
|
|
|
:param layer: the layer to control
|
|
|
|
:return: ``True`` if we can do a delete
|
|
%End
|
|
|
|
virtual QStringList layerAttributes( const QgsVectorLayer *layer, const QStringList &attributes ) const;
|
|
|
|
%Docstring
|
|
Returns the authorized layer attributes
|
|
|
|
:param layer: the layer to control
|
|
:param attributes: the list of attribute
|
|
|
|
:return: the list of visible attributes
|
|
%End
|
|
|
|
bool allowToEdit( const QgsVectorLayer *layer, const QgsFeature &feature ) const;
|
|
%Docstring
|
|
Are we authorized to modify the following geometry
|
|
|
|
:param layer: the layer to control
|
|
:param feature: the concerned feature
|
|
|
|
:return: ``True`` if we are allowed to edit the feature
|
|
%End
|
|
|
|
bool fillCacheKey( QStringList &cacheKey ) const;
|
|
%Docstring
|
|
Fill the capabilities caching key
|
|
|
|
:param cacheKey: the list to fill with a cache variant
|
|
%End
|
|
|
|
void registerAccessControl( QgsAccessControlFilter *accessControl, int priority = 0 );
|
|
%Docstring
|
|
Register an access control filter
|
|
|
|
:param accessControl: the access control to add
|
|
:param priority: the priority used to define the order
|
|
%End
|
|
|
|
};
|
|
|
|
/************************************************************************
|
|
* This file has been generated automatically from *
|
|
* *
|
|
* src/server/qgsaccesscontrol.h *
|
|
* *
|
|
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
|
|
************************************************************************/
|