Skip to content

Commit 5ea104e

Browse files
feat(api): adds endpoint for migrating auth rules from v1 to V2. marks v1 auth rules as deprecated (#316)
1 parent 1b28230 commit 5ea104e

12 files changed

Lines changed: 2727 additions & 30 deletions

File tree

.stats.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
configured_endpoints: 146
1+
configured_endpoints: 147
Lines changed: 155 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,155 @@
1+
// File generated from our OpenAPI spec by Stainless.
2+
3+
package com.lithic.api.models
4+
5+
import com.lithic.api.core.JsonValue
6+
import com.lithic.api.core.NoAutoDetect
7+
import com.lithic.api.core.toUnmodifiable
8+
import com.lithic.api.models.*
9+
import java.util.Objects
10+
import java.util.Optional
11+
12+
class AuthRuleMigrateV1ToV2Params
13+
constructor(
14+
private val authRuleToken: String,
15+
private val additionalQueryParams: Map<String, List<String>>,
16+
private val additionalHeaders: Map<String, List<String>>,
17+
private val additionalBodyProperties: Map<String, JsonValue>,
18+
) {
19+
20+
fun authRuleToken(): String = authRuleToken
21+
22+
@JvmSynthetic
23+
internal fun getBody(): Optional<Map<String, JsonValue>> {
24+
return Optional.ofNullable(additionalBodyProperties.ifEmpty { null })
25+
}
26+
27+
@JvmSynthetic internal fun getQueryParams(): Map<String, List<String>> = additionalQueryParams
28+
29+
@JvmSynthetic internal fun getHeaders(): Map<String, List<String>> = additionalHeaders
30+
31+
fun getPathParam(index: Int): String {
32+
return when (index) {
33+
0 -> authRuleToken
34+
else -> ""
35+
}
36+
}
37+
38+
fun _additionalQueryParams(): Map<String, List<String>> = additionalQueryParams
39+
40+
fun _additionalHeaders(): Map<String, List<String>> = additionalHeaders
41+
42+
fun _additionalBodyProperties(): Map<String, JsonValue> = additionalBodyProperties
43+
44+
override fun equals(other: Any?): Boolean {
45+
if (this === other) {
46+
return true
47+
}
48+
49+
return other is AuthRuleMigrateV1ToV2Params &&
50+
this.authRuleToken == other.authRuleToken &&
51+
this.additionalQueryParams == other.additionalQueryParams &&
52+
this.additionalHeaders == other.additionalHeaders &&
53+
this.additionalBodyProperties == other.additionalBodyProperties
54+
}
55+
56+
override fun hashCode(): Int {
57+
return Objects.hash(
58+
authRuleToken,
59+
additionalQueryParams,
60+
additionalHeaders,
61+
additionalBodyProperties,
62+
)
63+
}
64+
65+
override fun toString() =
66+
"AuthRuleMigrateV1ToV2Params{authRuleToken=$authRuleToken, additionalQueryParams=$additionalQueryParams, additionalHeaders=$additionalHeaders, additionalBodyProperties=$additionalBodyProperties}"
67+
68+
fun toBuilder() = Builder().from(this)
69+
70+
companion object {
71+
72+
@JvmStatic fun builder() = Builder()
73+
}
74+
75+
@NoAutoDetect
76+
class Builder {
77+
78+
private var authRuleToken: String? = null
79+
private var additionalQueryParams: MutableMap<String, MutableList<String>> = mutableMapOf()
80+
private var additionalHeaders: MutableMap<String, MutableList<String>> = mutableMapOf()
81+
private var additionalBodyProperties: MutableMap<String, JsonValue> = mutableMapOf()
82+
83+
@JvmSynthetic
84+
internal fun from(authRuleMigrateV1ToV2Params: AuthRuleMigrateV1ToV2Params) = apply {
85+
this.authRuleToken = authRuleMigrateV1ToV2Params.authRuleToken
86+
additionalQueryParams(authRuleMigrateV1ToV2Params.additionalQueryParams)
87+
additionalHeaders(authRuleMigrateV1ToV2Params.additionalHeaders)
88+
additionalBodyProperties(authRuleMigrateV1ToV2Params.additionalBodyProperties)
89+
}
90+
91+
fun authRuleToken(authRuleToken: String) = apply { this.authRuleToken = authRuleToken }
92+
93+
fun additionalQueryParams(additionalQueryParams: Map<String, List<String>>) = apply {
94+
this.additionalQueryParams.clear()
95+
putAllQueryParams(additionalQueryParams)
96+
}
97+
98+
fun putQueryParam(name: String, value: String) = apply {
99+
this.additionalQueryParams.getOrPut(name) { mutableListOf() }.add(value)
100+
}
101+
102+
fun putQueryParams(name: String, values: Iterable<String>) = apply {
103+
this.additionalQueryParams.getOrPut(name) { mutableListOf() }.addAll(values)
104+
}
105+
106+
fun putAllQueryParams(additionalQueryParams: Map<String, Iterable<String>>) = apply {
107+
additionalQueryParams.forEach(this::putQueryParams)
108+
}
109+
110+
fun removeQueryParam(name: String) = apply {
111+
this.additionalQueryParams.put(name, mutableListOf())
112+
}
113+
114+
fun additionalHeaders(additionalHeaders: Map<String, Iterable<String>>) = apply {
115+
this.additionalHeaders.clear()
116+
putAllHeaders(additionalHeaders)
117+
}
118+
119+
fun putHeader(name: String, value: String) = apply {
120+
this.additionalHeaders.getOrPut(name) { mutableListOf() }.add(value)
121+
}
122+
123+
fun putHeaders(name: String, values: Iterable<String>) = apply {
124+
this.additionalHeaders.getOrPut(name) { mutableListOf() }.addAll(values)
125+
}
126+
127+
fun putAllHeaders(additionalHeaders: Map<String, Iterable<String>>) = apply {
128+
additionalHeaders.forEach(this::putHeaders)
129+
}
130+
131+
fun removeHeader(name: String) = apply { this.additionalHeaders.put(name, mutableListOf()) }
132+
133+
fun additionalBodyProperties(additionalBodyProperties: Map<String, JsonValue>) = apply {
134+
this.additionalBodyProperties.clear()
135+
this.additionalBodyProperties.putAll(additionalBodyProperties)
136+
}
137+
138+
fun putAdditionalBodyProperty(key: String, value: JsonValue) = apply {
139+
this.additionalBodyProperties.put(key, value)
140+
}
141+
142+
fun putAllAdditionalBodyProperties(additionalBodyProperties: Map<String, JsonValue>) =
143+
apply {
144+
this.additionalBodyProperties.putAll(additionalBodyProperties)
145+
}
146+
147+
fun build(): AuthRuleMigrateV1ToV2Params =
148+
AuthRuleMigrateV1ToV2Params(
149+
checkNotNull(authRuleToken) { "`authRuleToken` is required but was not set" },
150+
additionalQueryParams.mapValues { it.value.toUnmodifiable() }.toUnmodifiable(),
151+
additionalHeaders.mapValues { it.value.toUnmodifiable() }.toUnmodifiable(),
152+
additionalBodyProperties.toUnmodifiable(),
153+
)
154+
}
155+
}

0 commit comments

Comments
 (0)