mirror of https://github.com/moparisthebest/k-9
48 lines
1.2 KiB
Java
48 lines
1.2 KiB
Java
package com.fsck.k9.mailstore;
|
|
|
|
|
|
import java.util.Stack;
|
|
|
|
import com.fsck.k9.mail.Body;
|
|
import com.fsck.k9.mail.BodyPart;
|
|
import com.fsck.k9.mail.MessagingException;
|
|
import com.fsck.k9.mail.Multipart;
|
|
import com.fsck.k9.mail.Part;
|
|
import com.fsck.k9.mail.internet.MimeBodyPart;
|
|
|
|
|
|
public class MessageHelper {
|
|
|
|
public static boolean isCompletePartAvailable(Part part) {
|
|
Stack<Part> partsToCheck = new Stack<Part>();
|
|
partsToCheck.push(part);
|
|
|
|
while (!partsToCheck.isEmpty()) {
|
|
Part currentPart = partsToCheck.pop();
|
|
Body body = currentPart.getBody();
|
|
|
|
boolean isBodyMissing = body == null;
|
|
if (isBodyMissing) {
|
|
return false;
|
|
}
|
|
|
|
if (body instanceof Multipart) {
|
|
Multipart multipart = (Multipart) body;
|
|
for (BodyPart bodyPart : multipart.getBodyParts()) {
|
|
partsToCheck.push(bodyPart);
|
|
}
|
|
}
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
public static MimeBodyPart createEmptyPart() {
|
|
try {
|
|
return new MimeBodyPart(null);
|
|
} catch (MessagingException e) {
|
|
throw new RuntimeException(e);
|
|
}
|
|
}
|
|
}
|