fun generate()

in graphql-dgs-codegen-gradle/src/main/kotlin/com/netflix/graphql/dgs/codegen/gradle/GenerateJavaTask.kt [174:234]


        fun generate() {
            val schemaJarFilesFromDependencies = dgsCodegenClasspath.files.toList()
            val schemaPaths = schemaPaths.map { Paths.get(it.toString()).toFile() }.sorted().toSet()
            schemaPaths.filter { !it.exists() }.forEach {
                logger.warn("Schema location ${it.absolutePath} does not exist")
            }
            logger.info("Processing schema files:")
            schemaPaths.forEach {
                logger.info("Processing $it")
            }

            val config =
                CodeGenConfig(
                    schemas = emptySet(),
                    schemaFiles = schemaPaths,
                    schemaJarFilesFromDependencies = schemaJarFilesFromDependencies,
                    outputDir = getOutputDir().toPath(),
                    examplesOutputDir = getExampleOutputDir().toPath(),
                    writeToFiles = true,
                    packageName = packageName,
                    subPackageNameClient = subPackageNameClient,
                    subPackageNameDatafetchers = subPackageNameDatafetchers,
                    subPackageNameTypes = subPackageNameTypes,
                    language = Language.valueOf(language.uppercase(Locale.getDefault())),
                    generateBoxedTypes = generateBoxedTypes,
                    generateIsGetterForPrimitiveBooleanFields = generateIsGetterForPrimitiveBooleanFields,
                    generateClientApi = generateClient,
                    generateClientApiv2 = generateClientv2,
                    generateKotlinNullableClasses = generateKotlinNullableClasses,
                    generateKotlinClosureProjections = generateKotlinClosureProjections,
                    generateInterfaces = generateInterfaces,
                    generateInterfaceSetters = generateInterfaceSetters,
                    generateInterfaceMethodsForInterfaceFields = generateInterfaceMethodsForInterfaceFields,
                    generateDocs = generateDocs,
                    typeMapping = typeMapping,
                    includeQueries = includeQueries.toSet(),
                    includeMutations = includeMutations.toSet(),
                    includeSubscriptions = includeSubscriptions.toSet(),
                    skipEntityQueries = skipEntityQueries,
                    shortProjectionNames = shortProjectionNames,
                    generateDataTypes = generateDataTypes,
                    omitNullInputFields = omitNullInputFields,
                    kotlinAllFieldsOptional = kotlinAllFieldsOptional,
                    snakeCaseConstantNames = snakeCaseConstantNames,
                    implementSerializable = implementSerializable,
                    addGeneratedAnnotation = addGeneratedAnnotation,
                    disableDatesInGeneratedAnnotation = disableDatesInGeneratedAnnotation,
                    addDeprecatedAnnotation = addDeprecatedAnnotation,
                    includeImports = includeImports,
                    includeEnumImports = includeEnumImports,
                    includeClassImports = includeClassImports,
                    generateCustomAnnotations = generateCustomAnnotations,
                    javaGenerateAllConstructor = javaGenerateAllConstructor,
                    trackInputFieldSet = trackInputFieldSet,
                )

            logger.info("Codegen config: {}", config)

            val codegen = CodeGen(config)
            codegen.generate()
        }