Advertisement
Guest User

Untitled

a guest
Oct 16th, 2019
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.20 KB | None | 0 0
  1. package belajar.android.forumkita
  2. import android.os.Parcel
  3. import android.os.Parcelable
  4. import com.google.gson.annotations.SerializedName
  5.  
  6.  
  7. data class ArtikelRespon(
  8. @SerializedName("posts")
  9. val posts: List<Post>
  10. )
  11.  
  12. data class Post(
  13. @SerializedName("berita")
  14. val berita: String,
  15. @SerializedName("id")
  16. val id: Int,
  17. @SerializedName("img")
  18. val img: String,
  19. @SerializedName("judul")
  20. val judul: String,
  21. @SerializedName("kategori")
  22. val kategori: String,
  23. @SerializedName("penulis")
  24. val penulis: Penulis,
  25. @SerializedName("tanggal")
  26. val tanggal: Long
  27. ) : Parcelable {
  28. constructor(source: Parcel) : this(
  29. source.readString(),
  30. source.readInt(),
  31. source.readString(),
  32. source.readString(),
  33. source.readString(),
  34. source.readParcelable<Penulis>(Penulis::class.java.classLoader),
  35. source.readLong()
  36. )
  37.  
  38. override fun describeContents() = 0
  39.  
  40. override fun writeToParcel(dest: Parcel, flags: Int) = with(dest) {
  41. writeString(berita)
  42. writeInt(id)
  43. writeString(img)
  44. writeString(judul)
  45. writeString(kategori)
  46. writeParcelable(penulis, 0)
  47. writeLong(tanggal)
  48. }
  49.  
  50. companion object {
  51. @JvmField
  52. val CREATOR: Parcelable.Creator<Post> = object : Parcelable.Creator<Post> {
  53. override fun createFromParcel(source: Parcel): Post = Post(source)
  54. override fun newArray(size: Int): Array<Post?> = arrayOfNulls(size)
  55. }
  56. }
  57. }
  58.  
  59. data class Penulis(
  60. @SerializedName("nama")
  61. val nama: String,
  62. @SerializedName("pic")
  63. val pic: String
  64. ) : Parcelable {
  65. constructor(source: Parcel) : this(
  66. source.readString(),
  67. source.readString()
  68. )
  69.  
  70. override fun describeContents() = 0
  71.  
  72. override fun writeToParcel(dest: Parcel, flags: Int) = with(dest) {
  73. writeString(nama)
  74. writeString(pic)
  75. }
  76.  
  77. companion object {
  78. @JvmField
  79. val CREATOR: Parcelable.Creator<Penulis> = object : Parcelable.Creator<Penulis> {
  80. override fun createFromParcel(source: Parcel): Penulis = Penulis(source)
  81. override fun newArray(size: Int): Array<Penulis?> = arrayOfNulls(size)
  82. }
  83. }
  84. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement