package com.instructure.canvasapi.model;
import android.os.Parcel;
import android.os.Parcelable;
import com.google.gson.annotations.SerializedName;
import java.util.Date;
/**
* Copyright (c) 2016 Instructure. All rights reserved.
*/
public class AssignmentOverride extends CanvasModel<AssignmentOverride> {
public long id;
@SerializedName("assignment_id")
public long assignmentId;
public String title;
@SerializedName("due_at")
public Date dueAt;
@SerializedName("all_day")
boolean allDay;
@SerializedName("all_day_date")
public String allDayDate;
@SerializedName("unlock_at")
public Date unlockAt;
@SerializedName("lock_at")
public Date lockAt;
@SerializedName("course_section_id")
public long courseSectionId;
@Override
public long getId() {
return id;
}
@Override
public Date getComparisonDate() {
return dueAt;
}
@Override
public String getComparisonString() {
return title;
}
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeLong(this.id);
dest.writeLong(this.assignmentId);
dest.writeString(this.title);
dest.writeLong(this.dueAt != null ? this.dueAt.getTime() : -1);
dest.writeByte(this.allDay ? (byte) 1 : (byte) 0);
dest.writeString(this.allDayDate);
dest.writeLong(this.unlockAt != null ? this.unlockAt.getTime() : -1);
dest.writeLong(this.lockAt != null ? this.lockAt.getTime() : -1);
dest.writeLong(this.courseSectionId);
}
public AssignmentOverride() {
}
protected AssignmentOverride(Parcel in) {
this.id = in.readLong();
this.assignmentId = in.readLong();
this.title = in.readString();
long tmpDueAt = in.readLong();
this.dueAt = tmpDueAt == -1 ? null : new Date(tmpDueAt);
this.allDay = in.readByte() != 0;
this.allDayDate = in.readString();
long tmpUnlockAt = in.readLong();
this.unlockAt = tmpUnlockAt == -1 ? null : new Date(tmpUnlockAt);
long tmpLockAt = in.readLong();
this.lockAt = tmpLockAt == -1 ? null : new Date(tmpLockAt);
this.courseSectionId = in.readLong();
}
public static final Parcelable.Creator<AssignmentOverride> CREATOR = new Parcelable.Creator<AssignmentOverride>() {
@Override
public AssignmentOverride createFromParcel(Parcel source) {
return new AssignmentOverride(source);
}
@Override
public AssignmentOverride[] newArray(int size) {
return new AssignmentOverride[size];
}
};
}