diff --git a/.idea/misc.xml b/.idea/misc.xml
index 8ae89ec..f40d83c 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -8,10 +8,7 @@
-
-
-
-
\ No newline at end of file
+
diff --git a/examples/gradle/build.gradle.kts b/examples/gradle/build.gradle.kts
index 6484d0a..4e2218a 100644
--- a/examples/gradle/build.gradle.kts
+++ b/examples/gradle/build.gradle.kts
@@ -1,5 +1,3 @@
-import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
-
plugins {
id("application")
id("com.github.ben-manes.versions") version "0.51.0"
diff --git a/examples/gradle/settings.gradle.kts b/examples/gradle/settings.gradle.kts
index 72e9113..cd3b92f 100644
--- a/examples/gradle/settings.gradle.kts
+++ b/examples/gradle/settings.gradle.kts
@@ -7,4 +7,4 @@
* in the user manual at https://docs.gradle.org/6.2/userguide/multi_project_builds.html
*/
-rootProject.name = "bitly-examples"
+rootProject.name = "bitly-examples-gradle"
diff --git a/src/main/kotlin/net/thauvin/erik/bitly/config/CreateConfig.kt b/src/main/kotlin/net/thauvin/erik/bitly/config/CreateConfig.kt
index c90519d..017e04f 100644
--- a/src/main/kotlin/net/thauvin/erik/bitly/config/CreateConfig.kt
+++ b/src/main/kotlin/net/thauvin/erik/bitly/config/CreateConfig.kt
@@ -40,23 +40,14 @@ import net.thauvin.erik.bitly.config.deeplinks.CreateDeeplinks
* See the [Bit.ly API](https://dev.bitly.com/api-reference#createFullBitlink) for more information.
*/
@Suppress("LocalVariableName", "PropertyName")
-class CreateConfig @JvmOverloads constructor(
- var long_url: String,
- var domain: String = Constants.EMPTY,
- var group_guid: String = Constants.EMPTY,
- var title: String = Constants.EMPTY,
- var tags: Array = emptyArray(),
- var deeplinks: CreateDeeplinks = CreateDeeplinks(),
- var toJson: Boolean = false
-) {
- constructor(builder: Builder) : this(builder.long_url) {
- domain = builder.domain
- group_guid = builder.group_guid
- title = builder.title
- tags = builder.tags
- deeplinks = builder.deeplinks
- toJson = builder.toJson
- }
+class CreateConfig private constructor(builder: Builder) {
+ val long_url = builder.long_url
+ val domain = builder.domain
+ val group_guid = builder.group_guid
+ val title = builder.title
+ val tags = builder.tags
+ val deeplinks = builder.deeplinks
+ val toJson = builder.toJson
/**
* Configures the creation parameters of a Bitlink.
diff --git a/src/main/kotlin/net/thauvin/erik/bitly/config/UpdateConfig.kt b/src/main/kotlin/net/thauvin/erik/bitly/config/UpdateConfig.kt
index 3985d71..e837c49 100644
--- a/src/main/kotlin/net/thauvin/erik/bitly/config/UpdateConfig.kt
+++ b/src/main/kotlin/net/thauvin/erik/bitly/config/UpdateConfig.kt
@@ -39,21 +39,13 @@ import net.thauvin.erik.bitly.config.deeplinks.UpdateDeeplinks
*
* See the [Bit.ly API](https://dev.bitly.com/api-reference#updateBitlink) for more information.
*/
-class UpdateConfig @JvmOverloads constructor(
- var bitlink: String,
- var title: String = Constants.EMPTY,
- var archived: Boolean = false,
- var tags: Array = emptyArray(),
- var deeplinks: UpdateDeeplinks = UpdateDeeplinks(),
- var toJson: Boolean = false
-) {
- constructor(builder: Builder) : this(builder.bitlink) {
- title = builder.title
- archived = builder.archived
- tags = builder.tags
- deeplinks = builder.deeplinks
- toJson = builder.toJson
- }
+class UpdateConfig private constructor(builder: Builder) {
+ val bitlink = builder.bitlink
+ val title = builder.title
+ val archived = builder.archived
+ val tags = builder.tags
+ val deeplinks = builder.deeplinks
+ val toJson = builder.toJson
/**
* Configures the update parameters of a Bitlink.
diff --git a/src/test/kotlin/net/thauvin/erik/bitly/BitlyTest.kt b/src/test/kotlin/net/thauvin/erik/bitly/BitlyTest.kt
index 2d8c4d2..937bb69 100644
--- a/src/test/kotlin/net/thauvin/erik/bitly/BitlyTest.kt
+++ b/src/test/kotlin/net/thauvin/erik/bitly/BitlyTest.kt
@@ -41,9 +41,9 @@ import net.thauvin.erik.bitly.Utils.toEndPoint
import net.thauvin.erik.bitly.config.CreateConfig
import net.thauvin.erik.bitly.config.UpdateConfig
import net.thauvin.erik.bitly.config.deeplinks.CreateDeeplinks
+import net.thauvin.erik.bitly.config.deeplinks.UpdateDeeplinks
import net.thauvin.erik.bitly.config.deeplinks.enums.InstallType
import net.thauvin.erik.bitly.config.deeplinks.enums.Os
-import net.thauvin.erik.bitly.config.deeplinks.UpdateDeeplinks
import org.json.JSONObject
import org.junit.jupiter.api.BeforeAll
import java.io.File
diff --git a/src/test/kotlin/net/thauvin/erik/bitly/config/ConfigTest.kt b/src/test/kotlin/net/thauvin/erik/bitly/config/ConfigTest.kt
index dad8a8c..57a7ae3 100644
--- a/src/test/kotlin/net/thauvin/erik/bitly/config/ConfigTest.kt
+++ b/src/test/kotlin/net/thauvin/erik/bitly/config/ConfigTest.kt
@@ -34,9 +34,9 @@ package net.thauvin.erik.bitly.config
import assertk.assertThat
import assertk.assertions.isEqualTo
import net.thauvin.erik.bitly.config.deeplinks.CreateDeeplinks
+import net.thauvin.erik.bitly.config.deeplinks.UpdateDeeplinks
import net.thauvin.erik.bitly.config.deeplinks.enums.InstallType
import net.thauvin.erik.bitly.config.deeplinks.enums.Os
-import net.thauvin.erik.bitly.config.deeplinks.UpdateDeeplinks
import org.json.JSONObject
import kotlin.test.Test
@@ -48,14 +48,13 @@ class ConfigTest {
install_type(InstallType.AUTO_INSTALL)
}
- val config = CreateConfig(
- "long_url",
- "domain",
- "group_guid",
- "title",
- arrayOf("tag", "tag2"),
- deeplinks,
- )
+ val config = CreateConfig.Builder("long_url")
+ .domain("domain")
+ .groupGuid("group_guid")
+ .title("title")
+ .tags(arrayOf("tag", "tag2"))
+ .deeplinks(deeplinks)
+ .build()
val map = mapOf(
"long_url" to config.long_url,
@@ -81,13 +80,13 @@ class ConfigTest {
app_guid("app_guid")
}
- val config = UpdateConfig(
- "blink",
- "title",
- true,
- arrayOf("tag", "tag2"),
- deeplinks
- )
+ val config = UpdateConfig.Builder("blink")
+ .title("title")
+ .archived(true)
+ .tags(arrayOf("tag", "tag2"))
+ .deeplinks(deeplinks)
+ .build()
+
val map = mapOf(
"bitlink" to config.bitlink,
"title" to config.title,