Statistics
| Branch: | Revision:

root / trunk / Pithos.Core / StatusService.cs @ 21141c06

History | View | Annotate | Download (1.5 kB)

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