diff --git a/.release-please-manifest.json b/.release-please-manifest.json
index 3b0f7de..b3365ec 100644
--- a/.release-please-manifest.json
+++ b/.release-please-manifest.json
@@ -1,3 +1,3 @@
{
- ".": "0.1.0-alpha.54"
+ ".": "0.1.0-alpha.55"
}
\ No newline at end of file
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2617071..8bd8178 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,18 @@
# Changelog
+## 0.1.0-alpha.55 (2025-01-02)
+
+Full Changelog: [v0.1.0-alpha.54...v0.1.0-alpha.55](https://github.com/OneBusAway/kotlin-sdk/compare/v0.1.0-alpha.54...v0.1.0-alpha.55)
+
+### Bug Fixes
+
+* correctly generate intersection tests ([#149](https://github.com/OneBusAway/kotlin-sdk/issues/149)) ([a34b53e](https://github.com/OneBusAway/kotlin-sdk/commit/a34b53ef47ffe593c6c8c6c916d3a38ebba2aaf6))
+
+
+### Chores
+
+* **internal:** codegen related update ([#148](https://github.com/OneBusAway/kotlin-sdk/issues/148)) ([531a52b](https://github.com/OneBusAway/kotlin-sdk/commit/531a52b6fa375d9720a99d178bc20d3e5ad199c6))
+
## 0.1.0-alpha.54 (2025-01-02)
Full Changelog: [v0.1.0-alpha.53...v0.1.0-alpha.54](https://github.com/OneBusAway/kotlin-sdk/compare/v0.1.0-alpha.53...v0.1.0-alpha.54)
diff --git a/README.md b/README.md
index c42a424..7a38df8 100644
--- a/README.md
+++ b/README.md
@@ -21,7 +21,7 @@ The REST API documentation can be found on [developer.onebusaway.org](https://d
```kotlin
-implementation("org.onebusaway:onebusaway-sdk-kotlin:0.1.0-alpha.54")
+implementation("org.onebusaway:onebusaway-sdk-kotlin:0.1.0-alpha.55")
```
#### Maven
@@ -30,7 +30,7 @@ implementation("org.onebusaway:onebusaway-sdk-kotlin:0.1.0-alpha.54")
org.onebusaway
onebusaway-sdk-kotlin
- 0.1.0-alpha.54
+ 0.1.0-alpha.55
```
diff --git a/build.gradle.kts b/build.gradle.kts
index 3b06bd1..8e8abd4 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -4,7 +4,7 @@ plugins {
allprojects {
group = "org.onebusaway"
- version = "0.1.0-alpha.54" // x-release-please-version
+ version = "0.1.0-alpha.55" // x-release-please-version
}
nexusPublishing {
diff --git a/onebusaway-sdk-kotlin-core/src/main/kotlin/org/onebusaway/core/Utils.kt b/onebusaway-sdk-kotlin-core/src/main/kotlin/org/onebusaway/core/Utils.kt
index 806ac8b..3b5d37e 100644
--- a/onebusaway-sdk-kotlin-core/src/main/kotlin/org/onebusaway/core/Utils.kt
+++ b/onebusaway-sdk-kotlin-core/src/main/kotlin/org/onebusaway/core/Utils.kt
@@ -13,7 +13,9 @@ internal fun List.toImmutable(): List =
if (isEmpty()) Collections.emptyList() else Collections.unmodifiableList(toList())
internal fun Map.toImmutable(): Map =
- if (isEmpty()) Collections.emptyMap() else Collections.unmodifiableMap(toMap())
+ if (isEmpty()) immutableEmptyMap() else Collections.unmodifiableMap(toMap())
+
+internal fun immutableEmptyMap(): Map = Collections.emptyMap()
internal fun , V> SortedMap.toImmutable(): SortedMap =
if (isEmpty()) Collections.emptySortedMap()
diff --git a/onebusaway-sdk-kotlin-core/src/main/kotlin/org/onebusaway/errors/OnebusawaySdkError.kt b/onebusaway-sdk-kotlin-core/src/main/kotlin/org/onebusaway/errors/OnebusawaySdkError.kt
index 9a2b26f..7715cdd 100644
--- a/onebusaway-sdk-kotlin-core/src/main/kotlin/org/onebusaway/errors/OnebusawaySdkError.kt
+++ b/onebusaway-sdk-kotlin-core/src/main/kotlin/org/onebusaway/errors/OnebusawaySdkError.kt
@@ -4,18 +4,22 @@ package org.onebusaway.errors
import com.fasterxml.jackson.annotation.JsonAnyGetter
import com.fasterxml.jackson.annotation.JsonAnySetter
-import com.fasterxml.jackson.databind.annotation.JsonDeserialize
+import com.fasterxml.jackson.annotation.JsonCreator
import java.util.Objects
import org.onebusaway.core.ExcludeMissing
import org.onebusaway.core.JsonValue
import org.onebusaway.core.NoAutoDetect
+import org.onebusaway.core.immutableEmptyMap
import org.onebusaway.core.toImmutable
-@JsonDeserialize(builder = OnebusawaySdkError.Builder::class)
@NoAutoDetect
class OnebusawaySdkError
+@JsonCreator
private constructor(
- @JsonAnyGetter @ExcludeMissing val additionalProperties: Map,
+ @JsonAnyGetter
+ @ExcludeMissing
+ @JsonAnySetter
+ val additionalProperties: Map = immutableEmptyMap(),
) {
fun toBuilder() = Builder().from(this)
@@ -38,7 +42,6 @@ private constructor(
putAllAdditionalProperties(additionalProperties)
}
- @JsonAnySetter
fun putAdditionalProperty(key: String, value: JsonValue) = apply {
additionalProperties.put(key, value)
}
diff --git a/onebusaway-sdk-kotlin-core/src/main/kotlin/org/onebusaway/models/AgenciesWithCoverageListResponse.kt b/onebusaway-sdk-kotlin-core/src/main/kotlin/org/onebusaway/models/AgenciesWithCoverageListResponse.kt
index 000e12e..6ae25f8 100644
--- a/onebusaway-sdk-kotlin-core/src/main/kotlin/org/onebusaway/models/AgenciesWithCoverageListResponse.kt
+++ b/onebusaway-sdk-kotlin-core/src/main/kotlin/org/onebusaway/models/AgenciesWithCoverageListResponse.kt
@@ -4,26 +4,31 @@ package org.onebusaway.models
import com.fasterxml.jackson.annotation.JsonAnyGetter
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 java.util.Objects
import org.onebusaway.core.ExcludeMissing
import org.onebusaway.core.JsonField
import org.onebusaway.core.JsonMissing
import org.onebusaway.core.JsonValue
import org.onebusaway.core.NoAutoDetect
+import org.onebusaway.core.immutableEmptyMap
import org.onebusaway.core.toImmutable
-@JsonDeserialize(builder = AgenciesWithCoverageListResponse.Builder::class)
@NoAutoDetect
class AgenciesWithCoverageListResponse
+@JsonCreator
private constructor(
- private val code: JsonField,
- private val currentTime: JsonField,
- private val text: JsonField,
- private val version: JsonField,
- private val data: JsonField,
- private val additionalProperties: Map,
+ @JsonProperty("code") @ExcludeMissing private val code: JsonField = JsonMissing.of(),
+ @JsonProperty("currentTime")
+ @ExcludeMissing
+ private val currentTime: JsonField = JsonMissing.of(),
+ @JsonProperty("text") @ExcludeMissing private val text: JsonField = JsonMissing.of(),
+ @JsonProperty("version")
+ @ExcludeMissing
+ private val version: JsonField = JsonMissing.of(),
+ @JsonProperty("data") @ExcludeMissing private val data: JsonField = JsonMissing.of(),
+ @JsonAnySetter private val additionalProperties: Map = immutableEmptyMap(),
) {
fun code(): Long = code.getRequired("code")
@@ -100,32 +105,22 @@ private constructor(
fun code(code: Long) = code(JsonField.of(code))
- @JsonProperty("code")
- @ExcludeMissing
fun code(code: JsonField) = apply { this.code = code }
fun currentTime(currentTime: Long) = currentTime(JsonField.of(currentTime))
- @JsonProperty("currentTime")
- @ExcludeMissing
fun currentTime(currentTime: JsonField) = apply { this.currentTime = currentTime }
fun text(text: String) = text(JsonField.of(text))
- @JsonProperty("text")
- @ExcludeMissing
fun text(text: JsonField) = apply { this.text = text }
fun version(version: Long) = version(JsonField.of(version))
- @JsonProperty("version")
- @ExcludeMissing
fun version(version: JsonField) = apply { this.version = version }
fun data(data: Data) = data(JsonField.of(data))
- @JsonProperty("data")
- @ExcludeMissing
fun data(data: JsonField) = apply { this.data = data }
fun additionalProperties(additionalProperties: Map) = apply {
@@ -133,7 +128,6 @@ private constructor(
putAllAdditionalProperties(additionalProperties)
}
- @JsonAnySetter
fun putAdditionalProperty(key: String, value: JsonValue) = apply {
additionalProperties.put(key, value)
}
@@ -159,14 +153,21 @@ private constructor(
)
}
- @JsonDeserialize(builder = Data.Builder::class)
@NoAutoDetect
class Data
+ @JsonCreator
private constructor(
- private val limitExceeded: JsonField,
- private val list: JsonField>,
- private val references: JsonField,
- private val additionalProperties: Map,
+ @JsonProperty("limitExceeded")
+ @ExcludeMissing
+ private val limitExceeded: JsonField = JsonMissing.of(),
+ @JsonProperty("list")
+ @ExcludeMissing
+ private val list: JsonField> = JsonMissing.of(),
+ @JsonProperty("references")
+ @ExcludeMissing
+ private val references: JsonField = JsonMissing.of(),
+ @JsonAnySetter
+ private val additionalProperties: Map = immutableEmptyMap(),
) {
fun limitExceeded(): Boolean = limitExceeded.getRequired("limitExceeded")
@@ -219,22 +220,16 @@ private constructor(
fun limitExceeded(limitExceeded: Boolean) = limitExceeded(JsonField.of(limitExceeded))
- @JsonProperty("limitExceeded")
- @ExcludeMissing
fun limitExceeded(limitExceeded: JsonField) = apply {
this.limitExceeded = limitExceeded
}
fun list(list: kotlin.collections.List) = list(JsonField.of(list))
- @JsonProperty("list")
- @ExcludeMissing
fun list(list: JsonField>) = apply { this.list = list }
fun references(references: References) = references(JsonField.of(references))
- @JsonProperty("references")
- @ExcludeMissing
fun references(references: JsonField) = apply {
this.references = references
}
@@ -244,7 +239,6 @@ private constructor(
putAllAdditionalProperties(additionalProperties)
}
- @JsonAnySetter
fun putAdditionalProperty(key: String, value: JsonValue) = apply {
additionalProperties.put(key, value)
}
@@ -268,16 +262,27 @@ private constructor(
)
}
- @JsonDeserialize(builder = List.Builder::class)
@NoAutoDetect
class List
+ @JsonCreator
private constructor(
- private val agencyId: JsonField,
- private val lat: JsonField,
- private val latSpan: JsonField,
- private val lon: JsonField,
- private val lonSpan: JsonField,
- private val additionalProperties: Map,
+ @JsonProperty("agencyId")
+ @ExcludeMissing
+ private val agencyId: JsonField = JsonMissing.of(),
+ @JsonProperty("lat")
+ @ExcludeMissing
+ private val lat: JsonField = JsonMissing.of(),
+ @JsonProperty("latSpan")
+ @ExcludeMissing
+ private val latSpan: JsonField = JsonMissing.of(),
+ @JsonProperty("lon")
+ @ExcludeMissing
+ private val lon: JsonField = JsonMissing.of(),
+ @JsonProperty("lonSpan")
+ @ExcludeMissing
+ private val lonSpan: JsonField = JsonMissing.of(),
+ @JsonAnySetter
+ private val additionalProperties: Map = immutableEmptyMap(),
) {
fun agencyId(): String = agencyId.getRequired("agencyId")
@@ -344,32 +349,22 @@ private constructor(
fun agencyId(agencyId: String) = agencyId(JsonField.of(agencyId))
- @JsonProperty("agencyId")
- @ExcludeMissing
fun agencyId(agencyId: JsonField) = apply { this.agencyId = agencyId }
fun lat(lat: Double) = lat(JsonField.of(lat))
- @JsonProperty("lat")
- @ExcludeMissing
fun lat(lat: JsonField) = apply { this.lat = lat }
fun latSpan(latSpan: Double) = latSpan(JsonField.of(latSpan))
- @JsonProperty("latSpan")
- @ExcludeMissing
fun latSpan(latSpan: JsonField) = apply { this.latSpan = latSpan }
fun lon(lon: Double) = lon(JsonField.of(lon))
- @JsonProperty("lon")
- @ExcludeMissing
fun lon(lon: JsonField) = apply { this.lon = lon }
fun lonSpan(lonSpan: Double) = lonSpan(JsonField.of(lonSpan))
- @JsonProperty("lonSpan")
- @ExcludeMissing
fun lonSpan(lonSpan: JsonField) = apply { this.lonSpan = lonSpan }
fun additionalProperties(additionalProperties: Map) = apply {
@@ -377,7 +372,6 @@ private constructor(
putAllAdditionalProperties(additionalProperties)
}
- @JsonAnySetter
fun putAdditionalProperty(key: String, value: JsonValue) = apply {
additionalProperties.put(key, value)
}
diff --git a/onebusaway-sdk-kotlin-core/src/main/kotlin/org/onebusaway/models/AgencyRetrieveResponse.kt b/onebusaway-sdk-kotlin-core/src/main/kotlin/org/onebusaway/models/AgencyRetrieveResponse.kt
index 560c628..acf60fd 100644
--- a/onebusaway-sdk-kotlin-core/src/main/kotlin/org/onebusaway/models/AgencyRetrieveResponse.kt
+++ b/onebusaway-sdk-kotlin-core/src/main/kotlin/org/onebusaway/models/AgencyRetrieveResponse.kt
@@ -4,26 +4,31 @@ package org.onebusaway.models
import com.fasterxml.jackson.annotation.JsonAnyGetter
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 java.util.Objects
import org.onebusaway.core.ExcludeMissing
import org.onebusaway.core.JsonField
import org.onebusaway.core.JsonMissing
import org.onebusaway.core.JsonValue
import org.onebusaway.core.NoAutoDetect
+import org.onebusaway.core.immutableEmptyMap
import org.onebusaway.core.toImmutable
-@JsonDeserialize(builder = AgencyRetrieveResponse.Builder::class)
@NoAutoDetect
class AgencyRetrieveResponse
+@JsonCreator
private constructor(
- private val code: JsonField,
- private val currentTime: JsonField,
- private val text: JsonField,
- private val version: JsonField,
- private val data: JsonField,
- private val additionalProperties: Map,
+ @JsonProperty("code") @ExcludeMissing private val code: JsonField = JsonMissing.of(),
+ @JsonProperty("currentTime")
+ @ExcludeMissing
+ private val currentTime: JsonField = JsonMissing.of(),
+ @JsonProperty("text") @ExcludeMissing private val text: JsonField = JsonMissing.of(),
+ @JsonProperty("version")
+ @ExcludeMissing
+ private val version: JsonField = JsonMissing.of(),
+ @JsonProperty("data") @ExcludeMissing private val data: JsonField = JsonMissing.of(),
+ @JsonAnySetter private val additionalProperties: Map = immutableEmptyMap(),
) {
fun code(): Long = code.getRequired("code")
@@ -98,32 +103,22 @@ private constructor(
fun code(code: Long) = code(JsonField.of(code))
- @JsonProperty("code")
- @ExcludeMissing
fun code(code: JsonField) = apply { this.code = code }
fun currentTime(currentTime: Long) = currentTime(JsonField.of(currentTime))
- @JsonProperty("currentTime")
- @ExcludeMissing
fun currentTime(currentTime: JsonField) = apply { this.currentTime = currentTime }
fun text(text: String) = text(JsonField.of(text))
- @JsonProperty("text")
- @ExcludeMissing
fun text(text: JsonField) = apply { this.text = text }
fun version(version: Long) = version(JsonField.of(version))
- @JsonProperty("version")
- @ExcludeMissing
fun version(version: JsonField) = apply { this.version = version }
fun data(data: Data) = data(JsonField.of(data))
- @JsonProperty("data")
- @ExcludeMissing
fun data(data: JsonField) = apply { this.data = data }
fun additionalProperties(additionalProperties: Map) = apply {
@@ -131,7 +126,6 @@ private constructor(
putAllAdditionalProperties(additionalProperties)
}
- @JsonAnySetter
fun putAdditionalProperty(key: String, value: JsonValue) = apply {
additionalProperties.put(key, value)
}
@@ -157,14 +151,21 @@ private constructor(
)
}
- @JsonDeserialize(builder = Data.Builder::class)
@NoAutoDetect
class Data
+ @JsonCreator
private constructor(
- private val limitExceeded: JsonField,
- private val entry: JsonField,
- private val references: JsonField,
- private val additionalProperties: Map,
+ @JsonProperty("limitExceeded")
+ @ExcludeMissing
+ private val limitExceeded: JsonField = JsonMissing.of(),
+ @JsonProperty("entry")
+ @ExcludeMissing
+ private val entry: JsonField = JsonMissing.of(),
+ @JsonProperty("references")
+ @ExcludeMissing
+ private val references: JsonField = JsonMissing.of(),
+ @JsonAnySetter
+ private val additionalProperties: Map = immutableEmptyMap(),
) {
fun limitExceeded(): Boolean = limitExceeded.getRequired("limitExceeded")
@@ -217,22 +218,16 @@ private constructor(
fun limitExceeded(limitExceeded: Boolean) = limitExceeded(JsonField.of(limitExceeded))
- @JsonProperty("limitExceeded")
- @ExcludeMissing
fun limitExceeded(limitExceeded: JsonField) = apply {
this.limitExceeded = limitExceeded
}
fun entry(entry: Entry) = entry(JsonField.of(entry))
- @JsonProperty("entry")
- @ExcludeMissing
fun entry(entry: JsonField) = apply { this.entry = entry }
fun references(references: References) = references(JsonField.of(references))
- @JsonProperty("references")
- @ExcludeMissing
fun references(references: JsonField) = apply {
this.references = references
}
@@ -242,7 +237,6 @@ private constructor(
putAllAdditionalProperties(additionalProperties)
}
- @JsonAnySetter
fun putAdditionalProperty(key: String, value: JsonValue) = apply {
additionalProperties.put(key, value)
}
@@ -266,21 +260,42 @@ private constructor(
)
}
- @JsonDeserialize(builder = Entry.Builder::class)
@NoAutoDetect
class Entry
+ @JsonCreator
private constructor(
- private val disclaimer: JsonField,
- private val email: JsonField,
- private val fareUrl: JsonField,
- private val id: JsonField,
- private val lang: JsonField,
- private val name: JsonField,
- private val phone: JsonField,
- private val privateService: JsonField,
- private val timezone: JsonField,
- private val url: JsonField,
- private val additionalProperties: Map,
+ @JsonProperty("disclaimer")
+ @ExcludeMissing
+ private val disclaimer: JsonField = JsonMissing.of(),
+ @JsonProperty("email")
+ @ExcludeMissing
+ private val email: JsonField = JsonMissing.of(),
+ @JsonProperty("fareUrl")
+ @ExcludeMissing
+ private val fareUrl: JsonField = JsonMissing.of(),
+ @JsonProperty("id")
+ @ExcludeMissing
+ private val id: JsonField = JsonMissing.of(),
+ @JsonProperty("lang")
+ @ExcludeMissing
+ private val lang: JsonField = JsonMissing.of(),
+ @JsonProperty("name")
+ @ExcludeMissing
+ private val name: JsonField = JsonMissing.of(),
+ @JsonProperty("phone")
+ @ExcludeMissing
+ private val phone: JsonField = JsonMissing.of(),
+ @JsonProperty("privateService")
+ @ExcludeMissing
+ private val privateService: JsonField = JsonMissing.of(),
+ @JsonProperty("timezone")
+ @ExcludeMissing
+ private val timezone: JsonField = JsonMissing.of(),
+ @JsonProperty("url")
+ @ExcludeMissing
+ private val url: JsonField = JsonMissing.of(),
+ @JsonAnySetter
+ private val additionalProperties: Map = immutableEmptyMap(),
) {
fun disclaimer(): String? = disclaimer.getNullable("disclaimer")
@@ -382,67 +397,47 @@ private constructor(
fun disclaimer(disclaimer: String) = disclaimer(JsonField.of(disclaimer))
- @JsonProperty("disclaimer")
- @ExcludeMissing
fun disclaimer(disclaimer: JsonField) = apply {
this.disclaimer = disclaimer
}
fun email(email: String) = email(JsonField.of(email))
- @JsonProperty("email")
- @ExcludeMissing
fun email(email: JsonField) = apply { this.email = email }
fun fareUrl(fareUrl: String) = fareUrl(JsonField.of(fareUrl))
- @JsonProperty("fareUrl")
- @ExcludeMissing
fun fareUrl(fareUrl: JsonField) = apply { this.fareUrl = fareUrl }
fun id(id: String) = id(JsonField.of(id))
- @JsonProperty("id")
- @ExcludeMissing
fun id(id: JsonField) = apply { this.id = id }
fun lang(lang: String) = lang(JsonField.of(lang))
- @JsonProperty("lang")
- @ExcludeMissing
fun lang(lang: JsonField) = apply { this.lang = lang }
fun name(name: String) = name(JsonField.of(name))
- @JsonProperty("name")
- @ExcludeMissing
fun name(name: JsonField) = apply { this.name = name }
fun phone(phone: String) = phone(JsonField.of(phone))
- @JsonProperty("phone")
- @ExcludeMissing
fun phone(phone: JsonField) = apply { this.phone = phone }
fun privateService(privateService: Boolean) =
privateService(JsonField.of(privateService))
- @JsonProperty("privateService")
- @ExcludeMissing
fun privateService(privateService: JsonField) = apply {
this.privateService = privateService
}
fun timezone(timezone: String) = timezone(JsonField.of(timezone))
- @JsonProperty("timezone")
- @ExcludeMissing
fun timezone(timezone: JsonField) = apply { this.timezone = timezone }
fun url(url: String) = url(JsonField.of(url))
- @JsonProperty("url")
- @ExcludeMissing
fun url(url: JsonField) = apply { this.url = url }
fun additionalProperties(additionalProperties: Map) = apply {
@@ -450,7 +445,6 @@ private constructor(
putAllAdditionalProperties(additionalProperties)
}
- @JsonAnySetter
fun putAdditionalProperty(key: String, value: JsonValue) = apply {
additionalProperties.put(key, value)
}
diff --git a/onebusaway-sdk-kotlin-core/src/main/kotlin/org/onebusaway/models/ArrivalAndDepartureListResponse.kt b/onebusaway-sdk-kotlin-core/src/main/kotlin/org/onebusaway/models/ArrivalAndDepartureListResponse.kt
index 2786353..ad69ac4 100644
--- a/onebusaway-sdk-kotlin-core/src/main/kotlin/org/onebusaway/models/ArrivalAndDepartureListResponse.kt
+++ b/onebusaway-sdk-kotlin-core/src/main/kotlin/org/onebusaway/models/ArrivalAndDepartureListResponse.kt
@@ -4,26 +4,31 @@ package org.onebusaway.models
import com.fasterxml.jackson.annotation.JsonAnyGetter
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 java.util.Objects
import org.onebusaway.core.ExcludeMissing
import org.onebusaway.core.JsonField
import org.onebusaway.core.JsonMissing
import org.onebusaway.core.JsonValue
import org.onebusaway.core.NoAutoDetect
+import org.onebusaway.core.immutableEmptyMap
import org.onebusaway.core.toImmutable
-@JsonDeserialize(builder = ArrivalAndDepartureListResponse.Builder::class)
@NoAutoDetect
class ArrivalAndDepartureListResponse
+@JsonCreator
private constructor(
- private val code: JsonField,
- private val currentTime: JsonField,
- private val text: JsonField,
- private val version: JsonField,
- private val data: JsonField,
- private val additionalProperties: Map,
+ @JsonProperty("code") @ExcludeMissing private val code: JsonField = JsonMissing.of(),
+ @JsonProperty("currentTime")
+ @ExcludeMissing
+ private val currentTime: JsonField = JsonMissing.of(),
+ @JsonProperty("text") @ExcludeMissing private val text: JsonField = JsonMissing.of(),
+ @JsonProperty("version")
+ @ExcludeMissing
+ private val version: JsonField = JsonMissing.of(),
+ @JsonProperty("data") @ExcludeMissing private val data: JsonField = JsonMissing.of(),
+ @JsonAnySetter private val additionalProperties: Map = immutableEmptyMap(),
) {
fun code(): Long = code.getRequired("code")
@@ -100,32 +105,22 @@ private constructor(
fun code(code: Long) = code(JsonField.of(code))
- @JsonProperty("code")
- @ExcludeMissing
fun code(code: JsonField) = apply { this.code = code }
fun currentTime(currentTime: Long) = currentTime(JsonField.of(currentTime))
- @JsonProperty("currentTime")
- @ExcludeMissing
fun currentTime(currentTime: JsonField) = apply { this.currentTime = currentTime }
fun text(text: String) = text(JsonField.of(text))
- @JsonProperty("text")
- @ExcludeMissing
fun text(text: JsonField) = apply { this.text = text }
fun version(version: Long) = version(JsonField.of(version))
- @JsonProperty("version")
- @ExcludeMissing
fun version(version: JsonField) = apply { this.version = version }
fun data(data: Data) = data(JsonField.of(data))
- @JsonProperty("data")
- @ExcludeMissing
fun data(data: JsonField) = apply { this.data = data }
fun additionalProperties(additionalProperties: Map) = apply {
@@ -133,7 +128,6 @@ private constructor(
putAllAdditionalProperties(additionalProperties)
}
- @JsonAnySetter
fun putAdditionalProperty(key: String, value: JsonValue) = apply {
additionalProperties.put(key, value)
}
@@ -159,13 +153,18 @@ private constructor(
)
}
- @JsonDeserialize(builder = Data.Builder::class)
@NoAutoDetect
class Data
+ @JsonCreator
private constructor(
- private val entry: JsonField,
- private val references: JsonField,
- private val additionalProperties: Map,
+ @JsonProperty("entry")
+ @ExcludeMissing
+ private val entry: JsonField = JsonMissing.of(),
+ @JsonProperty("references")
+ @ExcludeMissing
+ private val references: JsonField = JsonMissing.of(),
+ @JsonAnySetter
+ private val additionalProperties: Map = immutableEmptyMap(),
) {
fun entry(): Entry = entry.getRequired("entry")
@@ -211,14 +210,10 @@ private constructor(
fun entry(entry: Entry) = entry(JsonField.of(entry))
- @JsonProperty("entry")
- @ExcludeMissing
fun entry(entry: JsonField) = apply { this.entry = entry }
fun references(references: References) = references(JsonField.of(references))
- @JsonProperty("references")
- @ExcludeMissing
fun references(references: JsonField) = apply {
this.references = references
}
@@ -228,7 +223,6 @@ private constructor(
putAllAdditionalProperties(additionalProperties)
}
- @JsonAnySetter
fun putAdditionalProperty(key: String, value: JsonValue) = apply {
additionalProperties.put(key, value)
}
@@ -251,12 +245,16 @@ private constructor(
)
}
- @JsonDeserialize(builder = Entry.Builder::class)
@NoAutoDetect
class Entry
+ @JsonCreator
private constructor(
- private val arrivalsAndDepartures: JsonField>,
- private val additionalProperties: Map,
+ @JsonProperty("arrivalsAndDepartures")
+ @ExcludeMissing
+ private val arrivalsAndDepartures: JsonField> =
+ JsonMissing.of(),
+ @JsonAnySetter
+ private val additionalProperties: Map = immutableEmptyMap(),
) {
fun arrivalsAndDepartures(): List =
@@ -300,8 +298,6 @@ private constructor(
fun arrivalsAndDepartures(arrivalsAndDepartures: List) =
arrivalsAndDepartures(JsonField.of(arrivalsAndDepartures))
- @JsonProperty("arrivalsAndDepartures")
- @ExcludeMissing
fun arrivalsAndDepartures(
arrivalsAndDepartures: JsonField>
) = apply { this.arrivalsAndDepartures = arrivalsAndDepartures }
@@ -311,7 +307,6 @@ private constructor(
putAllAdditionalProperties(additionalProperties)
}
- @JsonAnySetter
fun putAdditionalProperty(key: String, value: JsonValue) = apply {
additionalProperties.put(key, value)
}
@@ -336,45 +331,114 @@ private constructor(
)
}
- @JsonDeserialize(builder = ArrivalsAndDeparture.Builder::class)
@NoAutoDetect
class ArrivalsAndDeparture
+ @JsonCreator
private constructor(
- private val actualTrack: JsonField,
- private val arrivalEnabled: JsonField,
- private val blockTripSequence: JsonField,
- private val departureEnabled: JsonField,
- private val distanceFromStop: JsonField,
- private val frequency: JsonField,
- private val historicalOccupancy: JsonField,
- private val lastUpdateTime: JsonField,
- private val numberOfStopsAway: JsonField,
- private val occupancyStatus: JsonField,
- private val predicted: JsonField,
- private val predictedArrivalInterval: JsonField,
- private val predictedArrivalTime: JsonField,
- private val predictedDepartureInterval: JsonField,
- private val predictedDepartureTime: JsonField,
- private val predictedOccupancy: JsonField,
- private val routeId: JsonField,
- private val routeLongName: JsonField,
- private val routeShortName: JsonField,
- private val scheduledArrivalInterval: JsonField,
- private val scheduledArrivalTime: JsonField,
- private val scheduledDepartureInterval: JsonField,
- private val scheduledDepartureTime: JsonField,
- private val scheduledTrack: JsonField,
- private val serviceDate: JsonField,
- private val situationIds: JsonField>,
- private val status: JsonField,
- private val stopId: JsonField,
- private val stopSequence: JsonField,
- private val totalStopsInTrip: JsonField,
- private val tripHeadsign: JsonField,
- private val tripId: JsonField,
- private val tripStatus: JsonField,
- private val vehicleId: JsonField,
- private val additionalProperties: Map,
+ @JsonProperty("actualTrack")
+ @ExcludeMissing
+ private val actualTrack: JsonField = JsonMissing.of(),
+ @JsonProperty("arrivalEnabled")
+ @ExcludeMissing
+ private val arrivalEnabled: JsonField = JsonMissing.of(),
+ @JsonProperty("blockTripSequence")
+ @ExcludeMissing
+ private val blockTripSequence: JsonField = JsonMissing.of(),
+ @JsonProperty("departureEnabled")
+ @ExcludeMissing
+ private val departureEnabled: JsonField = JsonMissing.of(),
+ @JsonProperty("distanceFromStop")
+ @ExcludeMissing
+ private val distanceFromStop: JsonField = JsonMissing.of(),
+ @JsonProperty("frequency")
+ @ExcludeMissing
+ private val frequency: JsonField = JsonMissing.of(),
+ @JsonProperty("historicalOccupancy")
+ @ExcludeMissing
+ private val historicalOccupancy: JsonField = JsonMissing.of(),
+ @JsonProperty("lastUpdateTime")
+ @ExcludeMissing
+ private val lastUpdateTime: JsonField = JsonMissing.of(),
+ @JsonProperty("numberOfStopsAway")
+ @ExcludeMissing
+ private val numberOfStopsAway: JsonField = JsonMissing.of(),
+ @JsonProperty("occupancyStatus")
+ @ExcludeMissing
+ private val occupancyStatus: JsonField = JsonMissing.of(),
+ @JsonProperty("predicted")
+ @ExcludeMissing
+ private val predicted: JsonField = JsonMissing.of(),
+ @JsonProperty("predictedArrivalInterval")
+ @ExcludeMissing
+ private val predictedArrivalInterval: JsonField = JsonMissing.of(),
+ @JsonProperty("predictedArrivalTime")
+ @ExcludeMissing
+ private val predictedArrivalTime: JsonField = JsonMissing.of(),
+ @JsonProperty("predictedDepartureInterval")
+ @ExcludeMissing
+ private val predictedDepartureInterval: JsonField = JsonMissing.of(),
+ @JsonProperty("predictedDepartureTime")
+ @ExcludeMissing
+ private val predictedDepartureTime: JsonField = JsonMissing.of(),
+ @JsonProperty("predictedOccupancy")
+ @ExcludeMissing
+ private val predictedOccupancy: JsonField = JsonMissing.of(),
+ @JsonProperty("routeId")
+ @ExcludeMissing
+ private val routeId: JsonField = JsonMissing.of(),
+ @JsonProperty("routeLongName")
+ @ExcludeMissing
+ private val routeLongName: JsonField = JsonMissing.of(),
+ @JsonProperty("routeShortName")
+ @ExcludeMissing
+ private val routeShortName: JsonField = JsonMissing.of(),
+ @JsonProperty("scheduledArrivalInterval")
+ @ExcludeMissing
+ private val scheduledArrivalInterval: JsonField = JsonMissing.of(),
+ @JsonProperty("scheduledArrivalTime")
+ @ExcludeMissing
+ private val scheduledArrivalTime: JsonField = JsonMissing.of(),
+ @JsonProperty("scheduledDepartureInterval")
+ @ExcludeMissing
+ private val scheduledDepartureInterval: JsonField = JsonMissing.of(),
+ @JsonProperty("scheduledDepartureTime")
+ @ExcludeMissing
+ private val scheduledDepartureTime: JsonField = JsonMissing.of(),
+ @JsonProperty("scheduledTrack")
+ @ExcludeMissing
+ private val scheduledTrack: JsonField = JsonMissing.of(),
+ @JsonProperty("serviceDate")
+ @ExcludeMissing
+ private val serviceDate: JsonField = JsonMissing.of(),
+ @JsonProperty("situationIds")
+ @ExcludeMissing
+ private val situationIds: JsonField> = JsonMissing.of(),
+ @JsonProperty("status")
+ @ExcludeMissing
+ private val status: JsonField = JsonMissing.of(),
+ @JsonProperty("stopId")
+ @ExcludeMissing
+ private val stopId: JsonField = JsonMissing.of(),
+ @JsonProperty("stopSequence")
+ @ExcludeMissing
+ private val stopSequence: JsonField = JsonMissing.of(),
+ @JsonProperty("totalStopsInTrip")
+ @ExcludeMissing
+ private val totalStopsInTrip: JsonField = JsonMissing.of(),
+ @JsonProperty("tripHeadsign")
+ @ExcludeMissing
+ private val tripHeadsign: JsonField = JsonMissing.of(),
+ @JsonProperty("tripId")
+ @ExcludeMissing
+ private val tripId: JsonField = JsonMissing.of(),
+ @JsonProperty("tripStatus")
+ @ExcludeMissing
+ private val tripStatus: JsonField = JsonMissing.of(),
+ @JsonProperty("vehicleId")
+ @ExcludeMissing
+ private val vehicleId: JsonField = JsonMissing.of(),
+ @JsonAnySetter
+ private val additionalProperties: Map = immutableEmptyMap(),
) {
/** The actual track information of the arriving transit vehicle. */
@@ -813,8 +877,6 @@ private constructor(
fun actualTrack(actualTrack: String) = actualTrack(JsonField.of(actualTrack))
/** The actual track information of the arriving transit vehicle. */
- @JsonProperty("actualTrack")
- @ExcludeMissing
fun actualTrack(actualTrack: JsonField) = apply {
this.actualTrack = actualTrack
}
@@ -824,8 +886,6 @@ private constructor(
arrivalEnabled(JsonField.of(arrivalEnabled))
/** Indicates if riders can arrive on this transit vehicle. */
- @JsonProperty("arrivalEnabled")
- @ExcludeMissing
fun arrivalEnabled(arrivalEnabled: JsonField) = apply {
this.arrivalEnabled = arrivalEnabled
}
@@ -839,8 +899,6 @@ private constructor(
/**
* Index of this arrival’s trip into the sequence of trips for the active block.
*/
- @JsonProperty("blockTripSequence")
- @ExcludeMissing
fun blockTripSequence(blockTripSequence: JsonField) = apply {
this.blockTripSequence = blockTripSequence
}
@@ -850,8 +908,6 @@ private constructor(
departureEnabled(JsonField.of(departureEnabled))
/** Indicates if riders can depart from this transit vehicle. */
- @JsonProperty("departureEnabled")
- @ExcludeMissing
fun departureEnabled(departureEnabled: JsonField) = apply {
this.departureEnabled = departureEnabled
}
@@ -861,8 +917,6 @@ private constructor(
distanceFromStop(JsonField.of(distanceFromStop))
/** Distance of the arriving transit vehicle from the stop, in meters. */
- @JsonProperty("distanceFromStop")
- @ExcludeMissing
fun distanceFromStop(distanceFromStop: JsonField) = apply {
this.distanceFromStop = distanceFromStop
}
@@ -871,8 +925,6 @@ private constructor(
fun frequency(frequency: String) = frequency(JsonField.of(frequency))
/** Information about frequency-based scheduling, if applicable to the trip. */
- @JsonProperty("frequency")
- @ExcludeMissing
fun frequency(frequency: JsonField) = apply {
this.frequency = frequency
}
@@ -882,8 +934,6 @@ private constructor(
historicalOccupancy(JsonField.of(historicalOccupancy))
/** Historical occupancy information of the transit vehicle. */
- @JsonProperty("historicalOccupancy")
- @ExcludeMissing
fun historicalOccupancy(historicalOccupancy: JsonField) = apply {
this.historicalOccupancy = historicalOccupancy
}
@@ -893,8 +943,6 @@ private constructor(
lastUpdateTime(JsonField.of(lastUpdateTime))
/** Timestamp of the last update time for this arrival. */
- @JsonProperty("lastUpdateTime")
- @ExcludeMissing
fun lastUpdateTime(lastUpdateTime: JsonField) = apply {
this.lastUpdateTime = lastUpdateTime
}
@@ -910,8 +958,6 @@ private constructor(
* Number of stops between the arriving transit vehicle and the current stop
* (excluding the current stop).
*/
- @JsonProperty("numberOfStopsAway")
- @ExcludeMissing
fun numberOfStopsAway(numberOfStopsAway: JsonField) = apply {
this.numberOfStopsAway = numberOfStopsAway
}
@@ -921,8 +967,6 @@ private constructor(
occupancyStatus(JsonField.of(occupancyStatus))
/** Current occupancy status of the transit vehicle. */
- @JsonProperty("occupancyStatus")
- @ExcludeMissing
fun occupancyStatus(occupancyStatus: JsonField) = apply {
this.occupancyStatus = occupancyStatus
}
@@ -931,8 +975,6 @@ private constructor(
fun predicted(predicted: Boolean) = predicted(JsonField.of(predicted))
/** Indicates if real-time arrival info is available for this trip. */
- @JsonProperty("predicted")
- @ExcludeMissing
fun predicted(predicted: JsonField) = apply {
this.predicted = predicted
}
@@ -942,8 +984,6 @@ private constructor(
predictedArrivalInterval(JsonField.of(predictedArrivalInterval))
/** Interval for predicted arrival time, if available. */
- @JsonProperty("predictedArrivalInterval")
- @ExcludeMissing
fun predictedArrivalInterval(predictedArrivalInterval: JsonField) =
apply {
this.predictedArrivalInterval = predictedArrivalInterval
@@ -960,8 +1000,6 @@ private constructor(
* Predicted arrival time, in milliseconds since Unix epoch (zero if no
* real-time available).
*/
- @JsonProperty("predictedArrivalTime")
- @ExcludeMissing
fun predictedArrivalTime(predictedArrivalTime: JsonField) = apply {
this.predictedArrivalTime = predictedArrivalTime
}
@@ -971,8 +1009,6 @@ private constructor(
predictedDepartureInterval(JsonField.of(predictedDepartureInterval))
/** Interval for predicted departure time, if available. */
- @JsonProperty("predictedDepartureInterval")
- @ExcludeMissing
fun predictedDepartureInterval(predictedDepartureInterval: JsonField) =
apply {
this.predictedDepartureInterval = predictedDepartureInterval
@@ -989,8 +1025,6 @@ private constructor(
* Predicted departure time, in milliseconds since Unix epoch (zero if no
* real-time available).
*/
- @JsonProperty("predictedDepartureTime")
- @ExcludeMissing
fun predictedDepartureTime(predictedDepartureTime: JsonField) = apply {
this.predictedDepartureTime = predictedDepartureTime
}
@@ -1000,8 +1034,6 @@ private constructor(
predictedOccupancy(JsonField.of(predictedOccupancy))
/** Predicted occupancy status of the transit vehicle. */
- @JsonProperty("predictedOccupancy")
- @ExcludeMissing
fun predictedOccupancy(predictedOccupancy: JsonField) = apply {
this.predictedOccupancy = predictedOccupancy
}
@@ -1010,8 +1042,6 @@ private constructor(
fun routeId(routeId: String) = routeId(JsonField.of(routeId))
/** The ID of the route for the arriving vehicle. */
- @JsonProperty("routeId")
- @ExcludeMissing
fun routeId(routeId: JsonField) = apply { this.routeId = routeId }
/**
@@ -1025,8 +1055,6 @@ private constructor(
* Optional route long name that potentially overrides the route long name in
* the referenced route element.
*/
- @JsonProperty("routeLongName")
- @ExcludeMissing
fun routeLongName(routeLongName: JsonField) = apply {
this.routeLongName = routeLongName
}
@@ -1042,8 +1070,6 @@ private constructor(
* Optional route short name that potentially overrides the route short name in
* the referenced route element.
*/
- @JsonProperty("routeShortName")
- @ExcludeMissing
fun routeShortName(routeShortName: JsonField) = apply {
this.routeShortName = routeShortName
}
@@ -1053,8 +1079,6 @@ private constructor(
scheduledArrivalInterval(JsonField.of(scheduledArrivalInterval))
/** Interval for scheduled arrival time. */
- @JsonProperty("scheduledArrivalInterval")
- @ExcludeMissing
fun scheduledArrivalInterval(scheduledArrivalInterval: JsonField) =
apply {
this.scheduledArrivalInterval = scheduledArrivalInterval
@@ -1065,8 +1089,6 @@ private constructor(
scheduledArrivalTime(JsonField.of(scheduledArrivalTime))
/** Scheduled arrival time, in milliseconds since Unix epoch. */
- @JsonProperty("scheduledArrivalTime")
- @ExcludeMissing
fun scheduledArrivalTime(scheduledArrivalTime: JsonField) = apply {
this.scheduledArrivalTime = scheduledArrivalTime
}
@@ -1076,8 +1098,6 @@ private constructor(
scheduledDepartureInterval(JsonField.of(scheduledDepartureInterval))
/** Interval for scheduled departure time. */
- @JsonProperty("scheduledDepartureInterval")
- @ExcludeMissing
fun scheduledDepartureInterval(scheduledDepartureInterval: JsonField) =
apply {
this.scheduledDepartureInterval = scheduledDepartureInterval
@@ -1088,8 +1108,6 @@ private constructor(
scheduledDepartureTime(JsonField.of(scheduledDepartureTime))
/** Scheduled departure time, in milliseconds since Unix epoch. */
- @JsonProperty("scheduledDepartureTime")
- @ExcludeMissing
fun scheduledDepartureTime(scheduledDepartureTime: JsonField) = apply {
this.scheduledDepartureTime = scheduledDepartureTime
}
@@ -1099,8 +1117,6 @@ private constructor(
scheduledTrack(JsonField.of(scheduledTrack))
/** Scheduled track information of the arriving transit vehicle. */
- @JsonProperty("scheduledTrack")
- @ExcludeMissing
fun scheduledTrack(scheduledTrack: JsonField) = apply {
this.scheduledTrack = scheduledTrack
}
@@ -1115,8 +1131,6 @@ private constructor(
* Time, in milliseconds since the Unix epoch, of midnight for the start of the
* service date for the trip.
*/
- @JsonProperty("serviceDate")
- @ExcludeMissing
fun serviceDate(serviceDate: JsonField) = apply {
this.serviceDate = serviceDate
}
@@ -1126,8 +1140,6 @@ private constructor(
situationIds(JsonField.of(situationIds))
/** References to situation elements (if any) applicable to this arrival. */
- @JsonProperty("situationIds")
- @ExcludeMissing
fun situationIds(situationIds: JsonField>) = apply {
this.situationIds = situationIds
}
@@ -1136,16 +1148,12 @@ private constructor(
fun status(status: String) = status(JsonField.of(status))
/** Current status of the arrival. */
- @JsonProperty("status")
- @ExcludeMissing
fun status(status: JsonField) = apply { this.status = status }
/** The ID of the stop the vehicle is arriving at. */
fun stopId(stopId: String) = stopId(JsonField.of(stopId))
/** The ID of the stop the vehicle is arriving at. */
- @JsonProperty("stopId")
- @ExcludeMissing
fun stopId(stopId: JsonField) = apply { this.stopId = stopId }
/**
@@ -1158,8 +1166,6 @@ private constructor(
* Index of the stop into the sequence of stops that make up the trip for this
* arrival.
*/
- @JsonProperty("stopSequence")
- @ExcludeMissing
fun stopSequence(stopSequence: JsonField