From 072349a925967dae886890bbe1142e520aa6df72 Mon Sep 17 00:00:00 2001 From: meil <ics.sora.meil@gmail.com> Date: Sun, 14 Jun 2020 22:31:58 +0900 Subject: [PATCH] fix broken placeholder when empty value --- .../librarian/plugin/entities/PomDeveloper.kt | 5 +++-- .../plugin/entities/PomDeveloperNoNameSpace.kt | 5 +++-- .../meilcli/librarian/plugin/entities/PomLicense.kt | 5 +++-- .../plugin/entities/PomLicenseNoNameSpace.kt | 5 +++-- .../librarian/plugin/entities/PomOrganization.kt | 3 ++- .../plugin/entities/PomOrganizationNoNameSpace.kt | 3 ++- .../librarian/plugin/entities/PomParentProject.kt | 7 ++++--- .../plugin/entities/PomParentProjectNoNameSpace.kt | 7 ++++--- .../meilcli/librarian/plugin/entities/PomProject.kt | 13 +++++++------ .../plugin/entities/PomProjectNoNameSpace.kt | 13 +++++++------ .../librarian/plugin/extensions/StringExtensions.kt | 5 +++++ .../net/meilcli/librarian/plugin/PomFileTest.kt | 4 ++-- 12 files changed, 45 insertions(+), 30 deletions(-) create mode 100644 plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/extensions/StringExtensions.kt diff --git a/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomDeveloper.kt b/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomDeveloper.kt index 11fd816..f471d22 100644 --- a/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomDeveloper.kt +++ b/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomDeveloper.kt @@ -1,6 +1,7 @@ package net.meilcli.librarian.plugin.entities import kotlinx.serialization.Serializable +import net.meilcli.librarian.plugin.extensions.toNullIfEmpty import nl.adaptivity.xmlutil.serialization.XmlSerialName import nl.adaptivity.xmlutil.serialization.XmlValue @@ -26,8 +27,8 @@ data class PomDeveloper( ) override val name: String? - get() = nameValue?.value + get() = nameValue?.value?.toNullIfEmpty() override val organization: String? - get() = organizationValue?.value + get() = organizationValue?.value?.toNullIfEmpty() } \ No newline at end of file diff --git a/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomDeveloperNoNameSpace.kt b/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomDeveloperNoNameSpace.kt index 1defb09..27a600c 100644 --- a/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomDeveloperNoNameSpace.kt +++ b/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomDeveloperNoNameSpace.kt @@ -1,6 +1,7 @@ package net.meilcli.librarian.plugin.entities import kotlinx.serialization.Serializable +import net.meilcli.librarian.plugin.extensions.toNullIfEmpty import nl.adaptivity.xmlutil.serialization.XmlSerialName import nl.adaptivity.xmlutil.serialization.XmlValue @@ -26,8 +27,8 @@ data class PomDeveloperNoNameSpace( ) override val name: String? - get() = nameValue?.value + get() = nameValue?.value?.toNullIfEmpty() override val organization: String? - get() = organizationValue?.value + get() = organizationValue?.value?.toNullIfEmpty() } \ No newline at end of file diff --git a/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomLicense.kt b/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomLicense.kt index 4546094..2752465 100644 --- a/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomLicense.kt +++ b/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomLicense.kt @@ -1,6 +1,7 @@ package net.meilcli.librarian.plugin.entities import kotlinx.serialization.Serializable +import net.meilcli.librarian.plugin.extensions.toNullIfEmpty import nl.adaptivity.xmlutil.serialization.XmlSerialName import nl.adaptivity.xmlutil.serialization.XmlValue @@ -26,8 +27,8 @@ data class PomLicense( ) override val name: String? - get() = nameValue?.value + get() = nameValue?.value?.toNullIfEmpty() override val url: String? - get() = urlValue?.value + get() = urlValue?.value?.toNullIfEmpty() } \ No newline at end of file diff --git a/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomLicenseNoNameSpace.kt b/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomLicenseNoNameSpace.kt index 6926fd4..f19472f 100644 --- a/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomLicenseNoNameSpace.kt +++ b/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomLicenseNoNameSpace.kt @@ -1,6 +1,7 @@ package net.meilcli.librarian.plugin.entities import kotlinx.serialization.Serializable +import net.meilcli.librarian.plugin.extensions.toNullIfEmpty import nl.adaptivity.xmlutil.serialization.XmlSerialName import nl.adaptivity.xmlutil.serialization.XmlValue @@ -26,8 +27,8 @@ data class PomLicenseNoNameSpace( ) override val name: String? - get() = nameValue?.value + get() = nameValue?.value?.toNullIfEmpty() override val url: String? - get() = urlValue?.value + get() = urlValue?.value?.toNullIfEmpty() } \ No newline at end of file diff --git a/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomOrganization.kt b/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomOrganization.kt index 5c88351..1ea7f92 100644 --- a/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomOrganization.kt +++ b/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomOrganization.kt @@ -1,6 +1,7 @@ package net.meilcli.librarian.plugin.entities import kotlinx.serialization.Serializable +import net.meilcli.librarian.plugin.extensions.toNullIfEmpty import nl.adaptivity.xmlutil.serialization.XmlSerialName import nl.adaptivity.xmlutil.serialization.XmlValue @@ -18,5 +19,5 @@ data class PomOrganization( ) override val name: String? - get() = nameValue?.value + get() = nameValue?.value?.toNullIfEmpty() } \ No newline at end of file diff --git a/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomOrganizationNoNameSpace.kt b/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomOrganizationNoNameSpace.kt index 771dae5..ebece8b 100644 --- a/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomOrganizationNoNameSpace.kt +++ b/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomOrganizationNoNameSpace.kt @@ -1,6 +1,7 @@ package net.meilcli.librarian.plugin.entities import kotlinx.serialization.Serializable +import net.meilcli.librarian.plugin.extensions.toNullIfEmpty import nl.adaptivity.xmlutil.serialization.XmlSerialName import nl.adaptivity.xmlutil.serialization.XmlValue @@ -18,5 +19,5 @@ data class PomOrganizationNoNameSpace( ) override val name: String? - get() = nameValue?.value + get() = nameValue?.value?.toNullIfEmpty() } \ No newline at end of file diff --git a/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomParentProject.kt b/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomParentProject.kt index 9ef238c..d1448b2 100644 --- a/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomParentProject.kt +++ b/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomParentProject.kt @@ -1,6 +1,7 @@ package net.meilcli.librarian.plugin.entities import kotlinx.serialization.Serializable +import net.meilcli.librarian.plugin.extensions.toNullIfEmpty import nl.adaptivity.xmlutil.serialization.XmlSerialName import nl.adaptivity.xmlutil.serialization.XmlValue @@ -34,11 +35,11 @@ data class PomParentProject( ) override val group: String? - get() = groupValue?.value + get() = groupValue?.value?.toNullIfEmpty() override val artifact: String? - get() = artifactValue?.value + get() = artifactValue?.value?.toNullIfEmpty() override val version: String? - get() = versionValue?.value + get() = versionValue?.value?.toNullIfEmpty() } \ No newline at end of file diff --git a/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomParentProjectNoNameSpace.kt b/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomParentProjectNoNameSpace.kt index cdee9cf..7420c1e 100644 --- a/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomParentProjectNoNameSpace.kt +++ b/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomParentProjectNoNameSpace.kt @@ -1,6 +1,7 @@ package net.meilcli.librarian.plugin.entities import kotlinx.serialization.Serializable +import net.meilcli.librarian.plugin.extensions.toNullIfEmpty import nl.adaptivity.xmlutil.serialization.XmlSerialName import nl.adaptivity.xmlutil.serialization.XmlValue @@ -34,11 +35,11 @@ data class PomParentProjectNoNameSpace( ) override val group: String? - get() = groupValue?.value + get() = groupValue?.value?.toNullIfEmpty() override val artifact: String? - get() = artifactValue?.value + get() = artifactValue?.value?.toNullIfEmpty() override val version: String? - get() = versionValue?.value + get() = versionValue?.value?.toNullIfEmpty() } \ No newline at end of file diff --git a/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomProject.kt b/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomProject.kt index 049584c..d027a0c 100644 --- a/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomProject.kt +++ b/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomProject.kt @@ -1,6 +1,7 @@ package net.meilcli.librarian.plugin.entities import kotlinx.serialization.Serializable +import net.meilcli.librarian.plugin.extensions.toNullIfEmpty import nl.adaptivity.xmlutil.serialization.XmlChildrenName import nl.adaptivity.xmlutil.serialization.XmlSerialName import nl.adaptivity.xmlutil.serialization.XmlValue @@ -69,37 +70,37 @@ data class PomProject( ) override var group: String? - get() = groupValue?.value + get() = groupValue?.value?.toNullIfEmpty() set(value) { groupValue = value?.let { PomGroup(it) } } override var artifact: String? - get() = artifactValue?.value + get() = artifactValue?.value?.toNullIfEmpty() set(value) { artifactValue = value?.let { PomArtifact(it) } } override var version: String? - get() = versionValue?.value + get() = versionValue?.value?.toNullIfEmpty() set(value) { versionValue = value?.let { PomVersion(it) } } override var name: String? - get() = nameValue?.value + get() = nameValue?.value?.toNullIfEmpty() set(value) { nameValue = value?.let { PomName(it) } } override var description: String? - get() = descriptionValue?.value + get() = descriptionValue?.value?.toNullIfEmpty() set(value) { descriptionValue = value?.let { PomDescription(it) } } override var url: String? - get() = urlValue?.value + get() = urlValue?.value?.toNullIfEmpty() set(value) { urlValue = value?.let { PomUrl(it) } } diff --git a/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomProjectNoNameSpace.kt b/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomProjectNoNameSpace.kt index 5f31ccc..6b2d7a5 100644 --- a/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomProjectNoNameSpace.kt +++ b/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/entities/PomProjectNoNameSpace.kt @@ -1,6 +1,7 @@ package net.meilcli.librarian.plugin.entities import kotlinx.serialization.Serializable +import net.meilcli.librarian.plugin.extensions.toNullIfEmpty import nl.adaptivity.xmlutil.serialization.XmlChildrenName import nl.adaptivity.xmlutil.serialization.XmlSerialName import nl.adaptivity.xmlutil.serialization.XmlValue @@ -69,37 +70,37 @@ data class PomProjectNoNameSpace( ) override var group: String? - get() = groupValue?.value + get() = groupValue?.value?.toNullIfEmpty() set(value) { groupValue = value?.let { PomGroup(it) } } override var artifact: String? - get() = artifactValue?.value + get() = artifactValue?.value?.toNullIfEmpty() set(value) { artifactValue = value?.let { PomArtifact(it) } } override var version: String? - get() = versionValue?.value + get() = versionValue?.value?.toNullIfEmpty() set(value) { versionValue = value?.let { PomVersion(it) } } override var name: String? - get() = nameValue?.value + get() = nameValue?.value?.toNullIfEmpty() set(value) { nameValue = value?.let { PomName(it) } } override var description: String? - get() = descriptionValue?.value + get() = descriptionValue?.value?.toNullIfEmpty() set(value) { descriptionValue = value?.let { PomDescription(it) } } override var url: String? - get() = urlValue?.value + get() = urlValue?.value?.toNullIfEmpty() set(value) { urlValue = value?.let { PomUrl(it) } } diff --git a/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/extensions/StringExtensions.kt b/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/extensions/StringExtensions.kt new file mode 100644 index 0000000..02660da --- /dev/null +++ b/plugin-core/src/main/kotlin/net/meilcli/librarian/plugin/extensions/StringExtensions.kt @@ -0,0 +1,5 @@ +package net.meilcli.librarian.plugin.extensions + +fun String.toNullIfEmpty(): String? { + return if (isEmpty()) null else this +} \ No newline at end of file diff --git a/plugin-core/src/test/kotlin/net/meilcli/librarian/plugin/PomFileTest.kt b/plugin-core/src/test/kotlin/net/meilcli/librarian/plugin/PomFileTest.kt index b238dcf..e109f0d 100644 --- a/plugin-core/src/test/kotlin/net/meilcli/librarian/plugin/PomFileTest.kt +++ b/plugin-core/src/test/kotlin/net/meilcli/librarian/plugin/PomFileTest.kt @@ -61,7 +61,7 @@ class PomFileTest { assertEquals("1.0.0", project.version) assertEquals("test-name", project.name) assertEquals("test-description", project.description) - assertEquals("", project.url) + assertNull(project.url) assertEquals(1, project.licenses?.size) assertEquals("The Apache License, Version 2.0", project.licenses?.first()?.name) assertEquals("http://www.apache.org/licenses/LICENSE-2.0.txt", project.licenses?.first()?.url) @@ -85,7 +85,7 @@ class PomFileTest { assertEquals("1.0.0", project.version) assertEquals("test-name", project.name) assertEquals("test-description", project.description) - assertEquals("", project.url) + assertNull(project.url) assertEquals(1, project.licenses?.size) assertEquals("The Apache License, Version 2.0", project.licenses?.first()?.name) assertEquals("http://www.apache.org/licenses/LICENSE-2.0.txt", project.licenses?.first()?.url)