[kotlin][client] add sample for parcelizeModels (#9394)

This commit is contained in:
Bruno Coelho 2021-05-12 13:56:03 +01:00 committed by GitHub
parent 456023b77c
commit c4c15cecb6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 26 additions and 7 deletions

View File

@ -5,3 +5,4 @@ templateDir: modules/openapi-generator/src/main/resources/kotlin-client
additionalProperties:
requestDateConverter: toString
artifactId: kotlin-petstore-json-request-string
parcelizeModels: true

View File

@ -25,7 +25,6 @@ import kotlinx.serialization.Contextual
{{#parcelizeModels}}
import android.os.Parcelable
import kotlinx.parcelize.Parcelize
{{/parcelizeModels}}
{{/multiplatform}}
{{#multiplatform}}

View File

@ -18,6 +18,7 @@ buildscript {
}
apply plugin: 'kotlin'
apply plugin: 'kotlin-parcelize'
repositories {
maven { url "https://repo1.maven.org/maven2" }

View File

@ -13,6 +13,8 @@ package org.openapitools.client.models
import com.squareup.moshi.Json
import android.os.Parcelable
import kotlinx.parcelize.Parcelize
/**
* Describes the result of uploading an image resource
@ -20,6 +22,7 @@ import com.squareup.moshi.Json
* @param type
* @param message
*/
@Parcelize
data class ApiResponse (
@Json(name = "code")
@ -28,5 +31,5 @@ data class ApiResponse (
val type: kotlin.String? = null,
@Json(name = "message")
val message: kotlin.String? = null
)
) : Parcelable

View File

@ -13,17 +13,20 @@ package org.openapitools.client.models
import com.squareup.moshi.Json
import android.os.Parcelable
import kotlinx.parcelize.Parcelize
/**
* A category for a pet
* @param id
* @param name
*/
@Parcelize
data class Category (
@Json(name = "id")
val id: kotlin.Long? = null,
@Json(name = "name")
val name: kotlin.String? = null
)
) : Parcelable

View File

@ -13,6 +13,8 @@ package org.openapitools.client.models
import com.squareup.moshi.Json
import android.os.Parcelable
import kotlinx.parcelize.Parcelize
/**
* An order for a pets from the pet store
@ -23,6 +25,7 @@ import com.squareup.moshi.Json
* @param status Order Status
* @param complete
*/
@Parcelize
data class Order (
@Json(name = "id")
@ -38,7 +41,7 @@ data class Order (
val status: Order.Status? = null,
@Json(name = "complete")
val complete: kotlin.Boolean? = null
) {
) : Parcelable {
/**
* Order Status

View File

@ -15,6 +15,8 @@ import org.openapitools.client.models.Category
import org.openapitools.client.models.Tag
import com.squareup.moshi.Json
import android.os.Parcelable
import kotlinx.parcelize.Parcelize
/**
* A pet for sale in the pet store
@ -25,6 +27,7 @@ import com.squareup.moshi.Json
* @param tags
* @param status pet status in the store
*/
@Parcelize
data class Pet (
@Json(name = "name")
@ -40,7 +43,7 @@ data class Pet (
/* pet status in the store */
@Json(name = "status")
val status: Pet.Status? = null
) {
) : Parcelable {
/**
* pet status in the store

View File

@ -13,17 +13,20 @@ package org.openapitools.client.models
import com.squareup.moshi.Json
import android.os.Parcelable
import kotlinx.parcelize.Parcelize
/**
* A tag for a pet
* @param id
* @param name
*/
@Parcelize
data class Tag (
@Json(name = "id")
val id: kotlin.Long? = null,
@Json(name = "name")
val name: kotlin.String? = null
)
) : Parcelable

View File

@ -13,6 +13,8 @@ package org.openapitools.client.models
import com.squareup.moshi.Json
import android.os.Parcelable
import kotlinx.parcelize.Parcelize
/**
* A User who is purchasing from the pet store
@ -25,6 +27,7 @@ import com.squareup.moshi.Json
* @param phone
* @param userStatus User Status
*/
@Parcelize
data class User (
@Json(name = "id")
@ -44,5 +47,5 @@ data class User (
/* User Status */
@Json(name = "userStatus")
val userStatus: kotlin.Int? = null
)
) : Parcelable