fun patchPluginXml()

in src/main/kotlin/org/jetbrains/intellij/platform/gradle/tasks/PatchPluginXmlTask.kt [228:255]


    fun patchPluginXml() {
        inputFile.asPath.inputStream().use { inputStream ->
            val document = JDOMUtil.loadDocument(inputStream)

            with(document) {
                patch(pluginId, "id")
                patch(pluginName, "name")
                patch(pluginVersion.takeIf { it.get() != Project.DEFAULT_VERSION && it.get().isNotBlank() }, "version")
                patch(pluginDescription, "description", isCDATA = true)
                patch(changeNotes, "change-notes", isCDATA = true)

                patch(productDescriptorCode, "product-descriptor", "code")
                patch(productDescriptorReleaseDate, "product-descriptor", "release-date")
                patch(productDescriptorReleaseVersion, "product-descriptor", "release-version")
                patch(productDescriptorOptional.map { it.toString() }, "product-descriptor", "optional")
                patch(productDescriptorEap.map { it.toString() }, "product-descriptor", "eap")

                patch(sinceBuild, "idea-version", "since-build")
                patch(untilBuild, "idea-version", "until-build", acceptNull = true)

                patch(vendorName, "vendor")
                patch(vendorEmail, "vendor", "email")
                patch(vendorUrl, "vendor", "url")
            }

            transformXml(document, outputFile.asPath)
        }
    }