Преглед изворни кода

Added latest notes api call

sirekanyan пре 8 година
родитељ
комит
07276498cb

+ 1 - 1
app/src/main/java/me/vadik/knigopis/App.kt

@@ -6,7 +6,7 @@ import retrofit2.converter.gson.GsonConverterFactory
 
 class App : Application() {
 
-  val retrofit by lazy {
+  val retrofit: Retrofit by lazy {
     Retrofit.Builder()
         .baseUrl("http://api.knigopis.com")
         .addConverterFactory(GsonConverterFactory.create())

+ 6 - 0
app/src/main/java/me/vadik/knigopis/Endpoint.kt

@@ -1,9 +1,15 @@
 package me.vadik.knigopis
 
+import me.vadik.knigopis.model.Book
+import me.vadik.knigopis.model.User
 import retrofit2.Call
 import retrofit2.http.GET
 
 interface Endpoint {
+
   @GET("users/latest")
   fun latestUsers(): Call<Map<String, User>>
+
+  @GET("books/latest-notes")
+  fun latestBooksWithNotes(): Call<Map<String, Book>>
 }

+ 13 - 0
app/src/main/java/me/vadik/knigopis/MainActivity.kt

@@ -6,6 +6,8 @@ import android.support.v7.app.AppCompatActivity
 import android.support.v7.widget.LinearLayoutManager
 import android.support.v7.widget.RecyclerView
 import android.view.MenuItem
+import me.vadik.knigopis.model.Book
+import me.vadik.knigopis.model.User
 import retrofit2.Call
 import retrofit2.Callback
 import retrofit2.Response
@@ -47,5 +49,16 @@ class MainActivity : AppCompatActivity() {
         log("cannot load users", t)
       }
     })
+    api.latestBooksWithNotes().enqueue(object : Callback<Map<String, Book>> {
+      override fun onResponse(call: Call<Map<String, Book>>?, response: Response<Map<String, Book>>?) {
+        response?.body()?.values?.forEach { book ->
+          logw(book.notes)
+        }
+      }
+
+      override fun onFailure(call: Call<Map<String, Book>>?, t: Throwable?) {
+        log("cannot load latest books with notes", t)
+      }
+    })
   }
 }

+ 1 - 0
app/src/main/java/me/vadik/knigopis/UsersAdapter.kt

@@ -2,6 +2,7 @@ package me.vadik.knigopis
 
 import android.support.v7.widget.RecyclerView
 import android.view.ViewGroup
+import me.vadik.knigopis.model.User
 
 class UsersAdapter(private val users: List<User>) : RecyclerView.Adapter<UserViewHolder>() {
 

+ 10 - 0
app/src/main/java/me/vadik/knigopis/model/Book.kt

@@ -0,0 +1,10 @@
+package me.vadik.knigopis.model
+
+class Book(
+    val id: String,
+    val title: String,
+    val author: String,
+    val notes: String,
+    val createdAt: String,
+    val user: User
+)

+ 1 - 1
app/src/main/java/me/vadik/knigopis/User.kt → app/src/main/java/me/vadik/knigopis/model/User.kt

@@ -1,4 +1,4 @@
-package me.vadik.knigopis
+package me.vadik.knigopis.model
 
 class User(
     val id: String,