package io.pivotal.arca.dispatcher;
import android.content.ContentValues;
import android.net.Uri;
import android.os.Parcel;
import io.pivotal.arca.utils.ArrayUtils;
import io.pivotal.arca.utils.StringUtils;
public class Update extends Request<Integer> {
private final ContentValues mValues;
private String mWhereClause;
private String[] mWhereArgs;
public Update(final Uri uri, final ContentValues values) {
super(uri);
mValues = values;
}
public Update(final Parcel in) {
super(in);
mValues = in.readParcelable(ContentValues.class.getClassLoader());
mWhereClause = in.readString();
mWhereArgs = in.createStringArray();
}
@Override
public void writeToParcel(final Parcel dest, final int flags) {
super.writeToParcel(dest, flags);
dest.writeParcelable(mValues, flags);
dest.writeString(mWhereClause);
dest.writeStringArray(mWhereArgs);
}
public void setWhere(final String whereClause, final String... whereArgs) {
mWhereClause = whereClause;
mWhereArgs = whereArgs;
}
public void addWhere(final String whereClause, final String... whereArgs) {
mWhereClause = StringUtils.append(mWhereClause, whereClause, " AND ");
mWhereArgs = ArrayUtils.append(mWhereArgs, whereArgs);
}
public ContentValues getContentValues() {
return mValues;
}
public String getWhereClause() {
return mWhereClause;
}
public String[] getWhereArgs() {
return mWhereArgs;
}
public static final Creator<Update> CREATOR = new Creator<Update>() {
@Override
public Update createFromParcel(final Parcel in) {
return new Update(in);
}
@Override
public Update[] newArray(final int size) {
return new Update[size];
}
};
}