Changed the retry function in PithosClient to use the TPL
[pithos-ms-client] / trunk / Pithos.Core / StatusService.cs
1 // -----------------------------------------------------------------------
2 // <copyright file="StatusService.cs" company="Microsoft">
3 // TODO: Update copyright text.
4 // </copyright>
5 // -----------------------------------------------------------------------
6
7 using Caliburn.Micro;
8
9 namespace Pithos.Core
10 {
11     using System;
12     using System.Collections.Generic;
13     using System.Linq;
14     using System.Text;
15     using System.ServiceModel;
16     using System.ComponentModel.Composition;
17     using Pithos.Interfaces;
18
19     /// <summary>
20     /// TODO: Update summary.
21     /// </summary>
22     [ServiceBehavior(IncludeExceptionDetailInFaults = true)]
23     [Export]
24     public class StatusService : IStatusService,ISettingsService
25     {
26         [Import]
27         public IPithosSettings Settings { get; set; }
28
29         [Import]
30         public IStatusChecker Checker { get; set; }
31
32         [Import]
33         public PithosMonitor Monitor { get; set; }
34
35         public StatusService()
36         {
37             IoC.BuildUp(this);
38         }
39
40         [ImportingConstructor]
41         public StatusService(IStatusChecker checker)
42         {
43             Checker = checker;
44         }
45
46
47         public FileOverlayStatus GetStatus(string filePath)
48         {
49             return Checker.GetFileOverlayStatus(filePath);
50         }
51
52         public void DisplayProperties(string filePath)
53         {
54             //Monitor.
55         }
56
57         public PithosSettingsData GetSettings()
58         {
59             var data = new PithosSettingsData(Settings);
60             return data;
61         }
62     }
63 }