options.setAuthToken(new AuthToken(getAccount()).getEncoded());
options.setAuthToken(new AuthToken(authuser, isAdminRequest).getEncoded());
    private void processICalReplies(OperationContext octxt, ZVCalendar cal)    throws ServiceException {        List<Invite> components = Invite.createFromCalendar(                getAccount(), null, cal, false);        for (Invite inv : components) {            if (!inv.hasOrganizer()) {                ZimbraLog.calendar.warn("No ORGANIZER found in REPLY");                continue;            }            ZOrganizer org = inv.getOrganizer();            String orgAddress = org.getAddress();            if (AccountUtil.addressMatchesAccount(getAccount(), orgAddress)) {                processICalReply(octxt, inv);            } else {                Account orgAccount = inv.getOrganizerAccount();                // Unknown organizer                if (orgAccount == null) {                    ZimbraLog.calendar.warn("Unknown organizer " + orgAddress + " in REPLY");                    continue;                }                if (Provisioning.onLocalServer(orgAccount)) {                    // Run in the context of organizer's mailbox.                    Mailbox mbox = MailboxManager.getInstance().getMailboxByAccount(orgAccount);                    OperationContext orgOctxt = new OperationContext(mbox);                    mbox.processICalReply(orgOctxt, inv);                } else {                    // Organizer's mailbox is on a remote server.                    String uri = AccountUtil.getSoapUri(orgAccount);                    if (uri == null) {                        ZimbraLog.calendar.warn("Unable to determine URI for organizer account " + orgAddress);                        continue;                    }                    try {                        // TODO: Get the iCalendar data from the                        // MIME part since we already have it.                        String ical;                        StringWriter sr = null;                        try {                            sr = new StringWriter();                            inv.newToICalendar().toICalendar(sr);                            ical = sr.toString();                        } finally {                            if (sr != null)                                sr.close();                        }                        Options options = new Options();                        options.setAuthToken(new AuthToken(getAccount()).getEncoded());                        options.setTargetAccount(orgAccount.getName());                        options.setTargetAccountBy(AccountBy.name);                        options.setUri(uri);                        options.setNoSession(true);                        ZMailbox zmbox = ZMailbox.getMailbox(options);                        zmbox.iCalReply(ical);                    } catch (IOException e) {                        throw ServiceException.FAILURE("Error while posting REPLY to organizer mailbox host", e);                    } catch (AuthTokenException e) {                        throw ServiceException.FAILURE("Error while posting REPLY to organizer mailbox host", e);                    }                }            }        }    }