package de.bsd.zwitscher; import java.io.Serializable; import android.os.Parcel; import android.os.Parcelable; import android.view.View; import twitter4j.Status; import twitter4j.StatusUpdate; /** * A request that is given to the {@link UpdateStatusService} * * @author Heiko W. Rupp */ public class UpdateRequest implements Parcelable, Serializable { UpdateType updateType; String message; public long id; public StatusUpdate statusUpdate; public Status status; String picturePath; transient View view; // Don't serialize public String url; // for external apps public String extUser; // for external apps public String extPassword; // for external apps public long userId; boolean someBool; public UpdateRequest(UpdateType updateType) { this.updateType = updateType; } public UpdateRequest(Parcel parcel) { updateType = UpdateType.valueOf(parcel.readString()); message = parcel.readString(); id = parcel.readLong(); statusUpdate = (StatusUpdate) parcel.readValue(ClassLoader.getSystemClassLoader()); status = (Status) parcel.readValue(ClassLoader.getSystemClassLoader()); picturePath = parcel.readString(); url = parcel.readString(); extUser = parcel.readString(); extPassword = parcel.readString(); userId = parcel.readLong(); someBool = parcel.readInt()==1; } public UpdateType getUpdateType() { return updateType; } @Override public void writeToParcel(Parcel dest, int flags) { dest.writeString(updateType.name()); dest.writeString(message); dest.writeLong(id); dest.writeValue(statusUpdate); dest.writeValue(status); dest.writeString(picturePath); dest.writeString(url); dest.writeString(extUser); dest.writeString(extPassword); dest.writeLong(userId); dest.writeInt(someBool ? 1: 0); } @Override public int describeContents() { return 0; // Autogenerated } public static Creator<UpdateRequest> CREATOR = new Creator<UpdateRequest>() { @Override public UpdateRequest createFromParcel(Parcel source) { return new UpdateRequest(source); } @Override public UpdateRequest[] newArray(int size) { return new UpdateRequest[size]; } }; }