@Override public MimeDescriptor getMimeDescriptor() throws MailboxException { // check if we need to create the MimeDescriptor which is done in a lazy fashion because // it can be relative expensive on big messages and slow mailbox implementations if (mimeDescriptor == null) { try { if (MimeDescriptorImpl.isComposite(message.getMediaType())) { mimeDescriptor = MimeDescriptorImpl.build(getFullContent().getInputStream()); } else { mimeDescriptor = new LazyMimeDescriptor(this, message); } } catch (IOException | MimeException e) { throw new MailboxException("Unable to create the MimeDescriptor", e); } } return mimeDescriptor; }
this.mediaType = original.getMediaType(); this.subType = original.getSubType(); final List<Property> properties = pBuilder.toProperties();
public ImmutableMailboxMessage from(MailboxId mailboxId, MailboxMessage message) throws MailboxException { try { return new ImmutableMailboxMessage(message.getMessageId(), message.getInternalDate(), IOUtils.toByteArray(message.getBodyContent()), message.getMediaType(), message.getSubType(), message.getBodyOctets(), message.getFullContentOctets(), message.getFullContentOctets() - message.getBodyOctets(), message.getTextualLineCount(), IOUtils.toByteArray(message.getHeaderContent()), ImmutableList.copyOf(message.getProperties()), attachments(message), mailboxId, message.getUid(), message.getModSeq(), message.isAnswered(), message.isDeleted(), message.isDraft(), message.isFlagged(), message.isRecent(), message.isSeen(), message.createFlags().getUserFlags()); } catch (IOException e) { throw new MailboxException("Unable to parse message", e); } }
long size = message.getFullContentOctets(); String date = DateResolutionFormater.DATE_TIME_FOMATTER.format(getSanitizedInternalDate(message, zoneId)); String mediaType = message.getMediaType(); String subType = message.getSubType(); boolean isAnswered = message.isAnswered();