ID_AUTO_INCREMENT, ":API:", dinfo, new SharedDeliveryContext()); } else
ID_AUTO_INCREMENT, ":API:", dinfo, new SharedDeliveryContext()); } else {
    public Message saveDraft(OperationContext octxt, ParsedMessage pm, int id, int origId, String replyType)    throws IOException, ServiceException {        // make sure the message has been analzyed before taking the Mailbox lock        pm.analyze();        try {            pm.getRawData();        } catch (MessagingException me) {            throw MailServiceException.MESSAGE_PARSE_ERROR(me);        }        // special-case saving a new draft        if (id == ID_AUTO_INCREMENT) {            Message.DraftInfo dinfo = null;            if (replyType != null && origId > 0)                dinfo = new Message.DraftInfo(replyType, origId);            return addMessageInternal(octxt, pm, ID_FOLDER_DRAFTS, true, Flag.BITMASK_DRAFT | Flag.BITMASK_FROM_ME, null,                        ID_AUTO_INCREMENT, ":API:", dinfo, new SharedDeliveryContext());        } else            return saveDraftInternal(octxt, pm, id);    }