2018-01-17 08:26:44 +01:00
|
|
|
|
/*
|
|
|
|
|
* Copyright (c) 2018 ETH Zürich, Educational Development and Technology (LET)
|
|
|
|
|
*
|
|
|
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
|
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
|
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
using System;
|
|
|
|
|
|
2018-01-17 14:08:39 +01:00
|
|
|
|
namespace SafeExamBrowser.Contracts.Configuration
|
2018-01-17 08:26:44 +01:00
|
|
|
|
{
|
2018-03-06 11:38:12 +01:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// Defines the fundamental, global configuration information for all application components.
|
2018-06-21 07:56:25 +02:00
|
|
|
|
/// TODO: Rename to Globals or GlobalConfiguration or alike!
|
2018-03-06 11:38:12 +01:00
|
|
|
|
/// </summary>
|
2018-02-15 15:42:54 +01:00
|
|
|
|
[Serializable]
|
|
|
|
|
public class RuntimeInfo
|
2018-01-17 08:26:44 +01:00
|
|
|
|
{
|
2018-01-17 14:08:39 +01:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// The path of the application data folder.
|
|
|
|
|
/// </summary>
|
2018-02-15 15:42:54 +01:00
|
|
|
|
public string AppDataFolder { get; set; }
|
2018-01-17 14:08:39 +01:00
|
|
|
|
|
2018-01-17 08:26:44 +01:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// The point in time when the application was started.
|
|
|
|
|
/// </summary>
|
2018-02-15 15:42:54 +01:00
|
|
|
|
public DateTime ApplicationStartTime { get; set; }
|
2018-01-17 08:26:44 +01:00
|
|
|
|
|
2018-01-17 14:08:39 +01:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// The path where the browser cache is to be stored.
|
|
|
|
|
/// </summary>
|
2018-02-15 15:42:54 +01:00
|
|
|
|
public string BrowserCachePath { get; set; }
|
2018-01-17 14:08:39 +01:00
|
|
|
|
|
2018-01-17 08:26:44 +01:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// The file path under which the log of the browser component is to be stored.
|
|
|
|
|
/// </summary>
|
2018-02-15 15:42:54 +01:00
|
|
|
|
public string BrowserLogFile { get; set; }
|
2018-01-17 08:26:44 +01:00
|
|
|
|
|
2018-02-06 15:12:11 +01:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// The communication address of the client component.
|
|
|
|
|
/// </summary>
|
2018-02-15 15:42:54 +01:00
|
|
|
|
public string ClientAddress { get; set; }
|
2018-02-06 15:12:11 +01:00
|
|
|
|
|
2018-02-14 15:26:05 +01:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// The executable path of the client compontent.
|
|
|
|
|
/// </summary>
|
2018-02-15 15:42:54 +01:00
|
|
|
|
public string ClientExecutablePath { get; set; }
|
2018-02-14 15:26:05 +01:00
|
|
|
|
|
2018-02-06 15:12:11 +01:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// The unique identifier for the currently running client instance.
|
|
|
|
|
/// </summary>
|
2018-02-15 15:42:54 +01:00
|
|
|
|
public Guid ClientId { get; set; }
|
2018-02-06 15:12:11 +01:00
|
|
|
|
|
2018-01-17 08:26:44 +01:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// The file path under which the log of the client component is to be stored.
|
|
|
|
|
/// </summary>
|
2018-02-15 15:42:54 +01:00
|
|
|
|
public string ClientLogFile { get; set; }
|
2018-01-17 08:26:44 +01:00
|
|
|
|
|
2018-06-21 07:56:25 +02:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// The file extension of configuration files for the application (including the period).
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string ConfigurationFileExtension { get; set; }
|
|
|
|
|
|
2018-01-18 15:14:05 +01:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// The default file name for application settings.
|
|
|
|
|
/// </summary>
|
2018-02-15 15:42:54 +01:00
|
|
|
|
public string DefaultSettingsFileName { get; set; }
|
2018-01-18 15:14:05 +01:00
|
|
|
|
|
2018-06-21 07:56:25 +02:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// The default directory for file downloads.
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string DownloadDirectory { get; set; }
|
|
|
|
|
|
2018-01-17 14:08:39 +01:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// The copyright information for the application (i.e. the executing assembly).
|
|
|
|
|
/// </summary>
|
2018-02-15 15:42:54 +01:00
|
|
|
|
public string ProgramCopyright { get; set; }
|
2018-01-17 14:08:39 +01:00
|
|
|
|
|
2018-01-18 15:14:05 +01:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// The path of the program data folder.
|
|
|
|
|
/// </summary>
|
2018-02-15 15:42:54 +01:00
|
|
|
|
public string ProgramDataFolder { get; set; }
|
2018-01-18 15:14:05 +01:00
|
|
|
|
|
2018-01-17 14:08:39 +01:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// The program title of the application (i.e. the executing assembly).
|
|
|
|
|
/// </summary>
|
2018-02-15 15:42:54 +01:00
|
|
|
|
public string ProgramTitle { get; set; }
|
2018-01-17 14:08:39 +01:00
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// The program version of the application (i.e. the executing assembly).
|
|
|
|
|
/// </summary>
|
2018-02-15 15:42:54 +01:00
|
|
|
|
public string ProgramVersion { get; set; }
|
2018-01-17 14:08:39 +01:00
|
|
|
|
|
2018-02-06 15:12:11 +01:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// The communication address of the runtime component.
|
|
|
|
|
/// </summary>
|
2018-02-15 15:42:54 +01:00
|
|
|
|
public string RuntimeAddress { get; set; }
|
2018-02-06 15:12:11 +01:00
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// The unique identifier for the currently running runtime instance.
|
|
|
|
|
/// </summary>
|
2018-02-15 15:42:54 +01:00
|
|
|
|
public Guid RuntimeId { get; set; }
|
2018-02-06 15:12:11 +01:00
|
|
|
|
|
2018-01-17 08:26:44 +01:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// The file path under which the log of the runtime component is to be stored.
|
|
|
|
|
/// </summary>
|
2018-02-15 15:42:54 +01:00
|
|
|
|
public string RuntimeLogFile { get; set; }
|
2018-02-06 15:12:11 +01:00
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// The communication address of the service component.
|
|
|
|
|
/// </summary>
|
2018-02-15 15:42:54 +01:00
|
|
|
|
public string ServiceAddress { get; set; }
|
2018-01-17 08:26:44 +01:00
|
|
|
|
}
|
|
|
|
|
}
|