Skip to content

Instantly share code, notes, and snippets.

@gracietti
Last active August 24, 2017 12:52
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save gracietti/98e8d2899a96b57631a8f79485083f8a to your computer and use it in GitHub Desktop.
Save gracietti/98e8d2899a96b57631a8f79485083f8a to your computer and use it in GitHub Desktop.
Parceler converter from an Array of object (EventImages, in this case). Just replace `EventImages` by the object on the List you need to convert.
package ....models.entities.Converters
import android.os.Parcel
import org.parceler.Parcels
import org.parceler.converter.ArrayListParcelConverter
import ....models.entities.Event.EventImages
/**
* Created by gracietti on 11/08/17.
*/
class ListEventImagesConverter: ArrayListParcelConverter<EventImages>() {
override fun itemToParcel(input: EventImages?, parcel: Parcel?) {
parcel?.writeParcelable(Parcels.wrap(input), 0)
}
override fun itemFromParcel(parcel: Parcel?): EventImages {
return Parcels.unwrap<EventImages>(parcel?.readParcelable(EventImages::class.java.classLoader))
}
}
@gracietti
Copy link
Author

Then, to use the converter just call:

import org.parceler.Parcel
import org.parceler.ParcelPropertyConverter

@Parcel(Parcel.Serialization.BEAN)
open class MyObject: {
...
    @Expose(serialize = false)
    @Ignore
    var images: List<EventImages> = listOf()
        @ParcelPropertyConverter(ListEventImagesConverter::class) set get

}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment