string ISourceMailbox.GetMailboxSyncState()
        {
            MrsTracer.ProxyClient.Function("RemoteSourceMailbox.GetMailboxSyncState", new object[0]);
            base.VerifyMailboxConnection();
            DataExportBatch dataExportBatch = base.MrsProxy.ISourceMailbox_GetMailboxSyncState(base.Handle);
            string          syncState       = null;

            using (PagedReceiver pagedReceiver = new PagedReceiver(delegate(string data)
            {
                syncState = data;
            }, base.MrsProxyClient.UseCompression))
            {
                RemoteDataExport.ExportRoutine(base.MrsProxy, dataExportBatch.DataExportHandle, pagedReceiver, dataExportBatch, base.MrsProxyClient.UseCompression);
            }
            return(syncState);
        }
        string IMailbox.LoadSyncState(byte[] key)
        {
            MrsTracer.ProxyClient.Function("RemoteMailbox.LoadSyncState", new object[0]);
            if (!(this is RemoteDestinationMailbox))
            {
                throw new UnsupportedRemoteServerVersionWithOperationPermanentException(base.MrsProxyClient.ServerName, base.ServerVersion.ToString(), "IMailbox_LoadSyncState");
            }
            this.VerifyMailboxConnection();
            DataExportBatch dataExportBatch = base.MrsProxy.IDestinationMailbox_LoadSyncState2(base.Handle, key);
            string          syncState       = null;

            using (PagedReceiver pagedReceiver = new PagedReceiver(delegate(string data)
            {
                syncState = data;
            }, base.MrsProxyClient.UseCompression))
            {
                RemoteDataExport.ExportRoutine(base.MrsProxy, dataExportBatch.DataExportHandle, pagedReceiver, dataExportBatch, base.MrsProxyClient.UseCompression);
            }
            return(syncState);
        }