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