From 1995fbdddeae125b7f438c7fd51a4c05174c49f9 Mon Sep 17 00:00:00 2001 From: Arty Bishop Date: Thu, 17 Oct 2019 10:22:16 +0100 Subject: [PATCH] Add packages and classes for Api, Repository and Database. Add Transmitter entity data class. --- .../rtbishop/lookingsat/api/TransmitterApi.kt | 10 ++++++++++ .../lookingsat/api/TransmitterService.kt | 3 +++ .../rtbishop/lookingsat/db/TransmitterDao.kt | 6 ++++++ .../lookingsat/db/TransmitterDatabase.kt | 11 +++++++++++ .../com/rtbishop/lookingsat/repo/Repository.kt | 3 +++ .../rtbishop/lookingsat/repo/Transmitter.kt | 18 ++++++++++++++++++ 6 files changed, 51 insertions(+) create mode 100644 app/src/main/java/com/rtbishop/lookingsat/api/TransmitterApi.kt create mode 100644 app/src/main/java/com/rtbishop/lookingsat/api/TransmitterService.kt create mode 100644 app/src/main/java/com/rtbishop/lookingsat/db/TransmitterDao.kt create mode 100644 app/src/main/java/com/rtbishop/lookingsat/db/TransmitterDatabase.kt create mode 100644 app/src/main/java/com/rtbishop/lookingsat/repo/Repository.kt create mode 100644 app/src/main/java/com/rtbishop/lookingsat/repo/Transmitter.kt diff --git a/app/src/main/java/com/rtbishop/lookingsat/api/TransmitterApi.kt b/app/src/main/java/com/rtbishop/lookingsat/api/TransmitterApi.kt new file mode 100644 index 00000000..54ff48c5 --- /dev/null +++ b/app/src/main/java/com/rtbishop/lookingsat/api/TransmitterApi.kt @@ -0,0 +1,10 @@ +package com.rtbishop.lookingsat.api + +import com.rtbishop.lookingsat.repo.Transmitter +import retrofit2.http.GET + +interface TransmitterApi { + + @GET("transmitters/?alive=true") + suspend fun getTransmitterList(): List +} \ No newline at end of file diff --git a/app/src/main/java/com/rtbishop/lookingsat/api/TransmitterService.kt b/app/src/main/java/com/rtbishop/lookingsat/api/TransmitterService.kt new file mode 100644 index 00000000..6995a49c --- /dev/null +++ b/app/src/main/java/com/rtbishop/lookingsat/api/TransmitterService.kt @@ -0,0 +1,3 @@ +package com.rtbishop.lookingsat.api + +class TransmitterService \ No newline at end of file diff --git a/app/src/main/java/com/rtbishop/lookingsat/db/TransmitterDao.kt b/app/src/main/java/com/rtbishop/lookingsat/db/TransmitterDao.kt new file mode 100644 index 00000000..c29c7c82 --- /dev/null +++ b/app/src/main/java/com/rtbishop/lookingsat/db/TransmitterDao.kt @@ -0,0 +1,6 @@ +package com.rtbishop.lookingsat.db + +import androidx.room.Dao + +@Dao +interface TransmitterDao \ No newline at end of file diff --git a/app/src/main/java/com/rtbishop/lookingsat/db/TransmitterDatabase.kt b/app/src/main/java/com/rtbishop/lookingsat/db/TransmitterDatabase.kt new file mode 100644 index 00000000..6d37362b --- /dev/null +++ b/app/src/main/java/com/rtbishop/lookingsat/db/TransmitterDatabase.kt @@ -0,0 +1,11 @@ +package com.rtbishop.lookingsat.db + +import androidx.room.Database +import androidx.room.RoomDatabase +import com.rtbishop.lookingsat.repo.Transmitter + +@Database(entities = [Transmitter::class], version = 1, exportSchema = false) +abstract class TransmitterDatabase : RoomDatabase() { + + abstract fun transDao(): TransmitterDao +} \ No newline at end of file diff --git a/app/src/main/java/com/rtbishop/lookingsat/repo/Repository.kt b/app/src/main/java/com/rtbishop/lookingsat/repo/Repository.kt new file mode 100644 index 00000000..feba74f3 --- /dev/null +++ b/app/src/main/java/com/rtbishop/lookingsat/repo/Repository.kt @@ -0,0 +1,3 @@ +package com.rtbishop.lookingsat.repo + +class Repository \ No newline at end of file diff --git a/app/src/main/java/com/rtbishop/lookingsat/repo/Transmitter.kt b/app/src/main/java/com/rtbishop/lookingsat/repo/Transmitter.kt new file mode 100644 index 00000000..2ae7e79d --- /dev/null +++ b/app/src/main/java/com/rtbishop/lookingsat/repo/Transmitter.kt @@ -0,0 +1,18 @@ +package com.rtbishop.lookingsat.repo + +import androidx.room.Entity +import androidx.room.PrimaryKey +import com.google.gson.annotations.SerializedName + +@Entity(tableName = "transmitters") +data class Transmitter( + @PrimaryKey @SerializedName("uuid") val uuid: String, + @SerializedName("description") val description: String, + @SerializedName("uplink_low") val uplinkLow: Long?, + @SerializedName("uplink_high") val uplinkHigh: Long?, + @SerializedName("downlink_low") val downlinkLow: Long?, + @SerializedName("downlink_high") val downlinkHigh: Long?, + @SerializedName("mode") val mode: String, + @SerializedName("invert") val isInverted: Boolean, + @SerializedName("norad_cat_id") val noradCatId: Int +)