root / trunk / Pithos.Interfaces / IStatusChecker.cs @ 42800be8
History | View | Annotate | Download (1.1 kB)
1 |
using System; |
---|---|
2 |
using System.Collections.Generic; |
3 |
using System.Diagnostics.Contracts; |
4 |
using System.IO; |
5 |
using System.Linq; |
6 |
using System.Text; |
7 |
using System.Threading; |
8 |
|
9 |
namespace Pithos.Interfaces |
10 |
{ |
11 |
[ContractClass(typeof(IStatusCheckerContract))] |
12 |
public interface IStatusChecker |
13 |
{ |
14 |
FileOverlayStatus GetFileOverlayStatus(string path); |
15 |
|
16 |
PithosStatus GetPithosStatus(); |
17 |
|
18 |
} |
19 |
|
20 |
[ContractClassFor(typeof(IStatusChecker))] |
21 |
public abstract class IStatusCheckerContract:IStatusChecker |
22 |
{ |
23 |
public FileOverlayStatus GetFileOverlayStatus(string path) |
24 |
{ |
25 |
Contract.Requires(!String.IsNullOrWhiteSpace(path),"Null or empty paths not allowed"); |
26 |
|
27 |
return default(FileOverlayStatus); |
28 |
} |
29 |
|
30 |
public PithosStatus GetPithosStatus() |
31 |
{ |
32 |
return default(PithosStatus); |
33 |
} |
34 |
|
35 |
} |
36 |
|
37 |
public enum FileOverlayStatus |
38 |
{ |
39 |
Deleted=-2, |
40 |
Unversioned=-1, |
41 |
Normal=0, |
42 |
Modified=1, |
43 |
Conflict=2 |
44 |
} |
45 |
|
46 |
public enum PithosStatus |
47 |
{ |
48 |
InSynch, |
49 |
Syncing, |
50 |
SyncPaused, |
51 |
HasConflicts, |
52 |
Disconnected |
53 |
} |
54 |
} |