From 0a712973b377f39f411baf865c7a2abe3d021a15 Mon Sep 17 00:00:00 2001 From: Patrick Strawderman Date: Mon, 19 Aug 2024 10:27:09 -0700 Subject: [PATCH] Fix bug with schema jar files (#733) When using schemaJarFilesFromDependencies, the ZipFile was closed before the reader had read the actual schema file, resulting in an IOException being thrown. --- .../com/netflix/graphql/dgs/codegen/CodeGen.kt | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/graphql-dgs-codegen-core/src/main/kotlin/com/netflix/graphql/dgs/codegen/CodeGen.kt b/graphql-dgs-codegen-core/src/main/kotlin/com/netflix/graphql/dgs/codegen/CodeGen.kt index 87ea97d8..e47a0fe6 100644 --- a/graphql-dgs-codegen-core/src/main/kotlin/com/netflix/graphql/dgs/codegen/CodeGen.kt +++ b/graphql-dgs-codegen-core/src/main/kotlin/com/netflix/graphql/dgs/codegen/CodeGen.kt @@ -131,14 +131,13 @@ class CodeGen(private val config: CodeGenConfig) { loadSchemaReaders(readerBuilder, debugReaderBuilder) // process schema from dependencies config.schemaJarFilesFromDependencies.forEach { file -> - ZipFile(file).use { zipFile -> - for (entry in zipFile.entries()) { - if (!entry.isDirectory && entry.name.startsWith("META-INF") && - (entry.name.endsWith(".graphqls") || entry.name.endsWith(".graphql")) - ) { - logger.info("Generating schema from {}: {}", file.name, entry.name) - readerBuilder.reader(zipFile.getInputStream(entry).reader(), "codegen") - } + val zipFile = ZipFile(file) + for (entry in zipFile.entries()) { + if (!entry.isDirectory && entry.name.startsWith("META-INF") && + (entry.name.endsWith(".graphqls") || entry.name.endsWith(".graphql")) + ) { + logger.info("Generating schema from {}: {}", file.name, entry.name) + readerBuilder.reader(zipFile.getInputStream(entry).reader(), "codegen") } } }