diff --git a/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/parser/CityGmlParser.java b/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/parser/CityGmlParser.java index 9073e66dbf0f7c5b732e5ce9134e5b6c1df2e1d5..73501dabd5f4b18d51a8bf0a5cfe5724564292d3 100644 --- a/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/parser/CityGmlParser.java +++ b/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/parser/CityGmlParser.java @@ -39,7 +39,7 @@ import javax.xml.validation.SchemaFactory; import javax.xml.validation.Validator; import de.hft.stuttgart.citydoctor2.zip.CityGmlZipEntry; -import de.hft.stuttgart.citydoctor2.zip.CityGmlZipInputStream; +import de.hft.stuttgart.citydoctor2.zip.CityGmlZipEntryFile; import org.apache.logging.log4j.Level; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -199,8 +199,8 @@ public class CityGmlParser { CityGMLContext context = getContext(); if (config.getValidate()) { - try (CityGmlZipInputStream cgis = new CityGmlZipInputStream(entry)){ - List<String> messages = validateStream(cgis.getInputStream(),context); + try (CityGmlZipEntryFile entryFile = new CityGmlZipEntryFile(entry)){ + List<String> messages = validateStream(entryFile.getInputStream(),context); if (!messages.isEmpty()) { throw new InvalidGmlFileException("Invalid GML File. First error: \n" + messages.get(0)); } @@ -220,8 +220,8 @@ public class CityGmlParser { public static CityDoctorModel decompressAndParseCityGmlEntry(CityGmlZipEntry entry, ParserConfiguration config, ProgressListener l, CityGMLContext context) throws CityGmlParseException { - try (CityGmlZipInputStream cgis = new CityGmlZipInputStream(entry)){ - BufferedInputStream bis = new BufferedInputStream(cgis.getInputStream()); + try (CityGmlZipEntryFile entryFile = new CityGmlZipEntryFile(entry)){ + BufferedInputStream bis = new BufferedInputStream(entryFile.getInputStream()); readEpsgCodeFromInputStream(bis,config); CityGMLInputFactory in = context.createCityGMLInputFactory() .withChunking(ChunkOptions.chunkByProperties(chunkProperties).skipCityModel(false)); @@ -294,8 +294,8 @@ public class CityGmlParser { public static void streamCityGml(CityGmlZipEntry entry, ParserConfiguration config, CityGmlConsumer cityObjectConsumer, String outputFile) throws CityGmlParseException, IOException { - try (CityGmlZipInputStream cgis = new CityGmlZipInputStream(entry)) { - parseEpsgCodeFromStream(cgis.getInputStream(), config); + try (CityGmlZipEntryFile entryFile = new CityGmlZipEntryFile(entry)) { + parseEpsgCodeFromStream(entryFile.getInputStream(), config); startReadingCityGmlZipEntry(entry, config, null,cityObjectConsumer, outputFile); } catch (ParserConfigurationException | SAXException | IOException e) { throw new CityGmlParseException("Failed to read CityGML stream", e); @@ -360,8 +360,8 @@ public class CityGmlParser { private static void startReadingCityGmlZipEntry(CityGmlZipEntry entry, ParserConfiguration config, ProgressListener l, CityGmlConsumer cityObjectConsumer, String outputFile) { - try (CityGmlZipInputStream cgis = new CityGmlZipInputStream(entry); - ObservedInputStream ois = new ObservedInputStream(cgis.getInputStream(), entry.getFileSize())){ + try (CityGmlZipEntryFile entryFile = new CityGmlZipEntryFile(entry); + ObservedInputStream ois = new ObservedInputStream(entryFile.getInputStream(), entry.getFileSize())){ if (l != null) { ois.addListener(l::updateProgress); } diff --git a/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/CityGmlZipEntry.java b/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/CityGmlZipEntry.java index 00b1397d4323a7759565f42601c147d85fc91f55..6b1a429b6155b4d35b1f6df8bad92e76d0c5e693 100644 --- a/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/CityGmlZipEntry.java +++ b/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/CityGmlZipEntry.java @@ -71,8 +71,8 @@ public class CityGmlZipEntry implements Serializable { if (fileSize != -1L) { return memoryLimit > fileSize; } - try (CityGmlZipInputStream cgis = new CityGmlZipInputStream(this)){ - long filesize = cgis.getFileSize(); + try (CityGmlZipEntryFile entryFile = new CityGmlZipEntryFile(this)){ + long filesize = entryFile.getFileSize(); if (filesize != -1){ this.fileSize = filesize; return memoryLimit > fileSize; diff --git a/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/CityGmlZipInputStream.java b/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/CityGmlZipEntryFile.java similarity index 90% rename from CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/CityGmlZipInputStream.java rename to CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/CityGmlZipEntryFile.java index 472bb383e03063ce54d0b8099574659453987b64..967fe29bfd88efc74d53dbe592f037c0e87c4d96 100644 --- a/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/CityGmlZipInputStream.java +++ b/CityDoctorParent/CityDoctorModel/src/main/java/de/hft/stuttgart/citydoctor2/zip/CityGmlZipEntryFile.java @@ -6,14 +6,14 @@ import java.io.InputStream; import java.util.zip.ZipEntry; import java.util.zip.ZipFile; -public class CityGmlZipInputStream implements AutoCloseable { +public class CityGmlZipEntryFile implements AutoCloseable { private final ZipFile zip; private final ZipEntry zipEntry; private boolean closed = false; private static final long MB = 1024 * 1024L; - public CityGmlZipInputStream(CityGmlZipEntry entry) throws IOException { + public CityGmlZipEntryFile(CityGmlZipEntry entry) throws IOException { CityGmlZipArchive archive = entry.getArchive(); zip = new ZipFile(archive.getArchivePath().toFile()); zipEntry = zip.getEntry(entry.getFileName()); diff --git a/CityDoctorParent/CityDoctorValidation/src/main/java/de/hft/stuttgart/citydoctor2/check/Checker.java b/CityDoctorParent/CityDoctorValidation/src/main/java/de/hft/stuttgart/citydoctor2/check/Checker.java index c096b35832295373baed69866a3fdf41c381cca2..f498e1c6bdd34012e679f0636992ee1be12fc4c0 100644 --- a/CityDoctorParent/CityDoctorValidation/src/main/java/de/hft/stuttgart/citydoctor2/check/Checker.java +++ b/CityDoctorParent/CityDoctorValidation/src/main/java/de/hft/stuttgart/citydoctor2/check/Checker.java @@ -49,7 +49,7 @@ import javax.xml.transform.sax.SAXResult; import javax.xml.transform.stream.StreamSource; import de.hft.stuttgart.citydoctor2.zip.CityGmlZipEntry; -import de.hft.stuttgart.citydoctor2.zip.CityGmlZipInputStream; +import de.hft.stuttgart.citydoctor2.zip.CityGmlZipEntryFile; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -754,8 +754,8 @@ public class Checker { PdfStreamReporter pdfReporter = getPdfReporter(config, pdfBos, fileName); // execute schematron first - try (CityGmlZipInputStream cgis = new CityGmlZipInputStream(entry)) { - SvrlContentHandler handler = executeSchematronValidationIfAvailable(config, cgis.getInputStream()); + try (CityGmlZipEntryFile entryFile = new CityGmlZipEntryFile(entry)) { + SvrlContentHandler handler = executeSchematronValidationIfAvailable(config, entryFile.getInputStream()); CityGmlConsumer con = new StreamCityGmlConsumer(c, xmlReporter, pdfReporter, handler, config, null); // parse and validate