From d9a38347ef4bce172d032ce6b1f9febaedf9c66a Mon Sep 17 00:00:00 2001 From: Dominic Burger Date: Thu, 7 Nov 2024 16:57:36 +0100 Subject: [PATCH] Add geometry type column to mappings --- .../ch/geowerkstatt/lk2dxf/MappedObject.java | 9 +- .../lk2dxf/mapping/LayerMapping.java | 3 +- .../lk2dxf/mapping/ObjectMapper.java | 2 +- src/main/resources/mappings.csv | 98 +++++++++---------- .../lk2dxf/mapping/MappingReaderTest.java | 3 +- 5 files changed, 58 insertions(+), 57 deletions(-) diff --git a/src/main/java/ch/geowerkstatt/lk2dxf/MappedObject.java b/src/main/java/ch/geowerkstatt/lk2dxf/MappedObject.java index 7505dee..4502adb 100644 --- a/src/main/java/ch/geowerkstatt/lk2dxf/MappedObject.java +++ b/src/main/java/ch/geowerkstatt/lk2dxf/MappedObject.java @@ -9,7 +9,6 @@ import com.vividsolutions.jts.geom.GeometryFactory; public record MappedObject(Geometry geometry, IomObject iomObject, LayerMapping layerMapping) { - private static final String BASKET_NAME = "SIA405_LKMap_2015_LV95.SIA405_LKMap"; private static final GeometryFactory GEOMETRY_FACTORY = new JtsextGeometryFactory(); /** @@ -21,10 +20,10 @@ public record MappedObject(Geometry geometry, IomObject iomObject, LayerMapping */ public static MappedObject create(IomObject iomObject, LayerMapping layerMapping) { try { - Geometry geometry = switch (iomObject.getobjecttag()) { - case BASKET_NAME + ".LKPunkt", BASKET_NAME + ".LKObjekt_Text" -> readPoint(iomObject, layerMapping.geometry()); - case BASKET_NAME + ".LKLinie" -> readLine(iomObject, layerMapping.geometry()); - case BASKET_NAME + ".LKFlaeche" -> readSurface(iomObject, layerMapping.geometry()); + Geometry geometry = switch (layerMapping.geometryType()) { + case "Point" -> readPoint(iomObject, layerMapping.geometry()); + case "Line" -> readLine(iomObject, layerMapping.geometry()); + case "Surface" -> readSurface(iomObject, layerMapping.geometry()); default -> throw new IllegalArgumentException("Unsupported object tag: " + iomObject.getobjecttag()); }; return new MappedObject(geometry, iomObject, layerMapping); diff --git a/src/main/java/ch/geowerkstatt/lk2dxf/mapping/LayerMapping.java b/src/main/java/ch/geowerkstatt/lk2dxf/mapping/LayerMapping.java index 7770b89..70f6e2b 100644 --- a/src/main/java/ch/geowerkstatt/lk2dxf/mapping/LayerMapping.java +++ b/src/main/java/ch/geowerkstatt/lk2dxf/mapping/LayerMapping.java @@ -7,7 +7,8 @@ public record LayerMapping( String layer, - String objectType, + String objectClass, + String geometryType, String geometry, int color, String orientation, diff --git a/src/main/java/ch/geowerkstatt/lk2dxf/mapping/ObjectMapper.java b/src/main/java/ch/geowerkstatt/lk2dxf/mapping/ObjectMapper.java index 144d9cf..a082355 100644 --- a/src/main/java/ch/geowerkstatt/lk2dxf/mapping/ObjectMapper.java +++ b/src/main/java/ch/geowerkstatt/lk2dxf/mapping/ObjectMapper.java @@ -69,7 +69,7 @@ private Optional getLayerMapping(IomObject iomObject) { } private boolean matchesMapping(LayerMapping layerMapping, IomObject iomObject) { - if (!iomObject.getobjecttag().endsWith("." + layerMapping.objectType())) { + if (!iomObject.getobjecttag().endsWith("." + layerMapping.objectClass())) { return false; } diff --git a/src/main/resources/mappings.csv b/src/main/resources/mappings.csv index 357f742..d7cff53 100644 --- a/src/main/resources/mappings.csv +++ b/src/main/resources/mappings.csv @@ -1,49 +1,49 @@ -Layer ,ObjectType ,Geometry ,Color ,Orientation ,VAlign ,HAlign ,Text ,Symbol ,Linetype ,Lineweight ,Textsize ,Font ,Mapping -STILLGELEGTE-LEITUNGEN ,LKLinie ,Linie ,8 , , , , , ,Crossed ,0.25 , , ,Status=tot -ABW-LINIEFWK-GENAU ,LKLinie ,Linie ,210 , , , , , ,Continuous ,0.25 , , ,Objektart=Abwasser.Fernwirkkabel Lagebestimmung=genau -ABW-LINIEFWK-UNGENAU ,LKLinie ,Linie ,210 , , , , , ,Dashed ,0.25 , , ,Objektart=Abwasser.Fernwirkkabel Lagebestimmung=ungenau|unbekannt -ABW-LINIE-GENAU ,LKLinie ,Linie ,210 , , , , , ,Continuous ,0.25 , , ,Objektart=Abwasser.Haltung_Kanal|Abwasser.Schutzrohr Lagebestimmung=genau -ABW-LINIE-UNGENAU ,LKLinie ,Linie ,210 , , , , , ,Dashed ,0.25 , , ,Objektart=Abwasser.Haltung_Kanal|Abwasser.Schutzrohr Lagebestimmung=ungenau|unbekannt -ABW-FLAECHE ,LKFlaeche ,Flaeche ,210 , , , , , , , , , ,Objektart=Abwasser -ABW-PUNKT ,LKPunkt ,SymbolPos ,210 ,SymbolOri , , , ,BAW15 , , , , ,Objektart=Abwasser -ABW-TEXT ,LKObjekt_Text ,TextPos ,210 ,TextOri ,TextVAli ,TextHAli ,Textinhalt , , , ,1.25 ,Cadastra ,Objektart=Abwasser -ELE-LINIE-GENAU ,LKLinie ,Linie ,10 , , , , , ,Continuous ,0.25 , , ,Objektart=Elektrizitaet.Trasse.unterirdisch Lagebestimmung=genau -ELE-LINIE-UNGENAU ,LKLinie ,Linie ,10 , , , , , ,Dashed ,0.25 , , ,Objektart=Elektrizitaet.Trasse.unterirdisch Lagebestimmung=ungenau|unbekannt -ELE-LINIE-OBERIRDISCH ,LKLinie ,Linie ,10 , , , , , ,Continuous ,0.25 , , ,Objektart=Elektrizitaet.Trasse.oberirdisch|Elektrizitaet.AnkerStrebe -ELE-FLAECHE ,LKFlaeche ,Flaeche ,10 , , , , , , , , , ,Objektart=Elektrizitaet -ELE-PUNKT ,LKPunkt ,SymbolPos ,10 ,SymbolOri , , , ,BEW978 , , , , ,Objektart=Elektrizitaet -ELE-TEXT ,LKObjekt_Text ,TextPos ,10 ,TextOri ,TextVAli ,TextHAli ,Textinhalt , , , ,1.25 ,Cadastra ,Objektart=Elektrizitaet -GAS-LINIEFWK-GENAU ,LKLinie ,Linie ,22 , , , , , ,Continuous ,0.25 , , ,Objektart=Gas.Fernwirkkabel Labebestimmung=genau -GAS-LINIEFWK-UNGENAU ,LKLinie ,Linie ,22 , , , , , ,Dashed ,0.25 , , ,Objektart=Gas.Fernwirkkabel Labebestimmung=ungenau|unbekannt -GAS-LINIE-GENAU ,LKLinie ,Linie ,22 , , , , , ,Continuous ,0.25 , , ,Objektart=Gas.Leitung|Gas.Schutzrohr Labebestimmung=genau -GAS-LINIE-UNGENAU ,LKLinie ,Linie ,22 , , , , , ,Dashed ,0.25 , , ,Objektart=Gas.Leitung|Gas.Schutzrohr Labebestimmung=ungenau|unbekannt -GAS-FLAECHE ,LKFlaeche ,Flaeche ,22 , , , , , , , , , ,Objektart=Gas -GAS-PUNKT ,LKPunkt ,SymbolPos ,22 ,SymbolOri , , , ,BGA957 , , , , ,Objektart=Gas -GAS-TEXT ,LKObjekt_Text ,TextPos ,22 ,TextOri ,TextVAli ,TextHAli ,Textinhalt , , , ,1.25 ,Cadastra ,Objektart=Gas -WAS-LINIEFWK-GENAU ,LKLinie ,Linie ,170 , , , , , ,Continuous ,0.25 , , ,Objektart=Wasser.Fernwirkkabel Lagebestimmung=genau -WAS-LINIEFWK-UNGENAU ,LKLinie ,Linie ,170 , , , , , ,Dashed ,0.25 , , ,Objektart=Wasser.Fernwirkkabel Lagebestimmung=ungenau|unbekannt -WAS-LINIE-GENAU ,LKLinie ,Linie ,170 , , , , , ,Continuous ,0.25 , , ,Objektart=Wasser.Leitung|Wasser.Schutzrohr Lagebestimmung=genau -WAS-LINIE-UNGENAU ,LKLinie ,Linie ,170 , , , , , ,Dashed ,0.25 , , ,Objektart=Wasser.Leitung|Wasser.Schutzrohr Lagebestimmung=ungenau|unbekannt -WAS-FLAECHE ,LKFlaeche ,Flaeche ,170 , , , , , , , , , ,Objektart=Wasser -WAS-PUNKT ,LKPunkt ,SymbolPos ,170 ,SymbolOri , , , ,BWA15 , , , , ,Objektart=Wasser -WAS-TEXT ,LKObjekt_Text ,TextPos ,170 ,TextOri ,TextVAli ,TextHAli ,Textinhalt , , , ,1.25 ,Cadastra ,Objektart=Wasser -FER-LINIEFWK-GENAU ,LKLinie ,Linie ,30 , , , , , ,Continuous ,0.25 , , ,Objektart=Fernwaerme.Fernwirkkabel Lagebestimmung=genau -FER-LINIEFWK-UNGENAU ,LKLinie ,Linie ,30 , , , , , ,Dashed ,0.25 , , ,Objektart=Fernwaerme.Fernwirkkabel Lagebestimmung=ungenau|unbekannt -FER-LINIE-GENAU ,LKLinie ,Linie ,30 , , , , , ,Continuous ,0.25 , , ,Objektart=Fernwaerme.Trasse Lagebestimmung=genau -FER-LINIE-UNGENAU ,LKLinie ,Linie ,30 , , , , , ,Dashed ,0.25 , , ,Objektart=Fernwaerme.Trasse Lagebestimmung=ungenau|unbekannt -FER-FLAECHE ,LKFlaeche ,Flaeche ,30 , , , , , , , , , ,Objektart=Fernwaerme -FER-PUNKT ,LKPunkt ,SymbolPos ,30 ,SymbolOri , , , ,BWA965 , , , , ,Objektart=Fernwaerme -FER-TEXT ,LKObjekt_Text ,TextPos ,30 ,TextOri ,TextVAli ,TextHAli ,Textinhalt , , , ,1.25 ,Cadastra ,Objektart=Fernwaerme -KOM-LINIE-GENAU ,LKLinie ,Linie ,80 , , , , , ,Continuous ,0.25 , , ,Objektart=Kommunikation.Trasse.unterirdisch Lagebestimmung=genau -KOM-LINIE-UNGENAU ,LKLinie ,Linie ,80 , , , , , ,Dashed ,0.25 , , ,Objektart=Kommunikation.Trasse.unterirdisch Lagebestimmung=ungenau|unbekannt -KOM-LINIE-OBERIRDISCH ,LKLinie ,Linie ,80 , , , , , ,Continuous ,0.25 , , ,Objektart=Kommunikation.Trasse.oberirdisch -KOM-FLAECHE ,LKFlaeche ,Flaeche ,80 , , , , , , , , , ,Objektart=Kommunikation -KOM-PUNKT ,LKPunkt ,SymbolPos ,80 ,SymbolOri , , , ,BEW15 , , , , ,Objektart=Kommunikation -KOM-TEXT ,LKObjekt_Text ,TextPos ,80 ,TextOri ,TextVAli ,TextHAli ,Textinhalt , , , ,1.25 ,Cadastra ,Objektart=Kommunikation -WEI-LINIEFWK-GENAU ,LKLinie ,Linie ,50 , , , , , ,Continuous ,0.25 , , ,Objektart=weitereMedien.Fernwirkkabel Lagebestimmung=genau -WEI-LINIEFWK-UNGENAU ,LKLinie ,Linie ,50 , , , , , ,Dashed ,0.25 , , ,Objektart=weitereMedien.Fernwirkkabel Lagebestimmung=ungenau|unbekannt -WEI-LINIE-GENAU ,LKLinie ,Linie ,50 , , , , , ,Continuous ,0.25 , , ,Objektart=weitereMedien.Leitung|weitereMedien.Schutzrohr Lagebestimmung=genau -WEI-LINIE-UNGENAU ,LKLinie ,Linie ,50 , , , , , ,Dashed ,0.25 , , ,Objektart=weitereMedien.Leitung|weitereMedien.Schutzrohr Lagebestimmung=ungenau|unbekannt -WEI-FLAECHE ,LKFlaeche ,Flaeche ,50 , , , , , , , , , ,Objektart=weitereMedien -WEI-PUNKT ,LKPunkt ,SymbolPos ,50 ,SymbolOri , , , ,BEW15 , , , , ,Objektart=weitereMedien -WEI-TEXT ,LKObjekt_Text ,TextPos ,50 ,TextOri ,TextVAli ,TextHAli ,Textinhalt , , , ,1.25 ,Cadastra ,Objektart=weitereMedien +Layer ,ObjectClass ,GeometryType ,Geometry ,Color ,Orientation ,VAlign ,HAlign ,Text ,Symbol ,Linetype ,Lineweight ,Textsize ,Font ,Mapping +STILLGELEGTE-LEITUNGEN ,LKLinie ,Line ,Linie ,8 , , , , , ,Crossed ,0.25 , , ,Status=tot +ABW-LINIEFWK-GENAU ,LKLinie ,Line ,Linie ,210 , , , , , ,Continuous ,0.25 , , ,Objektart=Abwasser.Fernwirkkabel Lagebestimmung=genau +ABW-LINIEFWK-UNGENAU ,LKLinie ,Line ,Linie ,210 , , , , , ,Dashed ,0.25 , , ,Objektart=Abwasser.Fernwirkkabel Lagebestimmung=ungenau|unbekannt +ABW-LINIE-GENAU ,LKLinie ,Line ,Linie ,210 , , , , , ,Continuous ,0.25 , , ,Objektart=Abwasser.Haltung_Kanal|Abwasser.Schutzrohr Lagebestimmung=genau +ABW-LINIE-UNGENAU ,LKLinie ,Line ,Linie ,210 , , , , , ,Dashed ,0.25 , , ,Objektart=Abwasser.Haltung_Kanal|Abwasser.Schutzrohr Lagebestimmung=ungenau|unbekannt +ABW-FLAECHE ,LKFlaeche ,Surface ,Flaeche ,210 , , , , , , , , , ,Objektart=Abwasser +ABW-PUNKT ,LKPunkt ,Point ,SymbolPos ,210 ,SymbolOri , , , ,BAW15 , , , , ,Objektart=Abwasser +ABW-TEXT ,LKObjekt_Text ,Point ,TextPos ,210 ,TextOri ,TextVAli ,TextHAli ,Textinhalt , , , ,1.25 ,Cadastra ,Objektart=Abwasser +ELE-LINIE-GENAU ,LKLinie ,Line ,Linie ,10 , , , , , ,Continuous ,0.25 , , ,Objektart=Elektrizitaet.Trasse.unterirdisch Lagebestimmung=genau +ELE-LINIE-UNGENAU ,LKLinie ,Line ,Linie ,10 , , , , , ,Dashed ,0.25 , , ,Objektart=Elektrizitaet.Trasse.unterirdisch Lagebestimmung=ungenau|unbekannt +ELE-LINIE-OBERIRDISCH ,LKLinie ,Line ,Linie ,10 , , , , , ,Continuous ,0.25 , , ,Objektart=Elektrizitaet.Trasse.oberirdisch|Elektrizitaet.AnkerStrebe +ELE-FLAECHE ,LKFlaeche ,Surface ,Flaeche ,10 , , , , , , , , , ,Objektart=Elektrizitaet +ELE-PUNKT ,LKPunkt ,Point ,SymbolPos ,10 ,SymbolOri , , , ,BEW978 , , , , ,Objektart=Elektrizitaet +ELE-TEXT ,LKObjekt_Text ,Point ,TextPos ,10 ,TextOri ,TextVAli ,TextHAli ,Textinhalt , , , ,1.25 ,Cadastra ,Objektart=Elektrizitaet +GAS-LINIEFWK-GENAU ,LKLinie ,Line ,Linie ,22 , , , , , ,Continuous ,0.25 , , ,Objektart=Gas.Fernwirkkabel Labebestimmung=genau +GAS-LINIEFWK-UNGENAU ,LKLinie ,Line ,Linie ,22 , , , , , ,Dashed ,0.25 , , ,Objektart=Gas.Fernwirkkabel Labebestimmung=ungenau|unbekannt +GAS-LINIE-GENAU ,LKLinie ,Line ,Linie ,22 , , , , , ,Continuous ,0.25 , , ,Objektart=Gas.Leitung|Gas.Schutzrohr Labebestimmung=genau +GAS-LINIE-UNGENAU ,LKLinie ,Line ,Linie ,22 , , , , , ,Dashed ,0.25 , , ,Objektart=Gas.Leitung|Gas.Schutzrohr Labebestimmung=ungenau|unbekannt +GAS-FLAECHE ,LKFlaeche ,Surface ,Flaeche ,22 , , , , , , , , , ,Objektart=Gas +GAS-PUNKT ,LKPunkt ,Point ,SymbolPos ,22 ,SymbolOri , , , ,BGA957 , , , , ,Objektart=Gas +GAS-TEXT ,LKObjekt_Text ,Point ,TextPos ,22 ,TextOri ,TextVAli ,TextHAli ,Textinhalt , , , ,1.25 ,Cadastra ,Objektart=Gas +WAS-LINIEFWK-GENAU ,LKLinie ,Line ,Linie ,170 , , , , , ,Continuous ,0.25 , , ,Objektart=Wasser.Fernwirkkabel Lagebestimmung=genau +WAS-LINIEFWK-UNGENAU ,LKLinie ,Line ,Linie ,170 , , , , , ,Dashed ,0.25 , , ,Objektart=Wasser.Fernwirkkabel Lagebestimmung=ungenau|unbekannt +WAS-LINIE-GENAU ,LKLinie ,Line ,Linie ,170 , , , , , ,Continuous ,0.25 , , ,Objektart=Wasser.Leitung|Wasser.Schutzrohr Lagebestimmung=genau +WAS-LINIE-UNGENAU ,LKLinie ,Line ,Linie ,170 , , , , , ,Dashed ,0.25 , , ,Objektart=Wasser.Leitung|Wasser.Schutzrohr Lagebestimmung=ungenau|unbekannt +WAS-FLAECHE ,LKFlaeche ,Surface ,Flaeche ,170 , , , , , , , , , ,Objektart=Wasser +WAS-PUNKT ,LKPunkt ,Point ,SymbolPos ,170 ,SymbolOri , , , ,BWA15 , , , , ,Objektart=Wasser +WAS-TEXT ,LKObjekt_Text ,Point ,TextPos ,170 ,TextOri ,TextVAli ,TextHAli ,Textinhalt , , , ,1.25 ,Cadastra ,Objektart=Wasser +FER-LINIEFWK-GENAU ,LKLinie ,Line ,Linie ,30 , , , , , ,Continuous ,0.25 , , ,Objektart=Fernwaerme.Fernwirkkabel Lagebestimmung=genau +FER-LINIEFWK-UNGENAU ,LKLinie ,Line ,Linie ,30 , , , , , ,Dashed ,0.25 , , ,Objektart=Fernwaerme.Fernwirkkabel Lagebestimmung=ungenau|unbekannt +FER-LINIE-GENAU ,LKLinie ,Line ,Linie ,30 , , , , , ,Continuous ,0.25 , , ,Objektart=Fernwaerme.Trasse Lagebestimmung=genau +FER-LINIE-UNGENAU ,LKLinie ,Line ,Linie ,30 , , , , , ,Dashed ,0.25 , , ,Objektart=Fernwaerme.Trasse Lagebestimmung=ungenau|unbekannt +FER-FLAECHE ,LKFlaeche ,Surface ,Flaeche ,30 , , , , , , , , , ,Objektart=Fernwaerme +FER-PUNKT ,LKPunkt ,Point ,SymbolPos ,30 ,SymbolOri , , , ,BWA965 , , , , ,Objektart=Fernwaerme +FER-TEXT ,LKObjekt_Text ,Point ,TextPos ,30 ,TextOri ,TextVAli ,TextHAli ,Textinhalt , , , ,1.25 ,Cadastra ,Objektart=Fernwaerme +KOM-LINIE-GENAU ,LKLinie ,Line ,Linie ,80 , , , , , ,Continuous ,0.25 , , ,Objektart=Kommunikation.Trasse.unterirdisch Lagebestimmung=genau +KOM-LINIE-UNGENAU ,LKLinie ,Line ,Linie ,80 , , , , , ,Dashed ,0.25 , , ,Objektart=Kommunikation.Trasse.unterirdisch Lagebestimmung=ungenau|unbekannt +KOM-LINIE-OBERIRDISCH ,LKLinie ,Line ,Linie ,80 , , , , , ,Continuous ,0.25 , , ,Objektart=Kommunikation.Trasse.oberirdisch +KOM-FLAECHE ,LKFlaeche ,Surface ,Flaeche ,80 , , , , , , , , , ,Objektart=Kommunikation +KOM-PUNKT ,LKPunkt ,Point ,SymbolPos ,80 ,SymbolOri , , , ,BEW15 , , , , ,Objektart=Kommunikation +KOM-TEXT ,LKObjekt_Text ,Point ,TextPos ,80 ,TextOri ,TextVAli ,TextHAli ,Textinhalt , , , ,1.25 ,Cadastra ,Objektart=Kommunikation +WEI-LINIEFWK-GENAU ,LKLinie ,Line ,Linie ,50 , , , , , ,Continuous ,0.25 , , ,Objektart=weitereMedien.Fernwirkkabel Lagebestimmung=genau +WEI-LINIEFWK-UNGENAU ,LKLinie ,Line ,Linie ,50 , , , , , ,Dashed ,0.25 , , ,Objektart=weitereMedien.Fernwirkkabel Lagebestimmung=ungenau|unbekannt +WEI-LINIE-GENAU ,LKLinie ,Line ,Linie ,50 , , , , , ,Continuous ,0.25 , , ,Objektart=weitereMedien.Leitung|weitereMedien.Schutzrohr Lagebestimmung=genau +WEI-LINIE-UNGENAU ,LKLinie ,Line ,Linie ,50 , , , , , ,Dashed ,0.25 , , ,Objektart=weitereMedien.Leitung|weitereMedien.Schutzrohr Lagebestimmung=ungenau|unbekannt +WEI-FLAECHE ,LKFlaeche ,Surface ,Flaeche ,50 , , , , , , , , , ,Objektart=weitereMedien +WEI-PUNKT ,LKPunkt ,Point ,SymbolPos ,50 ,SymbolOri , , , ,BEW15 , , , , ,Objektart=weitereMedien +WEI-TEXT ,LKObjekt_Text ,Point ,TextPos ,50 ,TextOri ,TextVAli ,TextHAli ,Textinhalt , , , ,1.25 ,Cadastra ,Objektart=weitereMedien diff --git a/src/test/java/ch/geowerkstatt/lk2dxf/mapping/MappingReaderTest.java b/src/test/java/ch/geowerkstatt/lk2dxf/mapping/MappingReaderTest.java index c1db0a7..e729035 100644 --- a/src/test/java/ch/geowerkstatt/lk2dxf/mapping/MappingReaderTest.java +++ b/src/test/java/ch/geowerkstatt/lk2dxf/mapping/MappingReaderTest.java @@ -14,7 +14,8 @@ public void readMappings() throws IOException { List mappings = MappingReader.readMappings(); assertTrue(mappings.stream().noneMatch(m -> m.layer().isBlank()), "Layer is required"); - assertTrue(mappings.stream().noneMatch(m -> m.objectType().isBlank()), "ObjectType is required"); + assertTrue(mappings.stream().noneMatch(m -> m.objectClass().isBlank()), "ObjectType is required"); + assertTrue(mappings.stream().noneMatch(m -> m.geometryType().isBlank()), "GeometryType is required"); assertTrue(mappings.stream().noneMatch(m -> m.geometry().isBlank()), "Geometry is required"); assertTrue(mappings.stream().noneMatch(m -> m.mapping().isEmpty()), "Mapping is required"); assertEquals("STILLGELEGTE-LEITUNGEN", mappings.getFirst().layer());