22
33package com.openlayer.api.models
44
5+ import com.fasterxml.jackson.annotation.JsonCreator
6+ import com.openlayer.api.core.Enum
7+ import com.openlayer.api.core.JsonField
58import com.openlayer.api.core.NoAutoDetect
69import com.openlayer.api.core.http.Headers
710import com.openlayer.api.core.http.QueryParams
11+ import com.openlayer.api.core.toImmutable
12+ import com.openlayer.api.errors.OpenlayerInvalidDataException
813import java.util.Objects
14+ import java.util.Optional
915
1016class InferencePipelineRetrieveParams
1117constructor (
1218 private val inferencePipelineId: String ,
19+ private val expand: List <Expand >? ,
1320 private val additionalHeaders: Headers ,
1421 private val additionalQueryParams: QueryParams ,
1522) {
1623
1724 fun inferencePipelineId (): String = inferencePipelineId
1825
26+ fun expand (): Optional <List <Expand >> = Optional .ofNullable(expand)
27+
1928 fun _additionalHeaders (): Headers = additionalHeaders
2029
2130 fun _additionalQueryParams (): QueryParams = additionalQueryParams
2231
2332 @JvmSynthetic internal fun getHeaders (): Headers = additionalHeaders
2433
25- @JvmSynthetic internal fun getQueryParams (): QueryParams = additionalQueryParams
34+ @JvmSynthetic
35+ internal fun getQueryParams (): QueryParams {
36+ val queryParams = QueryParams .builder()
37+ this .expand?.let { queryParams.put(" expand" , listOf (it.joinToString(separator = " ," ))) }
38+ queryParams.putAll(additionalQueryParams)
39+ return queryParams.build()
40+ }
2641
2742 fun getPathParam (index : Int ): String {
2843 return when (index) {
@@ -42,13 +57,15 @@ constructor(
4257 class Builder {
4358
4459 private var inferencePipelineId: String? = null
60+ private var expand: MutableList <Expand > = mutableListOf ()
4561 private var additionalHeaders: Headers .Builder = Headers .builder()
4662 private var additionalQueryParams: QueryParams .Builder = QueryParams .builder()
4763
4864 @JvmSynthetic
4965 internal fun from (inferencePipelineRetrieveParams : InferencePipelineRetrieveParams ) =
5066 apply {
5167 inferencePipelineId = inferencePipelineRetrieveParams.inferencePipelineId
68+ expand = inferencePipelineRetrieveParams.expand?.toMutableList() ? : mutableListOf ()
5269 additionalHeaders = inferencePipelineRetrieveParams.additionalHeaders.toBuilder()
5370 additionalQueryParams =
5471 inferencePipelineRetrieveParams.additionalQueryParams.toBuilder()
@@ -58,6 +75,15 @@ constructor(
5875 this .inferencePipelineId = inferencePipelineId
5976 }
6077
78+ /* * Expand specific nested objects. */
79+ fun expand (expand : List <Expand >) = apply {
80+ this .expand.clear()
81+ this .expand.addAll(expand)
82+ }
83+
84+ /* * Expand specific nested objects. */
85+ fun addExpand (expand : Expand ) = apply { this .expand.add(expand) }
86+
6187 fun additionalHeaders (additionalHeaders : Headers ) = apply {
6288 this .additionalHeaders.clear()
6389 putAllAdditionalHeaders(additionalHeaders)
@@ -161,21 +187,79 @@ constructor(
161187 checkNotNull(inferencePipelineId) {
162188 " `inferencePipelineId` is required but was not set"
163189 },
190+ expand.toImmutable().ifEmpty { null },
164191 additionalHeaders.build(),
165192 additionalQueryParams.build(),
166193 )
167194 }
168195
196+ class Expand
197+ @JsonCreator
198+ private constructor (
199+ private val value: JsonField <String >,
200+ ) : Enum {
201+
202+ @com.fasterxml.jackson.annotation.JsonValue fun _value (): JsonField <String > = value
203+
204+ companion object {
205+
206+ @JvmField val PROJECT = of(" project" )
207+
208+ @JvmField val WORKSPACE = of(" workspace" )
209+
210+ @JvmStatic fun of (value : String ) = Expand (JsonField .of(value))
211+ }
212+
213+ enum class Known {
214+ PROJECT ,
215+ WORKSPACE ,
216+ }
217+
218+ enum class Value {
219+ PROJECT ,
220+ WORKSPACE ,
221+ _UNKNOWN ,
222+ }
223+
224+ fun value (): Value =
225+ when (this ) {
226+ PROJECT -> Value .PROJECT
227+ WORKSPACE -> Value .WORKSPACE
228+ else -> Value ._UNKNOWN
229+ }
230+
231+ fun known (): Known =
232+ when (this ) {
233+ PROJECT -> Known .PROJECT
234+ WORKSPACE -> Known .WORKSPACE
235+ else -> throw OpenlayerInvalidDataException (" Unknown Expand: $value " )
236+ }
237+
238+ fun asString (): String = _value ().asStringOrThrow()
239+
240+ override fun equals (other : Any? ): Boolean {
241+ if (this == = other) {
242+ return true
243+ }
244+
245+ return /* spotless:off */ other is Expand && value == other.value /* spotless:on */
246+ }
247+
248+ override fun hashCode () = value.hashCode()
249+
250+ override fun toString () = value.toString()
251+ }
252+
169253 override fun equals (other : Any? ): Boolean {
170254 if (this == = other) {
171255 return true
172256 }
173257
174- return /* spotless:off */ other is InferencePipelineRetrieveParams && inferencePipelineId == other.inferencePipelineId && additionalHeaders == other.additionalHeaders && additionalQueryParams == other.additionalQueryParams /* spotless:on */
258+ return /* spotless:off */ other is InferencePipelineRetrieveParams && inferencePipelineId == other.inferencePipelineId && expand == other.expand && additionalHeaders == other.additionalHeaders && additionalQueryParams == other.additionalQueryParams /* spotless:on */
175259 }
176260
177- override fun hashCode (): Int = /* spotless:off */ Objects .hash(inferencePipelineId, additionalHeaders, additionalQueryParams) /* spotless:on */
261+ override fun hashCode (): Int = /* spotless:off */ Objects .hash(inferencePipelineId, expand, additionalHeaders, additionalQueryParams) /* spotless:on */
178262
179263 override fun toString () =
180- " InferencePipelineRetrieveParams{inferencePipelineId=$inferencePipelineId , additionalHeaders=$additionalHeaders , additionalQueryParams=$additionalQueryParams }"
264+ " InferencePipelineRetrieveParams{inferencePipelineId=$inferencePipelineId , expand= $expand , additionalHeaders=$additionalHeaders , additionalQueryParams=$additionalQueryParams }"
181265}
0 commit comments