diff --git a/mastodon/src/main/java/org/joinmastodon/android/model/ScheduledStatus.java b/mastodon/src/main/java/org/joinmastodon/android/model/ScheduledStatus.java index ebc56c8c7..309bb4646 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/model/ScheduledStatus.java +++ b/mastodon/src/main/java/org/joinmastodon/android/model/ScheduledStatus.java @@ -1,5 +1,6 @@ package org.joinmastodon.android.model; +import org.joinmastodon.android.api.ObjectValidationException; import org.joinmastodon.android.api.RequiredField; import org.joinmastodon.android.model.Poll.Option; import org.parceler.Parcel; @@ -16,7 +17,6 @@ public class ScheduledStatus extends BaseModel implements DisplayItemsParent{ public Instant scheduledAt; @RequiredField public Params params; - @RequiredField public List mediaAttachments; @Override @@ -24,8 +24,17 @@ public class ScheduledStatus extends BaseModel implements DisplayItemsParent{ return id; } + @Override + public void postprocess() throws ObjectValidationException { + super.postprocess(); + if (mediaAttachments == null) mediaAttachments = List.of(); + for(Attachment a:mediaAttachments) + a.postprocess(); + if (params != null) params.postprocess(); + } + @Parcel - public static class Params { + public static class Params extends BaseModel { @RequiredField public String text; public String spoilerText; @@ -40,10 +49,16 @@ public class ScheduledStatus extends BaseModel implements DisplayItemsParent{ public String applicationId; public List mediaIds; public ContentType contentType; + + @Override + public void postprocess() throws ObjectValidationException { + super.postprocess(); + if (poll != null) poll.postprocess(); + } } @Parcel - public static class ScheduledPoll { + public static class ScheduledPoll extends BaseModel { @RequiredField public String expiresIn; @RequiredField diff --git a/mastodon/src/main/java/org/joinmastodon/android/model/Status.java b/mastodon/src/main/java/org/joinmastodon/android/model/Status.java index 1849b5b07..59f64df6d 100644 --- a/mastodon/src/main/java/org/joinmastodon/android/model/Status.java +++ b/mastodon/src/main/java/org/joinmastodon/android/model/Status.java @@ -39,7 +39,6 @@ public class Status extends BaseModel implements DisplayItemsParent, Searchable{ public boolean sensitive; @RequiredField public String spoilerText; - @RequiredField public List mediaAttachments; public Application application; @RequiredField @@ -96,6 +95,7 @@ public class Status extends BaseModel implements DisplayItemsParent, Searchable{ t.postprocess(); for(Emoji e:emojis) e.postprocess(); + if (mediaAttachments == null) mediaAttachments = List.of(); for(Attachment a:mediaAttachments) a.postprocess(); account.postprocess();