QGIS/python/server/auto_generated/qgsaccesscontrol.sip.in
2024-07-25 04:02:55 +10:00

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 &copy );
~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 *
************************************************************************/