From 1e4775aed0a12f8dd023f8c5dea7a5ececbd731c Mon Sep 17 00:00:00 2001 From: Andy Scherzinger Date: Tue, 17 May 2022 22:59:24 +0200 Subject: [PATCH] Migrate DataChannel model to kotlin data classes Signed-off-by: Andy Scherzinger --- .../json/signaling/DataChannelMessage.java | 100 ----------------- .../json/signaling/DataChannelMessage.kt | 43 ++++++++ .../signaling/DataChannelMessageNick.java | 102 ------------------ .../json/signaling/DataChannelMessageNick.kt | 40 +++++++ 4 files changed, 83 insertions(+), 202 deletions(-) delete mode 100644 app/src/main/java/com/nextcloud/talk/models/json/signaling/DataChannelMessage.java create mode 100644 app/src/main/java/com/nextcloud/talk/models/json/signaling/DataChannelMessage.kt delete mode 100644 app/src/main/java/com/nextcloud/talk/models/json/signaling/DataChannelMessageNick.java create mode 100644 app/src/main/java/com/nextcloud/talk/models/json/signaling/DataChannelMessageNick.kt diff --git a/app/src/main/java/com/nextcloud/talk/models/json/signaling/DataChannelMessage.java b/app/src/main/java/com/nextcloud/talk/models/json/signaling/DataChannelMessage.java deleted file mode 100644 index 8315105bd..000000000 --- a/app/src/main/java/com/nextcloud/talk/models/json/signaling/DataChannelMessage.java +++ /dev/null @@ -1,100 +0,0 @@ -/* - * Nextcloud Talk application - * - * @author Mario Danic - * Copyright (C) 2017 Mario Danic - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -package com.nextcloud.talk.models.json.signaling; - -import com.bluelinelabs.logansquare.annotation.JsonField; -import com.bluelinelabs.logansquare.annotation.JsonObject; -import com.nextcloud.talk.models.json.converters.ObjectParcelConverter; - -import org.parceler.ParcelPropertyConverter; - -@JsonObject -public class DataChannelMessage { - @JsonField(name = "type") - String type; - - @ParcelPropertyConverter(ObjectParcelConverter.class) - @JsonField(name = "payload") - Object payload; - - public DataChannelMessage(String type) { - this.type = type; - } - - public DataChannelMessage() { - } - - public String getType() { - return this.type; - } - - public Object getPayload() { - return this.payload; - } - - public void setType(String type) { - this.type = type; - } - - public void setPayload(Object payload) { - this.payload = payload; - } - - public boolean equals(final Object o) { - if (o == this) { - return true; - } - if (!(o instanceof DataChannelMessage)) { - return false; - } - final DataChannelMessage other = (DataChannelMessage) o; - if (!other.canEqual((Object) this)) { - return false; - } - final Object this$type = this.getType(); - final Object other$type = other.getType(); - if (this$type == null ? other$type != null : !this$type.equals(other$type)) { - return false; - } - final Object this$payload = this.getPayload(); - final Object other$payload = other.getPayload(); - - return this$payload == null ? other$payload == null : this$payload.equals(other$payload); - } - - protected boolean canEqual(final Object other) { - return other instanceof DataChannelMessage; - } - - public int hashCode() { - final int PRIME = 59; - int result = 1; - final Object $type = this.getType(); - result = result * PRIME + ($type == null ? 43 : $type.hashCode()); - final Object $payload = this.getPayload(); - result = result * PRIME + ($payload == null ? 43 : $payload.hashCode()); - return result; - } - - public String toString() { - return "DataChannelMessage(type=" + this.getType() + ", payload=" + this.getPayload() + ")"; - } -} diff --git a/app/src/main/java/com/nextcloud/talk/models/json/signaling/DataChannelMessage.kt b/app/src/main/java/com/nextcloud/talk/models/json/signaling/DataChannelMessage.kt new file mode 100644 index 000000000..1024afc0f --- /dev/null +++ b/app/src/main/java/com/nextcloud/talk/models/json/signaling/DataChannelMessage.kt @@ -0,0 +1,43 @@ +/* + * Nextcloud Talk application + * + * @author Mario Danic + * @author Andy Scherzinger + * Copyright (C) 2022 Andy Scherzinger + * Copyright (C) 2017 Mario Danic + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +package com.nextcloud.talk.models.json.signaling + +import android.os.Parcelable +import com.bluelinelabs.logansquare.annotation.JsonField +import com.bluelinelabs.logansquare.annotation.JsonObject +import com.nextcloud.talk.models.json.AnyParceler +import kotlinx.android.parcel.Parcelize +import kotlinx.android.parcel.TypeParceler + +@Parcelize +@JsonObject +@TypeParceler +data class DataChannelMessage( + @JsonField(name = ["type"]) + var type: String? = null, + @JsonField(name = ["payload"]) + var payload: Any? = null +) : Parcelable { + // This constructor is added to work with the 'com.bluelinelabs.logansquare.annotation.JsonObject' + constructor() : this(null, null) + constructor(type: String) : this(type, null) +} diff --git a/app/src/main/java/com/nextcloud/talk/models/json/signaling/DataChannelMessageNick.java b/app/src/main/java/com/nextcloud/talk/models/json/signaling/DataChannelMessageNick.java deleted file mode 100644 index c9038868c..000000000 --- a/app/src/main/java/com/nextcloud/talk/models/json/signaling/DataChannelMessageNick.java +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Nextcloud Talk application - * - * @author Mario Danic - * Copyright (C) 2017 Mario Danic - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -package com.nextcloud.talk.models.json.signaling; - -import com.bluelinelabs.logansquare.annotation.JsonField; -import com.bluelinelabs.logansquare.annotation.JsonObject; -import com.nextcloud.talk.models.json.converters.ObjectParcelConverter; - -import org.parceler.ParcelPropertyConverter; - -import java.util.HashMap; - -@JsonObject -public class DataChannelMessageNick { - @JsonField(name = "type") - String type; - - @ParcelPropertyConverter(ObjectParcelConverter.class) - @JsonField(name = "payload") - HashMap payload; - - public DataChannelMessageNick(String type) { - this.type = type; - } - - public DataChannelMessageNick() { - } - - public String getType() { - return this.type; - } - - public HashMap getPayload() { - return this.payload; - } - - public void setType(String type) { - this.type = type; - } - - public void setPayload(HashMap payload) { - this.payload = payload; - } - - public boolean equals(final Object o) { - if (o == this) { - return true; - } - if (!(o instanceof DataChannelMessageNick)) { - return false; - } - final DataChannelMessageNick other = (DataChannelMessageNick) o; - if (!other.canEqual((Object) this)) { - return false; - } - final Object this$type = this.getType(); - final Object other$type = other.getType(); - if (this$type == null ? other$type != null : !this$type.equals(other$type)) { - return false; - } - final Object this$payload = this.getPayload(); - final Object other$payload = other.getPayload(); - - return this$payload == null ? other$payload == null : this$payload.equals(other$payload); - } - - protected boolean canEqual(final Object other) { - return other instanceof DataChannelMessageNick; - } - - public int hashCode() { - final int PRIME = 59; - int result = 1; - final Object $type = this.getType(); - result = result * PRIME + ($type == null ? 43 : $type.hashCode()); - final Object $payload = this.getPayload(); - result = result * PRIME + ($payload == null ? 43 : $payload.hashCode()); - return result; - } - - public String toString() { - return "DataChannelMessageNick(type=" + this.getType() + ", payload=" + this.getPayload() + ")"; - } -} diff --git a/app/src/main/java/com/nextcloud/talk/models/json/signaling/DataChannelMessageNick.kt b/app/src/main/java/com/nextcloud/talk/models/json/signaling/DataChannelMessageNick.kt new file mode 100644 index 000000000..652106fa0 --- /dev/null +++ b/app/src/main/java/com/nextcloud/talk/models/json/signaling/DataChannelMessageNick.kt @@ -0,0 +1,40 @@ +/* + * Nextcloud Talk application + * + * @author Mario Danic + * @author Andy Scherzinger + * Copyright (C) 2022 Andy Scherzinger + * Copyright (C) 2017 Mario Danic + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +package com.nextcloud.talk.models.json.signaling + +import android.os.Parcelable +import com.bluelinelabs.logansquare.annotation.JsonField +import com.bluelinelabs.logansquare.annotation.JsonObject +import java.util.HashMap +import kotlinx.android.parcel.Parcelize + +@Parcelize +@JsonObject +data class DataChannelMessageNick( + @JsonField(name = ["type"]) + var type: String? = null, + @JsonField(name = ["payload"]) + var payload: HashMap? = null +) : Parcelable { + // This constructor is added to work with the 'com.bluelinelabs.logansquare.annotation.JsonObject' + constructor() : this(null, null) +}