//----------------------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.Runtime { using System; using System.Collections.Generic; using System.Xml.Linq; interface IPersistencePipelineModule { bool IsIOParticipant { get; } bool IsSaveTransactionRequired { get; } bool IsLoadTransactionRequired { get; } void CollectValues(out IDictionary readWriteValues, out IDictionary writeOnlyValues); IDictionary MapValues(IDictionary readWriteValues, IDictionary writeOnlyValues); void PublishValues(IDictionary readWriteValues); IAsyncResult BeginOnSave(IDictionary readWriteValues, IDictionary writeOnlyValues, TimeSpan timeout, AsyncCallback callback, object state); void EndOnSave(IAsyncResult result); IAsyncResult BeginOnLoad(IDictionary readWriteValues, TimeSpan timeout, AsyncCallback callback, object state); void EndOnLoad(IAsyncResult result); void Abort(); } }