New tests.
[mono.git] / mcs / class / System.ServiceModel.Discovery / System.ServiceModel.Discovery / DiscoveryProxy.cs
1 using System;
2 using System.Collections.Generic;
3 using System.Collections.ObjectModel;
4 using System.ServiceModel;
5 using System.ServiceModel.Channels;
6 using System.ServiceModel.Description;
7 using System.ServiceModel.Dispatcher;
8
9 namespace System.ServiceModel.Discovery
10 {
11         [MonoTODO]
12         public abstract class DiscoveryProxy
13         {
14                 protected DiscoveryProxy ()
15                 {
16                 }
17
18                 protected DiscoveryProxy (DiscoveryMessageSequenceGenerator messageSequenceGenerator)
19                 {
20                 }
21
22                 protected DiscoveryProxy (DiscoveryMessageSequenceGenerator messageSequenceGenerator, int duplicateMessageHistoryLength)
23                 {
24                 }
25
26                 protected virtual IAsyncResult BeginShouldRedirectFind (FindCriteria resolveCriteria, AsyncCallback callback, Object state)
27                 {
28                         throw new NotImplementedException ();
29                 }
30
31                 protected virtual IAsyncResult BeginShouldRedirectResolve (ResolveCriteria findCriteria, AsyncCallback callback, Object state)
32                 {
33                         throw new NotImplementedException ();
34                 }
35
36                 protected virtual bool EndShouldRedirectFind (IAsyncResult result, out Collection<EndpointDiscoveryMetadata> redirectionEndpoints)
37                 {
38                         throw new NotImplementedException ();
39                 }
40
41                 protected virtual bool EndShouldRedirectResolve (IAsyncResult result, out Collection<EndpointDiscoveryMetadata> redirectionEndpoints)
42                 {
43                         throw new NotImplementedException ();
44                 }
45
46                 protected abstract IAsyncResult OnBeginFind (FindRequestContext findRequestContext, AsyncCallback callback, Object state);
47                 protected abstract IAsyncResult OnBeginOfflineAnnouncement (DiscoveryMessageSequence messageSequence, EndpointDiscoveryMetadata endpointDiscoveryMetadata, AsyncCallback callback, Object state);
48                 protected abstract IAsyncResult OnBeginOnlineAnnouncement (DiscoveryMessageSequence messageSequence, EndpointDiscoveryMetadata endpointDiscoveryMetadata, AsyncCallback callback, Object state);
49                 protected abstract IAsyncResult OnBeginResolve (ResolveCriteria resolveCriteria, AsyncCallback callback, Object state);
50                 protected abstract void OnEndFind (IAsyncResult result);
51                 protected abstract void OnEndOfflineAnnouncement (IAsyncResult result);
52                 protected abstract void OnEndOnlineAnnouncement (IAsyncResult result);
53                 protected abstract EndpointDiscoveryMetadata OnEndResolve (IAsyncResult result);
54
55         }
56 }