Statistics
| Branch: | Revision:

root / trunk / NetSparkle / NetSparkleAssemblyDiagnosticsAccessor.cs @ 049333d2

History | View | Annotate | Download (2.1 kB)

1 46426dbd Panagiotis Kanavos
using System;
2 46426dbd Panagiotis Kanavos
using System.Collections.Generic;
3 46426dbd Panagiotis Kanavos
using System.Diagnostics;
4 46426dbd Panagiotis Kanavos
using System.Linq;
5 46426dbd Panagiotis Kanavos
using System.Text;
6 46426dbd Panagiotis Kanavos
using System.Reflection;
7 46426dbd Panagiotis Kanavos
using System.IO;
8 46426dbd Panagiotis Kanavos
using AppLimit.NetSparkle.Interfaces;
9 46426dbd Panagiotis Kanavos
10 46426dbd Panagiotis Kanavos
namespace AppLimit.NetSparkle
11 46426dbd Panagiotis Kanavos
{
12 46426dbd Panagiotis Kanavos
    public class NetSparkleAssemblyDiagnosticsAccessor : INetSparkleAssemblyAccessor
13 46426dbd Panagiotis Kanavos
    {
14 46426dbd Panagiotis Kanavos
        private string fileVersion;
15 46426dbd Panagiotis Kanavos
        private string productVersion;
16 46426dbd Panagiotis Kanavos
        private string productName;
17 46426dbd Panagiotis Kanavos
        private string companyName;
18 46426dbd Panagiotis Kanavos
        private string legalCopyright;
19 46426dbd Panagiotis Kanavos
        private string fileDescription;
20 46426dbd Panagiotis Kanavos
21 46426dbd Panagiotis Kanavos
        public NetSparkleAssemblyDiagnosticsAccessor(String assemblyName)
22 46426dbd Panagiotis Kanavos
        {
23 46426dbd Panagiotis Kanavos
            if (assemblyName != null)
24 46426dbd Panagiotis Kanavos
            {
25 46426dbd Panagiotis Kanavos
                fileVersion = FileVersionInfo.GetVersionInfo(assemblyName).FileVersion;
26 46426dbd Panagiotis Kanavos
                productVersion = FileVersionInfo.GetVersionInfo(assemblyName).ProductVersion;
27 46426dbd Panagiotis Kanavos
                productName = FileVersionInfo.GetVersionInfo(assemblyName).ProductName;
28 46426dbd Panagiotis Kanavos
                companyName = FileVersionInfo.GetVersionInfo(assemblyName).CompanyName;
29 46426dbd Panagiotis Kanavos
                legalCopyright = FileVersionInfo.GetVersionInfo(assemblyName).LegalCopyright;
30 46426dbd Panagiotis Kanavos
                fileDescription = FileVersionInfo.GetVersionInfo(assemblyName).FileDescription; 
31 46426dbd Panagiotis Kanavos
            }
32 46426dbd Panagiotis Kanavos
        }
33 46426dbd Panagiotis Kanavos
34 46426dbd Panagiotis Kanavos
        #region Assembly Attribute Accessors
35 46426dbd Panagiotis Kanavos
36 46426dbd Panagiotis Kanavos
        public string AssemblyTitle
37 46426dbd Panagiotis Kanavos
        {
38 46426dbd Panagiotis Kanavos
            get
39 46426dbd Panagiotis Kanavos
            {
40 46426dbd Panagiotis Kanavos
                return productName;                
41 46426dbd Panagiotis Kanavos
            }
42 46426dbd Panagiotis Kanavos
        }
43 46426dbd Panagiotis Kanavos
44 46426dbd Panagiotis Kanavos
        public string AssemblyVersion
45 46426dbd Panagiotis Kanavos
        {
46 46426dbd Panagiotis Kanavos
            get
47 46426dbd Panagiotis Kanavos
            {
48 46426dbd Panagiotis Kanavos
                return fileVersion;
49 46426dbd Panagiotis Kanavos
            }
50 46426dbd Panagiotis Kanavos
        }        
51 46426dbd Panagiotis Kanavos
52 46426dbd Panagiotis Kanavos
        public string AssemblyDescription
53 46426dbd Panagiotis Kanavos
        {
54 46426dbd Panagiotis Kanavos
            get { return fileDescription; }
55 46426dbd Panagiotis Kanavos
        }
56 46426dbd Panagiotis Kanavos
57 46426dbd Panagiotis Kanavos
        public string AssemblyProduct
58 46426dbd Panagiotis Kanavos
        {
59 46426dbd Panagiotis Kanavos
            get
60 46426dbd Panagiotis Kanavos
            {
61 46426dbd Panagiotis Kanavos
                return productVersion;                                
62 46426dbd Panagiotis Kanavos
            }
63 46426dbd Panagiotis Kanavos
        }
64 46426dbd Panagiotis Kanavos
65 46426dbd Panagiotis Kanavos
        public string AssemblyCopyright
66 46426dbd Panagiotis Kanavos
        {
67 46426dbd Panagiotis Kanavos
            get { return legalCopyright; }
68 46426dbd Panagiotis Kanavos
        }
69 46426dbd Panagiotis Kanavos
70 46426dbd Panagiotis Kanavos
        public string AssemblyCompany
71 46426dbd Panagiotis Kanavos
        {
72 46426dbd Panagiotis Kanavos
            get
73 46426dbd Panagiotis Kanavos
            {
74 46426dbd Panagiotis Kanavos
                return companyName;                  
75 46426dbd Panagiotis Kanavos
            }
76 46426dbd Panagiotis Kanavos
        }
77 46426dbd Panagiotis Kanavos
        #endregion
78 46426dbd Panagiotis Kanavos
    }
79 46426dbd Panagiotis Kanavos
}