Vérifier la structure des shapefiles présents dans une livraison
Description
-
il n'y a que 2 fichiers shapefiles -
ou un fichier gpkg avec 2 couches
Gérer 2 cas de figure :
-
Cas A : shapefiles ou noms des couches gpkg avec des préfixes :
-
M_{identifiant}.shp
- préfixeM_
(ET extension.shp
dans le cas d'un shapefiles) : ne doit contenir qu'un seul objet -
C_{identifiant}.shp
- préfixeC_
(ET extension.shp
dans le cas d'un shapefiles) : doit contenir autant d'objets que de fichiers rasters présents
-
-
Cas B : shapefiles ou noms des couches gpkg avec des noms génériques :
-
dataset.shp
ne doit contenir qu'un seul objet -
image.shp
doit contenir autant d'objets que de fichiers rasters présents
-
-
le système de coordonnées doit être en EPSG:4326
Points d'attention
Dans le cas A, la structure des identifiants n'est pas stable et n'est pas à vérifier.
Détermination des cas :
- si la variable d'environnement
GPF_RLT_LIVRAISON_TYPE
=PREFIX
alors on utilise le cas A. Si les fichiers ne correspondent pas au cas A, on lève une erreur sans vérifier si c'est un cas B. - si la variable d'environnement
GPF_RLT_LIVRAISON_TYPE
=GENERIC
alors on utilise le cas B. Si les fichiers ne correspondent pas au cas B, on lève une erreur sans vérifier si c'est un cas A. - si la variable d'environnement
GPF_RLT_LIVRAISON_TYPE
=AUTO
ou si indéfinie on essaie de déterminer en regardant les noms de fichiers présents :- si un fichier
M_*.shp
etC_*.shp
sont présents : cas A - si un fichier
dataset.shp
etimage.shp
sont présents : cas B
- si un fichier
Journalisation
Messages d'erreur
Nombre de fichiers incorrect
||USER||ERROR|| Le nombre de fichiers shapefiles est incorrect {nombre_fichiers_shp_listés} != {nombre_fichiers_shp_attendu}.
Nombre d'objets incohérents
||USER||ERROR|| Le fichier dataset.shp contient xx objets, il ne doit en contenir qu'un.
||USER||ERROR|| Le fichier image.shp contient xx objets contre xx fichiers rasters présents.
Système de projection
||USER||ERROR|| Le fichier xxx.shp doit être en EPSG:4326 (projection actuelle : EPSG:xxxx)
Pistes d'implémentation
à la discrétion du/de la développeur/se
RAS
Validation
-
spécification validée