Restructured repository in preparation of the HeuristicLab 3.3.0 release (#1000)
[heuristiclab.git] / HeuristicLab.PluginInfrastructure / 3.3 / Manager / ApplicationDescription.cs
blobee80261d84075bea05bfcfd8cd22533a8a17b415
1 #region License Information
2 /* HeuristicLab
3 * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
5 * This file is part of HeuristicLab.
7 * HeuristicLab is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation, either version 3 of the License, or
10 * (at your option) any later version.
12 * HeuristicLab is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
20 #endregion
22 using System;
23 using System.Collections.Generic;
24 using System.Text;
26 namespace HeuristicLab.PluginInfrastructure.Manager {
27 /// <summary>
28 /// Class that provides information about an application.
29 /// </summary>
30 [Serializable]
31 internal sealed class ApplicationDescription : IApplicationDescription {
32 private string name;
34 /// <summary>
35 /// Gets or sets the name of the application.
36 /// </summary>
37 public string Name {
38 get { return name; }
39 internal set { name = value; }
41 private Version version;
43 /// <summary>
44 /// Gets or sets the version of the application.
45 /// </summary>
46 internal Version Version {
47 get { return version; }
48 set { version = value; }
50 private string description;
52 /// <summary>
53 /// Gets or sets the description of the application.
54 /// </summary>
55 public string Description {
56 get { return description; }
57 internal set { description = value; }
60 private bool autoRestart;
61 /// <summary>
62 /// Gets or sets the boolean flag if the application should be automatically restarted.
63 /// </summary>
64 internal bool AutoRestart {
65 get { return autoRestart; }
66 set { autoRestart = value; }
69 private string declaringAssemblyName;
70 /// <summary>
71 /// Gets or sets the name of the assembly that contains the IApplication type.
72 /// </summary>
73 internal string DeclaringAssemblyName {
74 get { return declaringAssemblyName; }
75 set { declaringAssemblyName = value; }
78 private string declaringTypeName;
79 /// <summary>
80 /// Gets or sets the name of the type that implements the interface IApplication.
81 /// </summary>
82 internal string DeclaringTypeName {
83 get { return declaringTypeName; }
84 set { declaringTypeName = value; }
87 public override string ToString() {
88 return Name + " " + Version;