diff --git a/.release-please-manifest.json b/.release-please-manifest.json
index 6b7b74c5f..da59f99ea 100644
--- a/.release-please-manifest.json
+++ b/.release-please-manifest.json
@@ -1,3 +1,3 @@
{
- ".": "0.3.0"
+ ".": "0.4.0"
}
\ No newline at end of file
diff --git a/.stats.yml b/.stats.yml
index 085568c25..3114caa32 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,2 +1,2 @@
configured_endpoints: 96
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/orb%2Forb-5d22d9573f8fe12b31b2433b658b708f7cc379318d124afc74188afdc07e1ccc.yml
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/orb%2Forb-1345a8e288e34d5477b0e189877225f83939a59078c22fbb5367712e376c5d19.yml
diff --git a/CHANGELOG.md b/CHANGELOG.md
index c2e539184..211f3f657 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,18 @@
# Changelog
+## 0.4.0 (2024-11-06)
+
+Full Changelog: [v0.3.0...v0.4.0](https://github.com/orbcorp/orb-java/compare/v0.3.0...v0.4.0)
+
+### Features
+
+* **api:** api update ([#103](https://github.com/orbcorp/orb-java/issues/103)) ([7f8fb9d](https://github.com/orbcorp/orb-java/commit/7f8fb9d3cbc2d0a1a131b3bf07e6a858cb1765b1))
+
+
+### Chores
+
+* **internal:** version bump ([#100](https://github.com/orbcorp/orb-java/issues/100)) ([ad65284](https://github.com/orbcorp/orb-java/commit/ad652840c239be31c15c58da11a3e11b3b23db2e))
+
## 0.3.0 (2024-11-06)
Full Changelog: [v0.2.0...v0.3.0](https://github.com/orbcorp/orb-java/compare/v0.2.0...v0.3.0)
diff --git a/README.md b/README.md
index 7c7c2fd64..b7ee90952 100644
--- a/README.md
+++ b/README.md
@@ -2,7 +2,7 @@
-[](https://central.sonatype.com/artifact/com.withorb.api/orb-java/0.3.0)
+[](https://central.sonatype.com/artifact/com.withorb.api/orb-java/0.4.0)
@@ -25,7 +25,7 @@ The REST API documentation can be foundĀ on [docs.withorb.com](https://docs.with
```kotlin
-implementation("com.withorb.api:orb-java:0.3.0")
+implementation("com.withorb.api:orb-java:0.4.0")
```
#### Maven
@@ -34,7 +34,7 @@ implementation("com.withorb.api:orb-java:0.3.0")
com.withorb.api
orb-java
- 0.3.0
+ 0.4.0
```
diff --git a/build.gradle.kts b/build.gradle.kts
index bcbdd5e7b..150045e98 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -4,7 +4,7 @@ plugins {
allprojects {
group = "com.withorb.api"
- version = "0.3.0" // x-release-please-version
+ version = "0.4.0" // x-release-please-version
}
diff --git a/orb-java-client-okhttp/src/main/kotlin/com/withorb/api/client/okhttp/OrbOkHttpClient.kt b/orb-java-client-okhttp/src/main/kotlin/com/withorb/api/client/okhttp/OrbOkHttpClient.kt
index f7f062efe..50937b67c 100644
--- a/orb-java-client-okhttp/src/main/kotlin/com/withorb/api/client/okhttp/OrbOkHttpClient.kt
+++ b/orb-java-client-okhttp/src/main/kotlin/com/withorb/api/client/okhttp/OrbOkHttpClient.kt
@@ -50,7 +50,21 @@ class OrbOkHttpClient private constructor() {
clientOptions.putAllHeaders(headers)
}
- fun removeHeader(name: String) = apply { clientOptions.removeHeader(name) }
+ fun replaceHeaders(name: String, value: String) = apply {
+ clientOptions.replaceHeaders(name, value)
+ }
+
+ fun replaceHeaders(name: String, values: Iterable) = apply {
+ clientOptions.replaceHeaders(name, values)
+ }
+
+ fun replaceAllHeaders(headers: Map>) = apply {
+ clientOptions.replaceAllHeaders(headers)
+ }
+
+ fun removeHeaders(name: String) = apply { clientOptions.removeHeaders(name) }
+
+ fun removeAllHeaders(names: Set) = apply { clientOptions.removeAllHeaders(names) }
fun queryParams(queryParams: Map>) = apply {
clientOptions.queryParams(queryParams)
@@ -68,7 +82,23 @@ class OrbOkHttpClient private constructor() {
clientOptions.putAllQueryParams(queryParams)
}
- fun removeQueryParam(key: String) = apply { clientOptions.removeQueryParam(key) }
+ fun replaceQueryParams(key: String, value: String) = apply {
+ clientOptions.replaceQueryParams(key, value)
+ }
+
+ fun replaceQueryParams(key: String, values: Iterable) = apply {
+ clientOptions.replaceQueryParams(key, values)
+ }
+
+ fun replaceAllQueryParams(queryParams: Map>) = apply {
+ clientOptions.replaceAllQueryParams(queryParams)
+ }
+
+ fun removeQueryParams(key: String) = apply { clientOptions.removeQueryParams(key) }
+
+ fun removeAllQueryParams(keys: Set) = apply {
+ clientOptions.removeAllQueryParams(keys)
+ }
fun timeout(timeout: Duration) = apply { this.timeout = timeout }
diff --git a/orb-java-client-okhttp/src/main/kotlin/com/withorb/api/client/okhttp/OrbOkHttpClientAsync.kt b/orb-java-client-okhttp/src/main/kotlin/com/withorb/api/client/okhttp/OrbOkHttpClientAsync.kt
index 2b3c96197..c489b88db 100644
--- a/orb-java-client-okhttp/src/main/kotlin/com/withorb/api/client/okhttp/OrbOkHttpClientAsync.kt
+++ b/orb-java-client-okhttp/src/main/kotlin/com/withorb/api/client/okhttp/OrbOkHttpClientAsync.kt
@@ -50,7 +50,21 @@ class OrbOkHttpClientAsync private constructor() {
clientOptions.putAllHeaders(headers)
}
- fun removeHeader(name: String) = apply { clientOptions.removeHeader(name) }
+ fun replaceHeaders(name: String, value: String) = apply {
+ clientOptions.replaceHeaders(name, value)
+ }
+
+ fun replaceHeaders(name: String, values: Iterable) = apply {
+ clientOptions.replaceHeaders(name, values)
+ }
+
+ fun replaceAllHeaders(headers: Map>) = apply {
+ clientOptions.replaceAllHeaders(headers)
+ }
+
+ fun removeHeaders(name: String) = apply { clientOptions.removeHeaders(name) }
+
+ fun removeAllHeaders(names: Set) = apply { clientOptions.removeAllHeaders(names) }
fun queryParams(queryParams: Map>) = apply {
clientOptions.queryParams(queryParams)
@@ -68,7 +82,23 @@ class OrbOkHttpClientAsync private constructor() {
clientOptions.putAllQueryParams(queryParams)
}
- fun removeQueryParam(key: String) = apply { clientOptions.removeQueryParam(key) }
+ fun replaceQueryParams(key: String, value: String) = apply {
+ clientOptions.replaceQueryParams(key, value)
+ }
+
+ fun replaceQueryParams(key: String, values: Iterable) = apply {
+ clientOptions.replaceQueryParams(key, values)
+ }
+
+ fun replaceAllQueryParams(queryParams: Map>) = apply {
+ clientOptions.replaceAllQueryParams(queryParams)
+ }
+
+ fun removeQueryParams(key: String) = apply { clientOptions.removeQueryParams(key) }
+
+ fun removeAllQueryParams(keys: Set) = apply {
+ clientOptions.removeAllQueryParams(keys)
+ }
fun timeout(timeout: Duration) = apply { this.timeout = timeout }
diff --git a/orb-java-core/src/main/kotlin/com/withorb/api/core/ClientOptions.kt b/orb-java-core/src/main/kotlin/com/withorb/api/core/ClientOptions.kt
index e8459db31..f9daec726 100644
--- a/orb-java-core/src/main/kotlin/com/withorb/api/core/ClientOptions.kt
+++ b/orb-java-core/src/main/kotlin/com/withorb/api/core/ClientOptions.kt
@@ -94,7 +94,21 @@ private constructor(
headers.forEach(this::putHeaders)
}
- fun removeHeader(name: String) = apply { this.headers.put(name, mutableListOf()) }
+ fun replaceHeaders(name: String, value: String) = apply {
+ headers.replaceValues(name, listOf(value))
+ }
+
+ fun replaceHeaders(name: String, values: Iterable) = apply {
+ headers.replaceValues(name, values)
+ }
+
+ fun replaceAllHeaders(headers: Map>) = apply {
+ headers.forEach(::replaceHeaders)
+ }
+
+ fun removeHeaders(name: String) = apply { headers.removeAll(name) }
+
+ fun removeAllHeaders(names: Set) = apply { names.forEach(::removeHeaders) }
fun queryParams(queryParams: Map>) = apply {
this.queryParams.clear()
@@ -111,7 +125,21 @@ private constructor(
queryParams.forEach(this::putQueryParams)
}
- fun removeQueryParam(key: String) = apply { queryParams.removeAll(key) }
+ fun replaceQueryParams(key: String, value: String) = apply {
+ queryParams.replaceValues(key, listOf(value))
+ }
+
+ fun replaceQueryParams(key: String, values: Iterable) = apply {
+ queryParams.replaceValues(key, values)
+ }
+
+ fun replaceAllQueryParams(queryParams: Map>) = apply {
+ queryParams.forEach(::replaceQueryParams)
+ }
+
+ fun removeQueryParams(key: String) = apply { queryParams.removeAll(key) }
+
+ fun removeAllQueryParams(keys: Set) = apply { keys.forEach(::removeQueryParams) }
fun responseValidation(responseValidation: Boolean) = apply {
this.responseValidation = responseValidation
diff --git a/orb-java-core/src/main/kotlin/com/withorb/api/core/http/HttpRequest.kt b/orb-java-core/src/main/kotlin/com/withorb/api/core/http/HttpRequest.kt
index b2274d812..5992c4a52 100644
--- a/orb-java-core/src/main/kotlin/com/withorb/api/core/http/HttpRequest.kt
+++ b/orb-java-core/src/main/kotlin/com/withorb/api/core/http/HttpRequest.kt
@@ -2,7 +2,6 @@ package com.withorb.api.core.http
import com.google.common.collect.ArrayListMultimap
import com.google.common.collect.ListMultimap
-import com.google.common.collect.Multimap
import com.google.common.collect.MultimapBuilder
import com.withorb.api.core.toImmutable
@@ -11,13 +10,13 @@ private constructor(
@get:JvmName("method") val method: HttpMethod,
@get:JvmName("url") val url: String?,
@get:JvmName("pathSegments") val pathSegments: List,
- @get:JvmName("queryParams") val queryParams: ListMultimap,
@get:JvmName("headers") val headers: ListMultimap,
+ @get:JvmName("queryParams") val queryParams: ListMultimap,
@get:JvmName("body") val body: HttpRequestBody?,
) {
override fun toString(): String =
- "HttpRequest{method=$method, pathSegments=$pathSegments, queryParams=$queryParams, headers=$headers, body=$body}"
+ "HttpRequest{method=$method, url=$url, pathSegments=$pathSegments, headers=$headers, queryParams=$queryParams, body=$body}"
companion object {
@JvmStatic fun builder() = Builder()
@@ -27,56 +26,84 @@ private constructor(
private var method: HttpMethod? = null
private var url: String? = null
- private var pathSegments: MutableList = ArrayList()
- private var queryParams: ListMultimap = ArrayListMultimap.create()
- private var body: HttpRequestBody? = null
+ private var pathSegments: MutableList = mutableListOf()
private var headers: ListMultimap =
MultimapBuilder.treeKeys(String.CASE_INSENSITIVE_ORDER).arrayListValues().build()
+ private var queryParams: ListMultimap = ArrayListMultimap.create()
+ private var body: HttpRequestBody? = null
fun method(method: HttpMethod) = apply { this.method = method }
fun url(url: String) = apply { this.url = url }
- fun addPathSegment(pathSegment: String) = apply { this.pathSegments.add(pathSegment) }
+ fun addPathSegment(pathSegment: String) = apply { pathSegments.add(pathSegment) }
fun addPathSegments(vararg pathSegments: String) = apply {
- for (pathSegment in pathSegments) {
- this.pathSegments.add(pathSegment)
- }
+ this.pathSegments.addAll(pathSegments)
}
- fun putQueryParam(name: String, value: String) = apply {
- this.queryParams.replaceValues(name, listOf(value))
+ fun headers(headers: Map>) = apply {
+ this.headers.clear()
+ putAllHeaders(headers)
}
- fun putQueryParams(name: String, values: Iterable) = apply {
- this.queryParams.replaceValues(name, values)
+ fun putHeader(name: String, value: String) = apply { headers.put(name, value) }
+
+ fun putHeaders(name: String, values: Iterable) = apply {
+ headers.putAll(name, values)
}
- fun putAllQueryParams(queryParams: Map>) = apply {
- queryParams.forEach(this::putQueryParams)
+ fun putAllHeaders(headers: Map>) = apply {
+ headers.forEach(::putHeaders)
}
- fun putAllQueryParams(queryParams: Multimap) = apply {
- queryParams.asMap().forEach(this::putQueryParams)
+ fun replaceHeaders(name: String, value: String) = apply {
+ headers.replaceValues(name, listOf(value))
}
- fun putHeader(name: String, value: String) = apply {
- this.headers.replaceValues(name, listOf(value))
+ fun replaceHeaders(name: String, values: Iterable) = apply {
+ headers.replaceValues(name, values)
}
- fun putHeaders(name: String, values: Iterable) = apply {
- this.headers.replaceValues(name, values)
+ fun replaceAllHeaders(headers: Map>) = apply {
+ headers.forEach(::replaceHeaders)
}
- fun putAllHeaders(headers: Map>) = apply {
- headers.forEach(this::putHeaders)
+ fun removeHeaders(name: String) = apply { headers.removeAll(name) }
+
+ fun removeAllHeaders(names: Set) = apply { names.forEach(::removeHeaders) }
+
+ fun queryParams(queryParams: Map>) = apply {
+ this.queryParams.clear()
+ putAllQueryParams(queryParams)
}
- fun putAllHeaders(headers: Multimap) = apply {
- headers.asMap().forEach(this::putHeaders)
+ fun putQueryParam(key: String, value: String) = apply { queryParams.put(key, value) }
+
+ fun putQueryParams(key: String, values: Iterable) = apply {
+ queryParams.putAll(key, values)
+ }
+
+ fun putAllQueryParams(queryParams: Map>) = apply {
+ queryParams.forEach(::putQueryParams)
+ }
+
+ fun replaceQueryParams(key: String, value: String) = apply {
+ queryParams.replaceValues(key, listOf(value))
+ }
+
+ fun replaceQueryParams(key: String, values: Iterable) = apply {
+ queryParams.replaceValues(key, values)
+ }
+
+ fun replaceAllQueryParams(queryParams: Map>) = apply {
+ queryParams.forEach(::replaceQueryParams)
}
+ fun removeQueryParams(key: String) = apply { queryParams.removeAll(key) }
+
+ fun removeAllQueryParams(keys: Set) = apply { keys.forEach(::removeQueryParams) }
+
fun body(body: HttpRequestBody) = apply { this.body = body }
fun build(): HttpRequest =
@@ -84,8 +111,8 @@ private constructor(
checkNotNull(method) { "`method` is required but was not set" },
url,
pathSegments.toImmutable(),
- queryParams.toImmutable(),
headers,
+ queryParams.toImmutable(),
body,
)
}
diff --git a/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForCustomerParams.kt b/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForCustomerParams.kt
index bad3201d4..b93399d61 100644
--- a/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForCustomerParams.kt
+++ b/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForCustomerParams.kt
@@ -7,6 +7,8 @@ import com.fasterxml.jackson.annotation.JsonAnySetter
import com.fasterxml.jackson.annotation.JsonCreator
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.databind.annotation.JsonDeserialize
+import com.google.common.collect.ArrayListMultimap
+import com.google.common.collect.ListMultimap
import com.withorb.api.core.Enum
import com.withorb.api.core.ExcludeMissing
import com.withorb.api.core.JsonField
@@ -24,8 +26,8 @@ constructor(
private val currency: String,
private val type: Type,
private val thresholds: List?,
- private val additionalQueryParams: Map>,
private val additionalHeaders: Map>,
+ private val additionalQueryParams: Map>,
private val additionalBodyProperties: Map,
) {
@@ -47,10 +49,10 @@ constructor(
)
}
- @JvmSynthetic internal fun getQueryParams(): Map> = additionalQueryParams
-
@JvmSynthetic internal fun getHeaders(): Map> = additionalHeaders
+ @JvmSynthetic internal fun getQueryParams(): Map> = additionalQueryParams
+
fun getPathParam(index: Int): String {
return when (index) {
0 -> customerId
@@ -158,10 +160,10 @@ constructor(
"AlertCreateForCustomerBody{currency=$currency, type=$type, thresholds=$thresholds, additionalProperties=$additionalProperties}"
}
- fun _additionalQueryParams(): Map> = additionalQueryParams
-
fun _additionalHeaders(): Map> = additionalHeaders
+ fun _additionalQueryParams(): Map> = additionalQueryParams
+
fun _additionalBodyProperties(): Map = additionalBodyProperties
override fun equals(other: Any?): Boolean {
@@ -169,15 +171,15 @@ constructor(
return true
}
- return /* spotless:off */ other is AlertCreateForCustomerParams && this.customerId == other.customerId && this.currency == other.currency && this.type == other.type && this.thresholds == other.thresholds && this.additionalQueryParams == other.additionalQueryParams && this.additionalHeaders == other.additionalHeaders && this.additionalBodyProperties == other.additionalBodyProperties /* spotless:on */
+ return /* spotless:off */ other is AlertCreateForCustomerParams && this.customerId == other.customerId && this.currency == other.currency && this.type == other.type && this.thresholds == other.thresholds && this.additionalHeaders == other.additionalHeaders && this.additionalQueryParams == other.additionalQueryParams && this.additionalBodyProperties == other.additionalBodyProperties /* spotless:on */
}
override fun hashCode(): Int {
- return /* spotless:off */ Objects.hash(customerId, currency, type, thresholds, additionalQueryParams, additionalHeaders, additionalBodyProperties) /* spotless:on */
+ return /* spotless:off */ Objects.hash(customerId, currency, type, thresholds, additionalHeaders, additionalQueryParams, additionalBodyProperties) /* spotless:on */
}
override fun toString() =
- "AlertCreateForCustomerParams{customerId=$customerId, currency=$currency, type=$type, thresholds=$thresholds, additionalQueryParams=$additionalQueryParams, additionalHeaders=$additionalHeaders, additionalBodyProperties=$additionalBodyProperties}"
+ "AlertCreateForCustomerParams{customerId=$customerId, currency=$currency, type=$type, thresholds=$thresholds, additionalHeaders=$additionalHeaders, additionalQueryParams=$additionalQueryParams, additionalBodyProperties=$additionalBodyProperties}"
fun toBuilder() = Builder().from(this)
@@ -193,8 +195,8 @@ constructor(
private var currency: String? = null
private var type: Type? = null
private var thresholds: MutableList = mutableListOf()
- private var additionalQueryParams: MutableMap> = mutableMapOf()
- private var additionalHeaders: MutableMap> = mutableMapOf()
+ private var additionalHeaders: ListMultimap = ArrayListMultimap.create()
+ private var additionalQueryParams: ListMultimap = ArrayListMultimap.create()
private var additionalBodyProperties: MutableMap = mutableMapOf()
@JvmSynthetic
@@ -203,8 +205,8 @@ constructor(
this.currency = alertCreateForCustomerParams.currency
this.type = alertCreateForCustomerParams.type
this.thresholds(alertCreateForCustomerParams.thresholds ?: listOf())
- additionalQueryParams(alertCreateForCustomerParams.additionalQueryParams)
additionalHeaders(alertCreateForCustomerParams.additionalHeaders)
+ additionalQueryParams(alertCreateForCustomerParams.additionalQueryParams)
additionalBodyProperties(alertCreateForCustomerParams.additionalBodyProperties)
}
@@ -225,45 +227,79 @@ constructor(
/** The thresholds that define the values at which the alert will be triggered. */
fun addThreshold(threshold: Threshold) = apply { this.thresholds.add(threshold) }
- fun additionalQueryParams(additionalQueryParams: Map>) = apply {
- this.additionalQueryParams.clear()
- putAllQueryParams(additionalQueryParams)
+ fun additionalHeaders(additionalHeaders: Map>) = apply {
+ this.additionalHeaders.clear()
+ putAllAdditionalHeaders(additionalHeaders)
}
- fun putQueryParam(name: String, value: String) = apply {
- this.additionalQueryParams.getOrPut(name) { mutableListOf() }.add(value)
+ fun putAdditionalHeader(name: String, value: String) = apply {
+ additionalHeaders.put(name, value)
}
- fun putQueryParams(name: String, values: Iterable) = apply {
- this.additionalQueryParams.getOrPut(name) { mutableListOf() }.addAll(values)
+ fun putAdditionalHeaders(name: String, values: Iterable) = apply {
+ additionalHeaders.putAll(name, values)
}
- fun putAllQueryParams(additionalQueryParams: Map>) = apply {
- additionalQueryParams.forEach(this::putQueryParams)
+ fun putAllAdditionalHeaders(additionalHeaders: Map>) = apply {
+ additionalHeaders.forEach(::putAdditionalHeaders)
}
- fun removeQueryParam(name: String) = apply {
- this.additionalQueryParams.put(name, mutableListOf())
+ fun replaceAdditionalHeaders(name: String, value: String) = apply {
+ additionalHeaders.replaceValues(name, listOf(value))
}
- fun additionalHeaders(additionalHeaders: Map>) = apply {
- this.additionalHeaders.clear()
- putAllHeaders(additionalHeaders)
+ fun replaceAdditionalHeaders(name: String, values: Iterable) = apply {
+ additionalHeaders.replaceValues(name, values)
+ }
+
+ fun replaceAllAdditionalHeaders(additionalHeaders: Map>) = apply {
+ additionalHeaders.forEach(::replaceAdditionalHeaders)
+ }
+
+ fun removeAdditionalHeaders(name: String) = apply { additionalHeaders.removeAll(name) }
+
+ fun removeAllAdditionalHeaders(names: Set) = apply {
+ names.forEach(::removeAdditionalHeaders)
+ }
+
+ fun additionalQueryParams(additionalQueryParams: Map>) = apply {
+ this.additionalQueryParams.clear()
+ putAllAdditionalQueryParams(additionalQueryParams)
+ }
+
+ fun putAdditionalQueryParam(key: String, value: String) = apply {
+ additionalQueryParams.put(key, value)
}
- fun putHeader(name: String, value: String) = apply {
- this.additionalHeaders.getOrPut(name) { mutableListOf() }.add(value)
+ fun putAdditionalQueryParams(key: String, values: Iterable) = apply {
+ additionalQueryParams.putAll(key, values)
}
- fun putHeaders(name: String, values: Iterable) = apply {
- this.additionalHeaders.getOrPut(name) { mutableListOf() }.addAll(values)
+ fun putAllAdditionalQueryParams(additionalQueryParams: Map>) =
+ apply {
+ additionalQueryParams.forEach(::putAdditionalQueryParams)
+ }
+
+ fun replaceAdditionalQueryParams(key: String, value: String) = apply {
+ additionalQueryParams.replaceValues(key, listOf(value))
}
- fun putAllHeaders(additionalHeaders: Map>) = apply {
- additionalHeaders.forEach(this::putHeaders)
+ fun replaceAdditionalQueryParams(key: String, values: Iterable) = apply {
+ additionalQueryParams.replaceValues(key, values)
}
- fun removeHeader(name: String) = apply { this.additionalHeaders.put(name, mutableListOf()) }
+ fun replaceAllAdditionalQueryParams(additionalQueryParams: Map>) =
+ apply {
+ additionalQueryParams.forEach(::replaceAdditionalQueryParams)
+ }
+
+ fun removeAdditionalQueryParams(key: String) = apply {
+ additionalQueryParams.removeAll(key)
+ }
+
+ fun removeAllAdditionalQueryParams(keys: Set) = apply {
+ keys.forEach(::removeAdditionalQueryParams)
+ }
fun additionalBodyProperties(additionalBodyProperties: Map) = apply {
this.additionalBodyProperties.clear()
@@ -285,8 +321,14 @@ constructor(
checkNotNull(currency) { "`currency` is required but was not set" },
checkNotNull(type) { "`type` is required but was not set" },
if (thresholds.size == 0) null else thresholds.toImmutable(),
- additionalQueryParams.mapValues { it.value.toImmutable() }.toImmutable(),
- additionalHeaders.mapValues { it.value.toImmutable() }.toImmutable(),
+ additionalHeaders
+ .asMap()
+ .mapValues { it.value.toList().toImmutable() }
+ .toImmutable(),
+ additionalQueryParams
+ .asMap()
+ .mapValues { it.value.toList().toImmutable() }
+ .toImmutable(),
additionalBodyProperties.toImmutable(),
)
}
diff --git a/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForExternalCustomerParams.kt b/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForExternalCustomerParams.kt
index 59b5c3efd..fe87013b0 100644
--- a/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForExternalCustomerParams.kt
+++ b/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForExternalCustomerParams.kt
@@ -7,6 +7,8 @@ import com.fasterxml.jackson.annotation.JsonAnySetter
import com.fasterxml.jackson.annotation.JsonCreator
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.databind.annotation.JsonDeserialize
+import com.google.common.collect.ArrayListMultimap
+import com.google.common.collect.ListMultimap
import com.withorb.api.core.Enum
import com.withorb.api.core.ExcludeMissing
import com.withorb.api.core.JsonField
@@ -24,8 +26,8 @@ constructor(
private val currency: String,
private val type: Type,
private val thresholds: List?,
- private val additionalQueryParams: Map>,
private val additionalHeaders: Map>,
+ private val additionalQueryParams: Map>,
private val additionalBodyProperties: Map,
) {
@@ -47,10 +49,10 @@ constructor(
)
}
- @JvmSynthetic internal fun getQueryParams(): Map> = additionalQueryParams
-
@JvmSynthetic internal fun getHeaders(): Map> = additionalHeaders
+ @JvmSynthetic internal fun getQueryParams(): Map> = additionalQueryParams
+
fun getPathParam(index: Int): String {
return when (index) {
0 -> externalCustomerId
@@ -160,10 +162,10 @@ constructor(
"AlertCreateForExternalCustomerBody{currency=$currency, type=$type, thresholds=$thresholds, additionalProperties=$additionalProperties}"
}
- fun _additionalQueryParams(): Map> = additionalQueryParams
-
fun _additionalHeaders(): Map> = additionalHeaders
+ fun _additionalQueryParams(): Map> = additionalQueryParams
+
fun _additionalBodyProperties(): Map = additionalBodyProperties
override fun equals(other: Any?): Boolean {
@@ -171,15 +173,15 @@ constructor(
return true
}
- return /* spotless:off */ other is AlertCreateForExternalCustomerParams && this.externalCustomerId == other.externalCustomerId && this.currency == other.currency && this.type == other.type && this.thresholds == other.thresholds && this.additionalQueryParams == other.additionalQueryParams && this.additionalHeaders == other.additionalHeaders && this.additionalBodyProperties == other.additionalBodyProperties /* spotless:on */
+ return /* spotless:off */ other is AlertCreateForExternalCustomerParams && this.externalCustomerId == other.externalCustomerId && this.currency == other.currency && this.type == other.type && this.thresholds == other.thresholds && this.additionalHeaders == other.additionalHeaders && this.additionalQueryParams == other.additionalQueryParams && this.additionalBodyProperties == other.additionalBodyProperties /* spotless:on */
}
override fun hashCode(): Int {
- return /* spotless:off */ Objects.hash(externalCustomerId, currency, type, thresholds, additionalQueryParams, additionalHeaders, additionalBodyProperties) /* spotless:on */
+ return /* spotless:off */ Objects.hash(externalCustomerId, currency, type, thresholds, additionalHeaders, additionalQueryParams, additionalBodyProperties) /* spotless:on */
}
override fun toString() =
- "AlertCreateForExternalCustomerParams{externalCustomerId=$externalCustomerId, currency=$currency, type=$type, thresholds=$thresholds, additionalQueryParams=$additionalQueryParams, additionalHeaders=$additionalHeaders, additionalBodyProperties=$additionalBodyProperties}"
+ "AlertCreateForExternalCustomerParams{externalCustomerId=$externalCustomerId, currency=$currency, type=$type, thresholds=$thresholds, additionalHeaders=$additionalHeaders, additionalQueryParams=$additionalQueryParams, additionalBodyProperties=$additionalBodyProperties}"
fun toBuilder() = Builder().from(this)
@@ -195,8 +197,8 @@ constructor(
private var currency: String? = null
private var type: Type? = null
private var thresholds: MutableList = mutableListOf()
- private var additionalQueryParams: MutableMap> = mutableMapOf()
- private var additionalHeaders: MutableMap> = mutableMapOf()
+ private var additionalHeaders: ListMultimap = ArrayListMultimap.create()
+ private var additionalQueryParams: ListMultimap = ArrayListMultimap.create()
private var additionalBodyProperties: MutableMap = mutableMapOf()
@JvmSynthetic
@@ -207,8 +209,8 @@ constructor(
this.currency = alertCreateForExternalCustomerParams.currency
this.type = alertCreateForExternalCustomerParams.type
this.thresholds(alertCreateForExternalCustomerParams.thresholds ?: listOf())
- additionalQueryParams(alertCreateForExternalCustomerParams.additionalQueryParams)
additionalHeaders(alertCreateForExternalCustomerParams.additionalHeaders)
+ additionalQueryParams(alertCreateForExternalCustomerParams.additionalQueryParams)
additionalBodyProperties(alertCreateForExternalCustomerParams.additionalBodyProperties)
}
@@ -231,45 +233,79 @@ constructor(
/** The thresholds that define the values at which the alert will be triggered. */
fun addThreshold(threshold: Threshold) = apply { this.thresholds.add(threshold) }
- fun additionalQueryParams(additionalQueryParams: Map>) = apply {
- this.additionalQueryParams.clear()
- putAllQueryParams(additionalQueryParams)
+ fun additionalHeaders(additionalHeaders: Map>) = apply {
+ this.additionalHeaders.clear()
+ putAllAdditionalHeaders(additionalHeaders)
}
- fun putQueryParam(name: String, value: String) = apply {
- this.additionalQueryParams.getOrPut(name) { mutableListOf() }.add(value)
+ fun putAdditionalHeader(name: String, value: String) = apply {
+ additionalHeaders.put(name, value)
}
- fun putQueryParams(name: String, values: Iterable) = apply {
- this.additionalQueryParams.getOrPut(name) { mutableListOf() }.addAll(values)
+ fun putAdditionalHeaders(name: String, values: Iterable) = apply {
+ additionalHeaders.putAll(name, values)
}
- fun putAllQueryParams(additionalQueryParams: Map>) = apply {
- additionalQueryParams.forEach(this::putQueryParams)
+ fun putAllAdditionalHeaders(additionalHeaders: Map>) = apply {
+ additionalHeaders.forEach(::putAdditionalHeaders)
}
- fun removeQueryParam(name: String) = apply {
- this.additionalQueryParams.put(name, mutableListOf())
+ fun replaceAdditionalHeaders(name: String, value: String) = apply {
+ additionalHeaders.replaceValues(name, listOf(value))
}
- fun additionalHeaders(additionalHeaders: Map>) = apply {
- this.additionalHeaders.clear()
- putAllHeaders(additionalHeaders)
+ fun replaceAdditionalHeaders(name: String, values: Iterable) = apply {
+ additionalHeaders.replaceValues(name, values)
+ }
+
+ fun replaceAllAdditionalHeaders(additionalHeaders: Map>) = apply {
+ additionalHeaders.forEach(::replaceAdditionalHeaders)
+ }
+
+ fun removeAdditionalHeaders(name: String) = apply { additionalHeaders.removeAll(name) }
+
+ fun removeAllAdditionalHeaders(names: Set) = apply {
+ names.forEach(::removeAdditionalHeaders)
+ }
+
+ fun additionalQueryParams(additionalQueryParams: Map>) = apply {
+ this.additionalQueryParams.clear()
+ putAllAdditionalQueryParams(additionalQueryParams)
+ }
+
+ fun putAdditionalQueryParam(key: String, value: String) = apply {
+ additionalQueryParams.put(key, value)
}
- fun putHeader(name: String, value: String) = apply {
- this.additionalHeaders.getOrPut(name) { mutableListOf() }.add(value)
+ fun putAdditionalQueryParams(key: String, values: Iterable) = apply {
+ additionalQueryParams.putAll(key, values)
}
- fun putHeaders(name: String, values: Iterable) = apply {
- this.additionalHeaders.getOrPut(name) { mutableListOf() }.addAll(values)
+ fun putAllAdditionalQueryParams(additionalQueryParams: Map>) =
+ apply {
+ additionalQueryParams.forEach(::putAdditionalQueryParams)
+ }
+
+ fun replaceAdditionalQueryParams(key: String, value: String) = apply {
+ additionalQueryParams.replaceValues(key, listOf(value))
}
- fun putAllHeaders(additionalHeaders: Map>) = apply {
- additionalHeaders.forEach(this::putHeaders)
+ fun replaceAdditionalQueryParams(key: String, values: Iterable) = apply {
+ additionalQueryParams.replaceValues(key, values)
}
- fun removeHeader(name: String) = apply { this.additionalHeaders.put(name, mutableListOf()) }
+ fun replaceAllAdditionalQueryParams(additionalQueryParams: Map>) =
+ apply {
+ additionalQueryParams.forEach(::replaceAdditionalQueryParams)
+ }
+
+ fun removeAdditionalQueryParams(key: String) = apply {
+ additionalQueryParams.removeAll(key)
+ }
+
+ fun removeAllAdditionalQueryParams(keys: Set) = apply {
+ keys.forEach(::removeAdditionalQueryParams)
+ }
fun additionalBodyProperties(additionalBodyProperties: Map) = apply {
this.additionalBodyProperties.clear()
@@ -293,8 +329,14 @@ constructor(
checkNotNull(currency) { "`currency` is required but was not set" },
checkNotNull(type) { "`type` is required but was not set" },
if (thresholds.size == 0) null else thresholds.toImmutable(),
- additionalQueryParams.mapValues { it.value.toImmutable() }.toImmutable(),
- additionalHeaders.mapValues { it.value.toImmutable() }.toImmutable(),
+ additionalHeaders
+ .asMap()
+ .mapValues { it.value.toList().toImmutable() }
+ .toImmutable(),
+ additionalQueryParams
+ .asMap()
+ .mapValues { it.value.toList().toImmutable() }
+ .toImmutable(),
additionalBodyProperties.toImmutable(),
)
}
diff --git a/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForSubscriptionParams.kt b/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForSubscriptionParams.kt
index 047e0e127..588edcd17 100644
--- a/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForSubscriptionParams.kt
+++ b/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForSubscriptionParams.kt
@@ -7,6 +7,8 @@ import com.fasterxml.jackson.annotation.JsonAnySetter
import com.fasterxml.jackson.annotation.JsonCreator
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.databind.annotation.JsonDeserialize
+import com.google.common.collect.ArrayListMultimap
+import com.google.common.collect.ListMultimap
import com.withorb.api.core.Enum
import com.withorb.api.core.ExcludeMissing
import com.withorb.api.core.JsonField
@@ -24,8 +26,8 @@ constructor(
private val thresholds: List,
private val type: Type,
private val metricId: String?,
- private val additionalQueryParams: Map>,
private val additionalHeaders: Map>,
+ private val additionalQueryParams: Map>,
private val additionalBodyProperties: Map,
) {
@@ -47,10 +49,10 @@ constructor(
)
}
- @JvmSynthetic internal fun getQueryParams(): Map> = additionalQueryParams
-
@JvmSynthetic internal fun getHeaders(): Map> = additionalHeaders
+ @JvmSynthetic internal fun getQueryParams(): Map> = additionalQueryParams
+
fun getPathParam(index: Int): String {
return when (index) {
0 -> subscriptionId
@@ -160,10 +162,10 @@ constructor(
"AlertCreateForSubscriptionBody{thresholds=$thresholds, type=$type, metricId=$metricId, additionalProperties=$additionalProperties}"
}
- fun _additionalQueryParams(): Map> = additionalQueryParams
-
fun _additionalHeaders(): Map> = additionalHeaders
+ fun _additionalQueryParams(): Map> = additionalQueryParams
+
fun _additionalBodyProperties(): Map = additionalBodyProperties
override fun equals(other: Any?): Boolean {
@@ -171,15 +173,15 @@ constructor(
return true
}
- return /* spotless:off */ other is AlertCreateForSubscriptionParams && this.subscriptionId == other.subscriptionId && this.thresholds == other.thresholds && this.type == other.type && this.metricId == other.metricId && this.additionalQueryParams == other.additionalQueryParams && this.additionalHeaders == other.additionalHeaders && this.additionalBodyProperties == other.additionalBodyProperties /* spotless:on */
+ return /* spotless:off */ other is AlertCreateForSubscriptionParams && this.subscriptionId == other.subscriptionId && this.thresholds == other.thresholds && this.type == other.type && this.metricId == other.metricId && this.additionalHeaders == other.additionalHeaders && this.additionalQueryParams == other.additionalQueryParams && this.additionalBodyProperties == other.additionalBodyProperties /* spotless:on */
}
override fun hashCode(): Int {
- return /* spotless:off */ Objects.hash(subscriptionId, thresholds, type, metricId, additionalQueryParams, additionalHeaders, additionalBodyProperties) /* spotless:on */
+ return /* spotless:off */ Objects.hash(subscriptionId, thresholds, type, metricId, additionalHeaders, additionalQueryParams, additionalBodyProperties) /* spotless:on */
}
override fun toString() =
- "AlertCreateForSubscriptionParams{subscriptionId=$subscriptionId, thresholds=$thresholds, type=$type, metricId=$metricId, additionalQueryParams=$additionalQueryParams, additionalHeaders=$additionalHeaders, additionalBodyProperties=$additionalBodyProperties}"
+ "AlertCreateForSubscriptionParams{subscriptionId=$subscriptionId, thresholds=$thresholds, type=$type, metricId=$metricId, additionalHeaders=$additionalHeaders, additionalQueryParams=$additionalQueryParams, additionalBodyProperties=$additionalBodyProperties}"
fun toBuilder() = Builder().from(this)
@@ -195,8 +197,8 @@ constructor(
private var thresholds: MutableList = mutableListOf()
private var type: Type? = null
private var metricId: String? = null
- private var additionalQueryParams: MutableMap> = mutableMapOf()
- private var additionalHeaders: MutableMap> = mutableMapOf()
+ private var additionalHeaders: ListMultimap = ArrayListMultimap.create()
+ private var additionalQueryParams: ListMultimap = ArrayListMultimap.create()
private var additionalBodyProperties: MutableMap = mutableMapOf()
@JvmSynthetic
@@ -206,8 +208,8 @@ constructor(
this.thresholds(alertCreateForSubscriptionParams.thresholds)
this.type = alertCreateForSubscriptionParams.type
this.metricId = alertCreateForSubscriptionParams.metricId
- additionalQueryParams(alertCreateForSubscriptionParams.additionalQueryParams)
additionalHeaders(alertCreateForSubscriptionParams.additionalHeaders)
+ additionalQueryParams(alertCreateForSubscriptionParams.additionalQueryParams)
additionalBodyProperties(alertCreateForSubscriptionParams.additionalBodyProperties)
}
@@ -228,45 +230,79 @@ constructor(
/** The metric to track usage for. */
fun metricId(metricId: String) = apply { this.metricId = metricId }
- fun additionalQueryParams(additionalQueryParams: Map>) = apply {
- this.additionalQueryParams.clear()
- putAllQueryParams(additionalQueryParams)
+ fun additionalHeaders(additionalHeaders: Map>) = apply {
+ this.additionalHeaders.clear()
+ putAllAdditionalHeaders(additionalHeaders)
}
- fun putQueryParam(name: String, value: String) = apply {
- this.additionalQueryParams.getOrPut(name) { mutableListOf() }.add(value)
+ fun putAdditionalHeader(name: String, value: String) = apply {
+ additionalHeaders.put(name, value)
}
- fun putQueryParams(name: String, values: Iterable) = apply {
- this.additionalQueryParams.getOrPut(name) { mutableListOf() }.addAll(values)
+ fun putAdditionalHeaders(name: String, values: Iterable) = apply {
+ additionalHeaders.putAll(name, values)
}
- fun putAllQueryParams(additionalQueryParams: Map>) = apply {
- additionalQueryParams.forEach(this::putQueryParams)
+ fun putAllAdditionalHeaders(additionalHeaders: Map>) = apply {
+ additionalHeaders.forEach(::putAdditionalHeaders)
}
- fun removeQueryParam(name: String) = apply {
- this.additionalQueryParams.put(name, mutableListOf())
+ fun replaceAdditionalHeaders(name: String, value: String) = apply {
+ additionalHeaders.replaceValues(name, listOf(value))
}
- fun additionalHeaders(additionalHeaders: Map>) = apply {
- this.additionalHeaders.clear()
- putAllHeaders(additionalHeaders)
+ fun replaceAdditionalHeaders(name: String, values: Iterable) = apply {
+ additionalHeaders.replaceValues(name, values)
+ }
+
+ fun replaceAllAdditionalHeaders(additionalHeaders: Map>) = apply {
+ additionalHeaders.forEach(::replaceAdditionalHeaders)
}
- fun putHeader(name: String, value: String) = apply {
- this.additionalHeaders.getOrPut(name) { mutableListOf() }.add(value)
+ fun removeAdditionalHeaders(name: String) = apply { additionalHeaders.removeAll(name) }
+
+ fun removeAllAdditionalHeaders(names: Set) = apply {
+ names.forEach(::removeAdditionalHeaders)
+ }
+
+ fun additionalQueryParams(additionalQueryParams: Map>) = apply {
+ this.additionalQueryParams.clear()
+ putAllAdditionalQueryParams(additionalQueryParams)
+ }
+
+ fun putAdditionalQueryParam(key: String, value: String) = apply {
+ additionalQueryParams.put(key, value)
}
- fun putHeaders(name: String, values: Iterable) = apply {
- this.additionalHeaders.getOrPut(name) { mutableListOf() }.addAll(values)
+ fun putAdditionalQueryParams(key: String, values: Iterable) = apply {
+ additionalQueryParams.putAll(key, values)
}
- fun putAllHeaders(additionalHeaders: Map>) = apply {
- additionalHeaders.forEach(this::putHeaders)
+ fun putAllAdditionalQueryParams(additionalQueryParams: Map>) =
+ apply {
+ additionalQueryParams.forEach(::putAdditionalQueryParams)
+ }
+
+ fun replaceAdditionalQueryParams(key: String, value: String) = apply {
+ additionalQueryParams.replaceValues(key, listOf(value))
}
- fun removeHeader(name: String) = apply { this.additionalHeaders.put(name, mutableListOf()) }
+ fun replaceAdditionalQueryParams(key: String, values: Iterable) = apply {
+ additionalQueryParams.replaceValues(key, values)
+ }
+
+ fun replaceAllAdditionalQueryParams(additionalQueryParams: Map>) =
+ apply {
+ additionalQueryParams.forEach(::replaceAdditionalQueryParams)
+ }
+
+ fun removeAdditionalQueryParams(key: String) = apply {
+ additionalQueryParams.removeAll(key)
+ }
+
+ fun removeAllAdditionalQueryParams(keys: Set) = apply {
+ keys.forEach(::removeAdditionalQueryParams)
+ }
fun additionalBodyProperties(additionalBodyProperties: Map) = apply {
this.additionalBodyProperties.clear()
@@ -289,8 +325,14 @@ constructor(
.toImmutable(),
checkNotNull(type) { "`type` is required but was not set" },
metricId,
- additionalQueryParams.mapValues { it.value.toImmutable() }.toImmutable(),
- additionalHeaders.mapValues { it.value.toImmutable() }.toImmutable(),
+ additionalHeaders
+ .asMap()
+ .mapValues { it.value.toList().toImmutable() }
+ .toImmutable(),
+ additionalQueryParams
+ .asMap()
+ .mapValues { it.value.toList().toImmutable() }
+ .toImmutable(),
additionalBodyProperties.toImmutable(),
)
}
diff --git a/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertDisableParams.kt b/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertDisableParams.kt
index bbce3b0d1..058b554ce 100644
--- a/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertDisableParams.kt
+++ b/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertDisableParams.kt
@@ -2,6 +2,8 @@
package com.withorb.api.models
+import com.google.common.collect.ArrayListMultimap
+import com.google.common.collect.ListMultimap
import com.withorb.api.core.JsonValue
import com.withorb.api.core.NoAutoDetect
import com.withorb.api.core.toImmutable
@@ -12,8 +14,8 @@ import java.util.Optional
class AlertDisableParams
constructor(
private val alertConfigurationId: String,
- private val additionalQueryParams: Map>,
private val additionalHeaders: Map>,
+ private val additionalQueryParams: Map>,
private val additionalBodyProperties: Map,
) {
@@ -24,10 +26,10 @@ constructor(
return Optional.ofNullable(additionalBodyProperties.ifEmpty { null })
}
- @JvmSynthetic internal fun getQueryParams(): Map> = additionalQueryParams
-
@JvmSynthetic internal fun getHeaders(): Map> = additionalHeaders
+ @JvmSynthetic internal fun getQueryParams(): Map> = additionalQueryParams
+
fun getPathParam(index: Int): String {
return when (index) {
0 -> alertConfigurationId
@@ -35,10 +37,10 @@ constructor(
}
}
- fun _additionalQueryParams(): Map> = additionalQueryParams
-
fun _additionalHeaders(): Map> = additionalHeaders
+ fun _additionalQueryParams(): Map> = additionalQueryParams
+
fun _additionalBodyProperties(): Map = additionalBodyProperties
override fun equals(other: Any?): Boolean {
@@ -46,15 +48,15 @@ constructor(
return true
}
- return /* spotless:off */ other is AlertDisableParams && this.alertConfigurationId == other.alertConfigurationId && this.additionalQueryParams == other.additionalQueryParams && this.additionalHeaders == other.additionalHeaders && this.additionalBodyProperties == other.additionalBodyProperties /* spotless:on */
+ return /* spotless:off */ other is AlertDisableParams && this.alertConfigurationId == other.alertConfigurationId && this.additionalHeaders == other.additionalHeaders && this.additionalQueryParams == other.additionalQueryParams && this.additionalBodyProperties == other.additionalBodyProperties /* spotless:on */
}
override fun hashCode(): Int {
- return /* spotless:off */ Objects.hash(alertConfigurationId, additionalQueryParams, additionalHeaders, additionalBodyProperties) /* spotless:on */
+ return /* spotless:off */ Objects.hash(alertConfigurationId, additionalHeaders, additionalQueryParams, additionalBodyProperties) /* spotless:on */
}
override fun toString() =
- "AlertDisableParams{alertConfigurationId=$alertConfigurationId, additionalQueryParams=$additionalQueryParams, additionalHeaders=$additionalHeaders, additionalBodyProperties=$additionalBodyProperties}"
+ "AlertDisableParams{alertConfigurationId=$alertConfigurationId, additionalHeaders=$additionalHeaders, additionalQueryParams=$additionalQueryParams, additionalBodyProperties=$additionalBodyProperties}"
fun toBuilder() = Builder().from(this)
@@ -67,15 +69,15 @@ constructor(
class Builder {
private var alertConfigurationId: String? = null
- private var additionalQueryParams: MutableMap> = mutableMapOf()
- private var additionalHeaders: MutableMap> = mutableMapOf()
+ private var additionalHeaders: ListMultimap = ArrayListMultimap.create()
+ private var additionalQueryParams: ListMultimap = ArrayListMultimap.create()
private var additionalBodyProperties: MutableMap = mutableMapOf()
@JvmSynthetic
internal fun from(alertDisableParams: AlertDisableParams) = apply {
this.alertConfigurationId = alertDisableParams.alertConfigurationId
- additionalQueryParams(alertDisableParams.additionalQueryParams)
additionalHeaders(alertDisableParams.additionalHeaders)
+ additionalQueryParams(alertDisableParams.additionalQueryParams)
additionalBodyProperties(alertDisableParams.additionalBodyProperties)
}
@@ -83,45 +85,79 @@ constructor(
this.alertConfigurationId = alertConfigurationId
}
- fun additionalQueryParams(additionalQueryParams: Map>) = apply {
- this.additionalQueryParams.clear()
- putAllQueryParams(additionalQueryParams)
+ fun additionalHeaders(additionalHeaders: Map>) = apply {
+ this.additionalHeaders.clear()
+ putAllAdditionalHeaders(additionalHeaders)
}
- fun putQueryParam(name: String, value: String) = apply {
- this.additionalQueryParams.getOrPut(name) { mutableListOf() }.add(value)
+ fun putAdditionalHeader(name: String, value: String) = apply {
+ additionalHeaders.put(name, value)
}
- fun putQueryParams(name: String, values: Iterable) = apply {
- this.additionalQueryParams.getOrPut(name) { mutableListOf() }.addAll(values)
+ fun putAdditionalHeaders(name: String, values: Iterable) = apply {
+ additionalHeaders.putAll(name, values)
}
- fun putAllQueryParams(additionalQueryParams: Map>) = apply {
- additionalQueryParams.forEach(this::putQueryParams)
+ fun putAllAdditionalHeaders(additionalHeaders: Map>) = apply {
+ additionalHeaders.forEach(::putAdditionalHeaders)
}
- fun removeQueryParam(name: String) = apply {
- this.additionalQueryParams.put(name, mutableListOf())
+ fun replaceAdditionalHeaders(name: String, value: String) = apply {
+ additionalHeaders.replaceValues(name, listOf(value))
}
- fun additionalHeaders(additionalHeaders: Map>) = apply {
- this.additionalHeaders.clear()
- putAllHeaders(additionalHeaders)
+ fun replaceAdditionalHeaders(name: String, values: Iterable) = apply {
+ additionalHeaders.replaceValues(name, values)
+ }
+
+ fun replaceAllAdditionalHeaders(additionalHeaders: Map>) = apply {
+ additionalHeaders.forEach(::replaceAdditionalHeaders)
+ }
+
+ fun removeAdditionalHeaders(name: String) = apply { additionalHeaders.removeAll(name) }
+
+ fun removeAllAdditionalHeaders(names: Set) = apply {
+ names.forEach(::removeAdditionalHeaders)
+ }
+
+ fun additionalQueryParams(additionalQueryParams: Map>) = apply {
+ this.additionalQueryParams.clear()
+ putAllAdditionalQueryParams(additionalQueryParams)
+ }
+
+ fun putAdditionalQueryParam(key: String, value: String) = apply {
+ additionalQueryParams.put(key, value)
}
- fun putHeader(name: String, value: String) = apply {
- this.additionalHeaders.getOrPut(name) { mutableListOf() }.add(value)
+ fun putAdditionalQueryParams(key: String, values: Iterable) = apply {
+ additionalQueryParams.putAll(key, values)
}
- fun putHeaders(name: String, values: Iterable) = apply {
- this.additionalHeaders.getOrPut(name) { mutableListOf() }.addAll(values)
+ fun putAllAdditionalQueryParams(additionalQueryParams: Map>) =
+ apply {
+ additionalQueryParams.forEach(::putAdditionalQueryParams)
+ }
+
+ fun replaceAdditionalQueryParams(key: String, value: String) = apply {
+ additionalQueryParams.replaceValues(key, listOf(value))
}
- fun putAllHeaders(additionalHeaders: Map>) = apply {
- additionalHeaders.forEach(this::putHeaders)
+ fun replaceAdditionalQueryParams(key: String, values: Iterable) = apply {
+ additionalQueryParams.replaceValues(key, values)
}
- fun removeHeader(name: String) = apply { this.additionalHeaders.put(name, mutableListOf()) }
+ fun replaceAllAdditionalQueryParams(additionalQueryParams: Map>) =
+ apply {
+ additionalQueryParams.forEach(::replaceAdditionalQueryParams)
+ }
+
+ fun removeAdditionalQueryParams(key: String) = apply {
+ additionalQueryParams.removeAll(key)
+ }
+
+ fun removeAllAdditionalQueryParams(keys: Set) = apply {
+ keys.forEach(::removeAdditionalQueryParams)
+ }
fun additionalBodyProperties(additionalBodyProperties: Map) = apply {
this.additionalBodyProperties.clear()
@@ -142,8 +178,14 @@ constructor(
checkNotNull(alertConfigurationId) {
"`alertConfigurationId` is required but was not set"
},
- additionalQueryParams.mapValues { it.value.toImmutable() }.toImmutable(),
- additionalHeaders.mapValues { it.value.toImmutable() }.toImmutable(),
+ additionalHeaders
+ .asMap()
+ .mapValues { it.value.toList().toImmutable() }
+ .toImmutable(),
+ additionalQueryParams
+ .asMap()
+ .mapValues { it.value.toList().toImmutable() }
+ .toImmutable(),
additionalBodyProperties.toImmutable(),
)
}
diff --git a/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertEnableParams.kt b/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertEnableParams.kt
index 4e56d0396..5a95dec02 100644
--- a/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertEnableParams.kt
+++ b/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertEnableParams.kt
@@ -2,6 +2,8 @@
package com.withorb.api.models
+import com.google.common.collect.ArrayListMultimap
+import com.google.common.collect.ListMultimap
import com.withorb.api.core.JsonValue
import com.withorb.api.core.NoAutoDetect
import com.withorb.api.core.toImmutable
@@ -12,8 +14,8 @@ import java.util.Optional
class AlertEnableParams
constructor(
private val alertConfigurationId: String,
- private val additionalQueryParams: Map>,
private val additionalHeaders: Map>,
+ private val additionalQueryParams: Map>,
private val additionalBodyProperties: Map,
) {
@@ -24,10 +26,10 @@ constructor(
return Optional.ofNullable(additionalBodyProperties.ifEmpty { null })
}
- @JvmSynthetic internal fun getQueryParams(): Map> = additionalQueryParams
-
@JvmSynthetic internal fun getHeaders(): Map> = additionalHeaders
+ @JvmSynthetic internal fun getQueryParams(): Map> = additionalQueryParams
+
fun getPathParam(index: Int): String {
return when (index) {
0 -> alertConfigurationId
@@ -35,10 +37,10 @@ constructor(
}
}
- fun _additionalQueryParams(): Map> = additionalQueryParams
-
fun _additionalHeaders(): Map> = additionalHeaders
+ fun _additionalQueryParams(): Map> = additionalQueryParams
+
fun _additionalBodyProperties(): Map = additionalBodyProperties
override fun equals(other: Any?): Boolean {
@@ -46,15 +48,15 @@ constructor(
return true
}
- return /* spotless:off */ other is AlertEnableParams && this.alertConfigurationId == other.alertConfigurationId && this.additionalQueryParams == other.additionalQueryParams && this.additionalHeaders == other.additionalHeaders && this.additionalBodyProperties == other.additionalBodyProperties /* spotless:on */
+ return /* spotless:off */ other is AlertEnableParams && this.alertConfigurationId == other.alertConfigurationId && this.additionalHeaders == other.additionalHeaders && this.additionalQueryParams == other.additionalQueryParams && this.additionalBodyProperties == other.additionalBodyProperties /* spotless:on */
}
override fun hashCode(): Int {
- return /* spotless:off */ Objects.hash(alertConfigurationId, additionalQueryParams, additionalHeaders, additionalBodyProperties) /* spotless:on */
+ return /* spotless:off */ Objects.hash(alertConfigurationId, additionalHeaders, additionalQueryParams, additionalBodyProperties) /* spotless:on */
}
override fun toString() =
- "AlertEnableParams{alertConfigurationId=$alertConfigurationId, additionalQueryParams=$additionalQueryParams, additionalHeaders=$additionalHeaders, additionalBodyProperties=$additionalBodyProperties}"
+ "AlertEnableParams{alertConfigurationId=$alertConfigurationId, additionalHeaders=$additionalHeaders, additionalQueryParams=$additionalQueryParams, additionalBodyProperties=$additionalBodyProperties}"
fun toBuilder() = Builder().from(this)
@@ -67,15 +69,15 @@ constructor(
class Builder {
private var alertConfigurationId: String? = null
- private var additionalQueryParams: MutableMap> = mutableMapOf()
- private var additionalHeaders: MutableMap> = mutableMapOf()
+ private var additionalHeaders: ListMultimap = ArrayListMultimap.create()
+ private var additionalQueryParams: ListMultimap = ArrayListMultimap.create()
private var additionalBodyProperties: MutableMap = mutableMapOf()
@JvmSynthetic
internal fun from(alertEnableParams: AlertEnableParams) = apply {
this.alertConfigurationId = alertEnableParams.alertConfigurationId
- additionalQueryParams(alertEnableParams.additionalQueryParams)
additionalHeaders(alertEnableParams.additionalHeaders)
+ additionalQueryParams(alertEnableParams.additionalQueryParams)
additionalBodyProperties(alertEnableParams.additionalBodyProperties)
}
@@ -83,45 +85,79 @@ constructor(
this.alertConfigurationId = alertConfigurationId
}
- fun additionalQueryParams(additionalQueryParams: Map>) = apply {
- this.additionalQueryParams.clear()
- putAllQueryParams(additionalQueryParams)
+ fun additionalHeaders(additionalHeaders: Map>) = apply {
+ this.additionalHeaders.clear()
+ putAllAdditionalHeaders(additionalHeaders)
}
- fun putQueryParam(name: String, value: String) = apply {
- this.additionalQueryParams.getOrPut(name) { mutableListOf() }.add(value)
+ fun putAdditionalHeader(name: String, value: String) = apply {
+ additionalHeaders.put(name, value)
}
- fun putQueryParams(name: String, values: Iterable) = apply {
- this.additionalQueryParams.getOrPut(name) { mutableListOf() }.addAll(values)
+ fun putAdditionalHeaders(name: String, values: Iterable) = apply {
+ additionalHeaders.putAll(name, values)
}
- fun putAllQueryParams(additionalQueryParams: Map>) = apply {
- additionalQueryParams.forEach(this::putQueryParams)
+ fun putAllAdditionalHeaders(additionalHeaders: Map>) = apply {
+ additionalHeaders.forEach(::putAdditionalHeaders)
}
- fun removeQueryParam(name: String) = apply {
- this.additionalQueryParams.put(name, mutableListOf())
+ fun replaceAdditionalHeaders(name: String, value: String) = apply {
+ additionalHeaders.replaceValues(name, listOf(value))
}
- fun additionalHeaders(additionalHeaders: Map>) = apply {
- this.additionalHeaders.clear()
- putAllHeaders(additionalHeaders)
+ fun replaceAdditionalHeaders(name: String, values: Iterable) = apply {
+ additionalHeaders.replaceValues(name, values)
+ }
+
+ fun replaceAllAdditionalHeaders(additionalHeaders: Map>) = apply {
+ additionalHeaders.forEach(::replaceAdditionalHeaders)
+ }
+
+ fun removeAdditionalHeaders(name: String) = apply { additionalHeaders.removeAll(name) }
+
+ fun removeAllAdditionalHeaders(names: Set) = apply {
+ names.forEach(::removeAdditionalHeaders)
+ }
+
+ fun additionalQueryParams(additionalQueryParams: Map>) = apply {
+ this.additionalQueryParams.clear()
+ putAllAdditionalQueryParams(additionalQueryParams)
+ }
+
+ fun putAdditionalQueryParam(key: String, value: String) = apply {
+ additionalQueryParams.put(key, value)
}
- fun putHeader(name: String, value: String) = apply {
- this.additionalHeaders.getOrPut(name) { mutableListOf() }.add(value)
+ fun putAdditionalQueryParams(key: String, values: Iterable) = apply {
+ additionalQueryParams.putAll(key, values)
}
- fun putHeaders(name: String, values: Iterable) = apply {
- this.additionalHeaders.getOrPut(name) { mutableListOf() }.addAll(values)
+ fun putAllAdditionalQueryParams(additionalQueryParams: Map>) =
+ apply {
+ additionalQueryParams.forEach(::putAdditionalQueryParams)
+ }
+
+ fun replaceAdditionalQueryParams(key: String, value: String) = apply {
+ additionalQueryParams.replaceValues(key, listOf(value))
}
- fun putAllHeaders(additionalHeaders: Map>) = apply {
- additionalHeaders.forEach(this::putHeaders)
+ fun replaceAdditionalQueryParams(key: String, values: Iterable) = apply {
+ additionalQueryParams.replaceValues(key, values)
}
- fun removeHeader(name: String) = apply { this.additionalHeaders.put(name, mutableListOf()) }
+ fun replaceAllAdditionalQueryParams(additionalQueryParams: Map>) =
+ apply {
+ additionalQueryParams.forEach(::replaceAdditionalQueryParams)
+ }
+
+ fun removeAdditionalQueryParams(key: String) = apply {
+ additionalQueryParams.removeAll(key)
+ }
+
+ fun removeAllAdditionalQueryParams(keys: Set) = apply {
+ keys.forEach(::removeAdditionalQueryParams)
+ }
fun additionalBodyProperties(additionalBodyProperties: Map) = apply {
this.additionalBodyProperties.clear()
@@ -142,8 +178,14 @@ constructor(
checkNotNull(alertConfigurationId) {
"`alertConfigurationId` is required but was not set"
},
- additionalQueryParams.mapValues { it.value.toImmutable() }.toImmutable(),
- additionalHeaders.mapValues { it.value.toImmutable() }.toImmutable(),
+ additionalHeaders
+ .asMap()
+ .mapValues { it.value.toList().toImmutable() }
+ .toImmutable(),
+ additionalQueryParams
+ .asMap()
+ .mapValues { it.value.toList().toImmutable() }
+ .toImmutable(),
additionalBodyProperties.toImmutable(),
)
}
diff --git a/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertListParams.kt b/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertListParams.kt
index 402fd26a5..e3c683042 100644
--- a/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertListParams.kt
+++ b/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertListParams.kt
@@ -2,6 +2,8 @@
package com.withorb.api.models
+import com.google.common.collect.ArrayListMultimap
+import com.google.common.collect.ListMultimap
import com.withorb.api.core.NoAutoDetect
import com.withorb.api.core.toImmutable
import com.withorb.api.models.*
@@ -21,8 +23,8 @@ constructor(
private val externalCustomerId: String?,
private val limit: Long?,
private val subscriptionId: String?,
- private val additionalQueryParams: Map>,
private val additionalHeaders: Map>,
+ private val additionalQueryParams: Map>,
) {
fun createdAtGt(): Optional = Optional.ofNullable(createdAtGt)
@@ -43,6 +45,8 @@ constructor(
fun subscriptionId(): Optional = Optional.ofNullable(subscriptionId)
+ @JvmSynthetic internal fun getHeaders(): Map> = additionalHeaders
+
@JvmSynthetic
internal fun getQueryParams(): Map> {
val params = mutableMapOf>()
@@ -67,26 +71,24 @@ constructor(
return params.toImmutable()
}
- @JvmSynthetic internal fun getHeaders(): Map> = additionalHeaders
+ fun _additionalHeaders(): Map> = additionalHeaders
fun _additionalQueryParams(): Map> = additionalQueryParams
- fun _additionalHeaders(): Map> = additionalHeaders
-
override fun equals(other: Any?): Boolean {
if (this === other) {
return true
}
- return /* spotless:off */ other is AlertListParams && this.createdAtGt == other.createdAtGt && this.createdAtGte == other.createdAtGte && this.createdAtLt == other.createdAtLt && this.createdAtLte == other.createdAtLte && this.cursor == other.cursor && this.customerId == other.customerId && this.externalCustomerId == other.externalCustomerId && this.limit == other.limit && this.subscriptionId == other.subscriptionId && this.additionalQueryParams == other.additionalQueryParams && this.additionalHeaders == other.additionalHeaders /* spotless:on */
+ return /* spotless:off */ other is AlertListParams && this.createdAtGt == other.createdAtGt && this.createdAtGte == other.createdAtGte && this.createdAtLt == other.createdAtLt && this.createdAtLte == other.createdAtLte && this.cursor == other.cursor && this.customerId == other.customerId && this.externalCustomerId == other.externalCustomerId && this.limit == other.limit && this.subscriptionId == other.subscriptionId && this.additionalHeaders == other.additionalHeaders && this.additionalQueryParams == other.additionalQueryParams /* spotless:on */
}
override fun hashCode(): Int {
- return /* spotless:off */ Objects.hash(createdAtGt, createdAtGte, createdAtLt, createdAtLte, cursor, customerId, externalCustomerId, limit, subscriptionId, additionalQueryParams, additionalHeaders) /* spotless:on */
+ return /* spotless:off */ Objects.hash(createdAtGt, createdAtGte, createdAtLt, createdAtLte, cursor, customerId, externalCustomerId, limit, subscriptionId, additionalHeaders, additionalQueryParams) /* spotless:on */
}
override fun toString() =
- "AlertListParams{createdAtGt=$createdAtGt, createdAtGte=$createdAtGte, createdAtLt=$createdAtLt, createdAtLte=$createdAtLte, cursor=$cursor, customerId=$customerId, externalCustomerId=$externalCustomerId, limit=$limit, subscriptionId=$subscriptionId, additionalQueryParams=$additionalQueryParams, additionalHeaders=$additionalHeaders}"
+ "AlertListParams{createdAtGt=$createdAtGt, createdAtGte=$createdAtGte, createdAtLt=$createdAtLt, createdAtLte=$createdAtLte, cursor=$cursor, customerId=$customerId, externalCustomerId=$externalCustomerId, limit=$limit, subscriptionId=$subscriptionId, additionalHeaders=$additionalHeaders, additionalQueryParams=$additionalQueryParams}"
fun toBuilder() = Builder().from(this)
@@ -107,8 +109,8 @@ constructor(
private var externalCustomerId: String? = null
private var limit: Long? = null
private var subscriptionId: String? = null
- private var additionalQueryParams: MutableMap> = mutableMapOf()
- private var additionalHeaders: MutableMap> = mutableMapOf()
+ private var additionalHeaders: ListMultimap = ArrayListMultimap.create()
+ private var additionalQueryParams: ListMultimap = ArrayListMultimap.create()
@JvmSynthetic
internal fun from(alertListParams: AlertListParams) = apply {
@@ -121,8 +123,8 @@ constructor(
this.externalCustomerId = alertListParams.externalCustomerId
this.limit = alertListParams.limit
this.subscriptionId = alertListParams.subscriptionId
- additionalQueryParams(alertListParams.additionalQueryParams)
additionalHeaders(alertListParams.additionalHeaders)
+ additionalQueryParams(alertListParams.additionalQueryParams)
}
fun createdAtGt(createdAtGt: OffsetDateTime) = apply { this.createdAtGt = createdAtGt }
@@ -153,45 +155,79 @@ constructor(
/** Fetch alerts scoped to this subscription_id */
fun subscriptionId(subscriptionId: String) = apply { this.subscriptionId = subscriptionId }
- fun additionalQueryParams(additionalQueryParams: Map>) = apply {
- this.additionalQueryParams.clear()
- putAllQueryParams(additionalQueryParams)
+ fun additionalHeaders(additionalHeaders: Map>) = apply {
+ this.additionalHeaders.clear()
+ putAllAdditionalHeaders(additionalHeaders)
}
- fun putQueryParam(name: String, value: String) = apply {
- this.additionalQueryParams.getOrPut(name) { mutableListOf() }.add(value)
+ fun putAdditionalHeader(name: String, value: String) = apply {
+ additionalHeaders.put(name, value)
}
- fun putQueryParams(name: String, values: Iterable) = apply {
- this.additionalQueryParams.getOrPut(name) { mutableListOf() }.addAll(values)
+ fun putAdditionalHeaders(name: String, values: Iterable) = apply {
+ additionalHeaders.putAll(name, values)
}
- fun putAllQueryParams(additionalQueryParams: Map>) = apply {
- additionalQueryParams.forEach(this::putQueryParams)
+ fun putAllAdditionalHeaders(additionalHeaders: Map>) = apply {
+ additionalHeaders.forEach(::putAdditionalHeaders)
}
- fun removeQueryParam(name: String) = apply {
- this.additionalQueryParams.put(name, mutableListOf())
+ fun replaceAdditionalHeaders(name: String, value: String) = apply {
+ additionalHeaders.replaceValues(name, listOf(value))
}
- fun additionalHeaders(additionalHeaders: Map>) = apply {
- this.additionalHeaders.clear()
- putAllHeaders(additionalHeaders)
+ fun replaceAdditionalHeaders(name: String, values: Iterable) = apply {
+ additionalHeaders.replaceValues(name, values)
}
- fun putHeader(name: String, value: String) = apply {
- this.additionalHeaders.getOrPut(name) { mutableListOf() }.add(value)
+ fun replaceAllAdditionalHeaders(additionalHeaders: Map>) = apply {
+ additionalHeaders.forEach(::replaceAdditionalHeaders)
}
- fun putHeaders(name: String, values: Iterable