Forráskód Böngészése

Removed unnecessary avatar cache, replaced with static server

Vadik Sirekanyan 7 éve
szülő
commit
578b9cad7a

+ 1 - 5
app/src/main/java/me/vadik/knigopis/feature/MainActivity.kt

@@ -41,8 +41,6 @@ import me.vadik.knigopis.feature.users.UsersAdapter
 import me.vadik.knigopis.repository.*
 import me.vadik.knigopis.repository.api.BookCoverSearch
 import me.vadik.knigopis.repository.api.Endpoint
-import me.vadik.knigopis.repository.cache.AvatarCache
-import me.vadik.knigopis.repository.cache.AvatarCacheImpl
 import me.vadik.knigopis.repository.model.*
 import me.vadik.knigopis.repository.model.CurrentTab.*
 import me.vadik.knigopis.repository.model.note.Note
@@ -84,8 +82,7 @@ class MainActivity : AppCompatActivity(), Router {
     }
     private val allBooksAdapter by lazy { booksAdapter.build() }
     private val usersAdapter by lazy { UsersAdapter(allUsers, this, dialogs, resourceProvider) }
-    private val avatarCache by lazy { AvatarCacheImpl() as AvatarCache }
-    private val notesAdapter by lazy { NotesAdapter(allNotes, avatarCache, this) }
+    private val notesAdapter by lazy { NotesAdapter(allNotes, this) }
     private var userLoggedIn = false
     private var booksChanged = false
     private lateinit var loginOption: MenuItem
@@ -424,7 +421,6 @@ class MainActivity : AppCompatActivity(), Router {
             .io2main()
             .showProgressBar()
             .subscribe({ subscriptions ->
-                avatarCache.urls = subscriptions.map { it.subUser.id to it.subUser.avatar }.toMap()
                 usersPlaceholder.show(subscriptions.isEmpty())
                 usersErrorPlaceholder.hide()
                 allUsers.clear()

+ 1 - 3
app/src/main/java/me/vadik/knigopis/feature/notes/NotesAdapter.kt

@@ -5,12 +5,10 @@ import android.view.ViewGroup
 import me.vadik.knigopis.R
 import me.vadik.knigopis.Router
 import me.vadik.knigopis.common.extensions.inflate
-import me.vadik.knigopis.repository.cache.AvatarCache
 import me.vadik.knigopis.repository.model.note.Note
 
 class NotesAdapter(
     private val notes: List<Note>,
-    private val avatarCache: AvatarCache,
     private val router: Router
 ) : RecyclerView.Adapter<NoteViewHolder>() {
 
@@ -26,7 +24,7 @@ class NotesAdapter(
     override fun onBindViewHolder(holder: NoteViewHolder, position: Int) {
         val note = notes[position]
         val user = note.user
-        val avatar = avatarCache.urls[user.id]
+        val avatar = note.user.avatarUrl
         holder.setTitle(note.title)
         holder.setAuthor(note.author)
         holder.setNotes(note.notes)

+ 0 - 9
app/src/main/java/me/vadik/knigopis/repository/cache/AvatarCache.kt

@@ -1,9 +0,0 @@
-package me.vadik.knigopis.repository.cache
-
-interface AvatarCache {
-    var urls: Map<String, String?>
-}
-
-class AvatarCacheImpl : AvatarCache {
-    override var urls = mapOf<String, String?>()
-}

+ 3 - 0
app/src/main/java/me/vadik/knigopis/repository/model/note/Identity.kt

@@ -1,9 +1,12 @@
 package me.vadik.knigopis.repository.model.note
 
+private const val STATIC_SERVER = "https://knigopis.tk/img"
+
 class Identity(
     val id: String,
     private val nickname: String?,
     private val booksCount: Int
 ) {
     val name get() = nickname ?: id
+    val avatarUrl get() = "$STATIC_SERVER/user/$id.jpg"
 }