Compare commits

...

2 commits

Author SHA1 Message Date
30a3e9022d
Made config constructors private 2024-05-26 00:21:50 -07:00
b9449b9140
Minor cleanup 2024-05-26 00:18:23 -07:00
7 changed files with 33 additions and 56 deletions

5
.idea/misc.xml generated
View file

@ -8,10 +8,7 @@
<pattern value="net.thauvin.erik.bitly.BitlyShortenBuild" method="detekt" />
<pattern value="net.thauvin.erik.bitly.BitlyShortenBuild" method="detektBaseline" />
</component>
<component name="PDMPlugin">
<option name="skipTestSources" value="false" />
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" project-jdk-name="17" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/build" />
</component>
</project>
</project>

View file

@ -1,5 +1,3 @@
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins {
id("application")
id("com.github.ben-manes.versions") version "0.51.0"

View file

@ -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"

View file

@ -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<String> = 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.

View file

@ -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<String> = 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.

View file

@ -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

View file

@ -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,