package app.fedilab.android.client.Entities; /* Copyright 2019 Thomas Schneider * * This file is a part of Fedilab * * This program is free software; you can redistribute it and/or modify it under the terms of the * GNU General Public License as published by the Free Software Foundation; either version 3 of the * License, or (at your option) any later version. * * Fedilab is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General * Public License for more details. * * You should have received a copy of the GNU General Public License along with Fedilab; if not, * see . */ import android.os.Parcel; import android.os.Parcelable; import java.util.Date; import java.util.List; @SuppressWarnings("unused") public class Report implements Parcelable { public static final Creator CREATOR = new Creator() { @Override public Report createFromParcel(Parcel source) { return new Report(source); } @Override public Report[] newArray(int size) { return new Report[size]; } }; private String id; private boolean action_taken; private String comment; private Date created_at; private Date updated_at; private AccountAdmin account; private AccountAdmin target_account; private AccountAdmin assigned_account; private AccountAdmin action_taken_by_account; private List statuses; public Report() { } protected Report(Parcel in) { this.id = in.readString(); this.action_taken = in.readByte() != 0; this.comment = in.readString(); long tmpCreated_at = in.readLong(); this.created_at = tmpCreated_at == -1 ? null : new Date(tmpCreated_at); long tmpUpdated_at = in.readLong(); this.updated_at = tmpUpdated_at == -1 ? null : new Date(tmpUpdated_at); this.account = in.readParcelable(AccountAdmin.class.getClassLoader()); this.target_account = in.readParcelable(AccountAdmin.class.getClassLoader()); this.assigned_account = in.readParcelable(AccountAdmin.class.getClassLoader()); this.action_taken_by_account = in.readParcelable(AccountAdmin.class.getClassLoader()); this.statuses = in.createTypedArrayList(Status.CREATOR); } public String getId() { return id; } public void setId(String id) { this.id = id; } public String getComment() { return comment; } public void setComment(String comment) { this.comment = comment; } public Date getCreated_at() { return created_at; } public void setCreated_at(Date created_at) { this.created_at = created_at; } public Date getUpdated_at() { return updated_at; } public void setUpdated_at(Date updated_at) { this.updated_at = updated_at; } public List getStatuses() { return statuses; } public void setStatuses(List statuses) { this.statuses = statuses; } public AccountAdmin getAccount() { return account; } public void setAccount(AccountAdmin account) { this.account = account; } public AccountAdmin getTarget_account() { return target_account; } public void setTarget_account(AccountAdmin target_account) { this.target_account = target_account; } public AccountAdmin getAssigned_account() { return assigned_account; } public void setAssigned_account(AccountAdmin assigned_account) { this.assigned_account = assigned_account; } public boolean isAction_taken() { return action_taken; } public void setAction_taken(boolean action_taken) { this.action_taken = action_taken; } public AccountAdmin getAction_taken_by_account() { return action_taken_by_account; } public void setAction_taken_by_account(AccountAdmin action_taken_by_account) { this.action_taken_by_account = action_taken_by_account; } @Override public int describeContents() { return 0; } @Override public void writeToParcel(Parcel dest, int flags) { dest.writeString(this.id); dest.writeByte(this.action_taken ? (byte) 1 : (byte) 0); dest.writeString(this.comment); dest.writeLong(this.created_at != null ? this.created_at.getTime() : -1); dest.writeLong(this.updated_at != null ? this.updated_at.getTime() : -1); dest.writeParcelable(this.account, flags); dest.writeParcelable(this.target_account, flags); dest.writeParcelable(this.assigned_account, flags); dest.writeParcelable(this.action_taken_by_account, flags); dest.writeTypedList(this.statuses); } }