package blue.stack.serializableParcelablegenerator.typeserializers.serializers;
import com.intellij.psi.PsiField;
import blue.stack.serializableParcelablegenerator.typeserializers.TypeSerializer;
import blue.stack.serializableParcelablegenerator.util.PsiUtils;
/**
* @author Dallas Gutauckis [dallas@gutauckis.com]
*/
public class ParcelableListSerializer implements TypeSerializer {
@Override
public String writeValue(PsiField field, String parcel, String flags) {
return String.format("%s.writeTypedList(%s);", parcel, field.getName());
}
@Override
public String readValue(PsiField field, String parcel) {
String paramType = PsiUtils.getResolvedGenerics(field.getType()).get(0).getCanonicalText();
return String.format("%s.readTypedList(%s, %s.CREATOR);", parcel, field.getName(), paramType);
}
}