Skip to content
Permalink
Browse files
[FEATURE]: Add QGIS mapserver sources to svn repository
git-svn-id: http://svn.osgeo.org/qgis/trunk/qgis@14110 c8812cc2-4d05-0410-92ff-de0c093fc19c
  • Loading branch information
mhugent committed Aug 21, 2010
1 parent 151d665 commit 470f5f12b1d51315af02c7612bfd095cdd39a1ab
Showing with 11,668 additions and 13 deletions.
  1. +9 −1 CMakeLists.txt
  2. +21 −1 debian/control.sid
  3. +0 −9 debian/qgis.install
  4. +2 −1 debian/rules
  5. +5 −1 src/CMakeLists.txt
  6. +121 −0 src/mapserver/CMakeLists.txt
  7. +24 −0 src/mapserver/admin.sld
  8. +97 −0 src/mapserver/common.xml
  9. +403 −0 src/mapserver/qgis_map_serv.cpp
  10. +586 −0 src/mapserver/qgis_wms.xmi
  11. +51 −0 src/mapserver/qgsbetweenfilter.cpp
  12. +59 −0 src/mapserver/qgsbetweenfilter.h
  13. +114 −0 src/mapserver/qgscomparisonfilter.cpp
  14. +65 −0 src/mapserver/qgscomparisonfilter.h
  15. +100 −0 src/mapserver/qgsconfigcache.cpp
  16. +45 −0 src/mapserver/qgsconfigcache.h
  17. +265 −0 src/mapserver/qgsconfigparser.cpp
  18. +137 −0 src/mapserver/qgsconfigparser.h
  19. +58 −0 src/mapserver/qgsepsgcache.cpp
  20. +43 −0 src/mapserver/qgsepsgcache.h
  21. +192 −0 src/mapserver/qgsfilter.cpp
  22. +54 −0 src/mapserver/qgsfilter.h
  23. +91 −0 src/mapserver/qgsftptransaction.cpp
  24. +41 −0 src/mapserver/qgsftptransaction.h
  25. +304 −0 src/mapserver/qgsgetrequesthandler.cpp
  26. +32 −0 src/mapserver/qgsgetrequesthandler.h
  27. +95 −0 src/mapserver/qgshostedrdsbuilder.cpp
  28. +32 −0 src/mapserver/qgshostedrdsbuilder.h
  29. +100 −0 src/mapserver/qgshostedvdsbuilder.cpp
  30. +31 −0 src/mapserver/qgshostedvdsbuilder.h
  31. +58 −0 src/mapserver/qgshttprequesthandler.cpp
  32. +35 −0 src/mapserver/qgshttprequesthandler.h
  33. +148 −0 src/mapserver/qgsinterpolationlayerbuilder.cpp
  34. +46 −0 src/mapserver/qgsinterpolationlayerbuilder.h
  35. +67 −0 src/mapserver/qgslogicalfilter.cpp
  36. +58 −0 src/mapserver/qgslogicalfilter.h
  37. +59 −0 src/mapserver/qgsmapserverlogger.cpp
  38. +51 −0 src/mapserver/qgsmapserverlogger.h
  39. +23 −0 src/mapserver/qgsmapserviceexception.cpp
  40. +40 −0 src/mapserver/qgsmapserviceexception.h
  41. +109 −0 src/mapserver/qgsmslayerbuilder.cpp
  42. +57 −0 src/mapserver/qgsmslayerbuilder.h
  43. +156 −0 src/mapserver/qgsmslayercache.cpp
  44. +75 −0 src/mapserver/qgsmslayercache.h
  45. +70 −0 src/mapserver/qgsmsutils.cpp
  46. +17 −0 src/mapserver/qgsmsutils.h
  47. +785 −0 src/mapserver/qgsprojectparser.cpp
  48. +115 −0 src/mapserver/qgsprojectparser.h
  49. +171 −0 src/mapserver/qgsremotedatasourcebuilder.cpp
  50. +44 −0 src/mapserver/qgsremotedatasourcebuilder.h
  51. +420 −0 src/mapserver/qgsremoteowsbuilder.cpp
  52. +48 −0 src/mapserver/qgsremoteowsbuilder.h
  53. +49 −0 src/mapserver/qgsrequesthandler.h
  54. +135 −0 src/mapserver/qgssentdatasourcebuilder.cpp
  55. +49 −0 src/mapserver/qgssentdatasourcebuilder.h
  56. +1,944 −0 src/mapserver/qgssldparser.cpp
  57. +157 −0 src/mapserver/qgssldparser.h
  58. +129 −0 src/mapserver/qgssldrenderer.cpp
  59. +67 −0 src/mapserver/qgssldrenderer.h
  60. +782 −0 src/mapserver/qgssldrule.cpp
  61. +91 −0 src/mapserver/qgssldrule.h
  62. +878 −0 src/mapserver/qgssoaprequesthandler.cpp
  63. +50 −0 src/mapserver/qgssoaprequesthandler.h
  64. +1,320 −0 src/mapserver/qgswmsserver.cpp
  65. +126 −0 src/mapserver/qgswmsserver.h
  66. +26 −0 src/mapserver/sld_capabilities.txt
  67. +36 −0 src/mapserver/wms_metadata.xml
@@ -49,6 +49,9 @@ IF (WITH_GRASS)
SET (GRASS_PREFIX ${GRASS_PREFIX} CACHE PATH "Path to GRASS base directory")
ENDIF (WITH_GRASS)

# try to configure and build mapserver by default
SET (WITH_MAPSERVER TRUE CACHE BOOL "Determines whether QGIS mapserver should be built")

# try to configure and build POSTGRESQL support
SET (WITH_POSTGRESQL TRUE CACHE BOOL "Determines whether POSTGRESQL support should be built")
IF (WITH_POSTGRESQL)
@@ -239,6 +242,7 @@ IF (WIN32)

IF (MSVC)
SET (DEFAULT_BIN_SUBDIR bin)
SET (DEFAULT_CGIBIN_SUBDIR bin)
# put all the build products into a single directory
# under build (doesnt affect install target) to make for
# easier debugging.
@@ -262,6 +266,7 @@ IF (WIN32)
ENDIF (INSTALL_DEPS)
ELSE(MSVC)
SET (DEFAULT_BIN_SUBDIR .)
SET (DEFAULT_CGIBIN_SUBDIR .)
ENDIF(MSVC)
ELSE (WIN32)

@@ -276,6 +281,7 @@ ELSE (WIN32)

# common for MAC and UNIX
SET (DEFAULT_BIN_SUBDIR bin)
SET (DEFAULT_CGIBIN_SUBDIR bin)
SET (DEFAULT_LIB_SUBDIR lib${LIB_SUFFIX})
SET (DEFAULT_DATA_SUBDIR share/qgis)
SET (DEFAULT_LIBEXEC_SUBDIR lib${LIB_SUFFIX}/qgis)
@@ -285,7 +291,7 @@ ELSE (WIN32)
ENDIF (WIN32)


#assume we have excaped compiler directives
#assume we have escaped compiler directives
#eventually we want to change this to new
#since we don't need to jump through so many
#hoops to escape compiler directives then
@@ -323,6 +329,7 @@ ENDIF (WIN32)
# (default values are platform-specific)

SET (QGIS_BIN_SUBDIR ${DEFAULT_BIN_SUBDIR} CACHE STRING "Subdirectory where executables will be installed")
SET (QGIS_CGIBIN_SUBDIR ${DEFAULT_CGIBIN_SUBDIR} CACHE STRING "Subdirectory where CGI executables will be installed")
SET (QGIS_LIB_SUBDIR ${DEFAULT_LIB_SUBDIR} CACHE STRING "Subdirectory where libraries will be installed")
SET (QGIS_LIBEXEC_SUBDIR ${DEFAULT_LIBEXEC_SUBDIR} CACHE STRING "Subdirectory where private executables will be installed")
SET (QGIS_DATA_SUBDIR ${DEFAULT_DATA_SUBDIR} CACHE STRING "Subdirectory where QGIS data will be installed")
@@ -335,6 +342,7 @@ MARK_AS_ADVANCED (QGIS_BIN_SUBDIR QGIS_LIB_SUBDIR QGIS_LIBEXEC_SUBDIR QGIS_DATA_

# full paths for the installation
SET (QGIS_BIN_DIR ${QGIS_BIN_SUBDIR})
SET (QGIS_CGIBIN_DIR ${QGIS_CGIBIN_SUBDIR})
SET (QGIS_LIB_DIR ${QGIS_LIB_SUBDIR})
SET (QGIS_LIBEXEC_DIR ${QGIS_LIBEXEC_SUBDIR})
SET (QGIS_DATA_DIR ${QGIS_DATA_SUBDIR})
@@ -16,7 +16,7 @@ Homepage: http://qgis.org/

Package: qgis
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}, qgis-common (= ${source:Version})
Depends: ${shlibs:Depends}, ${misc:Depends}, qgis-providers (= ${binary:Version}), qgis-common (= ${source:Version})
Recommends: qgis-plugin-grass, python-qgis
Suggests: gpsbabel
Conflicts: uim-qt3
@@ -114,3 +114,23 @@ Description: Python bindings to Quantum GIS - architecture-independent files
This package contains architecture-independent files for the Quantum GIS
Python bindings.

Package: qgis-providers
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}
Replaces: qgis (<= 1.6)
Breaks: qgis (<= 1.6)
Description: collection of data providers to Quantum GIS
Quantum GIS is a Geographic Information System (GIS) which manages, analyzes
and display databases of geographic information.
.
This package contains the provider plugins for Quantum GIS.

Package: qgis-mapserver
Architecture: any
Depends: qgis-providers (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends}
Description: Quantum GIS mapserver
Quantum GIS is a Geographic Information System (GIS) which manages, analyzes
and display databases of geographic information.
.
This package contains the Quantum GIS mapserver.

@@ -1,29 +1,20 @@
usr/bin/qgis_help
usr/lib/qgis/plugins/libcopyrightlabelplugin.so
usr/lib/qgis/plugins/libdelimitedtextplugin.so
usr/lib/qgis/plugins/libdelimitedtextprovider.so
usr/lib/qgis/plugins/libgeorefplugin.so
usr/lib/qgis/plugins/libgpsimporterplugin.so
usr/lib/qgis/plugins/libgpxprovider.so
usr/lib/qgis/plugins/libnortharrowplugin.so
usr/lib/qgis/plugins/libogrprovider.so
usr/lib/qgis/plugins/libpostgresprovider.so
usr/lib/qgis/plugins/libquickprintplugin.so
usr/lib/qgis/plugins/libscalebarplugin.so
usr/lib/qgis/plugins/libspitplugin.so
usr/lib/qgis/plugins/libwfsplugin.so
usr/lib/qgis/plugins/libwfsprovider.so
usr/lib/qgis/plugins/libwmsprovider.so
usr/lib/qgis/plugins/libmemoryprovider.so
usr/lib/qgis/plugins/libdxf2shpconverterplugin.so
usr/lib/qgis/plugins/libinterpolationplugin.so
usr/lib/qgis/plugins/libogrconverterplugin.so
usr/lib/qgis/plugins/libcoordinatecaptureplugin.so
usr/lib/qgis/plugins/libspatialiteprovider.so
usr/lib/qgis/plugins/liboracleplugin.so
usr/lib/qgis/plugins/libdiagramoverlay.so
usr/lib/qgis/plugins/libevis.so
usr/lib/qgis/plugins/libosmprovider.so
usr/lib/qgis/plugins/librasterterrainplugin.so
usr/lib/qgis/plugins/libspatialqueryplugin.so
usr/lib/qgis/plugins/libdisplacementplugin.so
@@ -28,7 +28,8 @@ CMAKE_OPTS := \
-D CMAKE_SKIP_RPATH=TRUE \
-D BINDINGS_GLOBAL_INSTALL=TRUE \
-D PEDANTIC=TRUE \
-D WITH_SPATIALITE=TRUE
-D WITH_SPATIALITE=TRUE \
-D QGIS_CGIBIN_SUBDIR=/usr/lib/cgi-bin

ifeq (,$(findstring $(DISTRIBUTION),"squeeze lucid maverick sid"))
CMAKE_OPTS += -D WITH_INTERNAL_SPATIALITE=TRUE
@@ -1,10 +1,14 @@

SUBDIRS(core analysis ui gui app providers plugins helpviewer)

IF (WITH_BINDINGS)
SUBDIRS(python)
ENDIF (WITH_BINDINGS)

IF (WITH_MAPSERVER)
SUBDIRS(mapserver)
ENDIF (WITH_MAPSERVER)

IF (APPLE)
SUBDIRS(mac)
ENDIF(APPLE)

@@ -0,0 +1,121 @@
#
# Find deps
#
FIND_PACKAGE(Fcgi REQUIRED)
IF (NOT FCGI_FOUND)
MESSAGE (SEND_ERROR "Fast CGI dependency was not found!")
ENDIF (NOT FCGI_FOUND)

# We need to define the qgis base dir so we can pass it
# into the main entry point for the app so that at
# runtime it can find plugins and srs.db etc
ADD_DEFINITIONS(-DQGIS_LIB_DIR="\\"${QGIS_LIB_DIR}\\"")

#MH: for this we need to locate the headers of the diagram and interpolation plugin
#ADD_DEFINITIONS(-DDIAGRAMSERVER=1)

IF (CMAKE_BUILD_TYPE MATCHES Debug)
ADD_DEFINITIONS(-DQGSMSDEBUG=1)
ENDIF (CMAKE_BUILD_TYPE MATCHES Debug)
########################################################
# Files

SET ( qgis_mapserv_SRCS
qgis_map_serv.cpp
qgsconfigcache.cpp
qgsconfigparser.cpp
qgsepsgcache.cpp
qgsprojectparser.cpp
qgshttprequesthandler.cpp
qgsgetrequesthandler.cpp
qgssoaprequesthandler.cpp
qgssldparser.cpp
qgssldrenderer.cpp
qgswmsserver.cpp
qgsmapserviceexception.cpp
qgsmapserverlogger.cpp
qgsmslayercache.cpp
qgsfilter.cpp
qgssldrule.cpp
qgsbetweenfilter.cpp
qgscomparisonfilter.cpp
qgslogicalfilter.cpp
qgsftptransaction.cpp
qgsmslayerbuilder.cpp
qgshostedvdsbuilder.cpp
qgsinterpolationlayerbuilder.cpp
qgsremoteowsbuilder.cpp
qgshostedrdsbuilder.cpp
qgsremotedatasourcebuilder.cpp
qgssentdatasourcebuilder.cpp
qgsmsutils.cpp
)

# SET (qgis_mapserv_UIS
# none used
# )

SET (qgis_mapserv_MOC_HDRS
qgsftptransaction.h
)

SET (qgis_mapserv_RCCS
# not used
#qgis_mapserv.qrc
)

QT4_WRAP_UI (qgis_mapserv_UIS_H ${qgis_mapserv_UIS})

QT4_WRAP_CPP (qgis_mapserv_MOC_SRCS ${qgis_mapserv_MOC_HDRS})

QT4_ADD_RESOURCES(qgis_mapserv_RCC_SRCS ${qgis_mapserv_RCCS})

ADD_EXECUTABLE(qgis_mapserv.fcgi
${qgis_mapserv_SRCS}
${qgis_mapserv_MOC_SRCS}
${qgis_mapserv_RCC_SRCS}
${qgis_mapserv_UIS_H}
)

INCLUDE_DIRECTORIES(
${GDAL_INCLUDE_DIR}
${FCGI_INCLUDE_DIR}
${GEOS_INCLUDE_DIR}
${PROJ_INCLUDE_DIR}
${POSTGRES_INCLUDE_DIR}
${CMAKE_CURRENT_BINARY_DIR}
${QT_INCLUDE_DIR}
${QGIS_INCLUDE_DIR}
../core
../core/raster
../core/renderer
../core/symbology
../core/symbology-ng
../core/composer
../analysis/interpolation
.
)

TARGET_LINK_LIBRARIES(qgis_mapserv.fcgi
qgis_core
qgis_analysis
${PROJ_LIBRARY}
${FCGI_LIBRARY}
${POSTGRES_LIBRARY}
${GDAL_LIBRARY}
)

########################################################
# Install

INSTALL(CODE "MESSAGE(\"Installing mapserver...\")")
INSTALL(TARGETS
qgis_mapserv.fcgi
DESTINATION ${QGIS_CGIBIN_DIR}
)
INSTALL(FILES
admin.sld
wms_metadata.xml
DESTINATION ${QGIS_CGIBIN_DIR}
)

@@ -0,0 +1,24 @@
<StyledLayerDescriptor xmlns="http://www.opengis.net/sld">
<UserLayer>
<Name>wfslayer</Name>
<RemoteOWS>
<Service>WFS</Service>
<OnlineResource href="http://karlinapp.ethz.ch/cgi-bin/mapserv?map=/home/marco/mapfiles/mapfile1.map&amp;" type="states" />
</RemoteOWS>
<UserStyle>
<Name>userstyle</Name>
<FeatureTypeStyle>
<Rule>
<PolygonSymbolizer>
<Stroke><sld:CssParameter sld:name="stroke">#0000ff</sld:CssParameter>
<sld:CssParameter sld:name="stroke-width">3</sld:CssParameter>
</Stroke>
<Fill>
<sld:CssParameter sld:name="fill">#0000ff</sld:CssParameter>
</Fill>
</PolygonSymbolizer>
</Rule>
</FeatureTypeStyle>
</UserStyle>
</UserLayer>
</StyledLayerDescriptor>
@@ -0,0 +1,97 @@
<serviceCommonCapabilities xmlns="http://eu-orchestra.org/services/ms">
<OA_MI_Service_CommonCapabilities>
<serviceDescription>Orchestra Map and Diagram Service</serviceDescription>
<serviceDiscoveryBasic>
<OA_MI_Service_DiscoveryBasic>
<freeKeywords>
<OA_MI_Service_FreeKeywords>
<OA_MI_Keywords>
<keywords>Map and Diagram Service</keywords>
<keywords>MS</keywords>
<keywords>ORCHESTRA</keywords>
</OA_MI_Keywords>
</OA_MI_Service_FreeKeywords>
</freeKeywords>
<yellowPageInfo>
<OA_MI_Service_YellowPageInfo>
<business>
<OA_MI_Service_BusinessClassification>
<identifier>GeoVisualization</identifier>
</OA_MI_Service_BusinessClassification>
</business>
</OA_MI_Service_YellowPageInfo>
</yellowPageInfo>
</OA_MI_Service_DiscoveryBasic>
</serviceDiscoveryBasic>
<serviceDocumentation>https://portal.opengeospatial.org/files/?artifact_id=16644</serviceDocumentation>
<serviceInvocationBasic>
<OA_MI_Service_InvocationBasic>
<operation>
<OA_MI_Operation>
<accessPoints>
<OA_MI_AccessPoint>
<uri>http://karlinapp.ethz.ch/cgi-bin/orchestra_map_serv</uri>
</OA_MI_AccessPoint>
</accessPoints>
<description>Delivers capabilities of the map and diagram service.</description>
<name>getCapabilities</name>
<parameters>
<OA_MI_OperationParameter>
<description>request</description>
<direction>in</direction>
<name>request</name>
<optionality>false</optionality>
<repeatability>false</repeatability>
<valueType>OAGetCapabilitiesRequest</valueType>
</OA_MI_OperationParameter>
</parameters>
<parameters>
<OA_MI_OperationParameter>
<description>response</description>
<direction>out</direction>
<name>response</name>
<optionality>false</optionality>
<repeatability>false</repeatability>
<valueType>OAGetCapabilitiesResponse</valueType>
</OA_MI_OperationParameter>
</parameters>
</OA_MI_Operation>
</operation>
<operation>
<OA_MI_Operation>
<accessPoints>
<OA_MI_AccessPoint>
<uri>http://karlinapp.ethz.ch/cgi-bin/orchestra_map_serv</uri>
</OA_MI_AccessPoint>
</accessPoints>
<description>Returns a map from the server based on the user parameters</description>
<name>getMap</name>
<parameters>
<OA_MI_OperationParameter>
<description>request</description>
<direction>in</direction>
<name>request</name>
<optionality>false</optionality>
<repeatability>false</repeatability>
<valueType>OAGetMapRequest</valueType>
</OA_MI_OperationParameter>
</parameters>
<parameters>
<OA_MI_OperationParameter>
<description>response</description>
<direction>out</direction>
<name>response</name>
<optionality>false</optionality>
<repeatability>false</repeatability>
<valueType>OAGetMapResponse</valueType>
</OA_MI_OperationParameter>
</parameters>
</OA_MI_Operation>
</operation>
</OA_MI_Service_InvocationBasic>
</serviceInvocationBasic>
<serviceName>Map and Diagram Service</serviceName>
<serviceSpecVersion>1.1</serviceSpecVersion>
<serviceType>Map and Diagram Service</serviceType>
</OA_MI_Service_CommonCapabilities>
</serviceCommonCapabilities>
Loading

0 comments on commit 470f5f1

Please sign in to comment.