QGIS API Documentation  2.18.21-Las Palmas (9fba24a)
qgsserverinterface.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgsseerversinterface.h
3  Interface class for exposing functions in QGIS Server for use by plugins
4  -------------------
5  begin : 2014-09-10
6  copyright : (C) 2014 by Alessandro Pasotti
7  email : a dot pasotti at itopen dot it
8  ***************************************************************************/
9 
10 /***************************************************************************
11  * *
12  * This program is free software; you can redistribute it and/or modify *
13  * it under the terms of the GNU General Public License as published by *
14  * the Free Software Foundation; either version 2 of the License, or *
15  * (at your option) any later version. *
16  * *
17  ***************************************************************************/
18 
19 
20 #ifndef QGSSERVERINTERFACE_H
21 #define QGSSERVERINTERFACE_H
22 
23 #include "qgscapabilitiescache.h"
24 #include "qgsrequesthandler.h"
25 #include "qgsserverfilter.h"
26 #include "qgsaccesscontrolfilter.h"
27 #include "qgsaccesscontrol.h"
28 
36 class SERVER_EXPORT QgsServerInterface
37 {
38 
39  public:
40 
43 
45  virtual ~QgsServerInterface() = 0;
46 
52  virtual void setRequestHandler( QgsRequestHandler* requestHandler ) = 0;
53 
59  virtual void clearRequestHandler() = 0;
60 
65  virtual QgsCapabilitiesCache* capabiblitiesCache() = 0;
66 
71  virtual QgsRequestHandler* requestHandler() = 0;
72 
78  virtual void registerFilter( QgsServerFilter* filter, int priority = 0 ) = 0;
79 
84  virtual void setFilters( QgsServerFiltersMap* filters ) = 0;
85 
90  virtual QgsServerFiltersMap filters() = 0;
95  virtual void registerAccessControl( QgsAccessControlFilter* accessControl, int priority = 0 ) = 0;
97  virtual const QgsAccessControl* accessControls() const = 0;
98 
100  virtual QString getEnv( const QString& name ) const = 0;
101 
106  virtual QString configFilePath() = 0;
107 
112  virtual void setConfigFilePath( const QString& configFilePath ) = 0;
113 
118  virtual void removeConfigCacheEntry( const QString& path ) = 0;
119 
124  virtual void removeProjectLayers( const QString& path ) = 0;
125 
126 
127 
128 
129  private:
130  QString mConfigFilePath;
131 };
132 
133 #endif // QGSSERVERINTERFACE_H
Class defining I/O filters for QGIS Server and implemented in plugins.
Class defining access control interface for QGIS Server plugins.
This class is an interface hiding the details of reading input and writing output from/to a wms reque...
A cache for capabilities xml documents (by configuration file path)
QgsServerInterface Class defining interfaces exposed by QGIS Server and made available to plugins...