fedilab-Android-App/app/src/main/java/app/fedilab/android/mastodon/client/entities/api/Announcement.java

63 lines
2.0 KiB
Java
Raw Normal View History

2023-01-22 15:22:59 +01:00
package app.fedilab.android.mastodon.client.entities.api;
2022-04-27 15:20:42 +02:00
/* Copyright 2021 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 <http://www.gnu.org/licenses>. */
2022-07-18 14:39:47 +02:00
import android.content.Context;
2022-06-16 18:30:16 +02:00
import android.text.Spannable;
2022-07-18 14:39:47 +02:00
import android.view.View;
2022-06-16 18:30:16 +02:00
2022-04-27 15:20:42 +02:00
import com.google.gson.annotations.SerializedName;
2022-07-18 14:39:47 +02:00
import java.lang.ref.WeakReference;
2022-04-27 15:20:42 +02:00
import java.util.Date;
import java.util.List;
2023-01-22 15:22:59 +01:00
import app.fedilab.android.mastodon.helper.SpannableHelper;
2022-07-18 14:39:47 +02:00
2022-04-27 15:20:42 +02:00
public class Announcement {
@SerializedName("id")
public String id;
@SerializedName("content")
public String content;
@SerializedName("starts_at")
public Date starts_at;
@SerializedName("ends_at")
public Date ends_at;
@SerializedName("all_day")
public boolean all_day;
@SerializedName("published_at")
public Date published_at;
@SerializedName("updated_at")
public Date updated_at;
@SerializedName("read")
public boolean read;
@SerializedName("mentions")
public List<Mention> mentions;
@SerializedName("statuses")
public List<Status> statuses;
@SerializedName("tags")
public List<Tag> tags;
@SerializedName("emojis")
public List<Emoji> emojis;
@SerializedName("reactions")
public List<Reaction> reactions;
2022-06-16 18:30:16 +02:00
2022-07-18 14:39:47 +02:00
public synchronized Spannable getSpanContent(Context context, WeakReference<View> viewWeakReference) {
2023-09-09 16:10:33 +02:00
return SpannableHelper.convert(context, content, null, null, this, viewWeakReference, null, true, false);
2022-07-18 14:39:47 +02:00
}
2022-04-27 15:20:42 +02:00
}