mAddresses.add(ZEmailAddress.getAddress(emailEl, cache));
mAddresses.add(new ZEmailAddress(emailEl));
    public ZMessage(Element e, Map<String,ZEmailAddress> cache) throws ServiceException {        mId = e.getAttribute(MailService.A_ID);        mFlags = e.getAttribute(MailService.A_FLAGS, null);        mTags = e.getAttribute(MailService.A_TAGS, null);        Element sub = e.getOptionalElement(MailService.E_SUBJECT);        if (sub != null) mSubject = sub.getText();        Element mid = e.getOptionalElement(MailService.E_MSG_ID_HDR);        if (mid != null) mMessageIdHeader = mid.getText();        mReceivedDate = e.getAttributeLong(MailService.A_DATE, 0);        mSentDate = e.getAttributeLong(MailService.A_SENT_DATE, 0);        mFolderId = e.getAttribute(MailService.A_FOLDER, null);        mConversationId = e.getAttribute(MailService.A_CONV_ID, null);        mPartName = e.getAttribute(MailService.A_PART, null);        mSize = e.getAttributeLong(MailService.A_SIZE);        Element content = e.getOptionalElement(MailService.E_CONTENT);        if (content != null) {            mContent = content.getText();            mContentURL = content.getAttribute(MailService.A_URL, null);        }                mAddresses = new ArrayList<ZEmailAddress>();        for (Element emailEl: e.listElements(MailService.E_EMAIL)) {            mAddresses.add(ZEmailAddress.getAddress(emailEl, cache));        }        Element mp = e.getOptionalElement(MailService.E_MIMEPART);        if (mp != null)            mMimeStructure = new ZMimePart(mp);    }