public override void EndSession(
     SyncSessionContext syncSessionContext)
 {
     this.syncSessionContext = null;
     this.client.EndSession();
     this.client = null;
 }
        public override void BeginSession(
            SyncProviderPosition position,
            SyncSessionContext syncSessionContext)
        {
            if (this.client == null)
            {
                // Allow for the same proxy to be use in several unidirectional session
                this.client = new Sync101WebServiceClient(
                    endpointConfigurationName);

                this.client.CreateProviderForSyncSession(folderPath, this.storeName);
            }

            this.syncSessionContext = syncSessionContext;
            this.client.BeginSession();
        }
        public RemoteProviderProxy(
            string folderPath,
            string storeName,
            string endpointConfigurationName)
        {
            this.folderPath = folderPath;
            this.storeName  = storeName;
            this.endpointConfigurationName = endpointConfigurationName;

            // Create a client
            this.client = new Sync101WebServiceClient(
                endpointConfigurationName);

            this.client.CreateProviderForSyncSession(folderPath, this.storeName);
            this.idFormats = this.client.GetIdFormats();
        }