}
if (internalDate == null) {
internalDate = new Date();
}
long nextUid = uidProvider.nextUid(mailboxSession, getMailboxEntity());
final Message<Id> message = createMessage(nextUid, internalDate, size, bodyStartOctet, tmpMsgIn.newStream(0, -1), flags, headers, propertyBuilder);
long uid = appendMessageToStore(message, mailboxSession);
Map<Long, MessageMetaData> uids = new HashMap<Long, MessageMetaData>();
uids.put(uid, new SimpleMessageMetaData(uid, flags, size, internalDate));
dispatcher.added(mailboxSession, uids, new StoreMailboxPath<Id>(getMailboxEntity()));