From 8fdd1478bf0c569c1a26dc5ad3059b4015eaf879 Mon Sep 17 00:00:00 2001 From: sowjanyakch Date: Wed, 4 Dec 2024 15:42:34 +0100 Subject: [PATCH] add model Signed-off-by: sowjanyakch --- .../json/userAbsence/UserAbsenceData.kt | 38 +++++++++++++++++++ .../models/json/userAbsence/UserAbsenceOCS.kt | 27 +++++++++++++ .../json/userAbsence/UserAbsenceOverall.kt | 24 ++++++++++++ 3 files changed, 89 insertions(+) create mode 100644 app/src/main/java/com/nextcloud/talk/models/json/userAbsence/UserAbsenceData.kt create mode 100644 app/src/main/java/com/nextcloud/talk/models/json/userAbsence/UserAbsenceOCS.kt create mode 100644 app/src/main/java/com/nextcloud/talk/models/json/userAbsence/UserAbsenceOverall.kt diff --git a/app/src/main/java/com/nextcloud/talk/models/json/userAbsence/UserAbsenceData.kt b/app/src/main/java/com/nextcloud/talk/models/json/userAbsence/UserAbsenceData.kt new file mode 100644 index 000000000..45bd997e1 --- /dev/null +++ b/app/src/main/java/com/nextcloud/talk/models/json/userAbsence/UserAbsenceData.kt @@ -0,0 +1,38 @@ +/* + * Nextcloud Talk - Android Client + * + * SPDX-FileCopyrightText: 2024 Sowjanya Kota + * SPDX-License-Identifier: GPL-3.0-or-later + */ + +package com.nextcloud.talk.models.json.userAbsence + +import android.os.Parcelable +import com.bluelinelabs.logansquare.annotation.JsonField +import com.bluelinelabs.logansquare.annotation.JsonObject +import kotlinx.parcelize.Parcelize + +@Parcelize +@JsonObject +data class UserAbsenceData( + @JsonField(name = ["id"]) + var id: Int, + @JsonField(name = ["userId"]) + var userId: String, + @JsonField(name = ["firstDay"]) + var firstDay: String, + @JsonField(name = ["lastDay"]) + var lastDay: String, + @JsonField(name = ["status"]) + var status: String, + @JsonField(name = ["message"]) + var message: String, + @JsonField(name = ["replacementUserId"]) + var replacementUserId: String?, + @JsonField(name = ["replacementUserDisplayName"]) + var replacementUserDisplayName: String?, +) : Parcelable { + // This constructor is added to work with the 'com.bluelinelabs.logansquare.annotation.JsonObject' + constructor() : + this(0, "", "", "", "", "", null, null) +} diff --git a/app/src/main/java/com/nextcloud/talk/models/json/userAbsence/UserAbsenceOCS.kt b/app/src/main/java/com/nextcloud/talk/models/json/userAbsence/UserAbsenceOCS.kt new file mode 100644 index 000000000..30d41eba3 --- /dev/null +++ b/app/src/main/java/com/nextcloud/talk/models/json/userAbsence/UserAbsenceOCS.kt @@ -0,0 +1,27 @@ +/* + * Nextcloud Talk - Android Client + * + * SPDX-FileCopyrightText: 2024 Sowjanya Kota + * SPDX-License-Identifier: GPL-3.0-or-later + */ + +package com.nextcloud.talk.models.json.userAbsence + +import android.os.Parcelable +import com.bluelinelabs.logansquare.annotation.JsonField +import com.bluelinelabs.logansquare.annotation.JsonObject +import com.nextcloud.talk.models.json.generic.GenericMeta +import kotlinx.parcelize.Parcelize + +@Parcelize +@JsonObject +data class UserAbsenceOCS( + @JsonField(name = ["meta"]) + var meta: GenericMeta?, + @JsonField(name = ["data"]) + var data: UserAbsenceData? +) : Parcelable { + // This constructor is added to work with the 'com.bluelinelabs.logansquare.annotation.JsonObject' + constructor() : this(null, null) +} + diff --git a/app/src/main/java/com/nextcloud/talk/models/json/userAbsence/UserAbsenceOverall.kt b/app/src/main/java/com/nextcloud/talk/models/json/userAbsence/UserAbsenceOverall.kt new file mode 100644 index 000000000..c6c79626a --- /dev/null +++ b/app/src/main/java/com/nextcloud/talk/models/json/userAbsence/UserAbsenceOverall.kt @@ -0,0 +1,24 @@ +/* + * Nextcloud Talk - Android Client + * + * SPDX-FileCopyrightText: 2024 Sowjanya Kota + * SPDX-License-Identifier: GPL-3.0-or-later + */ + +package com.nextcloud.talk.models.json.userAbsence + +import android.os.Parcelable +import com.bluelinelabs.logansquare.annotation.JsonField +import com.bluelinelabs.logansquare.annotation.JsonObject +import kotlinx.parcelize.Parcelize + +@Parcelize +@JsonObject +data class UserAbsenceOverall( + @JsonField(name = ["ocs"]) + var ocs: UserAbsenceOCS? +) : Parcelable { + // This constructor is added to work with the 'com.bluelinelabs.logansquare.annotation.JsonObject' + constructor() : this(null) +} +