Skip to content

Commit 0effd19

Browse files
committed
fix: new setup for plugin
1 parent df84187 commit 0effd19

51 files changed

Lines changed: 746 additions & 5176 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.dockerignore

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
**/__pycache__
2+
**/.venv
3+
**/.classpath
4+
**/.dockerignore
5+
**/.env
6+
**/.git
7+
**/.gitignore
8+
**/.project
9+
**/.settings
10+
**/.toolstarget
11+
**/.vs
12+
**/.vscode
13+
**/*.*proj.user
14+
**/*.dbmdl
15+
**/*.jfm
16+
**/bin
17+
**/charts
18+
**/docker-compose*
19+
**/compose*
20+
**/Dockerfile*
21+
**/node_modules
22+
**/npm-debug.log
23+
**/obj
24+
**/secrets.dev.yaml
25+
**/values.dev.yaml
26+
LICENSE
27+
README.md

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
__pycache__/
33
*.py[cod]
44
*$py.class
5+
docker/qgis_plugins/*
56

67
# C extensions
78
*.so

.vscode/launch.json

Lines changed: 18 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -1,67 +1,20 @@
11
{
2-
"version": "0.2.0",
3-
"configurations": [
4-
{
5-
"name": "Python: Current File (Integrated Terminal)",
6-
"type": "python",
7-
"request": "launch",
8-
"program": "${file}",
9-
"console": "integratedTerminal"
10-
},
11-
{
12-
"name": "Python: Remote Attach",
13-
"type": "python",
14-
"request": "attach",
15-
"port": 5678,
16-
"host": "localhost",
17-
"pathMappings": [
18-
{
19-
"localRoot": "${workspaceFolder}",
20-
"remoteRoot": "${workspaceFolder}"
21-
}
22-
]
23-
},
24-
{
25-
"name": "Python: Module",
26-
"type": "python",
27-
"request": "launch",
28-
"module": "enter-your-module-name-here",
29-
"console": "integratedTerminal"
30-
},
31-
{
32-
"name": "Python: Django",
33-
"type": "python",
34-
"request": "launch",
35-
"program": "${workspaceFolder}/manage.py",
36-
"console": "integratedTerminal",
37-
"args": [
38-
"runserver",
39-
"--noreload",
40-
"--nothreading"
41-
],
42-
"django": true
43-
},
44-
{
45-
"name": "Python: Flask",
46-
"type": "python",
47-
"request": "launch",
48-
"module": "flask",
49-
"env": {
50-
"FLASK_APP": "app.py"
51-
},
52-
"args": [
53-
"run",
54-
"--no-debugger",
55-
"--no-reload"
56-
],
57-
"jinja": true
58-
},
59-
{
60-
"name": "Python: Current File (External Terminal)",
61-
"type": "python",
62-
"request": "launch",
63-
"program": "${file}",
64-
"console": "externalTerminal"
65-
}
66-
]
2+
"version": "0.2.0",
3+
"configurations": [
4+
{
5+
"name": "Python: Remote Attach",
6+
"type": "python",
7+
"request": "attach",
8+
"connect": {
9+
"host": "localhost",
10+
"port": 5678
11+
},
12+
"pathMappings": [
13+
{
14+
"localRoot": "${workspaceFolder}/plugin_code",
15+
"remoteRoot": "/root/.local/share/QGIS/QGIS3/profiles/default/python/plugins/qgis-shogun-editor"
16+
}
17+
]
18+
}
19+
]
6720
}

.vscode/settings.json

Lines changed: 0 additions & 3 deletions
This file was deleted.

Dockerfile

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# For more information, please refer to https://aka.ms/vscode-docker-python
2+
FROM python:3-slim
3+
4+
# Keeps Python from generating .pyc files in the container
5+
ENV PYTHONDONTWRITEBYTECODE=1
6+
7+
# Turns off buffering for easier container logging
8+
ENV PYTHONUNBUFFERED=1
9+
10+
# Install pip requirements
11+
COPY requirements.txt .
12+
RUN python -m pip install -r requirements.txt
13+
14+
WORKDIR /app
15+
COPY . /app
16+
17+
# Creates a non-root user with an explicit UID and adds permission to access the /app folder
18+
# For more info, please refer to https://aka.ms/vscode-docker-python-configure-containers
19+
RUN adduser -u 5678 --disabled-password --gecos "" appuser && chown -R appuser /app
20+
USER appuser
21+
22+
# During debugging, this entry point will be overridden. For more information, please refer to https://aka.ms/vscode-docker-python-debug
23+
CMD ["python", "plugin_code/resources.py"]

LICENSE

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
Shogun Qgis Configurator
2-
Copyright (C) 2025 terrestris GmbH & Co. KG
1+
Qgis-Shogun-Editor
2+
Copyright (C) 2024 terrestris GmbH & Co. KG
33

44
This program is free software; you can redistribute it and/or modify
55
it under the terms of the GNU General Public License as published by

README.html

Lines changed: 0 additions & 42 deletions
This file was deleted.

README.md

Lines changed: 10 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -1,59 +1,17 @@
1+
# qgis-shogun-editor
12

2-
# Menu
3-
Nach der Installation findet man das Plugin unter dem Menupunkt **Web** und in der **Erweiterungswerkzeugleiste**
3+
WIP: reworking the old plugin
44

5-
![metadata_search_plugin_menu_de](https://user-images.githubusercontent.com/1188234/168553178-490b2e64-28d1-423d-b85b-7fe1993b280c.gif)
5+
## Development
66

7-
After the installation you will find the Plugin starter under **Web** and in the **Plugins Toolbar**
7+
### Docker
88

9-
![metadata_search_plugin_menu_en](https://user-images.githubusercontent.com/1188234/168553661-00918691-d16d-4a05-afc2-2b68984d3026.gif)
9+
**Start**
1010

11+
Run
1112

12-
# gprlp_metadata_search
13-
QGIS Plugin zur Abfrage der GeoPortal.rlp Metadaten-Suchschnittstelle (https://documents.geoportal.rlp.de/mediawiki/index.php/SearchInterface). Man kann nach registrierten Resourcen suchen und gekoppelte Dienste direkt in den QGIS Browser laden. Neben der Suche im GeoPortal.rlp, kann man auch in den dort registrierten Katalogen suchen. Diese Suche geht über den json-Wrapper der jeweiligen Katalogschnittstelle und löst ebenfalls die Daten-Service Kopplung auf. Die im der jeweiligen GeoPortal.rlp Instanz registrierten Katalogschnittstellen sind als json über folgende URL verfügbar: https://www.geoportal.rlp.de/mapbender/php/mod_showCswList.php.
14-
Aktuell stehen im Geoportal des Landes Rheinland-Pfalz sowohl der deutsche, als auch der europäische Geodatenkatalog zur Verfügung. **Ein Nutzer hat damit Zugriff auf alle Geodaten der GDI-DE sowie von INSPIRE!** Die Auflösung der Daten-Service Kopplung erfolgt gemäß den Vorgaben der EU INSPIRE-Richtlinie: https://github.com/INSPIRE-MIF/technical-guidelines/blob/2022.1/metadata/metadata-iso19139/metadata-iso19139.adoc#4124-linking-to-provided-data-sets-using-coupled-resource
13+
```shell
14+
./setup.sh
15+
```
1516

16-
![metadata_search_plugin](https://user-images.githubusercontent.com/1188234/158362261-d85e6263-b3f4-4b18-a6c3-6eb2ed25fa7e.png)
17-
18-
19-
QGIS plugin for using the GeoPortal.rlp RESTful metadata SearchInterface (https://documents.geoportal.rlp.de/mediawiki/index.php/SearchInterface) to search and load remote data. There is also another similar interface for a simple remote search in registrated CSW. The registrated CSW interfaces are available in json format: https://www.geoportal.rlp.de/mapbender/php/mod_showCswList.php.
20-
**Actually a user get a direct access to the central spatial data catalogue of Germany (Geodatenkatalog.DE) and the european INSPIRE catalogue!** The plugin allows searching for datasets and it automatically resolves the coupled services for this datasets while using the european - INSPIRE - way of doing this (https://github.com/INSPIRE-MIF/technical-guidelines/blob/2022.1/metadata/metadata-iso19139/metadata-iso19139.adoc).
21-
22-
23-
# Video
24-
![qgis_3 22_metadata_search_plugin](https://user-images.githubusercontent.com/1188234/154994934-aa8abb57-4b8c-47b3-b18c-c0ad3efb07a1.mp4)
25-
26-
# Optionen / Options
27-
## Suchressourcen / Search resources
28-
### Datensätze / Datasets
29-
Hier wird nach dem Ressourcentyp "dataset" gesucht. Nach der Selektion eines Datensatztitles in der Trefferliste, werden weitere Metadaten zum Treffer angezeigt. Unter "Weitere Infos" werden die zugehörigen Zugriffsmöglichkeiten über WMS, WFS, ATOM Feeds sowie OGC API Features aufgelistet. Die Selektion einer Zugriffsmöglichkeit zeigt Metadaten zu dieser Option und erlaubt es den Webservice direkt in den QGIS Browser zu übernehmen (WMS / WFS / OGC API Features).
30-
31-
![metadata_search_plugin_dataset_german](https://user-images.githubusercontent.com/1188234/158321601-111e71ca-0b8a-4bea-b0c5-68c52af7efa6.gif)
32-
33-
Search for "dataset". After the selection of the title in the resultlist, some more metadata about the dataset is shown. Under "Further info" the coupled accessoptions via WMS, WFS, ATOM Feed and OGC API Features are shown. The selection of one of this accessoptions give some further metadata about the service and allows to load it directly into QGIS browser (WMS / WFS / OGC API Features).
34-
35-
### Kartenebenen / Map layers
36-
Hier werden alle WMS Layer durchsucht. Ähnlich wie bei der Datensatzsuche erhält man bei Auswahl eines Treffers weitere Metadaten zum jeweiligen Layer und die Möglichkeit ihn direkt in den QGIS Browser zu übernehmen.
37-
38-
Search for WMS layer. Similar to dataset search, the user gets more metadata about the corresponding layer after its selection. The selected layer can be loaded directly into the QGIS browser.
39-
40-
### Publizierte OWS Context Dokumenten / Published OWS Context Documents
41-
Im GeoPortal.rlp werden auch Metadaten zu Kartenzusammenstellungen in Form von OGC WMC Dokumenten verwaltet. Diese Ressourcen werden können publiziert werden, um einen speziellen thematischen Anwendungsfall abzudecken. Die Kartenzusammenstellungen können auch in Form von OWS Context Dokumenten (https://portal.ogc.org/files/?artifact_id=68826) exportiert werden. Das Plugin kann diese Laden und vorhandene WMS Layer (offerings) in den QGIS Browser zu übernehmen. Weitere Informationen zum OWS Context Standard: http://www.owscontext.org/owc_user_guide/C0_userGuide.html
42-
43-
The GeoPortal.rlp registry mangages metadata for user-defined context documents (actual extended OGC WMC 1.1.0 documents). This resources can be published to serve a special theme. The context documents are also available in form of OWS Context documents (json encoding - https://portal.ogc.org/files/?artifact_id=68826). The plugin can read this documents and allows the loading of defined WMS offerings. Further information about OWS Context: http://www.owscontext.org/owc_user_guide/C0_userGuide.html
44-
45-
### Entfernte CSW / Remote CSW
46-
Siehe Beschreibung des Plugins zu Begin.
47-
48-
See plugin description at the begin.
49-
50-
#### Geodatenkatalog.DE / German spatial data catalogue
51-
![metadata_search_plugin_remote_csw_german](https://user-images.githubusercontent.com/1188234/158322943-5e01d859-0f68-47f5-8b1a-0eb763f94a1d.gif)
52-
#### INSPIRE Katalog / INSPIRE catalogue
53-
![metadata_search_plugin_remot
54-
e_csw_german_inspire](https://user-images.githubusercontent.com/1188234/158323058-e1b9d8cb-b88d-40e6-abcc-5a48b352081d.gif)
55-
56-
## Wechsel zwischen Länderkatalogen / Switch between federal catalogues
57-
### Rheinland-Pfalz / Rhineland-Palatinate
58-
### Hessen / Hesse
59-
### Saarland / Saarland
17+
to start QGIS.

README.txt

Lines changed: 0 additions & 32 deletions
This file was deleted.

0 commit comments

Comments
 (0)