/* * Copyright (c) 2024 ETH Zürich, IT Services * * 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; namespace SafeExamBrowser.Settings.Server { /// /// Defines all settings for a SEB server. /// [Serializable] public class ServerSettings { /// /// The discovery URL for the API of the server. /// public string ApiUrl { get; set; } /// /// The client name for initial authentication with the server. /// public string ClientName { get; set; } /// /// The client secret for initial authentication with the server. /// public string ClientSecret { get; set; } /// /// The identifier of the exam to be started. If present, the exam will be automatically started, i.e. the exam selection will be skipped. /// public string ExamId { get; set; } /// /// The hash code of the password required to perform a fallback. /// public string FallbackPasswordHash { get; set; } /// /// The institution to be used for identification with the server. /// public string Institution { get; set; } /// /// Indicates whether SEB will fallback to the start URL in case no connection could be established with the server. /// public bool PerformFallback { get; set; } /// /// The time interval in milliseconds to be used for ping requests. /// public int PingInterval { get; set; } /// /// The number of attempts (e.g. when receiving an invalid server response) before performing a fallback or failing. /// public int RequestAttempts { get; set; } /// /// The time interval in milliseconds to be waited in between attempts. /// public int RequestAttemptInterval { get; set; } /// /// The timeout in milliseconds (e.g. to wait for a server response) before performing a fallback or failing. /// public int RequestTimeout { get; set; } /// /// The URL of the server. /// public string ServerUrl { get; set; } } }