queueForIndexing(con, null);
queueForIndexing(con, false, null);
    public synchronized Contact createContact(OperationContext octxt, Map<String, String> attrs, int folderId, String tags)    throws ServiceException {        CreateContact redoRecorder = new CreateContact(mId, folderId, attrs, tags);        boolean success = false;        try {            beginTransaction("createContact", octxt, redoRecorder);            CreateContact redoPlayer = (CreateContact) mCurrentChange.getRedoPlayer();            int contactId;            short volumeId;            if (redoPlayer == null) {                contactId = getNextItemId(ID_AUTO_INCREMENT);                volumeId = Volume.getCurrentMessageVolume().getId();            } else {                contactId = getNextItemId(redoPlayer.getContactId());                volumeId = redoPlayer.getVolumeId();            }            Contact con = Contact.create(contactId, getFolderById(folderId), volumeId, attrs, tags);            redoRecorder.setContactId(con.getId());            redoRecorder.setVolumeId(con.getVolumeId());            queueForIndexing(con, null);            success = true;            return con;        } finally {            endTransaction(success);        }    }