Commit 3ba87aec authored by Luna Riegel's avatar Luna Riegel
Browse files

Style: Add Localizations to LibraryObject

parent ec4ac8d6
......@@ -4,6 +4,7 @@ import de.hft.stuttgart.citydoctor2.parser.CityGmlParseException;
import de.hft.stuttgart.citydoctor2.parser.CityGmlParser;
import de.hft.stuttgart.citydoctor2.parser.InvalidGmlFileException;
import de.hft.stuttgart.citydoctor2.parser.ParserConfiguration;
import de.hft.stuttgart.citydoctor2.utils.Localization;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
......@@ -54,31 +55,25 @@ public class LibraryObject extends Geometry {
try {
geo = getProtoGeometry(CityGmlParser.nestedCityGmlFileParse(path.toString(), config));
} catch (CityGmlParseException e) {
//TODO: Localize Strings
logger.error(String.format(
"Encountered an error while parsing library object %s", path));
logger.error(Localization.getText("LibraryObject.parsingError"), path);
logger.error(e.getStackTrace());
} catch (InvalidGmlFileException e) {
logger.error(e.getStackTrace());
}
} else {
//TODO: Localize Strings
logger.error(String.format("Implicit geometry references non-existing library object file %s.", path));
logger.error(Localization.getText("LibraryObject.fileMissing"), path);
}
return geo;
}
private static Geometry getProtoGeometry(CityDoctorModel model) throws InvalidGmlFileException, CityGmlParseException {
if (model == null) {
//TODO: Localize Strings
throw new CityGmlParseException("CityDoctorModel of referenced LibraryObject is null");
}
List<CityObject> objects = model.createFeatureStream().toList();
if (objects.isEmpty()) {
//TODO: Localize Strings
throw new InvalidGmlFileException("Referenced library-object gml file does not contain any CityGML objects!");
} else if (objects.size() > 1) {
//TODO: Localize Strings
throw new InvalidGmlFileException("Referenced library-object gml file contains more than one CityGML object!");
}
return objects.get(0).getHighestLodGeometry();
......
......@@ -118,6 +118,8 @@ FilterPane.transportation=Transportation
FilterPane.vegetation=Vegetation
FilterPane.water=Water
GeometryMapper.emptyPolygon=Found polygon without exterior ring, ignoring
LibraryObject.fileMissing=Implicit geometry references non-existing library object file {}
LibraryObject.parsingError=Encountered an error while parsing library object {}
MainToolBar.culling=Enable/Disable Culling
MainToolBar.executeChecks=Execute Checks
MainToolBar.hideRoof=Show/Hide roof BoundarySurfaces
......
......@@ -118,6 +118,8 @@ FilterPane.transportation=Transport
FilterPane.vegetation=Vegetation
FilterPane.water=Wasser
GeometryMapper.emptyPolygon=Polygon ohne externen Ring gefunden, ignoriere
LibraryObject.fileMissing=Implicit Geometry verweist auf nicht vorhandene Library-Object Datei {}
LibraryObject.parsingError=Library-Object {} konnte aufgrund eines Fehlers nicht geparst werden
MainToolBar.culling=Aktiviere/Deaktiviere Entfernen der R\u00fcckseiten
MainToolBar.executeChecks=F\u00fchre Pr\u00fcfungen aus
MainToolBar.hideRoof=Zeige/Verstecke Dach BoundarySurfaces
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment