sqia09
09/13/2017, 10:31 AMdata class SiteResponse(@SerializedName("result") val result: String,
@SerializedName("freason") val freason: String,
@SerializedName("site") val siteList: ArrayList<SiteObject>) {
inner class SiteObject(@SerializedName("name") val name: String,
@SerializedName("short_name") val shortName: String,
@SerializedName("id") val id: Int,
@SerializedName("country_id") val countryId: Int,
@SerializedName("region_id") val regionId: Int,
@SerializedName("province_id") val provinceId: Int,
@SerializedName("city_id") val cityId: Int,
@SerializedName("latitude") val latitude: String,
@SerializedName("longitude") val longitude: String)
}
gildor
09/13/2017, 10:31 AMcode snippets
triple ones in this case
inner
here. and you can make nested class data as wellsqia09
09/13/2017, 10:36 AMgildor
09/13/2017, 10:36 AMsqia09
09/13/2017, 10:37 AMdata class RoutesResponse(@SerializedName("result") val result: String,
@SerializedName("freason") val freason: String,
@SerializedName("route") var routesList: MutableList<RouteObject>,
@SerializedName("route_site") var routeSiteList: MutableList<RouteSite>) : Parcelable {
companion object {
@JvmField val CREATOR: Parcelable.Creator<RoutesResponse> = object : Parcelable.Creator<RoutesResponse>{
override fun createFromParcel(p0: Parcel): RoutesResponse = RoutesResponse(p0)
override fun newArray(p0: Int): Array<RoutesResponse?> = arrayOfNulls(p0)
}
}
constructor(source: Parcel) : this(source.readString(),
source.readString(),
source.createTypedArrayList(RouteObject.CREATOR),
source.createTypedArrayList(RouteSite.CREATOR))
override fun describeContents() = 0
override fun writeToParcel(p0: Parcel?, p1: Int) {
p0?.let {
with(it){
writeString(result)
writeString(freason)
writeTypedList(routesList)
writeTypedList(routeSiteList)
}
}
}
}
gildor
09/13/2017, 10:38 AMsqia09
09/13/2017, 10:38 AMdata class RouteObject(@SerializedName("id") val id: Int,
@SerializedName("name") val name: String,
@SerializedName("route_date") val routeDate: String,
@SerializedName("end_date") val endDate: String,
@SerializedName("created_by_id") val createdById: Int,
@SerializedName("team_id") val teamId: Int,
@SerializedName("total_total_days") val totalDays: String,
@SerializedName("total_site_distance") val totalSiteDistance: String,
@SerializedName("total_site_time") val siteTime: String,
@SerializedName("total_fuel_cost") val fuelCost: String,
@SerializedName("total_daily_allownce") val dailyAllowance: String,
@SerializedName("total_toll_cost") val tollCost: String,
@SerializedName("total_site_count") val siteCount: Int,
@SerializedName("route_status_id") val statusId: Int,
@SerializedName("teamlead_id") val teamLeadId: Int,
@SerializedName("created_on") val createdOn: String,
@SerializedName("updated_on") val updatedOn: String,
@SerializedName("updated_by_id") val updatedById: Int) : Parcelable {
companion object {
@JvmField val CREATOR: Parcelable.Creator<RouteObject> = object : Parcelable.Creator<RouteObject> {
override fun createFromParcel(p0: Parcel): RouteObject = RouteObject(p0)
override fun newArray(p0: Int): Array<RouteObject?> = arrayOfNulls(p0)
}
}
constructor(source: Parcel) : this (source.readInt(), source.readString(), source.readString(), source.readString(), source.readInt(),
source.readInt(), source.readString(), source.readString(), source.readString(), source.readString(),
source.readString(), source.readString(), source.readInt(), source.readInt(),source.readInt(),source.readString(),
source.readString(), source.readInt())
override fun describeContents(): Int = 0
override fun writeToParcel(dest: Parcel?, flags: Int) {
dest?.let{
with(dest) {
writeInt(id)
writeString(name)
writeString(routeDate)
writeString(endDate)
writeInt(createdById)
writeInt(teamId)
writeString(totalDays)
writeString(totalSiteDistance)
writeString(siteTime)
writeString(fuelCost)
writeString(dailyAllowance)
writeString(tollCost)
writeInt(siteCount)
writeInt(statusId)
writeInt(teamLeadId)
writeString(createdOn)
writeString(updatedOn)
writeInt(updatedById)
}
}
}
}
gildor
09/13/2017, 10:39 AMsqia09
09/13/2017, 10:39 AMgildor
09/13/2017, 10:40 AMsqia09
09/13/2017, 10:41 AMbudioktaviyan
09/13/2017, 10:44 AMannotationProcessor
inside your code. But, lint checking are still annoying ^^gildor
09/13/2017, 10:47 AMsqia09
09/13/2017, 10:47 AMgildor
09/13/2017, 10:48 AMIntent().putParcelableArrayListExtra(ArrayList(listOfRouteSite))
then use getParcelableArrayListExtra()sqia09
09/13/2017, 10:54 AM