1 //------------------------------------------------------------
2 // Copyright (c) Microsoft Corporation.  All rights reserved.
3 //------------------------------------------------------------
4 
5 namespace System.ServiceModel.Activities.Tracking
6 {
7     using System;
8     using System.Runtime;
9     using System.Activities.Tracking;
10 
11     abstract class TrackingProfileManager
12     {
TrackingProfileManager()13         protected TrackingProfileManager()
14         {
15         }
16 
BeginLoad( string profileName, string activityDefinitionId, TimeSpan timeout, AsyncCallback callback, object state)17         public virtual IAsyncResult BeginLoad(
18             string profileName,
19             string activityDefinitionId,
20             TimeSpan timeout,
21             AsyncCallback callback,
22             object state)
23         {
24             TrackingProfile profile = Load(profileName, activityDefinitionId, timeout);
25             return new CompletedAsyncResult<TrackingProfile>(profile, callback, state);
26         }
27 
Load( string profileName, string activityDefinitionId, TimeSpan timeout)28         public abstract TrackingProfile Load(
29             string profileName,
30             string activityDefinitionId,
31             TimeSpan timeout);
32 
EndLoad(IAsyncResult result)33         public virtual TrackingProfile EndLoad(IAsyncResult result)
34         {
35             return CompletedAsyncResult<TrackingProfile>.End(result);
36         }
37     }
38 }
39